@angular/material 17.0.0 → 17.1.0-next.0
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/autocomplete/index.d.ts +0 -2
- package/button/_button-theme.scss +4 -0
- package/button/_icon-button-theme.scss +5 -1
- package/card/testing/index.d.ts +1 -1
- package/checkbox/index.d.ts +1 -1
- package/chips/index.d.ts +71 -67
- package/core/index.d.ts +1 -1
- package/core/ripple/_ripple-theme.scss +51 -19
- package/core/tokens/m2/_index.scss +29 -8
- package/datepicker/index.d.ts +21 -23
- package/datepicker/testing/index.d.ts +1 -1
- package/dialog/index.d.ts +1 -1
- package/dialog/testing/index.d.ts +1 -1
- package/esm2022/autocomplete/autocomplete-trigger.mjs +7 -7
- package/esm2022/button/icon-button.mjs +4 -4
- package/esm2022/card/testing/card-harness.mjs +9 -1
- package/esm2022/checkbox/checkbox.mjs +29 -14
- package/esm2022/chips/chip-action.mjs +14 -13
- package/esm2022/chips/chip-grid.mjs +29 -16
- package/esm2022/chips/chip-input.mjs +14 -17
- package/esm2022/chips/chip-listbox.mjs +19 -22
- package/esm2022/chips/chip-option.mjs +11 -10
- package/esm2022/chips/chip-row.mjs +4 -4
- package/esm2022/chips/chip-set.mjs +19 -18
- package/esm2022/chips/chip.mjs +49 -42
- package/esm2022/core/ripple/ripple-ref.mjs +10 -2
- package/esm2022/core/ripple/ripple-renderer.mjs +11 -11
- package/esm2022/core/version.mjs +1 -1
- package/esm2022/datepicker/calendar-body.mjs +2 -2
- package/esm2022/datepicker/date-range-input.mjs +10 -10
- package/esm2022/datepicker/datepicker-base.mjs +41 -49
- package/esm2022/datepicker/datepicker-input-base.mjs +6 -6
- package/esm2022/datepicker/datepicker-toggle.mjs +6 -6
- package/esm2022/datepicker/testing/calendar-harness.mjs +11 -4
- package/esm2022/dialog/dialog-ref.mjs +10 -4
- package/esm2022/dialog/testing/dialog-harness.mjs +11 -4
- package/esm2022/dialog/testing/public-api.mjs +2 -2
- package/esm2022/expansion/accordion.mjs +7 -13
- package/esm2022/expansion/expansion-panel-header.mjs +13 -13
- package/esm2022/expansion/expansion-panel.mjs +6 -6
- package/esm2022/expansion/testing/expansion-harness.mjs +14 -6
- package/esm2022/grid-list/testing/grid-tile-harness.mjs +9 -3
- package/esm2022/icon/icon.mjs +24 -28
- package/esm2022/icon/testing/icon-harness-filters.mjs +7 -2
- package/esm2022/icon/testing/icon-harness.mjs +4 -3
- package/esm2022/list/list-base.mjs +6 -6
- package/esm2022/list/testing/list-item-harness-base.mjs +18 -6
- package/esm2022/list/testing/public-api.mjs +2 -2
- package/esm2022/paginator/paginator.mjs +32 -35
- package/esm2022/progress-bar/progress-bar.mjs +25 -20
- package/esm2022/progress-spinner/progress-spinner.mjs +34 -33
- package/esm2022/radio/radio.mjs +40 -34
- package/esm2022/select/select.mjs +45 -37
- package/esm2022/slider/slider-input.mjs +23 -22
- package/esm2022/slider/slider-interface.mjs +16 -1
- package/esm2022/slider/slider-thumb.mjs +6 -6
- package/esm2022/slider/slider.mjs +73 -72
- package/esm2022/slider/testing/slider-harness-filters.mjs +7 -2
- package/esm2022/slider/testing/slider-harness.mjs +4 -3
- package/esm2022/slider/testing/slider-thumb-harness.mjs +3 -2
- package/esm2022/sort/sort-header.mjs +16 -24
- package/esm2022/sort/sort.mjs +12 -19
- package/esm2022/stepper/step-header.mjs +7 -12
- package/esm2022/stepper/stepper.mjs +1 -1
- package/esm2022/stepper/testing/step-harness-filters.mjs +7 -2
- package/esm2022/stepper/testing/stepper-harness.mjs +4 -3
- package/esm2022/tabs/paginated-tab-header.mjs +12 -18
- package/esm2022/tabs/tab-group.mjs +54 -70
- package/esm2022/tabs/tab-header.mjs +7 -13
- package/esm2022/tabs/tab-label-wrapper.mjs +12 -8
- package/esm2022/tabs/tab-nav-bar/tab-nav-bar.mjs +43 -37
- package/esm2022/tabs/tab.mjs +12 -12
- package/esm2022/toolbar/testing/toolbar-harness.mjs +7 -2
- package/esm2022/toolbar/toolbar.mjs +11 -16
- package/esm2022/tree/node.mjs +20 -20
- package/esm2022/tree/padding.mjs +11 -4
- package/expansion/index.d.ts +11 -19
- package/expansion/testing/index.d.ts +1 -1
- package/fesm2022/autocomplete.mjs +6 -6
- package/fesm2022/autocomplete.mjs.map +1 -1
- package/fesm2022/button.mjs +4 -4
- package/fesm2022/button.mjs.map +1 -1
- package/fesm2022/card/testing.mjs +9 -1
- package/fesm2022/card/testing.mjs.map +1 -1
- package/fesm2022/checkbox.mjs +29 -14
- package/fesm2022/checkbox.mjs.map +1 -1
- package/fesm2022/chips.mjs +144 -119
- package/fesm2022/chips.mjs.map +1 -1
- package/fesm2022/core.mjs +20 -12
- package/fesm2022/core.mjs.map +1 -1
- package/fesm2022/datepicker/testing.mjs +11 -4
- package/fesm2022/datepicker/testing.mjs.map +1 -1
- package/fesm2022/datepicker.mjs +57 -62
- package/fesm2022/datepicker.mjs.map +1 -1
- package/fesm2022/dialog/testing.mjs +11 -4
- package/fesm2022/dialog/testing.mjs.map +1 -1
- package/fesm2022/dialog.mjs +10 -4
- package/fesm2022/dialog.mjs.map +1 -1
- package/fesm2022/expansion/testing.mjs +14 -6
- package/fesm2022/expansion/testing.mjs.map +1 -1
- package/fesm2022/expansion.mjs +22 -26
- package/fesm2022/expansion.mjs.map +1 -1
- package/fesm2022/grid-list/testing.mjs +9 -3
- package/fesm2022/grid-list/testing.mjs.map +1 -1
- package/fesm2022/icon/testing.mjs +10 -3
- package/fesm2022/icon/testing.mjs.map +1 -1
- package/fesm2022/icon.mjs +24 -27
- package/fesm2022/icon.mjs.map +1 -1
- package/fesm2022/list/testing.mjs +18 -6
- package/fesm2022/list/testing.mjs.map +1 -1
- package/fesm2022/list.mjs +5 -5
- package/fesm2022/list.mjs.map +1 -1
- package/fesm2022/paginator.mjs +31 -34
- package/fesm2022/paginator.mjs.map +1 -1
- package/fesm2022/progress-bar.mjs +25 -19
- package/fesm2022/progress-bar.mjs.map +1 -1
- package/fesm2022/progress-spinner.mjs +34 -32
- package/fesm2022/progress-spinner.mjs.map +1 -1
- package/fesm2022/radio.mjs +41 -34
- package/fesm2022/radio.mjs.map +1 -1
- package/fesm2022/select.mjs +44 -36
- package/fesm2022/select.mjs.map +1 -1
- package/fesm2022/slider/testing.mjs +11 -4
- package/fesm2022/slider/testing.mjs.map +1 -1
- package/fesm2022/slider.mjs +109 -91
- package/fesm2022/slider.mjs.map +1 -1
- package/fesm2022/sort.mjs +25 -38
- package/fesm2022/sort.mjs.map +1 -1
- package/fesm2022/stepper/testing.mjs +10 -3
- package/fesm2022/stepper/testing.mjs.map +1 -1
- package/fesm2022/stepper.mjs +8 -12
- package/fesm2022/stepper.mjs.map +1 -1
- package/fesm2022/tabs.mjs +130 -141
- package/fesm2022/tabs.mjs.map +1 -1
- package/fesm2022/toolbar/testing.mjs +7 -2
- package/fesm2022/toolbar/testing.mjs.map +1 -1
- package/fesm2022/toolbar.mjs +11 -15
- package/fesm2022/toolbar.mjs.map +1 -1
- package/fesm2022/tree.mjs +22 -21
- package/fesm2022/tree.mjs.map +1 -1
- package/form-field/_form-field-theme.scss +85 -49
- package/grid-list/_grid-list-theme.scss +47 -14
- package/grid-list/testing/index.d.ts +1 -1
- package/icon/index.d.ts +10 -16
- package/icon/testing/index.d.ts +1 -1
- package/input/_input-theme.scss +39 -12
- package/list/_list-theme.scss +115 -83
- package/list/testing/index.d.ts +2 -2
- package/package.json +7 -7
- package/paginator/index.d.ts +16 -17
- package/prebuilt-themes/deeppurple-amber.css +1 -1
- package/prebuilt-themes/indigo-pink.css +1 -1
- package/prebuilt-themes/pink-bluegrey.css +1 -1
- package/prebuilt-themes/purple-green.css +1 -1
- package/progress-bar/index.d.ts +12 -15
- package/progress-spinner/index.d.ts +14 -15
- package/radio/index.d.ts +20 -22
- package/schematics/ng-add/index.js +2 -2
- package/schematics/ng-add/index.mjs +2 -2
- package/schematics/ng-generate/address-form/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.html.template +28 -29
- package/schematics/ng-generate/dashboard/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.html.template +21 -19
- package/schematics/ng-generate/mdc-migration/index_bundled.js +55 -48
- package/schematics/ng-generate/mdc-migration/index_bundled.js.map +3 -3
- package/schematics/ng-generate/navigation/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.html.template +9 -8
- package/schematics/ng-generate/navigation/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.ts.template +1 -2
- package/schematics/ng-update/index_bundled.js +31 -31
- package/select/index.d.ts +22 -17
- package/slide-toggle/_slide-toggle-theme.scss +78 -44
- package/slider/index.d.ts +30 -30
- package/slider/testing/index.d.ts +1 -1
- package/sort/_sort-theme.scss +51 -20
- package/sort/index.d.ts +15 -20
- package/stepper/_stepper-theme.scss +58 -25
- package/stepper/index.d.ts +5 -15
- package/stepper/testing/index.d.ts +1 -1
- package/table/_table-theme.scss +53 -20
- package/tabs/_tabs-theme.scss +87 -51
- package/tabs/index.d.ts +61 -64
- package/toolbar/index.d.ts +5 -12
- package/toolbar/testing/index.d.ts +1 -1
- package/tree/_tree-theme.scss +53 -21
- package/tree/index.d.ts +13 -15
package/fesm2022/datepicker.mjs
CHANGED
|
@@ -7,19 +7,19 @@ import { ComponentPortal, TemplatePortal, PortalModule } from '@angular/cdk/port
|
|
|
7
7
|
import * as i1 from '@angular/common';
|
|
8
8
|
import { DOCUMENT, CommonModule } from '@angular/common';
|
|
9
9
|
import * as i0 from '@angular/core';
|
|
10
|
-
import { Injectable, inject, EventEmitter, Component, ViewEncapsulation, ChangeDetectionStrategy, Input, Output, Optional, SkipSelf, InjectionToken, Inject, ViewChild, forwardRef, Directive, Attribute, ContentChild, Self, TemplateRef, NgModule } from '@angular/core';
|
|
10
|
+
import { Injectable, inject, EventEmitter, Component, ViewEncapsulation, ChangeDetectionStrategy, Input, Output, Optional, SkipSelf, InjectionToken, Inject, ViewChild, forwardRef, booleanAttribute, Directive, Attribute, ContentChild, Self, TemplateRef, NgModule } from '@angular/core';
|
|
11
11
|
import * as i3 from '@angular/material/button';
|
|
12
12
|
import { MatButtonModule } from '@angular/material/button';
|
|
13
13
|
import { CdkScrollableModule } from '@angular/cdk/scrolling';
|
|
14
14
|
import * as i1$1 from '@angular/material/core';
|
|
15
|
-
import { DateAdapter, MAT_DATE_FORMATS,
|
|
15
|
+
import { DateAdapter, MAT_DATE_FORMATS, mixinErrorState, MatCommonModule } from '@angular/material/core';
|
|
16
16
|
import { Subject, Subscription, merge, of } from 'rxjs';
|
|
17
17
|
import { ESCAPE, hasModifierKey, SPACE, ENTER, PAGE_DOWN, PAGE_UP, END, HOME, DOWN_ARROW, UP_ARROW, RIGHT_ARROW, LEFT_ARROW, BACKSPACE } from '@angular/cdk/keycodes';
|
|
18
18
|
import * as i2 from '@angular/cdk/bidi';
|
|
19
19
|
import { Directionality } from '@angular/cdk/bidi';
|
|
20
20
|
import { normalizePassiveListenerOptions, Platform, _getFocusedElementPierceShadowDom } from '@angular/cdk/platform';
|
|
21
21
|
import { take, startWith, filter } from 'rxjs/operators';
|
|
22
|
-
import {
|
|
22
|
+
import { coerceStringArray } from '@angular/cdk/coercion';
|
|
23
23
|
import { trigger, transition, animate, keyframes, style, state } from '@angular/animations';
|
|
24
24
|
import * as i2$1 from '@angular/forms';
|
|
25
25
|
import { NG_VALUE_ACCESSOR, NG_VALIDATORS, Validators, NgControl } from '@angular/forms';
|
|
@@ -227,7 +227,7 @@ class MatCalendarBody {
|
|
|
227
227
|
this._didDragSinceMouseDown = false;
|
|
228
228
|
// Begin a drag if a cell within the current range was targeted.
|
|
229
229
|
const cell = event.target && this._getCellFromElement(event.target);
|
|
230
|
-
if (!cell || !this._isInRange(cell.
|
|
230
|
+
if (!cell || !this._isInRange(cell.compareValue)) {
|
|
231
231
|
return;
|
|
232
232
|
}
|
|
233
233
|
this._ngZone.run(() => {
|
|
@@ -2341,13 +2341,6 @@ const MAT_DATEPICKER_SCROLL_STRATEGY_FACTORY_PROVIDER = {
|
|
|
2341
2341
|
deps: [Overlay],
|
|
2342
2342
|
useFactory: MAT_DATEPICKER_SCROLL_STRATEGY_FACTORY,
|
|
2343
2343
|
};
|
|
2344
|
-
// Boilerplate for applying mixins to MatDatepickerContent.
|
|
2345
|
-
/** @docs-private */
|
|
2346
|
-
const _MatDatepickerContentBase = mixinColor(class {
|
|
2347
|
-
constructor(_elementRef) {
|
|
2348
|
-
this._elementRef = _elementRef;
|
|
2349
|
-
}
|
|
2350
|
-
});
|
|
2351
2344
|
/**
|
|
2352
2345
|
* Component used as the content for the datepicker overlay. We use this instead of using
|
|
2353
2346
|
* MatCalendar directly as the content so we can control the initial focus. This also gives us a
|
|
@@ -2355,9 +2348,9 @@ const _MatDatepickerContentBase = mixinColor(class {
|
|
|
2355
2348
|
* future. (e.g. confirmation buttons).
|
|
2356
2349
|
* @docs-private
|
|
2357
2350
|
*/
|
|
2358
|
-
class MatDatepickerContent
|
|
2359
|
-
constructor(
|
|
2360
|
-
|
|
2351
|
+
class MatDatepickerContent {
|
|
2352
|
+
constructor(_elementRef, _changeDetectorRef, _globalModel, _dateAdapter, _rangeSelectionStrategy, intl) {
|
|
2353
|
+
this._elementRef = _elementRef;
|
|
2361
2354
|
this._changeDetectorRef = _changeDetectorRef;
|
|
2362
2355
|
this._globalModel = _globalModel;
|
|
2363
2356
|
this._dateAdapter = _dateAdapter;
|
|
@@ -2446,17 +2439,18 @@ class MatDatepickerContent extends _MatDatepickerContentBase {
|
|
|
2446
2439
|
}
|
|
2447
2440
|
}
|
|
2448
2441
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0", ngImport: i0, type: MatDatepickerContent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: MatDateSelectionModel }, { token: i1$1.DateAdapter }, { token: MAT_DATE_RANGE_SELECTION_STRATEGY, optional: true }, { token: MatDatepickerIntl }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2449
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.0", type: MatDatepickerContent, selector: "mat-datepicker-content", inputs: { color: "color" }, host: { listeners: { "@transformPanel.start": "_handleAnimationEvent($event)", "@transformPanel.done": "_handleAnimationEvent($event)" }, properties: { "@transformPanel": "_animationState", "class.mat-datepicker-content-touch": "datepicker.touchUi" }, classAttribute: "mat-datepicker-content" }, viewQueries: [{ propertyName: "_calendar", first: true, predicate: MatCalendar, descendants: true }], exportAs: ["matDatepickerContent"],
|
|
2442
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.0", type: MatDatepickerContent, selector: "mat-datepicker-content", inputs: { color: "color" }, host: { listeners: { "@transformPanel.start": "_handleAnimationEvent($event)", "@transformPanel.done": "_handleAnimationEvent($event)" }, properties: { "class": "color ? \"mat-\" + color : \"\"", "@transformPanel": "_animationState", "class.mat-datepicker-content-touch": "datepicker.touchUi" }, classAttribute: "mat-datepicker-content" }, viewQueries: [{ propertyName: "_calendar", first: true, predicate: MatCalendar, descendants: true }], exportAs: ["matDatepickerContent"], ngImport: i0, template: "<div\n cdkTrapFocus\n role=\"dialog\"\n [attr.aria-modal]=\"true\"\n [attr.aria-labelledby]=\"_dialogLabelId ?? undefined\"\n class=\"mat-datepicker-content-container\"\n [class.mat-datepicker-content-container-with-custom-header]=\"datepicker.calendarHeaderComponent\"\n [class.mat-datepicker-content-container-with-actions]=\"_actionsPortal\">\n <mat-calendar\n [id]=\"datepicker.id\"\n [ngClass]=\"datepicker.panelClass\"\n [startAt]=\"datepicker.startAt\"\n [startView]=\"datepicker.startView\"\n [minDate]=\"datepicker._getMinDate()\"\n [maxDate]=\"datepicker._getMaxDate()\"\n [dateFilter]=\"datepicker._getDateFilter()\"\n [headerComponent]=\"datepicker.calendarHeaderComponent\"\n [selected]=\"_getSelected()\"\n [dateClass]=\"datepicker.dateClass\"\n [comparisonStart]=\"comparisonStart\"\n [comparisonEnd]=\"comparisonEnd\"\n [@fadeInCalendar]=\"'enter'\"\n [startDateAccessibleName]=\"startDateAccessibleName\"\n [endDateAccessibleName]=\"endDateAccessibleName\"\n (yearSelected)=\"datepicker._selectYear($event)\"\n (monthSelected)=\"datepicker._selectMonth($event)\"\n (viewChanged)=\"datepicker._viewChanged($event)\"\n (_userSelection)=\"_handleUserSelection($event)\"\n (_userDragDrop)=\"_handleUserDragDrop($event)\"></mat-calendar>\n\n <ng-template [cdkPortalOutlet]=\"_actionsPortal\"></ng-template>\n\n <!-- Invisible close button for screen reader users. -->\n <button\n type=\"button\"\n mat-raised-button\n [color]=\"color || 'primary'\"\n class=\"mat-datepicker-close-button\"\n [class.cdk-visually-hidden]=\"!_closeButtonFocused\"\n (focus)=\"_closeButtonFocused = true\"\n (blur)=\"_closeButtonFocused = false\"\n (click)=\"datepicker.close()\">{{ _closeButtonText }}</button>\n</div>\n", styles: [".mat-datepicker-content{box-shadow:0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);display:block;border-radius:4px;background-color:var(--mat-datepicker-calendar-container-background-color);color:var(--mat-datepicker-calendar-container-text-color)}.mat-datepicker-content .mat-calendar{width:296px;height:354px}.mat-datepicker-content .mat-datepicker-content-container-with-custom-header .mat-calendar{height:auto}.mat-datepicker-content .mat-datepicker-close-button{position:absolute;top:100%;left:0;margin-top:8px}.ng-animating .mat-datepicker-content .mat-datepicker-close-button{display:none}.mat-datepicker-content-container{display:flex;flex-direction:column;justify-content:space-between}.mat-datepicker-content-touch{box-shadow:0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12);display:block;max-height:80vh;position:relative;overflow:visible}.mat-datepicker-content-touch .mat-datepicker-content-container{min-height:312px;max-height:788px;min-width:250px;max-width:750px}.mat-datepicker-content-touch .mat-calendar{width:100%;height:auto}@media all and (orientation: landscape){.mat-datepicker-content-touch .mat-datepicker-content-container{width:64vh;height:80vh}}@media all and (orientation: portrait){.mat-datepicker-content-touch .mat-datepicker-content-container{width:80vw;height:100vw}.mat-datepicker-content-touch .mat-datepicker-content-container-with-actions{height:115vw}}"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: i4.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "directive", type: i5.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "component", type: MatCalendar, selector: "mat-calendar", inputs: ["headerComponent", "startAt", "startView", "selected", "minDate", "maxDate", "dateFilter", "dateClass", "comparisonStart", "comparisonEnd", "startDateAccessibleName", "endDateAccessibleName"], outputs: ["selectedChange", "yearSelected", "monthSelected", "viewChanged", "_userSelection", "_userDragDrop"], exportAs: ["matCalendar"] }], animations: [matDatepickerAnimations.transformPanel, matDatepickerAnimations.fadeInCalendar], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
2450
2443
|
}
|
|
2451
2444
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0", ngImport: i0, type: MatDatepickerContent, decorators: [{
|
|
2452
2445
|
type: Component,
|
|
2453
2446
|
args: [{ selector: 'mat-datepicker-content', host: {
|
|
2454
2447
|
'class': 'mat-datepicker-content',
|
|
2448
|
+
'[class]': 'color ? "mat-" + color : ""',
|
|
2455
2449
|
'[@transformPanel]': '_animationState',
|
|
2456
2450
|
'(@transformPanel.start)': '_handleAnimationEvent($event)',
|
|
2457
2451
|
'(@transformPanel.done)': '_handleAnimationEvent($event)',
|
|
2458
2452
|
'[class.mat-datepicker-content-touch]': 'datepicker.touchUi',
|
|
2459
|
-
}, animations: [matDatepickerAnimations.transformPanel, matDatepickerAnimations.fadeInCalendar], exportAs: 'matDatepickerContent', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2453
|
+
}, animations: [matDatepickerAnimations.transformPanel, matDatepickerAnimations.fadeInCalendar], exportAs: 'matDatepickerContent', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n cdkTrapFocus\n role=\"dialog\"\n [attr.aria-modal]=\"true\"\n [attr.aria-labelledby]=\"_dialogLabelId ?? undefined\"\n class=\"mat-datepicker-content-container\"\n [class.mat-datepicker-content-container-with-custom-header]=\"datepicker.calendarHeaderComponent\"\n [class.mat-datepicker-content-container-with-actions]=\"_actionsPortal\">\n <mat-calendar\n [id]=\"datepicker.id\"\n [ngClass]=\"datepicker.panelClass\"\n [startAt]=\"datepicker.startAt\"\n [startView]=\"datepicker.startView\"\n [minDate]=\"datepicker._getMinDate()\"\n [maxDate]=\"datepicker._getMaxDate()\"\n [dateFilter]=\"datepicker._getDateFilter()\"\n [headerComponent]=\"datepicker.calendarHeaderComponent\"\n [selected]=\"_getSelected()\"\n [dateClass]=\"datepicker.dateClass\"\n [comparisonStart]=\"comparisonStart\"\n [comparisonEnd]=\"comparisonEnd\"\n [@fadeInCalendar]=\"'enter'\"\n [startDateAccessibleName]=\"startDateAccessibleName\"\n [endDateAccessibleName]=\"endDateAccessibleName\"\n (yearSelected)=\"datepicker._selectYear($event)\"\n (monthSelected)=\"datepicker._selectMonth($event)\"\n (viewChanged)=\"datepicker._viewChanged($event)\"\n (_userSelection)=\"_handleUserSelection($event)\"\n (_userDragDrop)=\"_handleUserDragDrop($event)\"></mat-calendar>\n\n <ng-template [cdkPortalOutlet]=\"_actionsPortal\"></ng-template>\n\n <!-- Invisible close button for screen reader users. -->\n <button\n type=\"button\"\n mat-raised-button\n [color]=\"color || 'primary'\"\n class=\"mat-datepicker-close-button\"\n [class.cdk-visually-hidden]=\"!_closeButtonFocused\"\n (focus)=\"_closeButtonFocused = true\"\n (blur)=\"_closeButtonFocused = false\"\n (click)=\"datepicker.close()\">{{ _closeButtonText }}</button>\n</div>\n", styles: [".mat-datepicker-content{box-shadow:0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);display:block;border-radius:4px;background-color:var(--mat-datepicker-calendar-container-background-color);color:var(--mat-datepicker-calendar-container-text-color)}.mat-datepicker-content .mat-calendar{width:296px;height:354px}.mat-datepicker-content .mat-datepicker-content-container-with-custom-header .mat-calendar{height:auto}.mat-datepicker-content .mat-datepicker-close-button{position:absolute;top:100%;left:0;margin-top:8px}.ng-animating .mat-datepicker-content .mat-datepicker-close-button{display:none}.mat-datepicker-content-container{display:flex;flex-direction:column;justify-content:space-between}.mat-datepicker-content-touch{box-shadow:0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12);display:block;max-height:80vh;position:relative;overflow:visible}.mat-datepicker-content-touch .mat-datepicker-content-container{min-height:312px;max-height:788px;min-width:250px;max-width:750px}.mat-datepicker-content-touch .mat-calendar{width:100%;height:auto}@media all and (orientation: landscape){.mat-datepicker-content-touch .mat-datepicker-content-container{width:64vh;height:80vh}}@media all and (orientation: portrait){.mat-datepicker-content-touch .mat-datepicker-content-container{width:80vw;height:100vw}.mat-datepicker-content-touch .mat-datepicker-content-container-with-actions{height:115vw}}"] }]
|
|
2460
2454
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: MatDateSelectionModel }, { type: i1$1.DateAdapter }, { type: undefined, decorators: [{
|
|
2461
2455
|
type: Optional
|
|
2462
2456
|
}, {
|
|
@@ -2465,6 +2459,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0", ngImpor
|
|
|
2465
2459
|
}] }, { type: MatDatepickerIntl }], propDecorators: { _calendar: [{
|
|
2466
2460
|
type: ViewChild,
|
|
2467
2461
|
args: [MatCalendar]
|
|
2462
|
+
}], color: [{
|
|
2463
|
+
type: Input
|
|
2468
2464
|
}] } });
|
|
2469
2465
|
/** Base class for a datepicker. */
|
|
2470
2466
|
class MatDatepickerBase {
|
|
@@ -2484,16 +2480,6 @@ class MatDatepickerBase {
|
|
|
2484
2480
|
set color(value) {
|
|
2485
2481
|
this._color = value;
|
|
2486
2482
|
}
|
|
2487
|
-
/**
|
|
2488
|
-
* Whether the calendar UI is in touch mode. In touch mode the calendar opens in a dialog rather
|
|
2489
|
-
* than a dropdown and elements have more padding to allow for bigger touch targets.
|
|
2490
|
-
*/
|
|
2491
|
-
get touchUi() {
|
|
2492
|
-
return this._touchUi;
|
|
2493
|
-
}
|
|
2494
|
-
set touchUi(value) {
|
|
2495
|
-
this._touchUi = coerceBooleanProperty(value);
|
|
2496
|
-
}
|
|
2497
2483
|
/** Whether the datepicker pop-up should be disabled. */
|
|
2498
2484
|
get disabled() {
|
|
2499
2485
|
return this._disabled === undefined && this.datepickerInput
|
|
@@ -2501,23 +2487,11 @@ class MatDatepickerBase {
|
|
|
2501
2487
|
: !!this._disabled;
|
|
2502
2488
|
}
|
|
2503
2489
|
set disabled(value) {
|
|
2504
|
-
|
|
2505
|
-
|
|
2506
|
-
this._disabled = newValue;
|
|
2490
|
+
if (value !== this._disabled) {
|
|
2491
|
+
this._disabled = value;
|
|
2507
2492
|
this.stateChanges.next(undefined);
|
|
2508
2493
|
}
|
|
2509
2494
|
}
|
|
2510
|
-
/**
|
|
2511
|
-
* Whether to restore focus to the previously-focused element when the calendar is closed.
|
|
2512
|
-
* Note that automatic focus restoration is an accessibility feature and it is recommended that
|
|
2513
|
-
* you provide your own equivalent, if you decide to turn it off.
|
|
2514
|
-
*/
|
|
2515
|
-
get restoreFocus() {
|
|
2516
|
-
return this._restoreFocus;
|
|
2517
|
-
}
|
|
2518
|
-
set restoreFocus(value) {
|
|
2519
|
-
this._restoreFocus = coerceBooleanProperty(value);
|
|
2520
|
-
}
|
|
2521
2495
|
/**
|
|
2522
2496
|
* Classes to be passed to the date picker panel.
|
|
2523
2497
|
* Supports string and string array values, similar to `ngClass`.
|
|
@@ -2533,7 +2507,12 @@ class MatDatepickerBase {
|
|
|
2533
2507
|
return this._opened;
|
|
2534
2508
|
}
|
|
2535
2509
|
set opened(value) {
|
|
2536
|
-
|
|
2510
|
+
if (value) {
|
|
2511
|
+
this.open();
|
|
2512
|
+
}
|
|
2513
|
+
else {
|
|
2514
|
+
this.close();
|
|
2515
|
+
}
|
|
2537
2516
|
}
|
|
2538
2517
|
/** The minimum selectable date. */
|
|
2539
2518
|
_getMinDate() {
|
|
@@ -2557,12 +2536,21 @@ class MatDatepickerBase {
|
|
|
2557
2536
|
this._document = inject(DOCUMENT);
|
|
2558
2537
|
/** The view that the calendar should start in. */
|
|
2559
2538
|
this.startView = 'month';
|
|
2560
|
-
|
|
2539
|
+
/**
|
|
2540
|
+
* Whether the calendar UI is in touch mode. In touch mode the calendar opens in a dialog rather
|
|
2541
|
+
* than a dropdown and elements have more padding to allow for bigger touch targets.
|
|
2542
|
+
*/
|
|
2543
|
+
this.touchUi = false;
|
|
2561
2544
|
/** Preferred position of the datepicker in the X axis. */
|
|
2562
2545
|
this.xPosition = 'start';
|
|
2563
2546
|
/** Preferred position of the datepicker in the Y axis. */
|
|
2564
2547
|
this.yPosition = 'below';
|
|
2565
|
-
|
|
2548
|
+
/**
|
|
2549
|
+
* Whether to restore focus to the previously-focused element when the calendar is closed.
|
|
2550
|
+
* Note that automatic focus restoration is an accessibility feature and it is recommended that
|
|
2551
|
+
* you provide your own equivalent, if you decide to turn it off.
|
|
2552
|
+
*/
|
|
2553
|
+
this.restoreFocus = true;
|
|
2566
2554
|
/**
|
|
2567
2555
|
* Emits selected year in multiyear view.
|
|
2568
2556
|
* This doesn't imply a change on the selected date.
|
|
@@ -2687,7 +2675,7 @@ class MatDatepickerBase {
|
|
|
2687
2675
|
if (!this._opened || this._componentRef?.instance._isAnimating) {
|
|
2688
2676
|
return;
|
|
2689
2677
|
}
|
|
2690
|
-
const canRestoreFocus = this.
|
|
2678
|
+
const canRestoreFocus = this.restoreFocus &&
|
|
2691
2679
|
this._focusedElementBeforeOpen &&
|
|
2692
2680
|
typeof this._focusedElementBeforeOpen.focus === 'function';
|
|
2693
2681
|
const completeClose = () => {
|
|
@@ -2850,7 +2838,7 @@ class MatDatepickerBase {
|
|
|
2850
2838
|
})));
|
|
2851
2839
|
}
|
|
2852
2840
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0", ngImport: i0, type: MatDatepickerBase, deps: [{ token: i9.Overlay }, { token: i0.NgZone }, { token: i0.ViewContainerRef }, { token: MAT_DATEPICKER_SCROLL_STRATEGY }, { token: i1$1.DateAdapter, optional: true }, { token: i2.Directionality, optional: true }, { token: MatDateSelectionModel }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
2853
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "
|
|
2841
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "17.0.0", type: MatDatepickerBase, inputs: { calendarHeaderComponent: "calendarHeaderComponent", startAt: "startAt", startView: "startView", color: "color", touchUi: ["touchUi", "touchUi", booleanAttribute], disabled: ["disabled", "disabled", booleanAttribute], xPosition: "xPosition", yPosition: "yPosition", restoreFocus: ["restoreFocus", "restoreFocus", booleanAttribute], dateClass: "dateClass", panelClass: "panelClass", opened: ["opened", "opened", booleanAttribute] }, outputs: { yearSelected: "yearSelected", monthSelected: "monthSelected", viewChanged: "viewChanged", openedStream: "opened", closedStream: "closed" }, usesOnChanges: true, ngImport: i0 }); }
|
|
2854
2842
|
}
|
|
2855
2843
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0", ngImport: i0, type: MatDatepickerBase, decorators: [{
|
|
2856
2844
|
type: Directive
|
|
@@ -2870,15 +2858,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0", ngImpor
|
|
|
2870
2858
|
}], color: [{
|
|
2871
2859
|
type: Input
|
|
2872
2860
|
}], touchUi: [{
|
|
2873
|
-
type: Input
|
|
2861
|
+
type: Input,
|
|
2862
|
+
args: [{ transform: booleanAttribute }]
|
|
2874
2863
|
}], disabled: [{
|
|
2875
|
-
type: Input
|
|
2864
|
+
type: Input,
|
|
2865
|
+
args: [{ transform: booleanAttribute }]
|
|
2876
2866
|
}], xPosition: [{
|
|
2877
2867
|
type: Input
|
|
2878
2868
|
}], yPosition: [{
|
|
2879
2869
|
type: Input
|
|
2880
2870
|
}], restoreFocus: [{
|
|
2881
|
-
type: Input
|
|
2871
|
+
type: Input,
|
|
2872
|
+
args: [{ transform: booleanAttribute }]
|
|
2882
2873
|
}], yearSelected: [{
|
|
2883
2874
|
type: Output
|
|
2884
2875
|
}], monthSelected: [{
|
|
@@ -2896,7 +2887,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0", ngImpor
|
|
|
2896
2887
|
}], panelClass: [{
|
|
2897
2888
|
type: Input
|
|
2898
2889
|
}], opened: [{
|
|
2899
|
-
type: Input
|
|
2890
|
+
type: Input,
|
|
2891
|
+
args: [{ transform: booleanAttribute }]
|
|
2900
2892
|
}] } });
|
|
2901
2893
|
|
|
2902
2894
|
// TODO(mmalerba): We use a component instead of a directive here so the user can use implicit
|
|
@@ -2955,7 +2947,7 @@ class MatDatepickerInputBase {
|
|
|
2955
2947
|
return !!this._disabled || this._parentDisabled();
|
|
2956
2948
|
}
|
|
2957
2949
|
set disabled(value) {
|
|
2958
|
-
const newValue =
|
|
2950
|
+
const newValue = value;
|
|
2959
2951
|
const element = this._elementRef.nativeElement;
|
|
2960
2952
|
if (this._disabled !== newValue) {
|
|
2961
2953
|
this._disabled = newValue;
|
|
@@ -3180,7 +3172,7 @@ class MatDatepickerInputBase {
|
|
|
3180
3172
|
return !filter || filter(value);
|
|
3181
3173
|
}
|
|
3182
3174
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0", ngImport: i0, type: MatDatepickerInputBase, deps: [{ token: i0.ElementRef }, { token: i1$1.DateAdapter, optional: true }, { token: MAT_DATE_FORMATS, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
3183
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "
|
|
3175
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "17.0.0", type: MatDatepickerInputBase, inputs: { value: "value", disabled: ["disabled", "disabled", booleanAttribute] }, outputs: { dateChange: "dateChange", dateInput: "dateInput" }, usesOnChanges: true, ngImport: i0 }); }
|
|
3184
3176
|
}
|
|
3185
3177
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0", ngImport: i0, type: MatDatepickerInputBase, decorators: [{
|
|
3186
3178
|
type: Directive
|
|
@@ -3194,7 +3186,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0", ngImpor
|
|
|
3194
3186
|
}] }], propDecorators: { value: [{
|
|
3195
3187
|
type: Input
|
|
3196
3188
|
}], disabled: [{
|
|
3197
|
-
type: Input
|
|
3189
|
+
type: Input,
|
|
3190
|
+
args: [{ transform: booleanAttribute }]
|
|
3198
3191
|
}], dateChange: [{
|
|
3199
3192
|
type: Output
|
|
3200
3193
|
}], dateInput: [{
|
|
@@ -3412,7 +3405,7 @@ class MatDatepickerToggle {
|
|
|
3412
3405
|
return !!this._disabled;
|
|
3413
3406
|
}
|
|
3414
3407
|
set disabled(value) {
|
|
3415
|
-
this._disabled =
|
|
3408
|
+
this._disabled = value;
|
|
3416
3409
|
}
|
|
3417
3410
|
constructor(_intl, _changeDetectorRef, defaultTabIndex) {
|
|
3418
3411
|
this._intl = _intl;
|
|
@@ -3450,7 +3443,7 @@ class MatDatepickerToggle {
|
|
|
3450
3443
|
this._stateChanges = merge(this._intl.changes, datepickerStateChanged, inputStateChanged, datepickerToggled).subscribe(() => this._changeDetectorRef.markForCheck());
|
|
3451
3444
|
}
|
|
3452
3445
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0", ngImport: i0, type: MatDatepickerToggle, deps: [{ token: MatDatepickerIntl }, { token: i0.ChangeDetectorRef }, { token: 'tabindex', attribute: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3453
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.0", type: MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: { datepicker: ["for", "datepicker"], tabIndex: "tabIndex", ariaLabel: ["aria-label", "ariaLabel"], disabled: "disabled", disableRipple: "disableRipple" }, host: { listeners: { "click": "_open($event)" }, properties: { "attr.tabindex": "null", "class.mat-datepicker-toggle-active": "datepicker && datepicker.opened", "class.mat-accent": "datepicker && datepicker.color === \"accent\"", "class.mat-warn": "datepicker && datepicker.color === \"warn\"", "attr.data-mat-calendar": "datepicker ? datepicker.id : null" }, classAttribute: "mat-datepicker-toggle" }, queries: [{ propertyName: "_customIcon", first: true, predicate: MatDatepickerToggleIcon, descendants: true }], viewQueries: [{ propertyName: "_button", first: true, predicate: ["button"], descendants: true }], exportAs: ["matDatepickerToggle"], usesOnChanges: true, ngImport: i0, template: "<button\n #button\n mat-icon-button\n type=\"button\"\n [attr.aria-haspopup]=\"datepicker ? 'dialog' : null\"\n [attr.aria-label]=\"ariaLabel || _intl.openCalendarLabel\"\n [attr.tabindex]=\"disabled ? -1 : tabIndex\"\n [disabled]=\"disabled\"\n [disableRipple]=\"disableRipple\">\n\n @if (!_customIcon) {\n <svg\n class=\"mat-datepicker-toggle-default-icon\"\n viewBox=\"0 0 24 24\"\n width=\"24px\"\n height=\"24px\"\n fill=\"currentColor\"\n focusable=\"false\"\n aria-hidden=\"true\">\n <path d=\"M19 3h-1V1h-2v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V8h14v11zM7 10h5v5H7z\"/>\n </svg>\n }\n\n <ng-content select=\"[matDatepickerToggleIcon]\"></ng-content>\n</button>\n", styles: [".mat-datepicker-toggle{pointer-events:auto;color:var(--mat-datepicker-toggle-icon-color)}.mat-datepicker-toggle-active{color:var(--mat-datepicker-toggle-active-state-icon-color)}.cdk-high-contrast-active .mat-datepicker-toggle-default-icon{color:CanvasText}"], dependencies: [{ kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
3446
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.0", type: MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: { datepicker: ["for", "datepicker"], tabIndex: "tabIndex", ariaLabel: ["aria-label", "ariaLabel"], disabled: ["disabled", "disabled", booleanAttribute], disableRipple: "disableRipple" }, host: { listeners: { "click": "_open($event)" }, properties: { "attr.tabindex": "null", "class.mat-datepicker-toggle-active": "datepicker && datepicker.opened", "class.mat-accent": "datepicker && datepicker.color === \"accent\"", "class.mat-warn": "datepicker && datepicker.color === \"warn\"", "attr.data-mat-calendar": "datepicker ? datepicker.id : null" }, classAttribute: "mat-datepicker-toggle" }, queries: [{ propertyName: "_customIcon", first: true, predicate: MatDatepickerToggleIcon, descendants: true }], viewQueries: [{ propertyName: "_button", first: true, predicate: ["button"], descendants: true }], exportAs: ["matDatepickerToggle"], usesOnChanges: true, ngImport: i0, template: "<button\n #button\n mat-icon-button\n type=\"button\"\n [attr.aria-haspopup]=\"datepicker ? 'dialog' : null\"\n [attr.aria-label]=\"ariaLabel || _intl.openCalendarLabel\"\n [attr.tabindex]=\"disabled ? -1 : tabIndex\"\n [disabled]=\"disabled\"\n [disableRipple]=\"disableRipple\">\n\n @if (!_customIcon) {\n <svg\n class=\"mat-datepicker-toggle-default-icon\"\n viewBox=\"0 0 24 24\"\n width=\"24px\"\n height=\"24px\"\n fill=\"currentColor\"\n focusable=\"false\"\n aria-hidden=\"true\">\n <path d=\"M19 3h-1V1h-2v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V8h14v11zM7 10h5v5H7z\"/>\n </svg>\n }\n\n <ng-content select=\"[matDatepickerToggleIcon]\"></ng-content>\n</button>\n", styles: [".mat-datepicker-toggle{pointer-events:auto;color:var(--mat-datepicker-toggle-icon-color)}.mat-datepicker-toggle-active{color:var(--mat-datepicker-toggle-active-state-icon-color)}.cdk-high-contrast-active .mat-datepicker-toggle-default-icon{color:CanvasText}"], dependencies: [{ kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
3454
3447
|
}
|
|
3455
3448
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0", ngImport: i0, type: MatDatepickerToggle, decorators: [{
|
|
3456
3449
|
type: Component,
|
|
@@ -3479,7 +3472,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0", ngImpor
|
|
|
3479
3472
|
type: Input,
|
|
3480
3473
|
args: ['aria-label']
|
|
3481
3474
|
}], disabled: [{
|
|
3482
|
-
type: Input
|
|
3475
|
+
type: Input,
|
|
3476
|
+
args: [{ transform: booleanAttribute }]
|
|
3483
3477
|
}], disableRipple: [{
|
|
3484
3478
|
type: Input
|
|
3485
3479
|
}], _customIcon: [{
|
|
@@ -4011,7 +4005,7 @@ class MatDateRangeInput {
|
|
|
4011
4005
|
false);
|
|
4012
4006
|
}
|
|
4013
4007
|
set required(value) {
|
|
4014
|
-
this._required =
|
|
4008
|
+
this._required = value;
|
|
4015
4009
|
}
|
|
4016
4010
|
/** Function that can be used to filter out dates within the date range picker. */
|
|
4017
4011
|
get dateFilter() {
|
|
@@ -4059,9 +4053,8 @@ class MatDateRangeInput {
|
|
|
4059
4053
|
: this._groupDisabled;
|
|
4060
4054
|
}
|
|
4061
4055
|
set disabled(value) {
|
|
4062
|
-
|
|
4063
|
-
|
|
4064
|
-
this._groupDisabled = newValue;
|
|
4056
|
+
if (value !== this._groupDisabled) {
|
|
4057
|
+
this._groupDisabled = value;
|
|
4065
4058
|
this.stateChanges.next(undefined);
|
|
4066
4059
|
}
|
|
4067
4060
|
}
|
|
@@ -4241,7 +4234,7 @@ class MatDateRangeInput {
|
|
|
4241
4234
|
return target?.ngControl?.control?.hasValidator(Validators.required);
|
|
4242
4235
|
}
|
|
4243
4236
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0", ngImport: i0, type: MatDateRangeInput, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i2$1.ControlContainer, optional: true, self: true }, { token: i1$1.DateAdapter, optional: true }, { token: MAT_FORM_FIELD, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4244
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
4237
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "17.0.0", type: MatDateRangeInput, selector: "mat-date-range-input", inputs: { rangePicker: "rangePicker", required: ["required", "required", booleanAttribute], dateFilter: "dateFilter", min: "min", max: "max", disabled: ["disabled", "disabled", booleanAttribute], separator: "separator", comparisonStart: "comparisonStart", comparisonEnd: "comparisonEnd" }, host: { attributes: { "role": "group" }, properties: { "class.mat-date-range-input-hide-placeholders": "_shouldHidePlaceholders()", "class.mat-date-range-input-required": "required", "attr.id": "id", "attr.aria-labelledby": "_getAriaLabelledby()", "attr.aria-describedby": "_ariaDescribedBy", "attr.data-mat-calendar": "rangePicker ? rangePicker.id : null" }, classAttribute: "mat-date-range-input" }, providers: [
|
|
4245
4238
|
{ provide: MatFormFieldControl, useExisting: MatDateRangeInput },
|
|
4246
4239
|
{ provide: MAT_DATE_RANGE_INPUT_PARENT, useExisting: MatDateRangeInput },
|
|
4247
4240
|
], queries: [{ propertyName: "_startInput", first: true, predicate: MatStartDate, descendants: true }, { propertyName: "_endInput", first: true, predicate: MatEndDate, descendants: true }], exportAs: ["matDateRangeInput"], usesOnChanges: true, ngImport: i0, template: "<div\n class=\"mat-date-range-input-container\"\n cdkMonitorSubtreeFocus\n (cdkFocusChange)=\"_updateFocus($event)\">\n <div class=\"mat-date-range-input-wrapper\">\n <ng-content select=\"input[matStartDate]\"></ng-content>\n <span\n class=\"mat-date-range-input-mirror\"\n aria-hidden=\"true\">{{_getInputMirrorValue('start')}}</span>\n </div>\n\n <span\n class=\"mat-date-range-input-separator\"\n [class.mat-date-range-input-separator-hidden]=\"_shouldHideSeparator()\">{{separator}}</span>\n\n <div class=\"mat-date-range-input-wrapper mat-date-range-input-end-wrapper\">\n <ng-content select=\"input[matEndDate]\"></ng-content>\n <span\n class=\"mat-date-range-input-mirror\"\n aria-hidden=\"true\">{{_getInputMirrorValue('end')}}</span>\n </div>\n</div>\n\n", styles: [".mat-date-range-input{display:block;width:100%}.mat-date-range-input-container{display:flex;align-items:center}.mat-date-range-input-separator{transition:opacity 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1);margin:0 4px;color:var(--mat-datepicker-range-input-separator-color)}.mat-form-field-disabled .mat-date-range-input-separator{color:var(--mat-datepicker-range-input-disabled-state-separator-color)}._mat-animation-noopable .mat-date-range-input-separator{transition:none}.mat-date-range-input-separator-hidden{-webkit-user-select:none;user-select:none;opacity:0;transition:none}.mat-date-range-input-wrapper{position:relative;overflow:hidden;max-width:calc(50% - 4px)}.mat-date-range-input-end-wrapper{flex-grow:1}.mat-date-range-input-inner{position:absolute;top:0;left:0;font:inherit;background:rgba(0,0,0,0);color:currentColor;border:none;outline:none;padding:0;margin:0;vertical-align:bottom;text-align:inherit;-webkit-appearance:none;width:100%;height:100%}.mat-date-range-input-inner:-moz-ui-invalid{box-shadow:none}.mat-date-range-input-inner::placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-date-range-input-inner::-moz-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-date-range-input-inner::-webkit-input-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-date-range-input-inner:-ms-input-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-date-range-input-inner[disabled]{color:var(--mat-datepicker-range-input-disabled-state-text-color)}.mat-form-field-hide-placeholder .mat-date-range-input-inner::placeholder,.mat-date-range-input-hide-placeholders .mat-date-range-input-inner::placeholder{-webkit-user-select:none;user-select:none;color:rgba(0,0,0,0) !important;-webkit-text-fill-color:rgba(0,0,0,0);transition:none}.cdk-high-contrast-active .mat-form-field-hide-placeholder .mat-date-range-input-inner::placeholder,.cdk-high-contrast-active .mat-date-range-input-hide-placeholders .mat-date-range-input-inner::placeholder{opacity:0}.mat-form-field-hide-placeholder .mat-date-range-input-inner::-moz-placeholder,.mat-date-range-input-hide-placeholders .mat-date-range-input-inner::-moz-placeholder{-webkit-user-select:none;user-select:none;color:rgba(0,0,0,0) !important;-webkit-text-fill-color:rgba(0,0,0,0);transition:none}.cdk-high-contrast-active .mat-form-field-hide-placeholder .mat-date-range-input-inner::-moz-placeholder,.cdk-high-contrast-active .mat-date-range-input-hide-placeholders .mat-date-range-input-inner::-moz-placeholder{opacity:0}.mat-form-field-hide-placeholder .mat-date-range-input-inner::-webkit-input-placeholder,.mat-date-range-input-hide-placeholders .mat-date-range-input-inner::-webkit-input-placeholder{-webkit-user-select:none;user-select:none;color:rgba(0,0,0,0) !important;-webkit-text-fill-color:rgba(0,0,0,0);transition:none}.cdk-high-contrast-active .mat-form-field-hide-placeholder .mat-date-range-input-inner::-webkit-input-placeholder,.cdk-high-contrast-active .mat-date-range-input-hide-placeholders .mat-date-range-input-inner::-webkit-input-placeholder{opacity:0}.mat-form-field-hide-placeholder .mat-date-range-input-inner:-ms-input-placeholder,.mat-date-range-input-hide-placeholders .mat-date-range-input-inner:-ms-input-placeholder{-webkit-user-select:none;user-select:none;color:rgba(0,0,0,0) !important;-webkit-text-fill-color:rgba(0,0,0,0);transition:none}.cdk-high-contrast-active .mat-form-field-hide-placeholder .mat-date-range-input-inner:-ms-input-placeholder,.cdk-high-contrast-active .mat-date-range-input-hide-placeholders .mat-date-range-input-inner:-ms-input-placeholder{opacity:0}._mat-animation-noopable .mat-date-range-input-inner::placeholder{transition:none}._mat-animation-noopable .mat-date-range-input-inner::-moz-placeholder{transition:none}._mat-animation-noopable .mat-date-range-input-inner::-webkit-input-placeholder{transition:none}._mat-animation-noopable .mat-date-range-input-inner:-ms-input-placeholder{transition:none}.mat-date-range-input-mirror{-webkit-user-select:none;user-select:none;visibility:hidden;white-space:nowrap;display:inline-block;min-width:2px}.mat-mdc-form-field-type-mat-date-range-input .mat-mdc-form-field-infix{width:200px}"], dependencies: [{ kind: "directive", type: i4.CdkMonitorFocus, selector: "[cdkMonitorElementFocus], [cdkMonitorSubtreeFocus]", outputs: ["cdkFocusChange"], exportAs: ["cdkMonitorFocus"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
@@ -4277,7 +4270,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0", ngImpor
|
|
|
4277
4270
|
}] }], propDecorators: { rangePicker: [{
|
|
4278
4271
|
type: Input
|
|
4279
4272
|
}], required: [{
|
|
4280
|
-
type: Input
|
|
4273
|
+
type: Input,
|
|
4274
|
+
args: [{ transform: booleanAttribute }]
|
|
4281
4275
|
}], dateFilter: [{
|
|
4282
4276
|
type: Input
|
|
4283
4277
|
}], min: [{
|
|
@@ -4285,7 +4279,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0", ngImpor
|
|
|
4285
4279
|
}], max: [{
|
|
4286
4280
|
type: Input
|
|
4287
4281
|
}], disabled: [{
|
|
4288
|
-
type: Input
|
|
4282
|
+
type: Input,
|
|
4283
|
+
args: [{ transform: booleanAttribute }]
|
|
4289
4284
|
}], separator: [{
|
|
4290
4285
|
type: Input
|
|
4291
4286
|
}], comparisonStart: [{
|