@odx/angular 5.2.3 → 5.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +26 -0
- package/cdk/a11y/lib/directives/list-focus-manager-option.directive.d.ts +1 -1
- package/components/breadcrumbs/lib/breadcrumbs.component.d.ts +2 -13
- package/components/icon/index.d.ts +1 -0
- package/components/icon/lib/helpers/index.d.ts +1 -0
- package/components/icon/lib/helpers/unpack-icon-identifier.d.ts +1 -0
- package/components/icon/lib/icon.component.d.ts +2 -1
- package/components/list/lib/components/list-item/list-item.component.d.ts +8 -2
- package/components/loading-spinner/lib/loading-spinner.directive.d.ts +0 -2
- package/esm2022/breakpoints/lib/breakpoints.service.mjs +2 -2
- package/esm2022/cdk/a11y/lib/directives/interactive.directive.mjs +4 -4
- package/esm2022/cdk/a11y/lib/directives/list-focus-manager-option.directive.mjs +3 -3
- package/esm2022/cdk/connected-overlay/lib/helpers/compute-overlay-position.mjs +7 -8
- package/esm2022/components/accordion/lib/components/accordion-item/accordion-item.component.mjs +2 -2
- package/esm2022/components/breadcrumbs/lib/breadcrumbs.component.mjs +5 -34
- package/esm2022/components/calendar/lib/calendar.service.mjs +5 -5
- package/esm2022/components/calendar/lib/components/calendar-header/calendar-header.component.mjs +1 -1
- package/esm2022/components/card/lib/card.component.mjs +2 -2
- package/esm2022/components/checkbox/lib/checkbox.component.mjs +2 -2
- package/esm2022/components/chip/lib/components/chip/chip.component.mjs +1 -1
- package/esm2022/components/datepicker/lib/datepicker.component.mjs +1 -1
- package/esm2022/components/error-page/lib/error-page.component.mjs +2 -2
- package/esm2022/components/form-field/lib/form-field.service.mjs +8 -8
- package/esm2022/components/form-field/lib/services/form-field-error.service.mjs +2 -2
- package/esm2022/components/icon/index.mjs +2 -1
- package/esm2022/components/icon/lib/helpers/index.mjs +2 -0
- package/esm2022/components/icon/lib/helpers/unpack-icon-identifier.mjs +7 -0
- package/esm2022/components/icon/lib/icon.component.mjs +10 -2
- package/esm2022/components/inline-message/lib/inline-message.component.mjs +1 -1
- package/esm2022/components/list/lib/components/expandable-list-item/expandable-list-item.component.mjs +2 -2
- package/esm2022/components/list/lib/components/list-item/list-item.component.mjs +18 -4
- package/esm2022/components/loading-spinner/lib/loading-spinner.directive.mjs +10 -9
- package/esm2022/components/main-menu/lib/main-menu.component.mjs +2 -2
- package/esm2022/components/main-menu/lib/main-menu.service.mjs +2 -2
- package/esm2022/components/modal/lib/components/modal-header/modal-header.component.mjs +2 -2
- package/esm2022/components/modal/lib/components/modal-hero/modal-hero.component.mjs +2 -2
- package/esm2022/components/navigation-back/lib/navigation-back.component.mjs +1 -1
- package/esm2022/components/paginator/lib/paginator.component.mjs +2 -2
- package/esm2022/components/rail-navigation/lib/components/rail-navigation-item/rail-navigation-item.component.mjs +1 -1
- package/esm2022/components/rich-list/lib/components/rich-list-header/rich-list-header.component.mjs +2 -2
- package/esm2022/components/select/lib/select.component.mjs +2 -2
- package/esm2022/components/tab-bar/lib/components/tab-bar-item/tab-bar-item.component.mjs +1 -1
- package/esm2022/components/tab-bar/lib/tab-bar.component.mjs +2 -2
- package/esm2022/components/toast/lib/components/toast-item/toast-item.component.mjs +2 -2
- package/esm2022/components/wizard/lib/components/wizard-step/wizard-step.component.mjs +1 -1
- package/esm2022/internal/translate/lib/pipes/translate.pipe.mjs +1 -1
- package/esm2022/internal/translate/lib/translate.service.mjs +2 -2
- package/esm2022/lib/controllers/controller.mjs +2 -2
- package/esm2022/lib/controllers/disabled.controller.mjs +2 -2
- package/esm2022/lib/controllers/readonly.controller.mjs +2 -2
- package/esm2022/lib/directives/with-tabindex.directive.mjs +14 -13
- package/esm2022/lib/services/window-ref.mjs +3 -3
- package/esm2022/localization/lib/localization.service.mjs +2 -2
- package/esm2022/sdk/lib/application-environment.mjs +1 -1
- package/esm2022/theming/lib/theming.service.mjs +2 -2
- package/esm2022/utils/lib/helpers/array.mjs +21 -1
- package/esm2022/utils/lib/helpers/dom.mjs +3 -3
- package/esm2022/utils/lib/helpers/queue.mjs +59 -23
- package/fesm2022/odx-angular-breakpoints.mjs +1 -1
- package/fesm2022/odx-angular-breakpoints.mjs.map +1 -1
- package/fesm2022/odx-angular-cdk-a11y.mjs +5 -5
- package/fesm2022/odx-angular-cdk-a11y.mjs.map +1 -1
- package/fesm2022/odx-angular-cdk-connected-overlay.mjs +6 -7
- package/fesm2022/odx-angular-cdk-connected-overlay.mjs.map +1 -1
- package/fesm2022/odx-angular-components-accordion.mjs +1 -1
- package/fesm2022/odx-angular-components-accordion.mjs.map +1 -1
- package/fesm2022/odx-angular-components-breadcrumbs.mjs +4 -33
- package/fesm2022/odx-angular-components-breadcrumbs.mjs.map +1 -1
- package/fesm2022/odx-angular-components-calendar.mjs +4 -4
- package/fesm2022/odx-angular-components-calendar.mjs.map +1 -1
- package/fesm2022/odx-angular-components-card.mjs +1 -1
- package/fesm2022/odx-angular-components-card.mjs.map +1 -1
- package/fesm2022/odx-angular-components-checkbox.mjs +1 -1
- package/fesm2022/odx-angular-components-checkbox.mjs.map +1 -1
- package/fesm2022/odx-angular-components-chip.mjs +1 -1
- package/fesm2022/odx-angular-components-chip.mjs.map +1 -1
- package/fesm2022/odx-angular-components-datepicker.mjs +1 -1
- package/fesm2022/odx-angular-components-datepicker.mjs.map +1 -1
- package/fesm2022/odx-angular-components-error-page.mjs +1 -1
- package/fesm2022/odx-angular-components-error-page.mjs.map +1 -1
- package/fesm2022/odx-angular-components-form-field.mjs +7 -7
- package/fesm2022/odx-angular-components-form-field.mjs.map +1 -1
- package/fesm2022/odx-angular-components-icon.mjs +16 -2
- package/fesm2022/odx-angular-components-icon.mjs.map +1 -1
- package/fesm2022/odx-angular-components-inline-message.mjs +1 -1
- package/fesm2022/odx-angular-components-inline-message.mjs.map +1 -1
- package/fesm2022/odx-angular-components-list.mjs +18 -4
- package/fesm2022/odx-angular-components-list.mjs.map +1 -1
- package/fesm2022/odx-angular-components-loading-spinner.mjs +9 -8
- package/fesm2022/odx-angular-components-loading-spinner.mjs.map +1 -1
- package/fesm2022/odx-angular-components-main-menu.mjs +2 -2
- package/fesm2022/odx-angular-components-main-menu.mjs.map +1 -1
- package/fesm2022/odx-angular-components-modal.mjs +2 -2
- package/fesm2022/odx-angular-components-modal.mjs.map +1 -1
- package/fesm2022/odx-angular-components-navigation-back.mjs +1 -1
- package/fesm2022/odx-angular-components-navigation-back.mjs.map +1 -1
- package/fesm2022/odx-angular-components-paginator.mjs +1 -1
- package/fesm2022/odx-angular-components-paginator.mjs.map +1 -1
- package/fesm2022/odx-angular-components-rail-navigation.mjs +1 -1
- package/fesm2022/odx-angular-components-rail-navigation.mjs.map +1 -1
- package/fesm2022/odx-angular-components-rich-list.mjs +1 -1
- package/fesm2022/odx-angular-components-rich-list.mjs.map +1 -1
- package/fesm2022/odx-angular-components-select.mjs +1 -1
- package/fesm2022/odx-angular-components-select.mjs.map +1 -1
- package/fesm2022/odx-angular-components-tab-bar.mjs +2 -2
- package/fesm2022/odx-angular-components-tab-bar.mjs.map +1 -1
- package/fesm2022/odx-angular-components-toast.mjs +1 -1
- package/fesm2022/odx-angular-components-toast.mjs.map +1 -1
- package/fesm2022/odx-angular-components-wizard.mjs +1 -1
- package/fesm2022/odx-angular-components-wizard.mjs.map +1 -1
- package/fesm2022/odx-angular-internal-translate.mjs +1 -1
- package/fesm2022/odx-angular-internal-translate.mjs.map +1 -1
- package/fesm2022/odx-angular-localization.mjs +1 -1
- package/fesm2022/odx-angular-localization.mjs.map +1 -1
- package/fesm2022/odx-angular-sdk.mjs.map +1 -1
- package/fesm2022/odx-angular-theming.mjs +1 -1
- package/fesm2022/odx-angular-theming.mjs.map +1 -1
- package/fesm2022/odx-angular-utils.mjs +80 -25
- package/fesm2022/odx-angular-utils.mjs.map +1 -1
- package/fesm2022/odx-angular.mjs +18 -19
- package/fesm2022/odx-angular.mjs.map +1 -1
- package/internal/translate/lib/pipes/translate.pipe.d.ts +1 -1
- package/internal/translate/lib/translate.service.d.ts +1 -1
- package/lib/directives/with-tabindex.directive.d.ts +5 -2
- package/package.json +1 -1
- package/utils/lib/helpers/array.d.ts +2 -0
- package/utils/lib/helpers/queue.d.ts +14 -6
|
@@ -20,7 +20,7 @@ export let ChipComponent = class ChipComponent {
|
|
|
20
20
|
this.remove.emit();
|
|
21
21
|
}
|
|
22
22
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
23
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "16.2.12", type: ChipComponent, isStandalone: true, selector: "odx-chip", inputs: { removable: ["removable", "removable", booleanAttribute], size: "size", variant: "variant" }, outputs: { remove: "remove" }, ngImport: i0, template: "<div class=\"odx-chip__content\">\n <ng-content></ng-content>\n</div>\n<button odxButton class=\"odx-chip__action\" [size]=\"size\" [variant]=\"variant\" type=\"button\" (click)=\"onClick()\" *ngIf=\"removable\">\n <odx-icon [size]=\"size\" name=\"close\" iconSet=\"core\"></odx-icon>\n</button>\n", dependencies: [{ kind: "ngmodule", type: CoreModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ButtonComponent, selector: "button[odxButton], a[odxButton]", inputs: ["variant", "size"] }, { kind: "component", type: IconComponent, selector: "odx-icon", inputs: ["inline", "size", "name", "iconSet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
23
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "16.2.12", type: ChipComponent, isStandalone: true, selector: "odx-chip", inputs: { removable: ["removable", "removable", booleanAttribute], size: "size", variant: "variant" }, outputs: { remove: "remove" }, ngImport: i0, template: "<div class=\"odx-chip__content\">\n <ng-content></ng-content>\n</div>\n<button odxButton class=\"odx-chip__action\" [size]=\"size\" [variant]=\"variant\" type=\"button\" (click)=\"onClick()\" *ngIf=\"removable\">\n <odx-icon [size]=\"size\" name=\"close\" iconSet=\"core\"></odx-icon>\n</button>\n", dependencies: [{ kind: "ngmodule", type: CoreModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ButtonComponent, selector: "button[odxButton], a[odxButton]", inputs: ["variant", "size"] }, { kind: "component", type: IconComponent, selector: "odx-icon", inputs: ["inline", "size", "name", "iconSet", "identifier"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
24
24
|
};
|
|
25
25
|
__decorate([
|
|
26
26
|
CSSModifier(),
|
|
@@ -77,7 +77,7 @@ export let DatepickerComponent = class DatepickerComponent extends CustomFormCon
|
|
|
77
77
|
this.dateField.nativeElementValue = format(date, dateFormat);
|
|
78
78
|
}
|
|
79
79
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DatepickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
80
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DatepickerComponent, isStandalone: true, selector: "odx-datepicker", inputs: { filterFn: "filterFn", minDate: "minDate", maxDate: "maxDate", dropdownPosition: "dropdownPosition" }, outputs: { selectedChange: "selectedChange" }, host: { listeners: { "keydown.alt.ArrowDown": "openDatepicker($event)" } }, queries: [{ propertyName: "dateField", first: true, predicate: DatepickerInputControlDirective, descendants: true }], viewQueries: [{ propertyName: "dropdown", first: true, predicate: DropdownDirective, descendants: true }, { propertyName: "dropdownTriggerElement", first: true, predicate: ["dropdownTrigger"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"input[odxDatepickerControl]\"></ng-content>\n\n<odx-action-group class=\"odx-no-margin\">\n <button\n #dropdownTrigger\n class=\"odx-datepicker__trigger\"\n odxButton\n size=\"small\"\n variant=\"ghost\"\n [odxDropdown]=\"calendarOverlay\"\n [odxDropdownOptions]=\"{ position: dropdownPosition }\"\n [odxDropdownTriggerElement]=\"dropdownTriggerElement.nativeElement\"\n [odxDropdownHost]=\"null\"\n [odxDropdownReferenceElement]=\"element.nativeElement\"\n (odxDropdownBeforeClose)=\"onTouched()\"\n >\n <odx-icon name=\"calendar\"></odx-icon>\n </button>\n</odx-action-group>\n\n<ng-template #calendarOverlay>\n <odx-calendar\n [selectedDate]=\"value\"\n [filterFn]=\"filterFn\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n cdkTrapFocus\n cdkTrapFocusAutoCapture\n (selectedDateChange)=\"selectDate($event)\"\n ></odx-calendar>\n</ng-template>\n", dependencies: [{ kind: "ngmodule", type: A11yModule }, { kind: "directive", type: i1.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "component", type: ActionGroupComponent, selector: "odx-action-group", inputs: ["reverse"] }, { kind: "component", type: ButtonComponent, selector: "button[odxButton], a[odxButton]", inputs: ["variant", "size"] }, { kind: "component", type: CalendarComponent, selector: "odx-calendar", inputs: ["selectedDate", "minDate", "maxDate", "filterFn"], outputs: ["selectedDateChange"] }, { kind: "ngmodule", type: DropdownModule }, { kind: "directive", type: i2.DropdownDirective, selector: "[odxDropdown]", inputs: ["odxDropdown", "odxDropdownDisabled", "odxDropdownShowLoader", "odxDropdownClickOutsideActive", "odxDropdownOptions", "odxDropdownReferenceElement", "odxDropdownTriggerElement", "odxDropdownHost", "odxDropdownOpenTrigger", "odxDropdownCloseTrigger"], outputs: ["odxDropdownBeforeOpen", "odxDropdownAfterOpen", "odxDropdownBeforeClose", "odxDropdownAfterClose"], exportAs: ["odxDropdown"] }, { kind: "component", type: IconComponent, selector: "odx-icon", inputs: ["inline", "size", "name", "iconSet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
80
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DatepickerComponent, isStandalone: true, selector: "odx-datepicker", inputs: { filterFn: "filterFn", minDate: "minDate", maxDate: "maxDate", dropdownPosition: "dropdownPosition" }, outputs: { selectedChange: "selectedChange" }, host: { listeners: { "keydown.alt.ArrowDown": "openDatepicker($event)" } }, queries: [{ propertyName: "dateField", first: true, predicate: DatepickerInputControlDirective, descendants: true }], viewQueries: [{ propertyName: "dropdown", first: true, predicate: DropdownDirective, descendants: true }, { propertyName: "dropdownTriggerElement", first: true, predicate: ["dropdownTrigger"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"input[odxDatepickerControl]\"></ng-content>\n\n<odx-action-group class=\"odx-no-margin\">\n <button\n #dropdownTrigger\n class=\"odx-datepicker__trigger\"\n odxButton\n size=\"small\"\n variant=\"ghost\"\n [odxDropdown]=\"calendarOverlay\"\n [odxDropdownOptions]=\"{ position: dropdownPosition }\"\n [odxDropdownTriggerElement]=\"dropdownTriggerElement.nativeElement\"\n [odxDropdownHost]=\"null\"\n [odxDropdownReferenceElement]=\"element.nativeElement\"\n (odxDropdownBeforeClose)=\"onTouched()\"\n >\n <odx-icon name=\"calendar\"></odx-icon>\n </button>\n</odx-action-group>\n\n<ng-template #calendarOverlay>\n <odx-calendar\n [selectedDate]=\"value\"\n [filterFn]=\"filterFn\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n cdkTrapFocus\n cdkTrapFocusAutoCapture\n (selectedDateChange)=\"selectDate($event)\"\n ></odx-calendar>\n</ng-template>\n", dependencies: [{ kind: "ngmodule", type: A11yModule }, { kind: "directive", type: i1.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "component", type: ActionGroupComponent, selector: "odx-action-group", inputs: ["reverse"] }, { kind: "component", type: ButtonComponent, selector: "button[odxButton], a[odxButton]", inputs: ["variant", "size"] }, { kind: "component", type: CalendarComponent, selector: "odx-calendar", inputs: ["selectedDate", "minDate", "maxDate", "filterFn"], outputs: ["selectedDateChange"] }, { kind: "ngmodule", type: DropdownModule }, { kind: "directive", type: i2.DropdownDirective, selector: "[odxDropdown]", inputs: ["odxDropdown", "odxDropdownDisabled", "odxDropdownShowLoader", "odxDropdownClickOutsideActive", "odxDropdownOptions", "odxDropdownReferenceElement", "odxDropdownTriggerElement", "odxDropdownHost", "odxDropdownOpenTrigger", "odxDropdownCloseTrigger"], outputs: ["odxDropdownBeforeOpen", "odxDropdownAfterOpen", "odxDropdownBeforeClose", "odxDropdownAfterClose"], exportAs: ["odxDropdown"] }, { kind: "component", type: IconComponent, selector: "odx-icon", inputs: ["inline", "size", "name", "iconSet", "identifier"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
81
81
|
};
|
|
82
82
|
DatepickerComponent = __decorate([
|
|
83
83
|
CSSComponent('datepicker'),
|
|
@@ -16,7 +16,7 @@ export let ErrorPageComponent = class ErrorPageComponent {
|
|
|
16
16
|
this.options = injectErrorPageConfig();
|
|
17
17
|
}
|
|
18
18
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ErrorPageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
19
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ErrorPageComponent, isStandalone: true, selector: "odx-error-page", ngImport: i0, template: "<div class=\"odx-error-page__container\">\n <div class=\"odx-error-page__icon-container\">\n <odx-icon *ngIf=\"options.icon as icon; else logo\" size=\"xlarge\" [name]=\"icon\"></odx-icon>\n <ng-template #logo><odx-logo size=\"large\"></odx-logo></ng-template>\n </div>\n <div class=\"odx-error-page__title\">\n <ng-template [odxDynamicView]=\"options.title\"></ng-template>\n </div>\n <div *ngIf=\"options.description as description\" class=\"odx-error-page__description\">\n <ng-template [odxDynamicView]=\"description\"></ng-template>\n </div>\n <div class=\"odx-error-page__actions\">\n <button *ngFor=\"let button of options.actions; let isFirst = first\" [variant]=\"isFirst ? 'primary' : 'secondary'\" odxButton (click)=\"button.action()\">\n <ng-template [odxDynamicView]=\"button.label\"></ng-template>\n </button>\n </div>\n</div>\n<div *ngIf=\"options.errorMessage as errorMessage\" class=\"odx-error-page__footer\">\n <ng-template [odxDynamicView]=\"errorMessage\"></ng-template>\n</div>\n", dependencies: [{ kind: "directive", type: LogoDirective, selector: "odx-logo", inputs: ["size", "variant"] }, { kind: "component", type: IconComponent, selector: "odx-icon", inputs: ["inline", "size", "name", "iconSet"] }, { kind: "ngmodule", type: CoreModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ButtonComponent, selector: "button[odxButton], a[odxButton]", inputs: ["variant", "size"] }, { kind: "directive", type: DynamicViewDirective, selector: "ng-template[odxDynamicView]", inputs: ["odxDynamicView", "odxDynamicViewInjector", "odxDynamicViewContext"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
19
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ErrorPageComponent, isStandalone: true, selector: "odx-error-page", ngImport: i0, template: "<div class=\"odx-error-page__container\">\n <div class=\"odx-error-page__icon-container\">\n <odx-icon *ngIf=\"options.icon as icon; else logo\" size=\"xlarge\" [name]=\"icon\"></odx-icon>\n <ng-template #logo><odx-logo size=\"large\"></odx-logo></ng-template>\n </div>\n <div class=\"odx-error-page__title\">\n <ng-template [odxDynamicView]=\"options.title\"></ng-template>\n </div>\n <div *ngIf=\"options.description as description\" class=\"odx-error-page__description\">\n <ng-template [odxDynamicView]=\"description\"></ng-template>\n </div>\n <div class=\"odx-error-page__actions\">\n <button *ngFor=\"let button of options.actions; let isFirst = first\" [variant]=\"isFirst ? 'primary' : 'secondary'\" odxButton (click)=\"button.action()\">\n <ng-template [odxDynamicView]=\"button.label\"></ng-template>\n </button>\n </div>\n</div>\n<div *ngIf=\"options.errorMessage as errorMessage\" class=\"odx-error-page__footer\">\n <ng-template [odxDynamicView]=\"errorMessage\"></ng-template>\n</div>\n", dependencies: [{ kind: "directive", type: LogoDirective, selector: "odx-logo", inputs: ["size", "variant"] }, { kind: "component", type: IconComponent, selector: "odx-icon", inputs: ["inline", "size", "name", "iconSet", "identifier"] }, { kind: "ngmodule", type: CoreModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ButtonComponent, selector: "button[odxButton], a[odxButton]", inputs: ["variant", "size"] }, { kind: "directive", type: DynamicViewDirective, selector: "ng-template[odxDynamicView]", inputs: ["odxDynamicView", "odxDynamicViewInjector", "odxDynamicViewContext"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
20
20
|
};
|
|
21
21
|
ErrorPageComponent = __decorate([
|
|
22
22
|
CSSComponent('error-page')
|
|
@@ -25,4 +25,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
25
25
|
type: Component,
|
|
26
26
|
args: [{ standalone: true, selector: 'odx-error-page', imports: [LogoDirective, IconComponent, CoreModule, ButtonComponent, DynamicViewDirective], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"odx-error-page__container\">\n <div class=\"odx-error-page__icon-container\">\n <odx-icon *ngIf=\"options.icon as icon; else logo\" size=\"xlarge\" [name]=\"icon\"></odx-icon>\n <ng-template #logo><odx-logo size=\"large\"></odx-logo></ng-template>\n </div>\n <div class=\"odx-error-page__title\">\n <ng-template [odxDynamicView]=\"options.title\"></ng-template>\n </div>\n <div *ngIf=\"options.description as description\" class=\"odx-error-page__description\">\n <ng-template [odxDynamicView]=\"description\"></ng-template>\n </div>\n <div class=\"odx-error-page__actions\">\n <button *ngFor=\"let button of options.actions; let isFirst = first\" [variant]=\"isFirst ? 'primary' : 'secondary'\" odxButton (click)=\"button.action()\">\n <ng-template [odxDynamicView]=\"button.label\"></ng-template>\n </button>\n </div>\n</div>\n<div *ngIf=\"options.errorMessage as errorMessage\" class=\"odx-error-page__footer\">\n <ng-template [odxDynamicView]=\"errorMessage\"></ng-template>\n</div>\n" }]
|
|
27
27
|
}] });
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItcGFnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9lcnJvci1wYWdlL3NyYy9saWIvZXJyb3ItcGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9lcnJvci1wYWdlL3NyYy9saWIvZXJyb3ItcGFnZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzFDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNqRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbkQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUJBQXFCLENBQUM7OztBQVdyRCxXQUFNLGtCQUFrQixHQUF4QixNQUFNLGtCQUFrQjtJQUF4QjtRQUNXLFlBQU8sR0FBRyxhQUFhLEVBQUUsQ0FBQztRQUNuQyxZQUFPLEdBQUcscUJBQXFCLEVBQUUsQ0FBQztLQUMxQzsrR0FIWSxrQkFBa0I7bUdBQWxCLGtCQUFrQiwwRUNuQi9CLDJnQ0FvQkEsNENETFksYUFBYSxrRkFBRSxhQUFhLGlIQUFFLFVBQVUsZ1FBQUUsZUFBZSx5R0FBRSxvQkFBb0I7O0FBSTlFLGtCQUFrQjtJQVQ5QixZQUFZLENBQUMsWUFBWSxDQUFDO0dBU2Qsa0JBQWtCLENBRzlCOzRGQUhZLGtCQUFrQjtrQkFSOUIsU0FBUztpQ0FDSSxJQUFJLFlBQ04sZ0JBQWdCLFdBRWpCLENBQUMsYUFBYSxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsZUFBZSxFQUFFLG9CQUFvQixDQUFDLG1CQUN6RSx1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvcmVNb2R1bGUgfSBmcm9tICdAb2R4L2FuZ3VsYXInO1xuaW1wb3J0IHsgRHluYW1pY1ZpZXdEaXJlY3RpdmUgfSBmcm9tICdAb2R4L2FuZ3VsYXIvY2RrL2R5bmFtaWMtdmlldyc7XG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgSWNvbkNvbXBvbmVudCB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2ljb24nO1xuaW1wb3J0IHsgTG9nb0RpcmVjdGl2ZSB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2xvZ28nO1xuaW1wb3J0IHsgQ1NTQ29tcG9uZW50IH0gZnJvbSAnQG9keC9hbmd1bGFyL2ludGVybmFsJztcbmltcG9ydCB7IGluamVjdEVsZW1lbnQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuaW1wb3J0IHsgaW5qZWN0RXJyb3JQYWdlQ29uZmlnIH0gZnJvbSAnLi9lcnJvci1wYWdlLmNvbmZpZyc7XG5cbkBDU1NDb21wb25lbnQoJ2Vycm9yLXBhZ2UnKVxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnb2R4LWVycm9yLXBhZ2UnLFxuICB0ZW1wbGF0ZVVybDogJy4vZXJyb3ItcGFnZS5jb21wb25lbnQuaHRtbCcsXG4gIGltcG9ydHM6IFtMb2dvRGlyZWN0aXZlLCBJY29uQ29tcG9uZW50LCBDb3JlTW9kdWxlLCBCdXR0b25Db21wb25lbnQsIER5bmFtaWNWaWV3RGlyZWN0aXZlXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIEVycm9yUGFnZUNvbXBvbmVudCB7XG4gIHB1YmxpYyByZWFkb25seSBlbGVtZW50ID0gaW5qZWN0RWxlbWVudCgpO1xuICBwdWJsaWMgb3B0aW9ucyA9IGluamVjdEVycm9yUGFnZUNvbmZpZygpO1xufVxuIiwiPGRpdiBjbGFzcz1cIm9keC1lcnJvci1wYWdlX19jb250YWluZXJcIj5cbiAgPGRpdiBjbGFzcz1cIm9keC1lcnJvci1wYWdlX19pY29uLWNvbnRhaW5lclwiPlxuICAgIDxvZHgtaWNvbiAqbmdJZj1cIm9wdGlvbnMuaWNvbiBhcyBpY29uOyBlbHNlIGxvZ29cIiBzaXplPVwieGxhcmdlXCIgW25hbWVdPVwiaWNvblwiPjwvb2R4LWljb24+XG4gICAgPG5nLXRlbXBsYXRlICNsb2dvPjxvZHgtbG9nbyBzaXplPVwibGFyZ2VcIj48L29keC1sb2dvPjwvbmctdGVtcGxhdGU+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwib2R4LWVycm9yLXBhZ2VfX3RpdGxlXCI+XG4gICAgPG5nLXRlbXBsYXRlIFtvZHhEeW5hbWljVmlld109XCJvcHRpb25zLnRpdGxlXCI+PC9uZy10ZW1wbGF0ZT5cbiAgPC9kaXY+XG4gIDxkaXYgKm5nSWY9XCJvcHRpb25zLmRlc2NyaXB0aW9uIGFzIGRlc2NyaXB0aW9uXCIgY2xhc3M9XCJvZHgtZXJyb3ItcGFnZV9fZGVzY3JpcHRpb25cIj5cbiAgICA8bmctdGVtcGxhdGUgW29keER5bmFtaWNWaWV3XT1cImRlc2NyaXB0aW9uXCI+PC9uZy10ZW1wbGF0ZT5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJvZHgtZXJyb3ItcGFnZV9fYWN0aW9uc1wiPlxuICAgIDxidXR0b24gKm5nRm9yPVwibGV0IGJ1dHRvbiBvZiBvcHRpb25zLmFjdGlvbnM7IGxldCBpc0ZpcnN0ID0gZmlyc3RcIiBbdmFyaWFudF09XCJpc0ZpcnN0ID8gJ3ByaW1hcnknIDogJ3NlY29uZGFyeSdcIiBvZHhCdXR0b24gKGNsaWNrKT1cImJ1dHRvbi5hY3Rpb24oKVwiPlxuICAgICAgPG5nLXRlbXBsYXRlIFtvZHhEeW5hbWljVmlld109XCJidXR0b24ubGFiZWxcIj48L25nLXRlbXBsYXRlPlxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuPGRpdiAqbmdJZj1cIm9wdGlvbnMuZXJyb3JNZXNzYWdlIGFzIGVycm9yTWVzc2FnZVwiIGNsYXNzPVwib2R4LWVycm9yLXBhZ2VfX2Zvb3RlclwiPlxuICA8bmctdGVtcGxhdGUgW29keER5bmFtaWNWaWV3XT1cImVycm9yTWVzc2FnZVwiPjwvbmctdGVtcGxhdGU+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -2,7 +2,7 @@ import { Injectable } from '@angular/core';
|
|
|
2
2
|
import { Validators } from '@angular/forms';
|
|
3
3
|
import { Controller, DisabledController, ReadonlyController } from '@odx/angular';
|
|
4
4
|
import { getUniqueId } from '@odx/angular/utils';
|
|
5
|
-
import { BehaviorSubject,
|
|
5
|
+
import { BehaviorSubject, EMPTY, distinctUntilChanged, map, merge, of, shareReplay, startWith, switchMap, tap } from 'rxjs';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
export class FormFieldService extends Controller {
|
|
8
8
|
constructor() {
|
|
@@ -10,12 +10,12 @@ export class FormFieldService extends Controller {
|
|
|
10
10
|
this.disabledController = DisabledController.inject();
|
|
11
11
|
this.readonlyController = ReadonlyController.inject();
|
|
12
12
|
this.control$$ = new BehaviorSubject(null);
|
|
13
|
-
this.control$ = this.control$$.pipe(shareReplay({ refCount: true }));
|
|
14
|
-
this.controlId$ = this.control$.pipe(map((control) => (control ? control.nativeElement.id || getUniqueId('odx-form-field') : null)), shareReplay({ refCount: true }));
|
|
15
|
-
this.controlHintId$ = this.controlId$.pipe(map((id) => (id ? `${id}-hint` : null)), shareReplay({ refCount: true }));
|
|
16
|
-
this.controlErrorId$ = this.controlId$.pipe(map((id) => (id ? `${id}-error` : null)), shareReplay({ refCount: true }));
|
|
17
|
-
this.isDisabled$ = this.control$.pipe(switchMap((control) => (control ? merge(this.updateControlDisabledState(control), this.getControlDisabledState(control)) : of(false))), distinctUntilChanged(), shareReplay({ refCount: true }));
|
|
18
|
-
this.isRequired$ = this.control$.pipe(map((control) => (control ? control.nativeElement.hasAttribute('required') || control.control.hasValidator(Validators.required) : false)), shareReplay({ refCount: true }));
|
|
13
|
+
this.control$ = this.control$$.pipe(shareReplay({ bufferSize: 1, refCount: true }));
|
|
14
|
+
this.controlId$ = this.control$.pipe(map((control) => (control ? control.nativeElement.id || getUniqueId('odx-form-field') : null)), shareReplay({ bufferSize: 1, refCount: true }));
|
|
15
|
+
this.controlHintId$ = this.controlId$.pipe(map((id) => (id ? `${id}-hint` : null)), shareReplay({ bufferSize: 1, refCount: true }));
|
|
16
|
+
this.controlErrorId$ = this.controlId$.pipe(map((id) => (id ? `${id}-error` : null)), shareReplay({ bufferSize: 1, refCount: true }));
|
|
17
|
+
this.isDisabled$ = this.control$.pipe(switchMap((control) => (control ? merge(this.updateControlDisabledState(control), this.getControlDisabledState(control)) : of(false))), distinctUntilChanged(), shareReplay({ bufferSize: 1, refCount: true }));
|
|
18
|
+
this.isRequired$ = this.control$.pipe(map((control) => (control ? control.nativeElement.hasAttribute('required') || control.control.hasValidator(Validators.required) : false)), shareReplay({ bufferSize: 1, refCount: true }));
|
|
19
19
|
this.isReadonly$ = this.control$.pipe(switchMap((control) => (control && this.readonlyController ? this.readonlyController.isReadonly$ : of(false))));
|
|
20
20
|
}
|
|
21
21
|
ngOnDestroy() {
|
|
@@ -50,4 +50,4 @@ export class FormFieldService extends Controller {
|
|
|
50
50
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormFieldService, decorators: [{
|
|
51
51
|
type: Injectable
|
|
52
52
|
}] });
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvZm9ybS1maWVsZC9zcmMvbGliL2Zvcm0tZmllbGQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ2xFLE9BQU8sRUFBbUIsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxrQkFBa0IsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNsRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDakQsT0FBTyxFQUFFLGVBQWUsRUFBRSxLQUFLLEVBQWMsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQVF4SSxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsVUFBVTtJQURoRDs7UUFFbUIsdUJBQWtCLEdBQUcsa0JBQWtCLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDakQsdUJBQWtCLEdBQUcsa0JBQWtCLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDakQsY0FBUyxHQUFHLElBQUksZUFBZSxDQUFzQixJQUFJLENBQUMsQ0FBQztRQUU1RCxhQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsVUFBVSxFQUFFLENBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQy9FLGVBQVUsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDN0MsR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxD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TyxFQUFnQjtRQUMxRCxJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtZQUMzQixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUM3QyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtnQkFDWixJQUFJLEtBQUssRUFBRTtvQkFDVCxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7aUJBQ25CO3FCQUFNO29CQUNMLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQztpQkFDbEI7WUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFDO1NBQ0g7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFTyx1QkFBdUIsQ0FBQyxFQUFFLE9BQU8sRUFBZ0I7UUFDdkQsT0FBTyxPQUFPLENBQUMsYUFBYSxDQUFDLElBQUksQ0FDL0IsU0FBUyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFDekIsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLEtBQUssVUFBVSxDQUFDLEVBQ3RDLG9CQUFvQixFQUFFLENBQ3ZCLENBQUM7SUFDSixDQUFDOytHQWpFVSxnQkFBZ0I7bUhBQWhCLGdCQUFnQjs7NEZBQWhCLGdCQUFnQjtrQkFENUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVsZW1lbnRSZWYsIEluamVjdGFibGUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ29udHJvbGxlciwgRGlzYWJsZWRDb250cm9sbGVyLCBSZWFkb25seUNvbnRyb2xsZXIgfSBmcm9tICdAb2R4L2FuZ3VsYXInO1xuaW1wb3J0IHsgZ2V0VW5pcXVlSWQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBFTVBUWSwgT2JzZXJ2YWJsZSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgbWVyZ2UsIG9mLCBzaGFyZVJlcGxheSwgc3RhcnRXaXRoLCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMnO1xuXG5pbnRlcmZhY2UgRmllbGRDb250cm9sIHtcbiAgY29udHJvbDogQWJzdHJhY3RDb250cm9sO1xuICBuYXRpdmVFbGVtZW50OiBIVE1MRWxlbWVudDtcbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEZvcm1GaWVsZFNlcnZpY2UgZXh0ZW5kcyBDb250cm9sbGVyIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSByZWFkb25seSBkaXNhYmxlZENvbnRyb2xsZXIgPSBEaXNhYmxlZENvbnRyb2xsZXIuaW5qZWN0KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgcmVhZG9ubHlDb250cm9sbGVyID0gUmVhZG9ubHlDb250cm9sbGVyLmluamVjdCgpO1xuICBwcml2YXRlIHJlYWRvbmx5IGNvbnRyb2wkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RmllbGRDb250cm9sIHwgbnVsbD4obnVsbCk7XG5cbiAgcHVibGljIHJlYWRvbmx5IGNvbnRyb2wkID0gdGhpcy5jb250cm9sJCQucGlwZShzaGFyZVJlcGxheSh7IGJ1ZmZlclNpemU6IDEsIHJlZkNvdW50OiB0cnVlIH0pKTtcbiAgcHVibGljIHJlYWRvbmx5IGNvbnRyb2xJZCQgPSB0aGlzLmNvbnRyb2wkLnBpcGUoXG4gICAgbWFwKChjb250cm9sKSA9PiAoY29udHJvbCA/IGNvbnRyb2wubmF0aXZlRWxlbWVudC5pZCB8fCBnZXRVbmlxdWVJZCgnb2R4LWZvcm0tZmllbGQnKSA6IG51bGwpKSxcbiAgICBzaGFyZVJlcGxheSh7IGJ1ZmZlclNpemU6IDEsIHJlZkNvdW50OiB0cnVlIH0pLFxuICApO1xuICBwdWJsaWMgcmVhZG9ubHkgY29udHJvbEhpbnRJZCQgPSB0aGlzLmNvbnRyb2xJZCQucGlwZShcbiAgICBtYXAoKGlkKSA9PiAoaWQgPyBgJHtpZH0taGludGAgOiBudWxsKSksXG4gICAgc2hhcmVSZXBsYXkoeyBidWZmZXJTaXplOiAxLCByZWZDb3VudDogdHJ1ZSB9KSxcbiAgKTtcbiAgcHVibGljIHJlYWRvbmx5IGNvbnRyb2xFcnJvcklkJCA9IHRoaXMuY29udHJvbElkJC5waXBlKFxuICAgIG1hcCgoaWQpID0+IChpZCA/IGAke2lkfS1lcnJvcmAgOiBudWxsKSksXG4gICAgc2hhcmVSZXBsYXkoeyBidWZmZXJTaXplOiAxLCByZWZDb3VudDogdHJ1ZSB9KSxcbiAgKTtcbiAgcHVibGljIHJlYWRvbmx5IGlzRGlzYWJsZWQkID0gdGhpcy5jb250cm9sJC5waXBlKFxuICAgIHN3aXRjaE1hcCgoY29udHJvbCkgPT4gKGNvbnRyb2wgPyBtZXJnZSh0aGlzLnVwZGF0ZUNvbnRyb2xEaXNhYmxlZFN0YXRlKGNvbnRyb2wpLCB0aGlzLmdldENvbnRyb2xEaXNhYmxlZFN0YXRlKGNvbnRyb2wpKSA6IG9mKGZhbHNlKSkpLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgc2hhcmVSZXBsYXkoeyBidWZmZXJTaXplOiAxLCByZWZDb3VudDogdHJ1ZSB9KSxcbiAgKTtcbiAgcHVibGljIHJlYWRvbmx5IGlzUmVxdWlyZWQkID0gdGhpcy5jb250cm9sJC5waXBlKFxuICAgIG1hcCgoY29udHJvbCkgPT4gKGNvbnRyb2wgPyBjb250cm9sLm5hdGl2ZUVsZW1lbnQuaGFzQXR0cmlidXRlKCdyZXF1aXJlZCcpIHx8IGNvbnRyb2wuY29udHJvbC5oYXNWYWxpZGF0b3IoVmFsaWRhdG9ycy5yZXF1aXJlZCkgOiBmYWxzZSkpLFxuICAgIHNoYXJlUmVwbGF5KHsgYnVmZmVyU2l6ZTogMSwgcmVmQ291bnQ6IHRydWUgfSksXG4gICk7XG4gIHB1YmxpYyByZWFkb25seSBpc1JlYWRvbmx5JCA9IHRoaXMuY29udHJvbCQucGlwZShcbiAgICBzd2l0Y2hNYXAoKGNvbnRyb2wpID0+IChjb250cm9sICYmIHRoaXMucmVhZG9ubHlDb250cm9sbGVyID8gdGhpcy5yZWFkb25seUNvbnRyb2xsZXIuaXNSZWFkb25seSQgOiBvZihmYWxzZSkpKSxcbiAgKTtcblxuICBwdWJsaWMgb3ZlcnJpZGUgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5jb250cm9sJCQuY29tcGxldGUoKTtcbiAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICB9XG5cbiAgcHVibGljIHJlZ2lzdGVyQ29udHJvbChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wsIHsgbmF0aXZlRWxlbWVudCB9OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50Pik6IHZvaWQge1xuICAgIHRoaXMuY29udHJvbCQkLm5leHQoeyBjb250cm9sLCBuYXRpdmVFbGVtZW50IH0pO1xuICB9XG5cbiAgcHVibGljIHJlbW92ZUNvbnRyb2woKTogdm9pZCB7XG4gICAgdGhpcy5jb250cm9sJCQubmV4dChudWxsKTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlQ29udHJvbERpc2FibGVkU3RhdGUoeyBjb250cm9sIH06IEZpZWxkQ29udHJvbCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIGlmICh0aGlzLmRpc2FibGVkQ29udHJvbGxlcikge1xuICAgICAgcmV0dXJuIHRoaXMuZGlzYWJsZWRDb250cm9sbGVyLmlzRGlzYWJsZWQkLnBpcGUoXG4gICAgICAgIHRhcCgoc3RhdGUpID0+IHtcbiAgICAgICAgICBpZiAoc3RhdGUpIHtcbiAgICAgICAgICAgIGNvbnRyb2wuZGlzYWJsZSgpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb250cm9sLmVuYWJsZSgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSksXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gRU1QVFk7XG4gIH1cblxuICBwcml2YXRlIGdldENvbnRyb2xEaXNhYmxlZFN0YXRlKHsgY29udHJvbCB9OiBGaWVsZENvbnRyb2wpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gY29udHJvbC5zdGF0dXNDaGFuZ2VzLnBpcGUoXG4gICAgICBzdGFydFdpdGgoY29udHJvbC5zdGF0dXMpLFxuICAgICAgbWFwKChzdGF0dXMpID0+IHN0YXR1cyA9PT0gJ0RJU0FCTEVEJyksXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -10,7 +10,7 @@ export class FormFieldErrorService {
|
|
|
10
10
|
this.config = injectFormFieldConfig();
|
|
11
11
|
this.fieldError$$ = new BehaviorSubject(null);
|
|
12
12
|
this.customErrors$$ = new BehaviorSubject({});
|
|
13
|
-
this.error$ = combineLatest([this.fieldError$$, this.customErrors$$]).pipe(map(([error, customErrors]) => this.resolveError(error, customErrors)), distinctUntilChanged(), shareReplay({ refCount: true }));
|
|
13
|
+
this.error$ = combineLatest([this.fieldError$$, this.customErrors$$]).pipe(map(([error, customErrors]) => this.resolveError(error, customErrors)), distinctUntilChanged(), shareReplay({ bufferSize: 1, refCount: true }));
|
|
14
14
|
this.hasError$ = this.error$.pipe(map((error) => error !== null));
|
|
15
15
|
}
|
|
16
16
|
get hasError() {
|
|
@@ -53,4 +53,4 @@ export class FormFieldErrorService {
|
|
|
53
53
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormFieldErrorService, decorators: [{
|
|
54
54
|
type: Injectable
|
|
55
55
|
}] });
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZC1lcnJvci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvZm9ybS1maWVsZC9zcmMvbGliL3NlcnZpY2VzL2Zvcm0tZmllbGQtZXJyb3Iuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUEwQixNQUFNLGVBQWUsQ0FBQztBQUVuRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5RixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7QUFHN0QsTUFBTSwrQkFBK0IsR0FBRyx1Q0FBdUMsQ0FBQztBQUNoRixNQUFNLHNCQUFzQixHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQztBQVV4QyxNQUFNLE9BQU8scUJBQXFCO0lBRGxDO1FBRW1CLFdBQU0sR0FBRyxxQkFBcUIsRUFBRSxDQUFDO1FBQ2pDLGlCQUFZLEdBQUcsSUFBSSxlQUFlLENBQTBCLElBQUksQ0FBQyxDQUFDO1FBQ2xFLG1CQUFjLEdBQUcsSUFBSSxlQUFlLENBQXdCLEVBQUUsQ0FBQyxDQUFDO1FBRWpFLFdBQU0sR0FBRyxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDbkYsR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsWUFBWSxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLFlBQVksQ0FBQyxDQUFDLEVBQ3RFLG9CQUFvQixFQUFFLEVBQ3RCLFdBQVcsQ0FBQyxFQUFFLFVBQVUsRUFBRSxDQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQy9DLENBQUM7UUFDYyxjQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztLQTBDOUU7SUF4Q0MsSUFBVyxRQUFRO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsS0FBSyxJQUFJLENBQUM7SUFDL0MsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFTSxRQUFRLENBQUMsTUFBZ0M7UUFDOUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRU0sbUJBQW1CLENBQUMsR0FBdUIsRUFBRSxRQUE4QjtRQUNoRixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLEdBQUcsSUFBSSwrQkFBK0IsQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDdEgsQ0FBQztJQUVPLGFBQWEsQ0FBQyxNQUF3QjtRQUM1QyxNQUFNLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO1FBRTdILE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ3ZDLENBQUM7SUFFTyxZQUFZLENBQUMsS0FBOEIsRUFBRSxZQUFtQztRQUN0RixJQUFJLENBQUMsS0FBSztZQUFFLE9BQU8sSUFBSSxDQUFDO1FBQ3hCLE1BQU0sRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLEdBQUcsS0FBSyxDQUFDO1FBQy9CLE1BQU0sT0FBTyxHQUFHLFlBQVksQ0FBQyxHQUFHLENBQUMsSUFBSSxZQUFZLENBQUMsK0JBQStCLENBQUMsQ0FBQztRQUNuRixJQUFJLGFBQWEsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUMxQixPQUFPO2dCQUNMLEdBQUc7Z0JBQ0gsT0FBTztnQkFDUCxPQUFPLEVBQUUsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFO2FBQ2hDLENBQUM7U0FDSDtRQUVELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLHNCQUFzQixDQUFDO1FBQ3JFLE9BQU8sRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLFVBQVUsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO0lBQy9DLENBQUM7K0dBbkRVLHFCQUFxQjttSEFBckIscUJBQXFCOzs0RkFBckIscUJBQXFCO2tCQURqQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT25EZXN0cm95LCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVmFsaWRhdGlvbkVycm9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IGlzVGVtcGxhdGVSZWYgfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCBzaGFyZVJlcGxheSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgaW5qZWN0Rm9ybUZpZWxkQ29uZmlnIH0gZnJvbSAnLi4vZm9ybS1maWVsZC5jb25maWcnO1xuaW1wb3J0IHsgRm9ybUZpZWxkRXJyb3IgfSBmcm9tICcuLi9tb2RlbHMnO1xuXG5jb25zdCBERUZBVUxUX0NVU1RPTV9GT1JNX0ZJRUxEX0VSUk9SID0gJ0BvZHgvYW5ndWxhci9mb3JtLWZpZWxkL2RlZmF1bHQtZXJyb3InO1xuY29uc3QgREVGQVVMVF9FUlJPUl9SRVNPTFZFUiA9ICgpID0+ICcnO1xuXG5pbnRlcmZhY2UgTmdGb3JtRmllbGRFcnJvciB7XG4gIGtleTogc3RyaW5nO1xuICBjb250ZXh0OiB1bmtub3duO1xufVxuXG50eXBlIEN1c3RvbUZvcm1GaWVsZEVycm9ycyA9IFJlY29yZDxzdHJpbmcsIFRlbXBsYXRlUmVmPHVua25vd24+PjtcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEZvcm1GaWVsZEVycm9yU2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgY29uZmlnID0gaW5qZWN0Rm9ybUZpZWxkQ29uZmlnKCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgZmllbGRFcnJvciQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxOZ0Zvcm1GaWVsZEVycm9yIHwgbnVsbD4obnVsbCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgY3VzdG9tRXJyb3JzJCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEN1c3RvbUZvcm1GaWVsZEVycm9ycz4oe30pO1xuXG4gIHB1YmxpYyByZWFkb25seSBlcnJvciQgPSBjb21iaW5lTGF0ZXN0KFt0aGlzLmZpZWxkRXJyb3IkJCwgdGhpcy5jdXN0b21FcnJvcnMkJF0pLnBpcGUoXG4gICAgbWFwKChbZXJyb3IsIGN1c3RvbUVycm9yc10pID0+IHRoaXMucmVzb2x2ZUVycm9yKGVycm9yLCBjdXN0b21FcnJvcnMpKSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHNoYXJlUmVwbGF5KHsgYnVmZmVyU2l6ZTogMSwgcmVmQ291bnQ6IHRydWUgfSksXG4gICk7XG4gIHB1YmxpYyByZWFkb25seSBoYXNFcnJvciQgPSB0aGlzLmVycm9yJC5waXBlKG1hcCgoZXJyb3IpID0+IGVycm9yICE9PSBudWxsKSk7XG5cbiAgcHVibGljIGdldCBoYXNFcnJvcigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5maWVsZEVycm9yJCQuZ2V0VmFsdWUoKSAhPT0gbnVsbDtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmZpZWxkRXJyb3IkJC5uZXh0KG51bGwpO1xuICAgIHRoaXMuY3VzdG9tRXJyb3JzJCQubmV4dCh7fSk7XG4gICAgdGhpcy5maWVsZEVycm9yJCQuY29tcGxldGUoKTtcbiAgICB0aGlzLmN1c3RvbUVycm9ycyQkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgc2V0RXJyb3IoZXJyb3JzPzogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwpOiB2b2lkIHtcbiAgICB0aGlzLmZpZWxkRXJyb3IkJC5uZXh0KHRoaXMuZ2V0Rmlyc3RFcnJvcihlcnJvcnMgPz8ge30pKTtcbiAgfVxuXG4gIHB1YmxpYyByZWdpc3RlckN1c3RvbUVycm9yKGtleTogc3RyaW5nIHwgdW5kZWZpbmVkLCB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj4pOiB2b2lkIHtcbiAgICB0aGlzLmN1c3RvbUVycm9ycyQkLm5leHQoeyAuLi50aGlzLmN1c3RvbUVycm9ycyQkLmdldFZhbHVlKCksIFtrZXkgfHwgREVGQVVMVF9DVVNUT01fRk9STV9GSUVMRF9FUlJPUl06IHRlbXBsYXRlIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRGaXJzdEVycm9yKGVycm9yczogVmFsaWRhdGlvbkVycm9ycyk6IE5nRm9ybUZpZWxkRXJyb3IgfCBudWxsIHtcbiAgICBjb25zdCBba2V5LCBjb250ZXh0XSA9IE9iamVjdC5lbnRyaWVzKGVycm9ycyA/PyB7fSkuZmluZCgoW2Vycm9yS2V5XSkgPT4gIXRoaXMuY29uZmlnLmlnbm9yZUVycm9ycy5pbmNsdWRlcyhlcnJvcktleSkpID8/IFtdO1xuXG4gICAgcmV0dXJuIGtleSA/IHsga2V5LCBjb250ZXh0IH0gOiBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSByZXNvbHZlRXJyb3IoZXJyb3I6IE5nRm9ybUZpZWxkRXJyb3IgfCBudWxsLCBjdXN0b21FcnJvcnM6IEN1c3RvbUZvcm1GaWVsZEVycm9ycyk6IEZvcm1GaWVsZEVycm9yIHwgbnVsbCB7XG4gICAgaWYgKCFlcnJvcikgcmV0dXJuIG51bGw7XG4gICAgY29uc3QgeyBrZXksIGNvbnRleHQgfSA9IGVycm9yO1xuICAgIGNvbnN0IG1lc3NhZ2UgPSBjdXN0b21FcnJvcnNba2V5XSA/PyBjdXN0b21FcnJvcnNbREVGQVVMVF9DVVNUT01fRk9STV9GSUVMRF9FUlJPUl07XG4gICAgaWYgKGlzVGVtcGxhdGVSZWYobWVzc2FnZSkpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGtleSxcbiAgICAgICAgbWVzc2FnZSxcbiAgICAgICAgY29udGV4dDogeyAkaW1wbGljaXQ6IGNvbnRleHQgfSxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgY29uc3QgZ2V0TWVzc2FnZSA9IHRoaXMuY29uZmlnLmVycm9yc1trZXldID8/IERFRkFVTFRfRVJST1JfUkVTT0xWRVI7XG4gICAgcmV0dXJuIHsga2V5LCBtZXNzYWdlOiBnZXRNZXNzYWdlKGNvbnRleHQpIH07XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
+
export * from './lib/helpers';
|
|
1
2
|
export * from './lib/icon.component';
|
|
2
3
|
export * from './lib/icon.config';
|
|
3
4
|
export * from './lib/models';
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9pY29uL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9oZWxwZXJzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ljb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ljb24uY29uZmlnJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscyc7XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './unpack-icon-identifier';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9pY29uL3NyYy9saWIvaGVscGVycy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDBCQUEwQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi91bnBhY2staWNvbi1pZGVudGlmaWVyJztcbiJdfQ==
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export function unpackIconIdentifier(value) {
|
|
2
|
+
const [iconSet, iconName] = value.split('::');
|
|
3
|
+
if (!iconName)
|
|
4
|
+
return ['core', iconSet];
|
|
5
|
+
return [iconSet, iconName];
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5wYWNrLWljb24taWRlbnRpZmllci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jb21wb25lbnRzL2ljb24vc3JjL2xpYi9oZWxwZXJzL3VucGFjay1pY29uLWlkZW50aWZpZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxVQUFVLG9CQUFvQixDQUFDLEtBQWE7SUFDaEQsTUFBTSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzlDLElBQUksQ0FBQyxRQUFRO1FBQUUsT0FBTyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUV4QyxPQUFPLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0FBQzdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gdW5wYWNrSWNvbklkZW50aWZpZXIodmFsdWU6IHN0cmluZyk6IFtpY29uU2V0OiBzdHJpbmcsIGljb25OYW1lOiBzdHJpbmddIHtcbiAgY29uc3QgW2ljb25TZXQsIGljb25OYW1lXSA9IHZhbHVlLnNwbGl0KCc6OicpO1xuICBpZiAoIWljb25OYW1lKSByZXR1cm4gWydjb3JlJywgaWNvblNldF07XG5cbiAgcmV0dXJuIFtpY29uU2V0LCBpY29uTmFtZV07XG59XG4iXX0=
|
|
@@ -2,6 +2,7 @@ import { __decorate, __metadata } from "tslib";
|
|
|
2
2
|
import { booleanAttribute, ChangeDetectionStrategy, Component, Input, ViewEncapsulation } from '@angular/core';
|
|
3
3
|
import { CSSComponent, CSSModifier } from '@odx/angular/internal';
|
|
4
4
|
import { injectElement } from '@odx/angular/utils';
|
|
5
|
+
import { unpackIconIdentifier } from './helpers';
|
|
5
6
|
import { injectIconConfig } from './icon.config';
|
|
6
7
|
import { IconSize } from './models';
|
|
7
8
|
import * as i0 from "@angular/core";
|
|
@@ -13,8 +14,13 @@ export let IconComponent = class IconComponent {
|
|
|
13
14
|
this.name = null;
|
|
14
15
|
this.iconSet = injectIconConfig().defaultIconSet;
|
|
15
16
|
}
|
|
17
|
+
set identifier(value) {
|
|
18
|
+
const [iconSet, name] = value ? unpackIconIdentifier(value) : [null, null];
|
|
19
|
+
this.name = name;
|
|
20
|
+
this.iconSet = iconSet;
|
|
21
|
+
}
|
|
16
22
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
17
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "16.2.12", type: IconComponent, isStandalone: true, selector: "odx-icon", inputs: { inline: ["inline", "inline", booleanAttribute], size: "size", name: "name", iconSet: "iconSet" }, host: { attributes: { "translate": "no" }, properties: { "class.notranslate": "true", "attr.data-icon-name": "name", "attr.data-icon-set": "iconSet" } }, ngImport: i0, template: '<span></span>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
23
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "16.2.12", type: IconComponent, isStandalone: true, selector: "odx-icon", inputs: { inline: ["inline", "inline", booleanAttribute], size: "size", name: "name", iconSet: "iconSet", identifier: "identifier" }, host: { attributes: { "translate": "no" }, properties: { "class.notranslate": "true", "attr.data-icon-name": "name", "attr.data-icon-set": "iconSet" } }, ngImport: i0, template: '<span></span>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
18
24
|
};
|
|
19
25
|
__decorate([
|
|
20
26
|
CSSModifier(),
|
|
@@ -51,5 +57,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
51
57
|
type: Input
|
|
52
58
|
}], iconSet: [{
|
|
53
59
|
type: Input
|
|
60
|
+
}], identifier: [{
|
|
61
|
+
type: Input
|
|
54
62
|
}] } });
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9pY29uL3NyYy9saWIvaWNvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9HLE9BQU8sRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNqRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7QUFnQjdCLFdBQU0sYUFBYSxHQUFuQixNQUFNLGFBQWE7SUFBbkI7UUFDVyxZQUFPLEdBQUcsYUFBYSxFQUFFLENBQUM7UUFJbkMsV0FBTSxHQUFHLEtBQUssQ0FBQztRQUlmLFNBQUksR0FBYSxRQUFRLENBQUMsTUFBTSxDQUFDO1FBR2pDLFNBQUksR0FBa0IsSUFBSSxDQUFDO1FBRzNCLFlBQU8sR0FBa0IsZ0JBQWdCLEVBQUUsQ0FBQyxjQUFjLENBQUM7S0FRbkU7SUFOQyxJQUNXLFVBQVUsQ0FBQyxLQUFnQztRQUNwRCxNQUFNLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzNFLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO0lBQ3pCLENBQUM7K0dBdEJVLGFBQWE7bUdBQWIsYUFBYSxtRkFJSixnQkFBZ0IsaVFBZjFCLGVBQWU7O0FBZ0JsQjtJQUZOLFdBQVcsRUFBRTs7NkNBRVE7QUFJZjtJQUZOLFdBQVcsRUFBRTs7MkNBRTBCO0FBVDdCLGFBQWE7SUFkekIsWUFBWSxDQUFDLE1BQU0sQ0FBQztHQWNSLGFBQWEsQ0F1QnpCOzRGQXZCWSxhQUFhO2tCQWJ6QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxVQUFVO29CQUNwQixRQUFRLEVBQUUsZUFBZTtvQkFDekIsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7b0JBQ3JDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsSUFBSSxFQUFFO3dCQUNKLHFCQUFxQixFQUFFLE1BQU07d0JBQzdCLHVCQUF1QixFQUFFLE1BQU07d0JBQy9CLHNCQUFzQixFQUFFLFNBQVM7d0JBQ2pDLFNBQVMsRUFBRSxJQUFJO3FCQUNoQjtpQkFDRjs4QkFNUSxNQUFNO3NCQURaLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBSy9CLElBQUk7c0JBRFYsS0FBSztnQkFJQyxJQUFJO3NCQURWLEtBQUs7Z0JBSUMsT0FBTztzQkFEYixLQUFLO2dCQUlLLFVBQVU7c0JBRHBCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBib29sZWFuQXR0cmlidXRlLCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENTU0NvbXBvbmVudCwgQ1NTTW9kaWZpZXIgfSBmcm9tICdAb2R4L2FuZ3VsYXIvaW50ZXJuYWwnO1xuaW1wb3J0IHsgaW5qZWN0RWxlbWVudCB9IGZyb20gJ0BvZHgvYW5ndWxhci91dGlscyc7XG5pbXBvcnQgeyB1bnBhY2tJY29uSWRlbnRpZmllciB9IGZyb20gJy4vaGVscGVycyc7XG5pbXBvcnQgeyBpbmplY3RJY29uQ29uZmlnIH0gZnJvbSAnLi9pY29uLmNvbmZpZyc7XG5pbXBvcnQgeyBJY29uU2l6ZSB9IGZyb20gJy4vbW9kZWxzJztcblxuQENTU0NvbXBvbmVudCgnaWNvbicpXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdvZHgtaWNvbicsXG4gIHRlbXBsYXRlOiAnPHNwYW4+PC9zcGFuPicsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5ub3RyYW5zbGF0ZV0nOiAndHJ1ZScsXG4gICAgJ1thdHRyLmRhdGEtaWNvbi1uYW1lXSc6ICduYW1lJyxcbiAgICAnW2F0dHIuZGF0YS1pY29uLXNldF0nOiAnaWNvblNldCcsXG4gICAgdHJhbnNsYXRlOiAnbm8nLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBJY29uQ29tcG9uZW50IHtcbiAgcHVibGljIHJlYWRvbmx5IGVsZW1lbnQgPSBpbmplY3RFbGVtZW50KCk7XG5cbiAgQENTU01vZGlmaWVyKClcbiAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pXG4gIHB1YmxpYyBpbmxpbmUgPSBmYWxzZTtcblxuICBAQ1NTTW9kaWZpZXIoKVxuICBASW5wdXQoKVxuICBwdWJsaWMgc2l6ZTogSWNvblNpemUgPSBJY29uU2l6ZS5NRURJVU07XG5cbiAgQElucHV0KClcbiAgcHVibGljIG5hbWU6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBpY29uU2V0OiBzdHJpbmcgfCBudWxsID0gaW5qZWN0SWNvbkNvbmZpZygpLmRlZmF1bHRJY29uU2V0O1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgaWRlbnRpZmllcih2YWx1ZTogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCkge1xuICAgIGNvbnN0IFtpY29uU2V0LCBuYW1lXSA9IHZhbHVlID8gdW5wYWNrSWNvbklkZW50aWZpZXIodmFsdWUpIDogW251bGwsIG51bGxdO1xuICAgIHRoaXMubmFtZSA9IG5hbWU7XG4gICAgdGhpcy5pY29uU2V0ID0gaWNvblNldDtcbiAgfVxufVxuIl19
|
|
@@ -23,7 +23,7 @@ export let InlineMessageComponent = class InlineMessageComponent {
|
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
25
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: InlineMessageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
26
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: InlineMessageComponent, isStandalone: true, selector: "odx-inline-message", inputs: { variant: "variant" }, ngImport: i0, template: "<odx-icon size=\"medium\" [name]=\"icon\" iconSet=\"core\"></odx-icon>\n<div class=\"odx-inline-message__content\">\n <ng-content></ng-content>\n</div>\n", dependencies: [{ kind: "component", type: IconComponent, selector: "odx-icon", inputs: ["inline", "size", "name", "iconSet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
26
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: InlineMessageComponent, isStandalone: true, selector: "odx-inline-message", inputs: { variant: "variant" }, ngImport: i0, template: "<odx-icon size=\"medium\" [name]=\"icon\" iconSet=\"core\"></odx-icon>\n<div class=\"odx-inline-message__content\">\n <ng-content></ng-content>\n</div>\n", dependencies: [{ kind: "component", type: IconComponent, selector: "odx-icon", inputs: ["inline", "size", "name", "iconSet", "identifier"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
27
27
|
};
|
|
28
28
|
__decorate([
|
|
29
29
|
CSSModifier(),
|
|
@@ -18,7 +18,7 @@ export let ExpandableListItemComponent = class ExpandableListItemComponent {
|
|
|
18
18
|
this.element = injectElement();
|
|
19
19
|
}
|
|
20
20
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ExpandableListItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
21
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ExpandableListItemComponent, isStandalone: true, selector: "odx-expandable-list-item", host: { properties: { "class.odx-expandable-list-item--expanded": "expandableItem.expanded" } }, providers: [DisabledController.connect()], hostDirectives: [{ directive: i1.ExpandableItemDirective, inputs: ["expanded", "expanded", "id", "id"] }], ngImport: i0, template: "<div class=\"odx-expandable-list-item__header\">\n <ng-content select=\"odx-list-item, [odxListItem]\" />\n <odx-action-group class=\"odx-expandable-list-item__action\">\n <button odxButton (click)=\"expandableItem.toggle()\">\n <odx-icon name=\"chevron-down\" iconSet=\"core\"></odx-icon>\n </button>\n </odx-action-group>\n</div>\n<div @expandSlotAnimation class=\"odx-expandable-list-item__slot\" *ngIf=\"expandableItem.expanded\">\n <ng-content select=\"odx-list\" />\n</div>\n", dependencies: [{ kind: "ngmodule", type: CoreModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ButtonComponent, selector: "button[odxButton], a[odxButton]", inputs: ["variant", "size"] }, { kind: "component", type: IconComponent, selector: "odx-icon", inputs: ["inline", "size", "name", "iconSet"] }, { kind: "component", type: ActionGroupComponent, selector: "odx-action-group", inputs: ["reverse"] }], animations: [trigger('expandSlotAnimation', [transition(':enter', [useAnimation(expand)]), transition(':leave', [useAnimation(collapse)])])], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
21
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ExpandableListItemComponent, isStandalone: true, selector: "odx-expandable-list-item", host: { properties: { "class.odx-expandable-list-item--expanded": "expandableItem.expanded" } }, providers: [DisabledController.connect()], hostDirectives: [{ directive: i1.ExpandableItemDirective, inputs: ["expanded", "expanded", "id", "id"] }], ngImport: i0, template: "<div class=\"odx-expandable-list-item__header\">\n <ng-content select=\"odx-list-item, [odxListItem]\" />\n <odx-action-group class=\"odx-expandable-list-item__action\">\n <button odxButton (click)=\"expandableItem.toggle()\">\n <odx-icon name=\"chevron-down\" iconSet=\"core\"></odx-icon>\n </button>\n </odx-action-group>\n</div>\n<div @expandSlotAnimation class=\"odx-expandable-list-item__slot\" *ngIf=\"expandableItem.expanded\">\n <ng-content select=\"odx-list\" />\n</div>\n", dependencies: [{ kind: "ngmodule", type: CoreModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ButtonComponent, selector: "button[odxButton], a[odxButton]", inputs: ["variant", "size"] }, { kind: "component", type: IconComponent, selector: "odx-icon", inputs: ["inline", "size", "name", "iconSet", "identifier"] }, { kind: "component", type: ActionGroupComponent, selector: "odx-action-group", inputs: ["reverse"] }], animations: [trigger('expandSlotAnimation', [transition(':enter', [useAnimation(expand)]), transition(':leave', [useAnimation(collapse)])])], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
22
22
|
};
|
|
23
23
|
ExpandableListItemComponent = __decorate([
|
|
24
24
|
CSSComponent('expandable-list-item')
|
|
@@ -29,4 +29,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
29
29
|
'[class.odx-expandable-list-item--expanded]': 'expandableItem.expanded',
|
|
30
30
|
}, animations: [trigger('expandSlotAnimation', [transition(':enter', [useAnimation(expand)]), transition(':leave', [useAnimation(collapse)])])], template: "<div class=\"odx-expandable-list-item__header\">\n <ng-content select=\"odx-list-item, [odxListItem]\" />\n <odx-action-group class=\"odx-expandable-list-item__action\">\n <button odxButton (click)=\"expandableItem.toggle()\">\n <odx-icon name=\"chevron-down\" iconSet=\"core\"></odx-icon>\n </button>\n </odx-action-group>\n</div>\n<div @expandSlotAnimation class=\"odx-expandable-list-item__slot\" *ngIf=\"expandableItem.expanded\">\n <ng-content select=\"odx-list\" />\n</div>\n" }]
|
|
31
31
|
}] });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5kYWJsZS1saXN0LWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvbGlzdC9zcmMvbGliL2NvbXBvbmVudHMvZXhwYW5kYWJsZS1saXN0LWl0ZW0vZXhwYW5kYWJsZS1saXN0LWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvbGlzdC9zcmMvbGliL2NvbXBvbmVudHMvZXhwYW5kYWJsZS1saXN0LWl0ZW0vZXhwYW5kYWJsZS1saXN0LWl0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlGLE9BQU8sRUFBRSxVQUFVLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDOUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDakUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7Ozs7QUFpQjVDLFdBQU0sMkJBQTJCLEdBQWpDLE1BQU0sMkJBQTJCO0lBQWpDO1FBQ2MsbUJBQWMsR0FBRyxNQUFNLENBQUMsdUJBQXVCLENBQUMsQ0FBQztRQUNwRCxZQUFPLEdBQUcsYUFBYSxFQUFlLENBQUM7S0FDeEQ7K0dBSFksMkJBQTJCO21HQUEzQiwyQkFBMkIsd0tBUDNCLENBQUMsa0JBQWtCLENBQUMsT0FBTyxFQUFFLENBQUMscUlDbkIzQyxrZkFXQSwyQ0RPWSxVQUFVLG1JQUFFLGVBQWUseUdBQUUsYUFBYSxrSEFBRSxvQkFBb0Isb0VBTTlELENBQUMsT0FBTyxDQUFDLHFCQUFxQixFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDOztBQUVqSSwyQkFBMkI7SUFmdkMsWUFBWSxDQUFDLHNCQUFzQixDQUFDO0dBZXhCLDJCQUEyQixDQUd2Qzs0RkFIWSwyQkFBMkI7a0JBZHZDLFNBQVM7aUNBQ0ksSUFBSSxZQUNOLDBCQUEwQixpQkFFckIsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxXQUN0QyxDQUFDLFVBQVUsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLG9CQUFvQixDQUFDLGFBQ2hFLENBQUMsa0JBQWtCLENBQUMsT0FBTyxFQUFFLENBQUMsa0JBQ3pCLENBQUMsRUFBRSxTQUFTLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxFQUFFLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsUUFDOUU7d0JBQ0osNENBQTRDLEVBQUUseUJBQXlCO3FCQUN4RSxjQUNXLENBQUMsT0FBTyxDQUFDLHFCQUFxQixFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHJhbnNpdGlvbiwgdHJpZ2dlciwgdXNlQW5pbWF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBWaWV3RW5jYXBzdWxhdGlvbiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb3JlTW9kdWxlLCBEaXNhYmxlZENvbnRyb2xsZXIgfSBmcm9tICdAb2R4L2FuZ3VsYXInO1xuaW1wb3J0IHsgY29sbGFwc2UsIGV4cGFuZCB9IGZyb20gJ0BvZHgvYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7IEV4cGFuZGFibGVJdGVtRGlyZWN0aXZlIH0gZnJvbSAnQG9keC9hbmd1bGFyL2Nkay9leHBhbmRhYmxlJztcbmltcG9ydCB7IEFjdGlvbkdyb3VwQ29tcG9uZW50IH0gZnJvbSAnQG9keC9hbmd1bGFyL2NvbXBvbmVudHMvYWN0aW9uLWdyb3VwJztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBJY29uQ29tcG9uZW50IH0gZnJvbSAnQG9keC9hbmd1bGFyL2NvbXBvbmVudHMvaWNvbic7XG5pbXBvcnQgeyBDU1NDb21wb25lbnQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvaW50ZXJuYWwnO1xuaW1wb3J0IHsgaW5qZWN0RWxlbWVudCB9IGZyb20gJ0BvZHgvYW5ndWxhci91dGlscyc7XG5cbkBDU1NDb21wb25lbnQoJ2V4cGFuZGFibGUtbGlzdC1pdGVtJylcbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ29keC1leHBhbmRhYmxlLWxpc3QtaXRlbScsXG4gIHRlbXBsYXRlVXJsOiAnZXhwYW5kYWJsZS1saXN0LWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW0NvcmVNb2R1bGUsIEJ1dHRvbkNvbXBvbmVudCwgSWNvbkNvbXBvbmVudCwgQWN0aW9uR3JvdXBDb21wb25lbnRdLFxuICBwcm92aWRlcnM6IFtEaXNhYmxlZENvbnRyb2xsZXIuY29ubmVjdCgpXSxcbiAgaG9zdERpcmVjdGl2ZXM6IFt7IGRpcmVjdGl2ZTogRXhwYW5kYWJsZUl0ZW1EaXJlY3RpdmUsIGlucHV0czogWydleHBhbmRlZCcsICdpZCddIH1dLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5vZHgtZXhwYW5kYWJsZS1saXN0LWl0ZW0tLWV4cGFuZGVkXSc6ICdleHBhbmRhYmxlSXRlbS5leHBhbmRlZCcsXG4gIH0sXG4gIGFuaW1hdGlvbnM6IFt0cmlnZ2VyKCdleHBhbmRTbG90QW5pbWF0aW9uJywgW3RyYW5zaXRpb24oJzplbnRlcicsIFt1c2VBbmltYXRpb24oZXhwYW5kKV0pLCB0cmFuc2l0aW9uKCc6bGVhdmUnLCBbdXNlQW5pbWF0aW9uKGNvbGxhcHNlKV0pXSldLFxufSlcbmV4cG9ydCBjbGFzcyBFeHBhbmRhYmxlTGlzdEl0ZW1Db21wb25lbnQge1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZXhwYW5kYWJsZUl0ZW0gPSBpbmplY3QoRXhwYW5kYWJsZUl0ZW1EaXJlY3RpdmUpO1xuICBwdWJsaWMgcmVhZG9ubHkgZWxlbWVudCA9IGluamVjdEVsZW1lbnQ8SFRNTEVsZW1lbnQ+KCk7XG59XG4iLCI8ZGl2IGNsYXNzPVwib2R4LWV4cGFuZGFibGUtbGlzdC1pdGVtX19oZWFkZXJcIj5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwib2R4LWxpc3QtaXRlbSwgW29keExpc3RJdGVtXVwiIC8+XG4gIDxvZHgtYWN0aW9uLWdyb3VwIGNsYXNzPVwib2R4LWV4cGFuZGFibGUtbGlzdC1pdGVtX19hY3Rpb25cIj5cbiAgICA8YnV0dG9uIG9keEJ1dHRvbiAoY2xpY2spPVwiZXhwYW5kYWJsZUl0ZW0udG9nZ2xlKClcIj5cbiAgICAgIDxvZHgtaWNvbiBuYW1lPVwiY2hldnJvbi1kb3duXCIgaWNvblNldD1cImNvcmVcIj48L29keC1pY29uPlxuICAgIDwvYnV0dG9uPlxuICA8L29keC1hY3Rpb24tZ3JvdXA+XG48L2Rpdj5cbjxkaXYgQGV4cGFuZFNsb3RBbmltYXRpb24gY2xhc3M9XCJvZHgtZXhwYW5kYWJsZS1saXN0LWl0ZW1fX3Nsb3RcIiAqbmdJZj1cImV4cGFuZGFibGVJdGVtLmV4cGFuZGVkXCI+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cIm9keC1saXN0XCIgLz5cbjwvZGl2PlxuIl19
|
|
@@ -1,23 +1,34 @@
|
|
|
1
1
|
import { __decorate, __metadata } from "tslib";
|
|
2
|
-
import { booleanAttribute, ChangeDetectionStrategy, Component, HostBinding, Input, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import { booleanAttribute, ChangeDetectionStrategy, Component, HostBinding, inject, Input, ViewEncapsulation } from '@angular/core';
|
|
3
3
|
import { WithDisabledState, WithTabIndex } from '@odx/angular';
|
|
4
4
|
import { CSSComponent, CSSModifier } from '@odx/angular/internal';
|
|
5
|
-
import { injectElement } from '@odx/angular/utils';
|
|
5
|
+
import { hasChanged, injectElement } from '@odx/angular/utils';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
import * as i1 from "@odx/angular";
|
|
8
8
|
export let ListItemComponent = class ListItemComponent {
|
|
9
9
|
constructor() {
|
|
10
|
+
this.withTabIndex = inject(WithTabIndex, { self: true });
|
|
10
11
|
this.element = injectElement();
|
|
11
12
|
this.danger = false;
|
|
13
|
+
this.muted = false;
|
|
12
14
|
this.selected = false;
|
|
13
15
|
}
|
|
16
|
+
ngOnChanges(changes) {
|
|
17
|
+
if (hasChanged(changes, 'muted', false)) {
|
|
18
|
+
this.withTabIndex.setTabindex(this.muted ? -1 : null);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
14
21
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ListItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
15
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "16.2.12", type: ListItemComponent, isStandalone: true, selector: "odx-list-item, [odxListItem]", inputs: { danger: ["danger", "danger", booleanAttribute], selected: ["selected", "selected", booleanAttribute] }, host: { properties: { "class.is-selected": "this.selected" } }, hostDirectives: [{ directive: i1.WithDisabledState }, { directive: i1.WithTabIndex }], ngImport: i0, template: "<ng-content select=\"[odxListPrefix], [odxListItemPrefix]\" />\n<div class=\"odx-list-item__content\">\n <ng-content />\n</div>\n<ng-content select=\"[odxListSuffix], [odxListItemSuffix]\" />\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
22
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "16.2.12", type: ListItemComponent, isStandalone: true, selector: "odx-list-item, [odxListItem]", inputs: { danger: ["danger", "danger", booleanAttribute], muted: ["muted", "muted", booleanAttribute], selected: ["selected", "selected", booleanAttribute] }, host: { properties: { "class.is-selected": "this.selected" } }, usesOnChanges: true, hostDirectives: [{ directive: i1.WithDisabledState }, { directive: i1.WithTabIndex }], ngImport: i0, template: "<ng-content select=\"[odxListPrefix], [odxListItemPrefix]\" />\n<div class=\"odx-list-item__content\">\n <ng-content />\n</div>\n<ng-content select=\"[odxListSuffix], [odxListItemSuffix]\" />\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
16
23
|
};
|
|
17
24
|
__decorate([
|
|
18
25
|
CSSModifier(),
|
|
19
26
|
__metadata("design:type", Object)
|
|
20
27
|
], ListItemComponent.prototype, "danger", void 0);
|
|
28
|
+
__decorate([
|
|
29
|
+
CSSModifier(),
|
|
30
|
+
__metadata("design:type", Object)
|
|
31
|
+
], ListItemComponent.prototype, "muted", void 0);
|
|
21
32
|
ListItemComponent = __decorate([
|
|
22
33
|
CSSComponent('list-item')
|
|
23
34
|
], ListItemComponent);
|
|
@@ -27,6 +38,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
27
38
|
}], propDecorators: { danger: [{
|
|
28
39
|
type: Input,
|
|
29
40
|
args: [{ transform: booleanAttribute }]
|
|
41
|
+
}], muted: [{
|
|
42
|
+
type: Input,
|
|
43
|
+
args: [{ transform: booleanAttribute }]
|
|
30
44
|
}], selected: [{
|
|
31
45
|
type: HostBinding,
|
|
32
46
|
args: ['class.is-selected']
|
|
@@ -34,4 +48,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
34
48
|
type: Input,
|
|
35
49
|
args: [{ transform: booleanAttribute }]
|
|
36
50
|
}] } });
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jb21wb25lbnRzL2xpc3Qvc3JjL2xpYi9jb21wb25lbnRzL2xpc3QtaXRlbS9saXN0LWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvbGlzdC9zcmMvbGliL2NvbXBvbmVudHMvbGlzdC1pdGVtL2xpc3QtaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBYSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvSSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsWUFBWSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQy9ELE9BQU8sRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQWEsTUFBTSxvQkFBb0IsQ0FBQzs7O0FBV25FLFdBQU0saUJBQWlCLEdBQXZCLE1BQU0saUJBQWlCO0lBQXZCO1FBQ1ksaUJBQVksR0FBRyxNQUFNLENBQUMsWUFBWSxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFFckQsWUFBTyxHQUFHLGFBQWEsRUFBZSxDQUFDO1FBSWhELFdBQU0sR0FBRyxLQUFLLENBQUM7UUFJZixVQUFLLEdBQUcsS0FBSyxDQUFDO1FBSWQsYUFBUSxHQUFHLEtBQUssQ0FBQztLQU96QjtJQUxRLFdBQVcsQ0FBQyxPQUFxQztRQUN0RCxJQUFJLFVBQVUsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBQyxFQUFFO1lBQ3ZDLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUN2RDtJQUNILENBQUM7K0dBckJVLGlCQUFpQjttR0FBakIsaUJBQWlCLHVHQU1SLGdCQUFnQiw2QkFJaEIsZ0JBQWdCLHNDQUloQixnQkFBZ0IseU1DNUJ0QyxvTUFLQTs7QURnQlM7SUFGTixXQUFXLEVBQUU7O2lEQUVRO0FBSWY7SUFGTixXQUFXLEVBQUU7O2dEQUVPO0FBWFYsaUJBQWlCO0lBVDdCLFlBQVksQ0FBQyxXQUFXLENBQUM7R0FTYixpQkFBaUIsQ0FzQjdCOzRGQXRCWSxpQkFBaUI7a0JBUjdCLFNBQVM7aUNBQ0ksSUFBSSxZQUNOLDhCQUE4QixpQkFFekIsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxrQkFDL0IsQ0FBQyxpQkFBaUIsRUFBRSxZQUFZLENBQUM7OEJBUzFDLE1BQU07c0JBRFosS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRTtnQkFLL0IsS0FBSztzQkFEWCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFO2dCQUsvQixRQUFRO3NCQUZkLFdBQVc7dUJBQUMsbUJBQW1COztzQkFDL0IsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGJvb2xlYW5BdHRyaWJ1dGUsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBpbmplY3QsIElucHV0LCBPbkNoYW5nZXMsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBXaXRoRGlzYWJsZWRTdGF0ZSwgV2l0aFRhYkluZGV4IH0gZnJvbSAnQG9keC9hbmd1bGFyJztcbmltcG9ydCB7IENTU0NvbXBvbmVudCwgQ1NTTW9kaWZpZXIgfSBmcm9tICdAb2R4L2FuZ3VsYXIvaW50ZXJuYWwnO1xuaW1wb3J0IHsgaGFzQ2hhbmdlZCwgaW5qZWN0RWxlbWVudCwgTmdDaGFuZ2VzIH0gZnJvbSAnQG9keC9hbmd1bGFyL3V0aWxzJztcblxuQENTU0NvbXBvbmVudCgnbGlzdC1pdGVtJylcbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ29keC1saXN0LWl0ZW0sIFtvZHhMaXN0SXRlbV0nLFxuICB0ZW1wbGF0ZVVybDogJy4vbGlzdC1pdGVtLmNvbXBvbmVudC5odG1sJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGhvc3REaXJlY3RpdmVzOiBbV2l0aERpc2FibGVkU3RhdGUsIFdpdGhUYWJJbmRleF0sXG59KVxuZXhwb3J0IGNsYXNzIExpc3RJdGVtQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgcHJpdmF0ZSByZWFkb25seSB3aXRoVGFiSW5kZXggPSBpbmplY3QoV2l0aFRhYkluZGV4LCB7IHNlbGY6IHRydWUgfSk7XG5cbiAgcHVibGljIHJlYWRvbmx5IGVsZW1lbnQgPSBpbmplY3RFbGVtZW50PEhUTUxFbGVtZW50PigpO1xuXG4gIEBDU1NNb2RpZmllcigpXG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KVxuICBwdWJsaWMgZGFuZ2VyID0gZmFsc2U7XG5cbiAgQENTU01vZGlmaWVyKClcbiAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pXG4gIHB1YmxpYyBtdXRlZCA9IGZhbHNlO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MuaXMtc2VsZWN0ZWQnKVxuICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSlcbiAgcHVibGljIHNlbGVjdGVkID0gZmFsc2U7XG5cbiAgcHVibGljIG5nT25DaGFuZ2VzKGNoYW5nZXM6IE5nQ2hhbmdlczxMaXN0SXRlbUNvbXBvbmVudD4pOiB2b2lkIHtcbiAgICBpZiAoaGFzQ2hhbmdlZChjaGFuZ2VzLCAnbXV0ZWQnLCBmYWxzZSkpIHtcbiAgICAgIHRoaXMud2l0aFRhYkluZGV4LnNldFRhYmluZGV4KHRoaXMubXV0ZWQgPyAtMSA6IG51bGwpO1xuICAgIH1cbiAgfVxufVxuIiwiPG5nLWNvbnRlbnQgc2VsZWN0PVwiW29keExpc3RQcmVmaXhdLCBbb2R4TGlzdEl0ZW1QcmVmaXhdXCIgLz5cbjxkaXYgY2xhc3M9XCJvZHgtbGlzdC1pdGVtX19jb250ZW50XCI+XG4gIDxuZy1jb250ZW50IC8+XG48L2Rpdj5cbjxuZy1jb250ZW50IHNlbGVjdD1cIltvZHhMaXN0U3VmZml4XSwgW29keExpc3RJdGVtU3VmZml4XVwiIC8+XG4iXX0=
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { booleanAttribute, Directive, inject, Injector, Input, numberAttribute, Renderer2 } from '@angular/core';
|
|
2
|
-
import {
|
|
2
|
+
import { WindowRef } from '@odx/angular';
|
|
3
3
|
import { DynamicViewService } from '@odx/angular/cdk/dynamic-view';
|
|
4
4
|
import { deferFn, injectElement, px } from '@odx/angular/utils';
|
|
5
5
|
import { LoadingSpinnerComponent } from './loading-spinner.component';
|
|
@@ -7,8 +7,8 @@ import * as i0 from "@angular/core";
|
|
|
7
7
|
const LOADING_SPINNER_PARENT_CLASS = 'odx-loading-spinner-parent';
|
|
8
8
|
export class LoadingSpinnerDirective {
|
|
9
9
|
constructor() {
|
|
10
|
-
|
|
11
|
-
|
|
10
|
+
// private readonly disabledController = DisabledController.inject();
|
|
11
|
+
// private readonly hasDisabledControllerOnHost = !!inject(DisabledController, { optional: true });
|
|
12
12
|
this.dynamicViewService = inject(DynamicViewService);
|
|
13
13
|
this.hostElement = injectElement();
|
|
14
14
|
this.renderer = inject(Renderer2);
|
|
@@ -18,9 +18,10 @@ export class LoadingSpinnerDirective {
|
|
|
18
18
|
this.autoColor = false;
|
|
19
19
|
}
|
|
20
20
|
set isLoading(value) {
|
|
21
|
-
if
|
|
22
|
-
|
|
23
|
-
|
|
21
|
+
// TODO: Find out if something breaks by removing those lines
|
|
22
|
+
// if (!this.hasDisabledControllerOnHost) {
|
|
23
|
+
// this.disabledController?.setDisabledState(value);
|
|
24
|
+
// }
|
|
24
25
|
if (value) {
|
|
25
26
|
this.createSpinner();
|
|
26
27
|
}
|
|
@@ -64,14 +65,14 @@ export class LoadingSpinnerDirective {
|
|
|
64
65
|
return this.windowRef.nativeWindow.getComputedStyle(this.hostElement.nativeElement).position === 'static';
|
|
65
66
|
}
|
|
66
67
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LoadingSpinnerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
67
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "16.2.12", type: LoadingSpinnerDirective, isStandalone: true, selector: "[odxLoadingSpinner]", inputs: { autoColor: ["odxLoadingSpinnerAutoColor", "autoColor", booleanAttribute], isLoading: ["odxLoadingSpinner", "isLoading", booleanAttribute], minHeight: ["odxLoadingSpinnerMinHeight", "minHeight", numberAttribute] },
|
|
68
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "16.2.12", type: LoadingSpinnerDirective, isStandalone: true, selector: "[odxLoadingSpinner]", inputs: { autoColor: ["odxLoadingSpinnerAutoColor", "autoColor", booleanAttribute], isLoading: ["odxLoadingSpinner", "isLoading", booleanAttribute], minHeight: ["odxLoadingSpinnerMinHeight", "minHeight", numberAttribute] }, ngImport: i0 }); }
|
|
68
69
|
}
|
|
69
70
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LoadingSpinnerDirective, decorators: [{
|
|
70
71
|
type: Directive,
|
|
71
72
|
args: [{
|
|
72
73
|
standalone: true,
|
|
73
74
|
selector: '[odxLoadingSpinner]',
|
|
74
|
-
providers: [DisabledController.connect()],
|
|
75
|
+
// providers: [DisabledController.connect()],
|
|
75
76
|
}]
|
|
76
77
|
}], propDecorators: { autoColor: [{
|
|
77
78
|
type: Input,
|
|
@@ -83,4 +84,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
83
84
|
type: Input,
|
|
84
85
|
args: [{ alias: 'odxLoadingSpinnerMinHeight', transform: numberAttribute }]
|
|
85
86
|
}] } });
|
|
86
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
87
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGluZy1zcGlubmVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jb21wb25lbnRzL2xvYWRpbmctc3Bpbm5lci9zcmMvbGliL2xvYWRpbmctc3Bpbm5lci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxlQUFlLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pILE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDekMsT0FBTyxFQUFrQixrQkFBa0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ25GLE9BQU8sRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLEVBQUUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDOztBQUV0RSxNQUFNLDRCQUE0QixHQUFHLDRCQUE0QixDQUFDO0FBT2xFLE1BQU0sT0FBTyx1QkFBdUI7SUFMcEM7UUFNRSxxRUFBcUU7UUFDckUsbUdBQW1HO1FBQ2xGLHVCQUFrQixHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ2hELGdCQUFXLEdBQUcsYUFBYSxFQUFFLENBQUM7UUFDOUIsYUFBUSxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM3QixhQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzVCLGNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFHdkMsWUFBTyxHQUEwRCxJQUFJLENBQUM7UUFHdkUsY0FBUyxHQUFHLEtBQUssQ0FBQztLQXdEMUI7SUF0REMsSUFDVyxTQUFTLENBQUMsS0FBYztRQUNqQyw2REFBNkQ7UUFDN0QsMkNBQTJD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QUFFO2dCQUloRSxTQUFTO3NCQURuQixLQUFLO3VCQUFDLEVBQUUsS0FBSyxFQUFFLG1CQUFtQixFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRTtnQkFpQnZELFNBQVM7c0JBRG5CLEtBQUs7dUJBQUMsRUFBRSxLQUFLLEVBQUUsNEJBQTRCLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGJvb2xlYW5BdHRyaWJ1dGUsIERpcmVjdGl2ZSwgaW5qZWN0LCBJbmplY3RvciwgSW5wdXQsIG51bWJlckF0dHJpYnV0ZSwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBXaW5kb3dSZWYgfSBmcm9tICdAb2R4L2FuZ3VsYXInO1xuaW1wb3J0IHsgRHluYW1pY1ZpZXdSZWYsIER5bmFtaWNWaWV3U2VydmljZSB9IGZyb20gJ0BvZHgvYW5ndWxhci9jZGsvZHluYW1pYy12aWV3JztcbmltcG9ydCB7IGRlZmVyRm4sIGluamVjdEVsZW1lbnQsIHB4IH0gZnJvbSAnQG9keC9hbmd1bGFyL3V0aWxzJztcbmltcG9ydCB7IExvYWRpbmdTcGlubmVyQ29tcG9uZW50IH0gZnJvbSAnLi9sb2FkaW5nLXNwaW5uZXIuY29tcG9uZW50JztcblxuY29uc3QgTE9BRElOR19TUElOTkVSX1BBUkVOVF9DTEFTUyA9ICdvZHgtbG9hZGluZy1zcGlubmVyLXBhcmVudCc7XG5cbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ1tvZHhMb2FkaW5nU3Bpbm5lcl0nLFxuICAvLyBwcm92aWRlcnM6IFtEaXNhYmxlZENvbnRyb2xsZXIuY29ubmVjdCgpXSxcbn0pXG5leHBvcnQgY2xhc3MgTG9hZGluZ1NwaW5uZXJEaXJlY3RpdmUge1xuICAvLyBwcml2YXRlIHJlYWRvbmx5IGRpc2FibGVkQ29udHJvbGxlciA9IERpc2FibGVkQ29udHJvbGxlci5pbmplY3QoKTtcbiAgLy8gcHJpdmF0ZSByZWFkb25seSBoYXNEaXNhYmxlZENvbnRyb2xsZXJPbkhvc3QgPSAhIWluamVjdChEaXNhYmxlZENvbnRyb2xsZXIsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgZHluYW1pY1ZpZXdTZXJ2aWNlID0gaW5qZWN0KER5bmFtaWNWaWV3U2VydmljZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgaG9zdEVsZW1lbnQgPSBpbmplY3RFbGVtZW50KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgcmVuZGVyZXIgPSBpbmplY3QoUmVuZGVyZXIyKTtcbiAgcHJpdmF0ZSByZWFkb25seSBpbmplY3RvciA9IGluamVjdChJbmplY3Rvcik7XG4gIHByaXZhdGUgcmVhZG9ubHkgd2luZG93UmVmID0gaW5qZWN0KFdpbmRvd1JlZik7XG5cbiAgcHJpdmF0ZSBwYXJlbnRNaW5IZWlnaHQ/OiBudW1iZXI7XG4gIHByaXZhdGUgdmlld1JlZjogRHluYW1pY1ZpZXdSZWY8dHlwZW9mIExvYWRpbmdTcGlubmVyQ29tcG9uZW50PiB8IG51bGwgPSBudWxsO1xuXG4gIEBJbnB1dCh7IGFsaWFzOiAnb2R4TG9hZGluZ1NwaW5uZXJBdXRvQ29sb3InLCB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSlcbiAgcHVibGljIGF1dG9Db2xvciA9IGZhbHNlO1xuXG4gIEBJbnB1dCh7IGFsaWFzOiAnb2R4TG9hZGluZ1NwaW5uZXInLCB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSlcbiAgcHVibGljIHNldCBpc0xvYWRpbmcodmFsdWU6IGJvb2xlYW4pIHtcbiAgICAvLyBUT0RPOiBGaW5kIG91dCBpZiBzb21ldGhpbmcgYnJlYWtzIGJ5IHJlbW92aW5nIHRob3NlIGxpbmVzXG4gICAgLy8gaWYgKCF0aGlzLmhhc0Rpc2FibGVkQ29udHJvbGxlck9uSG9zdCkge1xuICAgIC8vICAgdGhpcy5kaXNhYmxlZENvbnRyb2xsZXI/LnNldERpc2FibGVkU3RhdGUodmFsdWUpO1xuICAgIC8vIH1cbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIHRoaXMuY3JlYXRlU3Bpbm5lcigpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnJlbW92ZVNwaW5uZXIoKTtcbiAgICB9XG4gIH1cbiAgcHVibGljIGdldCBpc0xvYWRpbmcoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudmlld1JlZiAhPT0gbnVsbDtcbiAgfVxuXG4gIEBJbnB1dCh7IGFsaWFzOiAnb2R4TG9hZGluZ1NwaW5uZXJNaW5IZWlnaHQnLCB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9KVxuICBwdWJsaWMgc2V0IG1pbkhlaWdodCh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5wYXJlbnRNaW5IZWlnaHQgPSB2YWx1ZTtcbiAgICB0aGlzLnNldFBhcmVudEhlaWdodCgpO1xuICB9XG5cbiAgcHVibGljIHJlc2V0UGFyZW50U3R5bGVzKCk6IHZvaWQge1xuICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50LCBMT0FESU5HX1NQSU5ORVJfUEFSRU5UX0NMQVNTKTtcbiAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZVN0eWxlKHRoaXMuaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ21pbkhlaWdodCcpO1xuICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlU3R5bGUodGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50LCAncG9zaXRpb24nKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0UGFyZW50SGVpZ2h0KCk6IHZvaWQge1xuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50LCAnbWluSGVpZ2h0JywgdGhpcy5wYXJlbnRNaW5IZWlnaHQgPyBweCh0aGlzLnBhcmVudE1pbkhlaWdodCkgOiAnaW5oZXJpdCcpO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVTcGlubmVyKCk6IHZvaWQge1xuICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50LCBMT0FESU5HX1NQSU5ORVJfUEFSRU5UX0NMQVNTKTtcbiAgICB0aGlzLnNldFBhcmVudEhlaWdodCgpO1xuICAgIGlmICh0aGlzLmhhc1N0YXRpY1Bvc2l0aW9uKCkpIHtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50LCAncG9zaXRpb24nLCAncmVsYXRpdmUnKTtcbiAgICB9XG4gICAgdGhpcy52aWV3UmVmID0gdGhpcy5keW5hbWljVmlld1NlcnZpY2UuY3JlYXRlVmlldyhMb2FkaW5nU3Bpbm5lckNvbXBvbmVudCwge1xuICAgICAgaW5qZWN0b3I6IHRoaXMuaW5qZWN0b3IsXG4gICAgICBjb250ZXh0OiB7IGF1dG9Db2xvcjogdGhpcy5hdXRvQ29sb3IgfSxcbiAgICAgIGhvc3Q6IHRoaXMuaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudCxcbiAgICB9KTtcbiAgICBkZWZlckZuKCgpID0+ICh0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuc2Nyb2xsVG9wID0gMCkpO1xuICB9XG5cbiAgcHJpdmF0ZSByZW1vdmVTcGlubmVyKCk6IHZvaWQge1xuICAgIHRoaXMudmlld1JlZj8uZGVzdHJveSgpO1xuICAgIHRoaXMudmlld1JlZiA9IG51bGw7XG4gIH1cblxuICBwcml2YXRlIGhhc1N0YXRpY1Bvc2l0aW9uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLndpbmRvd1JlZi5uYXRpdmVXaW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZSh0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQpLnBvc2l0aW9uID09PSAnc3RhdGljJztcbiAgfVxufVxuIl19
|