@angular/material 19.0.0-next.9 → 19.0.0-rc.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/_autocomplete-theme.scss +8 -4
- package/autocomplete/index.d.ts +5 -6
- package/badge/_badge-theme.scss +10 -6
- package/bottom-sheet/_bottom-sheet-theme.scss +8 -4
- package/button/_button-theme.scss +10 -6
- package/button/_fab-theme.scss +10 -6
- package/button/_icon-button-theme.scss +8 -4
- package/button/index.d.ts +1 -1
- package/button-toggle/_button-toggle-theme.scss +11 -6
- package/card/_card-theme.scss +8 -4
- package/card/index.d.ts +2 -3
- package/checkbox/_checkbox-theme.scss +10 -6
- package/chips/_chips-theme.scss +10 -6
- package/core/_core-theme.scss +4 -7
- package/core/_core.scss +2 -5
- package/core/option/_optgroup-theme.scss +8 -4
- package/core/option/_option-theme.scss +10 -6
- package/core/ripple/_ripple-theme.scss +8 -4
- package/core/selection/pseudo-checkbox/_pseudo-checkbox-theme.scss +10 -6
- package/core/theming/_config-validation.scss +4 -4
- package/core/theming/_definition.scss +12 -2
- package/core/tokens/_m3-system.scss +55 -39
- package/datepicker/_datepicker-theme.scss +10 -6
- package/datepicker/index.d.ts +32 -33
- package/dialog/_dialog-theme.scss +8 -4
- package/divider/_divider-theme.scss +8 -4
- package/expansion/_expansion-theme.scss +8 -4
- package/fesm2022/autocomplete/testing.mjs +2 -5
- package/fesm2022/autocomplete/testing.mjs.map +1 -1
- package/fesm2022/autocomplete.mjs +220 -141
- package/fesm2022/autocomplete.mjs.map +1 -1
- package/fesm2022/badge/testing.mjs +2 -5
- package/fesm2022/badge/testing.mjs.map +1 -1
- package/fesm2022/badge.mjs +41 -30
- package/fesm2022/badge.mjs.map +1 -1
- package/fesm2022/bottom-sheet/testing.mjs +1 -1
- package/fesm2022/bottom-sheet/testing.mjs.map +1 -1
- package/fesm2022/bottom-sheet.mjs +76 -54
- package/fesm2022/bottom-sheet.mjs.map +1 -1
- package/fesm2022/button/testing.mjs +2 -2
- package/fesm2022/button/testing.mjs.map +1 -1
- package/fesm2022/button-toggle/testing.mjs +4 -7
- package/fesm2022/button-toggle/testing.mjs.map +1 -1
- package/fesm2022/button-toggle.mjs +78 -40
- package/fesm2022/button-toggle.mjs.map +1 -1
- package/fesm2022/button.mjs +87 -60
- package/fesm2022/button.mjs.map +1 -1
- package/fesm2022/card/testing.mjs +3 -6
- package/fesm2022/card/testing.mjs.map +1 -1
- package/fesm2022/card.mjs +38 -40
- package/fesm2022/card.mjs.map +1 -1
- package/fesm2022/checkbox/testing.mjs +4 -7
- package/fesm2022/checkbox/testing.mjs.map +1 -1
- package/fesm2022/checkbox.mjs +99 -56
- package/fesm2022/checkbox.mjs.map +1 -1
- package/fesm2022/chips/testing.mjs +11 -14
- package/fesm2022/chips/testing.mjs.map +1 -1
- package/fesm2022/chips.mjs +303 -251
- package/fesm2022/chips.mjs.map +1 -1
- package/fesm2022/core/testing.mjs +5 -11
- package/fesm2022/core/testing.mjs.map +1 -1
- package/fesm2022/core.mjs +217 -160
- package/fesm2022/core.mjs.map +1 -1
- package/fesm2022/datepicker/testing.mjs +13 -22
- package/fesm2022/datepicker/testing.mjs.map +1 -1
- package/fesm2022/datepicker.mjs +788 -533
- package/fesm2022/datepicker.mjs.map +1 -1
- package/fesm2022/dialog/testing.mjs +15 -9
- package/fesm2022/dialog/testing.mjs.map +1 -1
- package/fesm2022/dialog.mjs +210 -140
- package/fesm2022/dialog.mjs.map +1 -1
- package/fesm2022/divider/testing.mjs +1 -1
- package/fesm2022/divider/testing.mjs.map +1 -1
- package/fesm2022/divider.mjs +7 -9
- package/fesm2022/divider.mjs.map +1 -1
- package/fesm2022/expansion/testing.mjs +7 -10
- package/fesm2022/expansion/testing.mjs.map +1 -1
- package/fesm2022/expansion.mjs +76 -65
- package/fesm2022/expansion.mjs.map +1 -1
- package/fesm2022/form-field/testing.mjs +12 -15
- package/fesm2022/form-field/testing.mjs.map +1 -1
- package/fesm2022/form-field.mjs +165 -111
- package/fesm2022/form-field.mjs.map +1 -1
- package/fesm2022/grid-list/testing.mjs +11 -17
- package/fesm2022/grid-list/testing.mjs.map +1 -1
- package/fesm2022/grid-list.mjs +65 -43
- package/fesm2022/grid-list.mjs.map +1 -1
- package/fesm2022/icon/testing.mjs +6 -6
- package/fesm2022/icon/testing.mjs.map +1 -1
- package/fesm2022/icon.mjs +62 -42
- package/fesm2022/icon.mjs.map +1 -1
- package/fesm2022/input/testing.mjs +3 -3
- package/fesm2022/input/testing.mjs.map +1 -1
- package/fesm2022/input.mjs +101 -69
- package/fesm2022/input.mjs.map +1 -1
- package/fesm2022/list/testing.mjs +21 -38
- package/fesm2022/list/testing.mjs.map +1 -1
- package/fesm2022/list.mjs +175 -164
- package/fesm2022/list.mjs.map +1 -1
- package/fesm2022/menu/testing.mjs +3 -6
- package/fesm2022/menu/testing.mjs.map +1 -1
- package/fesm2022/menu.mjs +171 -118
- package/fesm2022/menu.mjs.map +1 -1
- package/fesm2022/paginator/testing.mjs +10 -13
- package/fesm2022/paginator/testing.mjs.map +1 -1
- package/fesm2022/paginator.mjs +79 -54
- package/fesm2022/paginator.mjs.map +1 -1
- package/fesm2022/progress-bar/testing.mjs +1 -1
- package/fesm2022/progress-bar/testing.mjs.map +1 -1
- package/fesm2022/progress-bar.mjs +33 -32
- package/fesm2022/progress-bar.mjs.map +1 -1
- package/fesm2022/progress-spinner/testing.mjs +1 -1
- package/fesm2022/progress-spinner/testing.mjs.map +1 -1
- package/fesm2022/progress-spinner.mjs +25 -11
- package/fesm2022/progress-spinner.mjs.map +1 -1
- package/fesm2022/radio/testing.mjs +6 -12
- package/fesm2022/radio/testing.mjs.map +1 -1
- package/fesm2022/radio.mjs +119 -82
- package/fesm2022/radio.mjs.map +1 -1
- package/fesm2022/select/testing.mjs +6 -9
- package/fesm2022/select/testing.mjs.map +1 -1
- package/fesm2022/select.mjs +215 -177
- package/fesm2022/select.mjs.map +1 -1
- package/fesm2022/sidenav/testing.mjs +6 -6
- package/fesm2022/sidenav/testing.mjs.map +1 -1
- package/fesm2022/sidenav.mjs +125 -112
- package/fesm2022/sidenav.mjs.map +1 -1
- package/fesm2022/slide-toggle/testing.mjs +3 -6
- package/fesm2022/slide-toggle/testing.mjs.map +1 -1
- package/fesm2022/slide-toggle.mjs +72 -41
- package/fesm2022/slide-toggle.mjs.map +1 -1
- package/fesm2022/slider/testing.mjs +2 -2
- package/fesm2022/slider/testing.mjs.map +1 -1
- package/fesm2022/slider.mjs +255 -185
- package/fesm2022/slider.mjs.map +1 -1
- package/fesm2022/snack-bar/testing.mjs +4 -7
- package/fesm2022/snack-bar/testing.mjs.map +1 -1
- package/fesm2022/snack-bar.mjs +133 -98
- package/fesm2022/snack-bar.mjs.map +1 -1
- package/fesm2022/sort/testing.mjs +3 -6
- package/fesm2022/sort/testing.mjs.map +1 -1
- package/fesm2022/sort.mjs +89 -68
- package/fesm2022/sort.mjs.map +1 -1
- package/fesm2022/stepper/testing.mjs +4 -4
- package/fesm2022/stepper/testing.mjs.map +1 -1
- package/fesm2022/stepper.mjs +133 -95
- package/fesm2022/stepper.mjs.map +1 -1
- package/fesm2022/table/testing.mjs +13 -25
- package/fesm2022/table/testing.mjs.map +1 -1
- package/fesm2022/table.mjs +164 -159
- package/fesm2022/table.mjs.map +1 -1
- package/fesm2022/tabs/testing.mjs +5 -5
- package/fesm2022/tabs/testing.mjs.map +1 -1
- package/fesm2022/tabs.mjs +308 -225
- package/fesm2022/tabs.mjs.map +1 -1
- package/fesm2022/timepicker/testing.mjs +7 -16
- package/fesm2022/timepicker/testing.mjs.map +1 -1
- package/fesm2022/timepicker.mjs +152 -146
- package/fesm2022/timepicker.mjs.map +1 -1
- package/fesm2022/toolbar/testing.mjs +2 -5
- package/fesm2022/toolbar/testing.mjs.map +1 -1
- package/fesm2022/toolbar.mjs +22 -12
- package/fesm2022/toolbar.mjs.map +1 -1
- package/fesm2022/tooltip/testing.mjs +6 -9
- package/fesm2022/tooltip/testing.mjs.map +1 -1
- package/fesm2022/tooltip.mjs +93 -69
- package/fesm2022/tooltip.mjs.map +1 -1
- package/fesm2022/tree/testing.mjs +3 -6
- package/fesm2022/tree/testing.mjs.map +1 -1
- package/fesm2022/tree.mjs +48 -46
- package/fesm2022/tree.mjs.map +1 -1
- package/form-field/_form-field-theme.scss +9 -5
- package/form-field/index.d.ts +8 -9
- package/grid-list/_grid-list-theme.scss +8 -4
- package/icon/_icon-theme.scss +10 -6
- package/input/_input-theme.scss +8 -4
- package/list/_list-theme.scss +8 -4
- package/list/index.d.ts +20 -21
- package/menu/_menu-theme.scss +8 -4
- package/menu/index.d.ts +8 -9
- package/package.json +2 -2
- package/paginator/_paginator-theme.scss +8 -4
- package/prebuilt-themes/azure-blue.css +1 -1
- package/prebuilt-themes/cyan-orange.css +1 -1
- package/prebuilt-themes/deeppurple-amber.css +1 -1
- package/prebuilt-themes/indigo-pink.css +1 -1
- package/prebuilt-themes/magenta-violet.css +1 -1
- package/prebuilt-themes/pink-bluegrey.css +1 -1
- package/prebuilt-themes/purple-green.css +1 -1
- package/prebuilt-themes/rose-red.css +1 -1
- package/progress-bar/_progress-bar-theme.scss +11 -9
- package/progress-spinner/_progress-spinner-theme.scss +11 -9
- package/progress-spinner/index.d.ts +3 -4
- package/radio/_radio-theme.scss +10 -6
- package/radio/index.d.ts +2 -3
- package/schematics/ng-add/index.js +1 -1
- package/schematics/ng-add/index.mjs +1 -1
- package/schematics/ng-add/theming/create-custom-theme.js +1 -6
- package/schematics/ng-add/theming/create-custom-theme.mjs +1 -6
- package/schematics/ng-generate/theme-color/index_bundled.js +35 -9
- package/schematics/ng-generate/theme-color/index_bundled.js.map +2 -2
- package/schematics/ng-update/index_bundled.js +6 -1
- package/schematics/ng-update/index_bundled.js.map +1 -1
- package/select/_select-theme.scss +10 -6
- package/select/index.d.ts +6 -7
- package/sidenav/_sidenav-theme.scss +8 -4
- package/slide-toggle/_slide-toggle-theme.scss +10 -6
- package/slider/_slider-theme.scss +10 -6
- package/snack-bar/_snack-bar-theme.scss +10 -6
- package/sort/_sort-theme.scss +8 -4
- package/stepper/_stepper-theme.scss +10 -6
- package/stepper/index.d.ts +14 -15
- package/table/_table-theme.scss +8 -4
- package/tabs/_tabs-theme.scss +10 -6
- package/timepicker/_timepicker-theme.scss +10 -6
- package/toolbar/_toolbar-theme.scss +10 -6
- package/tooltip/_tooltip-theme.scss +8 -4
- package/tooltip/index.d.ts +5 -6
- package/tree/_tree-theme.scss +8 -4
package/fesm2022/core.mjs
CHANGED
|
@@ -6,25 +6,25 @@ import { Subject } from 'rxjs';
|
|
|
6
6
|
import { startWith } from 'rxjs/operators';
|
|
7
7
|
import { normalizePassiveListenerOptions, _getEventTarget, Platform } from '@angular/cdk/platform';
|
|
8
8
|
import { coerceElement } from '@angular/cdk/coercion';
|
|
9
|
-
import { _CdkPrivateStyleLoader } from '@angular/cdk/private';
|
|
9
|
+
import { _CdkPrivateStyleLoader, _VisuallyHiddenLoader } from '@angular/cdk/private';
|
|
10
10
|
import { ENTER, SPACE, hasModifierKey } from '@angular/cdk/keycodes';
|
|
11
11
|
import { DOCUMENT } from '@angular/common';
|
|
12
12
|
|
|
13
13
|
/** Current version of Angular Material. */
|
|
14
|
-
const VERSION = new Version('19.0.0-
|
|
14
|
+
const VERSION = new Version('19.0.0-rc.0');
|
|
15
15
|
|
|
16
16
|
/** @docs-private */
|
|
17
17
|
class AnimationCurves {
|
|
18
|
-
static
|
|
19
|
-
static
|
|
20
|
-
static
|
|
21
|
-
static
|
|
18
|
+
static STANDARD_CURVE = 'cubic-bezier(0.4,0.0,0.2,1)';
|
|
19
|
+
static DECELERATION_CURVE = 'cubic-bezier(0.0,0.0,0.2,1)';
|
|
20
|
+
static ACCELERATION_CURVE = 'cubic-bezier(0.4,0.0,1,1)';
|
|
21
|
+
static SHARP_CURVE = 'cubic-bezier(0.4,0.0,0.6,1)';
|
|
22
22
|
}
|
|
23
23
|
/** @docs-private */
|
|
24
24
|
class AnimationDurations {
|
|
25
|
-
static
|
|
26
|
-
static
|
|
27
|
-
static
|
|
25
|
+
static COMPLEX = '375ms';
|
|
26
|
+
static ENTERING = '225ms';
|
|
27
|
+
static EXITING = '195ms';
|
|
28
28
|
}
|
|
29
29
|
|
|
30
30
|
/**
|
|
@@ -50,9 +50,9 @@ class MatCommonModule {
|
|
|
50
50
|
// in MatCommonModule.
|
|
51
51
|
inject(HighContrastModeDetector)._applyBodyHighContrastModeCssClasses();
|
|
52
52
|
}
|
|
53
|
-
static
|
|
54
|
-
static
|
|
55
|
-
static
|
|
53
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatCommonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
54
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatCommonModule, imports: [BidiModule], exports: [BidiModule] });
|
|
55
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatCommonModule, imports: [BidiModule, BidiModule] });
|
|
56
56
|
}
|
|
57
57
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatCommonModule, decorators: [{
|
|
58
58
|
type: NgModule,
|
|
@@ -67,14 +67,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10",
|
|
|
67
67
|
* @docs-private
|
|
68
68
|
*/
|
|
69
69
|
class _ErrorStateTracker {
|
|
70
|
+
_defaultMatcher;
|
|
71
|
+
ngControl;
|
|
72
|
+
_parentFormGroup;
|
|
73
|
+
_parentForm;
|
|
74
|
+
_stateChanges;
|
|
75
|
+
/** Whether the tracker is currently in an error state. */
|
|
76
|
+
errorState = false;
|
|
77
|
+
/** User-defined matcher for the error state. */
|
|
78
|
+
matcher;
|
|
70
79
|
constructor(_defaultMatcher, ngControl, _parentFormGroup, _parentForm, _stateChanges) {
|
|
71
80
|
this._defaultMatcher = _defaultMatcher;
|
|
72
81
|
this.ngControl = ngControl;
|
|
73
82
|
this._parentFormGroup = _parentFormGroup;
|
|
74
83
|
this._parentForm = _parentForm;
|
|
75
84
|
this._stateChanges = _stateChanges;
|
|
76
|
-
/** Whether the tracker is currently in an error state. */
|
|
77
|
-
this.errorState = false;
|
|
78
85
|
}
|
|
79
86
|
/** Updates the error state based on the provided error state matcher. */
|
|
80
87
|
updateErrorState() {
|
|
@@ -102,11 +109,11 @@ function MAT_DATE_LOCALE_FACTORY() {
|
|
|
102
109
|
const NOT_IMPLEMENTED = 'Method not implemented';
|
|
103
110
|
/** Adapts type `D` to be usable as a date by cdk-based components that work with dates. */
|
|
104
111
|
class DateAdapter {
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
112
|
+
/** The locale to use for all dates. */
|
|
113
|
+
locale;
|
|
114
|
+
_localeChanges = new Subject();
|
|
115
|
+
/** A stream that emits when the locale changes. */
|
|
116
|
+
localeChanges = this._localeChanges;
|
|
110
117
|
/**
|
|
111
118
|
* Sets the time of one date to the time of another.
|
|
112
119
|
* @param target Date whose time will be set.
|
|
@@ -299,15 +306,15 @@ function range(length, valueFunction) {
|
|
|
299
306
|
}
|
|
300
307
|
/** Adapts the native JS Date for use with cdk-based components that work with dates. */
|
|
301
308
|
class NativeDateAdapter extends DateAdapter {
|
|
309
|
+
/**
|
|
310
|
+
* @deprecated No longer being used. To be removed.
|
|
311
|
+
* @breaking-change 14.0.0
|
|
312
|
+
*/
|
|
313
|
+
useUtcForDisplay = false;
|
|
314
|
+
/** The injected locale. */
|
|
315
|
+
_matDateLocale = inject(MAT_DATE_LOCALE, { optional: true });
|
|
302
316
|
constructor() {
|
|
303
317
|
super();
|
|
304
|
-
/**
|
|
305
|
-
* @deprecated No longer being used. To be removed.
|
|
306
|
-
* @breaking-change 14.0.0
|
|
307
|
-
*/
|
|
308
|
-
this.useUtcForDisplay = false;
|
|
309
|
-
/** The injected locale. */
|
|
310
|
-
this._matDateLocale = inject(MAT_DATE_LOCALE, { optional: true });
|
|
311
318
|
const matDateLocale = inject(MAT_DATE_LOCALE, { optional: true });
|
|
312
319
|
if (matDateLocale !== undefined) {
|
|
313
320
|
this._matDateLocale = matDateLocale;
|
|
@@ -569,8 +576,8 @@ class NativeDateAdapter extends DateAdapter {
|
|
|
569
576
|
}
|
|
570
577
|
return null;
|
|
571
578
|
}
|
|
572
|
-
static
|
|
573
|
-
static
|
|
579
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: NativeDateAdapter, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
580
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: NativeDateAdapter });
|
|
574
581
|
}
|
|
575
582
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: NativeDateAdapter, decorators: [{
|
|
576
583
|
type: Injectable
|
|
@@ -596,9 +603,9 @@ const MAT_NATIVE_DATE_FORMATS = {
|
|
|
596
603
|
};
|
|
597
604
|
|
|
598
605
|
class NativeDateModule {
|
|
599
|
-
static
|
|
600
|
-
static
|
|
601
|
-
static
|
|
606
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: NativeDateModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
607
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.10", ngImport: i0, type: NativeDateModule });
|
|
608
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: NativeDateModule, providers: [{ provide: DateAdapter, useClass: NativeDateAdapter }] });
|
|
602
609
|
}
|
|
603
610
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: NativeDateModule, decorators: [{
|
|
604
611
|
type: NgModule,
|
|
@@ -607,9 +614,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10",
|
|
|
607
614
|
}]
|
|
608
615
|
}] });
|
|
609
616
|
class MatNativeDateModule {
|
|
610
|
-
static
|
|
611
|
-
static
|
|
612
|
-
static
|
|
617
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatNativeDateModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
618
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatNativeDateModule });
|
|
619
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatNativeDateModule, providers: [provideNativeDateAdapter()] });
|
|
613
620
|
}
|
|
614
621
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatNativeDateModule, decorators: [{
|
|
615
622
|
type: NgModule,
|
|
@@ -629,8 +636,8 @@ class ShowOnDirtyErrorStateMatcher {
|
|
|
629
636
|
isErrorState(control, form) {
|
|
630
637
|
return !!(control && control.invalid && (control.dirty || (form && form.submitted)));
|
|
631
638
|
}
|
|
632
|
-
static
|
|
633
|
-
static
|
|
639
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: ShowOnDirtyErrorStateMatcher, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
640
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: ShowOnDirtyErrorStateMatcher });
|
|
634
641
|
}
|
|
635
642
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: ShowOnDirtyErrorStateMatcher, decorators: [{
|
|
636
643
|
type: Injectable
|
|
@@ -640,8 +647,8 @@ class ErrorStateMatcher {
|
|
|
640
647
|
isErrorState(control, form) {
|
|
641
648
|
return !!(control && control.invalid && (control.touched || (form && form.submitted)));
|
|
642
649
|
}
|
|
643
|
-
static
|
|
644
|
-
static
|
|
650
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: ErrorStateMatcher, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
651
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: ErrorStateMatcher, providedIn: 'root' });
|
|
645
652
|
}
|
|
646
653
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: ErrorStateMatcher, decorators: [{
|
|
647
654
|
type: Injectable,
|
|
@@ -653,8 +660,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10",
|
|
|
653
660
|
* @docs-private
|
|
654
661
|
*/
|
|
655
662
|
class _StructuralStylesLoader {
|
|
656
|
-
static
|
|
657
|
-
static
|
|
663
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: _StructuralStylesLoader, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
664
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.0-next.10", type: _StructuralStylesLoader, isStandalone: true, selector: "structural-styles", ngImport: i0, template: '', isInline: true, styles: [".mat-focus-indicator{position:relative}.mat-focus-indicator::before{top:0;left:0;right:0;bottom:0;position:absolute;box-sizing:border-box;pointer-events:none;display:var(--mat-focus-indicator-display, none);border-width:var(--mat-focus-indicator-border-width, 3px);border-style:var(--mat-focus-indicator-border-style, solid);border-color:var(--mat-focus-indicator-border-color, transparent);border-radius:var(--mat-focus-indicator-border-radius, 4px)}.mat-focus-indicator:focus::before{content:\"\"}@media(forced-colors: active){html{--mat-focus-indicator-display: block}}"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
658
665
|
}
|
|
659
666
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: _StructuralStylesLoader, decorators: [{
|
|
660
667
|
type: Component,
|
|
@@ -667,8 +674,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10",
|
|
|
667
674
|
* counted by checking the query list's length.
|
|
668
675
|
*/
|
|
669
676
|
class MatLine {
|
|
670
|
-
static
|
|
671
|
-
static
|
|
677
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatLine, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
678
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-next.10", type: MatLine, isStandalone: true, selector: "[mat-line], [matLine]", host: { classAttribute: "mat-line" }, ngImport: i0 });
|
|
672
679
|
}
|
|
673
680
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatLine, decorators: [{
|
|
674
681
|
type: Directive,
|
|
@@ -701,9 +708,9 @@ function setClass(element, className, isAdd) {
|
|
|
701
708
|
element.nativeElement.classList.toggle(className, isAdd);
|
|
702
709
|
}
|
|
703
710
|
class MatLineModule {
|
|
704
|
-
static
|
|
705
|
-
static
|
|
706
|
-
static
|
|
711
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatLineModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
712
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatLineModule, imports: [MatCommonModule, MatLine], exports: [MatLine, MatCommonModule] });
|
|
713
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatLineModule, imports: [MatCommonModule, MatCommonModule] });
|
|
707
714
|
}
|
|
708
715
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatLineModule, decorators: [{
|
|
709
716
|
type: NgModule,
|
|
@@ -725,6 +732,12 @@ var RippleState;
|
|
|
725
732
|
* Reference to a previously launched ripple element.
|
|
726
733
|
*/
|
|
727
734
|
class RippleRef {
|
|
735
|
+
_renderer;
|
|
736
|
+
element;
|
|
737
|
+
config;
|
|
738
|
+
_animationForciblyDisabledThroughCss;
|
|
739
|
+
/** Current state of the ripple. */
|
|
740
|
+
state = RippleState.HIDDEN;
|
|
728
741
|
constructor(_renderer,
|
|
729
742
|
/** Reference to the ripple HTML element. */
|
|
730
743
|
element,
|
|
@@ -736,8 +749,6 @@ class RippleRef {
|
|
|
736
749
|
this.element = element;
|
|
737
750
|
this.config = config;
|
|
738
751
|
this._animationForciblyDisabledThroughCss = _animationForciblyDisabledThroughCss;
|
|
739
|
-
/** Current state of the ripple. */
|
|
740
|
-
this.state = RippleState.HIDDEN;
|
|
741
752
|
}
|
|
742
753
|
/** Fades out the ripple element. */
|
|
743
754
|
fadeOut() {
|
|
@@ -752,20 +763,7 @@ const passiveCapturingEventOptions$1 = normalizePassiveListenerOptions({
|
|
|
752
763
|
});
|
|
753
764
|
/** Manages events through delegation so that as few event handlers as possible are bound. */
|
|
754
765
|
class RippleEventManager {
|
|
755
|
-
|
|
756
|
-
this._events = new Map();
|
|
757
|
-
/** Event handler that is bound and which dispatches the events to the different targets. */
|
|
758
|
-
this._delegateEventHandler = (event) => {
|
|
759
|
-
const target = _getEventTarget(event);
|
|
760
|
-
if (target) {
|
|
761
|
-
this._events.get(event.type)?.forEach((handlers, element) => {
|
|
762
|
-
if (element === target || element.contains(target)) {
|
|
763
|
-
handlers.forEach(handler => handler.handleEvent(event));
|
|
764
|
-
}
|
|
765
|
-
});
|
|
766
|
-
}
|
|
767
|
-
};
|
|
768
|
-
}
|
|
766
|
+
_events = new Map();
|
|
769
767
|
/** Adds an event handler. */
|
|
770
768
|
addHandler(ngZone, name, element, handler) {
|
|
771
769
|
const handlersForEvent = this._events.get(name);
|
|
@@ -804,6 +802,17 @@ class RippleEventManager {
|
|
|
804
802
|
document.removeEventListener(name, this._delegateEventHandler, passiveCapturingEventOptions$1);
|
|
805
803
|
}
|
|
806
804
|
}
|
|
805
|
+
/** Event handler that is bound and which dispatches the events to the different targets. */
|
|
806
|
+
_delegateEventHandler = (event) => {
|
|
807
|
+
const target = _getEventTarget(event);
|
|
808
|
+
if (target) {
|
|
809
|
+
this._events.get(event.type)?.forEach((handlers, element) => {
|
|
810
|
+
if (element === target || element.contains(target)) {
|
|
811
|
+
handlers.forEach(handler => handler.handleEvent(event));
|
|
812
|
+
}
|
|
813
|
+
});
|
|
814
|
+
}
|
|
815
|
+
};
|
|
807
816
|
}
|
|
808
817
|
|
|
809
818
|
/**
|
|
@@ -829,8 +838,8 @@ const pointerDownEvents = ['mousedown', 'touchstart'];
|
|
|
829
838
|
/** Events that signal that the pointer is up. */
|
|
830
839
|
const pointerUpEvents = ['mouseup', 'mouseleave', 'touchend', 'touchcancel'];
|
|
831
840
|
class _MatRippleStylesLoader {
|
|
832
|
-
static
|
|
833
|
-
static
|
|
841
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: _MatRippleStylesLoader, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
842
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.0-next.10", type: _MatRippleStylesLoader, isStandalone: true, selector: "ng-component", host: { attributes: { "mat-ripple-style-loader": "" } }, ngImport: i0, template: '', isInline: true, styles: [".mat-ripple{overflow:hidden;position:relative}.mat-ripple:not(:empty){transform:translateZ(0)}.mat-ripple.mat-ripple-unbounded{overflow:visible}.mat-ripple-element{position:absolute;border-radius:50%;pointer-events:none;transition:opacity,transform 0ms cubic-bezier(0, 0, 0.2, 1);transform:scale3d(0, 0, 0);background-color:var(--mat-ripple-color, color-mix(in srgb, var(--mat-sys-on-surface) 10%, transparent))}@media(forced-colors: active){.mat-ripple-element{display:none}}.cdk-drag-preview .mat-ripple-element,.cdk-drag-placeholder .mat-ripple-element{display:none}"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
834
843
|
}
|
|
835
844
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: _MatRippleStylesLoader, decorators: [{
|
|
836
845
|
type: Component,
|
|
@@ -844,22 +853,38 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10",
|
|
|
844
853
|
* @docs-private
|
|
845
854
|
*/
|
|
846
855
|
class RippleRenderer {
|
|
847
|
-
|
|
856
|
+
_target;
|
|
857
|
+
_ngZone;
|
|
858
|
+
_platform;
|
|
859
|
+
/** Element where the ripples are being added to. */
|
|
860
|
+
_containerElement;
|
|
861
|
+
/** Element which triggers the ripple elements on mouse events. */
|
|
862
|
+
_triggerElement;
|
|
863
|
+
/** Whether the pointer is currently down or not. */
|
|
864
|
+
_isPointerDown = false;
|
|
865
|
+
/**
|
|
866
|
+
* Map of currently active ripple references.
|
|
867
|
+
* The ripple reference is mapped to its element event listeners.
|
|
868
|
+
* The reason why `| null` is used is that event listeners are added only
|
|
869
|
+
* when the condition is truthy (see the `_startFadeOutTransition` method).
|
|
870
|
+
*/
|
|
871
|
+
_activeRipples = new Map();
|
|
872
|
+
/** Latest non-persistent ripple that was triggered. */
|
|
873
|
+
_mostRecentTransientRipple;
|
|
874
|
+
/** Time in milliseconds when the last touchstart event happened. */
|
|
875
|
+
_lastTouchStartEvent;
|
|
876
|
+
/** Whether pointer-up event listeners have been registered. */
|
|
877
|
+
_pointerUpEventsRegistered = false;
|
|
878
|
+
/**
|
|
879
|
+
* Cached dimensions of the ripple container. Set when the first
|
|
880
|
+
* ripple is shown and cleared once no more ripples are visible.
|
|
881
|
+
*/
|
|
882
|
+
_containerRect;
|
|
883
|
+
static _eventManager = new RippleEventManager();
|
|
848
884
|
constructor(_target, _ngZone, elementOrElementRef, _platform, injector) {
|
|
849
885
|
this._target = _target;
|
|
850
886
|
this._ngZone = _ngZone;
|
|
851
887
|
this._platform = _platform;
|
|
852
|
-
/** Whether the pointer is currently down or not. */
|
|
853
|
-
this._isPointerDown = false;
|
|
854
|
-
/**
|
|
855
|
-
* Map of currently active ripple references.
|
|
856
|
-
* The ripple reference is mapped to its element event listeners.
|
|
857
|
-
* The reason why `| null` is used is that event listeners are added only
|
|
858
|
-
* when the condition is truthy (see the `_startFadeOutTransition` method).
|
|
859
|
-
*/
|
|
860
|
-
this._activeRipples = new Map();
|
|
861
|
-
/** Whether pointer-up event listeners have been registered. */
|
|
862
|
-
this._pointerUpEventsRegistered = false;
|
|
863
888
|
// Only do anything if we're on the browser.
|
|
864
889
|
if (_platform.isBrowser) {
|
|
865
890
|
this._containerElement = coerceElement(elementOrElementRef);
|
|
@@ -1169,6 +1194,29 @@ function distanceToFurthestCorner(x, y, rect) {
|
|
|
1169
1194
|
/** Injection token that can be used to specify the global ripple options. */
|
|
1170
1195
|
const MAT_RIPPLE_GLOBAL_OPTIONS = new InjectionToken('mat-ripple-global-options');
|
|
1171
1196
|
class MatRipple {
|
|
1197
|
+
_elementRef = inject(ElementRef);
|
|
1198
|
+
_animationMode = inject(ANIMATION_MODULE_TYPE, { optional: true });
|
|
1199
|
+
/** Custom color for all ripples. */
|
|
1200
|
+
color;
|
|
1201
|
+
/** Whether the ripples should be visible outside the component's bounds. */
|
|
1202
|
+
unbounded;
|
|
1203
|
+
/**
|
|
1204
|
+
* Whether the ripple always originates from the center of the host element's bounds, rather
|
|
1205
|
+
* than originating from the location of the click event.
|
|
1206
|
+
*/
|
|
1207
|
+
centered;
|
|
1208
|
+
/**
|
|
1209
|
+
* If set, the radius in pixels of foreground ripples when fully expanded. If unset, the radius
|
|
1210
|
+
* will be the distance from the center of the ripple to the furthest corner of the host element's
|
|
1211
|
+
* bounding rectangle.
|
|
1212
|
+
*/
|
|
1213
|
+
radius = 0;
|
|
1214
|
+
/**
|
|
1215
|
+
* Configuration for the ripple animation. Allows modifying the enter and exit animation
|
|
1216
|
+
* duration of the ripples. The animation durations will be overwritten if the
|
|
1217
|
+
* `NoopAnimationsModule` is being used.
|
|
1218
|
+
*/
|
|
1219
|
+
animation;
|
|
1172
1220
|
/**
|
|
1173
1221
|
* Whether click events will not trigger the ripple. Ripples can be still launched manually
|
|
1174
1222
|
* by using the `launch()` method.
|
|
@@ -1183,6 +1231,7 @@ class MatRipple {
|
|
|
1183
1231
|
this._disabled = value;
|
|
1184
1232
|
this._setupTriggerEventsIfEnabled();
|
|
1185
1233
|
}
|
|
1234
|
+
_disabled = false;
|
|
1186
1235
|
/**
|
|
1187
1236
|
* The element that triggers the ripple when click events are received.
|
|
1188
1237
|
* Defaults to the directive's host element.
|
|
@@ -1194,18 +1243,14 @@ class MatRipple {
|
|
|
1194
1243
|
this._trigger = trigger;
|
|
1195
1244
|
this._setupTriggerEventsIfEnabled();
|
|
1196
1245
|
}
|
|
1246
|
+
_trigger;
|
|
1247
|
+
/** Renderer for the ripple DOM manipulations. */
|
|
1248
|
+
_rippleRenderer;
|
|
1249
|
+
/** Options that are set globally for all ripples. */
|
|
1250
|
+
_globalOptions;
|
|
1251
|
+
/** @docs-private Whether ripple directive is initialized and the input bindings are set. */
|
|
1252
|
+
_isInitialized = false;
|
|
1197
1253
|
constructor() {
|
|
1198
|
-
this._elementRef = inject(ElementRef);
|
|
1199
|
-
this._animationMode = inject(ANIMATION_MODULE_TYPE, { optional: true });
|
|
1200
|
-
/**
|
|
1201
|
-
* If set, the radius in pixels of foreground ripples when fully expanded. If unset, the radius
|
|
1202
|
-
* will be the distance from the center of the ripple to the furthest corner of the host element's
|
|
1203
|
-
* bounding rectangle.
|
|
1204
|
-
*/
|
|
1205
|
-
this.radius = 0;
|
|
1206
|
-
this._disabled = false;
|
|
1207
|
-
/** @docs-private Whether ripple directive is initialized and the input bindings are set. */
|
|
1208
|
-
this._isInitialized = false;
|
|
1209
1254
|
const ngZone = inject(NgZone);
|
|
1210
1255
|
const platform = inject(Platform);
|
|
1211
1256
|
const globalOptions = inject(MAT_RIPPLE_GLOBAL_OPTIONS, { optional: true });
|
|
@@ -1269,8 +1314,8 @@ class MatRipple {
|
|
|
1269
1314
|
return this._rippleRenderer.fadeInRipple(0, 0, { ...this.rippleConfig, ...configOrX });
|
|
1270
1315
|
}
|
|
1271
1316
|
}
|
|
1272
|
-
static
|
|
1273
|
-
static
|
|
1317
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRipple, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
1318
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.0-next.10", type: MatRipple, isStandalone: true, selector: "[mat-ripple], [matRipple]", inputs: { color: ["matRippleColor", "color"], unbounded: ["matRippleUnbounded", "unbounded"], centered: ["matRippleCentered", "centered"], radius: ["matRippleRadius", "radius"], animation: ["matRippleAnimation", "animation"], disabled: ["matRippleDisabled", "disabled"], trigger: ["matRippleTrigger", "trigger"] }, host: { properties: { "class.mat-ripple-unbounded": "unbounded" }, classAttribute: "mat-ripple" }, exportAs: ["matRipple"], ngImport: i0 });
|
|
1274
1319
|
}
|
|
1275
1320
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRipple, decorators: [{
|
|
1276
1321
|
type: Directive,
|
|
@@ -1306,9 +1351,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10",
|
|
|
1306
1351
|
}] } });
|
|
1307
1352
|
|
|
1308
1353
|
class MatRippleModule {
|
|
1309
|
-
static
|
|
1310
|
-
static
|
|
1311
|
-
static
|
|
1354
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRippleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1355
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRippleModule, imports: [MatCommonModule, MatRipple], exports: [MatRipple, MatCommonModule] });
|
|
1356
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRippleModule, imports: [MatCommonModule, MatCommonModule] });
|
|
1312
1357
|
}
|
|
1313
1358
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRippleModule, decorators: [{
|
|
1314
1359
|
type: NgModule,
|
|
@@ -1332,20 +1377,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10",
|
|
|
1332
1377
|
* @docs-private
|
|
1333
1378
|
*/
|
|
1334
1379
|
class MatPseudoCheckbox {
|
|
1335
|
-
|
|
1336
|
-
|
|
1337
|
-
|
|
1338
|
-
|
|
1339
|
-
|
|
1340
|
-
|
|
1341
|
-
|
|
1342
|
-
|
|
1343
|
-
|
|
1344
|
-
|
|
1345
|
-
|
|
1346
|
-
}
|
|
1347
|
-
static
|
|
1348
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.0-next.10", type: MatPseudoCheckbox, isStandalone: true, selector: "mat-pseudo-checkbox", inputs: { state: "state", disabled: "disabled", appearance: "appearance" }, host: { properties: { "class.mat-pseudo-checkbox-indeterminate": "state === \"indeterminate\"", "class.mat-pseudo-checkbox-checked": "state === \"checked\"", "class.mat-pseudo-checkbox-disabled": "disabled", "class.mat-pseudo-checkbox-minimal": "appearance === \"minimal\"", "class.mat-pseudo-checkbox-full": "appearance === \"full\"", "class._mat-animation-noopable": "_animationMode === \"NoopAnimations\"" }, classAttribute: "mat-pseudo-checkbox" }, ngImport: i0, template: '', isInline: true, styles: [".mat-pseudo-checkbox{border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1),background-color 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox::after{position:absolute;opacity:0;content:\"\";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox._mat-animation-noopable{transition:none !important;animation:none !important}.mat-pseudo-checkbox._mat-animation-noopable::after{transition:none}.mat-pseudo-checkbox-disabled{cursor:default}.mat-pseudo-checkbox-indeterminate::after{left:1px;opacity:1;border-radius:2px}.mat-pseudo-checkbox-checked::after{left:1px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-checked::after,.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-indeterminate::after{color:var(--mat-minimal-pseudo-checkbox-selected-checkmark-color, var(--mat-sys-primary))}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled::after,.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled::after{color:var(--mat-minimal-pseudo-checkbox-disabled-selected-checkmark-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-pseudo-checkbox-full{border-color:var(--mat-full-pseudo-checkbox-unselected-icon-color, var(--mat-sys-on-surface-variant));border-width:2px;border-style:solid}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-disabled{border-color:var(--mat-full-pseudo-checkbox-disabled-unselected-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate{background-color:var(--mat-full-pseudo-checkbox-selected-icon-color, var(--mat-sys-primary));border-color:rgba(0,0,0,0)}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked::after,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate::after{color:var(--mat-full-pseudo-checkbox-selected-checkmark-color, var(--mat-sys-on-primary))}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled{background-color:var(--mat-full-pseudo-checkbox-disabled-selected-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled::after,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled::after{color:var(--mat-full-pseudo-checkbox-disabled-selected-checkmark-color, var(--mat-sys-surface))}.mat-pseudo-checkbox{width:18px;height:18px}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-checked::after{width:14px;height:6px;transform-origin:center;top:-4.2426406871px;left:0;bottom:0;right:0;margin:auto}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-indeterminate::after{top:8px;width:16px}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked::after{width:10px;height:4px;transform-origin:center;top:-2.8284271247px;left:0;bottom:0;right:0;margin:auto}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate::after{top:6px;width:12px}"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
1380
|
+
_animationMode = inject(ANIMATION_MODULE_TYPE, { optional: true });
|
|
1381
|
+
/** Display state of the checkbox. */
|
|
1382
|
+
state = 'unchecked';
|
|
1383
|
+
/** Whether the checkbox is disabled. */
|
|
1384
|
+
disabled = false;
|
|
1385
|
+
/**
|
|
1386
|
+
* Appearance of the pseudo checkbox. Default appearance of 'full' renders a checkmark/mixedmark
|
|
1387
|
+
* indicator inside a square box. 'minimal' appearance only renders the checkmark/mixedmark.
|
|
1388
|
+
*/
|
|
1389
|
+
appearance = 'full';
|
|
1390
|
+
constructor() { }
|
|
1391
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatPseudoCheckbox, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1392
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.0-next.10", type: MatPseudoCheckbox, isStandalone: true, selector: "mat-pseudo-checkbox", inputs: { state: "state", disabled: "disabled", appearance: "appearance" }, host: { properties: { "class.mat-pseudo-checkbox-indeterminate": "state === \"indeterminate\"", "class.mat-pseudo-checkbox-checked": "state === \"checked\"", "class.mat-pseudo-checkbox-disabled": "disabled", "class.mat-pseudo-checkbox-minimal": "appearance === \"minimal\"", "class.mat-pseudo-checkbox-full": "appearance === \"full\"", "class._mat-animation-noopable": "_animationMode === \"NoopAnimations\"" }, classAttribute: "mat-pseudo-checkbox" }, ngImport: i0, template: '', isInline: true, styles: [".mat-pseudo-checkbox{border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1),background-color 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox::after{position:absolute;opacity:0;content:\"\";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox._mat-animation-noopable{transition:none !important;animation:none !important}.mat-pseudo-checkbox._mat-animation-noopable::after{transition:none}.mat-pseudo-checkbox-disabled{cursor:default}.mat-pseudo-checkbox-indeterminate::after{left:1px;opacity:1;border-radius:2px}.mat-pseudo-checkbox-checked::after{left:1px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-checked::after,.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-indeterminate::after{color:var(--mat-minimal-pseudo-checkbox-selected-checkmark-color, var(--mat-sys-primary))}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled::after,.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled::after{color:var(--mat-minimal-pseudo-checkbox-disabled-selected-checkmark-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-pseudo-checkbox-full{border-color:var(--mat-full-pseudo-checkbox-unselected-icon-color, var(--mat-sys-on-surface-variant));border-width:2px;border-style:solid}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-disabled{border-color:var(--mat-full-pseudo-checkbox-disabled-unselected-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate{background-color:var(--mat-full-pseudo-checkbox-selected-icon-color, var(--mat-sys-primary));border-color:rgba(0,0,0,0)}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked::after,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate::after{color:var(--mat-full-pseudo-checkbox-selected-checkmark-color, var(--mat-sys-on-primary))}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled{background-color:var(--mat-full-pseudo-checkbox-disabled-selected-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled::after,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled::after{color:var(--mat-full-pseudo-checkbox-disabled-selected-checkmark-color, var(--mat-sys-surface))}.mat-pseudo-checkbox{width:18px;height:18px}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-checked::after{width:14px;height:6px;transform-origin:center;top:-4.2426406871px;left:0;bottom:0;right:0;margin:auto}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-indeterminate::after{top:8px;width:16px}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked::after{width:10px;height:4px;transform-origin:center;top:-2.8284271247px;left:0;bottom:0;right:0;margin:auto}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate::after{top:6px;width:12px}"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
1349
1393
|
}
|
|
1350
1394
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatPseudoCheckbox, decorators: [{
|
|
1351
1395
|
type: Component,
|
|
@@ -1367,9 +1411,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10",
|
|
|
1367
1411
|
}] } });
|
|
1368
1412
|
|
|
1369
1413
|
class MatPseudoCheckboxModule {
|
|
1370
|
-
static
|
|
1371
|
-
static
|
|
1372
|
-
static
|
|
1414
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatPseudoCheckboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1415
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatPseudoCheckboxModule, imports: [MatCommonModule, MatPseudoCheckbox], exports: [MatPseudoCheckbox] });
|
|
1416
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatPseudoCheckboxModule, imports: [MatCommonModule] });
|
|
1373
1417
|
}
|
|
1374
1418
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatPseudoCheckboxModule, decorators: [{
|
|
1375
1419
|
type: NgModule,
|
|
@@ -1415,16 +1459,20 @@ const MAT_OPTGROUP = new InjectionToken('MatOptgroup');
|
|
|
1415
1459
|
* Component that is used to group instances of `mat-option`.
|
|
1416
1460
|
*/
|
|
1417
1461
|
class MatOptgroup {
|
|
1462
|
+
/** Label for the option group. */
|
|
1463
|
+
label;
|
|
1464
|
+
/** whether the option group is disabled. */
|
|
1465
|
+
disabled = false;
|
|
1466
|
+
/** Unique id for the underlying label. */
|
|
1467
|
+
_labelId = `mat-optgroup-label-${_uniqueOptgroupIdCounter++}`;
|
|
1468
|
+
/** Whether the group is in inert a11y mode. */
|
|
1469
|
+
_inert;
|
|
1418
1470
|
constructor() {
|
|
1419
|
-
/** whether the option group is disabled. */
|
|
1420
|
-
this.disabled = false;
|
|
1421
|
-
/** Unique id for the underlying label. */
|
|
1422
|
-
this._labelId = `mat-optgroup-label-${_uniqueOptgroupIdCounter++}`;
|
|
1423
1471
|
const parent = inject(MAT_OPTION_PARENT_COMPONENT, { optional: true });
|
|
1424
1472
|
this._inert = parent?.inertGroups ?? false;
|
|
1425
1473
|
}
|
|
1426
|
-
static
|
|
1427
|
-
static
|
|
1474
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatOptgroup, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1475
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "19.0.0-next.10", type: MatOptgroup, isStandalone: true, selector: "mat-optgroup", inputs: { label: "label", disabled: ["disabled", "disabled", booleanAttribute] }, host: { properties: { "attr.role": "_inert ? null : \"group\"", "attr.aria-disabled": "_inert ? null : disabled.toString()", "attr.aria-labelledby": "_inert ? null : _labelId" }, classAttribute: "mat-mdc-optgroup" }, providers: [{ provide: MAT_OPTGROUP, useExisting: MatOptgroup }], exportAs: ["matOptgroup"], ngImport: i0, template: "<span\n class=\"mat-mdc-optgroup-label\"\n role=\"presentation\"\n [class.mdc-list-item--disabled]=\"disabled\"\n [id]=\"_labelId\">\n <span class=\"mdc-list-item__primary-text\">{{ label }} <ng-content></ng-content></span>\n</span>\n\n<ng-content select=\"mat-option, ng-container\"></ng-content>\n", styles: [".mat-mdc-optgroup{color:var(--mat-optgroup-label-text-color, var(--mat-sys-on-surface-variant));font-family:var(--mat-optgroup-label-text-font, var(--mat-sys-title-small-font));line-height:var(--mat-optgroup-label-text-line-height, var(--mat-sys-title-small-line-height));font-size:var(--mat-optgroup-label-text-size, var(--mat-sys-title-small-size));letter-spacing:var(--mat-optgroup-label-text-tracking, var(--mat-sys-title-small-tracking));font-weight:var(--mat-optgroup-label-text-weight, var(--mat-sys-title-small-weight))}.mat-mdc-optgroup-label{display:flex;position:relative;align-items:center;justify-content:flex-start;overflow:hidden;min-height:48px;padding:0 16px;outline:none}.mat-mdc-optgroup-label.mdc-list-item--disabled{opacity:.38}.mat-mdc-optgroup-label .mdc-list-item__primary-text{font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;font-family:inherit;text-decoration:inherit;text-transform:inherit;white-space:normal}"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
1428
1476
|
}
|
|
1429
1477
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatOptgroup, decorators: [{
|
|
1430
1478
|
type: Component,
|
|
@@ -1448,6 +1496,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10",
|
|
|
1448
1496
|
let _uniqueIdCounter = 0;
|
|
1449
1497
|
/** Event object emitted by MatOption when selected or deselected. */
|
|
1450
1498
|
class MatOptionSelectionChange {
|
|
1499
|
+
source;
|
|
1500
|
+
isUserInput;
|
|
1451
1501
|
constructor(
|
|
1452
1502
|
/** Reference to the option that emitted the event. */
|
|
1453
1503
|
source,
|
|
@@ -1461,6 +1511,15 @@ class MatOptionSelectionChange {
|
|
|
1461
1511
|
* Single option inside of a `<mat-select>` element.
|
|
1462
1512
|
*/
|
|
1463
1513
|
class MatOption {
|
|
1514
|
+
_element = inject(ElementRef);
|
|
1515
|
+
_changeDetectorRef = inject(ChangeDetectorRef);
|
|
1516
|
+
_parent = inject(MAT_OPTION_PARENT_COMPONENT, { optional: true });
|
|
1517
|
+
group = inject(MAT_OPTGROUP, { optional: true });
|
|
1518
|
+
_signalDisableRipple = false;
|
|
1519
|
+
_selected = false;
|
|
1520
|
+
_active = false;
|
|
1521
|
+
_disabled = false;
|
|
1522
|
+
_mostRecentViewValue = '';
|
|
1464
1523
|
/** Whether the wrapping component is in multiple selection mode. */
|
|
1465
1524
|
get multiple() {
|
|
1466
1525
|
return this._parent && this._parent.multiple;
|
|
@@ -1469,6 +1528,10 @@ class MatOption {
|
|
|
1469
1528
|
get selected() {
|
|
1470
1529
|
return this._selected;
|
|
1471
1530
|
}
|
|
1531
|
+
/** The form value of the option. */
|
|
1532
|
+
value;
|
|
1533
|
+
/** The unique ID of the option. */
|
|
1534
|
+
id = `mat-option-${_uniqueIdCounter++}`;
|
|
1472
1535
|
/** Whether the option is disabled. */
|
|
1473
1536
|
get disabled() {
|
|
1474
1537
|
return (this.group && this.group.disabled) || this._disabled;
|
|
@@ -1486,24 +1549,16 @@ class MatOption {
|
|
|
1486
1549
|
get hideSingleSelectionIndicator() {
|
|
1487
1550
|
return !!(this._parent && this._parent.hideSingleSelectionIndicator);
|
|
1488
1551
|
}
|
|
1552
|
+
/** Event emitted when the option is selected or deselected. */
|
|
1553
|
+
// tslint:disable-next-line:no-output-on-prefix
|
|
1554
|
+
onSelectionChange = new EventEmitter();
|
|
1555
|
+
/** Element containing the option's text. */
|
|
1556
|
+
_text;
|
|
1557
|
+
/** Emits when the state of the option changes and any parents have to be notified. */
|
|
1558
|
+
_stateChanges = new Subject();
|
|
1489
1559
|
constructor() {
|
|
1490
|
-
this._element = inject(ElementRef);
|
|
1491
|
-
this._changeDetectorRef = inject(ChangeDetectorRef);
|
|
1492
|
-
this._parent = inject(MAT_OPTION_PARENT_COMPONENT, { optional: true });
|
|
1493
|
-
this.group = inject(MAT_OPTGROUP, { optional: true });
|
|
1494
|
-
this._signalDisableRipple = false;
|
|
1495
|
-
this._selected = false;
|
|
1496
|
-
this._active = false;
|
|
1497
|
-
this._disabled = false;
|
|
1498
|
-
this._mostRecentViewValue = '';
|
|
1499
|
-
/** The unique ID of the option. */
|
|
1500
|
-
this.id = `mat-option-${_uniqueIdCounter++}`;
|
|
1501
|
-
/** Event emitted when the option is selected or deselected. */
|
|
1502
|
-
// tslint:disable-next-line:no-output-on-prefix
|
|
1503
|
-
this.onSelectionChange = new EventEmitter();
|
|
1504
|
-
/** Emits when the state of the option changes and any parents have to be notified. */
|
|
1505
|
-
this._stateChanges = new Subject();
|
|
1506
1560
|
inject(_CdkPrivateStyleLoader).load(_StructuralStylesLoader);
|
|
1561
|
+
inject(_CdkPrivateStyleLoader).load(_VisuallyHiddenLoader);
|
|
1507
1562
|
this._signalDisableRipple = !!this._parent && isSignal(this._parent.disableRipple);
|
|
1508
1563
|
}
|
|
1509
1564
|
/**
|
|
@@ -1631,8 +1686,8 @@ class MatOption {
|
|
|
1631
1686
|
_emitSelectionChangeEvent(isUserInput = false) {
|
|
1632
1687
|
this.onSelectionChange.emit(new MatOptionSelectionChange(this, isUserInput));
|
|
1633
1688
|
}
|
|
1634
|
-
static
|
|
1635
|
-
static
|
|
1689
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatOption, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1690
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.0-next.10", type: MatOption, isStandalone: true, selector: "mat-option", inputs: { value: "value", id: "id", disabled: ["disabled", "disabled", booleanAttribute] }, outputs: { onSelectionChange: "onSelectionChange" }, host: { attributes: { "role": "option" }, listeners: { "click": "_selectViaInteraction()", "keydown": "_handleKeydown($event)" }, properties: { "class.mdc-list-item--selected": "selected", "class.mat-mdc-option-multiple": "multiple", "class.mat-mdc-option-active": "active", "class.mdc-list-item--disabled": "disabled", "id": "id", "attr.aria-selected": "selected", "attr.aria-disabled": "disabled.toString()" }, classAttribute: "mat-mdc-option mdc-list-item" }, viewQueries: [{ propertyName: "_text", first: true, predicate: ["text"], descendants: true, static: true }], exportAs: ["matOption"], ngImport: i0, template: "<!-- Set aria-hidden=\"true\" to this DOM node and other decorative nodes in this file. This might\n be contributing to issue where sometimes VoiceOver focuses on a TextNode in the a11y tree instead\n of the Option node (#23202). Most assistive technology will generally ignore non-role,\n non-text-content elements. Adding aria-hidden seems to make VoiceOver behave more consistently. -->\n@if (multiple) {\n <mat-pseudo-checkbox\n class=\"mat-mdc-option-pseudo-checkbox\"\n [disabled]=\"disabled\"\n [state]=\"selected ? 'checked' : 'unchecked'\"\n aria-hidden=\"true\"></mat-pseudo-checkbox>\n}\n\n<ng-content select=\"mat-icon\"></ng-content>\n\n<span class=\"mdc-list-item__primary-text\" #text><ng-content></ng-content></span>\n\n<!-- Render checkmark at the end for single-selection. -->\n@if (!multiple && selected && !hideSingleSelectionIndicator) {\n <mat-pseudo-checkbox\n class=\"mat-mdc-option-pseudo-checkbox\"\n [disabled]=\"disabled\"\n state=\"checked\"\n aria-hidden=\"true\"\n appearance=\"minimal\"></mat-pseudo-checkbox>\n}\n\n<!-- See a11y notes inside optgroup.ts for context behind this element. -->\n@if (group && group._inert) {\n <span class=\"cdk-visually-hidden\">({{ group.label }})</span>\n}\n\n<div class=\"mat-mdc-option-ripple mat-focus-indicator\" aria-hidden=\"true\" mat-ripple\n [matRippleTrigger]=\"_getHostElement()\" [matRippleDisabled]=\"disabled || disableRipple\">\n</div>\n", styles: [".mat-mdc-option{-webkit-user-select:none;user-select:none;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:flex;position:relative;align-items:center;justify-content:flex-start;overflow:hidden;min-height:48px;padding:0 16px;cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0);color:var(--mat-option-label-text-color, var(--mat-sys-on-surface));font-family:var(--mat-option-label-text-font, var(--mat-sys-label-large-font));line-height:var(--mat-option-label-text-line-height, var(--mat-sys-label-large-line-height));font-size:var(--mat-option-label-text-size, var(--mat-sys-body-large-size));letter-spacing:var(--mat-option-label-text-tracking, var(--mat-sys-label-large-tracking));font-weight:var(--mat-option-label-text-weight, var(--mat-sys-body-large-weight))}.mat-mdc-option:hover:not(.mdc-list-item--disabled){background-color:var(--mat-option-hover-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-hover-state-layer-opacity) * 100%), transparent))}.mat-mdc-option:focus.mdc-list-item,.mat-mdc-option.mat-mdc-option-active.mdc-list-item{background-color:var(--mat-option-focus-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-focus-state-layer-opacity) * 100%), transparent));outline:0}.mat-mdc-option.mdc-list-item--selected:not(.mdc-list-item--disabled) .mdc-list-item__primary-text{color:var(--mat-option-selected-state-label-text-color, var(--mat-sys-on-secondary-container))}.mat-mdc-option.mdc-list-item--selected:not(.mdc-list-item--disabled):not(.mat-mdc-option-multiple){background-color:var(--mat-option-selected-state-layer-color, var(--mat-sys-secondary-container))}.mat-mdc-option .mat-pseudo-checkbox{--mat-minimal-pseudo-checkbox-selected-checkmark-color: var(--mat-option-selected-state-label-text-color, var(--mat-sys-on-secondary-container))}.mat-mdc-option.mdc-list-item{align-items:center;background:rgba(0,0,0,0)}.mat-mdc-option.mdc-list-item--disabled{cursor:default;pointer-events:none}.mat-mdc-option.mdc-list-item--disabled .mat-mdc-option-pseudo-checkbox,.mat-mdc-option.mdc-list-item--disabled .mdc-list-item__primary-text,.mat-mdc-option.mdc-list-item--disabled>mat-icon{opacity:.38}.mat-mdc-optgroup .mat-mdc-option:not(.mat-mdc-option-multiple){padding-left:32px}[dir=rtl] .mat-mdc-optgroup .mat-mdc-option:not(.mat-mdc-option-multiple){padding-left:16px;padding-right:32px}.mat-mdc-option .mat-icon,.mat-mdc-option .mat-pseudo-checkbox-full{margin-right:16px;flex-shrink:0}[dir=rtl] .mat-mdc-option .mat-icon,[dir=rtl] .mat-mdc-option .mat-pseudo-checkbox-full{margin-right:0;margin-left:16px}.mat-mdc-option .mat-pseudo-checkbox-minimal{margin-left:16px;flex-shrink:0}[dir=rtl] .mat-mdc-option .mat-pseudo-checkbox-minimal{margin-right:16px;margin-left:0}.mat-mdc-option .mat-mdc-option-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-mdc-option .mdc-list-item__primary-text{white-space:normal;font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;font-family:inherit;text-decoration:inherit;text-transform:inherit;margin-right:auto}[dir=rtl] .mat-mdc-option .mdc-list-item__primary-text{margin-right:0;margin-left:auto}@media(forced-colors: active){.mat-mdc-option.mdc-list-item--selected:not(:has(.mat-mdc-option-pseudo-checkbox))::after{content:\"\";position:absolute;top:50%;right:16px;transform:translateY(-50%);width:10px;height:0;border-bottom:solid 10px;border-radius:10px}[dir=rtl] .mat-mdc-option.mdc-list-item--selected:not(:has(.mat-mdc-option-pseudo-checkbox))::after{right:auto;left:16px}}.mat-mdc-option-multiple{--mdc-list-list-item-selected-container-color:var(--mdc-list-list-item-container-color, transparent)}.mat-mdc-option-active .mat-focus-indicator::before{content:\"\"}"], dependencies: [{ kind: "component", type: MatPseudoCheckbox, selector: "mat-pseudo-checkbox", inputs: ["state", "disabled", "appearance"] }, { kind: "directive", type: MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
1636
1691
|
}
|
|
1637
1692
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatOption, decorators: [{
|
|
1638
1693
|
type: Component,
|
|
@@ -1711,9 +1766,9 @@ function _getOptionScrollPosition(optionOffset, optionHeight, currentScrollPosit
|
|
|
1711
1766
|
}
|
|
1712
1767
|
|
|
1713
1768
|
class MatOptionModule {
|
|
1714
|
-
static
|
|
1715
|
-
static
|
|
1716
|
-
static
|
|
1769
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatOptionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1770
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatOptionModule, imports: [MatRippleModule, MatCommonModule, MatPseudoCheckboxModule, MatOption, MatOptgroup], exports: [MatOption, MatOptgroup] });
|
|
1771
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatOptionModule, imports: [MatRippleModule, MatCommonModule, MatPseudoCheckboxModule] });
|
|
1717
1772
|
}
|
|
1718
1773
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatOptionModule, decorators: [{
|
|
1719
1774
|
type: NgModule,
|
|
@@ -1748,28 +1803,14 @@ const matRippleDisabled = 'mat-ripple-loader-disabled';
|
|
|
1748
1803
|
* @docs-private
|
|
1749
1804
|
*/
|
|
1750
1805
|
class MatRippleLoader {
|
|
1806
|
+
_document = inject(DOCUMENT, { optional: true });
|
|
1807
|
+
_animationMode = inject(ANIMATION_MODULE_TYPE, { optional: true });
|
|
1808
|
+
_globalRippleOptions = inject(MAT_RIPPLE_GLOBAL_OPTIONS, { optional: true });
|
|
1809
|
+
_platform = inject(Platform);
|
|
1810
|
+
_ngZone = inject(NgZone);
|
|
1811
|
+
_injector = inject(Injector);
|
|
1812
|
+
_hosts = new Map();
|
|
1751
1813
|
constructor() {
|
|
1752
|
-
this._document = inject(DOCUMENT, { optional: true });
|
|
1753
|
-
this._animationMode = inject(ANIMATION_MODULE_TYPE, { optional: true });
|
|
1754
|
-
this._globalRippleOptions = inject(MAT_RIPPLE_GLOBAL_OPTIONS, { optional: true });
|
|
1755
|
-
this._platform = inject(Platform);
|
|
1756
|
-
this._ngZone = inject(NgZone);
|
|
1757
|
-
this._injector = inject(Injector);
|
|
1758
|
-
this._hosts = new Map();
|
|
1759
|
-
/**
|
|
1760
|
-
* Handles creating and attaching component internals
|
|
1761
|
-
* when a component is initially interacted with.
|
|
1762
|
-
*/
|
|
1763
|
-
this._onInteraction = (event) => {
|
|
1764
|
-
const eventTarget = _getEventTarget(event);
|
|
1765
|
-
if (eventTarget instanceof HTMLElement) {
|
|
1766
|
-
// TODO(wagnermaciel): Consider batching these events to improve runtime performance.
|
|
1767
|
-
const element = eventTarget.closest(`[${matRippleUninitialized}="${this._globalRippleOptions?.namespace ?? ''}"]`);
|
|
1768
|
-
if (element) {
|
|
1769
|
-
this._createRipple(element);
|
|
1770
|
-
}
|
|
1771
|
-
}
|
|
1772
|
-
};
|
|
1773
1814
|
this._ngZone.runOutsideAngular(() => {
|
|
1774
1815
|
for (const event of rippleInteractionEvents) {
|
|
1775
1816
|
this._document?.addEventListener(event, this._onInteraction, eventListenerOptions);
|
|
@@ -1826,6 +1867,20 @@ class MatRippleLoader {
|
|
|
1826
1867
|
host.removeAttribute(matRippleDisabled);
|
|
1827
1868
|
}
|
|
1828
1869
|
}
|
|
1870
|
+
/**
|
|
1871
|
+
* Handles creating and attaching component internals
|
|
1872
|
+
* when a component is initially interacted with.
|
|
1873
|
+
*/
|
|
1874
|
+
_onInteraction = (event) => {
|
|
1875
|
+
const eventTarget = _getEventTarget(event);
|
|
1876
|
+
if (eventTarget instanceof HTMLElement) {
|
|
1877
|
+
// TODO(wagnermaciel): Consider batching these events to improve runtime performance.
|
|
1878
|
+
const element = eventTarget.closest(`[${matRippleUninitialized}="${this._globalRippleOptions?.namespace ?? ''}"]`);
|
|
1879
|
+
if (element) {
|
|
1880
|
+
this._createRipple(element);
|
|
1881
|
+
}
|
|
1882
|
+
}
|
|
1883
|
+
};
|
|
1829
1884
|
/** Creates a MatRipple and appends it to the given element. */
|
|
1830
1885
|
_createRipple(host) {
|
|
1831
1886
|
if (!this._document || this._hosts.has(host)) {
|
|
@@ -1874,8 +1929,8 @@ class MatRippleLoader {
|
|
|
1874
1929
|
this._hosts.delete(host);
|
|
1875
1930
|
}
|
|
1876
1931
|
}
|
|
1877
|
-
static
|
|
1878
|
-
static
|
|
1932
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRippleLoader, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1933
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRippleLoader, providedIn: 'root' });
|
|
1879
1934
|
}
|
|
1880
1935
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MatRippleLoader, decorators: [{
|
|
1881
1936
|
type: Injectable,
|
|
@@ -1888,8 +1943,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10",
|
|
|
1888
1943
|
* @docs-private
|
|
1889
1944
|
*/
|
|
1890
1945
|
class _MatInternalFormField {
|
|
1891
|
-
|
|
1892
|
-
|
|
1946
|
+
/** Position of the label relative to the content. */
|
|
1947
|
+
labelPosition;
|
|
1948
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: _MatInternalFormField, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1949
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.0-next.10", type: _MatInternalFormField, isStandalone: true, selector: "div[mat-internal-form-field]", inputs: { labelPosition: "labelPosition" }, host: { properties: { "class.mdc-form-field--align-end": "labelPosition === \"before\"" }, classAttribute: "mdc-form-field mat-internal-form-field" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [".mat-internal-form-field{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-flex;align-items:center;vertical-align:middle}.mat-internal-form-field>label{margin-left:0;margin-right:auto;padding-left:4px;padding-right:0;order:0}[dir=rtl] .mat-internal-form-field>label{margin-left:auto;margin-right:0;padding-left:0;padding-right:4px}.mdc-form-field--align-end>label{margin-left:auto;margin-right:0;padding-left:0;padding-right:4px;order:-1}[dir=rtl] .mdc-form-field--align-end .mdc-form-field--align-end label{margin-left:0;margin-right:auto;padding-left:4px;padding-right:0}"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
1893
1950
|
}
|
|
1894
1951
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: _MatInternalFormField, decorators: [{
|
|
1895
1952
|
type: Component,
|