@eui/components 14.0.25 → 14.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.
@@ -440,10 +440,10 @@ class EuiDatepickerComponent extends BaseDirective {
440
440
  }
441
441
  }
442
442
  /** @nocollapse */ EuiDatepickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: EuiDatepickerComponent, deps: [{ token: i1.DateAdapter }, { token: i2.TranslateService }, { token: i3.LocaleService }, { token: i3.UxAppShellService }, { token: i0.ComponentFactoryResolver }, { token: i0.Injector }, { token: i0.ApplicationRef }, { token: forwardRef(() => EuiLetterFormatDirective), optional: true }, { token: i4.NgControl, optional: true, self: true }, { token: MAT_DATE_FORMATS }], target: i0.ɵɵFactoryTarget.Component });
443
- /** @nocollapse */ EuiDatepickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: EuiDatepickerComponent, selector: "eui-datepicker", inputs: { styleClass: "styleClass", value: "value", togglerIcon: "togglerIcon", togglerLabel: "togglerLabel", placeholder: "placeholder", type: "type", startView: "startView", e2eAttr: "e2eAttr", minDate: "minDate", maxDate: "maxDate", datepickerFilter: "datepickerFilter", dateOutputFormat: "dateOutputFormat", customHeader: "customHeader", dateClass: "dateClass", isDatetimepicker: "isDatetimepicker", hasSeconds: "hasSeconds", isOneInputField: "isOneInputField", hasNoButton: "hasNoButton", isDatepickerBlock: "isDatepickerBlock", isReadOnly: "isReadOnly", isDisabled: "isDisabled", isInputDisabled: "isInputDisabled", isButtonDisabled: "isButtonDisabled", isPickerDisabled: "isPickerDisabled", isClearable: "isClearable", hasActionButtons: "hasActionButtons", hasTodayButton: "hasTodayButton", restrictToRegex: "restrictToRegex" }, outputs: { onInputChange: "onInputChange", onDateSelect: "onDateSelect" }, host: { listeners: { "body:click": "onClickOutside($event)" }, properties: { "class": "this.cssClasses" } }, viewQueries: [{ propertyName: "calendar", first: true, predicate: ["calendar"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"eui-datepicker__wrapper {{ styleClass }}\" [class.eui-datepicker__wrapper--responsive]=\"isDatepickerBlock\">\n <div euiInputGroup>\n <div class=\"eui-input-group-addon\">\n <input\n euiInputText\n [readonly] =\"isReadOnly\"\n [euiClearable]= \"isClearable\"\n (clear)=\"onClear()\"\n [class.eui-datepicker--no-button]=\"hasNoButton\"\n [class.eui-datepicker--long-format]=\"!isDatepickerBlock && (isDatetimepicker || euiLetterFormat)\"\n [class.eui-datepicker--block]=\"isDatepickerBlock\"\n [formControl]=\"inputFormControl\"\n [matDatepicker]=\"calendar\"\n placeholder=\"{{ placeholder }}\"\n (dateInput)=\"inputChange($event)\"\n (dateChange)=\"dateSelect($event)\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n [matDatepickerFilter]=\"datepickerFilter\"\n (click)=\"openCalendar()\"\n autocomplete=\"off\"\n aria-label=\"Date Input Field\"\n (keypress)=\"onKeypress($event)\"\n (change)=\"isDatetimepicker ? changedInput($event) : null\">\n <mat-datepicker\n #calendar\n panelClass=\"mat-calendar-{{ type }}\"\n [startView]=\"(type==='regular') ? (startView ? startView : convTypeToStartView(type)) : convTypeToStartView(type)\"\n (yearSelected)=\"type === 'year' ? chosenDateHandler($event, calendar) : null\"\n (monthSelected)=\"type === 'month' ? chosenDateHandler($event, calendar) : null\"\n [touchUi]=\"breakpointsValue.isTablet || breakpointsValue.isMobile\"\n [panelClass]=\"isDatetimepicker? 'eui-datepicker--container-height-large' : null\"\n [disabled]=\"isPickerDisabled\"\n [calendarHeaderComponent]=\"customHeader\"\n [dateClass]=\"dateClass\">\n <mat-datepicker-actions *ngIf=\"hasActionButtons\">\n <div *ngIf=\"hasTodayButton\" class=\"eui-datepicker__footer\">\n <button type=\"button\" euiButton euiBasicButton euiOutline matDatepickerApply aria-label=\"Today\" (click)=\"selectToday()\">\n <span class=\"eui-icon eui-icon-today\" aria-label=\"Today Icon\"></span>\n <span euiLabel>Today</span>\n </button>\n </div>\n <button type=\"button\" euiButton euiSecondary matDatepickerCancel class=\"eui-u-mr-xs\">Cancel</button>\n <button type=\"button\" euiButton euiPrimary matDatepickerApply>Apply</button>\n </mat-datepicker-actions>\n </mat-datepicker>\n <button\n *ngIf=\"!hasNoButton\"\n (click)=\"openCalendar()\"\n euiButton\n type=\"button\"\n euiSecondary\n [euiIconButton] = \"!togglerLabel\"\n [euiDisabled]=\"isButtonDisabled\"\n aria-haspopup=\"dialog\">\n <span *ngIf=\"!togglerLabel\" euiIcon aria-label=\"Open Calendar\" iconClass=\"{{ togglerIcon }}\"></span>\n <span *ngIf=\"togglerLabel\">{{ togglerLabel }}</span>\n </button>\n </div>\n </div>\n</div>\n", styles: [".eui-datepicker .eui-datepicker__wrapper .eui-input-group{margin-bottom:0}.eui-datepicker .eui-datepicker__wrapper .eui-input-group-addon{width:unset}.eui-datepicker .eui-datepicker__wrapper input{border-bottom-right-radius:0;border-top-right-radius:0;width:calc(8.5 * var(--eui-base-spacing-m))}.eui-datepicker .eui-datepicker__wrapper input.eui-datepicker--long-format{width:calc(12.5 * var(--eui-base-spacing-m))}.eui-datepicker .eui-datepicker__wrapper input.eui-datepicker--block{width:100%}.eui-datepicker .eui-datepicker__wrapper input.eui-datepicker--no-button{border-bottom-right-radius:var(--eui-base-border-radius);border-top-right-radius:var(--eui-base-border-radius)}.eui-datepicker .eui-datepicker__wrapper--responsive .eui-input-group-addon{width:100%}.eui-datepicker--container-height-large{height:auto!important}.eui-datepicker__footer{display:flex;justify-content:space-between;width:100%}.mat-calendar.mat-calendar-year .mat-calendar-period-button{display:none}.mat-datepicker-actions{padding:0 var(--eui-base-spacing-xs) var(--eui-base-spacing-xs) var(--eui-base-spacing-xs)!important}.mat-datepicker-dialog .mat-datepicker-content-touch{max-height:none}.mat-datepicker-content-touch .mat-datepicker-content-container{height:auto!important;max-height:-moz-fit-content!important;max-height:fit-content!important}.eui-datepicker--primary input{background-color:var(--eui-base-color-primary-10)}.eui-datepicker--secondary input{background-color:var(--eui-base-color-grey-10)}.eui-datepicker--info input{background-color:var(--eui-base-color-info-10)}.eui-datepicker--success input{background-color:var(--eui-base-color-success-10)}.eui-datepicker--warning input{background-color:var(--eui-base-color-warning-10)}.eui-datepicker--danger input{background-color:var(--eui-base-color-danger-10)}.eui-datepicker--accent input{background-color:var(--eui-base-color-accent-10)}\n"], dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i6.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i6.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i6.MatDatepickerActions, selector: "mat-datepicker-actions, mat-date-range-picker-actions" }, { kind: "directive", type: i6.MatDatepickerCancel, selector: "[matDatepickerCancel], [matDateRangePickerCancel]" }, { kind: "directive", type: i6.MatDatepickerApply, selector: "[matDatepickerApply], [matDateRangePickerApply]" }, { kind: "component", type: i7.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "euiBasicButton", "euiButtonCall", "euiBlockButton", "euiRaisedButton", "isLoading", "euiIconButton", "euiLineWrap"] }, { kind: "component", type: i8.EuiIconComponent, selector: "div[euiIcon], span[euiIcon], i[euiIcon], eui-icon", inputs: ["aria-label", "iconClass", "isLoading"] }, { kind: "component", type: i9.EuiInputTextComponent, selector: "input[euiInputText]", inputs: ["class", "isInvalid"] }, { kind: "component", type: i10.EuiInputGroupComponent, selector: "div[euiInputGroup]", inputs: ["styleClass"] }], encapsulation: i0.ViewEncapsulation.None });
443
+ /** @nocollapse */ EuiDatepickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: EuiDatepickerComponent, selector: "eui-datepicker", inputs: { styleClass: "styleClass", value: "value", togglerIcon: "togglerIcon", togglerLabel: "togglerLabel", placeholder: "placeholder", type: "type", startView: "startView", e2eAttr: "e2eAttr", minDate: "minDate", maxDate: "maxDate", datepickerFilter: "datepickerFilter", dateOutputFormat: "dateOutputFormat", customHeader: "customHeader", dateClass: "dateClass", isDatetimepicker: "isDatetimepicker", hasSeconds: "hasSeconds", isOneInputField: "isOneInputField", hasNoButton: "hasNoButton", isDatepickerBlock: "isDatepickerBlock", isReadOnly: "isReadOnly", isDisabled: "isDisabled", isInputDisabled: "isInputDisabled", isButtonDisabled: "isButtonDisabled", isPickerDisabled: "isPickerDisabled", isClearable: "isClearable", hasActionButtons: "hasActionButtons", hasTodayButton: "hasTodayButton", restrictToRegex: "restrictToRegex" }, outputs: { onInputChange: "onInputChange", onDateSelect: "onDateSelect" }, host: { listeners: { "body:click": "onClickOutside($event)" }, properties: { "class": "this.cssClasses" } }, viewQueries: [{ propertyName: "calendar", first: true, predicate: ["calendar"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"eui-datepicker__wrapper {{ styleClass }}\" [class.eui-datepicker__wrapper--responsive]=\"isDatepickerBlock\">\n <div euiInputGroup>\n <div class=\"eui-input-group-addon\">\n <input\n euiInputText\n [readonly] =\"isReadOnly\"\n [euiClearable]= \"isClearable\"\n (clear)=\"onClear()\"\n [class.eui-datepicker--no-button]=\"hasNoButton\"\n [class.eui-datepicker--long-format]=\"!isDatepickerBlock && (isDatetimepicker || euiLetterFormat)\"\n [class.eui-datepicker--block]=\"isDatepickerBlock\"\n [formControl]=\"inputFormControl\"\n [matDatepicker]=\"calendar\"\n placeholder=\"{{ placeholder }}\"\n (dateInput)=\"inputChange($event)\"\n (dateChange)=\"dateSelect($event)\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n [matDatepickerFilter]=\"datepickerFilter\"\n (click)=\"openCalendar()\"\n autocomplete=\"off\"\n aria-label=\"Date Input Field\"\n (keypress)=\"onKeypress($event)\"\n (change)=\"isDatetimepicker ? changedInput($event) : null\">\n <mat-datepicker\n #calendar\n panelClass=\"mat-calendar-{{ type }}\"\n [startView]=\"(type==='regular') ? (startView ? startView : convTypeToStartView(type)) : convTypeToStartView(type)\"\n (yearSelected)=\"type === 'year' ? chosenDateHandler($event, calendar) : null\"\n (monthSelected)=\"type === 'month' ? chosenDateHandler($event, calendar) : null\"\n [touchUi]=\"breakpointsValue.isTablet || breakpointsValue.isMobile\"\n [panelClass]=\"isDatetimepicker? 'eui-datepicker--container-height-large' : null\"\n [disabled]=\"isPickerDisabled\"\n [calendarHeaderComponent]=\"customHeader\"\n [dateClass]=\"dateClass\">\n <mat-datepicker-actions *ngIf=\"hasActionButtons\">\n <div *ngIf=\"hasTodayButton\" class=\"eui-datepicker__footer\">\n <button type=\"button\" euiButton euiBasicButton euiOutline matDatepickerApply aria-label=\"Today\" (click)=\"selectToday()\">\n <span class=\"eui-icon eui-icon-today\" aria-label=\"Today Icon\"></span>\n <span euiLabel>Today</span>\n </button>\n </div>\n <button type=\"button\" euiButton euiSecondary matDatepickerCancel class=\"eui-u-mr-xs\">Cancel</button>\n <button type=\"button\" euiButton euiPrimary matDatepickerApply>Apply</button>\n </mat-datepicker-actions>\n </mat-datepicker>\n <button\n *ngIf=\"!hasNoButton\"\n (click)=\"openCalendar()\"\n euiButton\n type=\"button\"\n euiSecondary\n [euiIconButton] = \"!togglerLabel\"\n [euiDisabled]=\"isButtonDisabled\"\n aria-haspopup=\"dialog\">\n <span *ngIf=\"!togglerLabel\" euiIcon aria-label=\"Open Calendar\" iconClass=\"{{ togglerIcon }}\"></span>\n <span *ngIf=\"togglerLabel\">{{ togglerLabel }}</span>\n </button>\n </div>\n </div>\n</div>\n", styles: [".eui-datepicker{display:flex;width:100%}.eui-datepicker .eui-datepicker__wrapper:not(.eui-datepicker__wrapper--responsive) .eui-input-group{margin-bottom:0}.eui-datepicker .eui-datepicker__wrapper:not(.eui-datepicker__wrapper--responsive) .eui-input-group-addon{width:unset}.eui-datepicker .eui-datepicker__wrapper:not(.eui-datepicker__wrapper--responsive) input{border-bottom-right-radius:0;border-top-right-radius:0;width:calc(8.5 * var(--eui-base-spacing-m))}.eui-datepicker .eui-datepicker__wrapper:not(.eui-datepicker__wrapper--responsive) input.eui-datepicker--long-format{width:calc(12.5 * var(--eui-base-spacing-m))}.eui-datepicker .eui-datepicker__wrapper:not(.eui-datepicker__wrapper--responsive) input.eui-datepicker--block{width:100%}.eui-datepicker .eui-datepicker__wrapper:not(.eui-datepicker__wrapper--responsive) input.eui-datepicker--no-button{border-bottom-right-radius:var(--eui-base-border-radius);border-top-right-radius:var(--eui-base-border-radius)}.eui-datepicker .eui-datepicker__wrapper .eui-input-group{margin-bottom:0}.eui-datepicker .eui-datepicker__wrapper--responsive,.eui-datepicker .eui-datepicker__wrapper--responsive .eui-input-group-addon{width:100%}.eui-datepicker--container-height-large{height:auto!important}.eui-datepicker__footer{display:flex;justify-content:space-between;width:100%}.mat-calendar.mat-calendar-year .mat-calendar-period-button{display:none}.mat-datepicker-actions{padding:0 var(--eui-base-spacing-xs) var(--eui-base-spacing-xs) var(--eui-base-spacing-xs)!important}.mat-datepicker-dialog .mat-datepicker-content-touch{max-height:none}.mat-datepicker-content-touch .mat-datepicker-content-container{height:auto!important;max-height:-moz-fit-content!important;max-height:fit-content!important}.eui-datepicker--primary input{background-color:var(--eui-base-color-primary-10)}.eui-datepicker--secondary input{background-color:var(--eui-base-color-grey-10)}.eui-datepicker--info input{background-color:var(--eui-base-color-info-10)}.eui-datepicker--success input{background-color:var(--eui-base-color-success-10)}.eui-datepicker--warning input{background-color:var(--eui-base-color-warning-10)}.eui-datepicker--danger input{background-color:var(--eui-base-color-danger-10)}.eui-datepicker--accent input{background-color:var(--eui-base-color-accent-10)}\n"], dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i6.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i6.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i6.MatDatepickerActions, selector: "mat-datepicker-actions, mat-date-range-picker-actions" }, { kind: "directive", type: i6.MatDatepickerCancel, selector: "[matDatepickerCancel], [matDateRangePickerCancel]" }, { kind: "directive", type: i6.MatDatepickerApply, selector: "[matDatepickerApply], [matDateRangePickerApply]" }, { kind: "component", type: i7.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "euiBasicButton", "euiButtonCall", "euiBlockButton", "euiRaisedButton", "isLoading", "euiIconButton", "euiLineWrap"] }, { kind: "component", type: i8.EuiIconComponent, selector: "div[euiIcon], span[euiIcon], i[euiIcon], eui-icon", inputs: ["aria-label", "iconClass", "isLoading"] }, { kind: "component", type: i9.EuiInputTextComponent, selector: "input[euiInputText]", inputs: ["class", "isInvalid"] }, { kind: "component", type: i10.EuiInputGroupComponent, selector: "div[euiInputGroup]", inputs: ["styleClass"] }], encapsulation: i0.ViewEncapsulation.None });
444
444
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: EuiDatepickerComponent, decorators: [{
445
445
  type: Component,
446
- args: [{ selector: 'eui-datepicker', encapsulation: ViewEncapsulation.None, template: "<div class=\"eui-datepicker__wrapper {{ styleClass }}\" [class.eui-datepicker__wrapper--responsive]=\"isDatepickerBlock\">\n <div euiInputGroup>\n <div class=\"eui-input-group-addon\">\n <input\n euiInputText\n [readonly] =\"isReadOnly\"\n [euiClearable]= \"isClearable\"\n (clear)=\"onClear()\"\n [class.eui-datepicker--no-button]=\"hasNoButton\"\n [class.eui-datepicker--long-format]=\"!isDatepickerBlock && (isDatetimepicker || euiLetterFormat)\"\n [class.eui-datepicker--block]=\"isDatepickerBlock\"\n [formControl]=\"inputFormControl\"\n [matDatepicker]=\"calendar\"\n placeholder=\"{{ placeholder }}\"\n (dateInput)=\"inputChange($event)\"\n (dateChange)=\"dateSelect($event)\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n [matDatepickerFilter]=\"datepickerFilter\"\n (click)=\"openCalendar()\"\n autocomplete=\"off\"\n aria-label=\"Date Input Field\"\n (keypress)=\"onKeypress($event)\"\n (change)=\"isDatetimepicker ? changedInput($event) : null\">\n <mat-datepicker\n #calendar\n panelClass=\"mat-calendar-{{ type }}\"\n [startView]=\"(type==='regular') ? (startView ? startView : convTypeToStartView(type)) : convTypeToStartView(type)\"\n (yearSelected)=\"type === 'year' ? chosenDateHandler($event, calendar) : null\"\n (monthSelected)=\"type === 'month' ? chosenDateHandler($event, calendar) : null\"\n [touchUi]=\"breakpointsValue.isTablet || breakpointsValue.isMobile\"\n [panelClass]=\"isDatetimepicker? 'eui-datepicker--container-height-large' : null\"\n [disabled]=\"isPickerDisabled\"\n [calendarHeaderComponent]=\"customHeader\"\n [dateClass]=\"dateClass\">\n <mat-datepicker-actions *ngIf=\"hasActionButtons\">\n <div *ngIf=\"hasTodayButton\" class=\"eui-datepicker__footer\">\n <button type=\"button\" euiButton euiBasicButton euiOutline matDatepickerApply aria-label=\"Today\" (click)=\"selectToday()\">\n <span class=\"eui-icon eui-icon-today\" aria-label=\"Today Icon\"></span>\n <span euiLabel>Today</span>\n </button>\n </div>\n <button type=\"button\" euiButton euiSecondary matDatepickerCancel class=\"eui-u-mr-xs\">Cancel</button>\n <button type=\"button\" euiButton euiPrimary matDatepickerApply>Apply</button>\n </mat-datepicker-actions>\n </mat-datepicker>\n <button\n *ngIf=\"!hasNoButton\"\n (click)=\"openCalendar()\"\n euiButton\n type=\"button\"\n euiSecondary\n [euiIconButton] = \"!togglerLabel\"\n [euiDisabled]=\"isButtonDisabled\"\n aria-haspopup=\"dialog\">\n <span *ngIf=\"!togglerLabel\" euiIcon aria-label=\"Open Calendar\" iconClass=\"{{ togglerIcon }}\"></span>\n <span *ngIf=\"togglerLabel\">{{ togglerLabel }}</span>\n </button>\n </div>\n </div>\n</div>\n", styles: [".eui-datepicker .eui-datepicker__wrapper .eui-input-group{margin-bottom:0}.eui-datepicker .eui-datepicker__wrapper .eui-input-group-addon{width:unset}.eui-datepicker .eui-datepicker__wrapper input{border-bottom-right-radius:0;border-top-right-radius:0;width:calc(8.5 * var(--eui-base-spacing-m))}.eui-datepicker .eui-datepicker__wrapper input.eui-datepicker--long-format{width:calc(12.5 * var(--eui-base-spacing-m))}.eui-datepicker .eui-datepicker__wrapper input.eui-datepicker--block{width:100%}.eui-datepicker .eui-datepicker__wrapper input.eui-datepicker--no-button{border-bottom-right-radius:var(--eui-base-border-radius);border-top-right-radius:var(--eui-base-border-radius)}.eui-datepicker .eui-datepicker__wrapper--responsive .eui-input-group-addon{width:100%}.eui-datepicker--container-height-large{height:auto!important}.eui-datepicker__footer{display:flex;justify-content:space-between;width:100%}.mat-calendar.mat-calendar-year .mat-calendar-period-button{display:none}.mat-datepicker-actions{padding:0 var(--eui-base-spacing-xs) var(--eui-base-spacing-xs) var(--eui-base-spacing-xs)!important}.mat-datepicker-dialog .mat-datepicker-content-touch{max-height:none}.mat-datepicker-content-touch .mat-datepicker-content-container{height:auto!important;max-height:-moz-fit-content!important;max-height:fit-content!important}.eui-datepicker--primary input{background-color:var(--eui-base-color-primary-10)}.eui-datepicker--secondary input{background-color:var(--eui-base-color-grey-10)}.eui-datepicker--info input{background-color:var(--eui-base-color-info-10)}.eui-datepicker--success input{background-color:var(--eui-base-color-success-10)}.eui-datepicker--warning input{background-color:var(--eui-base-color-warning-10)}.eui-datepicker--danger input{background-color:var(--eui-base-color-danger-10)}.eui-datepicker--accent input{background-color:var(--eui-base-color-accent-10)}\n"] }]
446
+ args: [{ selector: 'eui-datepicker', encapsulation: ViewEncapsulation.None, template: "<div class=\"eui-datepicker__wrapper {{ styleClass }}\" [class.eui-datepicker__wrapper--responsive]=\"isDatepickerBlock\">\n <div euiInputGroup>\n <div class=\"eui-input-group-addon\">\n <input\n euiInputText\n [readonly] =\"isReadOnly\"\n [euiClearable]= \"isClearable\"\n (clear)=\"onClear()\"\n [class.eui-datepicker--no-button]=\"hasNoButton\"\n [class.eui-datepicker--long-format]=\"!isDatepickerBlock && (isDatetimepicker || euiLetterFormat)\"\n [class.eui-datepicker--block]=\"isDatepickerBlock\"\n [formControl]=\"inputFormControl\"\n [matDatepicker]=\"calendar\"\n placeholder=\"{{ placeholder }}\"\n (dateInput)=\"inputChange($event)\"\n (dateChange)=\"dateSelect($event)\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n [matDatepickerFilter]=\"datepickerFilter\"\n (click)=\"openCalendar()\"\n autocomplete=\"off\"\n aria-label=\"Date Input Field\"\n (keypress)=\"onKeypress($event)\"\n (change)=\"isDatetimepicker ? changedInput($event) : null\">\n <mat-datepicker\n #calendar\n panelClass=\"mat-calendar-{{ type }}\"\n [startView]=\"(type==='regular') ? (startView ? startView : convTypeToStartView(type)) : convTypeToStartView(type)\"\n (yearSelected)=\"type === 'year' ? chosenDateHandler($event, calendar) : null\"\n (monthSelected)=\"type === 'month' ? chosenDateHandler($event, calendar) : null\"\n [touchUi]=\"breakpointsValue.isTablet || breakpointsValue.isMobile\"\n [panelClass]=\"isDatetimepicker? 'eui-datepicker--container-height-large' : null\"\n [disabled]=\"isPickerDisabled\"\n [calendarHeaderComponent]=\"customHeader\"\n [dateClass]=\"dateClass\">\n <mat-datepicker-actions *ngIf=\"hasActionButtons\">\n <div *ngIf=\"hasTodayButton\" class=\"eui-datepicker__footer\">\n <button type=\"button\" euiButton euiBasicButton euiOutline matDatepickerApply aria-label=\"Today\" (click)=\"selectToday()\">\n <span class=\"eui-icon eui-icon-today\" aria-label=\"Today Icon\"></span>\n <span euiLabel>Today</span>\n </button>\n </div>\n <button type=\"button\" euiButton euiSecondary matDatepickerCancel class=\"eui-u-mr-xs\">Cancel</button>\n <button type=\"button\" euiButton euiPrimary matDatepickerApply>Apply</button>\n </mat-datepicker-actions>\n </mat-datepicker>\n <button\n *ngIf=\"!hasNoButton\"\n (click)=\"openCalendar()\"\n euiButton\n type=\"button\"\n euiSecondary\n [euiIconButton] = \"!togglerLabel\"\n [euiDisabled]=\"isButtonDisabled\"\n aria-haspopup=\"dialog\">\n <span *ngIf=\"!togglerLabel\" euiIcon aria-label=\"Open Calendar\" iconClass=\"{{ togglerIcon }}\"></span>\n <span *ngIf=\"togglerLabel\">{{ togglerLabel }}</span>\n </button>\n </div>\n </div>\n</div>\n", styles: [".eui-datepicker{display:flex;width:100%}.eui-datepicker .eui-datepicker__wrapper:not(.eui-datepicker__wrapper--responsive) .eui-input-group{margin-bottom:0}.eui-datepicker .eui-datepicker__wrapper:not(.eui-datepicker__wrapper--responsive) .eui-input-group-addon{width:unset}.eui-datepicker .eui-datepicker__wrapper:not(.eui-datepicker__wrapper--responsive) input{border-bottom-right-radius:0;border-top-right-radius:0;width:calc(8.5 * var(--eui-base-spacing-m))}.eui-datepicker .eui-datepicker__wrapper:not(.eui-datepicker__wrapper--responsive) input.eui-datepicker--long-format{width:calc(12.5 * var(--eui-base-spacing-m))}.eui-datepicker .eui-datepicker__wrapper:not(.eui-datepicker__wrapper--responsive) input.eui-datepicker--block{width:100%}.eui-datepicker .eui-datepicker__wrapper:not(.eui-datepicker__wrapper--responsive) input.eui-datepicker--no-button{border-bottom-right-radius:var(--eui-base-border-radius);border-top-right-radius:var(--eui-base-border-radius)}.eui-datepicker .eui-datepicker__wrapper .eui-input-group{margin-bottom:0}.eui-datepicker .eui-datepicker__wrapper--responsive,.eui-datepicker .eui-datepicker__wrapper--responsive .eui-input-group-addon{width:100%}.eui-datepicker--container-height-large{height:auto!important}.eui-datepicker__footer{display:flex;justify-content:space-between;width:100%}.mat-calendar.mat-calendar-year .mat-calendar-period-button{display:none}.mat-datepicker-actions{padding:0 var(--eui-base-spacing-xs) var(--eui-base-spacing-xs) var(--eui-base-spacing-xs)!important}.mat-datepicker-dialog .mat-datepicker-content-touch{max-height:none}.mat-datepicker-content-touch .mat-datepicker-content-container{height:auto!important;max-height:-moz-fit-content!important;max-height:fit-content!important}.eui-datepicker--primary input{background-color:var(--eui-base-color-primary-10)}.eui-datepicker--secondary input{background-color:var(--eui-base-color-grey-10)}.eui-datepicker--info input{background-color:var(--eui-base-color-info-10)}.eui-datepicker--success input{background-color:var(--eui-base-color-success-10)}.eui-datepicker--warning input{background-color:var(--eui-base-color-warning-10)}.eui-datepicker--danger input{background-color:var(--eui-base-color-danger-10)}.eui-datepicker--accent input{background-color:var(--eui-base-color-accent-10)}\n"] }]
447
447
  }], ctorParameters: function () { return [{ type: i1.DateAdapter }, { type: i2.TranslateService }, { type: i3.LocaleService }, { type: i3.UxAppShellService }, { type: i0.ComponentFactoryResolver }, { type: i0.Injector }, { type: i0.ApplicationRef }, { type: EuiLetterFormatDirective, decorators: [{
448
448
  type: Optional
449
449
  }, {
@@ -1 +1 @@
1
- {"version":3,"file":"eui-components-eui-datepicker.mjs","sources":["../../eui-datepicker/eui-datepicker.component.ts","../../eui-datepicker/eui-datepicker.component.html","../../eui-datepicker/eui-datepicker.module.ts","../../eui-datepicker/eui-datepicker.validators.ts","../../eui-datepicker/eui-components-eui-datepicker.ts"],"sourcesContent":["import {\n ApplicationRef,\n Component,\n ComponentFactoryResolver,\n EventEmitter,\n HostListener,\n Inject,\n Injector,\n Input,\n OnChanges,\n OnDestroy,\n DoCheck,\n OnInit,\n Optional,\n Output,\n Self,\n SimpleChanges,\n StaticProvider,\n ViewChild,\n ViewEncapsulation,\n Directive,\n forwardRef,\n HostBinding,\n} from '@angular/core';\nimport { ControlValueAccessor, FormControl, NgControl } from '@angular/forms';\nimport { DateAdapter, MatDateFormats, MAT_DATE_FORMATS } from '@angular/material/core';\nimport { MatCalendarCellClassFunction, MatDatepicker, MatDatepickerInputEvent } from '@angular/material/datepicker';\nimport { TranslateService } from '@ngx-translate/core';\nimport { fromEvent, Subject } from 'rxjs';\nimport { filter, takeUntil } from 'rxjs/operators';\nimport { ComponentPortal, DomPortalOutlet } from '@angular/cdk/portal';\nimport _moment from 'moment';\nimport { default as _rollupMoment } from 'moment';\n\nimport { EuiTimepickerComponent, EuiDateTimePickerConfig } from '@eui/components/eui-timepicker';\nimport { DYNAMIC_COMPONENT_CONFIG, LocaleService, UxAppShellService } from '@eui/core';\nimport { coerceBooleanProperty, BooleanInput } from '@angular/cdk/coercion';\nimport { BaseDirective } from '@eui/components/shared';\n\nconst moment = _rollupMoment || _moment;\n\n@Component({\n selector: 'eui-datepicker',\n templateUrl: './eui-datepicker.component.html',\n styleUrls: ['./styles/_index.scss'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class EuiDatepickerComponent extends BaseDirective implements OnInit, ControlValueAccessor, OnDestroy, OnChanges, DoCheck {\n\n public inputFormControl = new FormControl();\n public breakpointsValue: any = {\n isMobile: false,\n isTablet: false,\n isLtDesktop: false,\n isDesktop: false,\n isXL: false,\n isXXL: false,\n };\n\n @ViewChild('calendar', { static: true }) calendar: MatDatepicker<any>;\n\n @Output() onInputChange = new EventEmitter<any>(); // TODO EUI15 remove the on prefix from the Output name\n @Output() onDateSelect = new EventEmitter<any>(); // TODO EUI15 remove the on prefix from the Output name\n\n @Input() styleClass = '';\n @Input() value: any;\n @Input() togglerIcon = 'eui-icon-ecl-calendar';\n @Input() togglerLabel: string;\n @Input() placeholder: string;\n @Input() type: 'year' | 'month' | 'regular' = 'regular';\n @Input() startView: 'month' | 'year' | 'multi-year';\n @Input() e2eAttr = 'eui-datepicker';\n @Input() minDate: any;\n @Input() maxDate: any;\n @Input() datepickerFilter: (d: any) => boolean = this.datepickerFiltering;\n @Input() dateOutputFormat: string;\n @Input() customHeader: any;\n @Input() dateClass: MatCalendarCellClassFunction<any>;\n @Input()\n get isDatetimepicker(): boolean { return this._isDatetimepicker; }\n set isDatetimepicker(value: BooleanInput) { this._isDatetimepicker = coerceBooleanProperty(value); }\n private _isDatetimepicker = false;\n @Input()\n get hasSeconds(): boolean { return this._hasSeconds; }\n set hasSeconds(value: BooleanInput) { this._hasSeconds = coerceBooleanProperty(value); }\n private _hasSeconds = false;\n @Input()\n get isOneInputField(): boolean { return this._isOneInputField; }\n set isOneInputField(value: BooleanInput) { this._isOneInputField = coerceBooleanProperty(value); }\n private _isOneInputField = false;\n @Input()\n get hasNoButton(): boolean { return this._hasNoButton; }\n set hasNoButton(value: BooleanInput) { this._hasNoButton = coerceBooleanProperty(value); }\n private _hasNoButton = false;\n @Input()\n get isDatepickerBlock(): boolean { return this._isDatepickerBlock; }\n set isDatepickerBlock(value: BooleanInput) { this._isDatepickerBlock = coerceBooleanProperty(value); }\n private _isDatepickerBlock = false;\n @Input()\n get isReadOnly(): boolean { return this._isReadOnly; }\n set isReadOnly(value: BooleanInput) { this._isReadOnly = coerceBooleanProperty(value); }\n private _isReadOnly = false;\n @Input()\n get isDisabled(): boolean { return this._isDisabled; }\n set isDisabled(value: BooleanInput) { this._isDisabled = coerceBooleanProperty(value); }\n private _isDisabled = false;\n @Input()\n get isInputDisabled(): boolean { return this._isInputDisabled; }\n set isInputDisabled(value: BooleanInput) { this._isInputDisabled = coerceBooleanProperty(value); }\n private _isInputDisabled = false;\n @Input()\n get isButtonDisabled(): boolean { return this._isButtonDisabled; }\n set isButtonDisabled(value: BooleanInput) { this._isButtonDisabled = coerceBooleanProperty(value); }\n private _isButtonDisabled = false;\n @Input()\n get isPickerDisabled(): boolean { return this._isPickerDisabled; }\n set isPickerDisabled(value: BooleanInput) { this._isPickerDisabled = coerceBooleanProperty(value); }\n private _isPickerDisabled = false;\n @Input()\n get isClearable(): boolean { return this._isClearable; }\n set isClearable(value: BooleanInput) {this._isClearable = coerceBooleanProperty(value); }\n private _isClearable = false;\n @Input()\n get hasActionButtons(): boolean { return this._hasActionButtons; }\n set hasActionButtons(value: BooleanInput) {this._hasActionButtons = coerceBooleanProperty(value); }\n private _hasActionButtons = false;\n @Input()\n get hasTodayButton(): boolean { return this._hasTodayButton; }\n set hasTodayButton(value: BooleanInput) {this._hasTodayButton = coerceBooleanProperty(value); }\n private _hasTodayButton = false; // TODO EUI15 check whether it can be replaced along with the action buttons in favor of ng-content\n @Input()\n get restrictToRegex(): RegExp { return this._restrictToRegex; }\n set restrictToRegex(value: string | RegExp) {\n try {\n if (value instanceof RegExp) {\n this._restrictToRegex = value;\n } else if (typeof value === 'string') {\n this._restrictToRegex = new RegExp(value);\n } else {\n throw new Error(`restrictToRegex can only be string or RegExp, it cannot be ${typeof value}`);\n }\n } catch (e) {\n console.error(e);\n }\n }\n private _restrictToRegex: RegExp;\n\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('eui-datepicker'),\n ].join(' ').trim();\n }\n\n private destroy$: Subject<boolean> = new Subject<boolean>();\n private format: MatDateFormats;\n private portalHost: DomPortalOutlet;\n private portal: ComponentPortal<EuiTimepickerComponent>;\n private isNull = false;\n\n constructor(\n private adapter: DateAdapter<any>,\n private translateService: TranslateService,\n private localeService: LocaleService,\n private uxAppShellService: UxAppShellService,\n private componentFactoryResolver: ComponentFactoryResolver,\n private injector: Injector,\n private appRef: ApplicationRef,\n @Optional() @Inject(forwardRef(() => EuiLetterFormatDirective)) public euiLetterFormat: EuiLetterFormatDirective,\n @Self() @Optional() private control: NgControl,\n @Inject(MAT_DATE_FORMATS) format: MatDateFormats) {\n super();\n this.format = format;\n if (this.control) {\n this.control.valueAccessor = this;\n }\n }\n\n ngOnInit(): void {\n this.inputFormControl.setValue(this.value);\n this.isInputDisabled ? this.inputFormControl.disable() : this.inputFormControl.enable();\n\n this.localeService.getState().pipe(takeUntil(this.destroy$)).subscribe(state => {\n this.adapter.setLocale(state.id);\n });\n\n if (!this.placeholder) {\n if (this.type === 'regular' && !this.isDatetimepicker) {\n this.translateService.stream('eui.datepicker.PLACEHOLDER').pipe(takeUntil(this.destroy$)).subscribe((result: string) => {\n this.placeholder = result;\n });\n } else if (this.type === 'regular' && this.isDatetimepicker) {\n this.translateService.stream('eui.datepicker.ISDATETIMEPICKER')\n .pipe(takeUntil(this.destroy$)).subscribe((result: string) => {\n this.placeholder = result;\n });\n } else if (this.type === 'year') {\n this.translateService.stream('eui.datepicker.YEAR-PLACEHOLDER')\n .pipe(takeUntil(this.destroy$)).subscribe((result: string) => {\n this.placeholder = result;\n });\n } else if (this.type === 'month') {\n this.translateService.stream('eui.datepicker.MONTH-PLACEHOLDER')\n .pipe(takeUntil(this.destroy$)).subscribe((result: string) => {\n this.placeholder = result;\n });\n }\n\n }\n\n this.uxAppShellService.breakpoints$.pipe(takeUntil(this.destroy$)).subscribe(bkps => this.breakpointsValue = bkps);\n\n if (this.isDatetimepicker && !this.hasActionButtons) {\n this.calendar['closeCalendar'] = this.calendar.close;\n this.calendar.close = (): boolean => false;\n }\n }\n\n ngDoCheck(): void {\n if (this.control) {\n // marks the input control as touched/invalid if the form control is touched/invalid\n this.control?.touched ? this.inputFormControl.markAsTouched() : this.inputFormControl.markAsUntouched();\n this.control?.invalid ? this.inputFormControl.setErrors(this.control.errors) : this.inputFormControl.setErrors(null);\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n\n if (changes && changes['isReadOnly']) {\n if (this.isReadOnly) {\n this.hasNoButton = true;\n } else {\n this.hasNoButton = false;\n }\n }\n\n if (changes && changes['isDisabled']) {\n this.setDisabledState(this.isDisabled);\n }\n\n if (changes && changes['value']) {\n this.inputFormControl.setValue(this.value);\n } else {\n if(this.dateOutputFormat && this.value) {\n this.propagateChange(moment(this.value).format(this.dateOutputFormat));\n }\n }\n\n if(changes && changes['isClearable']) {\n // when is clearable is used listen if onclear is fired and update the value\n if(this.isClearable) {\n this.onInputChange.pipe(takeUntil(this.destroy$)).subscribe((event => {\n if (event === null) {\n this.value = event;\n this.propagateChange(event);\n }\n }));\n }\n }\n }\n\n @HostListener('body:click', ['$event'])\n onClickOutside(e: MouseEvent): void {\n if (this.isDatetimepicker && !this.hasActionButtons) {\n let clickInPopup = false;\n let clickOutside = false;\n let clickCloseButton = false;\n\n this.getEventPath(e).forEach((p: any) => {\n // checks whether you click within the calendar content\n if (p.className && p.className.indexOf('mat-datepicker-content') !== -1) {\n clickInPopup = true;\n }\n // checks whether you click outside the calendar content\n if (p.className && (p.className.indexOf('cdk-overlay-backdrop') !== -1)) {\n clickOutside = true;\n }\n // checks whether you click on the close button that appears below the calendar content when tabbing within the calendar\n if (p.className && p.className.indexOf('mat-datepicker-close-button') !== -1) {\n clickCloseButton = true;\n }\n });\n\n if ((!clickInPopup && clickOutside) || clickCloseButton) {\n this.calendar['closeCalendar']();\n }\n }\n }\n\n createInjector(data: any): Injector {\n const injectorTokens: StaticProvider = [{ provide: DYNAMIC_COMPONENT_CONFIG, useValue: data }];\n return Injector.create({\n parent: this.injector,\n providers: injectorTokens\n });\n }\n\n openCalendar(): void {\n if (!this.isReadOnly) {\n this.calendar.open();\n\n if (this.isDatetimepicker) {\n // listens to the key up event, filters for the Escape key and closes the calendar upon pressing it\n const globalEscape = fromEvent<KeyboardEvent>(document, 'keyup')\n .pipe(\n filter((event) => event.key === 'Escape'),\n takeUntil(this.destroy$)).subscribe(() => this.calendar['closeCalendar']());\n\n this.portalHost = new DomPortalOutlet(\n document.querySelector('mat-calendar'),\n this.componentFactoryResolver, // TODO eUI15, check again if there is an update on framework side EUI-6207\n this.appRef,\n this.injector\n );\n const timeConfig: EuiDateTimePickerConfig = {\n hours: this.value && moment(this.value).hours(),\n mins: this.value && moment(this.value).minutes(),\n secs: this.value && moment(this.value).seconds(),\n isDatetimepicker: this.isDatetimepicker,\n hasSeconds: this.hasSeconds,\n isOneInputField: this.isOneInputField,\n callbackFn: (hours: number, mins: number, secs: number) => {\n if (this.hasActionButtons) {\n this.value = moment();\n }\n\n this.value = typeof(this.value) === 'string' ?moment(this.value, moment.ISO_8601): moment(this.value, this.format.parse.dateInput);\n this.value.set({\n hour: hours || 0,\n minute: mins || 0,\n second: secs || 0\n });\n\n if (!this.hasActionButtons) {\n this.inputFormControl.setValue(this.value);\n if (this.dateOutputFormat) {\n this.propagateChange(moment(this.value).format(this.dateOutputFormat));\n } else {\n this.propagateChange(moment(this.value));\n }\n }\n }\n };\n\n this.portal = new ComponentPortal(EuiTimepickerComponent, null, this.createInjector(timeConfig));\n const portalComponentInstance = this.portalHost.attach(this.portal);\n }\n }\n }\n\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n\n this.portalHost?.detach();\n }\n\n getEventPath(event): any {\n\n if (event.path) {\n return event.path;\n }\n\n const path = [];\n let target = event.target;\n\n while (target.parentNode) {\n path.push(target);\n target = target.parentNode;\n }\n\n path.push(document, window);\n\n return path;\n }\n\n chosenDateHandler(normalizedDate: any, calendar: MatDatepicker<any>): void {\n if (this.dateOutputFormat) {\n const formattedValue = moment(normalizedDate, this.dateOutputFormat);\n this.value = formattedValue;\n this.inputFormControl.setValue(formattedValue);\n\n this.propagateChange(formattedValue.format(this.dateOutputFormat));\n this.onInputChange.emit(formattedValue.format(this.dateOutputFormat));\n this.onDateSelect.emit(formattedValue.format(this.dateOutputFormat));\n } else {\n this.value = normalizedDate;\n this.inputFormControl.setValue(this.value);\n\n this.propagateChange(this.value);\n this.onDateSelect.emit(this.value ? this.value : null);\n this.onInputChange.emit(this.value ? this.value : null);\n }\n calendar.close();\n }\n\n public datepickerFiltering(): boolean {\n return true;\n }\n\n public inputChange(e: MatDatepickerInputEvent<any>): void {\n\n if (!this.isDatetimepicker) {\n if (e.value === null) {\n this.propagateChange(null);\n this.onInputChange.emit(null);\n } else if (this.dateOutputFormat) {\n this.value = moment(e.value, this.dateOutputFormat);\n this.propagateChange(this.value.format(this.dateOutputFormat));\n this.onInputChange.emit(this.value.format(this.dateOutputFormat));\n } else {\n this.propagateChange(e.value);\n this.onInputChange.emit(e?.value ? e.value : null);\n }\n this.propagateTouched();\n }\n }\n // TODO eUI15: check to combine dateSelect and inputChange into one function ()\n public dateSelect(e: MatDatepickerInputEvent<any>): void {\n\n if (e.value === null) {\n this.propagateChange(null);\n this.onDateSelect.emit(null);\n this.isNull = true;\n\n } else {\n this.isNull = false;\n if (this.isDatetimepicker) {\n const hours = this.value && moment(this.value).hours();\n const mins = this.value && moment(this.value).minutes();\n const secs = this.value && moment(this.value).seconds();\n\n this.value = moment(e.value, this.format.parse.dateInput);\n this.value.set({\n hour: hours || 0,\n minute: mins || 0,\n second: secs || 0\n });\n\n if (this.calendar.opened) {\n this.inputFormControl.setValue(this.value);\n }\n\n if (this.dateOutputFormat && this.value != null) {\n this.propagateChange(moment(this.value).format(this.dateOutputFormat));\n } else {\n this.propagateChange(moment(this.value));\n }\n } else {\n if (this.dateOutputFormat) {\n this.value = moment(e.value, this.dateOutputFormat);\n this.onDateSelect.emit(this.value.format(this.dateOutputFormat));\n } else {\n this.onDateSelect.emit(e?.value ? e.value : null);\n }\n }\n }\n }\n\n changedInput(e: string | Event): void {\n const value = (typeof e === 'string') ? e : (e.target as HTMLInputElement).value;\n if (!this.isNull) {\n this.value = moment(value, this.format.parse.dateInput);\n this.inputFormControl.setValue(this.value);\n if (this.dateOutputFormat && this.value != null) {\n this.propagateChange(moment(this.value).format(this.dateOutputFormat));\n } else {\n this.propagateChange(moment(this.value));\n }\n }\n }\n\n onClear(): void {\n this.onDateSelect.emit(null);\n this.onInputChange.emit(null);\n this.propagateChange(null);\n }\n\n onKeypress(e: KeyboardEvent): void {\n if (e.key === 'Enter') {\n this.openCalendar();\n e.preventDefault();\n }\n\n if (this._restrictToRegex) {\n if (!this._restrictToRegex.test(e.key)) {\n e.preventDefault();\n }\n }\n }\n\n selectToday(): void {\n this.inputFormControl.setValue(moment());\n }\n\n writeValue(value: any): void {\n this.value = value || '';\n this.inputFormControl.setValue(value);\n }\n\n registerOnChange(fn: any): void {\n this.propagateChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.propagateTouched = fn;\n }\n\n convTypeToStartView(type: string): 'year' | 'month' | 'multi-year' {\n switch (type) {\n case 'month':\n return 'year';\n case 'year':\n return 'multi-year';\n case 'regular':\n return 'month';\n }\n }\n\n public setDisabledState?(isDisabled: boolean): void {\n this.isDisabled = isDisabled;\n if (isDisabled) {\n this.isInputDisabled = this.isPickerDisabled = this.isButtonDisabled = true;\n } else {\n this.isInputDisabled = this.isPickerDisabled = this.isButtonDisabled = false;\n }\n\n this.isInputDisabled ? this.inputFormControl.disable(): this.inputFormControl.enable();\n }\n\n private propagateChange = (_: any): void => {\n };\n\n private propagateTouched = (): void => {\n };\n}\n\nexport const LETTER_FORMAT = {\n parse: {\n dateInput: 'LL',\n },\n display: {\n dateInput: 'LL',\n monthYearLabel: 'LL',\n },\n};\n\nexport const YEAR_FORMAT = {\n parse: {\n dateInput: 'YYYY',\n },\n display: {\n dateInput: 'YYYY',\n monthYearLabel: 'YYYY',\n dateA11yLabel: 'YYYY',\n monthYearA11yLabel: 'YYYY',\n },\n};\n\nexport const MONTH_YEAR_FORMAT = {\n parse: {\n dateInput: 'MM/YYYY',\n },\n display: {\n dateInput: 'MM/YYYY',\n monthYearLabel: 'MMM YYYY',\n dateA11yLabel: 'LL',\n monthYearA11yLabel: 'MMMM YYYY',\n },\n};\n\n@Directive({\n selector: '[euiLetterFormat]',\n providers: [\n { provide: MAT_DATE_FORMATS, useValue: LETTER_FORMAT },\n ],\n})\nexport class EuiLetterFormatDirective {\n\n}\n\n@Directive({\n selector: '[euiYearFormat]',\n providers: [\n { provide: MAT_DATE_FORMATS, useValue: YEAR_FORMAT },\n ],\n})\nexport class EuiYearFormatDirective {\n\n}\n\n@Directive({\n selector: '[euiMonthYearFormat]',\n providers: [\n { provide: MAT_DATE_FORMATS, useValue: MONTH_YEAR_FORMAT },\n ],\n})\nexport class EuiMonthYearFormatDirective {\n\n}\n","<div class=\"eui-datepicker__wrapper {{ styleClass }}\" [class.eui-datepicker__wrapper--responsive]=\"isDatepickerBlock\">\n <div euiInputGroup>\n <div class=\"eui-input-group-addon\">\n <input\n euiInputText\n [readonly] =\"isReadOnly\"\n [euiClearable]= \"isClearable\"\n (clear)=\"onClear()\"\n [class.eui-datepicker--no-button]=\"hasNoButton\"\n [class.eui-datepicker--long-format]=\"!isDatepickerBlock && (isDatetimepicker || euiLetterFormat)\"\n [class.eui-datepicker--block]=\"isDatepickerBlock\"\n [formControl]=\"inputFormControl\"\n [matDatepicker]=\"calendar\"\n placeholder=\"{{ placeholder }}\"\n (dateInput)=\"inputChange($event)\"\n (dateChange)=\"dateSelect($event)\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n [matDatepickerFilter]=\"datepickerFilter\"\n (click)=\"openCalendar()\"\n autocomplete=\"off\"\n aria-label=\"Date Input Field\"\n (keypress)=\"onKeypress($event)\"\n (change)=\"isDatetimepicker ? changedInput($event) : null\">\n <mat-datepicker\n #calendar\n panelClass=\"mat-calendar-{{ type }}\"\n [startView]=\"(type==='regular') ? (startView ? startView : convTypeToStartView(type)) : convTypeToStartView(type)\"\n (yearSelected)=\"type === 'year' ? chosenDateHandler($event, calendar) : null\"\n (monthSelected)=\"type === 'month' ? chosenDateHandler($event, calendar) : null\"\n [touchUi]=\"breakpointsValue.isTablet || breakpointsValue.isMobile\"\n [panelClass]=\"isDatetimepicker? 'eui-datepicker--container-height-large' : null\"\n [disabled]=\"isPickerDisabled\"\n [calendarHeaderComponent]=\"customHeader\"\n [dateClass]=\"dateClass\">\n <mat-datepicker-actions *ngIf=\"hasActionButtons\">\n <div *ngIf=\"hasTodayButton\" class=\"eui-datepicker__footer\">\n <button type=\"button\" euiButton euiBasicButton euiOutline matDatepickerApply aria-label=\"Today\" (click)=\"selectToday()\">\n <span class=\"eui-icon eui-icon-today\" aria-label=\"Today Icon\"></span>\n <span euiLabel>Today</span>\n </button>\n </div>\n <button type=\"button\" euiButton euiSecondary matDatepickerCancel class=\"eui-u-mr-xs\">Cancel</button>\n <button type=\"button\" euiButton euiPrimary matDatepickerApply>Apply</button>\n </mat-datepicker-actions>\n </mat-datepicker>\n <button\n *ngIf=\"!hasNoButton\"\n (click)=\"openCalendar()\"\n euiButton\n type=\"button\"\n euiSecondary\n [euiIconButton] = \"!togglerLabel\"\n [euiDisabled]=\"isButtonDisabled\"\n aria-haspopup=\"dialog\">\n <span *ngIf=\"!togglerLabel\" euiIcon aria-label=\"Open Calendar\" iconClass=\"{{ togglerIcon }}\"></span>\n <span *ngIf=\"togglerLabel\">{{ togglerLabel }}</span>\n </button>\n </div>\n </div>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatDatepickerModule } from '@angular/material/datepicker';\nimport { DateAdapter, MAT_DATE_FORMATS, MAT_DATE_LOCALE } from '@angular/material/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { MatMomentDateModule, MomentDateAdapter } from '@angular/material-moment-adapter';\n\nimport { EuiDatepickerComponent, EuiLetterFormatDirective, EuiMonthYearFormatDirective, EuiYearFormatDirective } from './eui-datepicker.component';\nimport { EuiTimepickerComponent, EuiTimepickerComponentModule } from '@eui/components/eui-timepicker';\nimport { EuiButtonModule } from '@eui/components/eui-button';\nimport { EuiIconModule } from '@eui/components/atoms/eui-icon';\nimport { EuiInputTextModule } from '@eui/components/eui-input-text';\nimport { EuiInputGroupModule } from '@eui/components/eui-input-group';\n\nexport const DEFAULT_FORMATS = {\n parse: {\n dateInput: 'DD/MM/YYYY',\n },\n display: {\n dateInput: 'DD/MM/YYYY',\n monthYearLabel: 'MM/YYYY',\n dateA11yLabel: 'Date/Month/Year',\n monthYearA11yLabel: 'Month/Year',\n },\n};\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n MatDatepickerModule,\n TranslateModule,\n MatMomentDateModule,\n EuiButtonModule,\n EuiIconModule,\n EuiTimepickerComponentModule,\n EuiInputTextModule,\n EuiInputGroupModule\n ],\n exports: [\n EuiDatepickerComponent,\n EuiLetterFormatDirective,\n EuiYearFormatDirective,\n EuiMonthYearFormatDirective\n ],\n declarations: [\n EuiDatepickerComponent,\n EuiLetterFormatDirective,\n EuiYearFormatDirective,\n EuiMonthYearFormatDirective\n ],\n entryComponents: [EuiTimepickerComponent],\n providers: [\n { provide: DateAdapter, useClass: MomentDateAdapter, deps: [MAT_DATE_LOCALE] },\n { provide: MAT_DATE_FORMATS, useValue: DEFAULT_FORMATS },\n ]\n})\nexport class EuiDatepickerComponentModule {\n}\n","import { AbstractControl } from '@angular/forms';\n\n/**\n * @description\n * Validator that validates the date based on the provided format.\n *\n * @usageNotes\n * If the user types a value in the input field that is not aligned with the provided format the component propagates a null value that\n * can be used to validate the input field.\n *\n * @returns An error map with the\n * `invalidDate` if the validation check fails, otherwise `null`.\n */\nexport const dateInputValidator = (control: AbstractControl): { [key: string]: any } | null => {\n return control.value === null ? { 'invalidDate': true } : null;\n};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["_moment"],"mappings":"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"}
1
+ {"version":3,"file":"eui-components-eui-datepicker.mjs","sources":["../../eui-datepicker/eui-datepicker.component.ts","../../eui-datepicker/eui-datepicker.component.html","../../eui-datepicker/eui-datepicker.module.ts","../../eui-datepicker/eui-datepicker.validators.ts","../../eui-datepicker/eui-components-eui-datepicker.ts"],"sourcesContent":["import {\n ApplicationRef,\n Component,\n ComponentFactoryResolver,\n EventEmitter,\n HostListener,\n Inject,\n Injector,\n Input,\n OnChanges,\n OnDestroy,\n DoCheck,\n OnInit,\n Optional,\n Output,\n Self,\n SimpleChanges,\n StaticProvider,\n ViewChild,\n ViewEncapsulation,\n Directive,\n forwardRef,\n HostBinding,\n} from '@angular/core';\nimport { ControlValueAccessor, FormControl, NgControl } from '@angular/forms';\nimport { DateAdapter, MatDateFormats, MAT_DATE_FORMATS } from '@angular/material/core';\nimport { MatCalendarCellClassFunction, MatDatepicker, MatDatepickerInputEvent } from '@angular/material/datepicker';\nimport { TranslateService } from '@ngx-translate/core';\nimport { fromEvent, Subject } from 'rxjs';\nimport { filter, takeUntil } from 'rxjs/operators';\nimport { ComponentPortal, DomPortalOutlet } from '@angular/cdk/portal';\nimport _moment from 'moment';\nimport { default as _rollupMoment } from 'moment';\n\nimport { EuiTimepickerComponent, EuiDateTimePickerConfig } from '@eui/components/eui-timepicker';\nimport { DYNAMIC_COMPONENT_CONFIG, LocaleService, UxAppShellService } from '@eui/core';\nimport { coerceBooleanProperty, BooleanInput } from '@angular/cdk/coercion';\nimport { BaseDirective } from '@eui/components/shared';\n\nconst moment = _rollupMoment || _moment;\n\n@Component({\n selector: 'eui-datepicker',\n templateUrl: './eui-datepicker.component.html',\n styleUrls: ['./styles/_index.scss'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class EuiDatepickerComponent extends BaseDirective implements OnInit, ControlValueAccessor, OnDestroy, OnChanges, DoCheck {\n\n public inputFormControl = new FormControl();\n public breakpointsValue: any = {\n isMobile: false,\n isTablet: false,\n isLtDesktop: false,\n isDesktop: false,\n isXL: false,\n isXXL: false,\n };\n\n @ViewChild('calendar', { static: true }) calendar: MatDatepicker<any>;\n\n @Output() onInputChange = new EventEmitter<any>(); // TODO EUI15 remove the on prefix from the Output name\n @Output() onDateSelect = new EventEmitter<any>(); // TODO EUI15 remove the on prefix from the Output name\n\n @Input() styleClass = '';\n @Input() value: any;\n @Input() togglerIcon = 'eui-icon-ecl-calendar';\n @Input() togglerLabel: string;\n @Input() placeholder: string;\n @Input() type: 'year' | 'month' | 'regular' = 'regular';\n @Input() startView: 'month' | 'year' | 'multi-year';\n @Input() e2eAttr = 'eui-datepicker';\n @Input() minDate: any;\n @Input() maxDate: any;\n @Input() datepickerFilter: (d: any) => boolean = this.datepickerFiltering;\n @Input() dateOutputFormat: string;\n @Input() customHeader: any;\n @Input() dateClass: MatCalendarCellClassFunction<any>;\n @Input()\n get isDatetimepicker(): boolean { return this._isDatetimepicker; }\n set isDatetimepicker(value: BooleanInput) { this._isDatetimepicker = coerceBooleanProperty(value); }\n private _isDatetimepicker = false;\n @Input()\n get hasSeconds(): boolean { return this._hasSeconds; }\n set hasSeconds(value: BooleanInput) { this._hasSeconds = coerceBooleanProperty(value); }\n private _hasSeconds = false;\n @Input()\n get isOneInputField(): boolean { return this._isOneInputField; }\n set isOneInputField(value: BooleanInput) { this._isOneInputField = coerceBooleanProperty(value); }\n private _isOneInputField = false;\n @Input()\n get hasNoButton(): boolean { return this._hasNoButton; }\n set hasNoButton(value: BooleanInput) { this._hasNoButton = coerceBooleanProperty(value); }\n private _hasNoButton = false;\n @Input()\n get isDatepickerBlock(): boolean { return this._isDatepickerBlock; }\n set isDatepickerBlock(value: BooleanInput) { this._isDatepickerBlock = coerceBooleanProperty(value); }\n private _isDatepickerBlock = false;\n @Input()\n get isReadOnly(): boolean { return this._isReadOnly; }\n set isReadOnly(value: BooleanInput) { this._isReadOnly = coerceBooleanProperty(value); }\n private _isReadOnly = false;\n @Input()\n get isDisabled(): boolean { return this._isDisabled; }\n set isDisabled(value: BooleanInput) { this._isDisabled = coerceBooleanProperty(value); }\n private _isDisabled = false;\n @Input()\n get isInputDisabled(): boolean { return this._isInputDisabled; }\n set isInputDisabled(value: BooleanInput) { this._isInputDisabled = coerceBooleanProperty(value); }\n private _isInputDisabled = false;\n @Input()\n get isButtonDisabled(): boolean { return this._isButtonDisabled; }\n set isButtonDisabled(value: BooleanInput) { this._isButtonDisabled = coerceBooleanProperty(value); }\n private _isButtonDisabled = false;\n @Input()\n get isPickerDisabled(): boolean { return this._isPickerDisabled; }\n set isPickerDisabled(value: BooleanInput) { this._isPickerDisabled = coerceBooleanProperty(value); }\n private _isPickerDisabled = false;\n @Input()\n get isClearable(): boolean { return this._isClearable; }\n set isClearable(value: BooleanInput) {this._isClearable = coerceBooleanProperty(value); }\n private _isClearable = false;\n @Input()\n get hasActionButtons(): boolean { return this._hasActionButtons; }\n set hasActionButtons(value: BooleanInput) {this._hasActionButtons = coerceBooleanProperty(value); }\n private _hasActionButtons = false;\n @Input()\n get hasTodayButton(): boolean { return this._hasTodayButton; }\n set hasTodayButton(value: BooleanInput) {this._hasTodayButton = coerceBooleanProperty(value); }\n private _hasTodayButton = false; // TODO EUI15 check whether it can be replaced along with the action buttons in favor of ng-content\n @Input()\n get restrictToRegex(): RegExp { return this._restrictToRegex; }\n set restrictToRegex(value: string | RegExp) {\n try {\n if (value instanceof RegExp) {\n this._restrictToRegex = value;\n } else if (typeof value === 'string') {\n this._restrictToRegex = new RegExp(value);\n } else {\n throw new Error(`restrictToRegex can only be string or RegExp, it cannot be ${typeof value}`);\n }\n } catch (e) {\n console.error(e);\n }\n }\n private _restrictToRegex: RegExp;\n\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('eui-datepicker'),\n ].join(' ').trim();\n }\n\n private destroy$: Subject<boolean> = new Subject<boolean>();\n private format: MatDateFormats;\n private portalHost: DomPortalOutlet;\n private portal: ComponentPortal<EuiTimepickerComponent>;\n private isNull = false;\n\n constructor(\n private adapter: DateAdapter<any>,\n private translateService: TranslateService,\n private localeService: LocaleService,\n private uxAppShellService: UxAppShellService,\n private componentFactoryResolver: ComponentFactoryResolver,\n private injector: Injector,\n private appRef: ApplicationRef,\n @Optional() @Inject(forwardRef(() => EuiLetterFormatDirective)) public euiLetterFormat: EuiLetterFormatDirective,\n @Self() @Optional() private control: NgControl,\n @Inject(MAT_DATE_FORMATS) format: MatDateFormats) {\n super();\n this.format = format;\n if (this.control) {\n this.control.valueAccessor = this;\n }\n }\n\n ngOnInit(): void {\n this.inputFormControl.setValue(this.value);\n this.isInputDisabled ? this.inputFormControl.disable() : this.inputFormControl.enable();\n\n this.localeService.getState().pipe(takeUntil(this.destroy$)).subscribe(state => {\n this.adapter.setLocale(state.id);\n });\n\n if (!this.placeholder) {\n if (this.type === 'regular' && !this.isDatetimepicker) {\n this.translateService.stream('eui.datepicker.PLACEHOLDER').pipe(takeUntil(this.destroy$)).subscribe((result: string) => {\n this.placeholder = result;\n });\n } else if (this.type === 'regular' && this.isDatetimepicker) {\n this.translateService.stream('eui.datepicker.ISDATETIMEPICKER')\n .pipe(takeUntil(this.destroy$)).subscribe((result: string) => {\n this.placeholder = result;\n });\n } else if (this.type === 'year') {\n this.translateService.stream('eui.datepicker.YEAR-PLACEHOLDER')\n .pipe(takeUntil(this.destroy$)).subscribe((result: string) => {\n this.placeholder = result;\n });\n } else if (this.type === 'month') {\n this.translateService.stream('eui.datepicker.MONTH-PLACEHOLDER')\n .pipe(takeUntil(this.destroy$)).subscribe((result: string) => {\n this.placeholder = result;\n });\n }\n\n }\n\n this.uxAppShellService.breakpoints$.pipe(takeUntil(this.destroy$)).subscribe(bkps => this.breakpointsValue = bkps);\n\n if (this.isDatetimepicker && !this.hasActionButtons) {\n this.calendar['closeCalendar'] = this.calendar.close;\n this.calendar.close = (): boolean => false;\n }\n }\n\n ngDoCheck(): void {\n if (this.control) {\n // marks the input control as touched/invalid if the form control is touched/invalid\n this.control?.touched ? this.inputFormControl.markAsTouched() : this.inputFormControl.markAsUntouched();\n this.control?.invalid ? this.inputFormControl.setErrors(this.control.errors) : this.inputFormControl.setErrors(null);\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n\n if (changes && changes['isReadOnly']) {\n if (this.isReadOnly) {\n this.hasNoButton = true;\n } else {\n this.hasNoButton = false;\n }\n }\n\n if (changes && changes['isDisabled']) {\n this.setDisabledState(this.isDisabled);\n }\n\n if (changes && changes['value']) {\n this.inputFormControl.setValue(this.value);\n } else {\n if(this.dateOutputFormat && this.value) {\n this.propagateChange(moment(this.value).format(this.dateOutputFormat));\n }\n }\n\n if(changes && changes['isClearable']) {\n // when is clearable is used listen if onclear is fired and update the value\n if(this.isClearable) {\n this.onInputChange.pipe(takeUntil(this.destroy$)).subscribe((event => {\n if (event === null) {\n this.value = event;\n this.propagateChange(event);\n }\n }));\n }\n }\n }\n\n @HostListener('body:click', ['$event'])\n onClickOutside(e: MouseEvent): void {\n if (this.isDatetimepicker && !this.hasActionButtons) {\n let clickInPopup = false;\n let clickOutside = false;\n let clickCloseButton = false;\n\n this.getEventPath(e).forEach((p: any) => {\n // checks whether you click within the calendar content\n if (p.className && p.className.indexOf('mat-datepicker-content') !== -1) {\n clickInPopup = true;\n }\n // checks whether you click outside the calendar content\n if (p.className && (p.className.indexOf('cdk-overlay-backdrop') !== -1)) {\n clickOutside = true;\n }\n // checks whether you click on the close button that appears below the calendar content when tabbing within the calendar\n if (p.className && p.className.indexOf('mat-datepicker-close-button') !== -1) {\n clickCloseButton = true;\n }\n });\n\n if ((!clickInPopup && clickOutside) || clickCloseButton) {\n this.calendar['closeCalendar']();\n }\n }\n }\n\n createInjector(data: any): Injector {\n const injectorTokens: StaticProvider = [{ provide: DYNAMIC_COMPONENT_CONFIG, useValue: data }];\n return Injector.create({\n parent: this.injector,\n providers: injectorTokens\n });\n }\n\n openCalendar(): void {\n if (!this.isReadOnly) {\n this.calendar.open();\n\n if (this.isDatetimepicker) {\n // listens to the key up event, filters for the Escape key and closes the calendar upon pressing it\n const globalEscape = fromEvent<KeyboardEvent>(document, 'keyup')\n .pipe(\n filter((event) => event.key === 'Escape'),\n takeUntil(this.destroy$)).subscribe(() => this.calendar['closeCalendar']());\n\n this.portalHost = new DomPortalOutlet(\n document.querySelector('mat-calendar'),\n this.componentFactoryResolver, // TODO eUI15, check again if there is an update on framework side EUI-6207\n this.appRef,\n this.injector\n );\n const timeConfig: EuiDateTimePickerConfig = {\n hours: this.value && moment(this.value).hours(),\n mins: this.value && moment(this.value).minutes(),\n secs: this.value && moment(this.value).seconds(),\n isDatetimepicker: this.isDatetimepicker,\n hasSeconds: this.hasSeconds,\n isOneInputField: this.isOneInputField,\n callbackFn: (hours: number, mins: number, secs: number) => {\n if (this.hasActionButtons) {\n this.value = moment();\n }\n\n this.value = typeof(this.value) === 'string' ?moment(this.value, moment.ISO_8601): moment(this.value, this.format.parse.dateInput);\n this.value.set({\n hour: hours || 0,\n minute: mins || 0,\n second: secs || 0\n });\n\n if (!this.hasActionButtons) {\n this.inputFormControl.setValue(this.value);\n if (this.dateOutputFormat) {\n this.propagateChange(moment(this.value).format(this.dateOutputFormat));\n } else {\n this.propagateChange(moment(this.value));\n }\n }\n }\n };\n\n this.portal = new ComponentPortal(EuiTimepickerComponent, null, this.createInjector(timeConfig));\n const portalComponentInstance = this.portalHost.attach(this.portal);\n }\n }\n }\n\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n\n this.portalHost?.detach();\n }\n\n getEventPath(event): any {\n\n if (event.path) {\n return event.path;\n }\n\n const path = [];\n let target = event.target;\n\n while (target.parentNode) {\n path.push(target);\n target = target.parentNode;\n }\n\n path.push(document, window);\n\n return path;\n }\n\n chosenDateHandler(normalizedDate: any, calendar: MatDatepicker<any>): void {\n if (this.dateOutputFormat) {\n const formattedValue = moment(normalizedDate, this.dateOutputFormat);\n this.value = formattedValue;\n this.inputFormControl.setValue(formattedValue);\n\n this.propagateChange(formattedValue.format(this.dateOutputFormat));\n this.onInputChange.emit(formattedValue.format(this.dateOutputFormat));\n this.onDateSelect.emit(formattedValue.format(this.dateOutputFormat));\n } else {\n this.value = normalizedDate;\n this.inputFormControl.setValue(this.value);\n\n this.propagateChange(this.value);\n this.onDateSelect.emit(this.value ? this.value : null);\n this.onInputChange.emit(this.value ? this.value : null);\n }\n calendar.close();\n }\n\n public datepickerFiltering(): boolean {\n return true;\n }\n\n public inputChange(e: MatDatepickerInputEvent<any>): void {\n\n if (!this.isDatetimepicker) {\n if (e.value === null) {\n this.propagateChange(null);\n this.onInputChange.emit(null);\n } else if (this.dateOutputFormat) {\n this.value = moment(e.value, this.dateOutputFormat);\n this.propagateChange(this.value.format(this.dateOutputFormat));\n this.onInputChange.emit(this.value.format(this.dateOutputFormat));\n } else {\n this.propagateChange(e.value);\n this.onInputChange.emit(e?.value ? e.value : null);\n }\n this.propagateTouched();\n }\n }\n // TODO eUI15: check to combine dateSelect and inputChange into one function ()\n public dateSelect(e: MatDatepickerInputEvent<any>): void {\n\n if (e.value === null) {\n this.propagateChange(null);\n this.onDateSelect.emit(null);\n this.isNull = true;\n\n } else {\n this.isNull = false;\n if (this.isDatetimepicker) {\n const hours = this.value && moment(this.value).hours();\n const mins = this.value && moment(this.value).minutes();\n const secs = this.value && moment(this.value).seconds();\n\n this.value = moment(e.value, this.format.parse.dateInput);\n this.value.set({\n hour: hours || 0,\n minute: mins || 0,\n second: secs || 0\n });\n\n if (this.calendar.opened) {\n this.inputFormControl.setValue(this.value);\n }\n\n if (this.dateOutputFormat && this.value != null) {\n this.propagateChange(moment(this.value).format(this.dateOutputFormat));\n } else {\n this.propagateChange(moment(this.value));\n }\n } else {\n if (this.dateOutputFormat) {\n this.value = moment(e.value, this.dateOutputFormat);\n this.onDateSelect.emit(this.value.format(this.dateOutputFormat));\n } else {\n this.onDateSelect.emit(e?.value ? e.value : null);\n }\n }\n }\n }\n\n changedInput(e: string | Event): void {\n const value = (typeof e === 'string') ? e : (e.target as HTMLInputElement).value;\n if (!this.isNull) {\n this.value = moment(value, this.format.parse.dateInput);\n this.inputFormControl.setValue(this.value);\n if (this.dateOutputFormat && this.value != null) {\n this.propagateChange(moment(this.value).format(this.dateOutputFormat));\n } else {\n this.propagateChange(moment(this.value));\n }\n }\n }\n\n onClear(): void {\n this.onDateSelect.emit(null);\n this.onInputChange.emit(null);\n this.propagateChange(null);\n }\n\n onKeypress(e: KeyboardEvent): void {\n if (e.key === 'Enter') {\n this.openCalendar();\n e.preventDefault();\n }\n\n if (this._restrictToRegex) {\n if (!this._restrictToRegex.test(e.key)) {\n e.preventDefault();\n }\n }\n }\n\n selectToday(): void {\n this.inputFormControl.setValue(moment());\n }\n\n writeValue(value: any): void {\n this.value = value || '';\n this.inputFormControl.setValue(value);\n }\n\n registerOnChange(fn: any): void {\n this.propagateChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.propagateTouched = fn;\n }\n\n convTypeToStartView(type: string): 'year' | 'month' | 'multi-year' {\n switch (type) {\n case 'month':\n return 'year';\n case 'year':\n return 'multi-year';\n case 'regular':\n return 'month';\n }\n }\n\n public setDisabledState?(isDisabled: boolean): void {\n this.isDisabled = isDisabled;\n if (isDisabled) {\n this.isInputDisabled = this.isPickerDisabled = this.isButtonDisabled = true;\n } else {\n this.isInputDisabled = this.isPickerDisabled = this.isButtonDisabled = false;\n }\n\n this.isInputDisabled ? this.inputFormControl.disable(): this.inputFormControl.enable();\n }\n\n private propagateChange = (_: any): void => {\n };\n\n private propagateTouched = (): void => {\n };\n}\n\nexport const LETTER_FORMAT = {\n parse: {\n dateInput: 'LL',\n },\n display: {\n dateInput: 'LL',\n monthYearLabel: 'LL',\n },\n};\n\nexport const YEAR_FORMAT = {\n parse: {\n dateInput: 'YYYY',\n },\n display: {\n dateInput: 'YYYY',\n monthYearLabel: 'YYYY',\n dateA11yLabel: 'YYYY',\n monthYearA11yLabel: 'YYYY',\n },\n};\n\nexport const MONTH_YEAR_FORMAT = {\n parse: {\n dateInput: 'MM/YYYY',\n },\n display: {\n dateInput: 'MM/YYYY',\n monthYearLabel: 'MMM YYYY',\n dateA11yLabel: 'LL',\n monthYearA11yLabel: 'MMMM YYYY',\n },\n};\n\n@Directive({\n selector: '[euiLetterFormat]',\n providers: [\n { provide: MAT_DATE_FORMATS, useValue: LETTER_FORMAT },\n ],\n})\nexport class EuiLetterFormatDirective {\n\n}\n\n@Directive({\n selector: '[euiYearFormat]',\n providers: [\n { provide: MAT_DATE_FORMATS, useValue: YEAR_FORMAT },\n ],\n})\nexport class EuiYearFormatDirective {\n\n}\n\n@Directive({\n selector: '[euiMonthYearFormat]',\n providers: [\n { provide: MAT_DATE_FORMATS, useValue: MONTH_YEAR_FORMAT },\n ],\n})\nexport class EuiMonthYearFormatDirective {\n\n}\n","<div class=\"eui-datepicker__wrapper {{ styleClass }}\" [class.eui-datepicker__wrapper--responsive]=\"isDatepickerBlock\">\n <div euiInputGroup>\n <div class=\"eui-input-group-addon\">\n <input\n euiInputText\n [readonly] =\"isReadOnly\"\n [euiClearable]= \"isClearable\"\n (clear)=\"onClear()\"\n [class.eui-datepicker--no-button]=\"hasNoButton\"\n [class.eui-datepicker--long-format]=\"!isDatepickerBlock && (isDatetimepicker || euiLetterFormat)\"\n [class.eui-datepicker--block]=\"isDatepickerBlock\"\n [formControl]=\"inputFormControl\"\n [matDatepicker]=\"calendar\"\n placeholder=\"{{ placeholder }}\"\n (dateInput)=\"inputChange($event)\"\n (dateChange)=\"dateSelect($event)\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n [matDatepickerFilter]=\"datepickerFilter\"\n (click)=\"openCalendar()\"\n autocomplete=\"off\"\n aria-label=\"Date Input Field\"\n (keypress)=\"onKeypress($event)\"\n (change)=\"isDatetimepicker ? changedInput($event) : null\">\n <mat-datepicker\n #calendar\n panelClass=\"mat-calendar-{{ type }}\"\n [startView]=\"(type==='regular') ? (startView ? startView : convTypeToStartView(type)) : convTypeToStartView(type)\"\n (yearSelected)=\"type === 'year' ? chosenDateHandler($event, calendar) : null\"\n (monthSelected)=\"type === 'month' ? chosenDateHandler($event, calendar) : null\"\n [touchUi]=\"breakpointsValue.isTablet || breakpointsValue.isMobile\"\n [panelClass]=\"isDatetimepicker? 'eui-datepicker--container-height-large' : null\"\n [disabled]=\"isPickerDisabled\"\n [calendarHeaderComponent]=\"customHeader\"\n [dateClass]=\"dateClass\">\n <mat-datepicker-actions *ngIf=\"hasActionButtons\">\n <div *ngIf=\"hasTodayButton\" class=\"eui-datepicker__footer\">\n <button type=\"button\" euiButton euiBasicButton euiOutline matDatepickerApply aria-label=\"Today\" (click)=\"selectToday()\">\n <span class=\"eui-icon eui-icon-today\" aria-label=\"Today Icon\"></span>\n <span euiLabel>Today</span>\n </button>\n </div>\n <button type=\"button\" euiButton euiSecondary matDatepickerCancel class=\"eui-u-mr-xs\">Cancel</button>\n <button type=\"button\" euiButton euiPrimary matDatepickerApply>Apply</button>\n </mat-datepicker-actions>\n </mat-datepicker>\n <button\n *ngIf=\"!hasNoButton\"\n (click)=\"openCalendar()\"\n euiButton\n type=\"button\"\n euiSecondary\n [euiIconButton] = \"!togglerLabel\"\n [euiDisabled]=\"isButtonDisabled\"\n aria-haspopup=\"dialog\">\n <span *ngIf=\"!togglerLabel\" euiIcon aria-label=\"Open Calendar\" iconClass=\"{{ togglerIcon }}\"></span>\n <span *ngIf=\"togglerLabel\">{{ togglerLabel }}</span>\n </button>\n </div>\n </div>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatDatepickerModule } from '@angular/material/datepicker';\nimport { DateAdapter, MAT_DATE_FORMATS, MAT_DATE_LOCALE } from '@angular/material/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { MatMomentDateModule, MomentDateAdapter } from '@angular/material-moment-adapter';\n\nimport { EuiDatepickerComponent, EuiLetterFormatDirective, EuiMonthYearFormatDirective, EuiYearFormatDirective } from './eui-datepicker.component';\nimport { EuiTimepickerComponent, EuiTimepickerComponentModule } from '@eui/components/eui-timepicker';\nimport { EuiButtonModule } from '@eui/components/eui-button';\nimport { EuiIconModule } from '@eui/components/atoms/eui-icon';\nimport { EuiInputTextModule } from '@eui/components/eui-input-text';\nimport { EuiInputGroupModule } from '@eui/components/eui-input-group';\n\nexport const DEFAULT_FORMATS = {\n parse: {\n dateInput: 'DD/MM/YYYY',\n },\n display: {\n dateInput: 'DD/MM/YYYY',\n monthYearLabel: 'MM/YYYY',\n dateA11yLabel: 'Date/Month/Year',\n monthYearA11yLabel: 'Month/Year',\n },\n};\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n MatDatepickerModule,\n TranslateModule,\n MatMomentDateModule,\n EuiButtonModule,\n EuiIconModule,\n EuiTimepickerComponentModule,\n EuiInputTextModule,\n EuiInputGroupModule\n ],\n exports: [\n EuiDatepickerComponent,\n EuiLetterFormatDirective,\n EuiYearFormatDirective,\n EuiMonthYearFormatDirective\n ],\n declarations: [\n EuiDatepickerComponent,\n EuiLetterFormatDirective,\n EuiYearFormatDirective,\n EuiMonthYearFormatDirective\n ],\n entryComponents: [EuiTimepickerComponent],\n providers: [\n { provide: DateAdapter, useClass: MomentDateAdapter, deps: [MAT_DATE_LOCALE] },\n { provide: MAT_DATE_FORMATS, useValue: DEFAULT_FORMATS },\n ]\n})\nexport class EuiDatepickerComponentModule {\n}\n","import { AbstractControl } from '@angular/forms';\n\n/**\n * @description\n * Validator that validates the date based on the provided format.\n *\n * @usageNotes\n * If the user types a value in the input field that is not aligned with the provided format the component propagates a null value that\n * can be used to validate the input field.\n *\n * @returns An error map with the\n * `invalidDate` if the validation check fails, otherwise `null`.\n */\nexport const dateInputValidator = (control: AbstractControl): { [key: string]: any } | null => {\n return control.value === null ? { 'invalidDate': true } : null;\n};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["_moment"],"mappings":"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"}
@@ -87,6 +87,7 @@ class EuiSelectComponent {
87
87
  if (!this.control) {
88
88
  this.setPlaceholderClass(this.placeholder === value ? undefined : value);
89
89
  }
90
+ this.syncReadOnlyValue();
90
91
  }
91
92
  syncReadOnlyValue() {
92
93
  this.setReadonlyValue(this.readonlyInput);
@@ -252,8 +253,8 @@ class EuiSelectControlValueAccessor extends SelectControlValueAccessor {
252
253
  const selectControlValueAccessor = this.injector.get(SelectControlValueAccessor, undefined);
253
254
  selectControlValueAccessor['_idCounter'] = this['_idCounter'];
254
255
  selectControlValueAccessor['_optionMap'] = this['_optionMap'];
255
- this.renderer.setValue(this.placeholderOption, _buildValueString$1(id, undefined));
256
- this.renderer.setProperty(this.placeholderOption, 'value', _buildValueString$1(id, undefined));
256
+ this.renderer.setValue(this.placeholderOption, _buildValueString$1(id, null));
257
+ this.renderer.setProperty(this.placeholderOption, 'value', _buildValueString$1(id, null));
257
258
  this.renderer.addClass(this.placeholderOption, 'eui-select__placeholder');
258
259
  this.renderer.setProperty(this.placeholderOption, 'innerText', changes['placeholder'].currentValue);
259
260
  // set attributes to act as a placeholder