@ngrdt/forms 0.0.25 → 0.0.26
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.
- package/fesm2022/ngrdt-forms.mjs +2 -2
- package/fesm2022/ngrdt-forms.mjs.map +1 -1
- package/index.d.ts +1 -1
- package/package.json +3 -3
package/fesm2022/ngrdt-forms.mjs
CHANGED
|
@@ -478,7 +478,7 @@ class RdtSelectDatasource {
|
|
|
478
478
|
class RdtOfflineSelectDatasource extends RdtSelectDatasource {
|
|
479
479
|
data;
|
|
480
480
|
totalCountKnown = true;
|
|
481
|
-
queryRequired =
|
|
481
|
+
queryRequired = false;
|
|
482
482
|
preprocessedData;
|
|
483
483
|
constructor(data) {
|
|
484
484
|
super();
|
|
@@ -596,7 +596,7 @@ function getRdtSelectStore(initialState = rdtSelectInitialState) {
|
|
|
596
596
|
if (query || (selectedMap.size === 0 && missing.length === 0)) {
|
|
597
597
|
return items.map((it) => ({
|
|
598
598
|
...it,
|
|
599
|
-
selected:
|
|
599
|
+
selected: selectedMap.has(it.id),
|
|
600
600
|
}));
|
|
601
601
|
}
|
|
602
602
|
const selected = Array.from(selectedMap.values()).map((it) => ({ ...it, selected: true }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngrdt-forms.mjs","sources":["../tmp-esm2022/lib/base/rdt-base-form-input.component.js","../tmp-esm2022/lib/inputs/checkbox/rdt-checkbox.component.js","../tmp-esm2022/lib/utils/transform.js","../tmp-esm2022/lib/inputs/date/rdt-date.component.js","../tmp-esm2022/lib/inputs/file-input/reader/rdt-file-reader.js","../tmp-esm2022/lib/inputs/file-input/reader/rdt-file-reader-noop.js","../tmp-esm2022/lib/inputs/file-input/reader/rdt-file-reader-base64.js","../tmp-esm2022/lib/inputs/file-input/tokens/rdt-default-file-reader.js","../tmp-esm2022/lib/inputs/file-input/tokens/rdt-default-label-fn.js","../tmp-esm2022/lib/inputs/file-input/tokens/rdt-default-max-file-size.js","../tmp-esm2022/lib/inputs/file-input/rdt-file-input.component.js","../tmp-esm2022/lib/inputs/file-input/reader/rdt-file-reader-array-buffer.js","../tmp-esm2022/lib/inputs/file-input/reader/rdt-file-reader-text.js","../tmp-esm2022/lib/inputs/numeric-input/rdt-numeric-input.component.js","../tmp-esm2022/lib/inputs/select/datasource/rdt-select-datasource.js","../tmp-esm2022/lib/inputs/select/datasource/rdt-offline-select-datasource.js","../tmp-esm2022/lib/inputs/select/state/rdt-select-state.js","../tmp-esm2022/lib/inputs/select/utils/request.js","../tmp-esm2022/lib/inputs/select/state/rdt-select-store.js","../tmp-esm2022/lib/inputs/select/directives/rdt-select-offline-datasource.directive.js","../tmp-esm2022/lib/inputs/select/directives/rdt-select-option.directive.js","../tmp-esm2022/lib/inputs/select/rdt-base-select.component.js","../tmp-esm2022/lib/inputs/select/rdt-multi-select.component.js","../tmp-esm2022/lib/inputs/select/rdt-single-select.component.js","../tmp-esm2022/lib/inputs/text-input/rdt-text-input.component.js","../tmp-esm2022/ngrdt-forms.js"],"sourcesContent":["import { booleanAttribute, computed, Directive, effect, inject, Injector, input, linkedSignal, model, signal, untracked, } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { NgControl, Validators, } from '@angular/forms';\nimport { RdtInteractiveElementComponent } from '@ngrdt/core';\nimport * as i0 from \"@angular/core\";\nconst noop = () => { };\nexport class RdtBaseFormInputComponent extends RdtInteractiveElementComponent {\n injector = inject(Injector);\n _control = signal(null);\n control = this._control.asReadonly();\n label = input('');\n placeholder = input('');\n externalValue = model(null, { alias: 'value' });\n internalValue = linkedSignal(() => this.toInternalValue(this.externalValue()));\n dataTestIdInput = input(undefined, { alias: 'dataTestId' });\n dataTestId = linkedSignal(() => this.dataTestIdInput() ?? this.label() ?? '');\n readonlyInput = input(null, {\n alias: 'readonly',\n transform: booleanAttribute,\n });\n requiredInput = input(null, {\n alias: 'required',\n transform: booleanAttribute,\n });\n requiredFromControl = signal(false);\n required = linkedSignal(() => {\n return this.requiredInput() ?? this.requiredFromControl() ?? false;\n });\n touchedInternal = signal(false);\n touched = computed(() => {\n const control = this.control();\n if (control) {\n return control.touchedReactive();\n }\n else {\n return this.touchedInternal();\n }\n });\n invalid = computed(() => {\n if (this.requiredInput() && this.isEmpty(this.externalValue())) {\n return true;\n }\n const control = this.control();\n if (control) {\n return control.statusReactive() === 'INVALID';\n }\n else {\n return false;\n }\n });\n requiredEffect = effect(() => {\n this.requiredInput();\n this.onValidatorChange();\n });\n requiredError = computed(() => this.getRequiredError(this.externalValue()));\n controlErrors = computed(() => {\n const control = this.control();\n if (control) {\n control.statusReactive();\n return control.errors;\n }\n else {\n return null;\n }\n });\n errors = computed(() => this.controlErrors() ?? this.requiredError());\n visibleErrors = computed(() => this.invalid() && this.touched() ? this.errors() : null);\n get ngControl() {\n return this._ngControl;\n }\n _ngControl = null;\n _onChange = noop;\n _onTouch = noop;\n _onValidatorChange = noop;\n get onChange() {\n return this._onChange;\n }\n get onTouch() {\n return this._onTouch;\n }\n get onValidatorChange() {\n return this._onValidatorChange;\n }\n ngOnInit() {\n this._ngControl = this.injector.get(NgControl, null, {\n self: true,\n optional: true,\n });\n const control = this.ngControl?.control;\n this._control.set(control ?? null);\n if (control) {\n control.events.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(() => {\n this.requiredFromControl.set(control.hasValidator(Validators.required));\n });\n }\n }\n ngOnDestroy() {\n const control = this.control();\n if (this.requiredInput() && control) {\n control.removeValidators(Validators.required);\n control.setErrors(null);\n }\n }\n registerOnChange(fn) {\n this._onChange = fn;\n }\n registerOnTouched(fn) {\n this._onTouch = () => {\n this.touchedInternal.set(true);\n fn();\n };\n }\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n writeValue(value) {\n this.externalValue.set(value);\n }\n // Implemented as a part of Validator.\n validate(control) {\n return this.requiredError();\n }\n registerOnValidatorChange(fn) {\n this._onValidatorChange = fn;\n }\n onInternalValueChange(value) {\n if (value === '') {\n value = null; // Convert empty string to null\n }\n if (value !== untracked(this.internalValue)) {\n const externalValue = this.toExternalValue(value);\n this.externalValue.set(externalValue);\n this.onChange(externalValue);\n }\n }\n toExternalValue(internalValue) {\n return internalValue;\n }\n toInternalValue(externalValue) {\n return externalValue;\n }\n onBlur() {\n super.onBlur();\n Promise.resolve().then(() => {\n this.onTouch();\n this.cd.markForCheck();\n });\n }\n getRequiredError(value) {\n return this.required() && this.isEmpty(value)\n ? RdtBaseFormInputComponent.REQUIRED_ERROR\n : null;\n }\n static REQUIRED_ERROR = { required: true };\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtBaseFormInputComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.0\", type: RdtBaseFormInputComponent, isStandalone: true, inputs: { label: { classPropertyName: \"label\", publicName: \"label\", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: \"placeholder\", publicName: \"placeholder\", isSignal: true, isRequired: false, transformFunction: null }, externalValue: { classPropertyName: \"externalValue\", publicName: \"value\", isSignal: true, isRequired: false, transformFunction: null }, dataTestIdInput: { classPropertyName: \"dataTestIdInput\", publicName: \"dataTestId\", isSignal: true, isRequired: false, transformFunction: null }, readonlyInput: { classPropertyName: \"readonlyInput\", publicName: \"readonly\", isSignal: true, isRequired: false, transformFunction: null }, requiredInput: { classPropertyName: \"requiredInput\", publicName: \"required\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { externalValue: \"valueChange\" }, usesInheritance: true, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtBaseFormInputComponent, decorators: [{\n type: Directive,\n args: [{\n standalone: true,\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWJhc2UtZm9ybS1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9AbmdyZHQvZm9ybXMvc3JjL2xpYi9iYXNlL3JkdC1iYXNlLWZvcm0taW5wdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsUUFBUSxFQUNSLFNBQVMsRUFDVCxNQUFNLEVBQ04sTUFBTSxFQUNOLFFBQVEsRUFDUixLQUFLLEVBQ0wsWUFBWSxFQUNaLEtBQUssRUFJTCxNQUFNLEVBQ04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFHTCxTQUFTLEVBRVQsVUFBVSxHQUNYLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sYUFBYSxDQUFDOztBQUc3RCxNQUFNLElBQUksR0FBRyxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7QUFLdEIsTUFBTSxPQUFnQix5QkFDcEIsU0FBUSw4QkFBOEI7SUFHN0IsUUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUVsQixRQUFRLEdBQUcsTUFBTSxDQUErQixJQUFJLENBQUMsQ0FBQztJQUNoRSxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUVyQyxLQUFLLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ2xCLFdBQVcsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7SUFFeEIsYUFBYSxHQUFHLEtBQUssQ0FBYyxJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUM3RCxhQUFhLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUN6QyxJQUFJLENBQUMsZUFBZSxDQUFD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QUFDO1lBQzVDLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDbEQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDdEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUMvQixDQUFDO0lBQ0gsQ0FBQztJQUVTLGVBQWUsQ0FBQyxhQUEwQjtRQUNsRCxPQUFPLGFBQTRCLENBQUM7SUFDdEMsQ0FBQztJQUVTLGVBQWUsQ0FBQyxhQUEwQjtRQUNsRCxPQUFPLGFBQTRCLENBQUM7SUFDdEMsQ0FBQztJQUVRLE1BQU07UUFDYixLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDZixPQUFPLENBQUMsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUMxQixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDZixJQUFJLENBQUMsRUFBRSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3pCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGdCQUFnQixDQUFDLEtBQWtCO1FBQ3pDLE9BQU8sSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1lBQzNDLENBQUMsQ0FBQyx5QkFBeUIsQ0FBQyxjQUFjO1lBQzFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDWCxDQUFDO0lBRU8sTUFBTSxDQUFVLGNBQWMsR0FBRyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQzt1R0EvTHhDLHlCQUF5QjsyRkFBekIseUJBQXlCOzsyRkFBekIseUJBQXlCO2tCQUg5QyxTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGJvb2xlYW5BdHRyaWJ1dGUsXG4gIGNvbXB1dGVkLFxuICBEaXJlY3RpdmUsXG4gIGVmZmVjdCxcbiAgaW5qZWN0LFxuICBJbmplY3RvcixcbiAgaW5wdXQsXG4gIGxpbmtlZFNpZ25hbCxcbiAgbW9kZWwsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBTaWduYWwsXG4gIHNpZ25hbCxcbiAgdW50cmFja2VkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7XG4gIEFic3RyYWN0Q29udHJvbCxcbiAgQ29udHJvbFZhbHVlQWNjZXNzb3IsXG4gIE5nQ29udHJvbCxcbiAgVmFsaWRhdGlvbkVycm9ycyxcbiAgVmFsaWRhdG9ycyxcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgUmR0SW50ZXJhY3RpdmVFbGVtZW50Q29tcG9uZW50IH0gZnJvbSAnQG5ncmR0L2NvcmUnO1xuaW1wb3J0IHsgTnVsbGFibGUgfSBmcm9tICdAbmdyZHQvdXRpbHMnO1xuXG5jb25zdCBub29wID0gKCkgPT4ge307XG5cbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBSZHRCYXNlRm9ybUlucHV0Q29tcG9uZW50PFRFeHQsIFRJbnQgPSBURXh0PlxuICBleHRlbmRzIFJkdEludGVyYWN0aXZlRWxlbWVudENvbXBvbmVudFxuICBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkluaXQsIE9uRGVzdHJveVxue1xuICByZWFkb25seSBpbmplY3RvciA9IGluamVjdChJbmplY3Rvcik7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IF9jb250cm9sID0gc2lnbmFsPEFic3RyYWN0Q29udHJvbDxURXh0PiB8IG51bGw+KG51bGwpO1xuICByZWFkb25seSBjb250cm9sID0gdGhpcy5fY29udHJvbC5hc1JlYWRvbmx5KCk7XG5cbiAgcmVhZG9ubHkgbGFiZWwgPSBpbnB1dCgnJyk7XG4gIHJlYWRvbmx5IHBsYWNlaG9sZGVyID0gaW5wdXQoJycpO1xuXG4gIHJlYWRvbmx5IGV4dGVybmFsVmFsdWUgPSBtb2RlbDxURXh0IHwgbnVsbD4obnVsbCwgeyBhbGlhczogJ3ZhbHVlJyB9KTtcbiAgcmVhZG9ubHkgaW50ZXJuYWxWYWx1ZSA9IGxpbmtlZFNpZ25hbCgoKSA9PlxuICAgIHRoaXMudG9JbnRlcm5hbFZhbHVlKHRoaXMuZXh0ZXJuYWxWYWx1ZSgpKVxuICApO1xuXG4gIHJlYWRvbmx5IGRhdGFUZXN0SWRJbnB1dCA9IGlucHV0KHVuZGVmaW5lZCwgeyBhbGlhczogJ2RhdGFUZXN0SWQnIH0pO1xuICByZWFkb25seSBkYXRhVGVzdElkID0gbGlua2VkU2lnbmFsKFxuICAgICgpID0+IHRoaXMuZGF0YVRlc3RJZElucHV0KCkgPz8gdGhpcy5sYWJlbCgpID8/ICcnXG4gICk7XG5cbiAgcmVhZG9ubHkgcmVhZG9ubHlJbnB1dCA9IGlucHV0PFxuICAgIGJvb2xlYW4gfCBudWxsLFxuICAgIE51bGxhYmxlPGJvb2xlYW4gfCBzdHJpbmcgfCBudW1iZXI+XG4gID4obnVsbCwge1xuICAgIGFsaWFzOiAncmVhZG9ubHknLFxuICAgIHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSxcbiAgfSk7XG5cbiAgcmVhZG9ubHkgcmVxdWlyZWRJbnB1dCA9IGlucHV0PFxuICAgIE51bGxhYmxlPGJvb2xlYW4+LFxuICAgIE51bGxhYmxlPGJvb2xlYW4gfCBzdHJpbmcgfCBudW1iZXI+XG4gID4obnVsbCwge1xuICAgIGFsaWFzOiAncmVxdWlyZWQnLFxuICAgIHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSxcbiAgfSk7XG4gIHByb3RlY3RlZCByZWFkb25seSByZXF1aXJlZEZyb21Db250cm9sID0gc2lnbmFsKGZhbHNlKTtcbiAgcmVhZG9ubHkgcmVxdWlyZWQgPSBsaW5rZWRTaWduYWwoKCkgPT4ge1xuICAgIHJldHVybiB0aGlzLnJlcXVpcmVkSW5wdXQoKSA/PyB0aGlzLnJlcXVpcmVkRnJvbUNvbnRyb2woKSA/PyBmYWxzZTtcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHRvdWNoZWRJbnRlcm5hbCA9IHNpZ25hbChmYWxzZSk7XG4gIHJlYWRvbmx5IHRvdWNoZWQgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgY29udHJvbCA9IHRoaXMuY29udHJvbCgpIGFzIGFueTtcbiAgICBpZiAoY29udHJvbCkge1xuICAgICAgcmV0dXJuIGNvbnRyb2wudG91Y2hlZFJlYWN0aXZlKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLnRvdWNoZWRJbnRlcm5hbCgpO1xuICAgIH1cbiAgfSk7XG4gIHJlYWRvbmx5IGludmFsaWQgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgaWYgKHRoaXMucmVxdWlyZWRJbnB1dCgpICYmIHRoaXMuaXNFbXB0eSh0aGlzLmV4dGVybmFsVmFsdWUoKSkpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICBjb25zdCBjb250cm9sID0gdGhpcy5jb250cm9sKCkgYXMgYW55O1xuICAgIGlmIChjb250cm9sKSB7XG4gICAgICByZXR1cm4gY29udHJvbC5zdGF0dXNSZWFjdGl2ZSgpID09PSAnSU5WQUxJRCc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH0pO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSByZXF1aXJlZEVmZmVjdCA9IGVmZmVjdCgoKSA9PiB7XG4gICAgdGhpcy5yZXF1aXJlZElucHV0KCk7XG4gICAgdGhpcy5vblZhbGlkYXRvckNoYW5nZSgpO1xuICB9KTtcblxuICBwcml2YXRlIHJlYWRvbmx5IHJlcXVpcmVkRXJyb3IgPSBjb21wdXRlZCgoKSA9PlxuICAgIHRoaXMuZ2V0UmVxdWlyZWRFcnJvcih0aGlzLmV4dGVybmFsVmFsdWUoKSlcbiAgKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IGNvbnRyb2xFcnJvcnMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgY29udHJvbCA9IHRoaXMuY29udHJvbCgpO1xuICAgIGlmIChjb250cm9sKSB7XG4gICAgICAoY29udHJvbCBhcyBhbnkpLnN0YXR1c1JlYWN0aXZlKCk7XG4gICAgICByZXR1cm4gY29udHJvbC5lcnJvcnM7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgfSk7XG4gIHJlYWRvbmx5IGVycm9ycyA9IGNvbXB1dGVkKFxuICAgICgpID0+IHRoaXMuY29udHJvbEVycm9ycygpID8/IHRoaXMucmVxdWlyZWRFcnJvcigpXG4gICk7XG4gIHJlYWRvbmx5IHZpc2libGVFcnJvcnM6IFNpZ25hbDxWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbD4gPSBjb21wdXRlZCgoKSA9PlxuICAgIHRoaXMuaW52YWxpZCgpICYmIHRoaXMudG91Y2hlZCgpID8gdGhpcy5lcnJvcnMoKSA6IG51bGxcbiAgKTtcblxuICBnZXQgbmdDb250cm9sKCkge1xuICAgIHJldHVybiB0aGlzLl9uZ0NvbnRyb2w7XG4gIH1cbiAgcHJpdmF0ZSBfbmdDb250cm9sOiBOZ0NvbnRyb2wgfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIF9vbkNoYW5nZTogKHZhbHVlOiBhbnkpID0+IHZvaWQgPSBub29wO1xuICBwcml2YXRlIF9vblRvdWNoOiAoKSA9PiB2b2lkID0gbm9vcDtcbiAgcHJpdmF0ZSBfb25WYWxpZGF0b3JDaGFuZ2U6ICgpID0+IHZvaWQgPSBub29wO1xuXG4gIGdldCBvbkNoYW5nZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fb25DaGFuZ2U7XG4gIH1cblxuICBnZXQgb25Ub3VjaCgpIHtcbiAgICByZXR1cm4gdGhpcy5fb25Ub3VjaDtcbiAgfVxuXG4gIGdldCBvblZhbGlkYXRvckNoYW5nZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fb25WYWxpZGF0b3JDaGFuZ2U7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLl9uZ0NvbnRyb2wgPSB0aGlzLmluamVjdG9yLmdldChOZ0NvbnRyb2wsIG51bGwsIHtcbiAgICAgIHNlbGY6IHRydWUsXG4gICAgICBvcHRpb25hbDogdHJ1ZSxcbiAgICB9KTtcbiAgICBjb25zdCBjb250cm9sID0gdGhpcy5uZ0NvbnRyb2w/LmNvbnRyb2w7XG4gICAgdGhpcy5fY29udHJvbC5zZXQoY29udHJvbCA/PyBudWxsKTtcbiAgICBpZiAoY29udHJvbCkge1xuICAgICAgY29udHJvbC5ldmVudHMucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5yZXF1aXJlZEZyb21Db250cm9sLnNldChjb250cm9sLmhhc1ZhbGlkYXRvcihWYWxpZGF0b3JzLnJlcXVpcmVkKSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICBjb25zdCBjb250cm9sID0gdGhpcy5jb250cm9sKCk7XG4gICAgaWYgKHRoaXMucmVxdWlyZWRJbnB1dCgpICYmIGNvbnRyb2wpIHtcbiAgICAgIGNvbnRyb2wucmVtb3ZlVmFsaWRhdG9ycyhWYWxpZGF0b3JzLnJlcXVpcmVkKTtcbiAgICAgIGNvbnRyb2wuc2V0RXJyb3JzKG51bGwpO1xuICAgIH1cbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMuX29uQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMuX29uVG91Y2ggPSAoKSA9PiB7XG4gICAgICB0aGlzLnRvdWNoZWRJbnRlcm5hbC5zZXQodHJ1ZSk7XG4gICAgICBmbigpO1xuICAgIH07XG4gIH1cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xuICAgIHRoaXMuZXh0ZXJuYWxWYWx1ZS5zZXQodmFsdWUpO1xuICB9XG5cbiAgLy8gSW1wbGVtZW50ZWQgYXMgYSBwYXJ0IG9mIFZhbGlkYXRvci5cbiAgdmFsaWRhdGUoY29udHJvbDogQWJzdHJhY3RDb250cm9sPFRFeHQ+KTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLnJlcXVpcmVkRXJyb3IoKTtcbiAgfVxuXG4gIHJlZ2lzdGVyT25WYWxpZGF0b3JDaGFuZ2UoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLl9vblZhbGlkYXRvckNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGlzRW1wdHkodmFsdWU6IFRFeHQgfCBudWxsKTogYm9vbGVhbjtcblxuICBvbkludGVybmFsVmFsdWVDaGFuZ2UodmFsdWU6IFRJbnQgfCBudWxsKSB7XG4gICAgaWYgKHZhbHVlID09PSAnJykge1xuICAgICAgdmFsdWUgPSBudWxsOyAvLyBDb252ZXJ0IGVtcHR5IHN0cmluZyB0byBudWxsXG4gICAgfVxuICAgIGlmICh2YWx1ZSAhPT0gdW50cmFja2VkKHRoaXMuaW50ZXJuYWxWYWx1ZSkpIHtcbiAgICAgIGNvbnN0IGV4dGVybmFsVmFsdWUgPSB0aGlzLnRvRXh0ZXJuYWxWYWx1ZSh2YWx1ZSk7XG4gICAgICB0aGlzLmV4dGVybmFsVmFsdWUuc2V0KGV4dGVybmFsVmFsdWUpO1xuICAgICAgdGhpcy5vbkNoYW5nZShleHRlcm5hbFZhbHVlKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgdG9FeHRlcm5hbFZhbHVlKGludGVybmFsVmFsdWU6IFRJbnQgfCBudWxsKTogVEV4dCB8IG51bGwge1xuICAgIHJldHVybiBpbnRlcm5hbFZhbHVlIGFzIFRFeHQgfCBudWxsO1xuICB9XG5cbiAgcHJvdGVjdGVkIHRvSW50ZXJuYWxWYWx1ZShleHRlcm5hbFZhbHVlOiBURXh0IHwgbnVsbCk6IFRJbnQgfCBudWxsIHtcbiAgICByZXR1cm4gZXh0ZXJuYWxWYWx1ZSBhcyBUSW50IHwgbnVsbDtcbiAgfVxuXG4gIG92ZXJyaWRlIG9uQmx1cigpIHtcbiAgICBzdXBlci5vbkJsdXIoKTtcbiAgICBQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpID0+IHtcbiAgICAgIHRoaXMub25Ub3VjaCgpO1xuICAgICAgdGhpcy5jZC5tYXJrRm9yQ2hlY2soKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0UmVxdWlyZWRFcnJvcih2YWx1ZTogVEV4dCB8IG51bGwpIHtcbiAgICByZXR1cm4gdGhpcy5yZXF1aXJlZCgpICYmIHRoaXMuaXNFbXB0eSh2YWx1ZSlcbiAgICAgID8gUmR0QmFzZUZvcm1JbnB1dENvbXBvbmVudC5SRVFVSVJFRF9FUlJPUlxuICAgICAgOiBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgcmVhZG9ubHkgUkVRVUlSRURfRVJST1IgPSB7IHJlcXVpcmVkOiB0cnVlIH07XG59XG4iXX0=","import { booleanAttribute, Directive, input, linkedSignal, } from '@angular/core';\nimport { RdtBaseFormInputComponent } from '../../base/rdt-base-form-input.component';\nimport * as i0 from \"@angular/core\";\nexport class RdtCheckboxComponent extends RdtBaseFormInputComponent {\n trueValueInput = input(true, {\n alias: 'trueValue',\n });\n trueValue = linkedSignal(() => this.trueValueInput());\n falseValueInput = input(false, {\n alias: 'falseValue',\n });\n falseValue = linkedSignal(() => this.falseValueInput());\n indeterminate = input(false, { transform: booleanAttribute });\n toExternalValue(internalValue) {\n switch (internalValue) {\n case true:\n return this.trueValue();\n case false:\n return this.falseValue();\n default:\n return null;\n }\n }\n toInternalValue(externalValue) {\n switch (externalValue) {\n case this.trueValue():\n return true;\n case this.falseValue():\n return false;\n default:\n return null;\n }\n }\n isEmpty(value) {\n return value === null;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtCheckboxComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.0\", type: RdtCheckboxComponent, isStandalone: true, inputs: { trueValueInput: { classPropertyName: \"trueValueInput\", publicName: \"trueValue\", isSignal: true, isRequired: false, transformFunction: null }, falseValueInput: { classPropertyName: \"falseValueInput\", publicName: \"falseValue\", isSignal: true, isRequired: false, transformFunction: null }, indeterminate: { classPropertyName: \"indeterminate\", publicName: \"indeterminate\", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtCheckboxComponent, decorators: [{\n type: Directive\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWNoZWNrYm94LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL0BuZ3JkdC9mb3Jtcy9zcmMvbGliL2lucHV0cy9jaGVja2JveC9yZHQtY2hlY2tib3guY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsU0FBUyxFQUNULEtBQUssRUFDTCxZQUFZLEdBQ2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sMENBQTBDLENBQUM7O0FBR3JGLE1BQU0sT0FBZ0Isb0JBR3BCLFNBQVEseUJBQWtEO0lBQ2pELGNBQWMsR0FBRyxLQUFLLENBQVEsSUFBYSxFQUFFO1FBQ3BELEtBQUssRUFBRSxXQUFXO0tBQ25CLENBQUMsQ0FBQztJQUNNLFNBQVMsR0FBRyxZQUFZLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUM7SUFDdEQsZUFBZSxHQUFHLEtBQUssQ0FBUyxLQUFlLEVBQUU7UUFDeEQsS0FBSyxFQUFFLFlBQVk7S0FDcEIsQ0FBQyxDQUFDO0lBQ00sVUFBVSxHQUFHLFlBQVksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUMsQ0FBQztJQUV4RCxhQUFhLEdBQUcsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxDQUFDLENBQUM7SUFFcEQsZUFBZSxDQUNoQyxhQUE2QjtRQUU3QixRQUFRLGFBQWEsRUFBRSxDQUFDO1lBQ3RCLEtBQUssSUFBSTtnQkFDUCxPQUFPLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUMxQixLQUFLLEtBQUs7Z0JBQ1IsT0FBTyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDM0I7Z0JBQ0UsT0FBTyxJQUFJLENBQUM7UUFDaEIsQ0FBQztJQUNILENBQUM7SUFFa0IsZUFBZSxDQUNoQyxhQUFvQztRQUVwQyxRQUFRLGFBQWEsRUFBRSxDQUFDO1lBQ3RCLEtBQUssSUFBSSxDQUFDLFNBQVMsRUFBRTtnQkFDbkIsT0FBTyxJQUFJLENBQUM7WUFDZCxLQUFLLElBQUksQ0FBQyxVQUFVLEVBQUU7Z0JBQ3BCLE9BQU8sS0FBSyxDQUFDO1lBQ2Y7Z0JBQ0UsT0FBTyxJQUFJLENBQUM7UUFDaEIsQ0FBQztJQUNILENBQUM7SUFFa0IsT0FBTyxDQUFDLEtBQTRCO1FBQ3JELE9BQU8sS0FBSyxLQUFLLElBQUksQ0FBQztJQUN4QixDQUFDO3VHQTNDbUIsb0JBQW9COzJGQUFwQixvQkFBb0I7OzJGQUFwQixvQkFBb0I7a0JBRHpDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBib29sZWFuQXR0cmlidXRlLFxuICBEaXJlY3RpdmUsXG4gIGlucHV0LFxuICBsaW5rZWRTaWduYWwsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmR0QmFzZUZvcm1JbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Jhc2UvcmR0LWJhc2UtZm9ybS1pbnB1dC5jb21wb25lbnQnO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBSZHRDaGVja2JveENvbXBvbmVudDxcbiAgVFRydWUgPSB0cnVlLFxuICBURmFsc2UgPSBmYWxzZVxuPiBleHRlbmRzIFJkdEJhc2VGb3JtSW5wdXRDb21wb25lbnQ8VFRydWUgfCBURmFsc2UsIGJvb2xlYW4+IHtcbiAgcmVhZG9ubHkgdHJ1ZVZhbHVlSW5wdXQgPSBpbnB1dDxUVHJ1ZT4odHJ1ZSBhcyBUVHJ1ZSwge1xuICAgIGFsaWFzOiAndHJ1ZVZhbHVlJyxcbiAgfSk7XG4gIHJlYWRvbmx5IHRydWVWYWx1ZSA9IGxpbmtlZFNpZ25hbCgoKSA9PiB0aGlzLnRydWVWYWx1ZUlucHV0KCkpO1xuICByZWFkb25seSBmYWxzZVZhbHVlSW5wdXQgPSBpbnB1dDxURmFsc2U+KGZhbHNlIGFzIFRGYWxzZSwge1xuICAgIGFsaWFzOiAnZmFsc2VWYWx1ZScsXG4gIH0pO1xuICByZWFkb25seSBmYWxzZVZhbHVlID0gbGlua2VkU2lnbmFsKCgpID0+IHRoaXMuZmFsc2VWYWx1ZUlucHV0KCkpO1xuXG4gIHJlYWRvbmx5IGluZGV0ZXJtaW5hdGUgPSBpbnB1dChmYWxzZSwgeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSk7XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHRvRXh0ZXJuYWxWYWx1ZShcbiAgICBpbnRlcm5hbFZhbHVlOiBib29sZWFuIHwgbnVsbFxuICApOiBUVHJ1ZSB8IFRGYWxzZSB8IG51bGwge1xuICAgIHN3aXRjaCAoaW50ZXJuYWxWYWx1ZSkge1xuICAgICAgY2FzZSB0cnVlOlxuICAgICAgICByZXR1cm4gdGhpcy50cnVlVmFsdWUoKTtcbiAgICAgIGNhc2UgZmFsc2U6XG4gICAgICAgIHJldHVybiB0aGlzLmZhbHNlVmFsdWUoKTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSB0b0ludGVybmFsVmFsdWUoXG4gICAgZXh0ZXJuYWxWYWx1ZTogVFRydWUgfCBURmFsc2UgfCBudWxsXG4gICk6IGJvb2xlYW4gfCBudWxsIHtcbiAgICBzd2l0Y2ggKGV4dGVybmFsVmFsdWUpIHtcbiAgICAgIGNhc2UgdGhpcy50cnVlVmFsdWUoKTpcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICBjYXNlIHRoaXMuZmFsc2VWYWx1ZSgpOlxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgaXNFbXB0eSh2YWx1ZTogVFRydWUgfCBURmFsc2UgfCBudWxsKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHZhbHVlID09PSBudWxsO1xuICB9XG59XG4iXX0=","import { numberAttribute } from '@angular/core';\nexport function nullToUndefined(value) {\n return value === null ? undefined : value;\n}\nexport function nullToUndefinedNumeric(value) {\n return numberAttribute(value, undefined);\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmb3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vQG5ncmR0L2Zvcm1zL3NyYy9saWIvdXRpbHMvdHJhbnNmb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHaEQsTUFBTSxVQUFVLGVBQWUsQ0FBSSxLQUFrQjtJQUNuRCxPQUFPLEtBQUssS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0FBQzVDLENBQUM7QUFFRCxNQUFNLFVBQVUsc0JBQXNCLENBQUMsS0FBZ0M7SUFDckUsT0FBTyxlQUFlLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBQzNDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBudW1iZXJBdHRyaWJ1dGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE51bGxhYmxlIH0gZnJvbSAnQG5ncmR0L3V0aWxzJztcblxuZXhwb3J0IGZ1bmN0aW9uIG51bGxUb1VuZGVmaW5lZDxUPih2YWx1ZTogTnVsbGFibGU8VD4pOiBUIHwgdW5kZWZpbmVkIHtcbiAgcmV0dXJuIHZhbHVlID09PSBudWxsID8gdW5kZWZpbmVkIDogdmFsdWU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBudWxsVG9VbmRlZmluZWROdW1lcmljKHZhbHVlOiBOdWxsYWJsZTxudW1iZXIgfCBzdHJpbmc+KSB7XG4gIHJldHVybiBudW1iZXJBdHRyaWJ1dGUodmFsdWUsIHVuZGVmaW5lZCk7XG59XG4iXX0=","import { Directive, input, linkedSignal } from '@angular/core';\nimport { RdtBaseFormInputComponent } from '../../base/rdt-base-form-input.component';\nimport { nullToUndefined } from '../../utils';\nimport * as i0 from \"@angular/core\";\nexport class RdtDateComponent extends RdtBaseFormInputComponent {\n type = input('date');\n minInput = input(undefined, {\n transform: nullToUndefined,\n });\n min = linkedSignal(() => {\n const minInput = this.minInput();\n return minInput ? this.toInternalValue(minInput) : null;\n });\n maxInput = input(undefined, {\n transform: nullToUndefined,\n });\n max = linkedSignal(() => {\n const maxInput = this.maxInput();\n return maxInput ? this.toInternalValue(maxInput) : null;\n });\n isEmpty(value) {\n return value === null;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtDateComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.0\", type: RdtDateComponent, isStandalone: true, inputs: { type: { classPropertyName: \"type\", publicName: \"type\", isSignal: true, isRequired: false, transformFunction: null }, minInput: { classPropertyName: \"minInput\", publicName: \"minInput\", isSignal: true, isRequired: false, transformFunction: null }, maxInput: { classPropertyName: \"maxInput\", publicName: \"maxInput\", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtDateComponent, decorators: [{\n type: Directive\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWRhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vQG5ncmR0L2Zvcm1zL3NyYy9saWIvaW5wdXRzL2RhdGUvcmR0LWRhdGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvRCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUNyRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQUk5QyxNQUFNLE9BQWdCLGdCQUdwQixTQUFRLHlCQUFxQztJQUNwQyxJQUFJLEdBQUcsS0FBSyxDQUFjLE1BQU0sQ0FBQyxDQUFDO0lBRWxDLFFBQVEsR0FBRyxLQUFLLENBQThCLFNBQVMsRUFBRTtRQUNoRSxTQUFTLEVBQUUsZUFBZTtLQUMzQixDQUFDLENBQUM7SUFDTSxHQUFHLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRTtRQUMvQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakMsT0FBTyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUMxRCxDQUFDLENBQUMsQ0FBQztJQUVNLFFBQVEsR0FBRyxLQUFLLENBQThCLFNBQVMsRUFBRTtRQUNoRSxTQUFTLEVBQUUsZUFBZTtLQUMzQixDQUFDLENBQUM7SUFDTSxHQUFHLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRTtRQUMvQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakMsT0FBTyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUMxRCxDQUFDLENBQUMsQ0FBQztJQUVnQixPQUFPLENBQUMsS0FBa0I7UUFDM0MsT0FBTyxLQUFLLEtBQUssSUFBSSxDQUFDO0lBQ3hCLENBQUM7dUdBeEJtQixnQkFBZ0I7MkZBQWhCLGdCQUFnQjs7MkZBQWhCLGdCQUFnQjtrQkFEckMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgaW5wdXQsIGxpbmtlZFNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTnVsbGFibGUgfSBmcm9tICdAbmdyZHQvdXRpbHMnO1xuaW1wb3J0IHsgUmR0QmFzZUZvcm1JbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Jhc2UvcmR0LWJhc2UtZm9ybS1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgbnVsbFRvVW5kZWZpbmVkIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgUmR0RGF0ZVR5cGUgfSBmcm9tICcuL2RhdGUtdHlwZSc7XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFJkdERhdGVDb21wb25lbnQ8XG4gIFRFeHQgPSBzdHJpbmcsXG4gIFRJbnQgPSBURXh0XG4+IGV4dGVuZHMgUmR0QmFzZUZvcm1JbnB1dENvbXBvbmVudDxURXh0LCBUSW50PiB7XG4gIHJlYWRvbmx5IHR5cGUgPSBpbnB1dDxSZHREYXRlVHlwZT4oJ2RhdGUnKTtcblxuICByZWFkb25seSBtaW5JbnB1dCA9IGlucHV0PE51bGxhYmxlPFRFeHQ+LCBURXh0IHwgbnVsbD4odW5kZWZpbmVkLCB7XG4gICAgdHJhbnNmb3JtOiBudWxsVG9VbmRlZmluZWQsXG4gIH0pO1xuICByZWFkb25seSBtaW4gPSBsaW5rZWRTaWduYWwoKCkgPT4ge1xuICAgIGNvbnN0IG1pbklucHV0ID0gdGhpcy5taW5JbnB1dCgpO1xuICAgIHJldHVybiBtaW5JbnB1dCA/IHRoaXMudG9JbnRlcm5hbFZhbHVlKG1pbklucHV0KSA6IG51bGw7XG4gIH0pO1xuXG4gIHJlYWRvbmx5IG1heElucHV0ID0gaW5wdXQ8TnVsbGFibGU8VEV4dD4sIFRFeHQgfCBudWxsPih1bmRlZmluZWQsIHtcbiAgICB0cmFuc2Zvcm06IG51bGxUb1VuZGVmaW5lZCxcbiAgfSk7XG4gIHJlYWRvbmx5IG1heCA9IGxpbmtlZFNpZ25hbCgoKSA9PiB7XG4gICAgY29uc3QgbWF4SW5wdXQgPSB0aGlzLm1heElucHV0KCk7XG4gICAgcmV0dXJuIG1heElucHV0ID8gdGhpcy50b0ludGVybmFsVmFsdWUobWF4SW5wdXQpIDogbnVsbDtcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGlzRW1wdHkodmFsdWU6IFRFeHQgfCBudWxsKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHZhbHVlID09PSBudWxsO1xuICB9XG59XG4iXX0=","import { forkJoin, map, take } from 'rxjs';\nexport class RdtFileReader {\n read(file) {\n return this.extractData(file).pipe(take(1), map((content) => ({\n fileName: file.name,\n content,\n size: file.size,\n mimeType: file.type ?? undefined,\n modified: isNaN(file.lastModified)\n ? undefined\n : new Date(file.lastModified),\n originalFile: file,\n })));\n }\n readAll(files) {\n return forkJoin(files.map((file) => this.read(file)));\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWZpbGUtcmVhZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vQG5ncmR0L2Zvcm1zL3NyYy9saWIvaW5wdXRzL2ZpbGUtaW5wdXQvcmVhZGVyL3JkdC1maWxlLXJlYWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBYyxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdkQsTUFBTSxPQUFnQixhQUFhO0lBRWpDLElBQUksQ0FBQyxJQUFVO1FBQ2IsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FDaEMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUNQLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztZQUNoQixRQUFRLEVBQUUsSUFBSSxDQUFDLElBQUk7WUFDbkIsT0FBTztZQUNQLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLFFBQVEsRUFBRyxJQUFJLENBQUMsSUFBb0IsSUFBSSxTQUFTO1lBQ2pELFFBQVEsRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQztnQkFDaEMsQ0FBQyxDQUFDLFNBQVM7Z0JBQ1gsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUM7WUFDL0IsWUFBWSxFQUFFLElBQUk7U0FDbkIsQ0FBQyxDQUFDLENBQ0osQ0FBQztJQUNKLENBQUM7SUFDRCxPQUFPLENBQUMsS0FBYTtRQUNuQixPQUFPLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN4RCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZHRGaWxlLCBSZHRNaW1lVHlwZSB9IGZyb20gJ0BuZ3JkdC91dGlscyc7XG5pbXBvcnQgeyBmb3JrSm9pbiwgbWFwLCBPYnNlcnZhYmxlLCB0YWtlIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBSZHRGaWxlUmVhZGVyPFQ+IHtcbiAgYWJzdHJhY3QgZXh0cmFjdERhdGEoZmlsZXM6IEZpbGUpOiBPYnNlcnZhYmxlPFQ+O1xuICByZWFkKGZpbGU6IEZpbGUpOiBPYnNlcnZhYmxlPFJkdEZpbGU8VD4+IHtcbiAgICByZXR1cm4gdGhpcy5leHRyYWN0RGF0YShmaWxlKS5waXBlKFxuICAgICAgdGFrZSgxKSxcbiAgICAgIG1hcCgoY29udGVudCkgPT4gKHtcbiAgICAgICAgZmlsZU5hbWU6IGZpbGUubmFtZSxcbiAgICAgICAgY29udGVudCxcbiAgICAgICAgc2l6ZTogZmlsZS5zaXplLFxuICAgICAgICBtaW1lVHlwZTogKGZpbGUudHlwZSBhcyBSZHRNaW1lVHlwZSkgPz8gdW5kZWZpbmVkLFxuICAgICAgICBtb2RpZmllZDogaXNOYU4oZmlsZS5sYXN0TW9kaWZpZWQpXG4gICAgICAgICAgPyB1bmRlZmluZWRcbiAgICAgICAgICA6IG5ldyBEYXRlKGZpbGUubGFzdE1vZGlmaWVkKSxcbiAgICAgICAgb3JpZ2luYWxGaWxlOiBmaWxlLFxuICAgICAgfSkpXG4gICAgKTtcbiAgfVxuICByZWFkQWxsKGZpbGVzOiBGaWxlW10pOiBPYnNlcnZhYmxlPFJkdEZpbGU8VD5bXT4ge1xuICAgIHJldHVybiBmb3JrSm9pbihmaWxlcy5tYXAoKGZpbGUpID0+IHRoaXMucmVhZChmaWxlKSkpO1xuICB9XG59XG4iXX0=","import { of } from 'rxjs';\nimport { RdtFileReader } from './rdt-file-reader';\nexport class NoOpFileReader extends RdtFileReader {\n extractData() {\n return of(undefined);\n }\n}\nexport const NO_OP_FILE_READER = new NoOpFileReader();\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWZpbGUtcmVhZGVyLW5vb3AuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9AbmdyZHQvZm9ybXMvc3JjL2xpYi9pbnB1dHMvZmlsZS1pbnB1dC9yZWFkZXIvcmR0LWZpbGUtcmVhZGVyLW5vb3AudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxQixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbEQsTUFBTSxPQUFPLGNBQWUsU0FBUSxhQUFtQjtJQUNyRCxXQUFXO1FBQ1QsT0FBTyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdkIsQ0FBQztDQUNGO0FBRUQsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxjQUFjLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBSZHRGaWxlUmVhZGVyIH0gZnJvbSAnLi9yZHQtZmlsZS1yZWFkZXInO1xuXG5leHBvcnQgY2xhc3MgTm9PcEZpbGVSZWFkZXIgZXh0ZW5kcyBSZHRGaWxlUmVhZGVyPHZvaWQ+IHtcbiAgZXh0cmFjdERhdGEoKSB7XG4gICAgcmV0dXJuIG9mKHVuZGVmaW5lZCk7XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IE5PX09QX0ZJTEVfUkVBREVSID0gbmV3IE5vT3BGaWxlUmVhZGVyKCk7XG4iXX0=","import { RdtFileUtils } from '@ngrdt/utils';\nimport { from } from 'rxjs';\nimport { RdtFileReader } from './rdt-file-reader';\nexport class RdtFileReaderBase64 extends RdtFileReader {\n removeDataPrefix;\n constructor(removeDataPrefix = false) {\n super();\n this.removeDataPrefix = removeDataPrefix;\n }\n extractData(file) {\n let promise = RdtFileUtils.blobToDataUrl(file);\n if (this.removeDataPrefix) {\n promise = promise.then((dataUrl) => dataUrl.substring(dataUrl.indexOf(',') + 1));\n }\n return from(promise);\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWZpbGUtcmVhZGVyLWJhc2U2NC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL0BuZ3JkdC9mb3Jtcy9zcmMvbGliL2lucHV0cy9maWxlLWlucHV0L3JlYWRlci9yZHQtZmlsZS1yZWFkZXItYmFzZTY0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDNUMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM1QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbEQsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGFBQXFCO0lBQ3hDO0lBQXBCLFlBQW9CLG1CQUFtQixLQUFLO1FBQzFDLEtBQUssRUFBRSxDQUFDO1FBRFUscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFRO0lBRTVDLENBQUM7SUFFRCxXQUFXLENBQUMsSUFBVTtRQUNwQixJQUFJLE9BQU8sR0FBRyxZQUFZLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQy9DLElBQUksSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDMUIsT0FBTyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUNqQyxPQUFPLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQzVDLENBQUM7UUFDSixDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDdkIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmR0RmlsZVV0aWxzIH0gZnJvbSAnQG5ncmR0L3V0aWxzJztcbmltcG9ydCB7IGZyb20gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFJkdEZpbGVSZWFkZXIgfSBmcm9tICcuL3JkdC1maWxlLXJlYWRlcic7XG5cbmV4cG9ydCBjbGFzcyBSZHRGaWxlUmVhZGVyQmFzZTY0IGV4dGVuZHMgUmR0RmlsZVJlYWRlcjxzdHJpbmc+IHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZW1vdmVEYXRhUHJlZml4ID0gZmFsc2UpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgZXh0cmFjdERhdGEoZmlsZTogRmlsZSkge1xuICAgIGxldCBwcm9taXNlID0gUmR0RmlsZVV0aWxzLmJsb2JUb0RhdGFVcmwoZmlsZSk7XG4gICAgaWYgKHRoaXMucmVtb3ZlRGF0YVByZWZpeCkge1xuICAgICAgcHJvbWlzZSA9IHByb21pc2UudGhlbigoZGF0YVVybCkgPT5cbiAgICAgICAgZGF0YVVybC5zdWJzdHJpbmcoZGF0YVVybC5pbmRleE9mKCcsJykgKyAxKVxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIGZyb20ocHJvbWlzZSk7XG4gIH1cbn1cbiJdfQ==","import { InjectionToken } from '@angular/core';\nimport { RdtFileReaderBase64 } from '../reader/rdt-file-reader-base64';\nexport const RDT_DEFAULT_FILE_READER = new InjectionToken('RDT_DEFAULT_FILE_READER', {\n factory: () => new RdtFileReaderBase64(),\n providedIn: 'root',\n});\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWRlZmF1bHQtZmlsZS1yZWFkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9AbmdyZHQvZm9ybXMvc3JjL2xpYi9pbnB1dHMvZmlsZS1pbnB1dC90b2tlbnMvcmR0LWRlZmF1bHQtZmlsZS1yZWFkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUV2RSxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxJQUFJLGNBQWMsQ0FFdkQseUJBQXlCLEVBQUU7SUFDM0IsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksbUJBQW1CLEVBQUU7SUFDeEMsVUFBVSxFQUFFLE1BQU07Q0FDbkIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJkdEZpbGVSZWFkZXIgfSBmcm9tICcuLi9yZWFkZXIvcmR0LWZpbGUtcmVhZGVyJztcbmltcG9ydCB7IFJkdEZpbGVSZWFkZXJCYXNlNjQgfSBmcm9tICcuLi9yZWFkZXIvcmR0LWZpbGUtcmVhZGVyLWJhc2U2NCc7XG5cbmV4cG9ydCBjb25zdCBSRFRfREVGQVVMVF9GSUxFX1JFQURFUiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxcbiAgUmR0RmlsZVJlYWRlcjx1bmtub3duPlxuPignUkRUX0RFRkFVTFRfRklMRV9SRUFERVInLCB7XG4gIGZhY3Rvcnk6ICgpID0+IG5ldyBSZHRGaWxlUmVhZGVyQmFzZTY0KCksXG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pO1xuIl19","import { InjectionToken } from '@angular/core';\nexport function czechFileLabelFn(files) {\n switch (files.length) {\n case 0:\n return 'Vyberte soubor';\n case 1:\n return files[0].fileName;\n case 2:\n case 3:\n case 4:\n return `Vybrány ${files.length} soubory`;\n default:\n return `Vybráno ${files.length} souborů`;\n }\n}\nexport const RDT_DEFAULT_FILE_LABEL_FN = new InjectionToken('RDT_DEFAULT_FILE_LABEL_FN', {\n providedIn: 'root',\n factory: () => czechFileLabelFn,\n});\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWRlZmF1bHQtbGFiZWwtZm4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9AbmdyZHQvZm9ybXMvc3JjL2xpYi9pbnB1dHMvZmlsZS1pbnB1dC90b2tlbnMvcmR0LWRlZmF1bHQtbGFiZWwtZm4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcvQyxNQUFNLFVBQVUsZ0JBQWdCLENBQUMsS0FBZ0I7SUFDL0MsUUFBUSxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDckIsS0FBSyxDQUFDO1lBQ0osT0FBTyxnQkFBZ0IsQ0FBQztRQUMxQixLQUFLLENBQUM7WUFDSixPQUFPLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUM7UUFDM0IsS0FBSyxDQUFDLENBQUM7UUFDUCxLQUFLLENBQUMsQ0FBQztRQUNQLEtBQUssQ0FBQztZQUNKLE9BQU8sV0FBVyxLQUFLLENBQUMsTUFBTSxVQUFVLENBQUM7UUFDM0M7WUFDRSxPQUFPLFdBQVcsS0FBSyxDQUFDLE1BQU0sVUFBVSxDQUFDO0lBQzdDLENBQUM7QUFDSCxDQUFDO0FBR0QsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUcsSUFBSSxjQUFjLENBQ3pELDJCQUEyQixFQUMzQjtJQUNFLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxnQkFBZ0I7Q0FDaEMsQ0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJkdEZpbGUgfSBmcm9tICdAbmdyZHQvdXRpbHMnO1xuXG5leHBvcnQgZnVuY3Rpb24gY3plY2hGaWxlTGFiZWxGbihmaWxlczogUmR0RmlsZVtdKSB7XG4gIHN3aXRjaCAoZmlsZXMubGVuZ3RoKSB7XG4gICAgY2FzZSAwOlxuICAgICAgcmV0dXJuICdWeWJlcnRlIHNvdWJvcic7XG4gICAgY2FzZSAxOlxuICAgICAgcmV0dXJuIGZpbGVzWzBdLmZpbGVOYW1lO1xuICAgIGNhc2UgMjpcbiAgICBjYXNlIDM6XG4gICAgY2FzZSA0OlxuICAgICAgcmV0dXJuIGBWeWJyw6FueSAke2ZpbGVzLmxlbmd0aH0gc291Ym9yeWA7XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiBgVnlicsOhbm8gJHtmaWxlcy5sZW5ndGh9IHNvdWJvcsWvYDtcbiAgfVxufVxuXG5leHBvcnQgdHlwZSBSZHRGaWxlTGFiZWxGbiA9IChmaWxlczogUmR0RmlsZVtdKSA9PiBzdHJpbmc7XG5leHBvcnQgY29uc3QgUkRUX0RFRkFVTFRfRklMRV9MQUJFTF9GTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxSZHRGaWxlTGFiZWxGbj4oXG4gICdSRFRfREVGQVVMVF9GSUxFX0xBQkVMX0ZOJyxcbiAge1xuICAgIHByb3ZpZGVkSW46ICdyb290JyxcbiAgICBmYWN0b3J5OiAoKSA9PiBjemVjaEZpbGVMYWJlbEZuLFxuICB9XG4pO1xuIl19","import { InjectionToken } from '@angular/core';\nexport const RDT_DEFAULT_MAX_FILE_SIZE = new InjectionToken('RDT_DEFAULT_MAX_FILE_SIZE', {\n factory: () => '100 MB',\n providedIn: 'root',\n});\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWRlZmF1bHQtbWF4LWZpbGUtc2l6ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL0BuZ3JkdC9mb3Jtcy9zcmMvbGliL2lucHV0cy9maWxlLWlucHV0L3Rva2Vucy9yZHQtZGVmYXVsdC1tYXgtZmlsZS1zaXplLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHL0MsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUcsSUFBSSxjQUFjLENBQ3pELDJCQUEyQixFQUMzQjtJQUNFLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxRQUFRO0lBQ3ZCLFVBQVUsRUFBRSxNQUFNO0NBQ25CLENBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZHRGaWxlU2l6ZSB9IGZyb20gJ0BuZ3JkdC91dGlscyc7XG5cbmV4cG9ydCBjb25zdCBSRFRfREVGQVVMVF9NQVhfRklMRV9TSVpFID0gbmV3IEluamVjdGlvblRva2VuPFJkdEZpbGVTaXplPihcbiAgJ1JEVF9ERUZBVUxUX01BWF9GSUxFX1NJWkUnLFxuICB7XG4gICAgZmFjdG9yeTogKCkgPT4gJzEwMCBNQicsXG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxuICB9XG4pO1xuIl19","import { booleanAttribute, computed, Directive, effect, inject, input, linkedSignal, } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { FormControl } from '@angular/forms';\nimport { RdtFileUtils, } from '@ngrdt/utils';\nimport { RdtBaseFormInputComponent } from '../../base/rdt-base-form-input.component';\nimport { nullToUndefined } from '../../utils';\nimport { NO_OP_FILE_READER } from './reader/rdt-file-reader-noop';\nimport { RDT_DEFAULT_FILE_READER } from './tokens/rdt-default-file-reader';\nimport { RDT_DEFAULT_FILE_LABEL_FN } from './tokens/rdt-default-label-fn';\nimport { RDT_DEFAULT_MAX_FILE_SIZE } from './tokens/rdt-default-max-file-size';\nimport * as i0 from \"@angular/core\";\nexport class RdtFileInputComponent extends RdtBaseFormInputComponent {\n defaultFileReader = inject(RDT_DEFAULT_FILE_READER);\n defaultMaxFileSize = inject(RDT_DEFAULT_MAX_FILE_SIZE);\n defaultLabelFn = inject(RDT_DEFAULT_FILE_LABEL_FN);\n readerInput = input(this.defaultFileReader, {\n alias: 'reader',\n });\n reader = linkedSignal(() => this.readerInput());\n acceptInput = input(undefined, { alias: 'accept', transform: nullToUndefined });\n accept = linkedSignal(() => {\n const acceptInput = this.acceptInput();\n return !acceptInput || Array.isArray(acceptInput)\n ? acceptInput\n : [acceptInput];\n });\n jointAccept = computed(() => this.accept()?.join(','));\n maxFileSizeInput = input(this.defaultMaxFileSize, {\n alias: 'maxFileSize',\n transform: nullToUndefined,\n });\n maxFileSize = linkedSignal(() => this.maxFileSizeInput());\n maxFileSizeInBytes = computed(() => {\n const maxFileSize = this.maxFileSize();\n return maxFileSize ? RdtFileUtils.fileSizeToBytes(maxFileSize) : null;\n });\n labelFn = input(this.defaultLabelFn);\n multiple = input(false, { transform: booleanAttribute });\n labelCtrl = new FormControl(null);\n labelDataTestId = computed(() => this.dataTestId() + '-label');\n touchedEffect = effect(() => {\n const touched = this.touched();\n if (touched) {\n this.labelCtrl.markAsTouched();\n }\n else {\n this.labelCtrl.markAsUntouched();\n }\n });\n errorEffect = effect(() => {\n this.labelCtrl?.setErrors(this.visibleErrors());\n });\n ngOnInit() {\n super.ngOnInit();\n this.control()?.addValidators(this._maxFileSizeValidator);\n }\n ngOnDestroy() {\n super.ngOnDestroy();\n this.control()?.removeValidators(this._maxFileSizeValidator);\n }\n onFileSelected(event) {\n const target = event.target;\n if (!target.files) {\n return;\n }\n let shouldRead = true;\n const maxBytes = this.maxFileSizeInBytes();\n if (maxBytes !== null) {\n const files = Array.from(target.files);\n for (const file of files) {\n if (file.size > maxBytes) {\n shouldRead = false;\n break;\n }\n }\n }\n const reader = shouldRead\n ? this.reader()\n : NO_OP_FILE_READER;\n reader\n .readAll(Array.from(target.files))\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe((files) => {\n console.log(files);\n this.onChange(files);\n this.writeValue(files);\n });\n }\n writeValue(value) {\n super.writeValue(value);\n this.setInnerValue(value);\n }\n setInnerValue(files) {\n if (this.labelCtrl) {\n const label = this.labelFn()(files ?? []);\n this.labelCtrl.setValue(label);\n }\n }\n clear() {\n this.onInternalValueChange(null);\n }\n _maxFileSizeValidator = (ctrl) => {\n const maxSize = this.maxFileSizeInBytes();\n if (maxSize === null ||\n !Array.isArray(ctrl.value) ||\n ctrl.value.length === 0) {\n return null;\n }\n const files = ctrl.value;\n for (const file of files) {\n if (file['size'] !== undefined && file.size > maxSize) {\n return {\n maxFileSize: {\n max: maxSize,\n actual: file.size,\n },\n };\n }\n }\n return null;\n };\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtFileInputComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.0\", type: RdtFileInputComponent, isStandalone: true, inputs: { readerInput: { classPropertyName: \"readerInput\", publicName: \"reader\", isSignal: true, isRequired: false, transformFunction: null }, acceptInput: { classPropertyName: \"acceptInput\", publicName: \"accept\", isSignal: true, isRequired: false, transformFunction: null }, maxFileSizeInput: { classPropertyName: \"maxFileSizeInput\", publicName: \"maxFileSize\", isSignal: true, isRequired: false, transformFunction: null }, labelFn: { classPropertyName: \"labelFn\", publicName: \"labelFn\", isSignal: true, isRequired: false, transformFunction: null }, multiple: { classPropertyName: \"multiple\", publicName: \"multiple\", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtFileInputComponent, decorators: [{\n type: Directive\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWZpbGUtaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vQG5ncmR0L2Zvcm1zL3NyYy9saWIvaW5wdXRzL2ZpbGUtaW5wdXQvcmR0LWZpbGUtaW5wdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsUUFBUSxFQUNSLFNBQVMsRUFDVCxNQUFNLEVBQ04sTUFBTSxFQUNOLEtBQUssRUFDTCxZQUFZLEdBQ2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFdBQVcsRUFBZSxNQUFNLGdCQUFnQixDQUFDO0FBQzFELE9BQU8sRUFLTCxZQUFZLEdBRWIsTUFBTSxjQUFjLENBQUM7QUFDdEIsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDckYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU5QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMxRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7QUFRL0UsTUFBTSxPQUFnQixxQkFFcEIsU0FBUSx5QkFBK0I7SUFDcEIsaUJBQWlCLEdBQUcsTUFBTSxDQUFDLHVCQUF1QixDQUFDLENBQUM7SUFDcEQsa0JBQWtCLEdBQUcsTUFBTSxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDdkQsY0FBYyxHQUFHLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBRTdELFdBQVcsR0FBRyxLQUFLLENBQzFCLElBQUksQ0FBQyxpQkFB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Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgYm9vbGVhbkF0dHJpYnV0ZSxcbiAgY29tcHV0ZWQsXG4gIERpcmVjdGl2ZSxcbiAgZWZmZWN0LFxuICBpbmplY3QsXG4gIGlucHV0LFxuICBsaW5rZWRTaWduYWwsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIFZhbGlkYXRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtcbiAgTnVsbGFibGUsXG4gIFJkdENvbWJpbmVkTWltZVR5cGUsXG4gIFJkdEZpbGUsXG4gIFJkdEZpbGVTaXplLFxuICBSZHRGaWxlVXRpbHMsXG4gIFJkdE1pbWVUeXBlLFxufSBmcm9tICdAbmdyZHQvdXRpbHMnO1xuaW1wb3J0IHsgUmR0QmFzZUZvcm1JbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Jhc2UvcmR0LWJhc2UtZm9ybS1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgbnVsbFRvVW5kZWZpbmVkIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgUmR0RmlsZVJlYWRlciB9IGZyb20gJy4vcmVhZGVyL3JkdC1maWxlLXJlYWRlcic7XG5pbXBvcnQgeyBOT19PUF9GSUxFX1JFQURFUiB9IGZyb20gJy4vcmVhZGVyL3JkdC1maWxlLXJlYWRlci1ub29wJztcbmltcG9ydCB7IFJEVF9ERUZBVUxUX0ZJTEVfUkVBREVSIH0gZnJvbSAnLi90b2tlbnMvcmR0LWRlZmF1bHQtZmlsZS1yZWFkZXInO1xuaW1wb3J0IHsgUkRUX0RFRkFVTFRfRklMRV9MQUJFTF9GTiB9IGZyb20gJy4vdG9rZW5zL3JkdC1kZWZhdWx0LWxhYmVsLWZuJztcbmltcG9ydCB7IFJEVF9ERUZBVUxUX01BWF9GSUxFX1NJWkUgfSBmcm9tICcuL3Rva2Vucy9yZHQtZGVmYXVsdC1tYXgtZmlsZS1zaXplJztcblxudHlwZSBBY2NlcHRUeXBlID1cbiAgfCAoUmR0TWltZVR5cGUgfCBSZHRDb21iaW5lZE1pbWVUeXBlKVtdXG4gIHwgUmR0TWltZVR5cGVcbiAgfCBSZHRDb21iaW5lZE1pbWVUeXBlO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBSZHRGaWxlSW5wdXRDb21wb25lbnQ8XG4gIFRFeHQgPSBzdHJpbmdcbj4gZXh0ZW5kcyBSZHRCYXNlRm9ybUlucHV0Q29tcG9uZW50PFRFeHQ+IHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGRlZmF1bHRGaWxlUmVhZGVyID0gaW5qZWN0KFJEVF9ERUZBVUxUX0ZJTEVfUkVBREVSKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGRlZmF1bHRNYXhGaWxlU2l6ZSA9IGluamVjdChSRFRfREVGQVVMVF9NQVhfRklMRV9TSVpFKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGRlZmF1bHRMYWJlbEZuID0gaW5qZWN0KFJEVF9ERUZBVUxUX0ZJTEVfTEFCRUxfRk4pO1xuXG4gIHJlYWRvbmx5IHJlYWRlcklucHV0ID0gaW5wdXQ8UmR0RmlsZVJlYWRlcjxURXh0Pj4oXG4gICAgdGhpcy5kZWZhdWx0RmlsZVJlYWRlciBhcyBSZHRGaWxlUmVhZGVyPFRFeHQ+LFxuICAgIHtcbiAgICAgIGFsaWFzOiAncmVhZGVyJyxcbiAgICB9XG4gICk7XG4gIHJlYWRvbmx5IHJlYWRlciA9IGxpbmtlZFNpZ25hbCgoKSA9PiB0aGlzLnJlYWRlcklucHV0KCkpO1xuXG4gIHJlYWRvbmx5IGFjY2VwdElucHV0ID0gaW5wdXQ8QWNjZXB0VHlwZSB8IHVuZGVmaW5lZCwgTnVsbGFibGU8QWNjZXB0VHlwZT4+KFxuICAgIHVuZGVmaW5lZCxcbiAgICB7IGFsaWFzOiAnYWNjZXB0JywgdHJhbnNmb3JtOiBudWxsVG9VbmRlZmluZWQgfVxuICApO1xuICByZWFkb25seSBhY2NlcHQgPSBsaW5rZWRTaWduYWwoKCkgPT4ge1xuICAgIGNvbnN0IGFjY2VwdElucHV0ID0gdGhpcy5hY2NlcHRJbnB1dCgpO1xuICAgIHJldHVybiAhYWNjZXB0SW5wdXQgfHwgQXJyYXkuaXNBcnJheShhY2NlcHRJbnB1dClcbiAgICAgID8gYWNjZXB0SW5wdXRcbiAgICAgIDogW2FjY2VwdElucHV0XTtcbiAgfSk7XG4gIHJlYWRvbmx5IGpvaW50QWNjZXB0ID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5hY2NlcHQoKT8uam9pbignLCcpKTtcblxuICByZWFkb25seSBtYXhGaWxlU2l6ZUlucHV0ID0gaW5wdXQ8XG4gICAgTnVsbGFibGU8UmR0RmlsZVNpemU+LFxuICAgIFJkdEZpbGVTaXplIHwgdW5kZWZpbmVkXG4gID4odGhpcy5kZWZhdWx0TWF4RmlsZVNpemUsIHtcbiAgICBhbGlhczogJ21heEZpbGVTaXplJyxcbiAgICB0cmFuc2Zvcm06IG51bGxUb1VuZGVmaW5lZCxcbiAgfSk7XG4gIHJlYWRvbmx5IG1heEZpbGVTaXplID0gbGlua2VkU2lnbmFsKCgpID0+IHRoaXMubWF4RmlsZVNpemVJbnB1dCgpKTtcbiAgcmVhZG9ubHkgbWF4RmlsZVNpemVJbkJ5dGVzID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IG1heEZpbGVTaXplID0gdGhpcy5tYXhGaWxlU2l6ZSgpO1xuICAgIHJldHVybiBtYXhGaWxlU2l6ZSA/IFJkdEZpbGVVdGlscy5maWxlU2l6ZVRvQnl0ZXMobWF4RmlsZVNpemUpIDogbnVsbDtcbiAgfSk7XG5cbiAgcmVhZG9ubHkgbGFiZWxGbiA9IGlucHV0KHRoaXMuZGVmYXVsdExhYmVsRm4pO1xuICByZWFkb25seSBtdWx0aXBsZSA9IGlucHV0KGZhbHNlLCB7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgbGFiZWxDdHJsID0gbmV3IEZvcm1Db250cm9sPHN0cmluZyB8IG51bGw+KG51bGwpO1xuICByZWFkb25seSBsYWJlbERhdGFUZXN0SWQgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmRhdGFUZXN0SWQoKSArICctbGFiZWwnKTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgdG91Y2hlZEVmZmVjdCA9IGVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgdG91Y2hlZCA9IHRoaXMudG91Y2hlZCgpO1xuICAgIGlmICh0b3VjaGVkKSB7XG4gICAgICB0aGlzLmxhYmVsQ3RybC5tYXJrQXNUb3VjaGVkKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubGFiZWxDdHJsLm1hcmtBc1VudG91Y2hlZCgpO1xuICAgIH1cbiAgfSk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGVycm9yRWZmZWN0ID0gZWZmZWN0KCgpID0+IHtcbiAgICB0aGlzLmxhYmVsQ3RybD8uc2V0RXJyb3JzKHRoaXMudmlzaWJsZUVycm9ycygpKTtcbiAgfSk7XG5cbiAgb3ZlcnJpZGUgbmdPbkluaXQoKSB7XG4gICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICB0aGlzLmNvbnRyb2woKT8uYWRkVmFsaWRhdG9ycyh0aGlzLl9tYXhGaWxlU2l6ZVZhbGlkYXRvcik7XG4gIH1cblxuICBvdmVycmlkZSBuZ09uRGVzdHJveSgpIHtcbiAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgIHRoaXMuY29udHJvbCgpPy5yZW1vdmVWYWxpZGF0b3JzKHRoaXMuX21heEZpbGVTaXplVmFsaWRhdG9yKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvbkZpbGVTZWxlY3RlZChldmVudDogRXZlbnQpIHtcbiAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudDtcbiAgICBpZiAoIXRhcmdldC5maWxlcykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGxldCBzaG91bGRSZWFkID0gdHJ1ZTtcbiAgICBjb25zdCBtYXhCeXRlcyA9IHRoaXMubWF4RmlsZVNpemVJbkJ5dGVzKCk7XG4gICAgaWYgKG1heEJ5dGVzICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBmaWxlcyA9IEFycmF5LmZyb20odGFyZ2V0LmZpbGVzKTtcbiAgICAgIGZvciAoY29uc3QgZmlsZSBvZiBmaWxlcykge1xuICAgICAgICBpZiAoZmlsZS5zaXplID4gbWF4Qnl0ZXMpIHtcbiAgICAgICAgICBzaG91bGRSZWFkID0gZmFsc2U7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCByZWFkZXIgPSBzaG91bGRSZWFkXG4gICAgICA/IHRoaXMucmVhZGVyKClcbiAgICAgIDogKE5PX09QX0ZJTEVfUkVBREVSIGFzIHVua25vd24gYXMgUmR0RmlsZVJlYWRlcjxURXh0Pik7XG5cbiAgICByZWFkZXJcbiAgICAgIC5yZWFkQWxsKEFycmF5LmZyb20odGFyZ2V0LmZpbGVzKSlcbiAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKVxuICAgICAgLnN1YnNjcmliZSgoZmlsZXMpID0+IHtcbiAgICAgICAgY29uc29sZS5sb2coZmlsZXMpO1xuICAgICAgICB0aGlzLm9uQ2hhbmdlKGZpbGVzKTtcbiAgICAgICAgdGhpcy53cml0ZVZhbHVlKGZpbGVzKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgb3ZlcnJpZGUgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KSB7XG4gICAgc3VwZXIud3JpdGVWYWx1ZSh2YWx1ZSk7XG4gICAgdGhpcy5zZXRJbm5lclZhbHVlKHZhbHVlKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0SW5uZXJWYWx1ZShmaWxlczogTnVsbGFibGU8UmR0RmlsZVtdPikge1xuICAgIGlmICh0aGlzLmxhYmVsQ3RybCkge1xuICAgICAgY29uc3QgbGFiZWwgPSB0aGlzLmxhYmVsRm4oKShmaWxlcyA/PyBbXSk7XG4gICAgICB0aGlzLmxhYmVsQ3RybC5zZXRWYWx1ZShsYWJlbCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGNsZWFyKCkge1xuICAgIHRoaXMub25JbnRlcm5hbFZhbHVlQ2hhbmdlKG51bGwpO1xuICB9XG5cbiAgcHJpdmF0ZSBfbWF4RmlsZVNpemVWYWxpZGF0b3I6IFZhbGlkYXRvckZuID0gKGN0cmwpID0+IHtcbiAgICBjb25zdCBtYXhTaXplID0gdGhpcy5tYXhGaWxlU2l6ZUluQnl0ZXMoKTtcbiAgICBpZiAoXG4gICAgICBtYXhTaXplID09PSBudWxsIHx8XG4gICAgICAhQXJyYXkuaXNBcnJheShjdHJsLnZhbHVlKSB8fFxuICAgICAgY3RybC52YWx1ZS5sZW5ndGggPT09IDBcbiAgICApIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGNvbnN0IGZpbGVzID0gY3RybC52YWx1ZSBhcyBSZHRGaWxlW107XG4gICAgZm9yIChjb25zdCBmaWxlIG9mIGZpbGVzKSB7XG4gICAgICBpZiAoZmlsZVsnc2l6ZSddICE9PSB1bmRlZmluZWQgJiYgZmlsZS5zaXplID4gbWF4U2l6ZSkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIG1heEZpbGVTaXplOiB7XG4gICAgICAgICAgICBtYXg6IG1heFNpemUsXG4gICAgICAgICAgICBhY3R1YWw6IGZpbGUuc2l6ZSxcbiAgICAgICAgICB9LFxuICAgICAgICB9O1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfTtcbn1cbiJdfQ==","import { RdtFileUtils } from '@ngrdt/utils';\nimport { from } from 'rxjs';\nimport { RdtFileReader } from './rdt-file-reader';\nexport class RdtFileReaderArrayBuffer extends RdtFileReader {\n extractData(file) {\n return from(RdtFileUtils.fileAsArrayBuffer(file));\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWZpbGUtcmVhZGVyLWFycmF5LWJ1ZmZlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL0BuZ3JkdC9mb3Jtcy9zcmMvbGliL2lucHV0cy9maWxlLWlucHV0L3JlYWRlci9yZHQtZmlsZS1yZWFkZXItYXJyYXktYnVmZmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDNUMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM1QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbEQsTUFBTSxPQUFPLHdCQUF5QixTQUFRLGFBQTBCO0lBQ3RFLFdBQVcsQ0FBQyxJQUFVO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3BELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJkdEZpbGVVdGlscyB9IGZyb20gJ0BuZ3JkdC91dGlscyc7XG5pbXBvcnQgeyBmcm9tIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBSZHRGaWxlUmVhZGVyIH0gZnJvbSAnLi9yZHQtZmlsZS1yZWFkZXInO1xuXG5leHBvcnQgY2xhc3MgUmR0RmlsZVJlYWRlckFycmF5QnVmZmVyIGV4dGVuZHMgUmR0RmlsZVJlYWRlcjxBcnJheUJ1ZmZlcj4ge1xuICBleHRyYWN0RGF0YShmaWxlOiBGaWxlKSB7XG4gICAgcmV0dXJuIGZyb20oUmR0RmlsZVV0aWxzLmZpbGVBc0FycmF5QnVmZmVyKGZpbGUpKTtcbiAgfVxufVxuIl19","import { RdtFileUtils } from '@ngrdt/utils';\nimport { from } from 'rxjs';\nimport { RdtFileReader } from './rdt-file-reader';\nexport class VnshFileReaderText extends RdtFileReader {\n encoding;\n constructor(encoding) {\n super();\n this.encoding = encoding;\n }\n extractData(file) {\n return from(RdtFileUtils.fileAsText(file, this.encoding));\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWZpbGUtcmVhZGVyLXRleHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9AbmdyZHQvZm9ybXMvc3JjL2xpYi9pbnB1dHMvZmlsZS1pbnB1dC9yZWFkZXIvcmR0LWZpbGUtcmVhZGVyLXRleHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFzQixZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDaEUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM1QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbEQsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGFBQXFCO0lBQ3hDO0lBQW5CLFlBQW1CLFFBQTZCO1FBQzlDLEtBQUssRUFBRSxDQUFDO1FBRFMsYUFBUSxHQUFSLFFBQVEsQ0FBcUI7SUFFaEQsQ0FBQztJQUNELFdBQVcsQ0FBQyxJQUFVO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO0lBQzVELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFsbEVuY29kaW5nQWxpYXNlcywgUmR0RmlsZVV0aWxzIH0gZnJvbSAnQG5ncmR0L3V0aWxzJztcbmltcG9ydCB7IGZyb20gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFJkdEZpbGVSZWFkZXIgfSBmcm9tICcuL3JkdC1maWxlLXJlYWRlcic7XG5cbmV4cG9ydCBjbGFzcyBWbnNoRmlsZVJlYWRlclRleHQgZXh0ZW5kcyBSZHRGaWxlUmVhZGVyPHN0cmluZz4ge1xuICBjb25zdHJ1Y3RvcihwdWJsaWMgZW5jb2Rpbmc/OiBBbGxFbmNvZGluZ0FsaWFzZXMpIHtcbiAgICBzdXBlcigpO1xuICB9XG4gIGV4dHJhY3REYXRhKGZpbGU6IEZpbGUpIHtcbiAgICByZXR1cm4gZnJvbShSZHRGaWxlVXRpbHMuZmlsZUFzVGV4dChmaWxlLCB0aGlzLmVuY29kaW5nKSk7XG4gIH1cbn1cbiJdfQ==","import { Directive, input } from '@angular/core';\nimport { RdtBaseFormInputComponent } from '../../base/rdt-base-form-input.component';\nimport { nullToUndefined, nullToUndefinedNumeric, } from '../../utils';\nimport * as i0 from \"@angular/core\";\nexport class RdtNumericInputComponent extends RdtBaseFormInputComponent {\n min = input(undefined, {\n transform: nullToUndefinedNumeric,\n });\n max = input(undefined, {\n transform: nullToUndefinedNumeric,\n });\n step = input(undefined, {\n transform: nullToUndefinedNumeric,\n });\n autocomplete = input(undefined, {\n transform: nullToUndefined,\n });\n isEmpty(value) {\n return value === null;\n }\n toExternalValue(internalValue) {\n if (typeof internalValue === 'number') {\n return internalValue;\n }\n else if (internalValue && typeof internalValue === 'string') {\n return parseFloat(internalValue);\n }\n return null;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtNumericInputComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.0\", type: RdtNumericInputComponent, isStandalone: true, inputs: { min: { classPropertyName: \"min\", publicName: \"min\", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: \"max\", publicName: \"max\", isSignal: true, isRequired: false, transformFunction: null }, step: { classPropertyName: \"step\", publicName: \"step\", isSignal: true, isRequired: false, transformFunction: null }, autocomplete: { classPropertyName: \"autocomplete\", publicName: \"autocomplete\", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtNumericInputComponent, decorators: [{\n type: Directive\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LW51bWVyaWMtaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vQG5ncmR0L2Zvcm1zL3NyYy9saWIvaW5wdXRzL251bWVyaWMtaW5wdXQvcmR0LW51bWVyaWMtaW5wdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ3JGLE9BQU8sRUFDTCxlQUFlLEVBQ2Ysc0JBQXNCLEdBRXZCLE1BQU0sYUFBYSxDQUFDOztBQUdyQixNQUFNLE9BQWdCLHdCQUF5QixTQUFRLHlCQUV0RDtJQUNVLEdBQUcsR0FBRyxLQUFLLENBQTJDLFNBQVMsRUFBRTtRQUN4RSxTQUFTLEVBQUUsc0JBQXNCO0tBQ2xDLENBQUMsQ0FBQztJQUNNLEdBQUcsR0FBRyxLQUFLLENBQTJDLFNBQVMsRUFBRTtRQUN4RSxTQUFTLEVBQUUsc0JBQXNCO0tBQ2xDLENBQUMsQ0FBQztJQUNNLElBQUksR0FBRyxLQUFLLENBQTJDLFNBQVMsRUFBRTtRQUN6RSxTQUFTLEVBQUUsc0JBQXNCO0tBQ2xDLENBQUMsQ0FBQztJQUNNLFlBQVksR0FBRyxLQUFLLENBRzNCLFNBQVMsRUFBRTtRQUNYLFNBQVMsRUFBRSxlQUFlO0tBQzNCLENBQUMsQ0FBQztJQUVnQixPQUFPLENBQUMsS0FBb0I7UUFDN0MsT0FBTyxLQUFLLEtBQUssSUFBSSxDQUFDO0lBQ3hCLENBQUM7SUFFa0IsZUFBZSxDQUNoQyxhQUE0QjtRQUU1QixJQUFJLE9BQU8sYUFBYSxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ3RDLE9BQU8sYUFBYSxDQUFDO1FBQ3ZCLENBQUM7YUFBTSxJQUFJLGFBQWEsSUFBSSxPQUFPLGFBQWEsS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUM5RCxPQUFPLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNuQyxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO3VHQWhDbUIsd0JBQXdCOzJGQUF4Qix3QkFBd0I7OzJGQUF4Qix3QkFBd0I7a0JBRDdDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOdWxsYWJsZSB9IGZyb20gJ0BuZ3JkdC91dGlscyc7XG5pbXBvcnQgeyBSZHRCYXNlRm9ybUlucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vYmFzZS9yZHQtYmFzZS1mb3JtLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICBudWxsVG9VbmRlZmluZWQsXG4gIG51bGxUb1VuZGVmaW5lZE51bWVyaWMsXG4gIFJkdEF1dG9jb21wbGV0ZU9wdGlvbnMsXG59IGZyb20gJy4uLy4uL3V0aWxzJztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgUmR0TnVtZXJpY0lucHV0Q29tcG9uZW50IGV4dGVuZHMgUmR0QmFzZUZvcm1JbnB1dENvbXBvbmVudDxcbiAgbnVtYmVyIHwgbnVsbFxuPiB7XG4gIHJlYWRvbmx5IG1pbiA9IGlucHV0PG51bWJlciB8IG51bGwsIE51bGxhYmxlPG51bWJlciB8IHN0cmluZz4+KHVuZGVmaW5lZCwge1xuICAgIHRyYW5zZm9ybTogbnVsbFRvVW5kZWZpbmVkTnVtZXJpYyxcbiAgfSk7XG4gIHJlYWRvbmx5IG1heCA9IGlucHV0PG51bWJlciB8IG51bGwsIE51bGxhYmxlPG51bWJlciB8IHN0cmluZz4+KHVuZGVmaW5lZCwge1xuICAgIHRyYW5zZm9ybTogbnVsbFRvVW5kZWZpbmVkTnVtZXJpYyxcbiAgfSk7XG4gIHJlYWRvbmx5IHN0ZXAgPSBpbnB1dDxudW1iZXIgfCBudWxsLCBOdWxsYWJsZTxudW1iZXIgfCBzdHJpbmc+Pih1bmRlZmluZWQsIHtcbiAgICB0cmFuc2Zvcm06IG51bGxUb1VuZGVmaW5lZE51bWVyaWMsXG4gIH0pO1xuICByZWFkb25seSBhdXRvY29tcGxldGUgPSBpbnB1dDxcbiAgICBSZHRBdXRvY29tcGxldGVPcHRpb25zIHwgdW5kZWZpbmVkLFxuICAgIE51bGxhYmxlPFJkdEF1dG9jb21wbGV0ZU9wdGlvbnM+XG4gID4odW5kZWZpbmVkLCB7XG4gICAgdHJhbnNmb3JtOiBudWxsVG9VbmRlZmluZWQsXG4gIH0pO1xuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBpc0VtcHR5KHZhbHVlOiBudW1iZXIgfCBudWxsKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHZhbHVlID09PSBudWxsO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHRvRXh0ZXJuYWxWYWx1ZShcbiAgICBpbnRlcm5hbFZhbHVlOiBudW1iZXIgfCBudWxsXG4gICk6IG51bWJlciB8IG51bGwge1xuICAgIGlmICh0eXBlb2YgaW50ZXJuYWxWYWx1ZSA9PT0gJ251bWJlcicpIHtcbiAgICAgIHJldHVybiBpbnRlcm5hbFZhbHVlO1xuICAgIH0gZWxzZSBpZiAoaW50ZXJuYWxWYWx1ZSAmJiB0eXBlb2YgaW50ZXJuYWxWYWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHJldHVybiBwYXJzZUZsb2F0KGludGVybmFsVmFsdWUpO1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxufVxuIl19","export class RdtSelectDatasource {\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LXNlbGVjdC1kYXRhc291cmNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vQG5ncmR0L2Zvcm1zL3NyYy9saWIvaW5wdXRzL3NlbGVjdC9kYXRhc291cmNlL3JkdC1zZWxlY3QtZGF0YXNvdXJjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxNQUFNLE9BQWdCLG1CQUFtQjtDQVN4QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFJkdFNlbGVjdFJlcXVlc3RQYXJhbXMgfSBmcm9tICcuLi91dGlscy9yZXF1ZXN0JztcbmltcG9ydCB7IFJkdFNlbGVjdFBhZ2UgfSBmcm9tICcuL3JkdC1zZWxlY3QtcGFnZSc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBSZHRTZWxlY3REYXRhc291cmNlPFRJdGVtLCBUSWQ+IHtcbiAgYWJzdHJhY3QgZ2V0RGF0YShcbiAgICBwYXJhbXM6IFJkdFNlbGVjdFJlcXVlc3RQYXJhbXNcbiAgKTogT2JzZXJ2YWJsZTxSZHRTZWxlY3RQYWdlPFRJdGVtPj47XG4gIGFic3RyYWN0IGdldExhYmVsKGl0ZW06IFRJdGVtKTogc3RyaW5nO1xuICBhYnN0cmFjdCBnZXRJZChpdGVtOiBUSXRlbSk6IFRJZDtcbiAgYWJzdHJhY3QgZ2V0SXRlbXNCeUlkcyhpZHM6IFRJZFtdKTogT2JzZXJ2YWJsZTxNYXA8VElkLCBUSXRlbT4+O1xuICBhYnN0cmFjdCByZWFkb25seSB0b3RhbENvdW50S25vd246IGJvb2xlYW47XG4gIGFic3RyYWN0IHJlYWRvbmx5IHF1ZXJ5UmVxdWlyZWQ6IGJvb2xlYW47XG59XG4iXX0=","import { of } from 'rxjs';\nimport { RdtSelectDatasource } from './rdt-select-datasource';\nexport class RdtOfflineSelectDatasource extends RdtSelectDatasource {\n data;\n totalCountKnown = true;\n queryRequired = true;\n preprocessedData;\n constructor(data) {\n super();\n this.data = data;\n this.preprocessedData = this.preprocessData(data);\n }\n getData(params) {\n const page = this.getPage(this.filterData(params.query), params.pageIndex, params.pageSize);\n return of(page);\n }\n getLabel(item) {\n return item.label;\n }\n getId(item) {\n return item.value;\n }\n getItemsByIds(ids) {\n const result = new Map();\n for (const id of ids) {\n const item = this.preprocessedData.find((item) => item.value === id);\n if (item) {\n result.set(id, item);\n }\n }\n return of(result);\n }\n preprocessLabel(label) {\n return label.trim().toLowerCase();\n }\n preprocessData(data) {\n return data.map((item) => ({\n value: item.value,\n label: this.preprocessLabel(item.label),\n }));\n }\n filterData(query) {\n if (!query) {\n return this.preprocessedData;\n }\n const prepQuery = this.preprocessLabel(query);\n if (!prepQuery) {\n return this.preprocessedData;\n }\n return this.preprocessedData.filter((item) => item.label.includes(prepQuery));\n }\n getPage(data, pageIndex, pageSize) {\n if (pageSize < 1) {\n throw new Error('Invalid page size');\n }\n if (pageIndex < 0) {\n throw new Error('Invalid page index');\n }\n if (pageIndex * pageSize > data.length) {\n return {\n data: [],\n totalCount: data.length,\n pageIndex: pageIndex,\n };\n }\n const start = pageIndex * pageSize;\n const end = start + pageSize;\n const items = data.slice(start, end);\n return {\n data: items,\n totalCount: data.length,\n pageIndex: pageIndex,\n };\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LW9mZmxpbmUtc2VsZWN0LWRhdGFzb3VyY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9AbmdyZHQvZm9ybXMvc3JjL2xpYi9pbnB1dHMvc2VsZWN0L2RhdGFzb3VyY2UvcmR0LW9mZmxpbmUtc2VsZWN0LWRhdGFzb3VyY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUd0QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUc5RCxNQUFNLE9BQU8sMEJBRVgsU0FBUSxtQkFBa0Q7SUFNckM7SUFMSCxlQUFlLEdBQUcsSUFBSSxDQUFDO0lBQ3ZCLGFBQWEsR0FBRyxJQUFJLENBQUM7SUFFcEIsZ0JBQWdCLENBQTBCO0lBRTdELFlBQXFCLElBQTZCO1FBQ2hELEtBQUssRUFBRSxDQUFDO1FBRFcsU0FBSSxHQUFKLElBQUksQ0FBeUI7UUFFaEQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVRLE9BQU8sQ0FDZCxNQUE4QjtRQUU5QixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUN2QixJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFDN0IsTUFBTSxDQUFDLFNBQVMsRUFDaEIsTUFBTSxDQUFDLFFBQVEsQ0FDaEIsQ0FBQztRQUNGLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xCLENBQUM7SUFDUSxRQUFRLENBQUMsSUFBMkI7UUFDM0MsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFDUSxLQUFLLENBQUMsSUFBMkI7UUFDeEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFFUSxhQUFhLENBQ3BCLEdBQWE7UUFFYixNQUFNLE1BQU0sR0FBRyxJQUFJLEdBQUcsRUFBaUMsQ0FBQztRQUN4RCxLQUFLLE1BQU0sRUFBRSxJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ3JCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEtBQUssRUFBRSxDQUFDLENBQUM7WUFDckUsSUFBSSxJQUFJLEVBQUUsQ0FBQztnQkFDVCxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUN2QixDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3BCLENBQUM7SUFFUyxlQUFlLENBQUMsS0FBYTtRQUNyQyxPQUFPLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRVMsY0FBYyxDQUN0QixJQUE2QjtRQUU3QixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDekIsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO1lBQ2pCLEtBQUssRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7U0FDeEMsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDO0lBRVMsVUFBVSxDQUFDLEtBQW9CO1FBQ3ZDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNYLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDO1FBQy9CLENBQUM7UUFDRCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzlDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNmLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDO1FBQy9CLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUMzQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FDL0IsQ0FBQztJQUNKLENBQUM7SUFFUyxPQUFPLENBQ2YsSUFBNkIsRUFDN0IsU0FBaUIsRUFDakIsUUFBZ0I7UUFFaEIsSUFBSSxRQUFRLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDakIsTUFBTSxJQUFJLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBQ3ZDLENBQUM7UUFDRCxJQUFJLFNBQVMsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNsQixNQUFNLElBQUksS0FBSyxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDeEMsQ0FBQztRQUNELElBQUksU0FBUyxHQUFHLFFBQVEsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDdkMsT0FBTztnQkFDTCxJQUFJLEVBQUUsRUFBRTtnQkFDUixVQUFVLEVBQUUsSUFBSSxDQUFDLE1BQU07Z0JBQ3ZCLFNBQVMsRUFBRSxTQUFTO2FBQ3JCLENBQUM7UUFDSixDQUFDO1FBQ0QsTUFBTSxLQUFLLEdBQUcsU0FBUyxHQUFHLFFBQVEsQ0FBQztRQUNuQyxNQUFNLEdBQUcsR0FBRyxLQUFLLEdBQUcsUUFBUSxDQUFDO1FBQzdCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ3JDLE9BQU87WUFDTCxJQUFJLEVBQUUsS0FBSztZQUNYLFVBQVUsRUFBRSxJQUFJLENBQUMsTUFBTTtZQUN2QixTQUFTLEVBQUUsU0FBUztTQUNyQixDQUFDO0lBQ0osQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFJkdExhYmVsVmFsdWUgfSBmcm9tICcuLi91dGlscy9sYWJlbC12YWx1ZS1pZCc7XG5pbXBvcnQgeyBSZHRTZWxlY3RSZXF1ZXN0UGFyYW1zIH0gZnJvbSAnLi4vdXRpbHMvcmVxdWVzdCc7XG5pbXBvcnQgeyBSZHRTZWxlY3REYXRhc291cmNlIH0gZnJvbSAnLi9yZHQtc2VsZWN0LWRhdGFzb3VyY2UnO1xuaW1wb3J0IHsgUmR0U2VsZWN0UGFnZSB9IGZyb20gJy4vcmR0LXNlbGVjdC1wYWdlJztcblxuZXhwb3J0IGNsYXNzIFJkdE9mZmxpbmVTZWxlY3REYXRhc291cmNlPFxuICBUVmFsdWUgZXh0ZW5kcyBzdHJpbmcgfCBudW1iZXJcbj4gZXh0ZW5kcyBSZHRTZWxlY3REYXRhc291cmNlPFJkdExhYmVsVmFsdWU8VFZhbHVlPiwgVFZhbHVlPiB7XG4gIG92ZXJyaWRlIHJlYWRvbmx5IHRvdGFsQ291bnRLbm93biA9IHRydWU7XG4gIG92ZXJyaWRlIHJlYWRvbmx5IHF1ZXJ5UmVxdWlyZWQgPSB0cnVlO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBwcmVwcm9jZXNzZWREYXRhOiBSZHRMYWJlbFZhbHVlPFRWYWx1ZT5bXTtcblxuICBjb25zdHJ1Y3RvcihyZWFkb25seSBkYXRhOiBSZHRMYWJlbFZhbHVlPFRWYWx1ZT5bXSkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5wcmVwcm9jZXNzZWREYXRhID0gdGhpcy5wcmVwcm9jZXNzRGF0YShkYXRhKTtcbiAgfVxuXG4gIG92ZXJyaWRlIGdldERhdGEoXG4gICAgcGFyYW1zOiBSZHRTZWxlY3RSZXF1ZXN0UGFyYW1zXG4gICk6IE9ic2VydmFibGU8UmR0U2VsZWN0UGFnZTxSZHRMYWJlbFZhbHVlPFRWYWx1ZT4+PiB7XG4gICAgY29uc3QgcGFnZSA9IHRoaXMuZ2V0UGFnZShcbiAgICAgIHRoaXMuZmlsdGVyRGF0YShwYXJhbXMucXVlcnkpLFxuICAgICAgcGFyYW1zLnBhZ2VJbmRleCxcbiAgICAgIHBhcmFtcy5wYWdlU2l6ZVxuICAgICk7XG4gICAgcmV0dXJuIG9mKHBhZ2UpO1xuICB9XG4gIG92ZXJyaWRlIGdldExhYmVsKGl0ZW06IFJkdExhYmVsVmFsdWU8VFZhbHVlPik6IHN0cmluZyB7XG4gICAgcmV0dXJuIGl0ZW0ubGFiZWw7XG4gIH1cbiAgb3ZlcnJpZGUgZ2V0SWQoaXRlbTogUmR0TGFiZWxWYWx1ZTxUVmFsdWU+KTogVFZhbHVlIHtcbiAgICByZXR1cm4gaXRlbS52YWx1ZTtcbiAgfVxuXG4gIG92ZXJyaWRlIGdldEl0ZW1zQnlJZHMoXG4gICAgaWRzOiBUVmFsdWVbXVxuICApOiBPYnNlcnZhYmxlPE1hcDxUVmFsdWUsIFJkdExhYmVsVmFsdWU8VFZhbHVlPj4+IHtcbiAgICBjb25zdCByZXN1bHQgPSBuZXcgTWFwPFRWYWx1ZSwgUmR0TGFiZWxWYWx1ZTxUVmFsdWU+PigpO1xuICAgIGZvciAoY29uc3QgaWQgb2YgaWRzKSB7XG4gICAgICBjb25zdCBpdGVtID0gdGhpcy5wcmVwcm9jZXNzZWREYXRhLmZpbmQoKGl0ZW0pID0+IGl0ZW0udmFsdWUgPT09IGlkKTtcbiAgICAgIGlmIChpdGVtKSB7XG4gICAgICAgIHJlc3VsdC5zZXQoaWQsIGl0ZW0pO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gb2YocmVzdWx0KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBwcmVwcm9jZXNzTGFiZWwobGFiZWw6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGxhYmVsLnRyaW0oKS50b0xvd2VyQ2FzZSgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHByZXByb2Nlc3NEYXRhKFxuICAgIGRhdGE6IFJkdExhYmVsVmFsdWU8VFZhbHVlPltdXG4gICk6IFJkdExhYmVsVmFsdWU8VFZhbHVlPltdIHtcbiAgICByZXR1cm4gZGF0YS5tYXAoKGl0ZW0pID0+ICh7XG4gICAgICB2YWx1ZTogaXRlbS52YWx1ZSxcbiAgICAgIGxhYmVsOiB0aGlzLnByZXByb2Nlc3NMYWJlbChpdGVtLmxhYmVsKSxcbiAgICB9KSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZmlsdGVyRGF0YShxdWVyeTogc3RyaW5nIHwgbnVsbCk6IFJkdExhYmVsVmFsdWU8VFZhbHVlPltdIHtcbiAgICBpZiAoIXF1ZXJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5wcmVwcm9jZXNzZWREYXRhO1xuICAgIH1cbiAgICBjb25zdCBwcmVwUXVlcnkgPSB0aGlzLnByZXByb2Nlc3NMYWJlbChxdWVyeSk7XG4gICAgaWYgKCFwcmVwUXVlcnkpIHtcbiAgICAgIHJldHVybiB0aGlzLnByZXByb2Nlc3NlZERhdGE7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnByZXByb2Nlc3NlZERhdGEuZmlsdGVyKChpdGVtKSA9PlxuICAgICAgaXRlbS5sYWJlbC5pbmNsdWRlcyhwcmVwUXVlcnkpXG4gICAgKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRQYWdlKFxuICAgIGRhdGE6IFJkdExhYmVsVmFsdWU8VFZhbHVlPltdLFxuICAgIHBhZ2VJbmRleDogbnVtYmVyLFxuICAgIHBhZ2VTaXplOiBudW1iZXJcbiAgKTogUmR0U2VsZWN0UGFnZTxSZHRMYWJlbFZhbHVlPFRWYWx1ZT4+IHtcbiAgICBpZiAocGFnZVNpemUgPCAxKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgcGFnZSBzaXplJyk7XG4gICAgfVxuICAgIGlmIChwYWdlSW5kZXggPCAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgcGFnZSBpbmRleCcpO1xuICAgIH1cbiAgICBpZiAocGFnZUluZGV4ICogcGFnZVNpemUgPiBkYXRhLmxlbmd0aCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgZGF0YTogW10sXG4gICAgICAgIHRvdGFsQ291bnQ6IGRhdGEubGVuZ3RoLFxuICAgICAgICBwYWdlSW5kZXg6IHBhZ2VJbmRleCxcbiAgICAgIH07XG4gICAgfVxuICAgIGNvbnN0IHN0YXJ0ID0gcGFnZUluZGV4ICogcGFnZVNpemU7XG4gICAgY29uc3QgZW5kID0gc3RhcnQgKyBwYWdlU2l6ZTtcbiAgICBjb25zdCBpdGVtcyA9IGRhdGEuc2xpY2Uoc3RhcnQsIGVuZCk7XG4gICAgcmV0dXJuIHtcbiAgICAgIGRhdGE6IGl0ZW1zLFxuICAgICAgdG90YWxDb3VudDogZGF0YS5sZW5ndGgsXG4gICAgICBwYWdlSW5kZXg6IHBhZ2VJbmRleCxcbiAgICB9O1xuICB9XG59XG4iXX0=","export const rdtSelectInitialState = {\n query: null,\n nextPageIndex: 0,\n pageSize: 20,\n totalCount: 0,\n totalCountKnown: false,\n options: [],\n datasource: null,\n selectedMap: new Map(),\n fetchError: null,\n missingValuePlaceholder: 'Načítání...',\n _fetchRequest: null,\n _fetchMissingRequest: null,\n _missingSelected: [],\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LXNlbGVjdC1zdGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL0BuZ3JkdC9mb3Jtcy9zcmMvbGliL2lucHV0cy9zZWxlY3Qvc3RhdGUvcmR0LXNlbGVjdC1zdGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF1QkEsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQTZCO0lBQzdELEtBQUssRUFBRSxJQUFJO0lBQ1gsYUFBYSxFQUFFLENBQUM7SUFDaEIsUUFBUSxFQUFFLEVBQUU7SUFDWixVQUFVLEVBQUUsQ0FBQztJQUNiLGVBQWUsRUFBRSxLQUFLO0lBQ3RCLE9BQU8sRUFBRSxFQUFFO0lBQ1gsVUFBVSxFQUFFLElBQUk7SUFDaEIsV0FBVyxFQUFFLElBQUksR0FBRyxFQUFFO0lBQ3RCLFVBQVUsRUFBRSxJQUFJO0lBQ2hCLHVCQUF1QixFQUFFLGFBQWE7SUFDdEMsYUFBYSxFQUFFLElBQUk7SUFDbkIsb0JBQW9CLEVBQUUsSUFBSTtJQUMxQixnQkFBZ0IsRUFBRSxFQUFFO0NBQ3JCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZHRTZWxlY3REYXRhc291cmNlIH0gZnJvbSAnLi4vZGF0YXNvdXJjZS9yZHQtc2VsZWN0LWRhdGFzb3VyY2UnO1xuaW1wb3J0IHsgUmR0TGFiZWxWYWx1ZUlkIH0gZnJvbSAnLi4vdXRpbHMvbGFiZWwtdmFsdWUtaWQnO1xuaW1wb3J0IHtcbiAgUmR0U2VsZWN0RmV0Y2hNaXNzaW5nUmVxdWVzdCxcbiAgUmR0U2VsZWN0RmV0Y2hSZXF1ZXN0LFxufSBmcm9tICcuLi91dGlscy9yZXF1ZXN0JztcblxuZXhwb3J0IGludGVyZmFjZSBSZHRTZWxlY3RTdGF0ZTxUSXRlbSwgVElkPiB7XG4gIHF1ZXJ5OiBzdHJpbmcgfCBudWxsO1xuICBuZXh0UGFnZUluZGV4OiBudW1iZXIgfCBudWxsO1xuICBwYWdlU2l6ZTogbnVtYmVyO1xuICB0b3RhbENvdW50OiBudW1iZXI7XG4gIHRvdGFsQ291bnRLbm93bjogYm9vbGVhbjtcbiAgb3B0aW9uczogUmR0TGFiZWxWYWx1ZUlkPFRJdGVtLCBUSWQ+W107XG4gIGRhdGFzb3VyY2U6IFJkdFNlbGVjdERhdGFzb3VyY2U8VEl0ZW0sIFRJZD4gfCBudWxsO1xuICBzZWxlY3RlZE1hcDogTWFwPFRJZCwgUmR0TGFiZWxWYWx1ZUlkPFRJdGVtLCBUSWQ+PjtcbiAgZmV0Y2hFcnJvcjogYW55IHwgbnVsbDtcbiAgbWlzc2luZ1ZhbHVlUGxhY2Vob2xkZXI6IHN0cmluZztcbiAgX2ZldGNoUmVxdWVzdDogUmR0U2VsZWN0RmV0Y2hSZXF1ZXN0IHwgbnVsbDtcbiAgX2ZldGNoTWlzc2luZ1JlcXVlc3Q6IFJkdFNlbGVjdEZldGNoTWlzc2luZ1JlcXVlc3Q8VElkPiB8IG51bGw7XG4gIF9taXNzaW5nU2VsZWN0ZWQ6IFRJZFtdO1xufVxuXG5leHBvcnQgY29uc3QgcmR0U2VsZWN0SW5pdGlhbFN0YXRlOiBSZHRTZWxlY3RTdGF0ZTxhbnksIGFueT4gPSB7XG4gIHF1ZXJ5OiBudWxsLFxuICBuZXh0UGFnZUluZGV4OiAwLFxuICBwYWdlU2l6ZTogMjAsXG4gIHRvdGFsQ291bnQ6IDAsXG4gIHRvdGFsQ291bnRLbm93bjogZmFsc2UsXG4gIG9wdGlvbnM6IFtdLFxuICBkYXRhc291cmNlOiBudWxsLFxuICBzZWxlY3RlZE1hcDogbmV3IE1hcCgpLFxuICBmZXRjaEVycm9yOiBudWxsLFxuICBtaXNzaW5nVmFsdWVQbGFjZWhvbGRlcjogJ05hxI3DrXTDoW7DrS4uLicsXG4gIF9mZXRjaFJlcXVlc3Q6IG51bGwsXG4gIF9mZXRjaE1pc3NpbmdSZXF1ZXN0OiBudWxsLFxuICBfbWlzc2luZ1NlbGVjdGVkOiBbXSxcbn07XG4iXX0=","export function compareSelectRequestParams(a, b) {\n return (a.query === b.query &&\n a.pageIndex === b.pageIndex &&\n a.pageSize === b.pageSize);\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL0BuZ3JkdC9mb3Jtcy9zcmMvbGliL2lucHV0cy9zZWxlY3QvdXRpbHMvcmVxdWVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFrQkEsTUFBTSxVQUFVLDBCQUEwQixDQUN4QyxDQUF5QixFQUN6QixDQUF5QjtJQUV6QixPQUFPLENBQ0wsQ0FBQyxDQUFDLEtBQUssS0FBSyxDQUFDLENBQUMsS0FBSztRQUNuQixDQUFDLENBQUMsU0FBUyxLQUFLLENBQUMsQ0FBQyxTQUFTO1FBQzNCLENBQUMsQ0FBQyxRQUFRLEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FDMUIsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuZXhwb3J0IGludGVyZmFjZSBSZHRTZWxlY3RSZXF1ZXN0UGFyYW1zIHtcbiAgcXVlcnk6IHN0cmluZyB8IG51bGw7XG4gIHBhZ2VJbmRleDogbnVtYmVyO1xuICBwYWdlU2l6ZTogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJkdFNlbGVjdEZldGNoUmVxdWVzdCB7XG4gIHBhcmFtczogUmR0U2VsZWN0UmVxdWVzdFBhcmFtcztcbiAgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmR0U2VsZWN0RmV0Y2hNaXNzaW5nUmVxdWVzdDxUSWQ+IHtcbiAgaWRzOiBUSWRbXTtcbiAgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjb21wYXJlU2VsZWN0UmVxdWVzdFBhcmFtcyhcbiAgYTogUmR0U2VsZWN0UmVxdWVzdFBhcmFtcyxcbiAgYjogUmR0U2VsZWN0UmVxdWVzdFBhcmFtc1xuKTogYm9vbGVhbiB7XG4gIHJldHVybiAoXG4gICAgYS5xdWVyeSA9PT0gYi5xdWVyeSAmJlxuICAgIGEucGFnZUluZGV4ID09PSBiLnBhZ2VJbmRleCAmJlxuICAgIGEucGFnZVNpemUgPT09IGIucGFnZVNpemVcbiAgKTtcbn1cbiJdfQ==","import { computed, untracked } from '@angular/core';\nimport { patchState, signalStore, withComputed, withHooks, withMethods, withState, } from '@ngrx/signals';\nimport { compareSelectRequestParams, } from '../utils/request';\nimport { rdtSelectInitialState } from './rdt-select-state';\nfunction getRdtSelectStore(initialState = rdtSelectInitialState) {\n return signalStore(withState(initialState), withHooks({\n onDestroy(store) {\n store._fetchMissingRequest()?.subscription.unsubscribe();\n store._fetchRequest()?.subscription.unsubscribe();\n },\n }), withComputed((state) => ({\n hasMore: computed(() => state.nextPageIndex !== null),\n selectedItems: computed(() => {\n return Array.from(state.selectedMap().values());\n }),\n loadingOptions: computed(() => state._fetchRequest() !== null),\n loadingMissing: computed(() => state._fetchMissingRequest() !== null),\n loading: computed(() => state._fetchRequest() !== null ||\n state._fetchMissingRequest() !== null),\n // Shows selected + others while query is empty\n // Shows only query results while query has value\n visibleOptions: computed(() => {\n const items = state.options();\n const query = state.query();\n const selectedMap = state.selectedMap();\n const missing = state._missingSelected();\n if (query || (selectedMap.size === 0 && missing.length === 0)) {\n return items.map((it) => ({\n ...it,\n selected: false,\n }));\n }\n const selected = Array.from(selectedMap.values()).map((it) => ({ ...it, selected: true }));\n const missingPlaceholder = state.missingValuePlaceholder();\n const placeholders = missing.map((id) => ({\n id,\n label: missingPlaceholder.replace('{id}', String(id)),\n value: null,\n selected: true,\n }));\n placeholders.forEach((pl) => selected.push(pl));\n items.forEach((item) => {\n if (!selectedMap.has(item.id)) {\n selected.push({ ...item, selected: false });\n }\n });\n return selected;\n }),\n })), withMethods((store) => ({\n fetch() {\n const datasource = untracked(store.datasource);\n const index = untracked(store.nextPageIndex);\n const query = untracked(store.query);\n const pageSize = untracked(store.pageSize);\n if (!datasource || index === null) {\n return;\n }\n const params = {\n query: query,\n pageIndex: index,\n pageSize: pageSize,\n };\n const currentRequest = untracked(store._fetchRequest);\n if (currentRequest) {\n if (compareSelectRequestParams(currentRequest.params, params)) {\n return;\n }\n else {\n currentRequest.subscription.unsubscribe();\n }\n }\n const observer = this._getFetchObserver(params);\n const subscription = datasource.getData(params).subscribe(observer);\n // Offline datasource using `of()` emits value synchronously\n if (!subscription.closed) {\n patchState(store, {\n _fetchRequest: { subscription, params: params },\n });\n }\n },\n _getFetchObserver(requestParams) {\n return {\n next: (page) => this._onFetchSuccess(page, requestParams),\n error: (error) => this._onFetchError(error),\n complete: () => this._onFetchComplete(),\n };\n },\n _onFetchSuccess(page, requestParams) {\n let nextPageIndex = page.pageIndex + 1;\n if (page.totalCount === null) {\n if (page.data.length < requestParams.pageSize) {\n nextPageIndex = null;\n }\n }\n else if (requestParams.pageIndex * requestParams.pageSize + page.data.length >=\n page.totalCount) {\n nextPageIndex = null;\n }\n const options = [\n ...untracked(store.options),\n ...this._getLabelValueIds(page.data),\n ];\n patchState(store, {\n totalCount: page.totalCount ??\n Math.max(untracked(store.totalCount), page.pageIndex * requestParams.pageSize + page.data.length),\n nextPageIndex,\n totalCountKnown: page.totalCount !== null ||\n page.data.length < requestParams.pageSize,\n options,\n _fetchRequest: null,\n });\n this._loadMissingSelected();\n },\n _onFetchError(error) {\n patchState(store, {\n fetchError: getRdtSelectError(error),\n _fetchRequest: null,\n });\n },\n _onFetchComplete() {\n patchState(store, {\n _fetchRequest: null,\n });\n },\n setDatasource(datasource) {\n untracked(store._fetchRequest)?.subscription.unsubscribe();\n patchState(store, {\n datasource,\n _fetchRequest: null,\n fetchError: null,\n totalCountKnown: datasource.totalCountKnown,\n nextPageIndex: 0,\n totalCount: 0,\n options: [],\n });\n if (!datasource.queryRequired) {\n this.fetch();\n }\n else {\n this._loadMissingSelected();\n }\n },\n setQuery(query) {\n const datasource = untracked(store.datasource);\n if (query !== untracked(store.query)) {\n this.reset();\n patchState(store, { query });\n if (query || !datasource?.queryRequired) {\n this.fetch();\n }\n }\n },\n reset() {\n patchState(store, {\n query: null,\n nextPageIndex: 0,\n options: [],\n totalCount: 0,\n totalCountKnown: untracked(store.datasource)?.totalCountKnown ?? true,\n });\n },\n resetTotalCountKnown() {\n patchState(store, {\n totalCountKnown: untracked(store.datasource)?.totalCountKnown ?? true,\n });\n },\n setSelected(ids) {\n patchState(store, {\n _missingSelected: ids,\n selectedMap: new Map(),\n });\n this._loadMissingSelected();\n },\n select(ids) {\n const oldMissing = untracked(store._missingSelected);\n const notInMissing = ids.filter((id) => !oldMissing.includes(id));\n if (notInMissing.length > 0) {\n patchState(store, {\n _missingSelected: oldMissing.concat(notInMissing),\n });\n this._loadMissingSelected();\n }\n },\n unselectAll() {\n const fetchMissingReq = untracked(store._fetchMissingRequest);\n if (fetchMissingReq) {\n fetchMissingReq.subscription.unsubscribe();\n }\n patchState(store, {\n _missingSelected: [],\n selectedMap: new Map(),\n _fetchMissingRequest: null,\n });\n },\n _setAndGetMissing() {\n const allMissing = untracked(store._missingSelected);\n const items = untracked(store.options);\n const selectedMap = new Map(untracked(store.selectedMap));\n const newMissing = [];\n let selectedChanged = false;\n for (const id of allMissing) {\n const item = items.find((it) => it.id === id);\n if (item) {\n selectedMap.set(id, item);\n selectedChanged = true;\n }\n else {\n newMissing.push(id);\n }\n }\n if (selectedChanged) {\n patchState(store, { selectedMap });\n }\n if (newMissing.length === 0) {\n this._cancelFetchMissingIfNeeded();\n }\n patchState(store, { _missingSelected: newMissing });\n return newMissing;\n },\n _loadMissingSelected() {\n const reallyMissing = this._setAndGetMissing();\n if (!untracked(store.loading) && reallyMissing.length > 0) {\n this._fetchMissing(reallyMissing);\n }\n },\n _cancelFetchMissingIfNeeded() {\n const fetchMissingReq = untracked(store._fetchMissingRequest);\n const items = untracked(store.options);\n if (fetchMissingReq?.ids.every((id) => items.some((it) => it.id === id))) {\n fetchMissingReq.subscription.unsubscribe();\n patchState(store, {\n _fetchMissingRequest: null,\n _missingSelected: [],\n });\n }\n },\n _fetchMissing(ids) {\n const datasource = untracked(store.datasource);\n if (!datasource || ids.length === 0) {\n return;\n }\n const sub = datasource.getItemsByIds(ids).subscribe((map) => {\n const newMissing = [];\n const newSelected = new Map(untracked(store.selectedMap));\n for (const id of untracked(store._missingSelected)) {\n if (map.has(id)) {\n const value = map.get(id);\n const label = datasource.getLabel(value);\n newSelected.set(id, { label, value, id });\n }\n else {\n newMissing.push(id);\n }\n }\n patchState(store, {\n _fetchMissingRequest: null,\n _missingSelected: newMissing,\n selectedMap: newSelected,\n });\n this._loadMissingSelected();\n });\n if (!sub.closed) {\n patchState(store, {\n _fetchMissingRequest: { ids, subscription: sub },\n });\n }\n },\n selectSingle(id) {\n this.setSelected([id]);\n },\n toggle(id) {\n const oldMap = untracked(store.selectedMap);\n const datasource = untracked(store.datasource);\n if (!datasource) {\n throw new Error('Datasource is undefined');\n }\n if (oldMap.has(id)) {\n const newMap = new Map(oldMap);\n newMap.delete(id);\n patchState(store, { selectedMap: newMap });\n }\n else {\n const item = untracked(store.options).find((it) => it.id === id);\n if (!item) {\n this.select([id]);\n }\n else {\n const newMap = new Map(oldMap);\n newMap.set(id, item);\n patchState(store, { selectedMap: newMap });\n }\n }\n },\n cancelFetch() {\n untracked(store._fetchRequest)?.subscription.unsubscribe();\n patchState(store, {\n _fetchRequest: null,\n fetchError: null,\n });\n },\n isSelected(item) {\n const datasource = untracked(store.datasource);\n if (!datasource) {\n return false;\n }\n const id = datasource.getId(item);\n return untracked(store.selectedMap).has(id);\n },\n setPageSize(size) {\n patchState(store, { pageSize: size });\n },\n _getLabelValueIds(items) {\n const datasource = untracked(store.datasource);\n if (!datasource) {\n throw new Error('Datasource not set!');\n }\n return items.map((item) => ({\n label: datasource.getLabel(item),\n value: item,\n id: datasource.getId(item),\n }));\n },\n })));\n}\nexport const RdtSelectStore = getRdtSelectStore();\nfunction getRdtSelectError(error) {\n if (typeof error === 'string') {\n return error;\n }\n else if (error instanceof Error) {\n return error.message;\n }\n else if (error && typeof error === 'object' && 'message' in error) {\n return error.message;\n }\n return 'Nastala chyba.';\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LXNlbGVjdC1zdG9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL0BuZ3JkdC9mb3Jtcy9zcmMvbGliL2lucHV0cy9zZWxlY3Qvc3RhdGUvcmR0LXNlbGVjdC1zdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLEVBQ0wsVUFBVSxFQUNWLFdBQVcsRUFDWCxZQUFZLEVBQ1osU0FBUyxFQUNULFdBQVcsRUFDWCxTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFRdkIsT0FBTyxFQUNMLDBCQUEwQixHQUUzQixNQUFNLGtCQUFrQixDQUFDO0FBQzFCLE9BQU8sRUFBRSxxQkFBcUIsRUFBa0IsTUFBTSxvQkFBb0IsQ0FBQztBQUUzRSxTQUFTLGlCQUFpQixDQUFTLFlBQVksR0FBRyxxQkFBcUI7SUFDckUsT0FBTyxXQUFXLENBQ2hCLFNBQVMsQ0FBQyxZQUFzQyxDQUFDLEVBQ2pELFNBQVMsQ0FBQztRQUNSLFNBQVMsQ0FBQyxLQUFLO1lBQ2IsS0FBSyxDQUFDLG9CQUFvQixFQUFFLEVBQUUsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3pELEtBQUssQ0FBQyxhQUFhLEVBQUUsRUFBRSxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEQsQ0FBQztLQUNGLENBQUMsRUFDRixZQUFZLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDdkIsT0FBTyxFQUFFLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsYUFBYSxLQUFLLElBQUksQ0FBQztRQUNyRCxhQUFhLEVBQUUsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUMzQixPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDbEQs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QUFLLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUN4QyxDQUFDO1FBQ0QsaUJBQWlCLENBQUMsS0FBVTtZQUMxQixNQUFNLFVBQVUsR0FBRyxTQUFTLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQy9DLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDaEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1lBQ3pDLENBQUM7WUFDRCxPQUFPLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQzFCLEtBQUssRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztnQkFDaEMsS0FBSyxFQUFFLElBQUk7Z0JBQ1gsRUFBRSxFQUFFLFVBQVUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDO2FBQzNCLENBQUMsQ0FBQyxDQUFDO1FBQ04sQ0FBQztLQUNGLENBQUMsQ0FBQyxDQUNKLENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLGlCQUFpQixFQUFZLENBQUM7QUFLNUQsU0FBUyxpQkFBaUIsQ0FBQyxLQUFVO0lBQ25DLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDOUIsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO1NBQU0sSUFBSSxLQUFLLFlBQVksS0FBSyxFQUFFLENBQUM7UUFDbEMsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDO0lBQ3ZCLENBQUM7U0FBTSxJQUFJLEtBQUssSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLElBQUksU0FBUyxJQUFJLEtBQUssRUFBRSxDQUFDO1FBQ3BFLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQztJQUN2QixDQUFDO0lBQ0QsT0FBTyxnQkFBZ0IsQ0FBQztBQUMxQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29tcHV0ZWQsIHVudHJhY2tlZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgcGF0Y2hTdGF0ZSxcbiAgc2lnbmFsU3RvcmUsXG4gIHdpdGhDb21wdXRlZCxcbiAgd2l0aEhvb2tzLFxuICB3aXRoTWV0aG9kcyxcbiAgd2l0aFN0YXRlLFxufSBmcm9tICdAbmdyeC9zaWduYWxzJztcbmltcG9ydCB7IE9ic2VydmVyIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBSZHRTZWxlY3REYXRhc291cmNlIH0gZnJvbSAnLi4vZGF0YXNvdXJjZS9yZHQtc2VsZWN0LWRhdGFzb3VyY2UnO1xuaW1wb3J0IHsgUmR0U2VsZWN0UGFnZSB9IGZyb20gJy4uL2RhdGFzb3VyY2UvcmR0LXNlbGVjdC1wYWdlJztcbmltcG9ydCB7XG4gIFJkdExhYmVsVmFsdWVJZCxcbiAgUmR0UmVuZGVyZWRTZWxlY3RPcHRpb24sXG59IGZyb20gJy4uL3V0aWxzL2xhYmVsLXZhbHVlLWlkJztcbmltcG9ydCB7XG4gIGNvbXBhcmVTZWxlY3RSZXF1ZXN0UGFyYW1zLFxuICBSZHRTZWxlY3RSZXF1ZXN0UGFyYW1zLFxufSBmcm9tICcuLi91dGlscy9yZXF1ZXN0JztcbmltcG9ydCB7IHJkdFNlbGVjdEluaXRpYWxTdGF0ZSwgUmR0U2VsZWN0U3RhdGUgfSBmcm9tICcuL3JkdC1zZWxlY3Qtc3RhdGUnO1xuXG5mdW5jdGlvbiBnZXRSZHRTZWxlY3RTdG9yZTxULCBUSWQ+KGluaXRpYWxTdGF0ZSA9IHJkdFNlbGVjdEluaXRpYWxTdGF0ZSkge1xuICByZXR1cm4gc2lnbmFsU3RvcmUoXG4gICAgd2l0aFN0YXRlKGluaXRpYWxTdGF0ZSBhcyBSZHRTZWxlY3RTdGF0ZTxULCBUSWQ+KSxcbiAgICB3aXRoSG9va3Moe1xuICAgICAgb25EZXN0cm95KHN0b3JlKSB7XG4gICAgICAgIHN0b3JlLl9mZXRjaE1pc3NpbmdSZXF1ZXN0KCk/LnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICBzdG9yZS5fZmV0Y2hSZXF1ZXN0KCk/LnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgfSxcbiAgICB9KSxcbiAgICB3aXRoQ29tcHV0ZWQoKHN0YXRlKSA9PiAoe1xuICAgICAgaGFzTW9yZTogY29tcHV0ZWQoKCkgPT4gc3RhdGUubmV4dFBhZ2VJbmRleCAhPT0gbnVsbCksXG4gICAgICBzZWxlY3RlZEl0ZW1zOiBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIHJldHVybiBBcnJheS5mcm9tKHN0YXRlLnNlbGVjdGVkTWFwKCkudmFsdWVzKCkpO1xuICAgICAgfSksXG4gICAgICBsb2FkaW5nT3B0aW9uczogY29tcHV0ZWQoKCkgPT4gc3RhdGUuX2ZldGNoUmVxdWVzdCgpICE9PSBudWxsKSxcbiAgICAgIGxvYWRpbmdNaXNzaW5nOiBjb21wdXRlZCgoKSA9PiBzdGF0ZS5fZmV0Y2hNaXNzaW5nUmVxdWVzdCgpICE9PSBudWxsKSxcbiAgICAgIGxvYWRpbmc6IGNvbXB1dGVkKFxuICAgICAgICAoKSA9PlxuICAgICAgICAgIHN0YXRlLl9mZXRjaFJlcXVlc3QoKSAhPT0gbnVsbCB8fFxuICAgICAgICAgIHN0YXRlLl9mZXRjaE1pc3NpbmdSZXF1ZXN0KCkgIT09IG51bGxcbiAgICAgICksXG4gICAgICAvLyBTaG93cyBzZWxlY3RlZCArIG90aGVycyB3aGlsZSBxdWVyeSBpcyBlbXB0eVxuICAgICAgLy8gU2hvd3Mgb25seSBxdWVyeSByZXN1bHRzIHdoaWxlIHF1ZXJ5IGhhcyB2YWx1ZVxuICAgICAgdmlzaWJsZU9wdGlvbnM6IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgY29uc3QgaXRlbXMgPSBzdGF0ZS5vcHRpb25zKCk7XG4gICAgICAgIGNvbnN0IHF1ZXJ5ID0gc3RhdGUucXVlcnkoKTtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWRNYXAgPSBzdGF0ZS5zZWxlY3RlZE1hcCgpO1xuICAgICAgICBjb25zdCBtaXNzaW5nID0gc3RhdGUuX21pc3NpbmdTZWxlY3RlZCgpO1xuICAgICAgICBpZiAocXVlcnkgfHwgKHNlbGVjdGVkTWFwLnNpemUgPT09IDAgJiYgbWlzc2luZy5sZW5ndGggPT09IDApKSB7XG4gICAgICAgICAgcmV0dXJuIGl0ZW1zLm1hcCgoaXQpID0+ICh7XG4gICAgICAgICAgICAuLi5pdCxcbiAgICAgICAgICAgIHNlbGVjdGVkOiBmYWxzZSxcbiAgICAgICAgICB9KSkgYXMgUmR0UmVuZGVyZWRTZWxlY3RPcHRpb248VCwgVElkPltdO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHNlbGVjdGVkOiBSZHRSZW5kZXJlZFNlbGVjdE9wdGlvbjxULCBUSWQ+W10gPSBBcnJheS5mcm9tKFxuICAgICAgICAgIHNlbGVjdGVkTWFwLnZhbHVlcygpXG4gICAgICAgICkubWFwKChpdCkgPT4gKHsgLi4uaXQsIHNlbGVjdGVkOiB0cnVlIH0pKTtcbiAgICAgICAgY29uc3QgbWlzc2luZ1BsYWNlaG9sZGVyID0gc3RhdGUubWlzc2luZ1ZhbHVlUGxhY2Vob2xkZXIoKTtcbiAgICAgICAgY29uc3QgcGxhY2Vob2xkZXJzID0gbWlzc2luZy5tYXAoKGlkKSA9PiAoe1xuICAgICAgICAgIGlkLFxuICAgICAgICAgIGxhYmVsOiBtaXNzaW5nUGxhY2Vob2xkZXIucmVwbGFjZSgne2lkfScsIFN0cmluZyhpZCkpLFxuICAgICAgICAgIHZhbHVlOiBudWxsLFxuICAgICAgICAgIHNlbGVjdGVkOiB0cnVlLFxuICAgICAgICB9KSk7XG4gICAgICAgIHBsYWNlaG9sZGVycy5mb3JFYWNoKChwbCkgPT4gc2VsZWN0ZWQucHVzaChwbCkpO1xuXG4gICAgICAgIGl0ZW1zLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgICAgICBpZiAoIXNlbGVjdGVkTWFwLmhhcyhpdGVtLmlkKSkge1xuICAgICAgICAgICAgc2VsZWN0ZWQucHVzaCh7IC4uLml0ZW0sIHNlbGVjdGVkOiBmYWxzZSB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gc2VsZWN0ZWQ7XG4gICAgICB9KSxcbiAgICB9KSksXG4gICAgd2l0aE1ldGhvZHMoKHN0b3JlKSA9PiAoe1xuICAgICAgZmV0Y2goKSB7XG4gICAgICAgIGNvbnN0IGRhdGFzb3VyY2UgPSB1bnRyYWNrZWQoc3RvcmUuZGF0YXNvdXJjZSk7XG4gICAgICAgIGNvbnN0IGluZGV4ID0gdW50cmFja2VkKHN0b3JlLm5leHRQYWdlSW5kZXgpO1xuICAgICAgICBjb25zdCBxdWVyeSA9IHVudHJhY2tlZChzdG9yZS5xdWVyeSk7XG4gICAgICAgIGNvbnN0IHBhZ2VTaXplID0gdW50cmFja2VkKHN0b3JlLnBhZ2VTaXplKTtcbiAgICAgICAgaWYgKCFkYXRhc291cmNlIHx8IGluZGV4ID09PSBudWxsKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHBhcmFtczogUmR0U2VsZWN0UmVxdWVzdFBhcmFtcyA9IHtcbiAgICAgICAgICBxdWVyeTogcXVlcnksXG4gICAgICAgICAgcGFnZUluZGV4OiBpbmRleCxcbiAgICAgICAgICBwYWdlU2l6ZTogcGFnZVNpemUsXG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IGN1cnJlbnRSZXF1ZXN0ID0gdW50cmFja2VkKHN0b3JlLl9mZXRjaFJlcXVlc3QpO1xuICAgICAgICBpZiAoY3VycmVudFJlcXVlc3QpIHtcbiAgICAgICAgICBpZiAoY29tcGFyZVNlbGVjdFJlcXVlc3RQYXJhbXMoY3VycmVudFJlcXVlc3QucGFyYW1zLCBwYXJhbXMpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGN1cnJlbnRSZXF1ZXN0LnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBjb25zdCBvYnNlcnZlciA9IHRoaXMuX2dldEZldGNoT2JzZXJ2ZXIocGFyYW1zKTtcbiAgICAgICAgY29uc3Qgc3Vic2NyaXB0aW9uID0gZGF0YXNvdXJjZS5nZXREYXRhKHBhcmFtcykuc3Vic2NyaWJlKG9ic2VydmVyKTtcbiAgICAgICAgLy8gT2ZmbGluZSBkYXRhc291cmNlIHVzaW5nIGBvZigpYCBlbWl0cyB2YWx1ZSBzeW5jaHJvbm91c2x5XG4gICAgICAgIGlmICghc3Vic2NyaXB0aW9uLmNsb3NlZCkge1xuICAgICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHtcbiAgICAgICAgICAgIF9mZXRjaFJlcXVlc3Q6IHsgc3Vic2NyaXB0aW9uLCBwYXJhbXM6IHBhcmFtcyB9LFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgX2dldEZldGNoT2JzZXJ2ZXIoXG4gICAgICAgIHJlcXVlc3RQYXJhbXM6IFJkdFNlbGVjdFJlcXVlc3RQYXJhbXNcbiAgICAgICk6IE9ic2VydmVyPFJkdFNlbGVjdFBhZ2U8VD4+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBuZXh0OiAocGFnZSkgPT4gdGhpcy5fb25GZXRjaFN1Y2Nlc3MocGFnZSwgcmVxdWVzdFBhcmFtcyksXG4gICAgICAgICAgZXJyb3I6IChlcnJvcikgPT4gdGhpcy5fb25GZXRjaEVycm9yKGVycm9yKSxcbiAgICAgICAgICBjb21wbGV0ZTogKCkgPT4gdGhpcy5fb25GZXRjaENvbXBsZXRlKCksXG4gICAgICAgIH07XG4gICAgICB9LFxuICAgICAgX29uRmV0Y2hTdWNjZXNzKFxuICAgICAgICBwYWdlOiBSZHRTZWxlY3RQYWdlPFQ+LFxuICAgICAgICByZXF1ZXN0UGFyYW1zOiBSZHRTZWxlY3RSZXF1ZXN0UGFyYW1zXG4gICAgICApIHtcbiAgICAgICAgbGV0IG5leHRQYWdlSW5kZXg6IG51bWJlciB8IG51bGwgPSBwYWdlLnBhZ2VJbmRleCArIDE7XG4gICAgICAgIGlmIChwYWdlLnRvdGFsQ291bnQgPT09IG51bGwpIHtcbiAgICAgICAgICBpZiAocGFnZS5kYXRhLmxlbmd0aCA8IHJlcXVlc3RQYXJhbXMucGFnZVNpemUpIHtcbiAgICAgICAgICAgIG5leHRQYWdlSW5kZXggPSBudWxsO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgICByZXF1ZXN0UGFyYW1zLnBhZ2VJbmRleCAqIHJlcXVlc3RQYXJhbXMucGFnZVNpemUgKyBwYWdlLmRhdGEubGVuZ3RoID49XG4gICAgICAgICAgcGFnZS50b3RhbENvdW50XG4gICAgICAgICkge1xuICAgICAgICAgIG5leHRQYWdlSW5kZXggPSBudWxsO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG9wdGlvbnMgPSBbXG4gICAgICAgICAgLi4udW50cmFja2VkKHN0b3JlLm9wdGlvbnMpLFxuICAgICAgICAgIC4uLnRoaXMuX2dldExhYmVsVmFsdWVJZHMocGFnZS5kYXRhKSxcbiAgICAgICAgXTtcbiAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwge1xuICAgICAgICAgIHRvdGFsQ291bnQ6XG4gICAgICAgICAgICBwYWdlLnRvdGFsQ291bnQgPz9cbiAgICAgICAgICAgIE1hdGgubWF4KFxuICAgICAgICAgICAgICB1bnRyYWNrZWQoc3RvcmUudG90YWxDb3VudCksXG4gICAgICAgICAgICAgIHBhZ2UucGFnZUluZGV4ICogcmVxdWVzdFBhcmFtcy5wYWdlU2l6ZSArIHBhZ2UuZGF0YS5sZW5ndGhcbiAgICAgICAgICAgICksXG4gICAgICAgICAgbmV4dFBhZ2VJbmRleCxcbiAgICAgICAgICB0b3RhbENvdW50S25vd246XG4gICAgICAgICAgICBwYWdlLnRvdGFsQ291bnQgIT09IG51bGwgfHxcbiAgICAgICAgICAgIHBhZ2UuZGF0YS5sZW5ndGggPCByZXF1ZXN0UGFyYW1zLnBhZ2VTaXplLFxuICAgICAgICAgIG9wdGlvbnMsXG4gICAgICAgICAgX2ZldGNoUmVxdWVzdDogbnVsbCxcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuX2xvYWRNaXNzaW5nU2VsZWN0ZWQoKTtcbiAgICAgIH0sXG4gICAgICBfb25GZXRjaEVycm9yKGVycm9yOiBhbnkpIHtcbiAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwge1xuICAgICAgICAgIGZldGNoRXJyb3I6IGdldFJkdFNlbGVjdEVycm9yKGVycm9yKSxcbiAgICAgICAgICBfZmV0Y2hSZXF1ZXN0OiBudWxsLFxuICAgICAgICB9KTtcbiAgICAgIH0sXG4gICAgICBfb25GZXRjaENvbXBsZXRlKCkge1xuICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7XG4gICAgICAgICAgX2ZldGNoUmVxdWVzdDogbnVsbCxcbiAgICAgICAgfSk7XG4gICAgICB9LFxuICAgICAgc2V0RGF0YXNvdXJjZShkYXRhc291cmNlOiBSZHRTZWxlY3REYXRhc291cmNlPFQsIFRJZD4pIHtcbiAgICAgICAgdW50cmFja2VkKHN0b3JlLl9mZXRjaFJlcXVlc3QpPy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwge1xuICAgICAgICAgIGRhdGFzb3VyY2UsXG4gICAgICAgICAgX2ZldGNoUmVxdWVzdDogbnVsbCxcbiAgICAgICAgICBmZXRjaEVycm9yOiBudWxsLFxuICAgICAgICAgIHRvdGFsQ291bnRLbm93bjogZGF0YXNvdXJjZS50b3RhbENvdW50S25vd24sXG4gICAgICAgICAgbmV4dFBhZ2VJbmRleDogMCxcbiAgICAgICAgICB0b3RhbENvdW50OiAwLFxuICAgICAgICAgIG9wdGlvbnM6IFtdLFxuICAgICAgICB9KTtcbiAgICAgICAgaWYgKCFkYXRhc291cmNlLnF1ZXJ5UmVxdWlyZWQpIHtcbiAgICAgICAgICB0aGlzLmZldGNoKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5fbG9hZE1pc3NpbmdTZWxlY3RlZCgpO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgc2V0UXVlcnkocXVlcnk6IHN0cmluZyB8IG51bGwpIHtcbiAgICAgICAgY29uc3QgZGF0YXNvdXJjZSA9IHVudHJhY2tlZChzdG9yZS5kYXRhc291cmNlKTtcbiAgICAgICAgaWYgKHF1ZXJ5ICE9PSB1bnRyYWNrZWQoc3RvcmUucXVlcnkpKSB7XG4gICAgICAgICAgdGhpcy5yZXNldCgpO1xuICAgICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgcXVlcnkgfSk7XG4gICAgICAgICAgaWYgKHF1ZXJ5IHx8ICFkYXRhc291cmNlPy5xdWVyeVJlcXVpcmVkKSB7XG4gICAgICAgICAgICB0aGlzLmZldGNoKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgcmVzZXQoKSB7XG4gICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHtcbiAgICAgICAgICBxdWVyeTogbnVsbCxcbiAgICAgICAgICBuZXh0UGFnZUluZGV4OiAwLFxuICAgICAgICAgIG9wdGlvbnM6IFtdLFxuICAgICAgICAgIHRvdGFsQ291bnQ6IDAsXG4gICAgICAgICAgdG90YWxDb3VudEtub3duOiB1bnRyYWNrZWQoc3RvcmUuZGF0YXNvdXJjZSk/LnRvdGFsQ291bnRLbm93biA/PyB0cnVlLFxuICAgICAgICB9KTtcbiAgICAgIH0sXG4gICAgICByZXNldFRvdGFsQ291bnRLbm93bigpIHtcbiAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwge1xuICAgICAgICAgIHRvdGFsQ291bnRLbm93bjogdW50cmFja2VkKHN0b3JlLmRhdGFzb3VyY2UpPy50b3RhbENvdW50S25vd24gPz8gdHJ1ZSxcbiAgICAgICAgfSk7XG4gICAgICB9LFxuICAgICAgc2V0U2VsZWN0ZWQoaWRzOiBUSWRbXSkge1xuICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7XG4gICAgICAgICAgX21pc3NpbmdTZWxlY3RlZDogaWRzLFxuICAgICAgICAgIHNlbGVjdGVkTWFwOiBuZXcgTWFwKCksXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLl9sb2FkTWlzc2luZ1NlbGVjdGVkKCk7XG4gICAgICB9LFxuICAgICAgc2VsZWN0KGlkczogVElkW10pIHtcbiAgICAgICAgY29uc3Qgb2xkTWlzc2luZyA9IHVudHJhY2tlZChzdG9yZS5fbWlzc2luZ1NlbGVjdGVkKTtcbiAgICAgICAgY29uc3Qgbm90SW5NaXNzaW5nID0gaWRzLmZpbHRlcigoaWQpID0+ICFvbGRNaXNzaW5nLmluY2x1ZGVzKGlkKSk7XG4gICAgICAgIGlmIChub3RJbk1pc3NpbmcubGVuZ3RoID4gMCkge1xuICAgICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHtcbiAgICAgICAgICAgIF9taXNzaW5nU2VsZWN0ZWQ6IG9sZE1pc3NpbmcuY29uY2F0KG5vdEluTWlzc2luZyksXG4gICAgICAgICAgfSk7XG5cbiAgICAgICAgICB0aGlzLl9sb2FkTWlzc2luZ1NlbGVjdGVkKCk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB1bnNlbGVjdEFsbCgpIHtcbiAgICAgICAgY29uc3QgZmV0Y2hNaXNzaW5nUmVxID0gdW50cmFja2VkKHN0b3JlLl9mZXRjaE1pc3NpbmdSZXF1ZXN0KTtcbiAgICAgICAgaWYgKGZldGNoTWlzc2luZ1JlcSkge1xuICAgICAgICAgIGZldGNoTWlzc2luZ1JlcS5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgfVxuICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7XG4gICAgICAgICAgX21pc3NpbmdTZWxlY3RlZDogW10sXG4gICAgICAgICAgc2VsZWN0ZWRNYXA6IG5ldyBNYXAoKSxcbiAgICAgICAgICBfZmV0Y2hNaXNzaW5nUmVxdWVzdDogbnVsbCxcbiAgICAgICAgfSk7XG4gICAgICB9LFxuICAgICAgX3NldEFuZEdldE1pc3NpbmcoKSB7XG4gICAgICAgIGNvbnN0IGFsbE1pc3NpbmcgPSB1bnRyYWNrZWQoc3RvcmUuX21pc3NpbmdTZWxlY3RlZCk7XG4gICAgICAgIGNvbnN0IGl0ZW1zID0gdW50cmFja2VkKHN0b3JlLm9wdGlvbnMpO1xuICAgICAgICBjb25zdCBzZWxlY3RlZE1hcCA9IG5ldyBNYXAodW50cmFja2VkKHN0b3JlLnNlbGVjdGVkTWFwKSk7XG4gICAgICAgIGNvbnN0IG5ld01pc3Npbmc6IFRJZFtdID0gW107XG5cbiAgICAgICAgbGV0IHNlbGVjdGVkQ2hhbmdlZCA9IGZhbHNlO1xuICAgICAgICBmb3IgKGNvbnN0IGlkIG9mIGFsbE1pc3NpbmcpIHtcbiAgICAgICAgICBjb25zdCBpdGVtID0gaXRlbXMuZmluZCgoaXQpID0+IGl0LmlkID09PSBpZCk7XG4gICAgICAgICAgaWYgKGl0ZW0pIHtcbiAgICAgICAgICAgIHNlbGVjdGVkTWFwLnNldChpZCwgaXRlbSk7XG4gICAgICAgICAgICBzZWxlY3RlZENoYW5nZWQgPSB0cnVlO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBuZXdNaXNzaW5nLnB1c2goaWQpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoc2VsZWN0ZWRDaGFuZ2VkKSB7XG4gICAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwgeyBzZWxlY3RlZE1hcCB9KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAobmV3TWlzc2luZy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICB0aGlzLl9jYW5jZWxGZXRjaE1pc3NpbmdJZk5lZWRlZCgpO1xuICAgICAgICB9XG4gICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgX21pc3NpbmdTZWxlY3RlZDogbmV3TWlzc2luZyB9KTtcbiAgICAgICAgcmV0dXJuIG5ld01pc3Npbmc7XG4gICAgICB9LFxuICAgICAgX2xvYWRNaXNzaW5nU2VsZWN0ZWQoKSB7XG4gICAgICAgIGNvbnN0IHJlYWxseU1pc3NpbmcgPSB0aGlzLl9zZXRBbmRHZXRNaXNzaW5nKCk7XG4gICAgICAgIGlmICghdW50cmFja2VkKHN0b3JlLmxvYWRpbmcpICYmIHJlYWxseU1pc3NpbmcubGVuZ3RoID4gMCkge1xuICAgICAgICAgIHRoaXMuX2ZldGNoTWlzc2luZyhyZWFsbHlNaXNzaW5nKTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIF9jYW5jZWxGZXRjaE1pc3NpbmdJZk5lZWRlZCgpIHtcbiAgICAgICAgY29uc3QgZmV0Y2hNaXNzaW5nUmVxID0gdW50cmFja2VkKHN0b3JlLl9mZXRjaE1pc3NpbmdSZXF1ZXN0KTtcbiAgICAgICAgY29uc3QgaXRlbXMgPSB1bnRyYWNrZWQoc3RvcmUub3B0aW9ucyk7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBmZXRjaE1pc3NpbmdSZXE/Lmlkcy5ldmVyeSgoaWQpID0+IGl0ZW1zLnNvbWUoKGl0KSA9PiBpdC5pZCA9PT0gaWQpKVxuICAgICAgICApIHtcbiAgICAgICAgICBmZXRjaE1pc3NpbmdSZXEuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwge1xuICAgICAgICAgICAgX2ZldGNoTWlzc2luZ1JlcXVlc3Q6IG51bGwsXG4gICAgICAgICAgICBfbWlzc2luZ1NlbGVjdGVkOiBbXSxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIF9mZXRjaE1pc3NpbmcoaWRzOiBUSWRbXSkge1xuICAgICAgICBjb25zdCBkYXRhc291cmNlID0gdW50cmFja2VkKHN0b3JlLmRhdGFzb3VyY2UpO1xuICAgICAgICBpZiAoIWRhdGFzb3VyY2UgfHwgaWRzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBzdWIgPSBkYXRhc291cmNlLmdldEl0ZW1zQnlJZHMoaWRzKS5zdWJzY3JpYmUoKG1hcCkgPT4ge1xuICAgICAgICAgIGNvbnN0IG5ld01pc3Npbmc6IFRJZFtdID0gW107XG4gICAgICAgICAgY29uc3QgbmV3U2VsZWN0ZWQgPSBuZXcgTWFwKHVudHJhY2tlZChzdG9yZS5zZWxlY3RlZE1hcCkpO1xuICAgICAgICAgIGZvciAoY29uc3QgaWQgb2YgdW50cmFja2VkKHN0b3JlLl9taXNzaW5nU2VsZWN0ZWQpKSB7XG4gICAgICAgICAgICBpZiAobWFwLmhhcyhpZCkpIHtcbiAgICAgICAgICAgICAgY29uc3QgdmFsdWUgPSBtYXAuZ2V0KGlkKSE7XG4gICAgICAgICAgICAgIGNvbnN0IGxhYmVsID0gZGF0YXNvdXJjZS5nZXRMYWJlbCh2YWx1ZSk7XG4gICAgICAgICAgICAgIG5ld1NlbGVjdGVkLnNldChpZCwgeyBsYWJlbCwgdmFsdWUsIGlkIH0pO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgbmV3TWlzc2luZy5wdXNoKGlkKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwge1xuICAgICAgICAgICAgX2ZldGNoTWlzc2luZ1JlcXVlc3Q6IG51bGwsXG4gICAgICAgICAgICBfbWlzc2luZ1NlbGVjdGVkOiBuZXdNaXNzaW5nLFxuICAgICAgICAgICAgc2VsZWN0ZWRNYXA6IG5ld1NlbGVjdGVkLFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIHRoaXMuX2xvYWRNaXNzaW5nU2VsZWN0ZWQoKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGlmICghc3ViLmNsb3NlZCkge1xuICAgICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHtcbiAgICAgICAgICAgIF9mZXRjaE1pc3NpbmdSZXF1ZXN0OiB7IGlkcywgc3Vic2NyaXB0aW9uOiBzdWIgfSxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHNlbGVjdFNpbmdsZShpZDogVElkKSB7XG4gICAgICAgIHRoaXMuc2V0U2VsZWN0ZWQoW2lkXSk7XG4gICAgICB9LFxuICAgICAgdG9nZ2xlKGlkOiBUSWQpIHtcbiAgICAgICAgY29uc3Qgb2xkTWFwID0gdW50cmFja2VkKHN0b3JlLnNlbGVjdGVkTWFwKTtcbiAgICAgICAgY29uc3QgZGF0YXNvdXJjZSA9IHVudHJhY2tlZChzdG9yZS5kYXRhc291cmNlKTtcbiAgICAgICAgaWYgKCFkYXRhc291cmNlKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdEYXRhc291cmNlIGlzIHVuZGVmaW5lZCcpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChvbGRNYXAuaGFzKGlkKSkge1xuICAgICAgICAgIGNvbnN0IG5ld01hcCA9IG5ldyBNYXAob2xkTWFwKTtcbiAgICAgICAgICBuZXdNYXAuZGVsZXRlKGlkKTtcbiAgICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7IHNlbGVjdGVkTWFwOiBuZXdNYXAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc3QgaXRlbSA9IHVudHJhY2tlZChzdG9yZS5vcHRpb25zKS5maW5kKChpdCkgPT4gaXQuaWQgPT09IGlkKTtcbiAgICAgICAgICBpZiAoIWl0ZW0pIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0KFtpZF0pO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBuZXdNYXAgPSBuZXcgTWFwKG9sZE1hcCk7XG4gICAgICAgICAgICBuZXdNYXAuc2V0KGlkLCBpdGVtKTtcbiAgICAgICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgc2VsZWN0ZWRNYXA6IG5ld01hcCB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBjYW5jZWxGZXRjaCgpIHtcbiAgICAgICAgdW50cmFja2VkKHN0b3JlLl9mZXRjaFJlcXVlc3QpPy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwge1xuICAgICAgICAgIF9mZXRjaFJlcXVlc3Q6IG51bGwsXG4gICAgICAgICAgZmV0Y2hFcnJvcjogbnVsbCxcbiAgICAgICAgfSk7XG4gICAgICB9LFxuICAgICAgaXNTZWxlY3RlZChpdGVtOiBUKSB7XG4gICAgICAgIGNvbnN0IGRhdGFzb3VyY2UgPSB1bnRyYWNrZWQoc3RvcmUuZGF0YXNvdXJjZSk7XG4gICAgICAgIGlmICghZGF0YXNvdXJjZSkge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBpZCA9IGRhdGFzb3VyY2UuZ2V0SWQoaXRlbSk7XG4gICAgICAgIHJldHVybiB1bnRyYWNrZWQoc3RvcmUuc2VsZWN0ZWRNYXApLmhhcyhpZCk7XG4gICAgICB9LFxuICAgICAgc2V0UGFnZVNpemUoc2l6ZTogbnVtYmVyKSB7XG4gICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgcGFnZVNpemU6IHNpemUgfSk7XG4gICAgICB9LFxuICAgICAgX2dldExhYmVsVmFsdWVJZHMoaXRlbXM6IFRbXSk6IFJkdExhYmVsVmFsdWVJZDxULCBUSWQ+W10ge1xuICAgICAgICBjb25zdCBkYXRhc291cmNlID0gdW50cmFja2VkKHN0b3JlLmRhdGFzb3VyY2UpO1xuICAgICAgICBpZiAoIWRhdGFzb3VyY2UpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0RhdGFzb3VyY2Ugbm90IHNldCEnKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gaXRlbXMubWFwKChpdGVtKSA9PiAoe1xuICAgICAgICAgIGxhYmVsOiBkYXRhc291cmNlLmdldExhYmVsKGl0ZW0pLFxuICAgICAgICAgIHZhbHVlOiBpdGVtLFxuICAgICAgICAgIGlkOiBkYXRhc291cmNlLmdldElkKGl0ZW0pLFxuICAgICAgICB9KSk7XG4gICAgICB9LFxuICAgIH0pKVxuICApO1xufVxuXG5leHBvcnQgY29uc3QgUmR0U2VsZWN0U3RvcmUgPSBnZXRSZHRTZWxlY3RTdG9yZTxhbnksIGFueT4oKTtcbmV4cG9ydCB0eXBlIFJkdFNlbGVjdFN0b3JlPFQgPSBhbnksIFRJZCA9IG51bWJlcj4gPSBJbnN0YW5jZVR5cGU8XG4gIFJldHVyblR5cGU8dHlwZW9mIGdldFJkdFNlbGVjdFN0b3JlPFQsIFRJZD4+XG4+O1xuXG5mdW5jdGlvbiBnZXRSZHRTZWxlY3RFcnJvcihlcnJvcjogYW55KSB7XG4gIGlmICh0eXBlb2YgZXJyb3IgPT09ICdzdHJpbmcnKSB7XG4gICAgcmV0dXJuIGVycm9yO1xuICB9IGVsc2UgaWYgKGVycm9yIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICByZXR1cm4gZXJyb3IubWVzc2FnZTtcbiAgfSBlbHNlIGlmIChlcnJvciAmJiB0eXBlb2YgZXJyb3IgPT09ICdvYmplY3QnICYmICdtZXNzYWdlJyBpbiBlcnJvcikge1xuICAgIHJldHVybiBlcnJvci5tZXNzYWdlO1xuICB9XG4gIHJldHVybiAnTmFzdGFsYSBjaHliYS4nO1xufVxuIl19","import { computed, Directive, effect, inject, input } from '@angular/core';\nimport { RdtOfflineSelectDatasource } from '../datasource';\nimport { RdtSelectStore } from '../state';\nimport * as i0 from \"@angular/core\";\nexport class RdtSelectOfflineDatasourceProviderDirective {\n store = inject(RdtSelectStore);\n optionsInput = input.required({\n alias: 'options',\n });\n options = computed(() => this.parseOptions(this.optionsInput()));\n parseOptions(options) {\n if (!options || options.length === 0) {\n return [];\n }\n if (typeof options[0] === 'object' && options[0]) {\n return options;\n }\n else {\n return options.map((value) => ({\n label: String(value),\n value: value,\n }));\n }\n }\n optionsEffect = effect(() => this.setDatasource());\n setDatasource() {\n const options = this.options();\n this.store.setDatasource(new RdtOfflineSelectDatasource(options));\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtSelectOfflineDatasourceProviderDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.0\", type: RdtSelectOfflineDatasourceProviderDirective, isStandalone: true, inputs: { optionsInput: { classPropertyName: \"optionsInput\", publicName: \"options\", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtSelectOfflineDatasourceProviderDirective, decorators: [{\n type: Directive\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LXNlbGVjdC1vZmZsaW5lLWRhdGFzb3VyY2UuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vQG5ncmR0L2Zvcm1zL3NyYy9saWIvaW5wdXRzL3NlbGVjdC9kaXJlY3RpdmVzL3JkdC1zZWxlY3Qtb2ZmbGluZS1kYXRhc291cmNlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7QUFJMUMsTUFBTSxPQUFnQiwyQ0FBMkM7SUFHdEQsS0FBSyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUUvQixZQUFZLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FFcEM7UUFDQSxLQUFLLEVBQUUsU0FBUztLQUNqQixDQUFDLENBQUM7SUFDTSxPQUFPLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQztJQUVsRSxZQUFZLENBQ2xCLE9BQXVEO1FBRXZELElBQUksQ0FBQyxPQUFPLElBQUksT0FBTyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNyQyxPQUFPLEVBQUUsQ0FBQztRQUNaLENBQUM7UUFDRCxJQUFJLE9BQU8sT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLFFBQVEsSUFBSSxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNqRCxPQUFPLE9BQWtDLENBQUM7UUFDNUMsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFRLE9BQW9CLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUMzQyxLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUssQ0FBQztnQkFDcEIsS0FBSyxFQUFFLEtBQUs7YUFDYixDQUFDLENBQUMsQ0FBQztRQUNOLENBQUM7SUFDSCxDQUFDO0lBRWdCLGFBQWEsR0FBRyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUM7SUFFNUQsYUFBYTtRQUNuQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDL0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsSUFBSSwwQkFBMEIsQ0FBUyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQzVFLENBQUM7dUdBakNtQiwyQ0FBMkM7MkZBQTNDLDJDQUEyQzs7MkZBQTNDLDJDQUEyQztrQkFEaEUsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvbXB1dGVkLCBEaXJlY3RpdmUsIGVmZmVjdCwgaW5qZWN0LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmR0T2ZmbGluZVNlbGVjdERhdGFzb3VyY2UgfSBmcm9tICcuLi9kYXRhc291cmNlJztcbmltcG9ydCB7IFJkdFNlbGVjdFN0b3JlIH0gZnJvbSAnLi4vc3RhdGUnO1xuaW1wb3J0IHsgUmR0TGFiZWxWYWx1ZSB9IGZyb20gJy4uL3V0aWxzL2xhYmVsLXZhbHVlLWlkJztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgUmR0U2VsZWN0T2ZmbGluZURhdGFzb3VyY2VQcm92aWRlckRpcmVjdGl2ZTxcbiAgVFZhbHVlIGV4dGVuZHMgc3RyaW5nIHwgbnVtYmVyXG4+IHtcbiAgcmVhZG9ubHkgc3RvcmUgPSBpbmplY3QoUmR0U2VsZWN0U3RvcmUpO1xuXG4gIHJlYWRvbmx5IG9wdGlvbnNJbnB1dCA9IGlucHV0LnJlcXVpcmVkPFxuICAgIFJkdExhYmVsVmFsdWU8VFZhbHVlPltdIHwgVFZhbHVlW10gfCB1bmRlZmluZWRcbiAgPih7XG4gICAgYWxpYXM6ICdvcHRpb25zJyxcbiAgfSk7XG4gIHJlYWRvbmx5IG9wdGlvbnMgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnBhcnNlT3B0aW9ucyh0aGlzLm9wdGlvbnNJbnB1dCgpKSk7XG5cbiAgcHJpdmF0ZSBwYXJzZU9wdGlvbnMoXG4gICAgb3B0aW9uczogUmR0TGFiZWxWYWx1ZTxUVmFsdWU+W10gfCBUVmFsdWVbXSB8IHVuZGVmaW5lZFxuICApOiBSZHRMYWJlbFZhbHVlPFRWYWx1ZT5bXSB7XG4gICAgaWYgKCFvcHRpb25zIHx8IG9wdGlvbnMubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuICAgIGlmICh0eXBlb2Ygb3B0aW9uc1swXSA9PT0gJ29iamVjdCcgJiYgb3B0aW9uc1swXSkge1xuICAgICAgcmV0dXJuIG9wdGlvbnMgYXMgUmR0TGFiZWxWYWx1ZTxUVmFsdWU+W107XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiAob3B0aW9ucyBhcyBUVmFsdWVbXSkubWFwKCh2YWx1ZSkgPT4gKHtcbiAgICAgICAgbGFiZWw6IFN0cmluZyh2YWx1ZSksXG4gICAgICAgIHZhbHVlOiB2YWx1ZSxcbiAgICAgIH0pKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnNFZmZlY3QgPSBlZmZlY3QoKCkgPT4gdGhpcy5zZXREYXRhc291cmNlKCkpO1xuXG4gIHByaXZhdGUgc2V0RGF0YXNvdXJjZSgpIHtcbiAgICBjb25zdCBvcHRpb25zID0gdGhpcy5vcHRpb25zKCk7XG4gICAgdGhpcy5zdG9yZS5zZXREYXRhc291cmNlKG5ldyBSZHRPZmZsaW5lU2VsZWN0RGF0YXNvdXJjZTxUVmFsdWU+KG9wdGlvbnMpKTtcbiAgfVxufVxuIl19","import { Directive, ElementRef, inject, input, signal } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class RdtSelectOptionDirective {\n elementRef = inject(ElementRef);\n value = input.required({ alias: 'rdtSelectOption' });\n _selected = signal(false);\n set selected(value) {\n this._selected.set(value);\n }\n get selected() {\n return this._selected();\n }\n _disabled = signal(false);\n set disabled(value) {\n this._disabled.set(value);\n }\n get disabled() {\n return this._disabled();\n }\n setActiveStyles() {\n this.selected = true;\n }\n setInactiveStyles() {\n this.selected = false;\n }\n scrollIntoElement() {\n this.elementRef.nativeElement.scrollIntoView({\n block: 'nearest',\n behavior: 'smooth',\n });\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtSelectOptionDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.0\", type: RdtSelectOptionDirective, isStandalone: true, selector: \"[rdtSelectOption]\", inputs: { value: { classPropertyName: \"value\", publicName: \"rdtSelectOption\", isSignal: true, isRequired: true, transformFunction: null } }, host: { properties: { \"class.rdt-option-selected\": \"_selected()\", \"class.rdt-option-disabled\": \"_disabled()\" }, classAttribute: \"rdt-option\" }, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtSelectOptionDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[rdtSelectOption]',\n host: {\n class: 'rdt-option',\n '[class.rdt-option-selected]': '_selected()',\n '[class.rdt-option-disabled]': '_disabled()',\n },\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LXNlbGVjdC1vcHRpb24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vQG5ncmR0L2Zvcm1zL3NyYy9saWIvaW5wdXRzL3NlbGVjdC9kaXJlY3RpdmVzL3JkdC1zZWxlY3Qtb3B0aW9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFVN0UsTUFBTSxPQUFPLHdCQUF3QjtJQUNsQixVQUFVLEdBQUcsTUFBTSxDQUEwQixVQUFVLENBQUMsQ0FBQztJQUNqRSxLQUFLLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBUyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxDQUFDLENBQUM7SUFFbkQsU0FBUyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM3QyxJQUFJLFFBQVEsQ0FBQyxLQUFjO1FBQ3pCLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFDRCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRWtCLFNBQVMsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDN0MsSUFBSSxRQUFRLENBQUMsS0FBYztRQUN6QixJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBQ0QsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztJQUN2QixDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFDeEIsQ0FBQztJQUVELGlCQUFpQjtRQUNmLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQztZQUMzQyxLQUFLLEVBQUUsU0FBUztZQUNoQixRQUFRLEVBQUUsUUFBUTtTQUNuQixDQUFDLENBQUM7SUFDTCxDQUFDO3VHQWpDVSx3QkFBd0I7MkZBQXhCLHdCQUF3Qjs7MkZBQXhCLHdCQUF3QjtrQkFScEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixJQUFJLEVBQUU7d0JBQ0osS0FBSyxFQUFFLFlBQVk7d0JBQ25CLDZCQUE2QixFQUFFLGFBQWE7d0JBQzVDLDZCQUE2QixFQUFFLGFBQWE7cUJBQzdDO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSGlnaGxpZ2h0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgaW5qZWN0LCBpbnB1dCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tyZHRTZWxlY3RPcHRpb25dJyxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAncmR0LW9wdGlvbicsXG4gICAgJ1tjbGFzcy5yZHQtb3B0aW9uLXNlbGVjdGVkXSc6ICdfc2VsZWN0ZWQoKScsXG4gICAgJ1tjbGFzcy5yZHQtb3B0aW9uLWRpc2FibGVkXSc6ICdfZGlzYWJsZWQoKScsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIFJkdFNlbGVjdE9wdGlvbkRpcmVjdGl2ZTxUVmFsdWU+IGltcGxlbWVudHMgSGlnaGxpZ2h0YWJsZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudFJlZiA9IGluamVjdDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4oRWxlbWVudFJlZik7XG4gIHJlYWRvbmx5IHZhbHVlID0gaW5wdXQucmVxdWlyZWQ8VFZhbHVlPih7IGFsaWFzOiAncmR0U2VsZWN0T3B0aW9uJyB9KTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgX3NlbGVjdGVkID0gc2lnbmFsKGZhbHNlKTtcbiAgc2V0IHNlbGVjdGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fc2VsZWN0ZWQuc2V0KHZhbHVlKTtcbiAgfVxuICBnZXQgc2VsZWN0ZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3NlbGVjdGVkKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgX2Rpc2FibGVkID0gc2lnbmFsKGZhbHNlKTtcbiAgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZGlzYWJsZWQuc2V0KHZhbHVlKTtcbiAgfVxuICBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkKCk7XG4gIH1cblxuICBzZXRBY3RpdmVTdHlsZXMoKTogdm9pZCB7XG4gICAgdGhpcy5zZWxlY3RlZCA9IHRydWU7XG4gIH1cblxuICBzZXRJbmFjdGl2ZVN0eWxlcygpOiB2b2lkIHtcbiAgICB0aGlzLnNlbGVjdGVkID0gZmFsc2U7XG4gIH1cblxuICBzY3JvbGxJbnRvRWxlbWVudCgpOiB2b2lkIHtcbiAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5zY3JvbGxJbnRvVmlldyh7XG4gICAgICBibG9jazogJ25lYXJlc3QnLFxuICAgICAgYmVoYXZpb3I6ICdzbW9vdGgnLFxuICAgIH0pO1xuICB9XG59XG4iXX0=","import { computed, Directive, effect, inject, input, linkedSignal, } from '@angular/core';\nimport { takeUntilDestroyed, toObservable, toSignal, } from '@angular/core/rxjs-interop';\nimport { FormControl } from '@angular/forms';\nimport { RdtObjectUtils } from '@ngrdt/utils';\nimport { debounceTime, distinctUntilChanged, switchMap } from 'rxjs';\nimport { RdtBaseFormInputComponent } from '../../base/rdt-base-form-input.component';\nimport { RdtSelectStore } from './state/rdt-select-store';\nimport * as i0 from \"@angular/core\";\nexport class RdtBaseSelectCommonComponent extends RdtBaseFormInputComponent {\n datasourceInput = input(null);\n store = inject(RdtSelectStore);\n visibleOptions = this.store.visibleOptions;\n queryValidatorFnInput = input(null, {\n alias: 'inputValidator',\n });\n queryValidatorFn = linkedSignal(() => this.queryValidatorFnInput());\n queryValidatorEffect = effect(() => {\n const validator = this.queryValidatorFn();\n if (validator) {\n this.inputCtrl.setValidators(validator);\n }\n else {\n this.inputCtrl.clearValidators();\n }\n });\n inputCtrl = new FormControl(null);\n inputCtrlEvents = toSignal(this.inputCtrl.events);\n inputErrors = computed(() => {\n this.inputCtrlEvents();\n if (this.inputCtrl.touched && this.inputCtrl.invalid) {\n return this.inputCtrl.errors;\n }\n else {\n return null;\n }\n });\n debounceTimeInput = input(300, {\n alias: 'debounce',\n });\n debounceTime = linkedSignal(() => this.debounceTimeInput());\n debouncedInput$ = toObservable(this.debounceTime).pipe(switchMap((time) => this.inputCtrl.valueChanges.pipe(debounceTime(time))), distinctUntilChanged());\n debouncedInput = toSignal(this.debouncedInput$, {\n initialValue: null,\n });\n pageSizeInput = input(20, {\n alias: 'pageSize',\n });\n pageSizeEffect = effect(() => this.store.setPageSize(this.pageSizeInput()));\n loading = computed(() => {\n return (this.store.loading() ||\n this.loadingInput() ||\n RdtObjectUtils.someValuesTrue(this.loadingMap()));\n });\n ngOnInit() {\n super.ngOnInit();\n this.debouncedInput$\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe((value) => this.handleInput(value));\n }\n handleInput(value) {\n this.store.setQuery(value);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtBaseSelectCommonComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.0\", type: RdtBaseSelectCommonComponent, isStandalone: true, inputs: { datasourceInput: { classPropertyName: \"datasourceInput\", publicName: \"datasourceInput\", isSignal: true, isRequired: false, transformFunction: null }, queryValidatorFnInput: { classPropertyName: \"queryValidatorFnInput\", publicName: \"inputValidator\", isSignal: true, isRequired: false, transformFunction: null }, debounceTimeInput: { classPropertyName: \"debounceTimeInput\", publicName: \"debounce\", isSignal: true, isRequired: false, transformFunction: null }, pageSizeInput: { classPropertyName: \"pageSizeInput\", publicName: \"pageSize\", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtBaseSelectCommonComponent, decorators: [{\n type: Directive\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWJhc2Utc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL0BuZ3JkdC9mb3Jtcy9zcmMvbGliL2lucHV0cy9zZWxlY3QvcmR0LWJhc2Utc2VsZWN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsUUFBUSxFQUNSLFNBQVMsRUFDVCxNQUFNLEVBQ04sTUFBTSxFQUNOLEtBQUssRUFDTCxZQUFZLEdBQ2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNMLGtCQUFrQixFQUNsQixZQUFZLEVBQ1osUUFBUSxHQUNULE1BQU0sNEJBQTRCLENBQUM7QUFDcEMsT0FBTyxFQUFFLFdBQVcsRUFBZSxNQUFNLGdCQUFnQixDQUFDO0FBQzFELE9BQU8sRUFBWSxjQUFjLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDeEQsT0FBTyxFQUFFLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFFckYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFDOztBQUcxRCxNQUFNLE9BQWdCLDRCQUlwQixTQUFRLHlCQUErQjtJQUM5QixlQUFlLEdBQUcsS0FBSyxDQUM5QixJQUFJLENBQ0wsQ0FBQztJQUNPLEtBQUssR0FBRyxNQUFNLENBQUMsY0FBYyxDQUErQixDQUFDO0lBQzdELGNBQWMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQztJQUMzQyxxQkFBcUIsR0FBRyxLQUFLLENBQ3BDLElBQUksRUFDSjtRQUNFLEtBQUssRUFBRSxnQkFBZ0I7S0FDeEIsQ0FDRixDQUFDO0lBQ08sZ0JBQWdCLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLENBQUM7SUFD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Y3RpdmUsXG4gIGVmZmVjdCxcbiAgaW5qZWN0LFxuICBpbnB1dCxcbiAgbGlua2VkU2lnbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIHRha2VVbnRpbERlc3Ryb3llZCxcbiAgdG9PYnNlcnZhYmxlLFxuICB0b1NpZ25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIFZhbGlkYXRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTnVsbGFibGUsIFJkdE9iamVjdFV0aWxzIH0gZnJvbSAnQG5ncmR0L3V0aWxzJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgUmR0QmFzZUZvcm1JbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Jhc2UvcmR0LWJhc2UtZm9ybS1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmR0U2VsZWN0RGF0YXNvdXJjZSB9IGZyb20gJy4vZGF0YXNvdXJjZS9yZHQtc2VsZWN0LWRhdGFzb3VyY2UnO1xuaW1wb3J0IHsgUmR0U2VsZWN0U3RvcmUgfSBmcm9tICcuL3N0YXRlL3JkdC1zZWxlY3Qtc3RvcmUnO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBSZHRCYXNlU2VsZWN0Q29tbW9uQ29tcG9uZW50PFxuICBUSXRlbSxcbiAgVElkLFxuICBUT3V0XG4+IGV4dGVuZHMgUmR0QmFzZUZvcm1JbnB1dENvbXBvbmVudDxUT3V0PiB7XG4gIHJlYWRvbmx5IGRhdGFzb3VyY2VJbnB1dCA9IGlucHV0PFJkdFNlbGVjdERhdGFzb3VyY2U8VEl0ZW0sIFRJZD4gfCBudWxsPihcbiAgICBudWxsXG4gICk7XG4gIHJlYWRvbmx5IHN0b3JlID0gaW5qZWN0KFJkdFNlbGVjdFN0b3JlKSBhcyBSZHRTZWxlY3RTdG9yZTxUSXRlbSwgVElkPjtcbiAgcmVhZG9ubHkgdmlzaWJsZU9wdGlvbnMgPSB0aGlzLnN0b3JlLnZpc2libGVPcHRpb25zO1xuICByZWFkb25seSBxdWVyeVZhbGlkYXRvckZuSW5wdXQgPSBpbnB1dDxOdWxsYWJsZTxWYWxpZGF0b3JGbiB8IFZhbGlkYXRvckZuW10+PihcbiAgICBudWxsLFxuICAgIHtcbiAgICAgIGFsaWFzOiAnaW5wdXRWYWxpZGF0b3InLFxuICAgIH1cbiAgKTtcbiAgcmVhZG9ubHkgcXVlcnlWYWxpZGF0b3JGbiA9IGxpbmtlZFNpZ25hbCgoKSA9PiB0aGlzLnF1ZXJ5VmFsaWRhdG9yRm5JbnB1dCgpKTtcbiAgcHJpdmF0ZSByZWFkb25seSBxdWVyeVZhbGlkYXRvckVmZmVjdCA9IGVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgdmFsaWRhdG9yID0gdGhpcy5xdWVyeVZhbGlkYXRvckZuKCk7XG4gICAgaWYgKHZhbGlkYXRvcikge1xuICAgICAgdGhpcy5pbnB1dEN0cmwuc2V0VmFsaWRhdG9ycyh2YWxpZGF0b3IpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmlucHV0Q3RybC5jbGVhclZhbGlkYXRvcnMoKTtcbiAgICB9XG4gIH0pO1xuICByZWFkb25seSBpbnB1dEN0cmwgPSBuZXcgRm9ybUNvbnRyb2w8c3RyaW5nIHwgbnVsbD4obnVsbCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgaW5wdXRDdHJsRXZlbnRzID0gdG9TaWduYWwodGhpcy5pbnB1dEN0cmwuZXZlbnRzKTtcbiAgcmVhZG9ubHkgaW5wdXRFcnJvcnMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgdGhpcy5pbnB1dEN0cmxFdmVudHMoKTtcbiAgICBpZiAodGhpcy5pbnB1dEN0cmwudG91Y2hlZCAmJiB0aGlzLmlucHV0Q3RybC5pbnZhbGlkKSB7XG4gICAgICByZXR1cm4gdGhpcy5pbnB1dEN0cmwuZXJyb3JzO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH0pO1xuICByZWFkb25seSBkZWJvdW5jZVRpbWVJbnB1dCA9IGlucHV0PG51bWJlcj4oMzAwLCB7XG4gICAgYWxpYXM6ICdkZWJvdW5jZScsXG4gIH0pO1xuICByZWFkb25seSBkZWJvdW5jZVRpbWUgPSBsaW5rZWRTaWduYWwoKCkgPT4gdGhpcy5kZWJvdW5jZVRpbWVJbnB1dCgpKTtcbiAgcHJpdmF0ZSByZWFkb25seSBkZWJvdW5jZWRJbnB1dCQgPSB0b09ic2VydmFibGUodGhpcy5kZWJvdW5jZVRpbWUpLnBpcGUoXG4gICAgc3dpdGNoTWFwKCh0aW1lKSA9PiB0aGlzLmlucHV0Q3RybC52YWx1ZUNoYW5nZXMucGlwZShkZWJvdW5jZVRpbWUodGltZSkpKSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpXG4gICk7XG4gIHJlYWRvbmx5IGRlYm91bmNlZElucHV0ID0gdG9TaWduYWwodGhpcy5kZWJvdW5jZWRJbnB1dCQsIHtcbiAgICBpbml0aWFsVmFsdWU6IG51bGwsXG4gIH0pO1xuICByZWFkb25seSBwYWdlU2l6ZUlucHV0ID0gaW5wdXQoMjAsIHtcbiAgICBhbGlhczogJ3BhZ2VTaXplJyxcbiAgfSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgcGFnZVNpemVFZmZlY3QgPSBlZmZlY3QoKCkgPT5cbiAgICB0aGlzLnN0b3JlLnNldFBhZ2VTaXplKHRoaXMucGFnZVNpemVJbnB1dCgpKVxuICApO1xuXG4gIG92ZXJyaWRlIHJlYWRvbmx5IGxvYWRpbmcgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMuc3RvcmUubG9hZGluZygpIHx8XG4gICAgICB0aGlzLmxvYWRpbmdJbnB1dCgpIHx8XG4gICAgICBSZHRPYmplY3RVdGlscy5zb21lVmFsdWVzVHJ1ZSh0aGlzLmxvYWRpbmdNYXAoKSlcbiAgICApO1xuICB9KTtcblxuICBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgIHRoaXMuZGVib3VuY2VkSW5wdXQkXG4gICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSlcbiAgICAgIC5zdWJzY3JpYmUoKHZhbHVlKSA9PiB0aGlzLmhhbmRsZUlucHV0KHZhbHVlKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlSW5wdXQodmFsdWU6IHN0cmluZyB8IG51bGwpOiB2b2lkIHtcbiAgICB0aGlzLnN0b3JlLnNldFF1ZXJ5KHZhbHVlKTtcbiAgfVxufVxuIl19","import { computed, Directive } from '@angular/core';\nimport { RdtBaseSelectCommonComponent } from './rdt-base-select.component';\nimport * as i0 from \"@angular/core\";\nexport class RdtMultiSelectComponent extends RdtBaseSelectCommonComponent {\n selected = computed(() => {\n const selected = this.store.selectedItems();\n return selected.length > 0 ? selected : null;\n });\n isEmpty(value) {\n return value === null || value.length === 0;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtMultiSelectComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.0.0\", type: RdtMultiSelectComponent, isStandalone: true, usesInheritance: true, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtMultiSelectComponent, decorators: [{\n type: Directive\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LW11bHRpLXNlbGVjdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9AbmdyZHQvZm9ybXMvc3JjL2xpYi9pbnB1dHMvc2VsZWN0L3JkdC1tdWx0aS1zZWxlY3QuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDZCQUE2QixDQUFDOztBQUczRSxNQUFNLE9BQWdCLHVCQUdwQixTQUFRLDRCQUErQztJQUM5QyxRQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtRQUNoQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQzVDLE9BQU8sUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQy9DLENBQUMsQ0FBQyxDQUFDO0lBRWdCLE9BQU8sQ0FBQyxLQUFZO1FBQ3JDLE9BQU8sS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQztJQUM5QyxDQUFDO3VHQVhtQix1QkFBdUI7MkZBQXZCLHVCQUF1Qjs7MkZBQXZCLHVCQUF1QjtrQkFENUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvbXB1dGVkLCBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJkdEJhc2VTZWxlY3RDb21tb25Db21wb25lbnQgfSBmcm9tICcuL3JkdC1iYXNlLXNlbGVjdC5jb21wb25lbnQnO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBSZHRNdWx0aVNlbGVjdENvbXBvbmVudDxcbiAgVEl0ZW0sXG4gIFRJZFxuPiBleHRlbmRzIFJkdEJhc2VTZWxlY3RDb21tb25Db21wb25lbnQ8VEl0ZW0sIFRJZCwgVElkW10+IHtcbiAgcmVhZG9ubHkgc2VsZWN0ZWQgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3Qgc2VsZWN0ZWQgPSB0aGlzLnN0b3JlLnNlbGVjdGVkSXRlbXMoKTtcbiAgICByZXR1cm4gc2VsZWN0ZWQubGVuZ3RoID4gMCA/IHNlbGVjdGVkIDogbnVsbDtcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGlzRW1wdHkodmFsdWU6IFRJZFtdKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHZhbHVlID09PSBudWxsIHx8IHZhbHVlLmxlbmd0aCA9PT0gMDtcbiAgfVxufVxuIl19","import { computed, Directive } from '@angular/core';\nimport { RdtBaseFormInputComponent } from '../../base/rdt-base-form-input.component';\nimport { RdtBaseSelectCommonComponent } from './rdt-base-select.component';\nimport * as i0 from \"@angular/core\";\nexport class RdtSingleSelectComponent extends RdtBaseSelectCommonComponent {\n selected = computed(() => {\n const items = this.store.selectedItems();\n return items.length > 0 ? items[0] : null;\n });\n isEmpty(value) {\n return value === null;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtSingleSelectComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.0.0\", type: RdtSingleSelectComponent, isStandalone: true, providers: [\n {\n provide: RdtBaseFormInputComponent,\n useValue: RdtSingleSelectComponent,\n },\n ], usesInheritance: true, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtSingleSelectComponent, decorators: [{\n type: Directive,\n args: [{\n providers: [\n {\n provide: RdtBaseFormInputComponent,\n useValue: RdtSingleSelectComponent,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LXNpbmdsZS1zZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vQG5ncmR0L2Zvcm1zL3NyYy9saWIvaW5wdXRzL3NlbGVjdC9yZHQtc2luZ2xlLXNlbGVjdC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDckYsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7O0FBVTNFLE1BQU0sT0FBZ0Isd0JBR3BCLFNBQVEsNEJBQTZDO0lBQzVDLFFBQVEsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1FBQ2hDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDekMsT0FBTyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDNUMsQ0FBQyxDQUFDLENBQUM7SUFFZ0IsT0FBTyxDQUFDLEtBQVU7UUFDbkMsT0FBTyxLQUFLLEtBQUssSUFBSSxDQUFDO0lBQ3hCLENBQUM7dUdBWG1CLHdCQUF3QjsyRkFBeEIsd0JBQXdCLGlDQVBqQztZQUNUO2dCQUNFLE9BQU8sRUFBRSx5QkFBeUI7Z0JBQ2xDLFFBQVEsRUFBRSx3QkFBd0I7YUFDbkM7U0FDRjs7MkZBRW1CLHdCQUF3QjtrQkFSN0MsU0FBUzttQkFBQztvQkFDVCxTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLHlCQUF5Qjs0QkFDbEMsUUFBUSwwQkFBMEI7eUJBQ25DO3FCQUNGO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29tcHV0ZWQsIERpcmVjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmR0QmFzZUZvcm1JbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Jhc2UvcmR0LWJhc2UtZm9ybS1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmR0QmFzZVNlbGVjdENvbW1vbkNvbXBvbmVudCB9IGZyb20gJy4vcmR0LWJhc2Utc2VsZWN0LmNvbXBvbmVudCc7XG5cbkBEaXJlY3RpdmUoe1xuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBSZHRCYXNlRm9ybUlucHV0Q29tcG9uZW50LFxuICAgICAgdXNlVmFsdWU6IFJkdFNpbmdsZVNlbGVjdENvbXBvbmVudCxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBSZHRTaW5nbGVTZWxlY3RDb21wb25lbnQ8XG4gIFRJdGVtLFxuICBUSWRcbj4gZXh0ZW5kcyBSZHRCYXNlU2VsZWN0Q29tbW9uQ29tcG9uZW50PFRJdGVtLCBUSWQsIFRJZD4ge1xuICByZWFkb25seSBzZWxlY3RlZCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBpdGVtcyA9IHRoaXMuc3RvcmUuc2VsZWN0ZWRJdGVtcygpO1xuICAgIHJldHVybiBpdGVtcy5sZW5ndGggPiAwID8gaXRlbXNbMF0gOiBudWxsO1xuICB9KTtcblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgaXNFbXB0eSh2YWx1ZTogVElkKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHZhbHVlID09PSBudWxsO1xuICB9XG59XG4iXX0=","import { Directive, input } from '@angular/core';\nimport { RdtBaseFormInputComponent } from '../../base/rdt-base-form-input.component';\nimport { nullToUndefined, nullToUndefinedNumeric, } from '../../utils';\nimport * as i0 from \"@angular/core\";\nexport class RdtTextInputComponent extends RdtBaseFormInputComponent {\n type = input('text');\n autocomplete = input(undefined, {\n transform: nullToUndefined,\n });\n maxlength = input(undefined, { transform: nullToUndefinedNumeric });\n minlength = input(undefined, { transform: nullToUndefinedNumeric });\n pattern = input(undefined, {\n transform: nullToUndefined,\n });\n isEmpty(value) {\n return value === '' || value === null;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtTextInputComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.0\", type: RdtTextInputComponent, isStandalone: true, inputs: { type: { classPropertyName: \"type\", publicName: \"type\", isSignal: true, isRequired: false, transformFunction: null }, autocomplete: { classPropertyName: \"autocomplete\", publicName: \"autocomplete\", isSignal: true, isRequired: false, transformFunction: null }, maxlength: { classPropertyName: \"maxlength\", publicName: \"maxlength\", isSignal: true, isRequired: false, transformFunction: null }, minlength: { classPropertyName: \"minlength\", publicName: \"minlength\", isSignal: true, isRequired: false, transformFunction: null }, pattern: { classPropertyName: \"pattern\", publicName: \"pattern\", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtTextInputComponent, decorators: [{\n type: Directive\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LXRleHQtaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vQG5ncmR0L2Zvcm1zL3NyYy9saWIvaW5wdXRzL3RleHQtaW5wdXQvcmR0LXRleHQtaW5wdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ3JGLE9BQU8sRUFDTCxlQUFlLEVBQ2Ysc0JBQXNCLEdBRXZCLE1BQU0sYUFBYSxDQUFDOztBQUlyQixNQUFNLE9BQWdCLHFCQUFzQixTQUFRLHlCQUduRDtJQUNVLElBQUksR0FBRyxLQUFLLENBQWUsTUFBTSxDQUFDLENBQUM7SUFFbkMsWUFBWSxHQUFHLEtBQUssQ0FHM0IsU0FBUyxFQUFFO1FBQ1gsU0FBUyxFQUFFLGVBQWU7S0FDM0IsQ0FBQyxDQUFDO0lBQ00sU0FBUyxHQUFHLEtBQUssQ0FDeEIsU0FBUyxFQUNULEVBQUUsU0FBUyxFQUFFLHNCQUFzQixFQUFFLENBQ3RDLENBQUM7SUFDTyxTQUFTLEdBQUcsS0FBSyxDQUN4QixTQUFTLEVBQ1QsRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsQ0FDdEMsQ0FBQztJQUNPLE9BQU8sR0FBRyxLQUFLLENBQXFDLFNBQVMsRUFBRTtRQUN0RSxTQUFTLEVBQUUsZUFBZTtLQUMzQixDQUFDLENBQUM7SUFFZ0IsT0FBTyxDQUFDLEtBQW9CO1FBQzdDLE9BQU8sS0FBSyxLQUFLLEVBQUUsSUFBSSxLQUFLLEtBQUssSUFBSSxDQUFDO0lBQ3hDLENBQUM7dUdBMUJtQixxQkFBcUI7MkZBQXJCLHFCQUFxQjs7MkZBQXJCLHFCQUFxQjtrQkFEMUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE51bGxhYmxlIH0gZnJvbSAnQG5ncmR0L3V0aWxzJztcbmltcG9ydCB7IFJkdEJhc2VGb3JtSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9iYXNlL3JkdC1iYXNlLWZvcm0taW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7XG4gIG51bGxUb1VuZGVmaW5lZCxcbiAgbnVsbFRvVW5kZWZpbmVkTnVtZXJpYyxcbiAgUmR0QXV0b2NvbXBsZXRlT3B0aW9ucyxcbn0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgUmR0SW5wdXRUeXBlIH0gZnJvbSAnLi9pbnB1dC10eXBlJztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgUmR0VGV4dElucHV0Q29tcG9uZW50IGV4dGVuZHMgUmR0QmFzZUZvcm1JbnB1dENvbXBvbmVudDxcbiAgc3RyaW5nLFxuICBzdHJpbmdcbj4ge1xuICByZWFkb25seSB0eXBlID0gaW5wdXQ8UmR0SW5wdXRUeXBlPigndGV4dCcpO1xuXG4gIHJlYWRvbmx5IGF1dG9jb21wbGV0ZSA9IGlucHV0PFxuICAgIFJkdEF1dG9jb21wbGV0ZU9wdGlvbnMgfCB1bmRlZmluZWQsXG4gICAgTnVsbGFibGU8UmR0QXV0b2NvbXBsZXRlT3B0aW9ucz5cbiAgPih1bmRlZmluZWQsIHtcbiAgICB0cmFuc2Zvcm06IG51bGxUb1VuZGVmaW5lZCxcbiAgfSk7XG4gIHJlYWRvbmx5IG1heGxlbmd0aCA9IGlucHV0PE51bGxhYmxlPG51bWJlcj4sIE51bGxhYmxlPHN0cmluZyB8IG51bWJlcj4+KFxuICAgIHVuZGVmaW5lZCxcbiAgICB7IHRyYW5zZm9ybTogbnVsbFRvVW5kZWZpbmVkTnVtZXJpYyB9XG4gICk7XG4gIHJlYWRvbmx5IG1pbmxlbmd0aCA9IGlucHV0PE51bGxhYmxlPG51bWJlcj4sIE51bGxhYmxlPHN0cmluZyB8IG51bWJlcj4+KFxuICAgIHVuZGVmaW5lZCxcbiAgICB7IHRyYW5zZm9ybTogbnVsbFRvVW5kZWZpbmVkTnVtZXJpYyB9XG4gICk7XG4gIHJlYWRvbmx5IHBhdHRlcm4gPSBpbnB1dDxOdWxsYWJsZTxzdHJpbmc+LCBOdWxsYWJsZTxzdHJpbmc+Pih1bmRlZmluZWQsIHtcbiAgICB0cmFuc2Zvcm06IG51bGxUb1VuZGVmaW5lZCxcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGlzRW1wdHkodmFsdWU6IHN0cmluZyB8IG51bGwpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdmFsdWUgPT09ICcnIHx8IHZhbHVlID09PSBudWxsO1xuICB9XG59XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdyZHQtZm9ybXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9AbmdyZHQvZm9ybXMvc3JjL25ncmR0LWZvcm1zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ngrdt-forms.mjs","sources":["../tmp-esm2022/lib/base/rdt-base-form-input.component.js","../tmp-esm2022/lib/inputs/checkbox/rdt-checkbox.component.js","../tmp-esm2022/lib/utils/transform.js","../tmp-esm2022/lib/inputs/date/rdt-date.component.js","../tmp-esm2022/lib/inputs/file-input/reader/rdt-file-reader.js","../tmp-esm2022/lib/inputs/file-input/reader/rdt-file-reader-noop.js","../tmp-esm2022/lib/inputs/file-input/reader/rdt-file-reader-base64.js","../tmp-esm2022/lib/inputs/file-input/tokens/rdt-default-file-reader.js","../tmp-esm2022/lib/inputs/file-input/tokens/rdt-default-label-fn.js","../tmp-esm2022/lib/inputs/file-input/tokens/rdt-default-max-file-size.js","../tmp-esm2022/lib/inputs/file-input/rdt-file-input.component.js","../tmp-esm2022/lib/inputs/file-input/reader/rdt-file-reader-array-buffer.js","../tmp-esm2022/lib/inputs/file-input/reader/rdt-file-reader-text.js","../tmp-esm2022/lib/inputs/numeric-input/rdt-numeric-input.component.js","../tmp-esm2022/lib/inputs/select/datasource/rdt-select-datasource.js","../tmp-esm2022/lib/inputs/select/datasource/rdt-offline-select-datasource.js","../tmp-esm2022/lib/inputs/select/state/rdt-select-state.js","../tmp-esm2022/lib/inputs/select/utils/request.js","../tmp-esm2022/lib/inputs/select/state/rdt-select-store.js","../tmp-esm2022/lib/inputs/select/directives/rdt-select-offline-datasource.directive.js","../tmp-esm2022/lib/inputs/select/directives/rdt-select-option.directive.js","../tmp-esm2022/lib/inputs/select/rdt-base-select.component.js","../tmp-esm2022/lib/inputs/select/rdt-multi-select.component.js","../tmp-esm2022/lib/inputs/select/rdt-single-select.component.js","../tmp-esm2022/lib/inputs/text-input/rdt-text-input.component.js","../tmp-esm2022/ngrdt-forms.js"],"sourcesContent":["import { booleanAttribute, computed, Directive, effect, inject, Injector, input, linkedSignal, model, signal, untracked, } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { NgControl, Validators, } from '@angular/forms';\nimport { RdtInteractiveElementComponent } from '@ngrdt/core';\nimport * as i0 from \"@angular/core\";\nconst noop = () => { };\nexport class RdtBaseFormInputComponent extends RdtInteractiveElementComponent {\n injector = inject(Injector);\n _control = signal(null);\n control = this._control.asReadonly();\n label = input('');\n placeholder = input('');\n externalValue = model(null, { alias: 'value' });\n internalValue = linkedSignal(() => this.toInternalValue(this.externalValue()));\n dataTestIdInput = input(undefined, { alias: 'dataTestId' });\n dataTestId = linkedSignal(() => this.dataTestIdInput() ?? this.label() ?? '');\n readonlyInput = input(null, {\n alias: 'readonly',\n transform: booleanAttribute,\n });\n requiredInput = input(null, {\n alias: 'required',\n transform: booleanAttribute,\n });\n requiredFromControl = signal(false);\n required = linkedSignal(() => {\n return this.requiredInput() ?? this.requiredFromControl() ?? false;\n });\n touchedInternal = signal(false);\n touched = computed(() => {\n const control = this.control();\n if (control) {\n return control.touchedReactive();\n }\n else {\n return this.touchedInternal();\n }\n });\n invalid = computed(() => {\n if (this.requiredInput() && this.isEmpty(this.externalValue())) {\n return true;\n }\n const control = this.control();\n if (control) {\n return control.statusReactive() === 'INVALID';\n }\n else {\n return false;\n }\n });\n requiredEffect = effect(() => {\n this.requiredInput();\n this.onValidatorChange();\n });\n requiredError = computed(() => this.getRequiredError(this.externalValue()));\n controlErrors = computed(() => {\n const control = this.control();\n if (control) {\n control.statusReactive();\n return control.errors;\n }\n else {\n return null;\n }\n });\n errors = computed(() => this.controlErrors() ?? this.requiredError());\n visibleErrors = computed(() => this.invalid() && this.touched() ? this.errors() : null);\n get ngControl() {\n return this._ngControl;\n }\n _ngControl = null;\n _onChange = noop;\n _onTouch = noop;\n _onValidatorChange = noop;\n get onChange() {\n return this._onChange;\n }\n get onTouch() {\n return this._onTouch;\n }\n get onValidatorChange() {\n return this._onValidatorChange;\n }\n ngOnInit() {\n this._ngControl = this.injector.get(NgControl, null, {\n self: true,\n optional: true,\n });\n const control = this.ngControl?.control;\n this._control.set(control ?? null);\n if (control) {\n control.events.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(() => {\n this.requiredFromControl.set(control.hasValidator(Validators.required));\n });\n }\n }\n ngOnDestroy() {\n const control = this.control();\n if (this.requiredInput() && control) {\n control.removeValidators(Validators.required);\n control.setErrors(null);\n }\n }\n registerOnChange(fn) {\n this._onChange = fn;\n }\n registerOnTouched(fn) {\n this._onTouch = () => {\n this.touchedInternal.set(true);\n fn();\n };\n }\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n writeValue(value) {\n this.externalValue.set(value);\n }\n // Implemented as a part of Validator.\n validate(control) {\n return this.requiredError();\n }\n registerOnValidatorChange(fn) {\n this._onValidatorChange = fn;\n }\n onInternalValueChange(value) {\n if (value === '') {\n value = null; // Convert empty string to null\n }\n if (value !== untracked(this.internalValue)) {\n const externalValue = this.toExternalValue(value);\n this.externalValue.set(externalValue);\n this.onChange(externalValue);\n }\n }\n toExternalValue(internalValue) {\n return internalValue;\n }\n toInternalValue(externalValue) {\n return externalValue;\n }\n onBlur() {\n super.onBlur();\n Promise.resolve().then(() => {\n this.onTouch();\n this.cd.markForCheck();\n });\n }\n getRequiredError(value) {\n return this.required() && this.isEmpty(value)\n ? RdtBaseFormInputComponent.REQUIRED_ERROR\n : null;\n }\n static REQUIRED_ERROR = { required: true };\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtBaseFormInputComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.0\", type: RdtBaseFormInputComponent, isStandalone: true, inputs: { label: { classPropertyName: \"label\", publicName: \"label\", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: \"placeholder\", publicName: \"placeholder\", isSignal: true, isRequired: false, transformFunction: null }, externalValue: { classPropertyName: \"externalValue\", publicName: \"value\", isSignal: true, isRequired: false, transformFunction: null }, dataTestIdInput: { classPropertyName: \"dataTestIdInput\", publicName: \"dataTestId\", isSignal: true, isRequired: false, transformFunction: null }, readonlyInput: { classPropertyName: \"readonlyInput\", publicName: \"readonly\", isSignal: true, isRequired: false, transformFunction: null }, requiredInput: { classPropertyName: \"requiredInput\", publicName: \"required\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { externalValue: \"valueChange\" }, usesInheritance: true, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtBaseFormInputComponent, decorators: [{\n type: Directive,\n args: [{\n standalone: true,\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWJhc2UtZm9ybS1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9AbmdyZHQvZm9ybXMvc3JjL2xpYi9iYXNlL3JkdC1iYXNlLWZvcm0taW5wdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsUUFBUSxFQUNSLFNBQVMsRUFDVCxNQUFNLEVBQ04sTUFBTSxFQUNOLFFBQVEsRUFDUixLQUFLLEVBQ0wsWUFBWSxFQUNaLEtBQUssRUFJTCxNQUFNLEVBQ04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFHTCxTQUFTLEVBRVQsVUFBVSxHQUNYLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sYUFBYSxDQUFDOztBQUc3RCxNQUFNLElBQUksR0FBRyxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7QUFLdEIsTUFBTSxPQUFnQix5QkFDcEIsU0FBUSw4QkFBOEI7SUFHN0IsUUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUVsQixRQUFRLEdBQUcsTUFBTSxDQUErQixJQUFJLENBQUMsQ0FBQztJQUNoRSxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUVyQyxLQUFLLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ2xCLFdBQVcsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7SUFFeEIsYUFBYSxHQUFHLEtBQUssQ0FBYyxJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUM3RCxhQUFhLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUN6QyxJQUFJLENBQUMsZUFBZSxDQUFD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QUFDO1lBQzVDLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDbEQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDdEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUMvQixDQUFDO0lBQ0gsQ0FBQztJQUVTLGVBQWUsQ0FBQyxhQUEwQjtRQUNsRCxPQUFPLGFBQTRCLENBQUM7SUFDdEMsQ0FBQztJQUVTLGVBQWUsQ0FBQyxhQUEwQjtRQUNsRCxPQUFPLGFBQTRCLENBQUM7SUFDdEMsQ0FBQztJQUVRLE1BQU07UUFDYixLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDZixPQUFPLENBQUMsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUMxQixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDZixJQUFJLENBQUMsRUFBRSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3pCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGdCQUFnQixDQUFDLEtBQWtCO1FBQ3pDLE9BQU8sSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1lBQzNDLENBQUMsQ0FBQyx5QkFBeUIsQ0FBQyxjQUFjO1lBQzFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDWCxDQUFDO0lBRU8sTUFBTSxDQUFVLGNBQWMsR0FBRyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQzt1R0EvTHhDLHlCQUF5QjsyRkFBekIseUJBQXlCOzsyRkFBekIseUJBQXlCO2tCQUg5QyxTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGJvb2xlYW5BdHRyaWJ1dGUsXG4gIGNvbXB1dGVkLFxuICBEaXJlY3RpdmUsXG4gIGVmZmVjdCxcbiAgaW5qZWN0LFxuICBJbmplY3RvcixcbiAgaW5wdXQsXG4gIGxpbmtlZFNpZ25hbCxcbiAgbW9kZWwsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBTaWduYWwsXG4gIHNpZ25hbCxcbiAgdW50cmFja2VkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7XG4gIEFic3RyYWN0Q29udHJvbCxcbiAgQ29udHJvbFZhbHVlQWNjZXNzb3IsXG4gIE5nQ29udHJvbCxcbiAgVmFsaWRhdGlvbkVycm9ycyxcbiAgVmFsaWRhdG9ycyxcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgUmR0SW50ZXJhY3RpdmVFbGVtZW50Q29tcG9uZW50IH0gZnJvbSAnQG5ncmR0L2NvcmUnO1xuaW1wb3J0IHsgTnVsbGFibGUgfSBmcm9tICdAbmdyZHQvdXRpbHMnO1xuXG5jb25zdCBub29wID0gKCkgPT4ge307XG5cbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBSZHRCYXNlRm9ybUlucHV0Q29tcG9uZW50PFRFeHQsIFRJbnQgPSBURXh0PlxuICBleHRlbmRzIFJkdEludGVyYWN0aXZlRWxlbWVudENvbXBvbmVudFxuICBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkluaXQsIE9uRGVzdHJveVxue1xuICByZWFkb25seSBpbmplY3RvciA9IGluamVjdChJbmplY3Rvcik7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IF9jb250cm9sID0gc2lnbmFsPEFic3RyYWN0Q29udHJvbDxURXh0PiB8IG51bGw+KG51bGwpO1xuICByZWFkb25seSBjb250cm9sID0gdGhpcy5fY29udHJvbC5hc1JlYWRvbmx5KCk7XG5cbiAgcmVhZG9ubHkgbGFiZWwgPSBpbnB1dCgnJyk7XG4gIHJlYWRvbmx5IHBsYWNlaG9sZGVyID0gaW5wdXQoJycpO1xuXG4gIHJlYWRvbmx5IGV4dGVybmFsVmFsdWUgPSBtb2RlbDxURXh0IHwgbnVsbD4obnVsbCwgeyBhbGlhczogJ3ZhbHVlJyB9KTtcbiAgcmVhZG9ubHkgaW50ZXJuYWxWYWx1ZSA9IGxpbmtlZFNpZ25hbCgoKSA9PlxuICAgIHRoaXMudG9JbnRlcm5hbFZhbHVlKHRoaXMuZXh0ZXJuYWxWYWx1ZSgpKVxuICApO1xuXG4gIHJlYWRvbmx5IGRhdGFUZXN0SWRJbnB1dCA9IGlucHV0KHVuZGVmaW5lZCwgeyBhbGlhczogJ2RhdGFUZXN0SWQnIH0pO1xuICByZWFkb25seSBkYXRhVGVzdElkID0gbGlua2VkU2lnbmFsKFxuICAgICgpID0+IHRoaXMuZGF0YVRlc3RJZElucHV0KCkgPz8gdGhpcy5sYWJlbCgpID8/ICcnXG4gICk7XG5cbiAgcmVhZG9ubHkgcmVhZG9ubHlJbnB1dCA9IGlucHV0PFxuICAgIGJvb2xlYW4gfCBudWxsLFxuICAgIE51bGxhYmxlPGJvb2xlYW4gfCBzdHJpbmcgfCBudW1iZXI+XG4gID4obnVsbCwge1xuICAgIGFsaWFzOiAncmVhZG9ubHknLFxuICAgIHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSxcbiAgfSk7XG5cbiAgcmVhZG9ubHkgcmVxdWlyZWRJbnB1dCA9IGlucHV0PFxuICAgIE51bGxhYmxlPGJvb2xlYW4+LFxuICAgIE51bGxhYmxlPGJvb2xlYW4gfCBzdHJpbmcgfCBudW1iZXI+XG4gID4obnVsbCwge1xuICAgIGFsaWFzOiAncmVxdWlyZWQnLFxuICAgIHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSxcbiAgfSk7XG4gIHByb3RlY3RlZCByZWFkb25seSByZXF1aXJlZEZyb21Db250cm9sID0gc2lnbmFsKGZhbHNlKTtcbiAgcmVhZG9ubHkgcmVxdWlyZWQgPSBsaW5rZWRTaWduYWwoKCkgPT4ge1xuICAgIHJldHVybiB0aGlzLnJlcXVpcmVkSW5wdXQoKSA/PyB0aGlzLnJlcXVpcmVkRnJvbUNvbnRyb2woKSA/PyBmYWxzZTtcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHRvdWNoZWRJbnRlcm5hbCA9IHNpZ25hbChmYWxzZSk7XG4gIHJlYWRvbmx5IHRvdWNoZWQgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgY29udHJvbCA9IHRoaXMuY29udHJvbCgpIGFzIGFueTtcbiAgICBpZiAoY29udHJvbCkge1xuICAgICAgcmV0dXJuIGNvbnRyb2wudG91Y2hlZFJlYWN0aXZlKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLnRvdWNoZWRJbnRlcm5hbCgpO1xuICAgIH1cbiAgfSk7XG4gIHJlYWRvbmx5IGludmFsaWQgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgaWYgKHRoaXMucmVxdWlyZWRJbnB1dCgpICYmIHRoaXMuaXNFbXB0eSh0aGlzLmV4dGVybmFsVmFsdWUoKSkpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICBjb25zdCBjb250cm9sID0gdGhpcy5jb250cm9sKCkgYXMgYW55O1xuICAgIGlmIChjb250cm9sKSB7XG4gICAgICByZXR1cm4gY29udHJvbC5zdGF0dXNSZWFjdGl2ZSgpID09PSAnSU5WQUxJRCc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH0pO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSByZXF1aXJlZEVmZmVjdCA9IGVmZmVjdCgoKSA9PiB7XG4gICAgdGhpcy5yZXF1aXJlZElucHV0KCk7XG4gICAgdGhpcy5vblZhbGlkYXRvckNoYW5nZSgpO1xuICB9KTtcblxuICBwcml2YXRlIHJlYWRvbmx5IHJlcXVpcmVkRXJyb3IgPSBjb21wdXRlZCgoKSA9PlxuICAgIHRoaXMuZ2V0UmVxdWlyZWRFcnJvcih0aGlzLmV4dGVybmFsVmFsdWUoKSlcbiAgKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IGNvbnRyb2xFcnJvcnMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgY29udHJvbCA9IHRoaXMuY29udHJvbCgpO1xuICAgIGlmIChjb250cm9sKSB7XG4gICAgICAoY29udHJvbCBhcyBhbnkpLnN0YXR1c1JlYWN0aXZlKCk7XG4gICAgICByZXR1cm4gY29udHJvbC5lcnJvcnM7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgfSk7XG4gIHJlYWRvbmx5IGVycm9ycyA9IGNvbXB1dGVkKFxuICAgICgpID0+IHRoaXMuY29udHJvbEVycm9ycygpID8/IHRoaXMucmVxdWlyZWRFcnJvcigpXG4gICk7XG4gIHJlYWRvbmx5IHZpc2libGVFcnJvcnM6IFNpZ25hbDxWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbD4gPSBjb21wdXRlZCgoKSA9PlxuICAgIHRoaXMuaW52YWxpZCgpICYmIHRoaXMudG91Y2hlZCgpID8gdGhpcy5lcnJvcnMoKSA6IG51bGxcbiAgKTtcblxuICBnZXQgbmdDb250cm9sKCkge1xuICAgIHJldHVybiB0aGlzLl9uZ0NvbnRyb2w7XG4gIH1cbiAgcHJpdmF0ZSBfbmdDb250cm9sOiBOZ0NvbnRyb2wgfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIF9vbkNoYW5nZTogKHZhbHVlOiBhbnkpID0+IHZvaWQgPSBub29wO1xuICBwcml2YXRlIF9vblRvdWNoOiAoKSA9PiB2b2lkID0gbm9vcDtcbiAgcHJpdmF0ZSBfb25WYWxpZGF0b3JDaGFuZ2U6ICgpID0+IHZvaWQgPSBub29wO1xuXG4gIGdldCBvbkNoYW5nZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fb25DaGFuZ2U7XG4gIH1cblxuICBnZXQgb25Ub3VjaCgpIHtcbiAgICByZXR1cm4gdGhpcy5fb25Ub3VjaDtcbiAgfVxuXG4gIGdldCBvblZhbGlkYXRvckNoYW5nZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fb25WYWxpZGF0b3JDaGFuZ2U7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLl9uZ0NvbnRyb2wgPSB0aGlzLmluamVjdG9yLmdldChOZ0NvbnRyb2wsIG51bGwsIHtcbiAgICAgIHNlbGY6IHRydWUsXG4gICAgICBvcHRpb25hbDogdHJ1ZSxcbiAgICB9KTtcbiAgICBjb25zdCBjb250cm9sID0gdGhpcy5uZ0NvbnRyb2w/LmNvbnRyb2w7XG4gICAgdGhpcy5fY29udHJvbC5zZXQoY29udHJvbCA/PyBudWxsKTtcbiAgICBpZiAoY29udHJvbCkge1xuICAgICAgY29udHJvbC5ldmVudHMucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5yZXF1aXJlZEZyb21Db250cm9sLnNldChjb250cm9sLmhhc1ZhbGlkYXRvcihWYWxpZGF0b3JzLnJlcXVpcmVkKSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICBjb25zdCBjb250cm9sID0gdGhpcy5jb250cm9sKCk7XG4gICAgaWYgKHRoaXMucmVxdWlyZWRJbnB1dCgpICYmIGNvbnRyb2wpIHtcbiAgICAgIGNvbnRyb2wucmVtb3ZlVmFsaWRhdG9ycyhWYWxpZGF0b3JzLnJlcXVpcmVkKTtcbiAgICAgIGNvbnRyb2wuc2V0RXJyb3JzKG51bGwpO1xuICAgIH1cbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMuX29uQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMuX29uVG91Y2ggPSAoKSA9PiB7XG4gICAgICB0aGlzLnRvdWNoZWRJbnRlcm5hbC5zZXQodHJ1ZSk7XG4gICAgICBmbigpO1xuICAgIH07XG4gIH1cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xuICAgIHRoaXMuZXh0ZXJuYWxWYWx1ZS5zZXQodmFsdWUpO1xuICB9XG5cbiAgLy8gSW1wbGVtZW50ZWQgYXMgYSBwYXJ0IG9mIFZhbGlkYXRvci5cbiAgdmFsaWRhdGUoY29udHJvbDogQWJzdHJhY3RDb250cm9sPFRFeHQ+KTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLnJlcXVpcmVkRXJyb3IoKTtcbiAgfVxuXG4gIHJlZ2lzdGVyT25WYWxpZGF0b3JDaGFuZ2UoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLl9vblZhbGlkYXRvckNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGlzRW1wdHkodmFsdWU6IFRFeHQgfCBudWxsKTogYm9vbGVhbjtcblxuICBvbkludGVybmFsVmFsdWVDaGFuZ2UodmFsdWU6IFRJbnQgfCBudWxsKSB7XG4gICAgaWYgKHZhbHVlID09PSAnJykge1xuICAgICAgdmFsdWUgPSBudWxsOyAvLyBDb252ZXJ0IGVtcHR5IHN0cmluZyB0byBudWxsXG4gICAgfVxuICAgIGlmICh2YWx1ZSAhPT0gdW50cmFja2VkKHRoaXMuaW50ZXJuYWxWYWx1ZSkpIHtcbiAgICAgIGNvbnN0IGV4dGVybmFsVmFsdWUgPSB0aGlzLnRvRXh0ZXJuYWxWYWx1ZSh2YWx1ZSk7XG4gICAgICB0aGlzLmV4dGVybmFsVmFsdWUuc2V0KGV4dGVybmFsVmFsdWUpO1xuICAgICAgdGhpcy5vbkNoYW5nZShleHRlcm5hbFZhbHVlKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgdG9FeHRlcm5hbFZhbHVlKGludGVybmFsVmFsdWU6IFRJbnQgfCBudWxsKTogVEV4dCB8IG51bGwge1xuICAgIHJldHVybiBpbnRlcm5hbFZhbHVlIGFzIFRFeHQgfCBudWxsO1xuICB9XG5cbiAgcHJvdGVjdGVkIHRvSW50ZXJuYWxWYWx1ZShleHRlcm5hbFZhbHVlOiBURXh0IHwgbnVsbCk6IFRJbnQgfCBudWxsIHtcbiAgICByZXR1cm4gZXh0ZXJuYWxWYWx1ZSBhcyBUSW50IHwgbnVsbDtcbiAgfVxuXG4gIG92ZXJyaWRlIG9uQmx1cigpIHtcbiAgICBzdXBlci5vbkJsdXIoKTtcbiAgICBQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpID0+IHtcbiAgICAgIHRoaXMub25Ub3VjaCgpO1xuICAgICAgdGhpcy5jZC5tYXJrRm9yQ2hlY2soKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0UmVxdWlyZWRFcnJvcih2YWx1ZTogVEV4dCB8IG51bGwpIHtcbiAgICByZXR1cm4gdGhpcy5yZXF1aXJlZCgpICYmIHRoaXMuaXNFbXB0eSh2YWx1ZSlcbiAgICAgID8gUmR0QmFzZUZvcm1JbnB1dENvbXBvbmVudC5SRVFVSVJFRF9FUlJPUlxuICAgICAgOiBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgcmVhZG9ubHkgUkVRVUlSRURfRVJST1IgPSB7IHJlcXVpcmVkOiB0cnVlIH07XG59XG4iXX0=","import { booleanAttribute, Directive, input, linkedSignal, } from '@angular/core';\nimport { RdtBaseFormInputComponent } from '../../base/rdt-base-form-input.component';\nimport * as i0 from \"@angular/core\";\nexport class RdtCheckboxComponent extends RdtBaseFormInputComponent {\n trueValueInput = input(true, {\n alias: 'trueValue',\n });\n trueValue = linkedSignal(() => this.trueValueInput());\n falseValueInput = input(false, {\n alias: 'falseValue',\n });\n falseValue = linkedSignal(() => this.falseValueInput());\n indeterminate = input(false, { transform: booleanAttribute });\n toExternalValue(internalValue) {\n switch (internalValue) {\n case true:\n return this.trueValue();\n case false:\n return this.falseValue();\n default:\n return null;\n }\n }\n toInternalValue(externalValue) {\n switch (externalValue) {\n case this.trueValue():\n return true;\n case this.falseValue():\n return false;\n default:\n return null;\n }\n }\n isEmpty(value) {\n return value === null;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtCheckboxComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.0\", type: RdtCheckboxComponent, isStandalone: true, inputs: { trueValueInput: { classPropertyName: \"trueValueInput\", publicName: \"trueValue\", isSignal: true, isRequired: false, transformFunction: null }, falseValueInput: { classPropertyName: \"falseValueInput\", publicName: \"falseValue\", isSignal: true, isRequired: false, transformFunction: null }, indeterminate: { classPropertyName: \"indeterminate\", publicName: \"indeterminate\", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtCheckboxComponent, decorators: [{\n type: Directive\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWNoZWNrYm94LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL0BuZ3JkdC9mb3Jtcy9zcmMvbGliL2lucHV0cy9jaGVja2JveC9yZHQtY2hlY2tib3guY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsU0FBUyxFQUNULEtBQUssRUFDTCxZQUFZLEdBQ2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sMENBQTBDLENBQUM7O0FBR3JGLE1BQU0sT0FBZ0Isb0JBR3BCLFNBQVEseUJBQWtEO0lBQ2pELGNBQWMsR0FBRyxLQUFLLENBQVEsSUFBYSxFQUFFO1FBQ3BELEtBQUssRUFBRSxXQUFXO0tBQ25CLENBQUMsQ0FBQztJQUNNLFNBQVMsR0FBRyxZQUFZLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUM7SUFDdEQsZUFBZSxHQUFHLEtBQUssQ0FBUyxLQUFlLEVBQUU7UUFDeEQsS0FBSyxFQUFFLFlBQVk7S0FDcEIsQ0FBQyxDQUFDO0lBQ00sVUFBVSxHQUFHLFlBQVksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUMsQ0FBQztJQUV4RCxhQUFhLEdBQUcsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxDQUFDLENBQUM7SUFFcEQsZUFBZSxDQUNoQyxhQUE2QjtRQUU3QixRQUFRLGFBQWEsRUFBRSxDQUFDO1lBQ3RCLEtBQUssSUFBSTtnQkFDUCxPQUFPLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUMxQixLQUFLLEtBQUs7Z0JBQ1IsT0FBTyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDM0I7Z0JBQ0UsT0FBTyxJQUFJLENBQUM7UUFDaEIsQ0FBQztJQUNILENBQUM7SUFFa0IsZUFBZSxDQUNoQyxhQUFvQztRQUVwQyxRQUFRLGFBQWEsRUFBRSxDQUFDO1lBQ3RCLEtBQUssSUFBSSxDQUFDLFNBQVMsRUFBRTtnQkFDbkIsT0FBTyxJQUFJLENBQUM7WUFDZCxLQUFLLElBQUksQ0FBQyxVQUFVLEVBQUU7Z0JBQ3BCLE9BQU8sS0FBSyxDQUFDO1lBQ2Y7Z0JBQ0UsT0FBTyxJQUFJLENBQUM7UUFDaEIsQ0FBQztJQUNILENBQUM7SUFFa0IsT0FBTyxDQUFDLEtBQTRCO1FBQ3JELE9BQU8sS0FBSyxLQUFLLElBQUksQ0FBQztJQUN4QixDQUFDO3VHQTNDbUIsb0JBQW9COzJGQUFwQixvQkFBb0I7OzJGQUFwQixvQkFBb0I7a0JBRHpDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBib29sZWFuQXR0cmlidXRlLFxuICBEaXJlY3RpdmUsXG4gIGlucHV0LFxuICBsaW5rZWRTaWduYWwsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmR0QmFzZUZvcm1JbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Jhc2UvcmR0LWJhc2UtZm9ybS1pbnB1dC5jb21wb25lbnQnO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBSZHRDaGVja2JveENvbXBvbmVudDxcbiAgVFRydWUgPSB0cnVlLFxuICBURmFsc2UgPSBmYWxzZVxuPiBleHRlbmRzIFJkdEJhc2VGb3JtSW5wdXRDb21wb25lbnQ8VFRydWUgfCBURmFsc2UsIGJvb2xlYW4+IHtcbiAgcmVhZG9ubHkgdHJ1ZVZhbHVlSW5wdXQgPSBpbnB1dDxUVHJ1ZT4odHJ1ZSBhcyBUVHJ1ZSwge1xuICAgIGFsaWFzOiAndHJ1ZVZhbHVlJyxcbiAgfSk7XG4gIHJlYWRvbmx5IHRydWVWYWx1ZSA9IGxpbmtlZFNpZ25hbCgoKSA9PiB0aGlzLnRydWVWYWx1ZUlucHV0KCkpO1xuICByZWFkb25seSBmYWxzZVZhbHVlSW5wdXQgPSBpbnB1dDxURmFsc2U+KGZhbHNlIGFzIFRGYWxzZSwge1xuICAgIGFsaWFzOiAnZmFsc2VWYWx1ZScsXG4gIH0pO1xuICByZWFkb25seSBmYWxzZVZhbHVlID0gbGlua2VkU2lnbmFsKCgpID0+IHRoaXMuZmFsc2VWYWx1ZUlucHV0KCkpO1xuXG4gIHJlYWRvbmx5IGluZGV0ZXJtaW5hdGUgPSBpbnB1dChmYWxzZSwgeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSk7XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHRvRXh0ZXJuYWxWYWx1ZShcbiAgICBpbnRlcm5hbFZhbHVlOiBib29sZWFuIHwgbnVsbFxuICApOiBUVHJ1ZSB8IFRGYWxzZSB8IG51bGwge1xuICAgIHN3aXRjaCAoaW50ZXJuYWxWYWx1ZSkge1xuICAgICAgY2FzZSB0cnVlOlxuICAgICAgICByZXR1cm4gdGhpcy50cnVlVmFsdWUoKTtcbiAgICAgIGNhc2UgZmFsc2U6XG4gICAgICAgIHJldHVybiB0aGlzLmZhbHNlVmFsdWUoKTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSB0b0ludGVybmFsVmFsdWUoXG4gICAgZXh0ZXJuYWxWYWx1ZTogVFRydWUgfCBURmFsc2UgfCBudWxsXG4gICk6IGJvb2xlYW4gfCBudWxsIHtcbiAgICBzd2l0Y2ggKGV4dGVybmFsVmFsdWUpIHtcbiAgICAgIGNhc2UgdGhpcy50cnVlVmFsdWUoKTpcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICBjYXNlIHRoaXMuZmFsc2VWYWx1ZSgpOlxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgaXNFbXB0eSh2YWx1ZTogVFRydWUgfCBURmFsc2UgfCBudWxsKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHZhbHVlID09PSBudWxsO1xuICB9XG59XG4iXX0=","import { numberAttribute } from '@angular/core';\nexport function nullToUndefined(value) {\n return value === null ? undefined : value;\n}\nexport function nullToUndefinedNumeric(value) {\n return numberAttribute(value, undefined);\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmb3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vQG5ncmR0L2Zvcm1zL3NyYy9saWIvdXRpbHMvdHJhbnNmb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHaEQsTUFBTSxVQUFVLGVBQWUsQ0FBSSxLQUFrQjtJQUNuRCxPQUFPLEtBQUssS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0FBQzVDLENBQUM7QUFFRCxNQUFNLFVBQVUsc0JBQXNCLENBQUMsS0FBZ0M7SUFDckUsT0FBTyxlQUFlLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBQzNDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBudW1iZXJBdHRyaWJ1dGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE51bGxhYmxlIH0gZnJvbSAnQG5ncmR0L3V0aWxzJztcblxuZXhwb3J0IGZ1bmN0aW9uIG51bGxUb1VuZGVmaW5lZDxUPih2YWx1ZTogTnVsbGFibGU8VD4pOiBUIHwgdW5kZWZpbmVkIHtcbiAgcmV0dXJuIHZhbHVlID09PSBudWxsID8gdW5kZWZpbmVkIDogdmFsdWU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBudWxsVG9VbmRlZmluZWROdW1lcmljKHZhbHVlOiBOdWxsYWJsZTxudW1iZXIgfCBzdHJpbmc+KSB7XG4gIHJldHVybiBudW1iZXJBdHRyaWJ1dGUodmFsdWUsIHVuZGVmaW5lZCk7XG59XG4iXX0=","import { Directive, input, linkedSignal } from '@angular/core';\nimport { RdtBaseFormInputComponent } from '../../base/rdt-base-form-input.component';\nimport { nullToUndefined } from '../../utils';\nimport * as i0 from \"@angular/core\";\nexport class RdtDateComponent extends RdtBaseFormInputComponent {\n type = input('date');\n minInput = input(undefined, {\n transform: nullToUndefined,\n });\n min = linkedSignal(() => {\n const minInput = this.minInput();\n return minInput ? this.toInternalValue(minInput) : null;\n });\n maxInput = input(undefined, {\n transform: nullToUndefined,\n });\n max = linkedSignal(() => {\n const maxInput = this.maxInput();\n return maxInput ? this.toInternalValue(maxInput) : null;\n });\n isEmpty(value) {\n return value === null;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtDateComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.0\", type: RdtDateComponent, isStandalone: true, inputs: { type: { classPropertyName: \"type\", publicName: \"type\", isSignal: true, isRequired: false, transformFunction: null }, minInput: { classPropertyName: \"minInput\", publicName: \"minInput\", isSignal: true, isRequired: false, transformFunction: null }, maxInput: { classPropertyName: \"maxInput\", publicName: \"maxInput\", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtDateComponent, decorators: [{\n type: Directive\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWRhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vQG5ncmR0L2Zvcm1zL3NyYy9saWIvaW5wdXRzL2RhdGUvcmR0LWRhdGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvRCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUNyRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQUk5QyxNQUFNLE9BQWdCLGdCQUdwQixTQUFRLHlCQUFxQztJQUNwQyxJQUFJLEdBQUcsS0FBSyxDQUFjLE1BQU0sQ0FBQyxDQUFDO0lBRWxDLFFBQVEsR0FBRyxLQUFLLENBQThCLFNBQVMsRUFBRTtRQUNoRSxTQUFTLEVBQUUsZUFBZTtLQUMzQixDQUFDLENBQUM7SUFDTSxHQUFHLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRTtRQUMvQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakMsT0FBTyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUMxRCxDQUFDLENBQUMsQ0FBQztJQUVNLFFBQVEsR0FBRyxLQUFLLENBQThCLFNBQVMsRUFBRTtRQUNoRSxTQUFTLEVBQUUsZUFBZTtLQUMzQixDQUFDLENBQUM7SUFDTSxHQUFHLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRTtRQUMvQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakMsT0FBTyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUMxRCxDQUFDLENBQUMsQ0FBQztJQUVnQixPQUFPLENBQUMsS0FBa0I7UUFDM0MsT0FBTyxLQUFLLEtBQUssSUFBSSxDQUFDO0lBQ3hCLENBQUM7dUdBeEJtQixnQkFBZ0I7MkZBQWhCLGdCQUFnQjs7MkZBQWhCLGdCQUFnQjtrQkFEckMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgaW5wdXQsIGxpbmtlZFNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTnVsbGFibGUgfSBmcm9tICdAbmdyZHQvdXRpbHMnO1xuaW1wb3J0IHsgUmR0QmFzZUZvcm1JbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Jhc2UvcmR0LWJhc2UtZm9ybS1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgbnVsbFRvVW5kZWZpbmVkIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgUmR0RGF0ZVR5cGUgfSBmcm9tICcuL2RhdGUtdHlwZSc7XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFJkdERhdGVDb21wb25lbnQ8XG4gIFRFeHQgPSBzdHJpbmcsXG4gIFRJbnQgPSBURXh0XG4+IGV4dGVuZHMgUmR0QmFzZUZvcm1JbnB1dENvbXBvbmVudDxURXh0LCBUSW50PiB7XG4gIHJlYWRvbmx5IHR5cGUgPSBpbnB1dDxSZHREYXRlVHlwZT4oJ2RhdGUnKTtcblxuICByZWFkb25seSBtaW5JbnB1dCA9IGlucHV0PE51bGxhYmxlPFRFeHQ+LCBURXh0IHwgbnVsbD4odW5kZWZpbmVkLCB7XG4gICAgdHJhbnNmb3JtOiBudWxsVG9VbmRlZmluZWQsXG4gIH0pO1xuICByZWFkb25seSBtaW4gPSBsaW5rZWRTaWduYWwoKCkgPT4ge1xuICAgIGNvbnN0IG1pbklucHV0ID0gdGhpcy5taW5JbnB1dCgpO1xuICAgIHJldHVybiBtaW5JbnB1dCA/IHRoaXMudG9JbnRlcm5hbFZhbHVlKG1pbklucHV0KSA6IG51bGw7XG4gIH0pO1xuXG4gIHJlYWRvbmx5IG1heElucHV0ID0gaW5wdXQ8TnVsbGFibGU8VEV4dD4sIFRFeHQgfCBudWxsPih1bmRlZmluZWQsIHtcbiAgICB0cmFuc2Zvcm06IG51bGxUb1VuZGVmaW5lZCxcbiAgfSk7XG4gIHJlYWRvbmx5IG1heCA9IGxpbmtlZFNpZ25hbCgoKSA9PiB7XG4gICAgY29uc3QgbWF4SW5wdXQgPSB0aGlzLm1heElucHV0KCk7XG4gICAgcmV0dXJuIG1heElucHV0ID8gdGhpcy50b0ludGVybmFsVmFsdWUobWF4SW5wdXQpIDogbnVsbDtcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGlzRW1wdHkodmFsdWU6IFRFeHQgfCBudWxsKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHZhbHVlID09PSBudWxsO1xuICB9XG59XG4iXX0=","import { forkJoin, map, take } from 'rxjs';\nexport class RdtFileReader {\n read(file) {\n return this.extractData(file).pipe(take(1), map((content) => ({\n fileName: file.name,\n content,\n size: file.size,\n mimeType: file.type ?? undefined,\n modified: isNaN(file.lastModified)\n ? undefined\n : new Date(file.lastModified),\n originalFile: file,\n })));\n }\n readAll(files) {\n return forkJoin(files.map((file) => this.read(file)));\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWZpbGUtcmVhZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vQG5ncmR0L2Zvcm1zL3NyYy9saWIvaW5wdXRzL2ZpbGUtaW5wdXQvcmVhZGVyL3JkdC1maWxlLXJlYWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBYyxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdkQsTUFBTSxPQUFnQixhQUFhO0lBRWpDLElBQUksQ0FBQyxJQUFVO1FBQ2IsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FDaEMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUNQLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztZQUNoQixRQUFRLEVBQUUsSUFBSSxDQUFDLElBQUk7WUFDbkIsT0FBTztZQUNQLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLFFBQVEsRUFBRyxJQUFJLENBQUMsSUFBb0IsSUFBSSxTQUFTO1lBQ2pELFFBQVEsRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQztnQkFDaEMsQ0FBQyxDQUFDLFNBQVM7Z0JBQ1gsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUM7WUFDL0IsWUFBWSxFQUFFLElBQUk7U0FDbkIsQ0FBQyxDQUFDLENBQ0osQ0FBQztJQUNKLENBQUM7SUFDRCxPQUFPLENBQUMsS0FBYTtRQUNuQixPQUFPLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN4RCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZHRGaWxlLCBSZHRNaW1lVHlwZSB9IGZyb20gJ0BuZ3JkdC91dGlscyc7XG5pbXBvcnQgeyBmb3JrSm9pbiwgbWFwLCBPYnNlcnZhYmxlLCB0YWtlIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBSZHRGaWxlUmVhZGVyPFQ+IHtcbiAgYWJzdHJhY3QgZXh0cmFjdERhdGEoZmlsZXM6IEZpbGUpOiBPYnNlcnZhYmxlPFQ+O1xuICByZWFkKGZpbGU6IEZpbGUpOiBPYnNlcnZhYmxlPFJkdEZpbGU8VD4+IHtcbiAgICByZXR1cm4gdGhpcy5leHRyYWN0RGF0YShmaWxlKS5waXBlKFxuICAgICAgdGFrZSgxKSxcbiAgICAgIG1hcCgoY29udGVudCkgPT4gKHtcbiAgICAgICAgZmlsZU5hbWU6IGZpbGUubmFtZSxcbiAgICAgICAgY29udGVudCxcbiAgICAgICAgc2l6ZTogZmlsZS5zaXplLFxuICAgICAgICBtaW1lVHlwZTogKGZpbGUudHlwZSBhcyBSZHRNaW1lVHlwZSkgPz8gdW5kZWZpbmVkLFxuICAgICAgICBtb2RpZmllZDogaXNOYU4oZmlsZS5sYXN0TW9kaWZpZWQpXG4gICAgICAgICAgPyB1bmRlZmluZWRcbiAgICAgICAgICA6IG5ldyBEYXRlKGZpbGUubGFzdE1vZGlmaWVkKSxcbiAgICAgICAgb3JpZ2luYWxGaWxlOiBmaWxlLFxuICAgICAgfSkpXG4gICAgKTtcbiAgfVxuICByZWFkQWxsKGZpbGVzOiBGaWxlW10pOiBPYnNlcnZhYmxlPFJkdEZpbGU8VD5bXT4ge1xuICAgIHJldHVybiBmb3JrSm9pbihmaWxlcy5tYXAoKGZpbGUpID0+IHRoaXMucmVhZChmaWxlKSkpO1xuICB9XG59XG4iXX0=","import { of } from 'rxjs';\nimport { RdtFileReader } from './rdt-file-reader';\nexport class NoOpFileReader extends RdtFileReader {\n extractData() {\n return of(undefined);\n }\n}\nexport const NO_OP_FILE_READER = new NoOpFileReader();\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWZpbGUtcmVhZGVyLW5vb3AuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9AbmdyZHQvZm9ybXMvc3JjL2xpYi9pbnB1dHMvZmlsZS1pbnB1dC9yZWFkZXIvcmR0LWZpbGUtcmVhZGVyLW5vb3AudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxQixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbEQsTUFBTSxPQUFPLGNBQWUsU0FBUSxhQUFtQjtJQUNyRCxXQUFXO1FBQ1QsT0FBTyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdkIsQ0FBQztDQUNGO0FBRUQsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxjQUFjLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBSZHRGaWxlUmVhZGVyIH0gZnJvbSAnLi9yZHQtZmlsZS1yZWFkZXInO1xuXG5leHBvcnQgY2xhc3MgTm9PcEZpbGVSZWFkZXIgZXh0ZW5kcyBSZHRGaWxlUmVhZGVyPHZvaWQ+IHtcbiAgZXh0cmFjdERhdGEoKSB7XG4gICAgcmV0dXJuIG9mKHVuZGVmaW5lZCk7XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IE5PX09QX0ZJTEVfUkVBREVSID0gbmV3IE5vT3BGaWxlUmVhZGVyKCk7XG4iXX0=","import { RdtFileUtils } from '@ngrdt/utils';\nimport { from } from 'rxjs';\nimport { RdtFileReader } from './rdt-file-reader';\nexport class RdtFileReaderBase64 extends RdtFileReader {\n removeDataPrefix;\n constructor(removeDataPrefix = false) {\n super();\n this.removeDataPrefix = removeDataPrefix;\n }\n extractData(file) {\n let promise = RdtFileUtils.blobToDataUrl(file);\n if (this.removeDataPrefix) {\n promise = promise.then((dataUrl) => dataUrl.substring(dataUrl.indexOf(',') + 1));\n }\n return from(promise);\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWZpbGUtcmVhZGVyLWJhc2U2NC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL0BuZ3JkdC9mb3Jtcy9zcmMvbGliL2lucHV0cy9maWxlLWlucHV0L3JlYWRlci9yZHQtZmlsZS1yZWFkZXItYmFzZTY0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDNUMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM1QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbEQsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGFBQXFCO0lBQ3hDO0lBQXBCLFlBQW9CLG1CQUFtQixLQUFLO1FBQzFDLEtBQUssRUFBRSxDQUFDO1FBRFUscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFRO0lBRTVDLENBQUM7SUFFRCxXQUFXLENBQUMsSUFBVTtRQUNwQixJQUFJLE9BQU8sR0FBRyxZQUFZLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQy9DLElBQUksSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDMUIsT0FBTyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUNqQyxPQUFPLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQzVDLENBQUM7UUFDSixDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDdkIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmR0RmlsZVV0aWxzIH0gZnJvbSAnQG5ncmR0L3V0aWxzJztcbmltcG9ydCB7IGZyb20gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFJkdEZpbGVSZWFkZXIgfSBmcm9tICcuL3JkdC1maWxlLXJlYWRlcic7XG5cbmV4cG9ydCBjbGFzcyBSZHRGaWxlUmVhZGVyQmFzZTY0IGV4dGVuZHMgUmR0RmlsZVJlYWRlcjxzdHJpbmc+IHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZW1vdmVEYXRhUHJlZml4ID0gZmFsc2UpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgZXh0cmFjdERhdGEoZmlsZTogRmlsZSkge1xuICAgIGxldCBwcm9taXNlID0gUmR0RmlsZVV0aWxzLmJsb2JUb0RhdGFVcmwoZmlsZSk7XG4gICAgaWYgKHRoaXMucmVtb3ZlRGF0YVByZWZpeCkge1xuICAgICAgcHJvbWlzZSA9IHByb21pc2UudGhlbigoZGF0YVVybCkgPT5cbiAgICAgICAgZGF0YVVybC5zdWJzdHJpbmcoZGF0YVVybC5pbmRleE9mKCcsJykgKyAxKVxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIGZyb20ocHJvbWlzZSk7XG4gIH1cbn1cbiJdfQ==","import { InjectionToken } from '@angular/core';\nimport { RdtFileReaderBase64 } from '../reader/rdt-file-reader-base64';\nexport const RDT_DEFAULT_FILE_READER = new InjectionToken('RDT_DEFAULT_FILE_READER', {\n factory: () => new RdtFileReaderBase64(),\n providedIn: 'root',\n});\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWRlZmF1bHQtZmlsZS1yZWFkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9AbmdyZHQvZm9ybXMvc3JjL2xpYi9pbnB1dHMvZmlsZS1pbnB1dC90b2tlbnMvcmR0LWRlZmF1bHQtZmlsZS1yZWFkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUV2RSxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxJQUFJLGNBQWMsQ0FFdkQseUJBQXlCLEVBQUU7SUFDM0IsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksbUJBQW1CLEVBQUU7SUFDeEMsVUFBVSxFQUFFLE1BQU07Q0FDbkIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJkdEZpbGVSZWFkZXIgfSBmcm9tICcuLi9yZWFkZXIvcmR0LWZpbGUtcmVhZGVyJztcbmltcG9ydCB7IFJkdEZpbGVSZWFkZXJCYXNlNjQgfSBmcm9tICcuLi9yZWFkZXIvcmR0LWZpbGUtcmVhZGVyLWJhc2U2NCc7XG5cbmV4cG9ydCBjb25zdCBSRFRfREVGQVVMVF9GSUxFX1JFQURFUiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxcbiAgUmR0RmlsZVJlYWRlcjx1bmtub3duPlxuPignUkRUX0RFRkFVTFRfRklMRV9SRUFERVInLCB7XG4gIGZhY3Rvcnk6ICgpID0+IG5ldyBSZHRGaWxlUmVhZGVyQmFzZTY0KCksXG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pO1xuIl19","import { InjectionToken } from '@angular/core';\nexport function czechFileLabelFn(files) {\n switch (files.length) {\n case 0:\n return 'Vyberte soubor';\n case 1:\n return files[0].fileName;\n case 2:\n case 3:\n case 4:\n return `Vybrány ${files.length} soubory`;\n default:\n return `Vybráno ${files.length} souborů`;\n }\n}\nexport const RDT_DEFAULT_FILE_LABEL_FN = new InjectionToken('RDT_DEFAULT_FILE_LABEL_FN', {\n providedIn: 'root',\n factory: () => czechFileLabelFn,\n});\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWRlZmF1bHQtbGFiZWwtZm4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9AbmdyZHQvZm9ybXMvc3JjL2xpYi9pbnB1dHMvZmlsZS1pbnB1dC90b2tlbnMvcmR0LWRlZmF1bHQtbGFiZWwtZm4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcvQyxNQUFNLFVBQVUsZ0JBQWdCLENBQUMsS0FBZ0I7SUFDL0MsUUFBUSxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDckIsS0FBSyxDQUFDO1lBQ0osT0FBTyxnQkFBZ0IsQ0FBQztRQUMxQixLQUFLLENBQUM7WUFDSixPQUFPLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUM7UUFDM0IsS0FBSyxDQUFDLENBQUM7UUFDUCxLQUFLLENBQUMsQ0FBQztRQUNQLEtBQUssQ0FBQztZQUNKLE9BQU8sV0FBVyxLQUFLLENBQUMsTUFBTSxVQUFVLENBQUM7UUFDM0M7WUFDRSxPQUFPLFdBQVcsS0FBSyxDQUFDLE1BQU0sVUFBVSxDQUFDO0lBQzdDLENBQUM7QUFDSCxDQUFDO0FBR0QsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUcsSUFBSSxjQUFjLENBQ3pELDJCQUEyQixFQUMzQjtJQUNFLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxnQkFBZ0I7Q0FDaEMsQ0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJkdEZpbGUgfSBmcm9tICdAbmdyZHQvdXRpbHMnO1xuXG5leHBvcnQgZnVuY3Rpb24gY3plY2hGaWxlTGFiZWxGbihmaWxlczogUmR0RmlsZVtdKSB7XG4gIHN3aXRjaCAoZmlsZXMubGVuZ3RoKSB7XG4gICAgY2FzZSAwOlxuICAgICAgcmV0dXJuICdWeWJlcnRlIHNvdWJvcic7XG4gICAgY2FzZSAxOlxuICAgICAgcmV0dXJuIGZpbGVzWzBdLmZpbGVOYW1lO1xuICAgIGNhc2UgMjpcbiAgICBjYXNlIDM6XG4gICAgY2FzZSA0OlxuICAgICAgcmV0dXJuIGBWeWJyw6FueSAke2ZpbGVzLmxlbmd0aH0gc291Ym9yeWA7XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiBgVnlicsOhbm8gJHtmaWxlcy5sZW5ndGh9IHNvdWJvcsWvYDtcbiAgfVxufVxuXG5leHBvcnQgdHlwZSBSZHRGaWxlTGFiZWxGbiA9IChmaWxlczogUmR0RmlsZVtdKSA9PiBzdHJpbmc7XG5leHBvcnQgY29uc3QgUkRUX0RFRkFVTFRfRklMRV9MQUJFTF9GTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxSZHRGaWxlTGFiZWxGbj4oXG4gICdSRFRfREVGQVVMVF9GSUxFX0xBQkVMX0ZOJyxcbiAge1xuICAgIHByb3ZpZGVkSW46ICdyb290JyxcbiAgICBmYWN0b3J5OiAoKSA9PiBjemVjaEZpbGVMYWJlbEZuLFxuICB9XG4pO1xuIl19","import { InjectionToken } from '@angular/core';\nexport const RDT_DEFAULT_MAX_FILE_SIZE = new InjectionToken('RDT_DEFAULT_MAX_FILE_SIZE', {\n factory: () => '100 MB',\n providedIn: 'root',\n});\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWRlZmF1bHQtbWF4LWZpbGUtc2l6ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL0BuZ3JkdC9mb3Jtcy9zcmMvbGliL2lucHV0cy9maWxlLWlucHV0L3Rva2Vucy9yZHQtZGVmYXVsdC1tYXgtZmlsZS1zaXplLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHL0MsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUcsSUFBSSxjQUFjLENBQ3pELDJCQUEyQixFQUMzQjtJQUNFLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxRQUFRO0lBQ3ZCLFVBQVUsRUFBRSxNQUFNO0NBQ25CLENBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZHRGaWxlU2l6ZSB9IGZyb20gJ0BuZ3JkdC91dGlscyc7XG5cbmV4cG9ydCBjb25zdCBSRFRfREVGQVVMVF9NQVhfRklMRV9TSVpFID0gbmV3IEluamVjdGlvblRva2VuPFJkdEZpbGVTaXplPihcbiAgJ1JEVF9ERUZBVUxUX01BWF9GSUxFX1NJWkUnLFxuICB7XG4gICAgZmFjdG9yeTogKCkgPT4gJzEwMCBNQicsXG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxuICB9XG4pO1xuIl19","import { booleanAttribute, computed, Directive, effect, inject, input, linkedSignal, } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { FormControl } from '@angular/forms';\nimport { RdtFileUtils, } from '@ngrdt/utils';\nimport { RdtBaseFormInputComponent } from '../../base/rdt-base-form-input.component';\nimport { nullToUndefined } from '../../utils';\nimport { NO_OP_FILE_READER } from './reader/rdt-file-reader-noop';\nimport { RDT_DEFAULT_FILE_READER } from './tokens/rdt-default-file-reader';\nimport { RDT_DEFAULT_FILE_LABEL_FN } from './tokens/rdt-default-label-fn';\nimport { RDT_DEFAULT_MAX_FILE_SIZE } from './tokens/rdt-default-max-file-size';\nimport * as i0 from \"@angular/core\";\nexport class RdtFileInputComponent extends RdtBaseFormInputComponent {\n defaultFileReader = inject(RDT_DEFAULT_FILE_READER);\n defaultMaxFileSize = inject(RDT_DEFAULT_MAX_FILE_SIZE);\n defaultLabelFn = inject(RDT_DEFAULT_FILE_LABEL_FN);\n readerInput = input(this.defaultFileReader, {\n alias: 'reader',\n });\n reader = linkedSignal(() => this.readerInput());\n acceptInput = input(undefined, { alias: 'accept', transform: nullToUndefined });\n accept = linkedSignal(() => {\n const acceptInput = this.acceptInput();\n return !acceptInput || Array.isArray(acceptInput)\n ? acceptInput\n : [acceptInput];\n });\n jointAccept = computed(() => this.accept()?.join(','));\n maxFileSizeInput = input(this.defaultMaxFileSize, {\n alias: 'maxFileSize',\n transform: nullToUndefined,\n });\n maxFileSize = linkedSignal(() => this.maxFileSizeInput());\n maxFileSizeInBytes = computed(() => {\n const maxFileSize = this.maxFileSize();\n return maxFileSize ? RdtFileUtils.fileSizeToBytes(maxFileSize) : null;\n });\n labelFn = input(this.defaultLabelFn);\n multiple = input(false, { transform: booleanAttribute });\n labelCtrl = new FormControl(null);\n labelDataTestId = computed(() => this.dataTestId() + '-label');\n touchedEffect = effect(() => {\n const touched = this.touched();\n if (touched) {\n this.labelCtrl.markAsTouched();\n }\n else {\n this.labelCtrl.markAsUntouched();\n }\n });\n errorEffect = effect(() => {\n this.labelCtrl?.setErrors(this.visibleErrors());\n });\n ngOnInit() {\n super.ngOnInit();\n this.control()?.addValidators(this._maxFileSizeValidator);\n }\n ngOnDestroy() {\n super.ngOnDestroy();\n this.control()?.removeValidators(this._maxFileSizeValidator);\n }\n onFileSelected(event) {\n const target = event.target;\n if (!target.files) {\n return;\n }\n let shouldRead = true;\n const maxBytes = this.maxFileSizeInBytes();\n if (maxBytes !== null) {\n const files = Array.from(target.files);\n for (const file of files) {\n if (file.size > maxBytes) {\n shouldRead = false;\n break;\n }\n }\n }\n const reader = shouldRead\n ? this.reader()\n : NO_OP_FILE_READER;\n reader\n .readAll(Array.from(target.files))\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe((files) => {\n console.log(files);\n this.onChange(files);\n this.writeValue(files);\n });\n }\n writeValue(value) {\n super.writeValue(value);\n this.setInnerValue(value);\n }\n setInnerValue(files) {\n if (this.labelCtrl) {\n const label = this.labelFn()(files ?? []);\n this.labelCtrl.setValue(label);\n }\n }\n clear() {\n this.onInternalValueChange(null);\n }\n _maxFileSizeValidator = (ctrl) => {\n const maxSize = this.maxFileSizeInBytes();\n if (maxSize === null ||\n !Array.isArray(ctrl.value) ||\n ctrl.value.length === 0) {\n return null;\n }\n const files = ctrl.value;\n for (const file of files) {\n if (file['size'] !== undefined && file.size > maxSize) {\n return {\n maxFileSize: {\n max: maxSize,\n actual: file.size,\n },\n };\n }\n }\n return null;\n };\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtFileInputComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.0\", type: RdtFileInputComponent, isStandalone: true, inputs: { readerInput: { classPropertyName: \"readerInput\", publicName: \"reader\", isSignal: true, isRequired: false, transformFunction: null }, acceptInput: { classPropertyName: \"acceptInput\", publicName: \"accept\", isSignal: true, isRequired: false, transformFunction: null }, maxFileSizeInput: { classPropertyName: \"maxFileSizeInput\", publicName: \"maxFileSize\", isSignal: true, isRequired: false, transformFunction: null }, labelFn: { classPropertyName: \"labelFn\", publicName: \"labelFn\", isSignal: true, isRequired: false, transformFunction: null }, multiple: { classPropertyName: \"multiple\", publicName: \"multiple\", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtFileInputComponent, decorators: [{\n type: Directive\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWZpbGUtaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vQG5ncmR0L2Zvcm1zL3NyYy9saWIvaW5wdXRzL2ZpbGUtaW5wdXQvcmR0LWZpbGUtaW5wdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsUUFBUSxFQUNSLFNBQVMsRUFDVCxNQUFNLEVBQ04sTUFBTSxFQUNOLEtBQUssRUFDTCxZQUFZLEdBQ2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFdBQVcsRUFBZSxNQUFNLGdCQUFnQixDQUFDO0FBQzFELE9BQU8sRUFLTCxZQUFZLEdBRWIsTUFBTSxjQUFjLENBQUM7QUFDdEIsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDckYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU5QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMxRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7QUFRL0UsTUFBTSxPQUFnQixxQkFFcEIsU0FBUSx5QkFBK0I7SUFDcEIsaUJBQWlCLEdBQUcsTUFBTSxDQUFDLHVCQUF1QixDQUFDLENBQUM7SUFDcEQsa0JBQWtCLEdBQUcsTUFBTSxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDdkQsY0FBYyxHQUFHLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBRTdELFdBQVcsR0FBRyxLQUFLLENBQzFCLElBQUksQ0FBQyxpQkFB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Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgYm9vbGVhbkF0dHJpYnV0ZSxcbiAgY29tcHV0ZWQsXG4gIERpcmVjdGl2ZSxcbiAgZWZmZWN0LFxuICBpbmplY3QsXG4gIGlucHV0LFxuICBsaW5rZWRTaWduYWwsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIFZhbGlkYXRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtcbiAgTnVsbGFibGUsXG4gIFJkdENvbWJpbmVkTWltZVR5cGUsXG4gIFJkdEZpbGUsXG4gIFJkdEZpbGVTaXplLFxuICBSZHRGaWxlVXRpbHMsXG4gIFJkdE1pbWVUeXBlLFxufSBmcm9tICdAbmdyZHQvdXRpbHMnO1xuaW1wb3J0IHsgUmR0QmFzZUZvcm1JbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Jhc2UvcmR0LWJhc2UtZm9ybS1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgbnVsbFRvVW5kZWZpbmVkIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgUmR0RmlsZVJlYWRlciB9IGZyb20gJy4vcmVhZGVyL3JkdC1maWxlLXJlYWRlcic7XG5pbXBvcnQgeyBOT19PUF9GSUxFX1JFQURFUiB9IGZyb20gJy4vcmVhZGVyL3JkdC1maWxlLXJlYWRlci1ub29wJztcbmltcG9ydCB7IFJEVF9ERUZBVUxUX0ZJTEVfUkVBREVSIH0gZnJvbSAnLi90b2tlbnMvcmR0LWRlZmF1bHQtZmlsZS1yZWFkZXInO1xuaW1wb3J0IHsgUkRUX0RFRkFVTFRfRklMRV9MQUJFTF9GTiB9IGZyb20gJy4vdG9rZW5zL3JkdC1kZWZhdWx0LWxhYmVsLWZuJztcbmltcG9ydCB7IFJEVF9ERUZBVUxUX01BWF9GSUxFX1NJWkUgfSBmcm9tICcuL3Rva2Vucy9yZHQtZGVmYXVsdC1tYXgtZmlsZS1zaXplJztcblxudHlwZSBBY2NlcHRUeXBlID1cbiAgfCAoUmR0TWltZVR5cGUgfCBSZHRDb21iaW5lZE1pbWVUeXBlKVtdXG4gIHwgUmR0TWltZVR5cGVcbiAgfCBSZHRDb21iaW5lZE1pbWVUeXBlO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBSZHRGaWxlSW5wdXRDb21wb25lbnQ8XG4gIFRFeHQgPSBzdHJpbmdcbj4gZXh0ZW5kcyBSZHRCYXNlRm9ybUlucHV0Q29tcG9uZW50PFRFeHQ+IHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGRlZmF1bHRGaWxlUmVhZGVyID0gaW5qZWN0KFJEVF9ERUZBVUxUX0ZJTEVfUkVBREVSKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGRlZmF1bHRNYXhGaWxlU2l6ZSA9IGluamVjdChSRFRfREVGQVVMVF9NQVhfRklMRV9TSVpFKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGRlZmF1bHRMYWJlbEZuID0gaW5qZWN0KFJEVF9ERUZBVUxUX0ZJTEVfTEFCRUxfRk4pO1xuXG4gIHJlYWRvbmx5IHJlYWRlcklucHV0ID0gaW5wdXQ8UmR0RmlsZVJlYWRlcjxURXh0Pj4oXG4gICAgdGhpcy5kZWZhdWx0RmlsZVJlYWRlciBhcyBSZHRGaWxlUmVhZGVyPFRFeHQ+LFxuICAgIHtcbiAgICAgIGFsaWFzOiAncmVhZGVyJyxcbiAgICB9XG4gICk7XG4gIHJlYWRvbmx5IHJlYWRlciA9IGxpbmtlZFNpZ25hbCgoKSA9PiB0aGlzLnJlYWRlcklucHV0KCkpO1xuXG4gIHJlYWRvbmx5IGFjY2VwdElucHV0ID0gaW5wdXQ8QWNjZXB0VHlwZSB8IHVuZGVmaW5lZCwgTnVsbGFibGU8QWNjZXB0VHlwZT4+KFxuICAgIHVuZGVmaW5lZCxcbiAgICB7IGFsaWFzOiAnYWNjZXB0JywgdHJhbnNmb3JtOiBudWxsVG9VbmRlZmluZWQgfVxuICApO1xuICByZWFkb25seSBhY2NlcHQgPSBsaW5rZWRTaWduYWwoKCkgPT4ge1xuICAgIGNvbnN0IGFjY2VwdElucHV0ID0gdGhpcy5hY2NlcHRJbnB1dCgpO1xuICAgIHJldHVybiAhYWNjZXB0SW5wdXQgfHwgQXJyYXkuaXNBcnJheShhY2NlcHRJbnB1dClcbiAgICAgID8gYWNjZXB0SW5wdXRcbiAgICAgIDogW2FjY2VwdElucHV0XTtcbiAgfSk7XG4gIHJlYWRvbmx5IGpvaW50QWNjZXB0ID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5hY2NlcHQoKT8uam9pbignLCcpKTtcblxuICByZWFkb25seSBtYXhGaWxlU2l6ZUlucHV0ID0gaW5wdXQ8XG4gICAgTnVsbGFibGU8UmR0RmlsZVNpemU+LFxuICAgIFJkdEZpbGVTaXplIHwgdW5kZWZpbmVkXG4gID4odGhpcy5kZWZhdWx0TWF4RmlsZVNpemUsIHtcbiAgICBhbGlhczogJ21heEZpbGVTaXplJyxcbiAgICB0cmFuc2Zvcm06IG51bGxUb1VuZGVmaW5lZCxcbiAgfSk7XG4gIHJlYWRvbmx5IG1heEZpbGVTaXplID0gbGlua2VkU2lnbmFsKCgpID0+IHRoaXMubWF4RmlsZVNpemVJbnB1dCgpKTtcbiAgcmVhZG9ubHkgbWF4RmlsZVNpemVJbkJ5dGVzID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IG1heEZpbGVTaXplID0gdGhpcy5tYXhGaWxlU2l6ZSgpO1xuICAgIHJldHVybiBtYXhGaWxlU2l6ZSA/IFJkdEZpbGVVdGlscy5maWxlU2l6ZVRvQnl0ZXMobWF4RmlsZVNpemUpIDogbnVsbDtcbiAgfSk7XG5cbiAgcmVhZG9ubHkgbGFiZWxGbiA9IGlucHV0KHRoaXMuZGVmYXVsdExhYmVsRm4pO1xuICByZWFkb25seSBtdWx0aXBsZSA9IGlucHV0KGZhbHNlLCB7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgbGFiZWxDdHJsID0gbmV3IEZvcm1Db250cm9sPHN0cmluZyB8IG51bGw+KG51bGwpO1xuICByZWFkb25seSBsYWJlbERhdGFUZXN0SWQgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmRhdGFUZXN0SWQoKSArICctbGFiZWwnKTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgdG91Y2hlZEVmZmVjdCA9IGVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgdG91Y2hlZCA9IHRoaXMudG91Y2hlZCgpO1xuICAgIGlmICh0b3VjaGVkKSB7XG4gICAgICB0aGlzLmxhYmVsQ3RybC5tYXJrQXNUb3VjaGVkKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubGFiZWxDdHJsLm1hcmtBc1VudG91Y2hlZCgpO1xuICAgIH1cbiAgfSk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGVycm9yRWZmZWN0ID0gZWZmZWN0KCgpID0+IHtcbiAgICB0aGlzLmxhYmVsQ3RybD8uc2V0RXJyb3JzKHRoaXMudmlzaWJsZUVycm9ycygpKTtcbiAgfSk7XG5cbiAgb3ZlcnJpZGUgbmdPbkluaXQoKSB7XG4gICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICB0aGlzLmNvbnRyb2woKT8uYWRkVmFsaWRhdG9ycyh0aGlzLl9tYXhGaWxlU2l6ZVZhbGlkYXRvcik7XG4gIH1cblxuICBvdmVycmlkZSBuZ09uRGVzdHJveSgpIHtcbiAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgIHRoaXMuY29udHJvbCgpPy5yZW1vdmVWYWxpZGF0b3JzKHRoaXMuX21heEZpbGVTaXplVmFsaWRhdG9yKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvbkZpbGVTZWxlY3RlZChldmVudDogRXZlbnQpIHtcbiAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudDtcbiAgICBpZiAoIXRhcmdldC5maWxlcykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGxldCBzaG91bGRSZWFkID0gdHJ1ZTtcbiAgICBjb25zdCBtYXhCeXRlcyA9IHRoaXMubWF4RmlsZVNpemVJbkJ5dGVzKCk7XG4gICAgaWYgKG1heEJ5dGVzICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBmaWxlcyA9IEFycmF5LmZyb20odGFyZ2V0LmZpbGVzKTtcbiAgICAgIGZvciAoY29uc3QgZmlsZSBvZiBmaWxlcykge1xuICAgICAgICBpZiAoZmlsZS5zaXplID4gbWF4Qnl0ZXMpIHtcbiAgICAgICAgICBzaG91bGRSZWFkID0gZmFsc2U7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCByZWFkZXIgPSBzaG91bGRSZWFkXG4gICAgICA/IHRoaXMucmVhZGVyKClcbiAgICAgIDogKE5PX09QX0ZJTEVfUkVBREVSIGFzIHVua25vd24gYXMgUmR0RmlsZVJlYWRlcjxURXh0Pik7XG5cbiAgICByZWFkZXJcbiAgICAgIC5yZWFkQWxsKEFycmF5LmZyb20odGFyZ2V0LmZpbGVzKSlcbiAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKVxuICAgICAgLnN1YnNjcmliZSgoZmlsZXMpID0+IHtcbiAgICAgICAgY29uc29sZS5sb2coZmlsZXMpO1xuICAgICAgICB0aGlzLm9uQ2hhbmdlKGZpbGVzKTtcbiAgICAgICAgdGhpcy53cml0ZVZhbHVlKGZpbGVzKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgb3ZlcnJpZGUgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KSB7XG4gICAgc3VwZXIud3JpdGVWYWx1ZSh2YWx1ZSk7XG4gICAgdGhpcy5zZXRJbm5lclZhbHVlKHZhbHVlKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0SW5uZXJWYWx1ZShmaWxlczogTnVsbGFibGU8UmR0RmlsZVtdPikge1xuICAgIGlmICh0aGlzLmxhYmVsQ3RybCkge1xuICAgICAgY29uc3QgbGFiZWwgPSB0aGlzLmxhYmVsRm4oKShmaWxlcyA/PyBbXSk7XG4gICAgICB0aGlzLmxhYmVsQ3RybC5zZXRWYWx1ZShsYWJlbCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGNsZWFyKCkge1xuICAgIHRoaXMub25JbnRlcm5hbFZhbHVlQ2hhbmdlKG51bGwpO1xuICB9XG5cbiAgcHJpdmF0ZSBfbWF4RmlsZVNpemVWYWxpZGF0b3I6IFZhbGlkYXRvckZuID0gKGN0cmwpID0+IHtcbiAgICBjb25zdCBtYXhTaXplID0gdGhpcy5tYXhGaWxlU2l6ZUluQnl0ZXMoKTtcbiAgICBpZiAoXG4gICAgICBtYXhTaXplID09PSBudWxsIHx8XG4gICAgICAhQXJyYXkuaXNBcnJheShjdHJsLnZhbHVlKSB8fFxuICAgICAgY3RybC52YWx1ZS5sZW5ndGggPT09IDBcbiAgICApIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGNvbnN0IGZpbGVzID0gY3RybC52YWx1ZSBhcyBSZHRGaWxlW107XG4gICAgZm9yIChjb25zdCBmaWxlIG9mIGZpbGVzKSB7XG4gICAgICBpZiAoZmlsZVsnc2l6ZSddICE9PSB1bmRlZmluZWQgJiYgZmlsZS5zaXplID4gbWF4U2l6ZSkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIG1heEZpbGVTaXplOiB7XG4gICAgICAgICAgICBtYXg6IG1heFNpemUsXG4gICAgICAgICAgICBhY3R1YWw6IGZpbGUuc2l6ZSxcbiAgICAgICAgICB9LFxuICAgICAgICB9O1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfTtcbn1cbiJdfQ==","import { RdtFileUtils } from '@ngrdt/utils';\nimport { from } from 'rxjs';\nimport { RdtFileReader } from './rdt-file-reader';\nexport class RdtFileReaderArrayBuffer extends RdtFileReader {\n extractData(file) {\n return from(RdtFileUtils.fileAsArrayBuffer(file));\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWZpbGUtcmVhZGVyLWFycmF5LWJ1ZmZlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL0BuZ3JkdC9mb3Jtcy9zcmMvbGliL2lucHV0cy9maWxlLWlucHV0L3JlYWRlci9yZHQtZmlsZS1yZWFkZXItYXJyYXktYnVmZmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDNUMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM1QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbEQsTUFBTSxPQUFPLHdCQUF5QixTQUFRLGFBQTBCO0lBQ3RFLFdBQVcsQ0FBQyxJQUFVO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3BELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJkdEZpbGVVdGlscyB9IGZyb20gJ0BuZ3JkdC91dGlscyc7XG5pbXBvcnQgeyBmcm9tIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBSZHRGaWxlUmVhZGVyIH0gZnJvbSAnLi9yZHQtZmlsZS1yZWFkZXInO1xuXG5leHBvcnQgY2xhc3MgUmR0RmlsZVJlYWRlckFycmF5QnVmZmVyIGV4dGVuZHMgUmR0RmlsZVJlYWRlcjxBcnJheUJ1ZmZlcj4ge1xuICBleHRyYWN0RGF0YShmaWxlOiBGaWxlKSB7XG4gICAgcmV0dXJuIGZyb20oUmR0RmlsZVV0aWxzLmZpbGVBc0FycmF5QnVmZmVyKGZpbGUpKTtcbiAgfVxufVxuIl19","import { RdtFileUtils } from '@ngrdt/utils';\nimport { from } from 'rxjs';\nimport { RdtFileReader } from './rdt-file-reader';\nexport class VnshFileReaderText extends RdtFileReader {\n encoding;\n constructor(encoding) {\n super();\n this.encoding = encoding;\n }\n extractData(file) {\n return from(RdtFileUtils.fileAsText(file, this.encoding));\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWZpbGUtcmVhZGVyLXRleHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9AbmdyZHQvZm9ybXMvc3JjL2xpYi9pbnB1dHMvZmlsZS1pbnB1dC9yZWFkZXIvcmR0LWZpbGUtcmVhZGVyLXRleHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFzQixZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDaEUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM1QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbEQsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGFBQXFCO0lBQ3hDO0lBQW5CLFlBQW1CLFFBQTZCO1FBQzlDLEtBQUssRUFBRSxDQUFDO1FBRFMsYUFBUSxHQUFSLFFBQVEsQ0FBcUI7SUFFaEQsQ0FBQztJQUNELFdBQVcsQ0FBQyxJQUFVO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO0lBQzVELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFsbEVuY29kaW5nQWxpYXNlcywgUmR0RmlsZVV0aWxzIH0gZnJvbSAnQG5ncmR0L3V0aWxzJztcbmltcG9ydCB7IGZyb20gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFJkdEZpbGVSZWFkZXIgfSBmcm9tICcuL3JkdC1maWxlLXJlYWRlcic7XG5cbmV4cG9ydCBjbGFzcyBWbnNoRmlsZVJlYWRlclRleHQgZXh0ZW5kcyBSZHRGaWxlUmVhZGVyPHN0cmluZz4ge1xuICBjb25zdHJ1Y3RvcihwdWJsaWMgZW5jb2Rpbmc/OiBBbGxFbmNvZGluZ0FsaWFzZXMpIHtcbiAgICBzdXBlcigpO1xuICB9XG4gIGV4dHJhY3REYXRhKGZpbGU6IEZpbGUpIHtcbiAgICByZXR1cm4gZnJvbShSZHRGaWxlVXRpbHMuZmlsZUFzVGV4dChmaWxlLCB0aGlzLmVuY29kaW5nKSk7XG4gIH1cbn1cbiJdfQ==","import { Directive, input } from '@angular/core';\nimport { RdtBaseFormInputComponent } from '../../base/rdt-base-form-input.component';\nimport { nullToUndefined, nullToUndefinedNumeric, } from '../../utils';\nimport * as i0 from \"@angular/core\";\nexport class RdtNumericInputComponent extends RdtBaseFormInputComponent {\n min = input(undefined, {\n transform: nullToUndefinedNumeric,\n });\n max = input(undefined, {\n transform: nullToUndefinedNumeric,\n });\n step = input(undefined, {\n transform: nullToUndefinedNumeric,\n });\n autocomplete = input(undefined, {\n transform: nullToUndefined,\n });\n isEmpty(value) {\n return value === null;\n }\n toExternalValue(internalValue) {\n if (typeof internalValue === 'number') {\n return internalValue;\n }\n else if (internalValue && typeof internalValue === 'string') {\n return parseFloat(internalValue);\n }\n return null;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtNumericInputComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.0\", type: RdtNumericInputComponent, isStandalone: true, inputs: { min: { classPropertyName: \"min\", publicName: \"min\", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: \"max\", publicName: \"max\", isSignal: true, isRequired: false, transformFunction: null }, step: { classPropertyName: \"step\", publicName: \"step\", isSignal: true, isRequired: false, transformFunction: null }, autocomplete: { classPropertyName: \"autocomplete\", publicName: \"autocomplete\", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtNumericInputComponent, decorators: [{\n type: Directive\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LW51bWVyaWMtaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vQG5ncmR0L2Zvcm1zL3NyYy9saWIvaW5wdXRzL251bWVyaWMtaW5wdXQvcmR0LW51bWVyaWMtaW5wdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ3JGLE9BQU8sRUFDTCxlQUFlLEVBQ2Ysc0JBQXNCLEdBRXZCLE1BQU0sYUFBYSxDQUFDOztBQUdyQixNQUFNLE9BQWdCLHdCQUF5QixTQUFRLHlCQUV0RDtJQUNVLEdBQUcsR0FBRyxLQUFLLENBQTJDLFNBQVMsRUFBRTtRQUN4RSxTQUFTLEVBQUUsc0JBQXNCO0tBQ2xDLENBQUMsQ0FBQztJQUNNLEdBQUcsR0FBRyxLQUFLLENBQTJDLFNBQVMsRUFBRTtRQUN4RSxTQUFTLEVBQUUsc0JBQXNCO0tBQ2xDLENBQUMsQ0FBQztJQUNNLElBQUksR0FBRyxLQUFLLENBQTJDLFNBQVMsRUFBRTtRQUN6RSxTQUFTLEVBQUUsc0JBQXNCO0tBQ2xDLENBQUMsQ0FBQztJQUNNLFlBQVksR0FBRyxLQUFLLENBRzNCLFNBQVMsRUFBRTtRQUNYLFNBQVMsRUFBRSxlQUFlO0tBQzNCLENBQUMsQ0FBQztJQUVnQixPQUFPLENBQUMsS0FBb0I7UUFDN0MsT0FBTyxLQUFLLEtBQUssSUFBSSxDQUFDO0lBQ3hCLENBQUM7SUFFa0IsZUFBZSxDQUNoQyxhQUE0QjtRQUU1QixJQUFJLE9BQU8sYUFBYSxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ3RDLE9BQU8sYUFBYSxDQUFDO1FBQ3ZCLENBQUM7YUFBTSxJQUFJLGFBQWEsSUFBSSxPQUFPLGFBQWEsS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUM5RCxPQUFPLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNuQyxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO3VHQWhDbUIsd0JBQXdCOzJGQUF4Qix3QkFBd0I7OzJGQUF4Qix3QkFBd0I7a0JBRDdDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOdWxsYWJsZSB9IGZyb20gJ0BuZ3JkdC91dGlscyc7XG5pbXBvcnQgeyBSZHRCYXNlRm9ybUlucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vYmFzZS9yZHQtYmFzZS1mb3JtLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICBudWxsVG9VbmRlZmluZWQsXG4gIG51bGxUb1VuZGVmaW5lZE51bWVyaWMsXG4gIFJkdEF1dG9jb21wbGV0ZU9wdGlvbnMsXG59IGZyb20gJy4uLy4uL3V0aWxzJztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgUmR0TnVtZXJpY0lucHV0Q29tcG9uZW50IGV4dGVuZHMgUmR0QmFzZUZvcm1JbnB1dENvbXBvbmVudDxcbiAgbnVtYmVyIHwgbnVsbFxuPiB7XG4gIHJlYWRvbmx5IG1pbiA9IGlucHV0PG51bWJlciB8IG51bGwsIE51bGxhYmxlPG51bWJlciB8IHN0cmluZz4+KHVuZGVmaW5lZCwge1xuICAgIHRyYW5zZm9ybTogbnVsbFRvVW5kZWZpbmVkTnVtZXJpYyxcbiAgfSk7XG4gIHJlYWRvbmx5IG1heCA9IGlucHV0PG51bWJlciB8IG51bGwsIE51bGxhYmxlPG51bWJlciB8IHN0cmluZz4+KHVuZGVmaW5lZCwge1xuICAgIHRyYW5zZm9ybTogbnVsbFRvVW5kZWZpbmVkTnVtZXJpYyxcbiAgfSk7XG4gIHJlYWRvbmx5IHN0ZXAgPSBpbnB1dDxudW1iZXIgfCBudWxsLCBOdWxsYWJsZTxudW1iZXIgfCBzdHJpbmc+Pih1bmRlZmluZWQsIHtcbiAgICB0cmFuc2Zvcm06IG51bGxUb1VuZGVmaW5lZE51bWVyaWMsXG4gIH0pO1xuICByZWFkb25seSBhdXRvY29tcGxldGUgPSBpbnB1dDxcbiAgICBSZHRBdXRvY29tcGxldGVPcHRpb25zIHwgdW5kZWZpbmVkLFxuICAgIE51bGxhYmxlPFJkdEF1dG9jb21wbGV0ZU9wdGlvbnM+XG4gID4odW5kZWZpbmVkLCB7XG4gICAgdHJhbnNmb3JtOiBudWxsVG9VbmRlZmluZWQsXG4gIH0pO1xuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBpc0VtcHR5KHZhbHVlOiBudW1iZXIgfCBudWxsKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHZhbHVlID09PSBudWxsO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHRvRXh0ZXJuYWxWYWx1ZShcbiAgICBpbnRlcm5hbFZhbHVlOiBudW1iZXIgfCBudWxsXG4gICk6IG51bWJlciB8IG51bGwge1xuICAgIGlmICh0eXBlb2YgaW50ZXJuYWxWYWx1ZSA9PT0gJ251bWJlcicpIHtcbiAgICAgIHJldHVybiBpbnRlcm5hbFZhbHVlO1xuICAgIH0gZWxzZSBpZiAoaW50ZXJuYWxWYWx1ZSAmJiB0eXBlb2YgaW50ZXJuYWxWYWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHJldHVybiBwYXJzZUZsb2F0KGludGVybmFsVmFsdWUpO1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxufVxuIl19","export class RdtSelectDatasource {\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LXNlbGVjdC1kYXRhc291cmNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vQG5ncmR0L2Zvcm1zL3NyYy9saWIvaW5wdXRzL3NlbGVjdC9kYXRhc291cmNlL3JkdC1zZWxlY3QtZGF0YXNvdXJjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxNQUFNLE9BQWdCLG1CQUFtQjtDQVN4QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFJkdFNlbGVjdFJlcXVlc3RQYXJhbXMgfSBmcm9tICcuLi91dGlscy9yZXF1ZXN0JztcbmltcG9ydCB7IFJkdFNlbGVjdFBhZ2UgfSBmcm9tICcuL3JkdC1zZWxlY3QtcGFnZSc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBSZHRTZWxlY3REYXRhc291cmNlPFRJdGVtLCBUSWQ+IHtcbiAgYWJzdHJhY3QgZ2V0RGF0YShcbiAgICBwYXJhbXM6IFJkdFNlbGVjdFJlcXVlc3RQYXJhbXNcbiAgKTogT2JzZXJ2YWJsZTxSZHRTZWxlY3RQYWdlPFRJdGVtPj47XG4gIGFic3RyYWN0IGdldExhYmVsKGl0ZW06IFRJdGVtKTogc3RyaW5nO1xuICBhYnN0cmFjdCBnZXRJZChpdGVtOiBUSXRlbSk6IFRJZDtcbiAgYWJzdHJhY3QgZ2V0SXRlbXNCeUlkcyhpZHM6IFRJZFtdKTogT2JzZXJ2YWJsZTxNYXA8VElkLCBUSXRlbT4+O1xuICBhYnN0cmFjdCByZWFkb25seSB0b3RhbENvdW50S25vd246IGJvb2xlYW47XG4gIGFic3RyYWN0IHJlYWRvbmx5IHF1ZXJ5UmVxdWlyZWQ6IGJvb2xlYW47XG59XG4iXX0=","import { of } from 'rxjs';\nimport { RdtSelectDatasource } from './rdt-select-datasource';\nexport class RdtOfflineSelectDatasource extends RdtSelectDatasource {\n data;\n totalCountKnown = true;\n queryRequired = false;\n preprocessedData;\n constructor(data) {\n super();\n this.data = data;\n this.preprocessedData = this.preprocessData(data);\n }\n getData(params) {\n const page = this.getPage(this.filterData(params.query), params.pageIndex, params.pageSize);\n return of(page);\n }\n getLabel(item) {\n return item.label;\n }\n getId(item) {\n return item.value;\n }\n getItemsByIds(ids) {\n const result = new Map();\n for (const id of ids) {\n const item = this.preprocessedData.find((item) => item.value === id);\n if (item) {\n result.set(id, item);\n }\n }\n return of(result);\n }\n preprocessLabel(label) {\n return label.trim().toLowerCase();\n }\n preprocessData(data) {\n return data.map((item) => ({\n value: item.value,\n label: this.preprocessLabel(item.label),\n }));\n }\n filterData(query) {\n if (!query) {\n return this.preprocessedData;\n }\n const prepQuery = this.preprocessLabel(query);\n if (!prepQuery) {\n return this.preprocessedData;\n }\n return this.preprocessedData.filter((item) => item.label.includes(prepQuery));\n }\n getPage(data, pageIndex, pageSize) {\n if (pageSize < 1) {\n throw new Error('Invalid page size');\n }\n if (pageIndex < 0) {\n throw new Error('Invalid page index');\n }\n if (pageIndex * pageSize > data.length) {\n return {\n data: [],\n totalCount: data.length,\n pageIndex: pageIndex,\n };\n }\n const start = pageIndex * pageSize;\n const end = start + pageSize;\n const items = data.slice(start, end);\n return {\n data: items,\n totalCount: data.length,\n pageIndex: pageIndex,\n };\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LW9mZmxpbmUtc2VsZWN0LWRhdGFzb3VyY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9AbmdyZHQvZm9ybXMvc3JjL2xpYi9pbnB1dHMvc2VsZWN0L2RhdGFzb3VyY2UvcmR0LW9mZmxpbmUtc2VsZWN0LWRhdGFzb3VyY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUd0QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUc5RCxNQUFNLE9BQU8sMEJBRVgsU0FBUSxtQkFBa0Q7SUFNckM7SUFMSCxlQUFlLEdBQUcsSUFBSSxDQUFDO0lBQ3ZCLGFBQWEsR0FBRyxLQUFLLENBQUM7SUFFckIsZ0JBQWdCLENBQTBCO0lBRTdELFlBQXFCLElBQTZCO1FBQ2hELEtBQUssRUFBRSxDQUFDO1FBRFcsU0FBSSxHQUFKLElBQUksQ0FBeUI7UUFFaEQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVRLE9BQU8sQ0FDZCxNQUE4QjtRQUU5QixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUN2QixJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFDN0IsTUFBTSxDQUFDLFNBQVMsRUFDaEIsTUFBTSxDQUFDLFFBQVEsQ0FDaEIsQ0FBQztRQUNGLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xCLENBQUM7SUFDUSxRQUFRLENBQUMsSUFBMkI7UUFDM0MsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFDUSxLQUFLLENBQUMsSUFBMkI7UUFDeEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFFUSxhQUFhLENBQ3BCLEdBQWE7UUFFYixNQUFNLE1BQU0sR0FBRyxJQUFJLEdBQUcsRUFBaUMsQ0FBQztRQUN4RCxLQUFLLE1BQU0sRUFBRSxJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ3JCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEtBQUssRUFBRSxDQUFDLENBQUM7WUFDckUsSUFBSSxJQUFJLEVBQUUsQ0FBQztnQkFDVCxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUN2QixDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3BCLENBQUM7SUFFUyxlQUFlLENBQUMsS0FBYTtRQUNyQyxPQUFPLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRVMsY0FBYyxDQUN0QixJQUE2QjtRQUU3QixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDekIsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO1lBQ2pCLEtBQUssRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7U0FDeEMsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDO0lBRVMsVUFBVSxDQUFDLEtBQW9CO1FBQ3ZDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNYLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDO1FBQy9CLENBQUM7UUFDRCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzlDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNmLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDO1FBQy9CLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUMzQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FDL0IsQ0FBQztJQUNKLENBQUM7SUFFUyxPQUFPLENBQ2YsSUFBNkIsRUFDN0IsU0FBaUIsRUFDakIsUUFBZ0I7UUFFaEIsSUFBSSxRQUFRLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDakIsTUFBTSxJQUFJLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBQ3ZDLENBQUM7UUFDRCxJQUFJLFNBQVMsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNsQixNQUFNLElBQUksS0FBSyxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDeEMsQ0FBQztRQUNELElBQUksU0FBUyxHQUFHLFFBQVEsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDdkMsT0FBTztnQkFDTCxJQUFJLEVBQUUsRUFBRTtnQkFDUixVQUFVLEVBQUUsSUFBSSxDQUFDLE1BQU07Z0JBQ3ZCLFNBQVMsRUFBRSxTQUFTO2FBQ3JCLENBQUM7UUFDSixDQUFDO1FBQ0QsTUFBTSxLQUFLLEdBQUcsU0FBUyxHQUFHLFFBQVEsQ0FBQztRQUNuQyxNQUFNLEdBQUcsR0FBRyxLQUFLLEdBQUcsUUFBUSxDQUFDO1FBQzdCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ3JDLE9BQU87WUFDTCxJQUFJLEVBQUUsS0FBSztZQUNYLFVBQVUsRUFBRSxJQUFJLENBQUMsTUFBTTtZQUN2QixTQUFTLEVBQUUsU0FBUztTQUNyQixDQUFDO0lBQ0osQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFJkdExhYmVsVmFsdWUgfSBmcm9tICcuLi91dGlscy9sYWJlbC12YWx1ZS1pZCc7XG5pbXBvcnQgeyBSZHRTZWxlY3RSZXF1ZXN0UGFyYW1zIH0gZnJvbSAnLi4vdXRpbHMvcmVxdWVzdCc7XG5pbXBvcnQgeyBSZHRTZWxlY3REYXRhc291cmNlIH0gZnJvbSAnLi9yZHQtc2VsZWN0LWRhdGFzb3VyY2UnO1xuaW1wb3J0IHsgUmR0U2VsZWN0UGFnZSB9IGZyb20gJy4vcmR0LXNlbGVjdC1wYWdlJztcblxuZXhwb3J0IGNsYXNzIFJkdE9mZmxpbmVTZWxlY3REYXRhc291cmNlPFxuICBUVmFsdWUgZXh0ZW5kcyBzdHJpbmcgfCBudW1iZXJcbj4gZXh0ZW5kcyBSZHRTZWxlY3REYXRhc291cmNlPFJkdExhYmVsVmFsdWU8VFZhbHVlPiwgVFZhbHVlPiB7XG4gIG92ZXJyaWRlIHJlYWRvbmx5IHRvdGFsQ291bnRLbm93biA9IHRydWU7XG4gIG92ZXJyaWRlIHJlYWRvbmx5IHF1ZXJ5UmVxdWlyZWQgPSBmYWxzZTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgcHJlcHJvY2Vzc2VkRGF0YTogUmR0TGFiZWxWYWx1ZTxUVmFsdWU+W107XG5cbiAgY29uc3RydWN0b3IocmVhZG9ubHkgZGF0YTogUmR0TGFiZWxWYWx1ZTxUVmFsdWU+W10pIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMucHJlcHJvY2Vzc2VkRGF0YSA9IHRoaXMucHJlcHJvY2Vzc0RhdGEoZGF0YSk7XG4gIH1cblxuICBvdmVycmlkZSBnZXREYXRhKFxuICAgIHBhcmFtczogUmR0U2VsZWN0UmVxdWVzdFBhcmFtc1xuICApOiBPYnNlcnZhYmxlPFJkdFNlbGVjdFBhZ2U8UmR0TGFiZWxWYWx1ZTxUVmFsdWU+Pj4ge1xuICAgIGNvbnN0IHBhZ2UgPSB0aGlzLmdldFBhZ2UoXG4gICAgICB0aGlzLmZpbHRlckRhdGEocGFyYW1zLnF1ZXJ5KSxcbiAgICAgIHBhcmFtcy5wYWdlSW5kZXgsXG4gICAgICBwYXJhbXMucGFnZVNpemVcbiAgICApO1xuICAgIHJldHVybiBvZihwYWdlKTtcbiAgfVxuICBvdmVycmlkZSBnZXRMYWJlbChpdGVtOiBSZHRMYWJlbFZhbHVlPFRWYWx1ZT4pOiBzdHJpbmcge1xuICAgIHJldHVybiBpdGVtLmxhYmVsO1xuICB9XG4gIG92ZXJyaWRlIGdldElkKGl0ZW06IFJkdExhYmVsVmFsdWU8VFZhbHVlPik6IFRWYWx1ZSB7XG4gICAgcmV0dXJuIGl0ZW0udmFsdWU7XG4gIH1cblxuICBvdmVycmlkZSBnZXRJdGVtc0J5SWRzKFxuICAgIGlkczogVFZhbHVlW11cbiAgKTogT2JzZXJ2YWJsZTxNYXA8VFZhbHVlLCBSZHRMYWJlbFZhbHVlPFRWYWx1ZT4+PiB7XG4gICAgY29uc3QgcmVzdWx0ID0gbmV3IE1hcDxUVmFsdWUsIFJkdExhYmVsVmFsdWU8VFZhbHVlPj4oKTtcbiAgICBmb3IgKGNvbnN0IGlkIG9mIGlkcykge1xuICAgICAgY29uc3QgaXRlbSA9IHRoaXMucHJlcHJvY2Vzc2VkRGF0YS5maW5kKChpdGVtKSA9PiBpdGVtLnZhbHVlID09PSBpZCk7XG4gICAgICBpZiAoaXRlbSkge1xuICAgICAgICByZXN1bHQuc2V0KGlkLCBpdGVtKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG9mKHJlc3VsdCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgcHJlcHJvY2Vzc0xhYmVsKGxhYmVsOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBsYWJlbC50cmltKCkudG9Mb3dlckNhc2UoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBwcmVwcm9jZXNzRGF0YShcbiAgICBkYXRhOiBSZHRMYWJlbFZhbHVlPFRWYWx1ZT5bXVxuICApOiBSZHRMYWJlbFZhbHVlPFRWYWx1ZT5bXSB7XG4gICAgcmV0dXJuIGRhdGEubWFwKChpdGVtKSA9PiAoe1xuICAgICAgdmFsdWU6IGl0ZW0udmFsdWUsXG4gICAgICBsYWJlbDogdGhpcy5wcmVwcm9jZXNzTGFiZWwoaXRlbS5sYWJlbCksXG4gICAgfSkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGZpbHRlckRhdGEocXVlcnk6IHN0cmluZyB8IG51bGwpOiBSZHRMYWJlbFZhbHVlPFRWYWx1ZT5bXSB7XG4gICAgaWYgKCFxdWVyeSkge1xuICAgICAgcmV0dXJuIHRoaXMucHJlcHJvY2Vzc2VkRGF0YTtcbiAgICB9XG4gICAgY29uc3QgcHJlcFF1ZXJ5ID0gdGhpcy5wcmVwcm9jZXNzTGFiZWwocXVlcnkpO1xuICAgIGlmICghcHJlcFF1ZXJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5wcmVwcm9jZXNzZWREYXRhO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5wcmVwcm9jZXNzZWREYXRhLmZpbHRlcigoaXRlbSkgPT5cbiAgICAgIGl0ZW0ubGFiZWwuaW5jbHVkZXMocHJlcFF1ZXJ5KVxuICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0UGFnZShcbiAgICBkYXRhOiBSZHRMYWJlbFZhbHVlPFRWYWx1ZT5bXSxcbiAgICBwYWdlSW5kZXg6IG51bWJlcixcbiAgICBwYWdlU2l6ZTogbnVtYmVyXG4gICk6IFJkdFNlbGVjdFBhZ2U8UmR0TGFiZWxWYWx1ZTxUVmFsdWU+PiB7XG4gICAgaWYgKHBhZ2VTaXplIDwgMSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIHBhZ2Ugc2l6ZScpO1xuICAgIH1cbiAgICBpZiAocGFnZUluZGV4IDwgMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIHBhZ2UgaW5kZXgnKTtcbiAgICB9XG4gICAgaWYgKHBhZ2VJbmRleCAqIHBhZ2VTaXplID4gZGF0YS5sZW5ndGgpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGRhdGE6IFtdLFxuICAgICAgICB0b3RhbENvdW50OiBkYXRhLmxlbmd0aCxcbiAgICAgICAgcGFnZUluZGV4OiBwYWdlSW5kZXgsXG4gICAgICB9O1xuICAgIH1cbiAgICBjb25zdCBzdGFydCA9IHBhZ2VJbmRleCAqIHBhZ2VTaXplO1xuICAgIGNvbnN0IGVuZCA9IHN0YXJ0ICsgcGFnZVNpemU7XG4gICAgY29uc3QgaXRlbXMgPSBkYXRhLnNsaWNlKHN0YXJ0LCBlbmQpO1xuICAgIHJldHVybiB7XG4gICAgICBkYXRhOiBpdGVtcyxcbiAgICAgIHRvdGFsQ291bnQ6IGRhdGEubGVuZ3RoLFxuICAgICAgcGFnZUluZGV4OiBwYWdlSW5kZXgsXG4gICAgfTtcbiAgfVxufVxuIl19","export const rdtSelectInitialState = {\n query: null,\n nextPageIndex: 0,\n pageSize: 20,\n totalCount: 0,\n totalCountKnown: false,\n options: [],\n datasource: null,\n selectedMap: new Map(),\n fetchError: null,\n missingValuePlaceholder: 'Načítání...',\n _fetchRequest: null,\n _fetchMissingRequest: null,\n _missingSelected: [],\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LXNlbGVjdC1zdGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL0BuZ3JkdC9mb3Jtcy9zcmMvbGliL2lucHV0cy9zZWxlY3Qvc3RhdGUvcmR0LXNlbGVjdC1zdGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF1QkEsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQTZCO0lBQzdELEtBQUssRUFBRSxJQUFJO0lBQ1gsYUFBYSxFQUFFLENBQUM7SUFDaEIsUUFBUSxFQUFFLEVBQUU7SUFDWixVQUFVLEVBQUUsQ0FBQztJQUNiLGVBQWUsRUFBRSxLQUFLO0lBQ3RCLE9BQU8sRUFBRSxFQUFFO0lBQ1gsVUFBVSxFQUFFLElBQUk7SUFDaEIsV0FBVyxFQUFFLElBQUksR0FBRyxFQUFFO0lBQ3RCLFVBQVUsRUFBRSxJQUFJO0lBQ2hCLHVCQUF1QixFQUFFLGFBQWE7SUFDdEMsYUFBYSxFQUFFLElBQUk7SUFDbkIsb0JBQW9CLEVBQUUsSUFBSTtJQUMxQixnQkFBZ0IsRUFBRSxFQUFFO0NBQ3JCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZHRTZWxlY3REYXRhc291cmNlIH0gZnJvbSAnLi4vZGF0YXNvdXJjZS9yZHQtc2VsZWN0LWRhdGFzb3VyY2UnO1xuaW1wb3J0IHsgUmR0TGFiZWxWYWx1ZUlkIH0gZnJvbSAnLi4vdXRpbHMvbGFiZWwtdmFsdWUtaWQnO1xuaW1wb3J0IHtcbiAgUmR0U2VsZWN0RmV0Y2hNaXNzaW5nUmVxdWVzdCxcbiAgUmR0U2VsZWN0RmV0Y2hSZXF1ZXN0LFxufSBmcm9tICcuLi91dGlscy9yZXF1ZXN0JztcblxuZXhwb3J0IGludGVyZmFjZSBSZHRTZWxlY3RTdGF0ZTxUSXRlbSwgVElkPiB7XG4gIHF1ZXJ5OiBzdHJpbmcgfCBudWxsO1xuICBuZXh0UGFnZUluZGV4OiBudW1iZXIgfCBudWxsO1xuICBwYWdlU2l6ZTogbnVtYmVyO1xuICB0b3RhbENvdW50OiBudW1iZXI7XG4gIHRvdGFsQ291bnRLbm93bjogYm9vbGVhbjtcbiAgb3B0aW9uczogUmR0TGFiZWxWYWx1ZUlkPFRJdGVtLCBUSWQ+W107XG4gIGRhdGFzb3VyY2U6IFJkdFNlbGVjdERhdGFzb3VyY2U8VEl0ZW0sIFRJZD4gfCBudWxsO1xuICBzZWxlY3RlZE1hcDogTWFwPFRJZCwgUmR0TGFiZWxWYWx1ZUlkPFRJdGVtLCBUSWQ+PjtcbiAgZmV0Y2hFcnJvcjogYW55IHwgbnVsbDtcbiAgbWlzc2luZ1ZhbHVlUGxhY2Vob2xkZXI6IHN0cmluZztcbiAgX2ZldGNoUmVxdWVzdDogUmR0U2VsZWN0RmV0Y2hSZXF1ZXN0IHwgbnVsbDtcbiAgX2ZldGNoTWlzc2luZ1JlcXVlc3Q6IFJkdFNlbGVjdEZldGNoTWlzc2luZ1JlcXVlc3Q8VElkPiB8IG51bGw7XG4gIF9taXNzaW5nU2VsZWN0ZWQ6IFRJZFtdO1xufVxuXG5leHBvcnQgY29uc3QgcmR0U2VsZWN0SW5pdGlhbFN0YXRlOiBSZHRTZWxlY3RTdGF0ZTxhbnksIGFueT4gPSB7XG4gIHF1ZXJ5OiBudWxsLFxuICBuZXh0UGFnZUluZGV4OiAwLFxuICBwYWdlU2l6ZTogMjAsXG4gIHRvdGFsQ291bnQ6IDAsXG4gIHRvdGFsQ291bnRLbm93bjogZmFsc2UsXG4gIG9wdGlvbnM6IFtdLFxuICBkYXRhc291cmNlOiBudWxsLFxuICBzZWxlY3RlZE1hcDogbmV3IE1hcCgpLFxuICBmZXRjaEVycm9yOiBudWxsLFxuICBtaXNzaW5nVmFsdWVQbGFjZWhvbGRlcjogJ05hxI3DrXTDoW7DrS4uLicsXG4gIF9mZXRjaFJlcXVlc3Q6IG51bGwsXG4gIF9mZXRjaE1pc3NpbmdSZXF1ZXN0OiBudWxsLFxuICBfbWlzc2luZ1NlbGVjdGVkOiBbXSxcbn07XG4iXX0=","export function compareSelectRequestParams(a, b) {\n return (a.query === b.query &&\n a.pageIndex === b.pageIndex &&\n a.pageSize === b.pageSize);\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL0BuZ3JkdC9mb3Jtcy9zcmMvbGliL2lucHV0cy9zZWxlY3QvdXRpbHMvcmVxdWVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFrQkEsTUFBTSxVQUFVLDBCQUEwQixDQUN4QyxDQUF5QixFQUN6QixDQUF5QjtJQUV6QixPQUFPLENBQ0wsQ0FBQyxDQUFDLEtBQUssS0FBSyxDQUFDLENBQUMsS0FBSztRQUNuQixDQUFDLENBQUMsU0FBUyxLQUFLLENBQUMsQ0FBQyxTQUFTO1FBQzNCLENBQUMsQ0FBQyxRQUFRLEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FDMUIsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuZXhwb3J0IGludGVyZmFjZSBSZHRTZWxlY3RSZXF1ZXN0UGFyYW1zIHtcbiAgcXVlcnk6IHN0cmluZyB8IG51bGw7XG4gIHBhZ2VJbmRleDogbnVtYmVyO1xuICBwYWdlU2l6ZTogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJkdFNlbGVjdEZldGNoUmVxdWVzdCB7XG4gIHBhcmFtczogUmR0U2VsZWN0UmVxdWVzdFBhcmFtcztcbiAgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmR0U2VsZWN0RmV0Y2hNaXNzaW5nUmVxdWVzdDxUSWQ+IHtcbiAgaWRzOiBUSWRbXTtcbiAgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjb21wYXJlU2VsZWN0UmVxdWVzdFBhcmFtcyhcbiAgYTogUmR0U2VsZWN0UmVxdWVzdFBhcmFtcyxcbiAgYjogUmR0U2VsZWN0UmVxdWVzdFBhcmFtc1xuKTogYm9vbGVhbiB7XG4gIHJldHVybiAoXG4gICAgYS5xdWVyeSA9PT0gYi5xdWVyeSAmJlxuICAgIGEucGFnZUluZGV4ID09PSBiLnBhZ2VJbmRleCAmJlxuICAgIGEucGFnZVNpemUgPT09IGIucGFnZVNpemVcbiAgKTtcbn1cbiJdfQ==","import { computed, untracked } from '@angular/core';\nimport { patchState, signalStore, withComputed, withHooks, withMethods, withState, } from '@ngrx/signals';\nimport { compareSelectRequestParams, } from '../utils/request';\nimport { rdtSelectInitialState } from './rdt-select-state';\nfunction getRdtSelectStore(initialState = rdtSelectInitialState) {\n return signalStore(withState(initialState), withHooks({\n onDestroy(store) {\n store._fetchMissingRequest()?.subscription.unsubscribe();\n store._fetchRequest()?.subscription.unsubscribe();\n },\n }), withComputed((state) => ({\n hasMore: computed(() => state.nextPageIndex !== null),\n selectedItems: computed(() => {\n return Array.from(state.selectedMap().values());\n }),\n loadingOptions: computed(() => state._fetchRequest() !== null),\n loadingMissing: computed(() => state._fetchMissingRequest() !== null),\n loading: computed(() => state._fetchRequest() !== null ||\n state._fetchMissingRequest() !== null),\n // Shows selected + others while query is empty\n // Shows only query results while query has value\n visibleOptions: computed(() => {\n const items = state.options();\n const query = state.query();\n const selectedMap = state.selectedMap();\n const missing = state._missingSelected();\n if (query || (selectedMap.size === 0 && missing.length === 0)) {\n return items.map((it) => ({\n ...it,\n selected: selectedMap.has(it.id),\n }));\n }\n const selected = Array.from(selectedMap.values()).map((it) => ({ ...it, selected: true }));\n const missingPlaceholder = state.missingValuePlaceholder();\n const placeholders = missing.map((id) => ({\n id,\n label: missingPlaceholder.replace('{id}', String(id)),\n value: null,\n selected: true,\n }));\n placeholders.forEach((pl) => selected.push(pl));\n items.forEach((item) => {\n if (!selectedMap.has(item.id)) {\n selected.push({ ...item, selected: false });\n }\n });\n return selected;\n }),\n })), withMethods((store) => ({\n fetch() {\n const datasource = untracked(store.datasource);\n const index = untracked(store.nextPageIndex);\n const query = untracked(store.query);\n const pageSize = untracked(store.pageSize);\n if (!datasource || index === null) {\n return;\n }\n const params = {\n query: query,\n pageIndex: index,\n pageSize: pageSize,\n };\n const currentRequest = untracked(store._fetchRequest);\n if (currentRequest) {\n if (compareSelectRequestParams(currentRequest.params, params)) {\n return;\n }\n else {\n currentRequest.subscription.unsubscribe();\n }\n }\n const observer = this._getFetchObserver(params);\n const subscription = datasource.getData(params).subscribe(observer);\n // Offline datasource using `of()` emits value synchronously\n if (!subscription.closed) {\n patchState(store, {\n _fetchRequest: { subscription, params: params },\n });\n }\n },\n _getFetchObserver(requestParams) {\n return {\n next: (page) => this._onFetchSuccess(page, requestParams),\n error: (error) => this._onFetchError(error),\n complete: () => this._onFetchComplete(),\n };\n },\n _onFetchSuccess(page, requestParams) {\n let nextPageIndex = page.pageIndex + 1;\n if (page.totalCount === null) {\n if (page.data.length < requestParams.pageSize) {\n nextPageIndex = null;\n }\n }\n else if (requestParams.pageIndex * requestParams.pageSize + page.data.length >=\n page.totalCount) {\n nextPageIndex = null;\n }\n const options = [\n ...untracked(store.options),\n ...this._getLabelValueIds(page.data),\n ];\n patchState(store, {\n totalCount: page.totalCount ??\n Math.max(untracked(store.totalCount), page.pageIndex * requestParams.pageSize + page.data.length),\n nextPageIndex,\n totalCountKnown: page.totalCount !== null ||\n page.data.length < requestParams.pageSize,\n options,\n _fetchRequest: null,\n });\n this._loadMissingSelected();\n },\n _onFetchError(error) {\n patchState(store, {\n fetchError: getRdtSelectError(error),\n _fetchRequest: null,\n });\n },\n _onFetchComplete() {\n patchState(store, {\n _fetchRequest: null,\n });\n },\n setDatasource(datasource) {\n untracked(store._fetchRequest)?.subscription.unsubscribe();\n patchState(store, {\n datasource,\n _fetchRequest: null,\n fetchError: null,\n totalCountKnown: datasource.totalCountKnown,\n nextPageIndex: 0,\n totalCount: 0,\n options: [],\n });\n if (!datasource.queryRequired) {\n this.fetch();\n }\n else {\n this._loadMissingSelected();\n }\n },\n setQuery(query) {\n const datasource = untracked(store.datasource);\n if (query !== untracked(store.query)) {\n this.reset();\n patchState(store, { query });\n if (query || !datasource?.queryRequired) {\n this.fetch();\n }\n }\n },\n reset() {\n patchState(store, {\n query: null,\n nextPageIndex: 0,\n options: [],\n totalCount: 0,\n totalCountKnown: untracked(store.datasource)?.totalCountKnown ?? true,\n });\n },\n resetTotalCountKnown() {\n patchState(store, {\n totalCountKnown: untracked(store.datasource)?.totalCountKnown ?? true,\n });\n },\n setSelected(ids) {\n patchState(store, {\n _missingSelected: ids,\n selectedMap: new Map(),\n });\n this._loadMissingSelected();\n },\n select(ids) {\n const oldMissing = untracked(store._missingSelected);\n const notInMissing = ids.filter((id) => !oldMissing.includes(id));\n if (notInMissing.length > 0) {\n patchState(store, {\n _missingSelected: oldMissing.concat(notInMissing),\n });\n this._loadMissingSelected();\n }\n },\n unselectAll() {\n const fetchMissingReq = untracked(store._fetchMissingRequest);\n if (fetchMissingReq) {\n fetchMissingReq.subscription.unsubscribe();\n }\n patchState(store, {\n _missingSelected: [],\n selectedMap: new Map(),\n _fetchMissingRequest: null,\n });\n },\n _setAndGetMissing() {\n const allMissing = untracked(store._missingSelected);\n const items = untracked(store.options);\n const selectedMap = new Map(untracked(store.selectedMap));\n const newMissing = [];\n let selectedChanged = false;\n for (const id of allMissing) {\n const item = items.find((it) => it.id === id);\n if (item) {\n selectedMap.set(id, item);\n selectedChanged = true;\n }\n else {\n newMissing.push(id);\n }\n }\n if (selectedChanged) {\n patchState(store, { selectedMap });\n }\n if (newMissing.length === 0) {\n this._cancelFetchMissingIfNeeded();\n }\n patchState(store, { _missingSelected: newMissing });\n return newMissing;\n },\n _loadMissingSelected() {\n const reallyMissing = this._setAndGetMissing();\n if (!untracked(store.loading) && reallyMissing.length > 0) {\n this._fetchMissing(reallyMissing);\n }\n },\n _cancelFetchMissingIfNeeded() {\n const fetchMissingReq = untracked(store._fetchMissingRequest);\n const items = untracked(store.options);\n if (fetchMissingReq?.ids.every((id) => items.some((it) => it.id === id))) {\n fetchMissingReq.subscription.unsubscribe();\n patchState(store, {\n _fetchMissingRequest: null,\n _missingSelected: [],\n });\n }\n },\n _fetchMissing(ids) {\n const datasource = untracked(store.datasource);\n if (!datasource || ids.length === 0) {\n return;\n }\n const sub = datasource.getItemsByIds(ids).subscribe((map) => {\n const newMissing = [];\n const newSelected = new Map(untracked(store.selectedMap));\n for (const id of untracked(store._missingSelected)) {\n if (map.has(id)) {\n const value = map.get(id);\n const label = datasource.getLabel(value);\n newSelected.set(id, { label, value, id });\n }\n else {\n newMissing.push(id);\n }\n }\n patchState(store, {\n _fetchMissingRequest: null,\n _missingSelected: newMissing,\n selectedMap: newSelected,\n });\n this._loadMissingSelected();\n });\n if (!sub.closed) {\n patchState(store, {\n _fetchMissingRequest: { ids, subscription: sub },\n });\n }\n },\n selectSingle(id) {\n this.setSelected([id]);\n },\n toggle(id) {\n const oldMap = untracked(store.selectedMap);\n const datasource = untracked(store.datasource);\n if (!datasource) {\n throw new Error('Datasource is undefined');\n }\n if (oldMap.has(id)) {\n const newMap = new Map(oldMap);\n newMap.delete(id);\n patchState(store, { selectedMap: newMap });\n }\n else {\n const item = untracked(store.options).find((it) => it.id === id);\n if (!item) {\n this.select([id]);\n }\n else {\n const newMap = new Map(oldMap);\n newMap.set(id, item);\n patchState(store, { selectedMap: newMap });\n }\n }\n },\n cancelFetch() {\n untracked(store._fetchRequest)?.subscription.unsubscribe();\n patchState(store, {\n _fetchRequest: null,\n fetchError: null,\n });\n },\n isSelected(item) {\n const datasource = untracked(store.datasource);\n if (!datasource) {\n return false;\n }\n const id = datasource.getId(item);\n return untracked(store.selectedMap).has(id);\n },\n setPageSize(size) {\n patchState(store, { pageSize: size });\n },\n _getLabelValueIds(items) {\n const datasource = untracked(store.datasource);\n if (!datasource) {\n throw new Error('Datasource not set!');\n }\n return items.map((item) => ({\n label: datasource.getLabel(item),\n value: item,\n id: datasource.getId(item),\n }));\n },\n })));\n}\nexport const RdtSelectStore = getRdtSelectStore();\nfunction getRdtSelectError(error) {\n if (typeof error === 'string') {\n return error;\n }\n else if (error instanceof Error) {\n return error.message;\n }\n else if (error && typeof error === 'object' && 'message' in error) {\n return error.message;\n }\n return 'Nastala chyba.';\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LXNlbGVjdC1zdG9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL0BuZ3JkdC9mb3Jtcy9zcmMvbGliL2lucHV0cy9zZWxlY3Qvc3RhdGUvcmR0LXNlbGVjdC1zdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLEVBQ0wsVUFBVSxFQUNWLFdBQVcsRUFDWCxZQUFZLEVBQ1osU0FBUyxFQUNULFdBQVcsRUFDWCxTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFRdkIsT0FBTyxFQUNMLDBCQUEwQixHQUUzQixNQUFNLGtCQUFrQixDQUFDO0FBQzFCLE9BQU8sRUFBRSxxQkFBcUIsRUFBa0IsTUFBTSxvQkFBb0IsQ0FBQztBQUUzRSxTQUFTLGlCQUFpQixDQUFTLFlBQVksR0FBRyxxQkFBcUI7SUFDckUsT0FBTyxXQUFXLENBQ2hCLFNBQVMsQ0FBQyxZQUFzQyxDQUFDLEVBQ2pELFNBQVMsQ0FBQztRQUNSLFNBQVMsQ0FBQyxLQUFLO1lBQ2IsS0FBSyxDQUFDLG9CQUFvQixFQUFFLEVBQUUsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3pELEtBQUssQ0FBQyxhQUFhLEVBQUUsRUFBRSxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEQsQ0FBQztLQUNGLENBQUMsRUFDRixZQUFZLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDdkIsT0FBTyxFQUFFLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsYUFBYSxLQUFLLElBQUksQ0FBQztRQUNyRCxhQUFhLEVBQUUsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUMzQixPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDbEQs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ZCwgdW50cmFja2VkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBwYXRjaFN0YXRlLFxuICBzaWduYWxTdG9yZSxcbiAgd2l0aENvbXB1dGVkLFxuICB3aXRoSG9va3MsXG4gIHdpdGhNZXRob2RzLFxuICB3aXRoU3RhdGUsXG59IGZyb20gJ0BuZ3J4L3NpZ25hbHMnO1xuaW1wb3J0IHsgT2JzZXJ2ZXIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFJkdFNlbGVjdERhdGFzb3VyY2UgfSBmcm9tICcuLi9kYXRhc291cmNlL3JkdC1zZWxlY3QtZGF0YXNvdXJjZSc7XG5pbXBvcnQgeyBSZHRTZWxlY3RQYWdlIH0gZnJvbSAnLi4vZGF0YXNvdXJjZS9yZHQtc2VsZWN0LXBhZ2UnO1xuaW1wb3J0IHtcbiAgUmR0TGFiZWxWYWx1ZUlkLFxuICBSZHRSZW5kZXJlZFNlbGVjdE9wdGlvbixcbn0gZnJvbSAnLi4vdXRpbHMvbGFiZWwtdmFsdWUtaWQnO1xuaW1wb3J0IHtcbiAgY29tcGFyZVNlbGVjdFJlcXVlc3RQYXJhbXMsXG4gIFJkdFNlbGVjdFJlcXVlc3RQYXJhbXMsXG59IGZyb20gJy4uL3V0aWxzL3JlcXVlc3QnO1xuaW1wb3J0IHsgcmR0U2VsZWN0SW5pdGlhbFN0YXRlLCBSZHRTZWxlY3RTdGF0ZSB9IGZyb20gJy4vcmR0LXNlbGVjdC1zdGF0ZSc7XG5cbmZ1bmN0aW9uIGdldFJkdFNlbGVjdFN0b3JlPFQsIFRJZD4oaW5pdGlhbFN0YXRlID0gcmR0U2VsZWN0SW5pdGlhbFN0YXRlKSB7XG4gIHJldHVybiBzaWduYWxTdG9yZShcbiAgICB3aXRoU3RhdGUoaW5pdGlhbFN0YXRlIGFzIFJkdFNlbGVjdFN0YXRlPFQsIFRJZD4pLFxuICAgIHdpdGhIb29rcyh7XG4gICAgICBvbkRlc3Ryb3koc3RvcmUpIHtcbiAgICAgICAgc3RvcmUuX2ZldGNoTWlzc2luZ1JlcXVlc3QoKT8uc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHN0b3JlLl9mZXRjaFJlcXVlc3QoKT8uc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICB9LFxuICAgIH0pLFxuICAgIHdpdGhDb21wdXRlZCgoc3RhdGUpID0+ICh7XG4gICAgICBoYXNNb3JlOiBjb21wdXRlZCgoKSA9PiBzdGF0ZS5uZXh0UGFnZUluZGV4ICE9PSBudWxsKSxcbiAgICAgIHNlbGVjdGVkSXRlbXM6IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgcmV0dXJuIEFycmF5LmZyb20oc3RhdGUuc2VsZWN0ZWRNYXAoKS52YWx1ZXMoKSk7XG4gICAgICB9KSxcbiAgICAgIGxvYWRpbmdPcHRpb25zOiBjb21wdXRlZCgoKSA9PiBzdGF0ZS5fZmV0Y2hSZXF1ZXN0KCkgIT09IG51bGwpLFxuICAgICAgbG9hZGluZ01pc3Npbmc6IGNvbXB1dGVkKCgpID0+IHN0YXRlLl9mZXRjaE1pc3NpbmdSZXF1ZXN0KCkgIT09IG51bGwpLFxuICAgICAgbG9hZGluZzogY29tcHV0ZWQoXG4gICAgICAgICgpID0+XG4gICAgICAgICAgc3RhdGUuX2ZldGNoUmVxdWVzdCgpICE9PSBudWxsIHx8XG4gICAgICAgICAgc3RhdGUuX2ZldGNoTWlzc2luZ1JlcXVlc3QoKSAhPT0gbnVsbFxuICAgICAgKSxcbiAgICAgIC8vIFNob3dzIHNlbGVjdGVkICsgb3RoZXJzIHdoaWxlIHF1ZXJ5IGlzIGVtcHR5XG4gICAgICAvLyBTaG93cyBvbmx5IHF1ZXJ5IHJlc3VsdHMgd2hpbGUgcXVlcnkgaGFzIHZhbHVlXG4gICAgICB2aXNpYmxlT3B0aW9uczogY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBjb25zdCBpdGVtcyA9IHN0YXRlLm9wdGlvbnMoKTtcbiAgICAgICAgY29uc3QgcXVlcnkgPSBzdGF0ZS5xdWVyeSgpO1xuICAgICAgICBjb25zdCBzZWxlY3RlZE1hcCA9IHN0YXRlLnNlbGVjdGVkTWFwKCk7XG4gICAgICAgIGNvbnN0IG1pc3NpbmcgPSBzdGF0ZS5fbWlzc2luZ1NlbGVjdGVkKCk7XG4gICAgICAgIGlmIChxdWVyeSB8fCAoc2VsZWN0ZWRNYXAuc2l6ZSA9PT0gMCAmJiBtaXNzaW5nLmxlbmd0aCA9PT0gMCkpIHtcbiAgICAgICAgICByZXR1cm4gaXRlbXMubWFwKChpdCkgPT4gKHtcbiAgICAgICAgICAgIC4uLml0LFxuICAgICAgICAgICAgc2VsZWN0ZWQ6IHNlbGVjdGVkTWFwLmhhcyhpdC5pZCksXG4gICAgICAgICAgfSkpIGFzIFJkdFJlbmRlcmVkU2VsZWN0T3B0aW9uPFQsIFRJZD5bXTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBzZWxlY3RlZDogUmR0UmVuZGVyZWRTZWxlY3RPcHRpb248VCwgVElkPltdID0gQXJyYXkuZnJvbShcbiAgICAgICAgICBzZWxlY3RlZE1hcC52YWx1ZXMoKVxuICAgICAgICApLm1hcCgoaXQpID0+ICh7IC4uLml0LCBzZWxlY3RlZDogdHJ1ZSB9KSk7XG4gICAgICAgIGNvbnN0IG1pc3NpbmdQbGFjZWhvbGRlciA9IHN0YXRlLm1pc3NpbmdWYWx1ZVBsYWNlaG9sZGVyKCk7XG4gICAgICAgIGNvbnN0IHBsYWNlaG9sZGVycyA9IG1pc3NpbmcubWFwKChpZCkgPT4gKHtcbiAgICAgICAgICBpZCxcbiAgICAgICAgICBsYWJlbDogbWlzc2luZ1BsYWNlaG9sZGVyLnJlcGxhY2UoJ3tpZH0nLCBTdHJpbmcoaWQpKSxcbiAgICAgICAgICB2YWx1ZTogbnVsbCxcbiAgICAgICAgICBzZWxlY3RlZDogdHJ1ZSxcbiAgICAgICAgfSkpO1xuICAgICAgICBwbGFjZWhvbGRlcnMuZm9yRWFjaCgocGwpID0+IHNlbGVjdGVkLnB1c2gocGwpKTtcblxuICAgICAgICBpdGVtcy5mb3JFYWNoKChpdGVtKSA9PiB7XG4gICAgICAgICAgaWYgKCFzZWxlY3RlZE1hcC5oYXMoaXRlbS5pZCkpIHtcbiAgICAgICAgICAgIHNlbGVjdGVkLnB1c2goeyAuLi5pdGVtLCBzZWxlY3RlZDogZmFsc2UgfSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHNlbGVjdGVkO1xuICAgICAgfSksXG4gICAgfSkpLFxuICAgIHdpdGhNZXRob2RzKChzdG9yZSkgPT4gKHtcbiAgICAgIGZldGNoKCkge1xuICAgICAgICBjb25zdCBkYXRhc291cmNlID0gdW50cmFja2VkKHN0b3JlLmRhdGFzb3VyY2UpO1xuICAgICAgICBjb25zdCBpbmRleCA9IHVudHJhY2tlZChzdG9yZS5uZXh0UGFnZUluZGV4KTtcbiAgICAgICAgY29uc3QgcXVlcnkgPSB1bnRyYWNrZWQoc3RvcmUucXVlcnkpO1xuICAgICAgICBjb25zdCBwYWdlU2l6ZSA9IHVudHJhY2tlZChzdG9yZS5wYWdlU2l6ZSk7XG4gICAgICAgIGlmICghZGF0YXNvdXJjZSB8fCBpbmRleCA9PT0gbnVsbCkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBwYXJhbXM6IFJkdFNlbGVjdFJlcXVlc3RQYXJhbXMgPSB7XG4gICAgICAgICAgcXVlcnk6IHF1ZXJ5LFxuICAgICAgICAgIHBhZ2VJbmRleDogaW5kZXgsXG4gICAgICAgICAgcGFnZVNpemU6IHBhZ2VTaXplLFxuICAgICAgICB9O1xuICAgICAgICBjb25zdCBjdXJyZW50UmVxdWVzdCA9IHVudHJhY2tlZChzdG9yZS5fZmV0Y2hSZXF1ZXN0KTtcbiAgICAgICAgaWYgKGN1cnJlbnRSZXF1ZXN0KSB7XG4gICAgICAgICAgaWYgKGNvbXBhcmVTZWxlY3RSZXF1ZXN0UGFyYW1zKGN1cnJlbnRSZXF1ZXN0LnBhcmFtcywgcGFyYW1zKSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjdXJyZW50UmVxdWVzdC5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgb2JzZXJ2ZXIgPSB0aGlzLl9nZXRGZXRjaE9ic2VydmVyKHBhcmFtcyk7XG4gICAgICAgIGNvbnN0IHN1YnNjcmlwdGlvbiA9IGRhdGFzb3VyY2UuZ2V0RGF0YShwYXJhbXMpLnN1YnNjcmliZShvYnNlcnZlcik7XG4gICAgICAgIC8vIE9mZmxpbmUgZGF0YXNvdXJjZSB1c2luZyBgb2YoKWAgZW1pdHMgdmFsdWUgc3luY2hyb25vdXNseVxuICAgICAgICBpZiAoIXN1YnNjcmlwdGlvbi5jbG9zZWQpIHtcbiAgICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7XG4gICAgICAgICAgICBfZmV0Y2hSZXF1ZXN0OiB7IHN1YnNjcmlwdGlvbiwgcGFyYW1zOiBwYXJhbXMgfSxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIF9nZXRGZXRjaE9ic2VydmVyKFxuICAgICAgICByZXF1ZXN0UGFyYW1zOiBSZHRTZWxlY3RSZXF1ZXN0UGFyYW1zXG4gICAgICApOiBPYnNlcnZlcjxSZHRTZWxlY3RQYWdlPFQ+PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgbmV4dDogKHBhZ2UpID0+IHRoaXMuX29uRmV0Y2hTdWNjZXNzKHBhZ2UsIHJlcXVlc3RQYXJhbXMpLFxuICAgICAgICAgIGVycm9yOiAoZXJyb3IpID0+IHRoaXMuX29uRmV0Y2hFcnJvcihlcnJvciksXG4gICAgICAgICAgY29tcGxldGU6ICgpID0+IHRoaXMuX29uRmV0Y2hDb21wbGV0ZSgpLFxuICAgICAgICB9O1xuICAgICAgfSxcbiAgICAgIF9vbkZldGNoU3VjY2VzcyhcbiAgICAgICAgcGFnZTogUmR0U2VsZWN0UGFnZTxUPixcbiAgICAgICAgcmVxdWVzdFBhcmFtczogUmR0U2VsZWN0UmVxdWVzdFBhcmFtc1xuICAgICAgKSB7XG4gICAgICAgIGxldCBuZXh0UGFnZUluZGV4OiBudW1iZXIgfCBudWxsID0gcGFnZS5wYWdlSW5kZXggKyAxO1xuICAgICAgICBpZiAocGFnZS50b3RhbENvdW50ID09PSBudWxsKSB7XG4gICAgICAgICAgaWYgKHBhZ2UuZGF0YS5sZW5ndGggPCByZXF1ZXN0UGFyYW1zLnBhZ2VTaXplKSB7XG4gICAgICAgICAgICBuZXh0UGFnZUluZGV4ID0gbnVsbDtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgICAgcmVxdWVzdFBhcmFtcy5wYWdlSW5kZXggKiByZXF1ZXN0UGFyYW1zLnBhZ2VTaXplICsgcGFnZS5kYXRhLmxlbmd0aCA+PVxuICAgICAgICAgIHBhZ2UudG90YWxDb3VudFxuICAgICAgICApIHtcbiAgICAgICAgICBuZXh0UGFnZUluZGV4ID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBvcHRpb25zID0gW1xuICAgICAgICAgIC4uLnVudHJhY2tlZChzdG9yZS5vcHRpb25zKSxcbiAgICAgICAgICAuLi50aGlzLl9nZXRMYWJlbFZhbHVlSWRzKHBhZ2UuZGF0YSksXG4gICAgICAgIF07XG4gICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHtcbiAgICAgICAgICB0b3RhbENvdW50OlxuICAgICAgICAgICAgcGFnZS50b3RhbENvdW50ID8/XG4gICAgICAgICAgICBNYXRoLm1heChcbiAgICAgICAgICAgICAgdW50cmFja2VkKHN0b3JlLnRvdGFsQ291bnQpLFxuICAgICAgICAgICAgICBwYWdlLnBhZ2VJbmRleCAqIHJlcXVlc3RQYXJhbXMucGFnZVNpemUgKyBwYWdlLmRhdGEubGVuZ3RoXG4gICAgICAgICAgICApLFxuICAgICAgICAgIG5leHRQYWdlSW5kZXgsXG4gICAgICAgICAgdG90YWxDb3VudEtub3duOlxuICAgICAgICAgICAgcGFnZS50b3RhbENvdW50ICE9PSBudWxsIHx8XG4gICAgICAgICAgICBwYWdlLmRhdGEubGVuZ3RoIDwgcmVxdWVzdFBhcmFtcy5wYWdlU2l6ZSxcbiAgICAgICAgICBvcHRpb25zLFxuICAgICAgICAgIF9mZXRjaFJlcXVlc3Q6IG51bGwsXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLl9sb2FkTWlzc2luZ1NlbGVjdGVkKCk7XG4gICAgICB9LFxuICAgICAgX29uRmV0Y2hFcnJvcihlcnJvcjogYW55KSB7XG4gICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHtcbiAgICAgICAgICBmZXRjaEVycm9yOiBnZXRSZHRTZWxlY3RFcnJvcihlcnJvciksXG4gICAgICAgICAgX2ZldGNoUmVxdWVzdDogbnVsbCxcbiAgICAgICAgfSk7XG4gICAgICB9LFxuICAgICAgX29uRmV0Y2hDb21wbGV0ZSgpIHtcbiAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwge1xuICAgICAgICAgIF9mZXRjaFJlcXVlc3Q6IG51bGwsXG4gICAgICAgIH0pO1xuICAgICAgfSxcbiAgICAgIHNldERhdGFzb3VyY2UoZGF0YXNvdXJjZTogUmR0U2VsZWN0RGF0YXNvdXJjZTxULCBUSWQ+KSB7XG4gICAgICAgIHVudHJhY2tlZChzdG9yZS5fZmV0Y2hSZXF1ZXN0KT8uc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHtcbiAgICAgICAgICBkYXRhc291cmNlLFxuICAgICAgICAgIF9mZXRjaFJlcXVlc3Q6IG51bGwsXG4gICAgICAgICAgZmV0Y2hFcnJvcjogbnVsbCxcbiAgICAgICAgICB0b3RhbENvdW50S25vd246IGRhdGFzb3VyY2UudG90YWxDb3VudEtub3duLFxuICAgICAgICAgIG5leHRQYWdlSW5kZXg6IDAsXG4gICAgICAgICAgdG90YWxDb3VudDogMCxcbiAgICAgICAgICBvcHRpb25zOiBbXSxcbiAgICAgICAgfSk7XG4gICAgICAgIGlmICghZGF0YXNvdXJjZS5xdWVyeVJlcXVpcmVkKSB7XG4gICAgICAgICAgdGhpcy5mZXRjaCgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuX2xvYWRNaXNzaW5nU2VsZWN0ZWQoKTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHNldFF1ZXJ5KHF1ZXJ5OiBzdHJpbmcgfCBudWxsKSB7XG4gICAgICAgIGNvbnN0IGRhdGFzb3VyY2UgPSB1bnRyYWNrZWQoc3RvcmUuZGF0YXNvdXJjZSk7XG4gICAgICAgIGlmIChxdWVyeSAhPT0gdW50cmFja2VkKHN0b3JlLnF1ZXJ5KSkge1xuICAgICAgICAgIHRoaXMucmVzZXQoKTtcbiAgICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7IHF1ZXJ5IH0pO1xuICAgICAgICAgIGlmIChxdWVyeSB8fCAhZGF0YXNvdXJjZT8ucXVlcnlSZXF1aXJlZCkge1xuICAgICAgICAgICAgdGhpcy5mZXRjaCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHJlc2V0KCkge1xuICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7XG4gICAgICAgICAgcXVlcnk6IG51bGwsXG4gICAgICAgICAgbmV4dFBhZ2VJbmRleDogMCxcbiAgICAgICAgICBvcHRpb25zOiBbXSxcbiAgICAgICAgICB0b3RhbENvdW50OiAwLFxuICAgICAgICAgIHRvdGFsQ291bnRLbm93bjogdW50cmFja2VkKHN0b3JlLmRhdGFzb3VyY2UpPy50b3RhbENvdW50S25vd24gPz8gdHJ1ZSxcbiAgICAgICAgfSk7XG4gICAgICB9LFxuICAgICAgcmVzZXRUb3RhbENvdW50S25vd24oKSB7XG4gICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHtcbiAgICAgICAgICB0b3RhbENvdW50S25vd246IHVudHJhY2tlZChzdG9yZS5kYXRhc291cmNlKT8udG90YWxDb3VudEtub3duID8/IHRydWUsXG4gICAgICAgIH0pO1xuICAgICAgfSxcbiAgICAgIHNldFNlbGVjdGVkKGlkczogVElkW10pIHtcbiAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwge1xuICAgICAgICAgIF9taXNzaW5nU2VsZWN0ZWQ6IGlkcyxcbiAgICAgICAgICBzZWxlY3RlZE1hcDogbmV3IE1hcCgpLFxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5fbG9hZE1pc3NpbmdTZWxlY3RlZCgpO1xuICAgICAgfSxcbiAgICAgIHNlbGVjdChpZHM6IFRJZFtdKSB7XG4gICAgICAgIGNvbnN0IG9sZE1pc3NpbmcgPSB1bnRyYWNrZWQoc3RvcmUuX21pc3NpbmdTZWxlY3RlZCk7XG4gICAgICAgIGNvbnN0IG5vdEluTWlzc2luZyA9IGlkcy5maWx0ZXIoKGlkKSA9PiAhb2xkTWlzc2luZy5pbmNsdWRlcyhpZCkpO1xuICAgICAgICBpZiAobm90SW5NaXNzaW5nLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7XG4gICAgICAgICAgICBfbWlzc2luZ1NlbGVjdGVkOiBvbGRNaXNzaW5nLmNvbmNhdChub3RJbk1pc3NpbmcpLFxuICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgdGhpcy5fbG9hZE1pc3NpbmdTZWxlY3RlZCgpO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgdW5zZWxlY3RBbGwoKSB7XG4gICAgICAgIGNvbnN0IGZldGNoTWlzc2luZ1JlcSA9IHVudHJhY2tlZChzdG9yZS5fZmV0Y2hNaXNzaW5nUmVxdWVzdCk7XG4gICAgICAgIGlmIChmZXRjaE1pc3NpbmdSZXEpIHtcbiAgICAgICAgICBmZXRjaE1pc3NpbmdSZXEuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIH1cbiAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwge1xuICAgICAgICAgIF9taXNzaW5nU2VsZWN0ZWQ6IFtdLFxuICAgICAgICAgIHNlbGVjdGVkTWFwOiBuZXcgTWFwKCksXG4gICAgICAgICAgX2ZldGNoTWlzc2luZ1JlcXVlc3Q6IG51bGwsXG4gICAgICAgIH0pO1xuICAgICAgfSxcbiAgICAgIF9zZXRBbmRHZXRNaXNzaW5nKCkge1xuICAgICAgICBjb25zdCBhbGxNaXNzaW5nID0gdW50cmFja2VkKHN0b3JlLl9taXNzaW5nU2VsZWN0ZWQpO1xuICAgICAgICBjb25zdCBpdGVtcyA9IHVudHJhY2tlZChzdG9yZS5vcHRpb25zKTtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWRNYXAgPSBuZXcgTWFwKHVudHJhY2tlZChzdG9yZS5zZWxlY3RlZE1hcCkpO1xuICAgICAgICBjb25zdCBuZXdNaXNzaW5nOiBUSWRbXSA9IFtdO1xuXG4gICAgICAgIGxldCBzZWxlY3RlZENoYW5nZWQgPSBmYWxzZTtcbiAgICAgICAgZm9yIChjb25zdCBpZCBvZiBhbGxNaXNzaW5nKSB7XG4gICAgICAgICAgY29uc3QgaXRlbSA9IGl0ZW1zLmZpbmQoKGl0KSA9PiBpdC5pZCA9PT0gaWQpO1xuICAgICAgICAgIGlmIChpdGVtKSB7XG4gICAgICAgICAgICBzZWxlY3RlZE1hcC5zZXQoaWQsIGl0ZW0pO1xuICAgICAgICAgICAgc2VsZWN0ZWRDaGFuZ2VkID0gdHJ1ZTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbmV3TWlzc2luZy5wdXNoKGlkKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHNlbGVjdGVkQ2hhbmdlZCkge1xuICAgICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgc2VsZWN0ZWRNYXAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG5ld01pc3NpbmcubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgdGhpcy5fY2FuY2VsRmV0Y2hNaXNzaW5nSWZOZWVkZWQoKTtcbiAgICAgICAgfVxuICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7IF9taXNzaW5nU2VsZWN0ZWQ6IG5ld01pc3NpbmcgfSk7XG4gICAgICAgIHJldHVybiBuZXdNaXNzaW5nO1xuICAgICAgfSxcbiAgICAgIF9sb2FkTWlzc2luZ1NlbGVjdGVkKCkge1xuICAgICAgICBjb25zdCByZWFsbHlNaXNzaW5nID0gdGhpcy5fc2V0QW5kR2V0TWlzc2luZygpO1xuICAgICAgICBpZiAoIXVudHJhY2tlZChzdG9yZS5sb2FkaW5nKSAmJiByZWFsbHlNaXNzaW5nLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICB0aGlzLl9mZXRjaE1pc3NpbmcocmVhbGx5TWlzc2luZyk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBfY2FuY2VsRmV0Y2hNaXNzaW5nSWZOZWVkZWQoKSB7XG4gICAgICAgIGNvbnN0IGZldGNoTWlzc2luZ1JlcSA9IHVudHJhY2tlZChzdG9yZS5fZmV0Y2hNaXNzaW5nUmVxdWVzdCk7XG4gICAgICAgIGNvbnN0IGl0ZW1zID0gdW50cmFja2VkKHN0b3JlLm9wdGlvbnMpO1xuICAgICAgICBpZiAoXG4gICAgICAgICAgZmV0Y2hNaXNzaW5nUmVxPy5pZHMuZXZlcnkoKGlkKSA9PiBpdGVtcy5zb21lKChpdCkgPT4gaXQuaWQgPT09IGlkKSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgZmV0Y2hNaXNzaW5nUmVxLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHtcbiAgICAgICAgICAgIF9mZXRjaE1pc3NpbmdSZXF1ZXN0OiBudWxsLFxuICAgICAgICAgICAgX21pc3NpbmdTZWxlY3RlZDogW10sXG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBfZmV0Y2hNaXNzaW5nKGlkczogVElkW10pIHtcbiAgICAgICAgY29uc3QgZGF0YXNvdXJjZSA9IHVudHJhY2tlZChzdG9yZS5kYXRhc291cmNlKTtcbiAgICAgICAgaWYgKCFkYXRhc291cmNlIHx8IGlkcy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgc3ViID0gZGF0YXNvdXJjZS5nZXRJdGVtc0J5SWRzKGlkcykuc3Vic2NyaWJlKChtYXApID0+IHtcbiAgICAgICAgICBjb25zdCBuZXdNaXNzaW5nOiBUSWRbXSA9IFtdO1xuICAgICAgICAgIGNvbnN0IG5ld1NlbGVjdGVkID0gbmV3IE1hcCh1bnRyYWNrZWQoc3RvcmUuc2VsZWN0ZWRNYXApKTtcbiAgICAgICAgICBmb3IgKGNvbnN0IGlkIG9mIHVudHJhY2tlZChzdG9yZS5fbWlzc2luZ1NlbGVjdGVkKSkge1xuICAgICAgICAgICAgaWYgKG1hcC5oYXMoaWQpKSB7XG4gICAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gbWFwLmdldChpZCkhO1xuICAgICAgICAgICAgICBjb25zdCBsYWJlbCA9IGRhdGFzb3VyY2UuZ2V0TGFiZWwodmFsdWUpO1xuICAgICAgICAgICAgICBuZXdTZWxlY3RlZC5zZXQoaWQsIHsgbGFiZWwsIHZhbHVlLCBpZCB9KTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIG5ld01pc3NpbmcucHVzaChpZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHtcbiAgICAgICAgICAgIF9mZXRjaE1pc3NpbmdSZXF1ZXN0OiBudWxsLFxuICAgICAgICAgICAgX21pc3NpbmdTZWxlY3RlZDogbmV3TWlzc2luZyxcbiAgICAgICAgICAgIHNlbGVjdGVkTWFwOiBuZXdTZWxlY3RlZCxcbiAgICAgICAgICB9KTtcbiAgICAgICAgICB0aGlzLl9sb2FkTWlzc2luZ1NlbGVjdGVkKCk7XG4gICAgICAgIH0pO1xuICAgICAgICBpZiAoIXN1Yi5jbG9zZWQpIHtcbiAgICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7XG4gICAgICAgICAgICBfZmV0Y2hNaXNzaW5nUmVxdWVzdDogeyBpZHMsIHN1YnNjcmlwdGlvbjogc3ViIH0sXG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBzZWxlY3RTaW5nbGUoaWQ6IFRJZCkge1xuICAgICAgICB0aGlzLnNldFNlbGVjdGVkKFtpZF0pO1xuICAgICAgfSxcbiAgICAgIHRvZ2dsZShpZDogVElkKSB7XG4gICAgICAgIGNvbnN0IG9sZE1hcCA9IHVudHJhY2tlZChzdG9yZS5zZWxlY3RlZE1hcCk7XG4gICAgICAgIGNvbnN0IGRhdGFzb3VyY2UgPSB1bnRyYWNrZWQoc3RvcmUuZGF0YXNvdXJjZSk7XG4gICAgICAgIGlmICghZGF0YXNvdXJjZSkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcignRGF0YXNvdXJjZSBpcyB1bmRlZmluZWQnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAob2xkTWFwLmhhcyhpZCkpIHtcbiAgICAgICAgICBjb25zdCBuZXdNYXAgPSBuZXcgTWFwKG9sZE1hcCk7XG4gICAgICAgICAgbmV3TWFwLmRlbGV0ZShpZCk7XG4gICAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwgeyBzZWxlY3RlZE1hcDogbmV3TWFwIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnN0IGl0ZW0gPSB1bnRyYWNrZWQoc3RvcmUub3B0aW9ucykuZmluZCgoaXQpID0+IGl0LmlkID09PSBpZCk7XG4gICAgICAgICAgaWYgKCFpdGVtKSB7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdChbaWRdKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgbmV3TWFwID0gbmV3IE1hcChvbGRNYXApO1xuICAgICAgICAgICAgbmV3TWFwLnNldChpZCwgaXRlbSk7XG4gICAgICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7IHNlbGVjdGVkTWFwOiBuZXdNYXAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgY2FuY2VsRmV0Y2goKSB7XG4gICAgICAgIHVudHJhY2tlZChzdG9yZS5fZmV0Y2hSZXF1ZXN0KT8uc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHtcbiAgICAgICAgICBfZmV0Y2hSZXF1ZXN0OiBudWxsLFxuICAgICAgICAgIGZldGNoRXJyb3I6IG51bGwsXG4gICAgICAgIH0pO1xuICAgICAgfSxcbiAgICAgIGlzU2VsZWN0ZWQoaXRlbTogVCkge1xuICAgICAgICBjb25zdCBkYXRhc291cmNlID0gdW50cmFja2VkKHN0b3JlLmRhdGFzb3VyY2UpO1xuICAgICAgICBpZiAoIWRhdGFzb3VyY2UpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgaWQgPSBkYXRhc291cmNlLmdldElkKGl0ZW0pO1xuICAgICAgICByZXR1cm4gdW50cmFja2VkKHN0b3JlLnNlbGVjdGVkTWFwKS5oYXMoaWQpO1xuICAgICAgfSxcbiAgICAgIHNldFBhZ2VTaXplKHNpemU6IG51bWJlcikge1xuICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7IHBhZ2VTaXplOiBzaXplIH0pO1xuICAgICAgfSxcbiAgICAgIF9nZXRMYWJlbFZhbHVlSWRzKGl0ZW1zOiBUW10pOiBSZHRMYWJlbFZhbHVlSWQ8VCwgVElkPltdIHtcbiAgICAgICAgY29uc3QgZGF0YXNvdXJjZSA9IHVudHJhY2tlZChzdG9yZS5kYXRhc291cmNlKTtcbiAgICAgICAgaWYgKCFkYXRhc291cmNlKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdEYXRhc291cmNlIG5vdCBzZXQhJyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGl0ZW1zLm1hcCgoaXRlbSkgPT4gKHtcbiAgICAgICAgICBsYWJlbDogZGF0YXNvdXJjZS5nZXRMYWJlbChpdGVtKSxcbiAgICAgICAgICB2YWx1ZTogaXRlbSxcbiAgICAgICAgICBpZDogZGF0YXNvdXJjZS5nZXRJZChpdGVtKSxcbiAgICAgICAgfSkpO1xuICAgICAgfSxcbiAgICB9KSlcbiAgKTtcbn1cblxuZXhwb3J0IGNvbnN0IFJkdFNlbGVjdFN0b3JlID0gZ2V0UmR0U2VsZWN0U3RvcmU8YW55LCBhbnk+KCk7XG5leHBvcnQgdHlwZSBSZHRTZWxlY3RTdG9yZTxUID0gYW55LCBUSWQgPSBudW1iZXI+ID0gSW5zdGFuY2VUeXBlPFxuICBSZXR1cm5UeXBlPHR5cGVvZiBnZXRSZHRTZWxlY3RTdG9yZTxULCBUSWQ+PlxuPjtcblxuZnVuY3Rpb24gZ2V0UmR0U2VsZWN0RXJyb3IoZXJyb3I6IGFueSkge1xuICBpZiAodHlwZW9mIGVycm9yID09PSAnc3RyaW5nJykge1xuICAgIHJldHVybiBlcnJvcjtcbiAgfSBlbHNlIGlmIChlcnJvciBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgcmV0dXJuIGVycm9yLm1lc3NhZ2U7XG4gIH0gZWxzZSBpZiAoZXJyb3IgJiYgdHlwZW9mIGVycm9yID09PSAnb2JqZWN0JyAmJiAnbWVzc2FnZScgaW4gZXJyb3IpIHtcbiAgICByZXR1cm4gZXJyb3IubWVzc2FnZTtcbiAgfVxuICByZXR1cm4gJ05hc3RhbGEgY2h5YmEuJztcbn1cbiJdfQ==","import { computed, Directive, effect, inject, input } from '@angular/core';\nimport { RdtOfflineSelectDatasource } from '../datasource';\nimport { RdtSelectStore } from '../state';\nimport * as i0 from \"@angular/core\";\nexport class RdtSelectOfflineDatasourceProviderDirective {\n store = inject(RdtSelectStore);\n optionsInput = input.required({\n alias: 'options',\n });\n options = computed(() => this.parseOptions(this.optionsInput()));\n parseOptions(options) {\n if (!options || options.length === 0) {\n return [];\n }\n if (typeof options[0] === 'object' && options[0]) {\n return options;\n }\n else {\n return options.map((value) => ({\n label: String(value),\n value: value,\n }));\n }\n }\n optionsEffect = effect(() => this.setDatasource());\n setDatasource() {\n const options = this.options();\n this.store.setDatasource(new RdtOfflineSelectDatasource(options));\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtSelectOfflineDatasourceProviderDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.0\", type: RdtSelectOfflineDatasourceProviderDirective, isStandalone: true, inputs: { optionsInput: { classPropertyName: \"optionsInput\", publicName: \"options\", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtSelectOfflineDatasourceProviderDirective, decorators: [{\n type: Directive\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LXNlbGVjdC1vZmZsaW5lLWRhdGFzb3VyY2UuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vQG5ncmR0L2Zvcm1zL3NyYy9saWIvaW5wdXRzL3NlbGVjdC9kaXJlY3RpdmVzL3JkdC1zZWxlY3Qtb2ZmbGluZS1kYXRhc291cmNlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7QUFJMUMsTUFBTSxPQUFnQiwyQ0FBMkM7SUFHdEQsS0FBSyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUUvQixZQUFZLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FFcEM7UUFDQSxLQUFLLEVBQUUsU0FBUztLQUNqQixDQUFDLENBQUM7SUFDTSxPQUFPLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQztJQUVsRSxZQUFZLENBQ2xCLE9BQXVEO1FBRXZELElBQUksQ0FBQyxPQUFPLElBQUksT0FBTyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNyQyxPQUFPLEVBQUUsQ0FBQztRQUNaLENBQUM7UUFDRCxJQUFJLE9BQU8sT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLFFBQVEsSUFBSSxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNqRCxPQUFPLE9BQWtDLENBQUM7UUFDNUMsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFRLE9BQW9CLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUMzQyxLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUssQ0FBQztnQkFDcEIsS0FBSyxFQUFFLEtBQUs7YUFDYixDQUFDLENBQUMsQ0FBQztRQUNOLENBQUM7SUFDSCxDQUFDO0lBRWdCLGFBQWEsR0FBRyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUM7SUFFNUQsYUFBYTtRQUNuQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDL0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsSUFBSSwwQkFBMEIsQ0FBUyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQzVFLENBQUM7dUdBakNtQiwyQ0FBMkM7MkZBQTNDLDJDQUEyQzs7MkZBQTNDLDJDQUEyQztrQkFEaEUsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvbXB1dGVkLCBEaXJlY3RpdmUsIGVmZmVjdCwgaW5qZWN0LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmR0T2ZmbGluZVNlbGVjdERhdGFzb3VyY2UgfSBmcm9tICcuLi9kYXRhc291cmNlJztcbmltcG9ydCB7IFJkdFNlbGVjdFN0b3JlIH0gZnJvbSAnLi4vc3RhdGUnO1xuaW1wb3J0IHsgUmR0TGFiZWxWYWx1ZSB9IGZyb20gJy4uL3V0aWxzL2xhYmVsLXZhbHVlLWlkJztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgUmR0U2VsZWN0T2ZmbGluZURhdGFzb3VyY2VQcm92aWRlckRpcmVjdGl2ZTxcbiAgVFZhbHVlIGV4dGVuZHMgc3RyaW5nIHwgbnVtYmVyXG4+IHtcbiAgcmVhZG9ubHkgc3RvcmUgPSBpbmplY3QoUmR0U2VsZWN0U3RvcmUpO1xuXG4gIHJlYWRvbmx5IG9wdGlvbnNJbnB1dCA9IGlucHV0LnJlcXVpcmVkPFxuICAgIFJkdExhYmVsVmFsdWU8VFZhbHVlPltdIHwgVFZhbHVlW10gfCB1bmRlZmluZWRcbiAgPih7XG4gICAgYWxpYXM6ICdvcHRpb25zJyxcbiAgfSk7XG4gIHJlYWRvbmx5IG9wdGlvbnMgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnBhcnNlT3B0aW9ucyh0aGlzLm9wdGlvbnNJbnB1dCgpKSk7XG5cbiAgcHJpdmF0ZSBwYXJzZU9wdGlvbnMoXG4gICAgb3B0aW9uczogUmR0TGFiZWxWYWx1ZTxUVmFsdWU+W10gfCBUVmFsdWVbXSB8IHVuZGVmaW5lZFxuICApOiBSZHRMYWJlbFZhbHVlPFRWYWx1ZT5bXSB7XG4gICAgaWYgKCFvcHRpb25zIHx8IG9wdGlvbnMubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuICAgIGlmICh0eXBlb2Ygb3B0aW9uc1swXSA9PT0gJ29iamVjdCcgJiYgb3B0aW9uc1swXSkge1xuICAgICAgcmV0dXJuIG9wdGlvbnMgYXMgUmR0TGFiZWxWYWx1ZTxUVmFsdWU+W107XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiAob3B0aW9ucyBhcyBUVmFsdWVbXSkubWFwKCh2YWx1ZSkgPT4gKHtcbiAgICAgICAgbGFiZWw6IFN0cmluZyh2YWx1ZSksXG4gICAgICAgIHZhbHVlOiB2YWx1ZSxcbiAgICAgIH0pKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnNFZmZlY3QgPSBlZmZlY3QoKCkgPT4gdGhpcy5zZXREYXRhc291cmNlKCkpO1xuXG4gIHByaXZhdGUgc2V0RGF0YXNvdXJjZSgpIHtcbiAgICBjb25zdCBvcHRpb25zID0gdGhpcy5vcHRpb25zKCk7XG4gICAgdGhpcy5zdG9yZS5zZXREYXRhc291cmNlKG5ldyBSZHRPZmZsaW5lU2VsZWN0RGF0YXNvdXJjZTxUVmFsdWU+KG9wdGlvbnMpKTtcbiAgfVxufVxuIl19","import { Directive, ElementRef, inject, input, signal } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class RdtSelectOptionDirective {\n elementRef = inject(ElementRef);\n value = input.required({ alias: 'rdtSelectOption' });\n _selected = signal(false);\n set selected(value) {\n this._selected.set(value);\n }\n get selected() {\n return this._selected();\n }\n _disabled = signal(false);\n set disabled(value) {\n this._disabled.set(value);\n }\n get disabled() {\n return this._disabled();\n }\n setActiveStyles() {\n this.selected = true;\n }\n setInactiveStyles() {\n this.selected = false;\n }\n scrollIntoElement() {\n this.elementRef.nativeElement.scrollIntoView({\n block: 'nearest',\n behavior: 'smooth',\n });\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtSelectOptionDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.0\", type: RdtSelectOptionDirective, isStandalone: true, selector: \"[rdtSelectOption]\", inputs: { value: { classPropertyName: \"value\", publicName: \"rdtSelectOption\", isSignal: true, isRequired: true, transformFunction: null } }, host: { properties: { \"class.rdt-option-selected\": \"_selected()\", \"class.rdt-option-disabled\": \"_disabled()\" }, classAttribute: \"rdt-option\" }, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtSelectOptionDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[rdtSelectOption]',\n host: {\n class: 'rdt-option',\n '[class.rdt-option-selected]': '_selected()',\n '[class.rdt-option-disabled]': '_disabled()',\n },\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LXNlbGVjdC1vcHRpb24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vQG5ncmR0L2Zvcm1zL3NyYy9saWIvaW5wdXRzL3NlbGVjdC9kaXJlY3RpdmVzL3JkdC1zZWxlY3Qtb3B0aW9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFVN0UsTUFBTSxPQUFPLHdCQUF3QjtJQUNsQixVQUFVLEdBQUcsTUFBTSxDQUEwQixVQUFVLENBQUMsQ0FBQztJQUNqRSxLQUFLLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBUyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxDQUFDLENBQUM7SUFFbkQsU0FBUyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM3QyxJQUFJLFFBQVEsQ0FBQyxLQUFjO1FBQ3pCLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFDRCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRWtCLFNBQVMsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDN0MsSUFBSSxRQUFRLENBQUMsS0FBYztRQUN6QixJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBQ0QsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztJQUN2QixDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFDeEIsQ0FBQztJQUVELGlCQUFpQjtRQUNmLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQztZQUMzQyxLQUFLLEVBQUUsU0FBUztZQUNoQixRQUFRLEVBQUUsUUFBUTtTQUNuQixDQUFDLENBQUM7SUFDTCxDQUFDO3VHQWpDVSx3QkFBd0I7MkZBQXhCLHdCQUF3Qjs7MkZBQXhCLHdCQUF3QjtrQkFScEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixJQUFJLEVBQUU7d0JBQ0osS0FBSyxFQUFFLFlBQVk7d0JBQ25CLDZCQUE2QixFQUFFLGFBQWE7d0JBQzVDLDZCQUE2QixFQUFFLGFBQWE7cUJBQzdDO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSGlnaGxpZ2h0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgaW5qZWN0LCBpbnB1dCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tyZHRTZWxlY3RPcHRpb25dJyxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAncmR0LW9wdGlvbicsXG4gICAgJ1tjbGFzcy5yZHQtb3B0aW9uLXNlbGVjdGVkXSc6ICdfc2VsZWN0ZWQoKScsXG4gICAgJ1tjbGFzcy5yZHQtb3B0aW9uLWRpc2FibGVkXSc6ICdfZGlzYWJsZWQoKScsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIFJkdFNlbGVjdE9wdGlvbkRpcmVjdGl2ZTxUVmFsdWU+IGltcGxlbWVudHMgSGlnaGxpZ2h0YWJsZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudFJlZiA9IGluamVjdDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4oRWxlbWVudFJlZik7XG4gIHJlYWRvbmx5IHZhbHVlID0gaW5wdXQucmVxdWlyZWQ8VFZhbHVlPih7IGFsaWFzOiAncmR0U2VsZWN0T3B0aW9uJyB9KTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgX3NlbGVjdGVkID0gc2lnbmFsKGZhbHNlKTtcbiAgc2V0IHNlbGVjdGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fc2VsZWN0ZWQuc2V0KHZhbHVlKTtcbiAgfVxuICBnZXQgc2VsZWN0ZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3NlbGVjdGVkKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgX2Rpc2FibGVkID0gc2lnbmFsKGZhbHNlKTtcbiAgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZGlzYWJsZWQuc2V0KHZhbHVlKTtcbiAgfVxuICBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkKCk7XG4gIH1cblxuICBzZXRBY3RpdmVTdHlsZXMoKTogdm9pZCB7XG4gICAgdGhpcy5zZWxlY3RlZCA9IHRydWU7XG4gIH1cblxuICBzZXRJbmFjdGl2ZVN0eWxlcygpOiB2b2lkIHtcbiAgICB0aGlzLnNlbGVjdGVkID0gZmFsc2U7XG4gIH1cblxuICBzY3JvbGxJbnRvRWxlbWVudCgpOiB2b2lkIHtcbiAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5zY3JvbGxJbnRvVmlldyh7XG4gICAgICBibG9jazogJ25lYXJlc3QnLFxuICAgICAgYmVoYXZpb3I6ICdzbW9vdGgnLFxuICAgIH0pO1xuICB9XG59XG4iXX0=","import { computed, Directive, effect, inject, input, linkedSignal, } from '@angular/core';\nimport { takeUntilDestroyed, toObservable, toSignal, } from '@angular/core/rxjs-interop';\nimport { FormControl } from '@angular/forms';\nimport { RdtObjectUtils } from '@ngrdt/utils';\nimport { debounceTime, distinctUntilChanged, switchMap } from 'rxjs';\nimport { RdtBaseFormInputComponent } from '../../base/rdt-base-form-input.component';\nimport { RdtSelectStore } from './state/rdt-select-store';\nimport * as i0 from \"@angular/core\";\nexport class RdtBaseSelectCommonComponent extends RdtBaseFormInputComponent {\n datasourceInput = input(null);\n store = inject(RdtSelectStore);\n visibleOptions = this.store.visibleOptions;\n queryValidatorFnInput = input(null, {\n alias: 'inputValidator',\n });\n queryValidatorFn = linkedSignal(() => this.queryValidatorFnInput());\n queryValidatorEffect = effect(() => {\n const validator = this.queryValidatorFn();\n if (validator) {\n this.inputCtrl.setValidators(validator);\n }\n else {\n this.inputCtrl.clearValidators();\n }\n });\n inputCtrl = new FormControl(null);\n inputCtrlEvents = toSignal(this.inputCtrl.events);\n inputErrors = computed(() => {\n this.inputCtrlEvents();\n if (this.inputCtrl.touched && this.inputCtrl.invalid) {\n return this.inputCtrl.errors;\n }\n else {\n return null;\n }\n });\n debounceTimeInput = input(300, {\n alias: 'debounce',\n });\n debounceTime = linkedSignal(() => this.debounceTimeInput());\n debouncedInput$ = toObservable(this.debounceTime).pipe(switchMap((time) => this.inputCtrl.valueChanges.pipe(debounceTime(time))), distinctUntilChanged());\n debouncedInput = toSignal(this.debouncedInput$, {\n initialValue: null,\n });\n pageSizeInput = input(20, {\n alias: 'pageSize',\n });\n pageSizeEffect = effect(() => this.store.setPageSize(this.pageSizeInput()));\n loading = computed(() => {\n return (this.store.loading() ||\n this.loadingInput() ||\n RdtObjectUtils.someValuesTrue(this.loadingMap()));\n });\n ngOnInit() {\n super.ngOnInit();\n this.debouncedInput$\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe((value) => this.handleInput(value));\n }\n handleInput(value) {\n this.store.setQuery(value);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtBaseSelectCommonComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.0\", type: RdtBaseSelectCommonComponent, isStandalone: true, inputs: { datasourceInput: { classPropertyName: \"datasourceInput\", publicName: \"datasourceInput\", isSignal: true, isRequired: false, transformFunction: null }, queryValidatorFnInput: { classPropertyName: \"queryValidatorFnInput\", publicName: \"inputValidator\", isSignal: true, isRequired: false, transformFunction: null }, debounceTimeInput: { classPropertyName: \"debounceTimeInput\", publicName: \"debounce\", isSignal: true, isRequired: false, transformFunction: null }, pageSizeInput: { classPropertyName: \"pageSizeInput\", publicName: \"pageSize\", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtBaseSelectCommonComponent, decorators: [{\n type: Directive\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWJhc2Utc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL0BuZ3JkdC9mb3Jtcy9zcmMvbGliL2lucHV0cy9zZWxlY3QvcmR0LWJhc2Utc2VsZWN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsUUFBUSxFQUNSLFNBQVMsRUFDVCxNQUFNLEVBQ04sTUFBTSxFQUNOLEtBQUssRUFDTCxZQUFZLEdBQ2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNMLGtCQUFrQixFQUNsQixZQUFZLEVBQ1osUUFBUSxHQUNULE1BQU0sNEJBQTRCLENBQUM7QUFDcEMsT0FBTyxFQUFFLFdBQVcsRUFBZSxNQUFNLGdCQUFnQixDQUFDO0FBQzFELE9BQU8sRUFBWSxjQUFjLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDeEQsT0FBTyxFQUFFLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFFckYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFDOztBQUcxRCxNQUFNLE9BQWdCLDRCQUlwQixTQUFRLHlCQUErQjtJQUM5QixlQUFlLEdBQUcsS0FBSyxDQUM5QixJQUFJLENBQ0wsQ0FBQztJQUNPLEtBQUssR0FBRyxNQUFNLENBQUMsY0FBYyxDQUErQixDQUFDO0lBQzdELGNBQWMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQztJQUMzQyxxQkFBcUIsR0FBRyxLQUFLLENBQ3BDLElBQUksRUFDSjtRQUNFLEtBQUssRUFBRSxnQkFBZ0I7S0FDeEIsQ0FDRixDQUFDO0lBQ08sZ0JBQWdCLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLENBQUM7SUFD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Y3RpdmUsXG4gIGVmZmVjdCxcbiAgaW5qZWN0LFxuICBpbnB1dCxcbiAgbGlua2VkU2lnbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIHRha2VVbnRpbERlc3Ryb3llZCxcbiAgdG9PYnNlcnZhYmxlLFxuICB0b1NpZ25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIFZhbGlkYXRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTnVsbGFibGUsIFJkdE9iamVjdFV0aWxzIH0gZnJvbSAnQG5ncmR0L3V0aWxzJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgUmR0QmFzZUZvcm1JbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Jhc2UvcmR0LWJhc2UtZm9ybS1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmR0U2VsZWN0RGF0YXNvdXJjZSB9IGZyb20gJy4vZGF0YXNvdXJjZS9yZHQtc2VsZWN0LWRhdGFzb3VyY2UnO1xuaW1wb3J0IHsgUmR0U2VsZWN0U3RvcmUgfSBmcm9tICcuL3N0YXRlL3JkdC1zZWxlY3Qtc3RvcmUnO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBSZHRCYXNlU2VsZWN0Q29tbW9uQ29tcG9uZW50PFxuICBUSXRlbSxcbiAgVElkLFxuICBUT3V0XG4+IGV4dGVuZHMgUmR0QmFzZUZvcm1JbnB1dENvbXBvbmVudDxUT3V0PiB7XG4gIHJlYWRvbmx5IGRhdGFzb3VyY2VJbnB1dCA9IGlucHV0PFJkdFNlbGVjdERhdGFzb3VyY2U8VEl0ZW0sIFRJZD4gfCBudWxsPihcbiAgICBudWxsXG4gICk7XG4gIHJlYWRvbmx5IHN0b3JlID0gaW5qZWN0KFJkdFNlbGVjdFN0b3JlKSBhcyBSZHRTZWxlY3RTdG9yZTxUSXRlbSwgVElkPjtcbiAgcmVhZG9ubHkgdmlzaWJsZU9wdGlvbnMgPSB0aGlzLnN0b3JlLnZpc2libGVPcHRpb25zO1xuICByZWFkb25seSBxdWVyeVZhbGlkYXRvckZuSW5wdXQgPSBpbnB1dDxOdWxsYWJsZTxWYWxpZGF0b3JGbiB8IFZhbGlkYXRvckZuW10+PihcbiAgICBudWxsLFxuICAgIHtcbiAgICAgIGFsaWFzOiAnaW5wdXRWYWxpZGF0b3InLFxuICAgIH1cbiAgKTtcbiAgcmVhZG9ubHkgcXVlcnlWYWxpZGF0b3JGbiA9IGxpbmtlZFNpZ25hbCgoKSA9PiB0aGlzLnF1ZXJ5VmFsaWRhdG9yRm5JbnB1dCgpKTtcbiAgcHJpdmF0ZSByZWFkb25seSBxdWVyeVZhbGlkYXRvckVmZmVjdCA9IGVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgdmFsaWRhdG9yID0gdGhpcy5xdWVyeVZhbGlkYXRvckZuKCk7XG4gICAgaWYgKHZhbGlkYXRvcikge1xuICAgICAgdGhpcy5pbnB1dEN0cmwuc2V0VmFsaWRhdG9ycyh2YWxpZGF0b3IpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmlucHV0Q3RybC5jbGVhclZhbGlkYXRvcnMoKTtcbiAgICB9XG4gIH0pO1xuICByZWFkb25seSBpbnB1dEN0cmwgPSBuZXcgRm9ybUNvbnRyb2w8c3RyaW5nIHwgbnVsbD4obnVsbCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgaW5wdXRDdHJsRXZlbnRzID0gdG9TaWduYWwodGhpcy5pbnB1dEN0cmwuZXZlbnRzKTtcbiAgcmVhZG9ubHkgaW5wdXRFcnJvcnMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgdGhpcy5pbnB1dEN0cmxFdmVudHMoKTtcbiAgICBpZiAodGhpcy5pbnB1dEN0cmwudG91Y2hlZCAmJiB0aGlzLmlucHV0Q3RybC5pbnZhbGlkKSB7XG4gICAgICByZXR1cm4gdGhpcy5pbnB1dEN0cmwuZXJyb3JzO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH0pO1xuICByZWFkb25seSBkZWJvdW5jZVRpbWVJbnB1dCA9IGlucHV0PG51bWJlcj4oMzAwLCB7XG4gICAgYWxpYXM6ICdkZWJvdW5jZScsXG4gIH0pO1xuICByZWFkb25seSBkZWJvdW5jZVRpbWUgPSBsaW5rZWRTaWduYWwoKCkgPT4gdGhpcy5kZWJvdW5jZVRpbWVJbnB1dCgpKTtcbiAgcHJpdmF0ZSByZWFkb25seSBkZWJvdW5jZWRJbnB1dCQgPSB0b09ic2VydmFibGUodGhpcy5kZWJvdW5jZVRpbWUpLnBpcGUoXG4gICAgc3dpdGNoTWFwKCh0aW1lKSA9PiB0aGlzLmlucHV0Q3RybC52YWx1ZUNoYW5nZXMucGlwZShkZWJvdW5jZVRpbWUodGltZSkpKSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpXG4gICk7XG4gIHJlYWRvbmx5IGRlYm91bmNlZElucHV0ID0gdG9TaWduYWwodGhpcy5kZWJvdW5jZWRJbnB1dCQsIHtcbiAgICBpbml0aWFsVmFsdWU6IG51bGwsXG4gIH0pO1xuICByZWFkb25seSBwYWdlU2l6ZUlucHV0ID0gaW5wdXQoMjAsIHtcbiAgICBhbGlhczogJ3BhZ2VTaXplJyxcbiAgfSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgcGFnZVNpemVFZmZlY3QgPSBlZmZlY3QoKCkgPT5cbiAgICB0aGlzLnN0b3JlLnNldFBhZ2VTaXplKHRoaXMucGFnZVNpemVJbnB1dCgpKVxuICApO1xuXG4gIG92ZXJyaWRlIHJlYWRvbmx5IGxvYWRpbmcgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMuc3RvcmUubG9hZGluZygpIHx8XG4gICAgICB0aGlzLmxvYWRpbmdJbnB1dCgpIHx8XG4gICAgICBSZHRPYmplY3RVdGlscy5zb21lVmFsdWVzVHJ1ZSh0aGlzLmxvYWRpbmdNYXAoKSlcbiAgICApO1xuICB9KTtcblxuICBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgIHRoaXMuZGVib3VuY2VkSW5wdXQkXG4gICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSlcbiAgICAgIC5zdWJzY3JpYmUoKHZhbHVlKSA9PiB0aGlzLmhhbmRsZUlucHV0KHZhbHVlKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlSW5wdXQodmFsdWU6IHN0cmluZyB8IG51bGwpOiB2b2lkIHtcbiAgICB0aGlzLnN0b3JlLnNldFF1ZXJ5KHZhbHVlKTtcbiAgfVxufVxuIl19","import { computed, Directive } from '@angular/core';\nimport { RdtBaseSelectCommonComponent } from './rdt-base-select.component';\nimport * as i0 from \"@angular/core\";\nexport class RdtMultiSelectComponent extends RdtBaseSelectCommonComponent {\n selected = computed(() => {\n const selected = this.store.selectedItems();\n return selected.length > 0 ? selected : null;\n });\n isEmpty(value) {\n return value === null || value.length === 0;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtMultiSelectComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.0.0\", type: RdtMultiSelectComponent, isStandalone: true, usesInheritance: true, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtMultiSelectComponent, decorators: [{\n type: Directive\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LW11bHRpLXNlbGVjdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9AbmdyZHQvZm9ybXMvc3JjL2xpYi9pbnB1dHMvc2VsZWN0L3JkdC1tdWx0aS1zZWxlY3QuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDZCQUE2QixDQUFDOztBQUczRSxNQUFNLE9BQWdCLHVCQUdwQixTQUFRLDRCQUErQztJQUM5QyxRQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtRQUNoQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQzVDLE9BQU8sUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQy9DLENBQUMsQ0FBQyxDQUFDO0lBRWdCLE9BQU8sQ0FBQyxLQUFZO1FBQ3JDLE9BQU8sS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQztJQUM5QyxDQUFDO3VHQVhtQix1QkFBdUI7MkZBQXZCLHVCQUF1Qjs7MkZBQXZCLHVCQUF1QjtrQkFENUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvbXB1dGVkLCBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJkdEJhc2VTZWxlY3RDb21tb25Db21wb25lbnQgfSBmcm9tICcuL3JkdC1iYXNlLXNlbGVjdC5jb21wb25lbnQnO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBSZHRNdWx0aVNlbGVjdENvbXBvbmVudDxcbiAgVEl0ZW0sXG4gIFRJZFxuPiBleHRlbmRzIFJkdEJhc2VTZWxlY3RDb21tb25Db21wb25lbnQ8VEl0ZW0sIFRJZCwgVElkW10+IHtcbiAgcmVhZG9ubHkgc2VsZWN0ZWQgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3Qgc2VsZWN0ZWQgPSB0aGlzLnN0b3JlLnNlbGVjdGVkSXRlbXMoKTtcbiAgICByZXR1cm4gc2VsZWN0ZWQubGVuZ3RoID4gMCA/IHNlbGVjdGVkIDogbnVsbDtcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGlzRW1wdHkodmFsdWU6IFRJZFtdKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHZhbHVlID09PSBudWxsIHx8IHZhbHVlLmxlbmd0aCA9PT0gMDtcbiAgfVxufVxuIl19","import { computed, Directive } from '@angular/core';\nimport { RdtBaseFormInputComponent } from '../../base/rdt-base-form-input.component';\nimport { RdtBaseSelectCommonComponent } from './rdt-base-select.component';\nimport * as i0 from \"@angular/core\";\nexport class RdtSingleSelectComponent extends RdtBaseSelectCommonComponent {\n selected = computed(() => {\n const items = this.store.selectedItems();\n return items.length > 0 ? items[0] : null;\n });\n isEmpty(value) {\n return value === null;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtSingleSelectComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.0.0\", type: RdtSingleSelectComponent, isStandalone: true, providers: [\n {\n provide: RdtBaseFormInputComponent,\n useValue: RdtSingleSelectComponent,\n },\n ], usesInheritance: true, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtSingleSelectComponent, decorators: [{\n type: Directive,\n args: [{\n providers: [\n {\n provide: RdtBaseFormInputComponent,\n useValue: RdtSingleSelectComponent,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LXNpbmdsZS1zZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vQG5ncmR0L2Zvcm1zL3NyYy9saWIvaW5wdXRzL3NlbGVjdC9yZHQtc2luZ2xlLXNlbGVjdC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDckYsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7O0FBVTNFLE1BQU0sT0FBZ0Isd0JBR3BCLFNBQVEsNEJBQTZDO0lBQzVDLFFBQVEsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1FBQ2hDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDekMsT0FBTyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDNUMsQ0FBQyxDQUFDLENBQUM7SUFFZ0IsT0FBTyxDQUFDLEtBQVU7UUFDbkMsT0FBTyxLQUFLLEtBQUssSUFBSSxDQUFDO0lBQ3hCLENBQUM7dUdBWG1CLHdCQUF3QjsyRkFBeEIsd0JBQXdCLGlDQVBqQztZQUNUO2dCQUNFLE9BQU8sRUFBRSx5QkFBeUI7Z0JBQ2xDLFFBQVEsRUFBRSx3QkFBd0I7YUFDbkM7U0FDRjs7MkZBRW1CLHdCQUF3QjtrQkFSN0MsU0FBUzttQkFBQztvQkFDVCxTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLHlCQUF5Qjs0QkFDbEMsUUFBUSwwQkFBMEI7eUJBQ25DO3FCQUNGO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29tcHV0ZWQsIERpcmVjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmR0QmFzZUZvcm1JbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Jhc2UvcmR0LWJhc2UtZm9ybS1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmR0QmFzZVNlbGVjdENvbW1vbkNvbXBvbmVudCB9IGZyb20gJy4vcmR0LWJhc2Utc2VsZWN0LmNvbXBvbmVudCc7XG5cbkBEaXJlY3RpdmUoe1xuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBSZHRCYXNlRm9ybUlucHV0Q29tcG9uZW50LFxuICAgICAgdXNlVmFsdWU6IFJkdFNpbmdsZVNlbGVjdENvbXBvbmVudCxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBSZHRTaW5nbGVTZWxlY3RDb21wb25lbnQ8XG4gIFRJdGVtLFxuICBUSWRcbj4gZXh0ZW5kcyBSZHRCYXNlU2VsZWN0Q29tbW9uQ29tcG9uZW50PFRJdGVtLCBUSWQsIFRJZD4ge1xuICByZWFkb25seSBzZWxlY3RlZCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBpdGVtcyA9IHRoaXMuc3RvcmUuc2VsZWN0ZWRJdGVtcygpO1xuICAgIHJldHVybiBpdGVtcy5sZW5ndGggPiAwID8gaXRlbXNbMF0gOiBudWxsO1xuICB9KTtcblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgaXNFbXB0eSh2YWx1ZTogVElkKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHZhbHVlID09PSBudWxsO1xuICB9XG59XG4iXX0=","import { Directive, input } from '@angular/core';\nimport { RdtBaseFormInputComponent } from '../../base/rdt-base-form-input.component';\nimport { nullToUndefined, nullToUndefinedNumeric, } from '../../utils';\nimport * as i0 from \"@angular/core\";\nexport class RdtTextInputComponent extends RdtBaseFormInputComponent {\n type = input('text');\n autocomplete = input(undefined, {\n transform: nullToUndefined,\n });\n maxlength = input(undefined, { transform: nullToUndefinedNumeric });\n minlength = input(undefined, { transform: nullToUndefinedNumeric });\n pattern = input(undefined, {\n transform: nullToUndefined,\n });\n isEmpty(value) {\n return value === '' || value === null;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtTextInputComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.0\", type: RdtTextInputComponent, isStandalone: true, inputs: { type: { classPropertyName: \"type\", publicName: \"type\", isSignal: true, isRequired: false, transformFunction: null }, autocomplete: { classPropertyName: \"autocomplete\", publicName: \"autocomplete\", isSignal: true, isRequired: false, transformFunction: null }, maxlength: { classPropertyName: \"maxlength\", publicName: \"maxlength\", isSignal: true, isRequired: false, transformFunction: null }, minlength: { classPropertyName: \"minlength\", publicName: \"minlength\", isSignal: true, isRequired: false, transformFunction: null }, pattern: { classPropertyName: \"pattern\", publicName: \"pattern\", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtTextInputComponent, decorators: [{\n type: Directive\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LXRleHQtaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vQG5ncmR0L2Zvcm1zL3NyYy9saWIvaW5wdXRzL3RleHQtaW5wdXQvcmR0LXRleHQtaW5wdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ3JGLE9BQU8sRUFDTCxlQUFlLEVBQ2Ysc0JBQXNCLEdBRXZCLE1BQU0sYUFBYSxDQUFDOztBQUlyQixNQUFNLE9BQWdCLHFCQUFzQixTQUFRLHlCQUduRDtJQUNVLElBQUksR0FBRyxLQUFLLENBQWUsTUFBTSxDQUFDLENBQUM7SUFFbkMsWUFBWSxHQUFHLEtBQUssQ0FHM0IsU0FBUyxFQUFFO1FBQ1gsU0FBUyxFQUFFLGVBQWU7S0FDM0IsQ0FBQyxDQUFDO0lBQ00sU0FBUyxHQUFHLEtBQUssQ0FDeEIsU0FBUyxFQUNULEVBQUUsU0FBUyxFQUFFLHNCQUFzQixFQUFFLENBQ3RDLENBQUM7SUFDTyxTQUFTLEdBQUcsS0FBSyxDQUN4QixTQUFTLEVBQ1QsRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsQ0FDdEMsQ0FBQztJQUNPLE9BQU8sR0FBRyxLQUFLLENBQXFDLFNBQVMsRUFBRTtRQUN0RSxTQUFTLEVBQUUsZUFBZTtLQUMzQixDQUFDLENBQUM7SUFFZ0IsT0FBTyxDQUFDLEtBQW9CO1FBQzdDLE9BQU8sS0FBSyxLQUFLLEVBQUUsSUFBSSxLQUFLLEtBQUssSUFBSSxDQUFDO0lBQ3hDLENBQUM7dUdBMUJtQixxQkFBcUI7MkZBQXJCLHFCQUFxQjs7MkZBQXJCLHFCQUFxQjtrQkFEMUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE51bGxhYmxlIH0gZnJvbSAnQG5ncmR0L3V0aWxzJztcbmltcG9ydCB7IFJkdEJhc2VGb3JtSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9iYXNlL3JkdC1iYXNlLWZvcm0taW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7XG4gIG51bGxUb1VuZGVmaW5lZCxcbiAgbnVsbFRvVW5kZWZpbmVkTnVtZXJpYyxcbiAgUmR0QXV0b2NvbXBsZXRlT3B0aW9ucyxcbn0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgUmR0SW5wdXRUeXBlIH0gZnJvbSAnLi9pbnB1dC10eXBlJztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgUmR0VGV4dElucHV0Q29tcG9uZW50IGV4dGVuZHMgUmR0QmFzZUZvcm1JbnB1dENvbXBvbmVudDxcbiAgc3RyaW5nLFxuICBzdHJpbmdcbj4ge1xuICByZWFkb25seSB0eXBlID0gaW5wdXQ8UmR0SW5wdXRUeXBlPigndGV4dCcpO1xuXG4gIHJlYWRvbmx5IGF1dG9jb21wbGV0ZSA9IGlucHV0PFxuICAgIFJkdEF1dG9jb21wbGV0ZU9wdGlvbnMgfCB1bmRlZmluZWQsXG4gICAgTnVsbGFibGU8UmR0QXV0b2NvbXBsZXRlT3B0aW9ucz5cbiAgPih1bmRlZmluZWQsIHtcbiAgICB0cmFuc2Zvcm06IG51bGxUb1VuZGVmaW5lZCxcbiAgfSk7XG4gIHJlYWRvbmx5IG1heGxlbmd0aCA9IGlucHV0PE51bGxhYmxlPG51bWJlcj4sIE51bGxhYmxlPHN0cmluZyB8IG51bWJlcj4+KFxuICAgIHVuZGVmaW5lZCxcbiAgICB7IHRyYW5zZm9ybTogbnVsbFRvVW5kZWZpbmVkTnVtZXJpYyB9XG4gICk7XG4gIHJlYWRvbmx5IG1pbmxlbmd0aCA9IGlucHV0PE51bGxhYmxlPG51bWJlcj4sIE51bGxhYmxlPHN0cmluZyB8IG51bWJlcj4+KFxuICAgIHVuZGVmaW5lZCxcbiAgICB7IHRyYW5zZm9ybTogbnVsbFRvVW5kZWZpbmVkTnVtZXJpYyB9XG4gICk7XG4gIHJlYWRvbmx5IHBhdHRlcm4gPSBpbnB1dDxOdWxsYWJsZTxzdHJpbmc+LCBOdWxsYWJsZTxzdHJpbmc+Pih1bmRlZmluZWQsIHtcbiAgICB0cmFuc2Zvcm06IG51bGxUb1VuZGVmaW5lZCxcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGlzRW1wdHkodmFsdWU6IHN0cmluZyB8IG51bGwpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdmFsdWUgPT09ICcnIHx8IHZhbHVlID09PSBudWxsO1xuICB9XG59XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdyZHQtZm9ybXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9AbmdyZHQvZm9ybXMvc3JjL25ncmR0LWZvcm1zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":[],"mappings":";;;;;;;;;AAKA,MAAM,IAAI,GAAG,MAAM,GAAG;AACf,MAAM,yBAAyB,SAAS,8BAA8B,CAAC;AAC9E,IAAI,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;AAC/B,IAAI,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC;AAC3B,IAAI,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE;AACxC,IAAI,KAAK,GAAG,KAAK,CAAC,EAAE,CAAC;AACrB,IAAI,WAAW,GAAG,KAAK,CAAC,EAAE,CAAC;AAC3B,IAAI,aAAa,GAAG,KAAK,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AACnD,IAAI,aAAa,GAAG,YAAY,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;AAClF,IAAI,eAAe,GAAG,KAAK,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;AAC/D,IAAI,UAAU,GAAG,YAAY,CAAC,MAAM,IAAI,CAAC,eAAe,EAAE,IAAI,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC;AACjF,IAAI,aAAa,GAAG,KAAK,CAAC,IAAI,EAAE;AAChC,QAAQ,KAAK,EAAE,UAAU;AACzB,QAAQ,SAAS,EAAE,gBAAgB;AACnC,KAAK,CAAC;AACN,IAAI,aAAa,GAAG,KAAK,CAAC,IAAI,EAAE;AAChC,QAAQ,KAAK,EAAE,UAAU;AACzB,QAAQ,SAAS,EAAE,gBAAgB;AACnC,KAAK,CAAC;AACN,IAAI,mBAAmB,GAAG,MAAM,CAAC,KAAK,CAAC;AACvC,IAAI,QAAQ,GAAG,YAAY,CAAC,MAAM;AAClC,QAAQ,OAAO,IAAI,CAAC,aAAa,EAAE,IAAI,IAAI,CAAC,mBAAmB,EAAE,IAAI,KAAK;AAC1E,KAAK,CAAC;AACN,IAAI,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC;AACnC,IAAI,OAAO,GAAG,QAAQ,CAAC,MAAM;AAC7B,QAAQ,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE;AACtC,QAAQ,IAAI,OAAO,EAAE;AACrB,YAAY,OAAO,OAAO,CAAC,eAAe,EAAE;AAC5C;AACA,aAAa;AACb,YAAY,OAAO,IAAI,CAAC,eAAe,EAAE;AACzC;AACA,KAAK,CAAC;AACN,IAAI,OAAO,GAAG,QAAQ,CAAC,MAAM;AAC7B,QAAQ,IAAI,IAAI,CAAC,aAAa,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,EAAE;AACxE,YAAY,OAAO,IAAI;AACvB;AACA,QAAQ,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE;AACtC,QAAQ,IAAI,OAAO,EAAE;AACrB,YAAY,OAAO,OAAO,CAAC,cAAc,EAAE,KAAK,SAAS;AACzD;AACA,aAAa;AACb,YAAY,OAAO,KAAK;AACxB;AACA,KAAK,CAAC;AACN,IAAI,cAAc,GAAG,MAAM,CAAC,MAAM;AAClC,QAAQ,IAAI,CAAC,aAAa,EAAE;AAC5B,QAAQ,IAAI,CAAC,iBAAiB,EAAE;AAChC,KAAK,CAAC;AACN,IAAI,aAAa,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;AAC/E,IAAI,aAAa,GAAG,QAAQ,CAAC,MAAM;AACnC,QAAQ,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE;AACtC,QAAQ,IAAI,OAAO,EAAE;AACrB,YAAY,OAAO,CAAC,cAAc,EAAE;AACpC,YAAY,OAAO,OAAO,CAAC,MAAM;AACjC;AACA,aAAa;AACb,YAAY,OAAO,IAAI;AACvB;AACA,KAAK,CAAC;AACN,IAAI,MAAM,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,aAAa,EAAE,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;AACzE,IAAI,aAAa,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC;AAC3F,IAAI,IAAI,SAAS,GAAG;AACpB,QAAQ,OAAO,IAAI,CAAC,UAAU;AAC9B;AACA,IAAI,UAAU,GAAG,IAAI;AACrB,IAAI,SAAS,GAAG,IAAI;AACpB,IAAI,QAAQ,GAAG,IAAI;AACnB,IAAI,kBAAkB,GAAG,IAAI;AAC7B,IAAI,IAAI,QAAQ,GAAG;AACnB,QAAQ,OAAO,IAAI,CAAC,SAAS;AAC7B;AACA,IAAI,IAAI,OAAO,GAAG;AAClB,QAAQ,OAAO,IAAI,CAAC,QAAQ;AAC5B;AACA,IAAI,IAAI,iBAAiB,GAAG;AAC5B,QAAQ,OAAO,IAAI,CAAC,kBAAkB;AACtC;AACA,IAAI,QAAQ,GAAG;AACf,QAAQ,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,EAAE;AAC7D,YAAY,IAAI,EAAE,IAAI;AACtB,YAAY,QAAQ,EAAE,IAAI;AAC1B,SAAS,CAAC;AACV,QAAQ,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,EAAE,OAAO;AAC/C,QAAQ,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,IAAI,IAAI,CAAC;AAC1C,QAAQ,IAAI,OAAO,EAAE;AACrB,YAAY,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM;AACrF,gBAAgB,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;AACvF,aAAa,CAAC;AACd;AACA;AACA,IAAI,WAAW,GAAG;AAClB,QAAQ,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE;AACtC,QAAQ,IAAI,IAAI,CAAC,aAAa,EAAE,IAAI,OAAO,EAAE;AAC7C,YAAY,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,QAAQ,CAAC;AACzD,YAAY,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC;AACnC;AACA;AACA,IAAI,gBAAgB,CAAC,EAAE,EAAE;AACzB,QAAQ,IAAI,CAAC,SAAS,GAAG,EAAE;AAC3B;AACA,IAAI,iBAAiB,CAAC,EAAE,EAAE;AAC1B,QAAQ,IAAI,CAAC,QAAQ,GAAG,MAAM;AAC9B,YAAY,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC;AAC1C,YAAY,EAAE,EAAE;AAChB,SAAS;AACT;AACA;AACA,IAAI,UAAU,CAAC,KAAK,EAAE;AACtB,QAAQ,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC;AACrC;AACA;AACA,IAAI,QAAQ,CAAC,OAAO,EAAE;AACtB,QAAQ,OAAO,IAAI,CAAC,aAAa,EAAE;AACnC;AACA,IAAI,yBAAyB,CAAC,EAAE,EAAE;AAClC,QAAQ,IAAI,CAAC,kBAAkB,GAAG,EAAE;AACpC;AACA,IAAI,qBAAqB,CAAC,KAAK,EAAE;AACjC,QAAQ,IAAI,KAAK,KAAK,EAAE,EAAE;AAC1B,YAAY,KAAK,GAAG,IAAI,CAAC;AACzB;AACA,QAAQ,IAAI,KAAK,KAAK,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE;AACrD,YAAY,MAAM,aAAa,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;AAC7D,YAAY,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC;AACjD,YAAY,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC;AACxC;AACA;AACA,IAAI,eAAe,CAAC,aAAa,EAAE;AACnC,QAAQ,OAAO,aAAa;AAC5B;AACA,IAAI,eAAe,CAAC,aAAa,EAAE;AACnC,QAAQ,OAAO,aAAa;AAC5B;AACA,IAAI,MAAM,GAAG;AACb,QAAQ,KAAK,CAAC,MAAM,EAAE;AACtB,QAAQ,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,MAAM;AACrC,YAAY,IAAI,CAAC,OAAO,EAAE;AAC1B,YAAY,IAAI,CAAC,EAAE,CAAC,YAAY,EAAE;AAClC,SAAS,CAAC;AACV;AACA,IAAI,gBAAgB,CAAC,KAAK,EAAE;AAC5B,QAAQ,OAAO,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK;AACpD,cAAc,yBAAyB,CAAC;AACxC,cAAc,IAAI;AAClB;AACA,IAAI,OAAO,cAAc,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE;AAC9C,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,yBAAyB,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AACrL,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,yBAAyB,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,iBAAiB,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,EAAE,iBAAiB,EAAE,aAAa,EAAE,UAAU,EAAE,aAAa,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,aAAa,EAAE,EAAE,iBAAiB,EAAE,eAAe,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,eAAe,EAAE,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,aAAa,EAAE,EAAE,iBAAiB,EAAE,eAAe,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,aAAa,EAAE,EAAE,iBAAiB,EAAE,eAAe,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,aAAa,EAAE,aAAa,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;AACxhC;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,yBAAyB,EAAE,UAAU,EAAE,CAAC;AACnI,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,UAAU,EAAE,IAAI;AACpC,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;AC7JN,MAAM,oBAAoB,SAAS,yBAAyB,CAAC;AACpE,IAAI,cAAc,GAAG,KAAK,CAAC,IAAI,EAAE;AACjC,QAAQ,KAAK,EAAE,WAAW;AAC1B,KAAK,CAAC;AACN,IAAI,SAAS,GAAG,YAAY,CAAC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;AACzD,IAAI,eAAe,GAAG,KAAK,CAAC,KAAK,EAAE;AACnC,QAAQ,KAAK,EAAE,YAAY;AAC3B,KAAK,CAAC;AACN,IAAI,UAAU,GAAG,YAAY,CAAC,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;AAC3D,IAAI,aAAa,GAAG,KAAK,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;AACjE,IAAI,eAAe,CAAC,aAAa,EAAE;AACnC,QAAQ,QAAQ,aAAa;AAC7B,YAAY,KAAK,IAAI;AACrB,gBAAgB,OAAO,IAAI,CAAC,SAAS,EAAE;AACvC,YAAY,KAAK,KAAK;AACtB,gBAAgB,OAAO,IAAI,CAAC,UAAU,EAAE;AACxC,YAAY;AACZ,gBAAgB,OAAO,IAAI;AAC3B;AACA;AACA,IAAI,eAAe,CAAC,aAAa,EAAE;AACnC,QAAQ,QAAQ,aAAa;AAC7B,YAAY,KAAK,IAAI,CAAC,SAAS,EAAE;AACjC,gBAAgB,OAAO,IAAI;AAC3B,YAAY,KAAK,IAAI,CAAC,UAAU,EAAE;AAClC,gBAAgB,OAAO,KAAK;AAC5B,YAAY;AACZ,gBAAgB,OAAO,IAAI;AAC3B;AACA;AACA,IAAI,OAAO,CAAC,KAAK,EAAE;AACnB,QAAQ,OAAO,KAAK,KAAK,IAAI;AAC7B;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AAChL,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,oBAAoB,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,cAAc,EAAE,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,eAAe,EAAE,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,aAAa,EAAE,EAAE,iBAAiB,EAAE,eAAe,EAAE,UAAU,EAAE,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;AACtmB;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,UAAU,EAAE,CAAC;AAC9H,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,CAAC;;ACxCN,SAAS,eAAe,CAAC,KAAK,EAAE;AACvC,IAAI,OAAO,KAAK,KAAK,IAAI,GAAG,SAAS,GAAG,KAAK;AAC7C;AACO,SAAS,sBAAsB,CAAC,KAAK,EAAE;AAC9C,IAAI,OAAO,eAAe,CAAC,KAAK,EAAE,SAAS,CAAC;AAC5C;;ACFO,MAAM,gBAAgB,SAAS,yBAAyB,CAAC;AAChE,IAAI,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC;AACxB,IAAI,QAAQ,GAAG,KAAK,CAAC,SAAS,EAAE;AAChC,QAAQ,SAAS,EAAE,eAAe;AAClC,KAAK,CAAC;AACN,IAAI,GAAG,GAAG,YAAY,CAAC,MAAM;AAC7B,QAAQ,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE;AACxC,QAAQ,OAAO,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,GAAG,IAAI;AAC/D,KAAK,CAAC;AACN,IAAI,QAAQ,GAAG,KAAK,CAAC,SAAS,EAAE;AAChC,QAAQ,SAAS,EAAE,eAAe;AAClC,KAAK,CAAC;AACN,IAAI,GAAG,GAAG,YAAY,CAAC,MAAM;AAC7B,QAAQ,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE;AACxC,QAAQ,OAAO,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,GAAG,IAAI;AAC/D,KAAK,CAAC;AACN,IAAI,OAAO,CAAC,KAAK,EAAE;AACnB,QAAQ,OAAO,KAAK,KAAK,IAAI;AAC7B;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AAC5K,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,iBAAiB,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,EAAE,iBAAiB,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,EAAE,iBAAiB,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;AAC1iB;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,UAAU,EAAE,CAAC;AAC1H,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,CAAC;;AC3BN,MAAM,aAAa,CAAC;AAC3B,IAAI,IAAI,CAAC,IAAI,EAAE;AACf,QAAQ,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,OAAO,MAAM;AACtE,YAAY,QAAQ,EAAE,IAAI,CAAC,IAAI;AAC/B,YAAY,OAAO;AACnB,YAAY,IAAI,EAAE,IAAI,CAAC,IAAI;AAC3B,YAAY,QAAQ,EAAE,IAAI,CAAC,IAAI,IAAI,SAAS;AAC5C,YAAY,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,YAAY;AAC7C,kBAAkB;AAClB,kBAAkB,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC;AAC7C,YAAY,YAAY,EAAE,IAAI;AAC9B,SAAS,CAAC,CAAC,CAAC;AACZ;AACA,IAAI,OAAO,CAAC,KAAK,EAAE;AACnB,QAAQ,OAAO,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7D;AACA;;ACfO,MAAM,cAAc,SAAS,aAAa,CAAC;AAClD,IAAI,WAAW,GAAG;AAClB,QAAQ,OAAO,EAAE,CAAC,SAAS,CAAC;AAC5B;AACA;AACY,MAAC,iBAAiB,GAAG,IAAI,cAAc;;ACJ5C,MAAM,mBAAmB,SAAS,aAAa,CAAC;AACvD,IAAI,gBAAgB;AACpB,IAAI,WAAW,CAAC,gBAAgB,GAAG,KAAK,EAAE;AAC1C,QAAQ,KAAK,EAAE;AACf,QAAQ,IAAI,CAAC,gBAAgB,GAAG,gBAAgB;AAChD;AACA,IAAI,WAAW,CAAC,IAAI,EAAE;AACtB,QAAQ,IAAI,OAAO,GAAG,YAAY,CAAC,aAAa,CAAC,IAAI,CAAC;AACtD,QAAQ,IAAI,IAAI,CAAC,gBAAgB,EAAE;AACnC,YAAY,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;AAC5F;AACA,QAAQ,OAAO,IAAI,CAAC,OAAO,CAAC;AAC5B;AACA;;ACdY,MAAC,uBAAuB,GAAG,IAAI,cAAc,CAAC,yBAAyB,EAAE;AACrF,IAAI,OAAO,EAAE,MAAM,IAAI,mBAAmB,EAAE;AAC5C,IAAI,UAAU,EAAE,MAAM;AACtB,CAAC;;ACJM,SAAS,gBAAgB,CAAC,KAAK,EAAE;AACxC,IAAI,QAAQ,KAAK,CAAC,MAAM;AACxB,QAAQ,KAAK,CAAC;AACd,YAAY,OAAO,gBAAgB;AACnC,QAAQ,KAAK,CAAC;AACd,YAAY,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ;AACpC,QAAQ,KAAK,CAAC;AACd,QAAQ,KAAK,CAAC;AACd,QAAQ,KAAK,CAAC;AACd,YAAY,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC;AACpD,QAAQ;AACR,YAAY,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC;AACpD;AACA;AACY,MAAC,yBAAyB,GAAG,IAAI,cAAc,CAAC,2BAA2B,EAAE;AACzF,IAAI,UAAU,EAAE,MAAM;AACtB,IAAI,OAAO,EAAE,MAAM,gBAAgB;AACnC,CAAC;;ACjBW,MAAC,yBAAyB,GAAG,IAAI,cAAc,CAAC,2BAA2B,EAAE;AACzF,IAAI,OAAO,EAAE,MAAM,QAAQ;AAC3B,IAAI,UAAU,EAAE,MAAM;AACtB,CAAC;;ACOM,MAAM,qBAAqB,SAAS,yBAAyB,CAAC;AACrE,IAAI,iBAAiB,GAAG,MAAM,CAAC,uBAAuB,CAAC;AACvD,IAAI,kBAAkB,GAAG,MAAM,CAAC,yBAAyB,CAAC;AAC1D,IAAI,cAAc,GAAG,MAAM,CAAC,yBAAyB,CAAC;AACtD,IAAI,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,iBAAiB,EAAE;AAChD,QAAQ,KAAK,EAAE,QAAQ;AACvB,KAAK,CAAC;AACN,IAAI,MAAM,GAAG,YAAY,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;AACnD,IAAI,WAAW,GAAG,KAAK,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC;AACnF,IAAI,MAAM,GAAG,YAAY,CAAC,MAAM;AAChC,QAAQ,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE;AAC9C,QAAQ,OAAO,CAAC,WAAW,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW;AACxD,cAAc;AACd,cAAc,CAAC,WAAW,CAAC;AAC3B,KAAK,CAAC;AACN,IAAI,WAAW,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;AAC1D,IAAI,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAC,kBAAkB,EAAE;AACtD,QAAQ,KAAK,EAAE,aAAa;AAC5B,QAAQ,SAAS,EAAE,eAAe;AAClC,KAAK,CAAC;AACN,IAAI,WAAW,GAAG,YAAY,CAAC,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;AAC7D,IAAI,kBAAkB,GAAG,QAAQ,CAAC,MAAM;AACxC,QAAQ,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE;AAC9C,QAAQ,OAAO,WAAW,GAAG,YAAY,CAAC,eAAe,CAAC,WAAW,CAAC,GAAG,IAAI;AAC7E,KAAK,CAAC;AACN,IAAI,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC;AACxC,IAAI,QAAQ,GAAG,KAAK,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;AAC5D,IAAI,SAAS,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC;AACrC,IAAI,eAAe,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,UAAU,EAAE,GAAG,QAAQ,CAAC;AAClE,IAAI,aAAa,GAAG,MAAM,CAAC,MAAM;AACjC,QAAQ,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE;AACtC,QAAQ,IAAI,OAAO,EAAE;AACrB,YAAY,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE;AAC1C;AACA,aAAa;AACb,YAAY,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE;AAC5C;AACA,KAAK,CAAC;AACN,IAAI,WAAW,GAAG,MAAM,CAAC,MAAM;AAC/B,QAAQ,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;AACvD,KAAK,CAAC;AACN,IAAI,QAAQ,GAAG;AACf,QAAQ,KAAK,CAAC,QAAQ,EAAE;AACxB,QAAQ,IAAI,CAAC,OAAO,EAAE,EAAE,aAAa,CAAC,IAAI,CAAC,qBAAqB,CAAC;AACjE;AACA,IAAI,WAAW,GAAG;AAClB,QAAQ,KAAK,CAAC,WAAW,EAAE;AAC3B,QAAQ,IAAI,CAAC,OAAO,EAAE,EAAE,gBAAgB,CAAC,IAAI,CAAC,qBAAqB,CAAC;AACpE;AACA,IAAI,cAAc,CAAC,KAAK,EAAE;AAC1B,QAAQ,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM;AACnC,QAAQ,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;AAC3B,YAAY;AACZ;AACA,QAAQ,IAAI,UAAU,GAAG,IAAI;AAC7B,QAAQ,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,EAAE;AAClD,QAAQ,IAAI,QAAQ,KAAK,IAAI,EAAE;AAC/B,YAAY,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;AAClD,YAAY,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;AACtC,gBAAgB,IAAI,IAAI,CAAC,IAAI,GAAG,QAAQ,EAAE;AAC1C,oBAAoB,UAAU,GAAG,KAAK;AACtC,oBAAoB;AACpB;AACA;AACA;AACA,QAAQ,MAAM,MAAM,GAAG;AACvB,cAAc,IAAI,CAAC,MAAM;AACzB,cAAc,iBAAiB;AAC/B,QAAQ;AACR,aAAa,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;AAC7C,aAAa,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC;AACrD,aAAa,SAAS,CAAC,CAAC,KAAK,KAAK;AAClC,YAAY,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC;AAC9B,YAAY,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;AAChC,YAAY,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;AAClC,SAAS,CAAC;AACV;AACA,IAAI,UAAU,CAAC,KAAK,EAAE;AACtB,QAAQ,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC;AAC/B,QAAQ,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;AACjC;AACA,IAAI,aAAa,CAAC,KAAK,EAAE;AACzB,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE;AAC5B,YAAY,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;AACrD,YAAY,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC;AAC1C;AACA;AACA,IAAI,KAAK,GAAG;AACZ,QAAQ,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC;AACxC;AACA,IAAI,qBAAqB,GAAG,CAAC,IAAI,KAAK;AACtC,QAAQ,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,EAAE;AACjD,QAAQ,IAAI,OAAO,KAAK,IAAI;AAC5B,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;AACtC,YAAY,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;AACrC,YAAY,OAAO,IAAI;AACvB;AACA,QAAQ,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK;AAChC,QAAQ,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;AAClC,YAAY,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,GAAG,OAAO,EAAE;AACnE,gBAAgB,OAAO;AACvB,oBAAoB,WAAW,EAAE;AACjC,wBAAwB,GAAG,EAAE,OAAO;AACpC,wBAAwB,MAAM,EAAE,IAAI,CAAC,IAAI;AACzC,qBAAqB;AACrB,iBAAiB;AACjB;AACA;AACA,QAAQ,OAAO,IAAI;AACnB,KAAK;AACL,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AACjL,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,qBAAqB,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,EAAE,iBAAiB,EAAE,aAAa,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,EAAE,iBAAiB,EAAE,aAAa,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,gBAAgB,EAAE,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,UAAU,EAAE,aAAa,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,iBAAiB,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,EAAE,iBAAiB,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;AACr1B;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,UAAU,EAAE,CAAC;AAC/H,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,CAAC;;AC3HN,MAAM,wBAAwB,SAAS,aAAa,CAAC;AAC5D,IAAI,WAAW,CAAC,IAAI,EAAE;AACtB,QAAQ,OAAO,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;AACzD;AACA;;ACJO,MAAM,kBAAkB,SAAS,aAAa,CAAC;AACtD,IAAI,QAAQ;AACZ,IAAI,WAAW,CAAC,QAAQ,EAAE;AAC1B,QAAQ,KAAK,EAAE;AACf,QAAQ,IAAI,CAAC,QAAQ,GAAG,QAAQ;AAChC;AACA,IAAI,WAAW,CAAC,IAAI,EAAE;AACtB,QAAQ,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;AACjE;AACA;;ACRO,MAAM,wBAAwB,SAAS,yBAAyB,CAAC;AACxE,IAAI,GAAG,GAAG,KAAK,CAAC,SAAS,EAAE;AAC3B,QAAQ,SAAS,EAAE,sBAAsB;AACzC,KAAK,CAAC;AACN,IAAI,GAAG,GAAG,KAAK,CAAC,SAAS,EAAE;AAC3B,QAAQ,SAAS,EAAE,sBAAsB;AACzC,KAAK,CAAC;AACN,IAAI,IAAI,GAAG,KAAK,CAAC,SAAS,EAAE;AAC5B,QAAQ,SAAS,EAAE,sBAAsB;AACzC,KAAK,CAAC;AACN,IAAI,YAAY,GAAG,KAAK,CAAC,SAAS,EAAE;AACpC,QAAQ,SAAS,EAAE,eAAe;AAClC,KAAK,CAAC;AACN,IAAI,OAAO,CAAC,KAAK,EAAE;AACnB,QAAQ,OAAO,KAAK,KAAK,IAAI;AAC7B;AACA,IAAI,eAAe,CAAC,aAAa,EAAE;AACnC,QAAQ,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE;AAC/C,YAAY,OAAO,aAAa;AAChC;AACA,aAAa,IAAI,aAAa,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE;AACrE,YAAY,OAAO,UAAU,CAAC,aAAa,CAAC;AAC5C;AACA,QAAQ,OAAO,IAAI;AACnB;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AACpL,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,wBAAwB,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,iBAAiB,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,YAAY,EAAE,EAAE,iBAAiB,EAAE,cAAc,EAAE,UAAU,EAAE,cAAc,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;AACjqB;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,UAAU,EAAE,CAAC;AAClI,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,CAAC;;AClCN,MAAM,mBAAmB,CAAC;AACjC;;ACCO,MAAM,0BAA0B,SAAS,mBAAmB,CAAC;AACpE,IAAI,IAAI;AACR,IAAI,eAAe,GAAG,IAAI;AAC1B,IAAI,aAAa,GAAG,KAAK;AACzB,IAAI,gBAAgB;AACpB,IAAI,WAAW,CAAC,IAAI,EAAE;AACtB,QAAQ,KAAK,EAAE;AACf,QAAQ,IAAI,CAAC,IAAI,GAAG,IAAI;AACxB,QAAQ,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;AACzD;AACA,IAAI,OAAO,CAAC,MAAM,EAAE;AACpB,QAAQ,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC;AACnG,QAAQ,OAAO,EAAE,CAAC,IAAI,CAAC;AACvB;AACA,IAAI,QAAQ,CAAC,IAAI,EAAE;AACnB,QAAQ,OAAO,IAAI,CAAC,KAAK;AACzB;AACA,IAAI,KAAK,CAAC,IAAI,EAAE;AAChB,QAAQ,OAAO,IAAI,CAAC,KAAK;AACzB;AACA,IAAI,aAAa,CAAC,GAAG,EAAE;AACvB,QAAQ,MAAM,MAAM,GAAG,IAAI,GAAG,EAAE;AAChC,QAAQ,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE;AAC9B,YAAY,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC;AAChF,YAAY,IAAI,IAAI,EAAE;AACtB,gBAAgB,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC;AACpC;AACA;AACA,QAAQ,OAAO,EAAE,CAAC,MAAM,CAAC;AACzB;AACA,IAAI,eAAe,CAAC,KAAK,EAAE;AAC3B,QAAQ,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE;AACzC;AACA,IAAI,cAAc,CAAC,IAAI,EAAE;AACzB,QAAQ,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,MAAM;AACnC,YAAY,KAAK,EAAE,IAAI,CAAC,KAAK;AAC7B,YAAY,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC;AACnD,SAAS,CAAC,CAAC;AACX;AACA,IAAI,UAAU,CAAC,KAAK,EAAE;AACtB,QAAQ,IAAI,CAAC,KAAK,EAAE;AACpB,YAAY,OAAO,IAAI,CAAC,gBAAgB;AACxC;AACA,QAAQ,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;AACrD,QAAQ,IAAI,CAAC,SAAS,EAAE;AACxB,YAAY,OAAO,IAAI,CAAC,gBAAgB;AACxC;AACA,QAAQ,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AACrF;AACA,IAAI,OAAO,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE;AACvC,QAAQ,IAAI,QAAQ,GAAG,CAAC,EAAE;AAC1B,YAAY,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC;AAChD;AACA,QAAQ,IAAI,SAAS,GAAG,CAAC,EAAE;AAC3B,YAAY,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC;AACjD;AACA,QAAQ,IAAI,SAAS,GAAG,QAAQ,GAAG,IAAI,CAAC,MAAM,EAAE;AAChD,YAAY,OAAO;AACnB,gBAAgB,IAAI,EAAE,EAAE;AACxB,gBAAgB,UAAU,EAAE,IAAI,CAAC,MAAM;AACvC,gBAAgB,SAAS,EAAE,SAAS;AACpC,aAAa;AACb;AACA,QAAQ,MAAM,KAAK,GAAG,SAAS,GAAG,QAAQ;AAC1C,QAAQ,MAAM,GAAG,GAAG,KAAK,GAAG,QAAQ;AACpC,QAAQ,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC;AAC5C,QAAQ,OAAO;AACf,YAAY,IAAI,EAAE,KAAK;AACvB,YAAY,UAAU,EAAE,IAAI,CAAC,MAAM;AACnC,YAAY,SAAS,EAAE,SAAS;AAChC,SAAS;AACT;AACA;;AC1EY,MAAC,qBAAqB,GAAG;AACrC,IAAI,KAAK,EAAE,IAAI;AACf,IAAI,aAAa,EAAE,CAAC;AACpB,IAAI,QAAQ,EAAE,EAAE;AAChB,IAAI,UAAU,EAAE,CAAC;AACjB,IAAI,eAAe,EAAE,KAAK;AAC1B,IAAI,OAAO,EAAE,EAAE;AACf,IAAI,UAAU,EAAE,IAAI;AACpB,IAAI,WAAW,EAAE,IAAI,GAAG,EAAE;AAC1B,IAAI,UAAU,EAAE,IAAI;AACpB,IAAI,uBAAuB,EAAE,aAAa;AAC1C,IAAI,aAAa,EAAE,IAAI;AACvB,IAAI,oBAAoB,EAAE,IAAI;AAC9B,IAAI,gBAAgB,EAAE,EAAE;AACxB;;ACdO,SAAS,0BAA0B,CAAC,CAAC,EAAE,CAAC,EAAE;AACjD,IAAI,QAAQ,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK;AAC/B,QAAQ,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,SAAS;AACnC,QAAQ,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,QAAQ;AACjC;;ACAA,SAAS,iBAAiB,CAAC,YAAY,GAAG,qBAAqB,EAAE;AACjE,IAAI,OAAO,WAAW,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,SAAS,CAAC;AAC1D,QAAQ,SAAS,CAAC,KAAK,EAAE;AACzB,YAAY,KAAK,CAAC,oBAAoB,EAAE,EAAE,YAAY,CAAC,WAAW,EAAE;AACpE,YAAY,KAAK,CAAC,aAAa,EAAE,EAAE,YAAY,CAAC,WAAW,EAAE;AAC7D,SAAS;AACT,KAAK,CAAC,EAAE,YAAY,CAAC,CAAC,KAAK,MAAM;AACjC,QAAQ,OAAO,EAAE,QAAQ,CAAC,MAAM,KAAK,CAAC,aAAa,KAAK,IAAI,CAAC;AAC7D,QAAQ,aAAa,EAAE,QAAQ,CAAC,MAAM;AACtC,YAAY,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,MAAM,EAAE,CAAC;AAC3D,SAAS,CAAC;AACV,QAAQ,cAAc,EAAE,QAAQ,CAAC,MAAM,KAAK,CAAC,aAAa,EAAE,KAAK,IAAI,CAAC;AACtE,QAAQ,cAAc,EAAE,QAAQ,CAAC,MAAM,KAAK,CAAC,oBAAoB,EAAE,KAAK,IAAI,CAAC;AAC7E,QAAQ,OAAO,EAAE,QAAQ,CAAC,MAAM,KAAK,CAAC,aAAa,EAAE,KAAK,IAAI;AAC9D,YAAY,KAAK,CAAC,oBAAoB,EAAE,KAAK,IAAI,CAAC;AAClD;AACA;AACA,QAAQ,cAAc,EAAE,QAAQ,CAAC,MAAM;AACvC,YAAY,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,EAAE;AACzC,YAAY,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,EAAE;AACvC,YAAY,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,EAAE;AACnD,YAAY,MAAM,OAAO,GAAG,KAAK,CAAC,gBAAgB,EAAE;AACpD,YAAY,IAAI,KAAK,KAAK,WAAW,CAAC,IAAI,KAAK,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE;AAC3E,gBAAgB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM;AAC1C,oBAAoB,GAAG,EAAE;AACzB,oBAAoB,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;AACpD,iBAAiB,CAAC,CAAC;AACnB;AACA,YAAY,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AACtG,YAAY,MAAM,kBAAkB,GAAG,KAAK,CAAC,uBAAuB,EAAE;AACtE,YAAY,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM;AACtD,gBAAgB,EAAE;AAClB,gBAAgB,KAAK,EAAE,kBAAkB,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;AACrE,gBAAgB,KAAK,EAAE,IAAI;AAC3B,gBAAgB,QAAQ,EAAE,IAAI;AAC9B,aAAa,CAAC,CAAC;AACf,YAAY,YAAY,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC3D,YAAY,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,KAAK;AACpC,gBAAgB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;AAC/C,oBAAoB,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AAC/D;AACA,aAAa,CAAC;AACd,YAAY,OAAO,QAAQ;AAC3B,SAAS,CAAC;AACV,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,KAAK,MAAM;AACjC,QAAQ,KAAK,GAAG;AAChB,YAAY,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC;AAC1D,YAAY,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,aAAa,CAAC;AACxD,YAAY,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC;AAChD,YAAY,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC;AACtD,YAAY,IAAI,CAAC,UAAU,IAAI,KAAK,KAAK,IAAI,EAAE;AAC/C,gBAAgB;AAChB;AACA,YAAY,MAAM,MAAM,GAAG;AAC3B,gBAAgB,KAAK,EAAE,KAAK;AAC5B,gBAAgB,SAAS,EAAE,KAAK;AAChC,gBAAgB,QAAQ,EAAE,QAAQ;AAClC,aAAa;AACb,YAAY,MAAM,cAAc,GAAG,SAAS,CAAC,KAAK,CAAC,aAAa,CAAC;AACjE,YAAY,IAAI,cAAc,EAAE;AAChC,gBAAgB,IAAI,0BAA0B,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE;AAC/E,oBAAoB;AACpB;AACA,qBAAqB;AACrB,oBAAoB,cAAc,CAAC,YAAY,CAAC,WAAW,EAAE;AAC7D;AACA;AACA,YAAY,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC;AAC3D,YAAY,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC;AAC/E;AACA,YAAY,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE;AACtC,gBAAgB,UAAU,CAAC,KAAK,EAAE;AAClC,oBAAoB,aAAa,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE;AACnE,iBAAiB,CAAC;AAClB;AACA,SAAS;AACT,QAAQ,iBAAiB,CAAC,aAAa,EAAE;AACzC,YAAY,OAAO;AACnB,gBAAgB,IAAI,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,aAAa,CAAC;AACzE,gBAAgB,KAAK,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;AAC3D,gBAAgB,QAAQ,EAAE,MAAM,IAAI,CAAC,gBAAgB,EAAE;AACvD,aAAa;AACb,SAAS;AACT,QAAQ,eAAe,CAAC,IAAI,EAAE,aAAa,EAAE;AAC7C,YAAY,IAAI,aAAa,GAAG,IAAI,CAAC,SAAS,GAAG,CAAC;AAClD,YAAY,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,EAAE;AAC1C,gBAAgB,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC,QAAQ,EAAE;AAC/D,oBAAoB,aAAa,GAAG,IAAI;AACxC;AACA;AACA,iBAAiB,IAAI,aAAa,CAAC,SAAS,GAAG,aAAa,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM;AACxF,gBAAgB,IAAI,CAAC,UAAU,EAAE;AACjC,gBAAgB,aAAa,GAAG,IAAI;AACpC;AACA,YAAY,MAAM,OAAO,GAAG;AAC5B,gBAAgB,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC;AAC3C,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC;AACpD,aAAa;AACb,YAAY,UAAU,CAAC,KAAK,EAAE;AAC9B,gBAAgB,UAAU,EAAE,IAAI,CAAC,UAAU;AAC3C,oBAAoB,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,SAAS,GAAG,aAAa,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;AACrH,gBAAgB,aAAa;AAC7B,gBAAgB,eAAe,EAAE,IAAI,CAAC,UAAU,KAAK,IAAI;AACzD,oBAAoB,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC,QAAQ;AAC7D,gBAAgB,OAAO;AACvB,gBAAgB,aAAa,EAAE,IAAI;AACnC,aAAa,CAAC;AACd,YAAY,IAAI,CAAC,oBAAoB,EAAE;AACvC,SAAS;AACT,QAAQ,aAAa,CAAC,KAAK,EAAE;AAC7B,YAAY,UAAU,CAAC,KAAK,EAAE;AAC9B,gBAAgB,UAAU,EAAE,iBAAiB,CAAC,KAAK,CAAC;AACpD,gBAAgB,aAAa,EAAE,IAAI;AACnC,aAAa,CAAC;AACd,SAAS;AACT,QAAQ,gBAAgB,GAAG;AAC3B,YAAY,UAAU,CAAC,KAAK,EAAE;AAC9B,gBAAgB,aAAa,EAAE,IAAI;AACnC,aAAa,CAAC;AACd,SAAS;AACT,QAAQ,aAAa,CAAC,UAAU,EAAE;AAClC,YAAY,SAAS,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,YAAY,CAAC,WAAW,EAAE;AACtE,YAAY,UAAU,CAAC,KAAK,EAAE;AAC9B,gBAAgB,UAAU;AAC1B,gBAAgB,aAAa,EAAE,IAAI;AACnC,gBAAgB,UAAU,EAAE,IAAI;AAChC,gBAAgB,eAAe,EAAE,UAAU,CAAC,eAAe;AAC3D,gBAAgB,aAAa,EAAE,CAAC;AAChC,gBAAgB,UAAU,EAAE,CAAC;AAC7B,gBAAgB,OAAO,EAAE,EAAE;AAC3B,aAAa,CAAC;AACd,YAAY,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE;AAC3C,gBAAgB,IAAI,CAAC,KAAK,EAAE;AAC5B;AACA,iBAAiB;AACjB,gBAAgB,IAAI,CAAC,oBAAoB,EAAE;AAC3C;AACA,SAAS;AACT,QAAQ,QAAQ,CAAC,KAAK,EAAE;AACxB,YAAY,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC;AAC1D,YAAY,IAAI,KAAK,KAAK,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;AAClD,gBAAgB,IAAI,CAAC,KAAK,EAAE;AAC5B,gBAAgB,UAAU,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC;AAC5C,gBAAgB,IAAI,KAAK,IAAI,CAAC,UAAU,EAAE,aAAa,EAAE;AACzD,oBAAoB,IAAI,CAAC,KAAK,EAAE;AAChC;AACA;AACA,SAAS;AACT,QAAQ,KAAK,GAAG;AAChB,YAAY,UAAU,CAAC,KAAK,EAAE;AAC9B,gBAAgB,KAAK,EAAE,IAAI;AAC3B,gBAAgB,aAAa,EAAE,CAAC;AAChC,gBAAgB,OAAO,EAAE,EAAE;AAC3B,gBAAgB,UAAU,EAAE,CAAC;AAC7B,gBAAgB,eAAe,EAAE,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,eAAe,IAAI,IAAI;AACrF,aAAa,CAAC;AACd,SAAS;AACT,QAAQ,oBAAoB,GAAG;AAC/B,YAAY,UAAU,CAAC,KAAK,EAAE;AAC9B,gBAAgB,eAAe,EAAE,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,eAAe,IAAI,IAAI;AACrF,aAAa,CAAC;AACd,SAAS;AACT,QAAQ,WAAW,CAAC,GAAG,EAAE;AACzB,YAAY,UAAU,CAAC,KAAK,EAAE;AAC9B,gBAAgB,gBAAgB,EAAE,GAAG;AACrC,gBAAgB,WAAW,EAAE,IAAI,GAAG,EAAE;AACtC,aAAa,CAAC;AACd,YAAY,IAAI,CAAC,oBAAoB,EAAE;AACvC,SAAS;AACT,QAAQ,MAAM,CAAC,GAAG,EAAE;AACpB,YAAY,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,gBAAgB,CAAC;AAChE,YAAY,MAAM,YAAY,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AAC7E,YAAY,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;AACzC,gBAAgB,UAAU,CAAC,KAAK,EAAE;AAClC,oBAAoB,gBAAgB,EAAE,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC;AACrE,iBAAiB,CAAC;AAClB,gBAAgB,IAAI,CAAC,oBAAoB,EAAE;AAC3C;AACA,SAAS;AACT,QAAQ,WAAW,GAAG;AACtB,YAAY,MAAM,eAAe,GAAG,SAAS,CAAC,KAAK,CAAC,oBAAoB,CAAC;AACzE,YAAY,IAAI,eAAe,EAAE;AACjC,gBAAgB,eAAe,CAAC,YAAY,CAAC,WAAW,EAAE;AAC1D;AACA,YAAY,UAAU,CAAC,KAAK,EAAE;AAC9B,gBAAgB,gBAAgB,EAAE,EAAE;AACpC,gBAAgB,WAAW,EAAE,IAAI,GAAG,EAAE;AACtC,gBAAgB,oBAAoB,EAAE,IAAI;AAC1C,aAAa,CAAC;AACd,SAAS;AACT,QAAQ,iBAAiB,GAAG;AAC5B,YAAY,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,gBAAgB,CAAC;AAChE,YAAY,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC;AAClD,YAAY,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;AACrE,YAAY,MAAM,UAAU,GAAG,EAAE;AACjC,YAAY,IAAI,eAAe,GAAG,KAAK;AACvC,YAAY,KAAK,MAAM,EAAE,IAAI,UAAU,EAAE;AACzC,gBAAgB,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC;AAC7D,gBAAgB,IAAI,IAAI,EAAE;AAC1B,oBAAoB,WAAW,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC;AAC7C,oBAAoB,eAAe,GAAG,IAAI;AAC1C;AACA,qBAAqB;AACrB,oBAAoB,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;AACvC;AACA;AACA,YAAY,IAAI,eAAe,EAAE;AACjC,gBAAgB,UAAU,CAAC,KAAK,EAAE,EAAE,WAAW,EAAE,CAAC;AAClD;AACA,YAAY,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;AACzC,gBAAgB,IAAI,CAAC,2BAA2B,EAAE;AAClD;AACA,YAAY,UAAU,CAAC,KAAK,EAAE,EAAE,gBAAgB,EAAE,UAAU,EAAE,CAAC;AAC/D,YAAY,OAAO,UAAU;AAC7B,SAAS;AACT,QAAQ,oBAAoB,GAAG;AAC/B,YAAY,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,EAAE;AAC1D,YAAY,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;AACvE,gBAAgB,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC;AACjD;AACA,SAAS;AACT,QAAQ,2BAA2B,GAAG;AACtC,YAAY,MAAM,eAAe,GAAG,SAAS,CAAC,KAAK,CAAC,oBAAoB,CAAC;AACzE,YAAY,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC;AAClD,YAAY,IAAI,eAAe,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE;AACtF,gBAAgB,eAAe,CAAC,YAAY,CAAC,WAAW,EAAE;AAC1D,gBAAgB,UAAU,CAAC,KAAK,EAAE;AAClC,oBAAoB,oBAAoB,EAAE,IAAI;AAC9C,oBAAoB,gBAAgB,EAAE,EAAE;AACxC,iBAAiB,CAAC;AAClB;AACA,SAAS;AACT,QAAQ,aAAa,CAAC,GAAG,EAAE;AAC3B,YAAY,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC;AAC1D,YAAY,IAAI,CAAC,UAAU,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;AACjD,gBAAgB;AAChB;AACA,YAAY,MAAM,GAAG,GAAG,UAAU,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG,KAAK;AACzE,gBAAgB,MAAM,UAAU,GAAG,EAAE;AACrC,gBAAgB,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;AACzE,gBAAgB,KAAK,MAAM,EAAE,IAAI,SAAS,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE;AACpE,oBAAoB,IAAI,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;AACrC,wBAAwB,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;AACjD,wBAAwB,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC;AAChE,wBAAwB,WAAW,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;AACjE;AACA,yBAAyB;AACzB,wBAAwB,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;AAC3C;AACA;AACA,gBAAgB,UAAU,CAAC,KAAK,EAAE;AAClC,oBAAoB,oBAAoB,EAAE,IAAI;AAC9C,oBAAoB,gBAAgB,EAAE,UAAU;AAChD,oBAAoB,WAAW,EAAE,WAAW;AAC5C,iBAAiB,CAAC;AAClB,gBAAgB,IAAI,CAAC,oBAAoB,EAAE;AAC3C,aAAa,CAAC;AACd,YAAY,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE;AAC7B,gBAAgB,UAAU,CAAC,KAAK,EAAE;AAClC,oBAAoB,oBAAoB,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,EAAE;AACpE,iBAAiB,CAAC;AAClB;AACA,SAAS;AACT,QAAQ,YAAY,CAAC,EAAE,EAAE;AACzB,YAAY,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC;AAClC,SAAS;AACT,QAAQ,MAAM,CAAC,EAAE,EAAE;AACnB,YAAY,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC;AACvD,YAAY,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC;AAC1D,YAAY,IAAI,CAAC,UAAU,EAAE;AAC7B,gBAAgB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC;AAC1D;AACA,YAAY,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;AAChC,gBAAgB,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC;AAC9C,gBAAgB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;AACjC,gBAAgB,UAAU,CAAC,KAAK,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC;AAC1D;AACA,iBAAiB;AACjB,gBAAgB,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC;AAChF,gBAAgB,IAAI,CAAC,IAAI,EAAE;AAC3B,oBAAoB,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;AACrC;AACA,qBAAqB;AACrB,oBAAoB,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC;AAClD,oBAAoB,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC;AACxC,oBAAoB,UAAU,CAAC,KAAK,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC;AAC9D;AACA;AACA,SAAS;AACT,QAAQ,WAAW,GAAG;AACtB,YAAY,SAAS,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,YAAY,CAAC,WAAW,EAAE;AACtE,YAAY,UAAU,CAAC,KAAK,EAAE;AAC9B,gBAAgB,aAAa,EAAE,IAAI;AACnC,gBAAgB,UAAU,EAAE,IAAI;AAChC,aAAa,CAAC;AACd,SAAS;AACT,QAAQ,UAAU,CAAC,IAAI,EAAE;AACzB,YAAY,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC;AAC1D,YAAY,IAAI,CAAC,UAAU,EAAE;AAC7B,gBAAgB,OAAO,KAAK;AAC5B;AACA,YAAY,MAAM,EAAE,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC;AAC7C,YAAY,OAAO,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;AACvD,SAAS;AACT,QAAQ,WAAW,CAAC,IAAI,EAAE;AAC1B,YAAY,UAAU,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AACjD,SAAS;AACT,QAAQ,iBAAiB,CAAC,KAAK,EAAE;AACjC,YAAY,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC;AAC1D,YAAY,IAAI,CAAC,UAAU,EAAE;AAC7B,gBAAgB,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC;AACtD;AACA,YAAY,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,MAAM;AACxC,gBAAgB,KAAK,EAAE,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC;AAChD,gBAAgB,KAAK,EAAE,IAAI;AAC3B,gBAAgB,EAAE,EAAE,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC;AAC1C,aAAa,CAAC,CAAC;AACf,SAAS;AACT,KAAK,CAAC,CAAC,CAAC;AACR;AACY,MAAC,cAAc,GAAG,iBAAiB;AAC/C,SAAS,iBAAiB,CAAC,KAAK,EAAE;AAClC,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;AACnC,QAAQ,OAAO,KAAK;AACpB;AACA,SAAS,IAAI,KAAK,YAAY,KAAK,EAAE;AACrC,QAAQ,OAAO,KAAK,CAAC,OAAO;AAC5B;AACA,SAAS,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,SAAS,IAAI,KAAK,EAAE;AACvE,QAAQ,OAAO,KAAK,CAAC,OAAO;AAC5B;AACA,IAAI,OAAO,gBAAgB;AAC3B;;AC5UO,MAAM,2CAA2C,CAAC;AACzD,IAAI,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC;AAClC,IAAI,YAAY,GAAG,KAAK,CAAC,QAAQ,CAAC;AAClC,QAAQ,KAAK,EAAE,SAAS;AACxB,KAAK,CAAC;AACN,IAAI,OAAO,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;AACpE,IAAI,YAAY,CAAC,OAAO,EAAE;AAC1B,QAAQ,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;AAC9C,YAAY,OAAO,EAAE;AACrB;AACA,QAAQ,IAAI,OAAO,OAAO,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE;AAC1D,YAAY,OAAO,OAAO;AAC1B;AACA,aAAa;AACb,YAAY,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,MAAM;AAC3C,gBAAgB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;AACpC,gBAAgB,KAAK,EAAE,KAAK;AAC5B,aAAa,CAAC,CAAC;AACf;AACA;AACA,IAAI,aAAa,GAAG,MAAM,CAAC,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;AACtD,IAAI,aAAa,GAAG;AACpB,QAAQ,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE;AACtC,QAAQ,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,0BAA0B,CAAC,OAAO,CAAC,CAAC;AACzE;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,2CAA2C,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AACrM,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,2CAA2C,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,YAAY,EAAE,EAAE,iBAAiB,EAAE,cAAc,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;AAC9T;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,2CAA2C,EAAE,UAAU,EAAE,CAAC;AACrJ,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,CAAC;;AChCN,MAAM,wBAAwB,CAAC;AACtC,IAAI,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AACnC,IAAI,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC;AACxD,IAAI,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC;AAC7B,IAAI,IAAI,QAAQ,CAAC,KAAK,EAAE;AACxB,QAAQ,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC;AACjC;AACA,IAAI,IAAI,QAAQ,GAAG;AACnB,QAAQ,OAAO,IAAI,CAAC,SAAS,EAAE;AAC/B;AACA,IAAI,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC;AAC7B,IAAI,IAAI,QAAQ,CAAC,KAAK,EAAE;AACxB,QAAQ,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC;AACjC;AACA,IAAI,IAAI,QAAQ,GAAG;AACnB,QAAQ,OAAO,IAAI,CAAC,SAAS,EAAE;AAC/B;AACA,IAAI,eAAe,GAAG;AACtB,QAAQ,IAAI,CAAC,QAAQ,GAAG,IAAI;AAC5B;AACA,IAAI,iBAAiB,GAAG;AACxB,QAAQ,IAAI,CAAC,QAAQ,GAAG,KAAK;AAC7B;AACA,IAAI,iBAAiB,GAAG;AACxB,QAAQ,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,cAAc,CAAC;AACrD,YAAY,KAAK,EAAE,SAAS;AAC5B,YAAY,QAAQ,EAAE,QAAQ;AAC9B,SAAS,CAAC;AACV;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AAClL,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,wBAAwB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,mBAAmB,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,iBAAiB,EAAE,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,2BAA2B,EAAE,aAAa,EAAE,2BAA2B,EAAE,aAAa,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;AACpd;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,UAAU,EAAE,CAAC;AAClI,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,QAAQ,EAAE,mBAAmB;AACjD,oBAAoB,IAAI,EAAE;AAC1B,wBAAwB,KAAK,EAAE,YAAY;AAC3C,wBAAwB,6BAA6B,EAAE,aAAa;AACpE,wBAAwB,6BAA6B,EAAE,aAAa;AACpE,qBAAqB;AACrB,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;ACpCN,MAAM,4BAA4B,SAAS,yBAAyB,CAAC;AAC5E,IAAI,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC;AACjC,IAAI,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC;AAClC,IAAI,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc;AAC9C,IAAI,qBAAqB,GAAG,KAAK,CAAC,IAAI,EAAE;AACxC,QAAQ,KAAK,EAAE,gBAAgB;AAC/B,KAAK,CAAC;AACN,IAAI,gBAAgB,GAAG,YAAY,CAAC,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;AACvE,IAAI,oBAAoB,GAAG,MAAM,CAAC,MAAM;AACxC,QAAQ,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,EAAE;AACjD,QAAQ,IAAI,SAAS,EAAE;AACvB,YAAY,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC;AACnD;AACA,aAAa;AACb,YAAY,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE;AAC5C;AACA,KAAK,CAAC;AACN,IAAI,SAAS,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC;AACrC,IAAI,eAAe,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;AACrD,IAAI,WAAW,GAAG,QAAQ,CAAC,MAAM;AACjC,QAAQ,IAAI,CAAC,eAAe,EAAE;AAC9B,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE;AAC9D,YAAY,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM;AACxC;AACA,aAAa;AACb,YAAY,OAAO,IAAI;AACvB;AACA,KAAK,CAAC;AACN,IAAI,iBAAiB,GAAG,KAAK,CAAC,GAAG,EAAE;AACnC,QAAQ,KAAK,EAAE,UAAU;AACzB,KAAK,CAAC;AACN,IAAI,YAAY,GAAG,YAAY,CAAC,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;AAC/D,IAAI,eAAe,GAAG,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,CAAC;AAC7J,IAAI,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC,eAAe,EAAE;AACpD,QAAQ,YAAY,EAAE,IAAI;AAC1B,KAAK,CAAC;AACN,IAAI,aAAa,GAAG,KAAK,CAAC,EAAE,EAAE;AAC9B,QAAQ,KAAK,EAAE,UAAU;AACzB,KAAK,CAAC;AACN,IAAI,cAAc,GAAG,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;AAC/E,IAAI,OAAO,GAAG,QAAQ,CAAC,MAAM;AAC7B,QAAQ,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;AACpC,YAAY,IAAI,CAAC,YAAY,EAAE;AAC/B,YAAY,cAAc,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;AAC5D,KAAK,CAAC;AACN,IAAI,QAAQ,GAAG;AACf,QAAQ,KAAK,CAAC,QAAQ,EAAE;AACxB,QAAQ,IAAI,CAAC;AACb,aAAa,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC;AACrD,aAAa,SAAS,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AAC1D;AACA,IAAI,WAAW,CAAC,KAAK,EAAE;AACvB,QAAQ,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC;AAClC;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,4BAA4B,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AACxL,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,4BAA4B,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,eAAe,EAAE,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,UAAU,EAAE,iBAAiB,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,qBAAqB,EAAE,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,UAAU,EAAE,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,iBAAiB,EAAE,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,aAAa,EAAE,EAAE,iBAAiB,EAAE,eAAe,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;AACpxB;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,4BAA4B,EAAE,UAAU,EAAE,CAAC;AACtI,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,CAAC;;AChEN,MAAM,uBAAuB,SAAS,4BAA4B,CAAC;AAC1E,IAAI,QAAQ,GAAG,QAAQ,CAAC,MAAM;AAC9B,QAAQ,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE;AACnD,QAAQ,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,GAAG,QAAQ,GAAG,IAAI;AACpD,KAAK,CAAC;AACN,IAAI,OAAO,CAAC,KAAK,EAAE;AACnB,QAAQ,OAAO,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;AACnD;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AACnL,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,uBAAuB,EAAE,YAAY,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;AAC9K;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,UAAU,EAAE,CAAC;AACjI,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,CAAC;;ACZN,MAAM,wBAAwB,SAAS,4BAA4B,CAAC;AAC3E,IAAI,QAAQ,GAAG,QAAQ,CAAC,MAAM;AAC9B,QAAQ,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE;AAChD,QAAQ,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI;AACjD,KAAK,CAAC;AACN,IAAI,OAAO,CAAC,KAAK,EAAE;AACnB,QAAQ,OAAO,KAAK,KAAK,IAAI;AAC7B;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AACpL,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,wBAAwB,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE;AACpJ,YAAY;AACZ,gBAAgB,OAAO,EAAE,yBAAyB;AAClD,gBAAgB,QAAQ,EAAE,wBAAwB;AAClD,aAAa;AACb,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;AACjD;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,UAAU,EAAE,CAAC;AAClI,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,SAAS,EAAE;AAC/B,wBAAwB;AACxB,4BAA4B,OAAO,EAAE,yBAAyB;AAC9D,4BAA4B,QAAQ,EAAE,wBAAwB;AAC9D,yBAAyB;AACzB,qBAAqB;AACrB,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;AC1BN,MAAM,qBAAqB,SAAS,yBAAyB,CAAC;AACrE,IAAI,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC;AACxB,IAAI,YAAY,GAAG,KAAK,CAAC,SAAS,EAAE;AACpC,QAAQ,SAAS,EAAE,eAAe;AAClC,KAAK,CAAC;AACN,IAAI,SAAS,GAAG,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,sBAAsB,EAAE,CAAC;AACvE,IAAI,SAAS,GAAG,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,sBAAsB,EAAE,CAAC;AACvE,IAAI,OAAO,GAAG,KAAK,CAAC,SAAS,EAAE;AAC/B,QAAQ,SAAS,EAAE,eAAe;AAClC,KAAK,CAAC;AACN,IAAI,OAAO,CAAC,KAAK,EAAE;AACnB,QAAQ,OAAO,KAAK,KAAK,EAAE,IAAI,KAAK,KAAK,IAAI;AAC7C;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AACjL,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,qBAAqB,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,iBAAiB,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,YAAY,EAAE,EAAE,iBAAiB,EAAE,cAAc,EAAE,UAAU,EAAE,cAAc,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,iBAAiB,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,iBAAiB,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,iBAAiB,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;AACh0B;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,UAAU,EAAE,CAAC;AAC/H,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,CAAC;;ACtBb;AACA;AACA;;;;"}
|
package/index.d.ts
CHANGED
|
@@ -222,7 +222,7 @@ declare abstract class RdtSelectDatasource<TItem, TId> {
|
|
|
222
222
|
declare class RdtOfflineSelectDatasource<TValue extends string | number> extends RdtSelectDatasource<RdtLabelValue<TValue>, TValue> {
|
|
223
223
|
readonly data: RdtLabelValue<TValue>[];
|
|
224
224
|
readonly totalCountKnown = true;
|
|
225
|
-
readonly queryRequired =
|
|
225
|
+
readonly queryRequired = false;
|
|
226
226
|
protected readonly preprocessedData: RdtLabelValue<TValue>[];
|
|
227
227
|
constructor(data: RdtLabelValue<TValue>[]);
|
|
228
228
|
getData(params: RdtSelectRequestParams): Observable<RdtSelectPage<RdtLabelValue<TValue>>>;
|
package/package.json
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ngrdt/forms",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.26",
|
|
4
4
|
"peerDependencies": {
|
|
5
|
-
"@ngrdt/core": "^0.0.
|
|
6
|
-
"@ngrdt/utils": "^0.0.
|
|
5
|
+
"@ngrdt/core": "^0.0.26",
|
|
6
|
+
"@ngrdt/utils": "^0.0.26",
|
|
7
7
|
"@angular/core": ">=18.2.0",
|
|
8
8
|
"@angular/forms": ">=18.2.0",
|
|
9
9
|
"rxjs": ">=7.0.0",
|