@angular/material 17.0.2 → 17.1.0-next.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/autocomplete/index.d.ts +14 -10
- package/badge/index.d.ts +5 -5
- package/bottom-sheet/index.d.ts +6 -6
- package/button/_fab-theme.scss +65 -32
- package/button/_icon-button-theme.scss +91 -54
- package/button/index.d.ts +13 -13
- package/button-toggle/index.d.ts +5 -5
- package/card/index.d.ts +18 -18
- package/card/testing/index.d.ts +1 -1
- package/checkbox/index.d.ts +7 -7
- package/chips/index.d.ts +103 -126
- package/core/index.d.ts +51 -32
- package/core/tokens/m2/_index.scss +10 -0
- package/datepicker/index.d.ts +109 -109
- package/datepicker/testing/index.d.ts +1 -1
- package/dialog/index.d.ts +1 -1
- package/dialog/testing/index.d.ts +1 -1
- package/divider/index.d.ts +4 -4
- package/esm2022/autocomplete/autocomplete-origin.mjs +3 -2
- package/esm2022/autocomplete/autocomplete-trigger.mjs +11 -4
- package/esm2022/autocomplete/autocomplete.mjs +4 -4
- package/esm2022/autocomplete/module.mjs +21 -5
- package/esm2022/autocomplete/public-api.mjs +3 -1
- package/esm2022/badge/badge-module.mjs +3 -4
- package/esm2022/badge/badge.mjs +3 -2
- package/esm2022/bottom-sheet/bottom-sheet-container.mjs +4 -4
- package/esm2022/bottom-sheet/bottom-sheet-module.mjs +6 -5
- package/esm2022/bottom-sheet/bottom-sheet.mjs +3 -4
- package/esm2022/button/button.mjs +5 -5
- package/esm2022/button/fab.mjs +9 -9
- package/esm2022/button/icon-button.mjs +5 -5
- package/esm2022/button/module.mjs +14 -10
- package/esm2022/button-toggle/button-toggle-module.mjs +3 -4
- package/esm2022/button-toggle/button-toggle.mjs +6 -5
- package/esm2022/card/card.mjs +29 -18
- package/esm2022/card/module.mjs +4 -5
- package/esm2022/card/testing/card-harness.mjs +9 -1
- package/esm2022/checkbox/checkbox-required-validator.mjs +4 -2
- package/esm2022/checkbox/checkbox.mjs +31 -17
- package/esm2022/checkbox/module.mjs +5 -6
- package/esm2022/chips/chip-action.mjs +15 -13
- package/esm2022/chips/chip-edit-input.mjs +3 -2
- package/esm2022/chips/chip-grid.mjs +41 -40
- package/esm2022/chips/chip-icons.mjs +7 -4
- package/esm2022/chips/chip-input.mjs +15 -17
- package/esm2022/chips/chip-listbox.mjs +20 -23
- package/esm2022/chips/chip-option.mjs +13 -12
- package/esm2022/chips/chip-row.mjs +6 -7
- package/esm2022/chips/chip-set.mjs +20 -19
- package/esm2022/chips/chip.mjs +50 -44
- package/esm2022/chips/module.mjs +4 -5
- package/esm2022/chips/tokens.mjs +8 -2
- package/esm2022/core/common-behaviors/error-state.mjs +50 -11
- package/esm2022/core/common-behaviors/index.mjs +2 -2
- package/esm2022/core/line/line.mjs +5 -5
- package/esm2022/core/option/index.mjs +3 -4
- package/esm2022/core/option/optgroup.mjs +3 -3
- package/esm2022/core/option/option.mjs +7 -7
- package/esm2022/core/ripple/index.mjs +3 -4
- package/esm2022/core/ripple/ripple-ref.mjs +10 -2
- package/esm2022/core/ripple/ripple-renderer.mjs +11 -11
- package/esm2022/core/ripple/ripple.mjs +3 -2
- package/esm2022/core/selection/pseudo-checkbox/pseudo-checkbox-module.mjs +3 -4
- package/esm2022/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +3 -3
- package/esm2022/core/version.mjs +1 -1
- package/esm2022/datepicker/calendar-body.mjs +4 -4
- package/esm2022/datepicker/calendar.mjs +8 -12
- package/esm2022/datepicker/date-range-input-parts.mjs +35 -14
- package/esm2022/datepicker/date-range-input.mjs +13 -13
- package/esm2022/datepicker/date-range-picker.mjs +3 -2
- package/esm2022/datepicker/datepicker-actions.mjs +7 -5
- package/esm2022/datepicker/datepicker-base.mjs +57 -62
- package/esm2022/datepicker/datepicker-input-base.mjs +8 -7
- package/esm2022/datepicker/datepicker-input.mjs +3 -2
- package/esm2022/datepicker/datepicker-module.mjs +15 -13
- package/esm2022/datepicker/datepicker-toggle.mjs +10 -10
- package/esm2022/datepicker/datepicker.mjs +3 -2
- package/esm2022/datepicker/month-view.mjs +3 -4
- package/esm2022/datepicker/multi-year-view.mjs +3 -4
- package/esm2022/datepicker/testing/calendar-harness.mjs +11 -4
- package/esm2022/datepicker/year-view.mjs +3 -4
- package/esm2022/dialog/dialog-container.mjs +5 -6
- package/esm2022/dialog/dialog-ref.mjs +10 -4
- package/esm2022/dialog/module.mjs +2 -2
- package/esm2022/dialog/testing/dialog-harness.mjs +11 -4
- package/esm2022/dialog/testing/dialog-opener.mjs +3 -3
- package/esm2022/dialog/testing/public-api.mjs +2 -2
- package/esm2022/divider/divider-module.mjs +3 -4
- package/esm2022/divider/divider.mjs +3 -3
- package/esm2022/expansion/accordion.mjs +8 -13
- package/esm2022/expansion/expansion-module.mjs +14 -7
- package/esm2022/expansion/expansion-panel-content.mjs +3 -2
- package/esm2022/expansion/expansion-panel-header.mjs +18 -16
- package/esm2022/expansion/expansion-panel.mjs +11 -11
- package/esm2022/expansion/testing/expansion-harness.mjs +14 -6
- package/esm2022/form-field/directives/error.mjs +3 -2
- package/esm2022/form-field/directives/floating-label.mjs +3 -2
- package/esm2022/form-field/directives/hint.mjs +3 -2
- package/esm2022/form-field/directives/label.mjs +3 -2
- package/esm2022/form-field/directives/line-ripple.mjs +3 -2
- package/esm2022/form-field/directives/notched-outline.mjs +3 -3
- package/esm2022/form-field/directives/prefix.mjs +3 -2
- package/esm2022/form-field/directives/suffix.mjs +3 -2
- package/esm2022/form-field/form-field.mjs +12 -11
- package/esm2022/form-field/module.mjs +14 -16
- package/esm2022/grid-list/grid-list-module.mjs +13 -9
- package/esm2022/grid-list/grid-list.mjs +3 -3
- package/esm2022/grid-list/grid-tile.mjs +11 -8
- package/esm2022/grid-list/testing/grid-tile-harness.mjs +9 -3
- package/esm2022/grid-list/tile-coordinator.mjs +1 -1
- package/esm2022/icon/icon-module.mjs +3 -4
- package/esm2022/icon/icon.mjs +25 -29
- package/esm2022/icon/testing/icon-harness-filters.mjs +7 -2
- package/esm2022/icon/testing/icon-harness.mjs +4 -3
- package/esm2022/input/input.mjs +26 -28
- package/esm2022/input/module.mjs +3 -4
- package/esm2022/input/public-api.mjs +3 -1
- package/esm2022/list/action-list.mjs +3 -3
- package/esm2022/list/list-base.mjs +5 -3
- package/esm2022/list/list-item-sections.mjs +13 -7
- package/esm2022/list/list-module.mjs +12 -13
- package/esm2022/list/list-option.mjs +6 -6
- package/esm2022/list/list.mjs +6 -6
- package/esm2022/list/nav-list.mjs +3 -3
- package/esm2022/list/selection-list.mjs +3 -3
- package/esm2022/list/subheader.mjs +3 -2
- package/esm2022/list/testing/list-item-harness-base.mjs +18 -6
- package/esm2022/list/testing/public-api.mjs +2 -2
- package/esm2022/menu/menu-content.mjs +3 -2
- package/esm2022/menu/menu-item.mjs +4 -4
- package/esm2022/menu/menu-trigger.mjs +10 -3
- package/esm2022/menu/menu.mjs +4 -4
- package/esm2022/menu/module.mjs +23 -5
- package/esm2022/paginator/module.mjs +4 -5
- package/esm2022/paginator/paginator.mjs +37 -41
- package/esm2022/progress-bar/module.mjs +3 -3
- package/esm2022/progress-bar/progress-bar.mjs +25 -20
- package/esm2022/progress-spinner/module.mjs +3 -4
- package/esm2022/progress-spinner/progress-spinner.mjs +35 -34
- package/esm2022/radio/module.mjs +3 -4
- package/esm2022/radio/radio.mjs +42 -35
- package/esm2022/select/module.mjs +19 -5
- package/esm2022/select/public-api.mjs +5 -1
- package/esm2022/select/select.mjs +83 -66
- package/esm2022/sidenav/drawer.mjs +7 -6
- package/esm2022/sidenav/sidenav-module.mjs +12 -8
- package/esm2022/sidenav/sidenav.mjs +7 -6
- package/esm2022/slide-toggle/module.mjs +15 -7
- package/esm2022/slide-toggle/slide-toggle-required-validator.mjs +3 -2
- package/esm2022/slide-toggle/slide-toggle.mjs +4 -4
- package/esm2022/slider/module.mjs +17 -5
- package/esm2022/slider/slider-input.mjs +26 -23
- package/esm2022/slider/slider-interface.mjs +16 -1
- package/esm2022/slider/slider-thumb.mjs +8 -9
- package/esm2022/slider/slider.mjs +74 -73
- 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/snack-bar/module.mjs +2 -2
- package/esm2022/snack-bar/simple-snack-bar.mjs +4 -6
- package/esm2022/snack-bar/snack-bar-container.mjs +5 -6
- package/esm2022/snack-bar/snack-bar-ref.mjs +1 -1
- package/esm2022/sort/sort-header.mjs +17 -25
- package/esm2022/sort/sort-module.mjs +3 -4
- package/esm2022/sort/sort.mjs +13 -19
- package/esm2022/stepper/step-content.mjs +3 -2
- package/esm2022/stepper/step-header.mjs +11 -16
- package/esm2022/stepper/step-label.mjs +3 -2
- package/esm2022/stepper/stepper-button.mjs +5 -3
- package/esm2022/stepper/stepper-icon.mjs +3 -2
- package/esm2022/stepper/stepper-module.mjs +14 -13
- package/esm2022/stepper/stepper.mjs +11 -13
- package/esm2022/stepper/testing/step-harness-filters.mjs +7 -2
- package/esm2022/stepper/testing/stepper-harness.mjs +4 -3
- package/esm2022/table/cell.mjs +15 -8
- package/esm2022/table/module.mjs +4 -5
- package/esm2022/table/row.mjs +19 -10
- package/esm2022/table/table.mjs +7 -7
- package/esm2022/table/text-column.mjs +6 -4
- package/esm2022/tabs/module.mjs +8 -41
- package/esm2022/tabs/paginated-tab-header.mjs +12 -18
- package/esm2022/tabs/tab-body.mjs +6 -4
- package/esm2022/tabs/tab-content.mjs +3 -2
- package/esm2022/tabs/tab-group.mjs +69 -78
- package/esm2022/tabs/tab-header.mjs +10 -16
- package/esm2022/tabs/tab-label-wrapper.mjs +13 -8
- package/esm2022/tabs/tab-label.mjs +3 -2
- package/esm2022/tabs/tab-nav-bar/tab-nav-bar.mjs +51 -45
- package/esm2022/tabs/tab.mjs +12 -12
- package/esm2022/toolbar/testing/toolbar-harness.mjs +7 -2
- package/esm2022/toolbar/toolbar-module.mjs +3 -4
- package/esm2022/toolbar/toolbar.mjs +14 -18
- package/esm2022/tooltip/module.mjs +3 -4
- package/esm2022/tooltip/tooltip.mjs +14 -8
- package/esm2022/tree/node.mjs +24 -21
- package/esm2022/tree/outlet.mjs +3 -2
- package/esm2022/tree/padding.mjs +12 -4
- package/esm2022/tree/toggle.mjs +3 -2
- package/esm2022/tree/tree-module.mjs +4 -5
- package/esm2022/tree/tree.mjs +3 -4
- package/expansion/_expansion-theme.scss +56 -22
- package/expansion/index.d.ts +25 -33
- package/expansion/testing/index.d.ts +1 -1
- package/fesm2022/autocomplete.mjs +39 -15
- package/fesm2022/autocomplete.mjs.map +1 -1
- package/fesm2022/badge.mjs +4 -4
- package/fesm2022/badge.mjs.map +1 -1
- package/fesm2022/bottom-sheet.mjs +21 -22
- package/fesm2022/bottom-sheet.mjs.map +1 -1
- package/fesm2022/button-toggle.mjs +7 -8
- package/fesm2022/button-toggle.mjs.map +1 -1
- package/fesm2022/button.mjs +29 -25
- package/fesm2022/button.mjs.map +1 -1
- package/fesm2022/card/testing.mjs +9 -1
- package/fesm2022/card/testing.mjs.map +1 -1
- package/fesm2022/card.mjs +31 -21
- package/fesm2022/card.mjs.map +1 -1
- package/fesm2022/checkbox.mjs +38 -23
- package/fesm2022/checkbox.mjs.map +1 -1
- package/fesm2022/chips.mjs +179 -156
- package/fesm2022/chips.mjs.map +1 -1
- package/fesm2022/core.mjs +87 -42
- 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 +183 -156
- package/fesm2022/datepicker.mjs.map +1 -1
- package/fesm2022/dialog/testing.mjs +13 -6
- package/fesm2022/dialog/testing.mjs.map +1 -1
- package/fesm2022/dialog.mjs +15 -10
- package/fesm2022/dialog.mjs.map +1 -1
- package/fesm2022/divider.mjs +4 -5
- package/fesm2022/divider.mjs.map +1 -1
- package/fesm2022/expansion/testing.mjs +14 -6
- package/fesm2022/expansion/testing.mjs.map +1 -1
- package/fesm2022/expansion.mjs +51 -44
- package/fesm2022/expansion.mjs.map +1 -1
- package/fesm2022/form-field.mjs +38 -25
- package/fesm2022/form-field.mjs.map +1 -1
- package/fesm2022/grid-list/testing.mjs +9 -3
- package/fesm2022/grid-list/testing.mjs.map +1 -1
- package/fesm2022/grid-list.mjs +24 -17
- package/fesm2022/grid-list.mjs.map +1 -1
- package/fesm2022/icon/testing.mjs +10 -3
- package/fesm2022/icon/testing.mjs.map +1 -1
- package/fesm2022/icon.mjs +27 -31
- package/fesm2022/icon.mjs.map +1 -1
- package/fesm2022/input.mjs +28 -30
- package/fesm2022/input.mjs.map +1 -1
- package/fesm2022/list/testing.mjs +18 -6
- package/fesm2022/list/testing.mjs.map +1 -1
- package/fesm2022/list.mjs +44 -38
- package/fesm2022/list.mjs.map +1 -1
- package/fesm2022/menu.mjs +42 -18
- package/fesm2022/menu.mjs.map +1 -1
- package/fesm2022/paginator.mjs +39 -47
- package/fesm2022/paginator.mjs.map +1 -1
- package/fesm2022/progress-bar.mjs +27 -21
- package/fesm2022/progress-bar.mjs.map +1 -1
- package/fesm2022/progress-spinner.mjs +37 -37
- package/fesm2022/progress-spinner.mjs.map +1 -1
- package/fesm2022/radio.mjs +43 -37
- package/fesm2022/radio.mjs.map +1 -1
- package/fesm2022/select.mjs +102 -70
- package/fesm2022/select.mjs.map +1 -1
- package/fesm2022/sidenav.mjs +23 -17
- package/fesm2022/sidenav.mjs.map +1 -1
- package/fesm2022/slide-toggle.mjs +19 -11
- package/fesm2022/slide-toggle.mjs.map +1 -1
- package/fesm2022/slider/testing.mjs +11 -4
- package/fesm2022/slider/testing.mjs.map +1 -1
- package/fesm2022/slider.mjs +133 -102
- package/fesm2022/slider.mjs.map +1 -1
- package/fesm2022/snack-bar.mjs +13 -15
- package/fesm2022/snack-bar.mjs.map +1 -1
- package/fesm2022/sort.mjs +29 -42
- 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 +42 -43
- package/fesm2022/stepper.mjs.map +1 -1
- package/fesm2022/table.mjs +44 -26
- package/fesm2022/table.mjs.map +1 -1
- package/fesm2022/tabs.mjs +594 -621
- 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 +16 -20
- package/fesm2022/toolbar.mjs.map +1 -1
- package/fesm2022/tooltip.mjs +15 -10
- package/fesm2022/tooltip.mjs.map +1 -1
- package/fesm2022/tree.mjs +36 -30
- package/fesm2022/tree.mjs.map +1 -1
- package/form-field/index.d.ts +33 -45
- package/grid-list/index.d.ts +10 -10
- package/grid-list/testing/index.d.ts +1 -1
- package/icon/index.d.ts +14 -20
- package/icon/testing/index.d.ts +1 -1
- package/input/index.d.ts +33 -32
- package/list/index.d.ts +36 -36
- package/list/testing/index.d.ts +2 -2
- package/menu/index.d.ts +12 -12
- package/package.json +7 -7
- package/paginator/index.d.ts +21 -22
- 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 +14 -17
- package/progress-spinner/index.d.ts +18 -19
- package/radio/index.d.ts +25 -27
- package/schematics/ng-add/index.js +2 -2
- package/schematics/ng-add/index.mjs +2 -2
- package/schematics/ng-generate/mdc-migration/index_bundled.js +11 -4
- package/schematics/ng-generate/mdc-migration/index_bundled.js.map +3 -3
- package/select/index.d.ts +66 -49
- package/sidenav/index.d.ts +11 -11
- package/slide-toggle/index.d.ts +6 -6
- package/slider/index.d.ts +38 -38
- package/slider/testing/index.d.ts +1 -1
- package/sort/index.d.ts +19 -24
- package/stepper/index.d.ts +33 -43
- package/stepper/testing/index.d.ts +1 -1
- package/table/index.d.ts +24 -24
- package/tabs/index.d.ts +75 -103
- package/toolbar/index.d.ts +10 -17
- package/toolbar/testing/index.d.ts +1 -1
- package/tooltip/index.d.ts +8 -8
- package/tree/index.d.ts +26 -28
package/fesm2022/select.mjs
CHANGED
|
@@ -1,19 +1,18 @@
|
|
|
1
|
-
import * as i7 from '@angular/cdk/overlay';
|
|
2
1
|
import { Overlay, CdkOverlayOrigin, CdkConnectedOverlay, OverlayModule } from '@angular/cdk/overlay';
|
|
3
|
-
import
|
|
4
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { NgClass, CommonModule } from '@angular/common';
|
|
5
3
|
import * as i0 from '@angular/core';
|
|
6
|
-
import { InjectionToken, EventEmitter, Component, ViewEncapsulation, ChangeDetectionStrategy, Optional, Inject, Self, Attribute, ContentChildren, ContentChild, Input, ViewChild, Output, Directive, NgModule } from '@angular/core';
|
|
4
|
+
import { InjectionToken, inject, EventEmitter, booleanAttribute, numberAttribute, Component, ViewEncapsulation, ChangeDetectionStrategy, Optional, Inject, Self, Attribute, ContentChildren, ContentChild, Input, ViewChild, Output, Directive, NgModule } from '@angular/core';
|
|
7
5
|
import * as i2 from '@angular/material/core';
|
|
8
|
-
import {
|
|
9
|
-
|
|
6
|
+
import { _countGroupLabelsBeforeOption, _getOptionScrollPosition, _ErrorStateTracker, MAT_OPTION_PARENT_COMPONENT, MatOption, MAT_OPTGROUP, MatOptionModule, MatCommonModule } from '@angular/material/core';
|
|
7
|
+
export { MatOptgroup, MatOption } from '@angular/material/core';
|
|
8
|
+
import * as i6 from '@angular/material/form-field';
|
|
10
9
|
import { MAT_FORM_FIELD, MatFormFieldControl, MatFormFieldModule } from '@angular/material/form-field';
|
|
10
|
+
export { MatError, MatFormField, MatHint, MatLabel, MatPrefix, MatSuffix } from '@angular/material/form-field';
|
|
11
11
|
import * as i1 from '@angular/cdk/scrolling';
|
|
12
12
|
import { CdkScrollableModule } from '@angular/cdk/scrolling';
|
|
13
13
|
import * as i5 from '@angular/cdk/a11y';
|
|
14
14
|
import { removeAriaReferencedId, addAriaReferencedId, ActiveDescendantKeyManager } from '@angular/cdk/a11y';
|
|
15
15
|
import * as i3 from '@angular/cdk/bidi';
|
|
16
|
-
import { coerceBooleanProperty, coerceNumberProperty } from '@angular/cdk/coercion';
|
|
17
16
|
import { SelectionModel } from '@angular/cdk/collections';
|
|
18
17
|
import { DOWN_ARROW, UP_ARROW, LEFT_ARROW, RIGHT_ARROW, ENTER, SPACE, hasModifierKey, A } from '@angular/cdk/keycodes';
|
|
19
18
|
import * as i4 from '@angular/forms';
|
|
@@ -82,7 +81,13 @@ function getMatSelectNonFunctionValueError() {
|
|
|
82
81
|
|
|
83
82
|
let nextUniqueId = 0;
|
|
84
83
|
/** Injection token that determines the scroll handling while a select is open. */
|
|
85
|
-
const MAT_SELECT_SCROLL_STRATEGY = new InjectionToken('mat-select-scroll-strategy'
|
|
84
|
+
const MAT_SELECT_SCROLL_STRATEGY = new InjectionToken('mat-select-scroll-strategy', {
|
|
85
|
+
providedIn: 'root',
|
|
86
|
+
factory: () => {
|
|
87
|
+
const overlay = inject(Overlay);
|
|
88
|
+
return () => overlay.scrollStrategies.reposition();
|
|
89
|
+
},
|
|
90
|
+
});
|
|
86
91
|
/** @docs-private */
|
|
87
92
|
function MAT_SELECT_SCROLL_STRATEGY_PROVIDER_FACTORY(overlay) {
|
|
88
93
|
return () => overlay.scrollStrategies.reposition();
|
|
@@ -112,30 +117,7 @@ class MatSelectChange {
|
|
|
112
117
|
this.value = value;
|
|
113
118
|
}
|
|
114
119
|
}
|
|
115
|
-
|
|
116
|
-
/** @docs-private */
|
|
117
|
-
const _MatSelectMixinBase = mixinDisableRipple(mixinTabIndex(mixinDisabled(mixinErrorState(class {
|
|
118
|
-
constructor(_elementRef, _defaultErrorStateMatcher, _parentForm, _parentFormGroup,
|
|
119
|
-
/**
|
|
120
|
-
* Form control bound to the component.
|
|
121
|
-
* Implemented as part of `MatFormFieldControl`.
|
|
122
|
-
* @docs-private
|
|
123
|
-
*/
|
|
124
|
-
ngControl) {
|
|
125
|
-
this._elementRef = _elementRef;
|
|
126
|
-
this._defaultErrorStateMatcher = _defaultErrorStateMatcher;
|
|
127
|
-
this._parentForm = _parentForm;
|
|
128
|
-
this._parentFormGroup = _parentFormGroup;
|
|
129
|
-
this.ngControl = ngControl;
|
|
130
|
-
/**
|
|
131
|
-
* Emits whenever the component state changes and should cause the parent
|
|
132
|
-
* form-field to update. Implemented as part of `MatFormFieldControl`.
|
|
133
|
-
* @docs-private
|
|
134
|
-
*/
|
|
135
|
-
this.stateChanges = new Subject();
|
|
136
|
-
}
|
|
137
|
-
}))));
|
|
138
|
-
class MatSelect extends _MatSelectMixinBase {
|
|
120
|
+
class MatSelect {
|
|
139
121
|
/** Scrolls a particular option into the view. */
|
|
140
122
|
_scrollOptionIntoView(index) {
|
|
141
123
|
const option = this.options.toArray()[index];
|
|
@@ -171,7 +153,7 @@ class MatSelect extends _MatSelectMixinBase {
|
|
|
171
153
|
return this._hideSingleSelectionIndicator;
|
|
172
154
|
}
|
|
173
155
|
set hideSingleSelectionIndicator(value) {
|
|
174
|
-
this._hideSingleSelectionIndicator =
|
|
156
|
+
this._hideSingleSelectionIndicator = value;
|
|
175
157
|
this._syncParentProperties();
|
|
176
158
|
}
|
|
177
159
|
/** Placeholder to be shown if no value has been selected. */
|
|
@@ -187,7 +169,7 @@ class MatSelect extends _MatSelectMixinBase {
|
|
|
187
169
|
return this._required ?? this.ngControl?.control?.hasValidator(Validators.required) ?? false;
|
|
188
170
|
}
|
|
189
171
|
set required(value) {
|
|
190
|
-
this._required =
|
|
172
|
+
this._required = value;
|
|
191
173
|
this.stateChanges.next();
|
|
192
174
|
}
|
|
193
175
|
/** Whether the user should be allowed to select multiple options. */
|
|
@@ -198,14 +180,7 @@ class MatSelect extends _MatSelectMixinBase {
|
|
|
198
180
|
if (this._selectionModel && (typeof ngDevMode === 'undefined' || ngDevMode)) {
|
|
199
181
|
throw getMatSelectDynamicMultipleError();
|
|
200
182
|
}
|
|
201
|
-
this._multiple =
|
|
202
|
-
}
|
|
203
|
-
/** Whether to center the active option over the trigger. */
|
|
204
|
-
get disableOptionCentering() {
|
|
205
|
-
return this._disableOptionCentering;
|
|
206
|
-
}
|
|
207
|
-
set disableOptionCentering(value) {
|
|
208
|
-
this._disableOptionCentering = coerceBooleanProperty(value);
|
|
183
|
+
this._multiple = value;
|
|
209
184
|
}
|
|
210
185
|
/**
|
|
211
186
|
* Function to compare the option values with the selected values. The first argument
|
|
@@ -235,12 +210,12 @@ class MatSelect extends _MatSelectMixinBase {
|
|
|
235
210
|
this._onChange(newValue);
|
|
236
211
|
}
|
|
237
212
|
}
|
|
238
|
-
/**
|
|
239
|
-
get
|
|
240
|
-
return this.
|
|
213
|
+
/** Object used to control when error messages are shown. */
|
|
214
|
+
get errorStateMatcher() {
|
|
215
|
+
return this._errorStateTracker.matcher;
|
|
241
216
|
}
|
|
242
|
-
set
|
|
243
|
-
this.
|
|
217
|
+
set errorStateMatcher(value) {
|
|
218
|
+
this._errorStateTracker.matcher = value;
|
|
244
219
|
}
|
|
245
220
|
/** Unique id of the element. */
|
|
246
221
|
get id() {
|
|
@@ -250,13 +225,21 @@ class MatSelect extends _MatSelectMixinBase {
|
|
|
250
225
|
this._id = value || this._uid;
|
|
251
226
|
this.stateChanges.next();
|
|
252
227
|
}
|
|
253
|
-
|
|
254
|
-
|
|
228
|
+
/** Whether the select is in an error state. */
|
|
229
|
+
get errorState() {
|
|
230
|
+
return this._errorStateTracker.errorState;
|
|
231
|
+
}
|
|
232
|
+
set errorState(value) {
|
|
233
|
+
this._errorStateTracker.errorState = value;
|
|
234
|
+
}
|
|
235
|
+
constructor(_viewportRuler, _changeDetectorRef, _ngZone, defaultErrorStateMatcher, _elementRef, _dir, parentForm, parentFormGroup, _parentFormField, ngControl, tabIndex, scrollStrategyFactory, _liveAnnouncer, _defaultOptions) {
|
|
255
236
|
this._viewportRuler = _viewportRuler;
|
|
256
237
|
this._changeDetectorRef = _changeDetectorRef;
|
|
257
238
|
this._ngZone = _ngZone;
|
|
239
|
+
this._elementRef = _elementRef;
|
|
258
240
|
this._dir = _dir;
|
|
259
241
|
this._parentFormField = _parentFormField;
|
|
242
|
+
this.ngControl = ngControl;
|
|
260
243
|
this._liveAnnouncer = _liveAnnouncer;
|
|
261
244
|
this._defaultOptions = _defaultOptions;
|
|
262
245
|
/**
|
|
@@ -303,6 +286,12 @@ class MatSelect extends _MatSelectMixinBase {
|
|
|
303
286
|
this._triggerAriaLabelledBy = null;
|
|
304
287
|
/** Emits whenever the component is destroyed. */
|
|
305
288
|
this._destroy = new Subject();
|
|
289
|
+
/**
|
|
290
|
+
* Emits whenever the component state changes and should cause the parent
|
|
291
|
+
* form-field to update. Implemented as part of `MatFormFieldControl`.
|
|
292
|
+
* @docs-private
|
|
293
|
+
*/
|
|
294
|
+
this.stateChanges = new Subject();
|
|
306
295
|
/** `View -> model callback called when value changes` */
|
|
307
296
|
this._onChange = () => { };
|
|
308
297
|
/** `View -> model callback called when select has been touched` */
|
|
@@ -315,9 +304,16 @@ class MatSelect extends _MatSelectMixinBase {
|
|
|
315
304
|
this._focused = false;
|
|
316
305
|
/** A name for this control that can be used by `mat-form-field`. */
|
|
317
306
|
this.controlType = 'mat-select';
|
|
307
|
+
/** Whether the select is disabled. */
|
|
308
|
+
this.disabled = false;
|
|
309
|
+
/** Whether ripples in the select are disabled. */
|
|
310
|
+
this.disableRipple = false;
|
|
311
|
+
/** Tab index of the select. */
|
|
312
|
+
this.tabIndex = 0;
|
|
318
313
|
this._hideSingleSelectionIndicator = this._defaultOptions?.hideSingleSelectionIndicator ?? false;
|
|
319
314
|
this._multiple = false;
|
|
320
|
-
|
|
315
|
+
/** Whether to center the active option over the trigger. */
|
|
316
|
+
this.disableOptionCentering = this._defaultOptions?.disableOptionCentering ?? false;
|
|
321
317
|
/** Aria label of the select. */
|
|
322
318
|
this.ariaLabel = '';
|
|
323
319
|
/**
|
|
@@ -387,8 +383,9 @@ class MatSelect extends _MatSelectMixinBase {
|
|
|
387
383
|
// Note that we only want to set this when the defaults pass it in, otherwise it should
|
|
388
384
|
// stay as `undefined` so that it falls back to the default in the key manager.
|
|
389
385
|
if (_defaultOptions?.typeaheadDebounceInterval != null) {
|
|
390
|
-
this.
|
|
386
|
+
this.typeaheadDebounceInterval = _defaultOptions.typeaheadDebounceInterval;
|
|
391
387
|
}
|
|
388
|
+
this._errorStateTracker = new _ErrorStateTracker(defaultErrorStateMatcher, ngControl, parentFormGroup, parentForm, this.stateChanges);
|
|
392
389
|
this._scrollStrategyFactory = scrollStrategyFactory;
|
|
393
390
|
this._scrollStrategy = this._scrollStrategyFactory();
|
|
394
391
|
this.tabIndex = parseInt(tabIndex) || 0;
|
|
@@ -455,13 +452,13 @@ class MatSelect extends _MatSelectMixinBase {
|
|
|
455
452
|
}
|
|
456
453
|
}
|
|
457
454
|
ngOnChanges(changes) {
|
|
458
|
-
// Updating the disabled state is handled by
|
|
455
|
+
// Updating the disabled state is handled by the input, but we need to additionally let
|
|
459
456
|
// the parent form field know to run change detection when the disabled state changes.
|
|
460
457
|
if (changes['disabled'] || changes['userAriaDescribedBy']) {
|
|
461
458
|
this.stateChanges.next();
|
|
462
459
|
}
|
|
463
460
|
if (changes['typeaheadDebounceInterval'] && this._keyManager) {
|
|
464
|
-
this._keyManager.withTypeAhead(this.
|
|
461
|
+
this._keyManager.withTypeAhead(this.typeaheadDebounceInterval);
|
|
465
462
|
}
|
|
466
463
|
}
|
|
467
464
|
ngOnDestroy() {
|
|
@@ -616,6 +613,10 @@ class MatSelect extends _MatSelectMixinBase {
|
|
|
616
613
|
}
|
|
617
614
|
return this._selectionModel.selected[0].viewValue;
|
|
618
615
|
}
|
|
616
|
+
/** Refreshes the error state of the select. */
|
|
617
|
+
updateErrorState() {
|
|
618
|
+
this._errorStateTracker.updateErrorState();
|
|
619
|
+
}
|
|
619
620
|
/** Whether the element is in RTL mode. */
|
|
620
621
|
_isRtl() {
|
|
621
622
|
return this._dir ? this._dir.value === 'rtl' : false;
|
|
@@ -831,7 +832,7 @@ class MatSelect extends _MatSelectMixinBase {
|
|
|
831
832
|
/** Sets up a key manager to listen to keyboard events on the overlay panel. */
|
|
832
833
|
_initKeyManager() {
|
|
833
834
|
this._keyManager = new ActiveDescendantKeyManager(this.options)
|
|
834
|
-
.withTypeAhead(this.
|
|
835
|
+
.withTypeAhead(this.typeaheadDebounceInterval)
|
|
835
836
|
.withVerticalOrientation()
|
|
836
837
|
.withHorizontalOrientation(this._isRtl() ? 'rtl' : 'ltr')
|
|
837
838
|
.withHomeAndEnd()
|
|
@@ -1039,20 +1040,20 @@ class MatSelect extends _MatSelectMixinBase {
|
|
|
1039
1040
|
return this.panelOpen || !this.empty || (this.focused && !!this.placeholder);
|
|
1040
1041
|
}
|
|
1041
1042
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: MatSelect, deps: [{ token: i1.ViewportRuler }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i2.ErrorStateMatcher }, { token: i0.ElementRef }, { token: i3.Directionality, optional: true }, { token: i4.NgForm, optional: true }, { token: i4.FormGroupDirective, optional: true }, { token: MAT_FORM_FIELD, optional: true }, { token: i4.NgControl, optional: true, self: true }, { token: 'tabindex', attribute: true }, { token: MAT_SELECT_SCROLL_STRATEGY }, { token: i5.LiveAnnouncer }, { token: MAT_SELECT_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1042
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.4", type: MatSelect, selector: "mat-select", inputs: {
|
|
1043
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.4", type: MatSelect, isStandalone: true, selector: "mat-select", inputs: { userAriaDescribedBy: ["aria-describedby", "userAriaDescribedBy"], panelClass: "panelClass", disabled: ["disabled", "disabled", booleanAttribute], disableRipple: ["disableRipple", "disableRipple", booleanAttribute], tabIndex: ["tabIndex", "tabIndex", (value) => (value == null ? 0 : numberAttribute(value))], hideSingleSelectionIndicator: ["hideSingleSelectionIndicator", "hideSingleSelectionIndicator", booleanAttribute], placeholder: "placeholder", required: ["required", "required", booleanAttribute], multiple: ["multiple", "multiple", booleanAttribute], disableOptionCentering: ["disableOptionCentering", "disableOptionCentering", booleanAttribute], compareWith: "compareWith", value: "value", ariaLabel: ["aria-label", "ariaLabel"], ariaLabelledby: ["aria-labelledby", "ariaLabelledby"], errorStateMatcher: "errorStateMatcher", typeaheadDebounceInterval: ["typeaheadDebounceInterval", "typeaheadDebounceInterval", numberAttribute], sortComparator: "sortComparator", id: "id", panelWidth: "panelWidth" }, outputs: { openedChange: "openedChange", _openedStream: "opened", _closedStream: "closed", selectionChange: "selectionChange", valueChange: "valueChange" }, host: { attributes: { "role": "combobox", "aria-autocomplete": "none", "aria-haspopup": "listbox", "ngSkipHydration": "" }, listeners: { "keydown": "_handleKeydown($event)", "focus": "_onFocus()", "blur": "_onBlur()" }, properties: { "attr.id": "id", "attr.tabindex": "disabled ? -1 : tabIndex", "attr.aria-controls": "panelOpen ? id + \"-panel\" : null", "attr.aria-expanded": "panelOpen", "attr.aria-label": "ariaLabel || null", "attr.aria-required": "required.toString()", "attr.aria-disabled": "disabled.toString()", "attr.aria-invalid": "errorState", "attr.aria-activedescendant": "_getAriaActiveDescendant()", "class.mat-mdc-select-disabled": "disabled", "class.mat-mdc-select-invalid": "errorState", "class.mat-mdc-select-required": "required", "class.mat-mdc-select-empty": "empty", "class.mat-mdc-select-multiple": "multiple" }, classAttribute: "mat-mdc-select" }, providers: [
|
|
1043
1044
|
{ provide: MatFormFieldControl, useExisting: MatSelect },
|
|
1044
1045
|
{ provide: MAT_OPTION_PARENT_COMPONENT, useExisting: MatSelect },
|
|
1045
|
-
], queries: [{ propertyName: "customTrigger", first: true, predicate: MAT_SELECT_TRIGGER, descendants: true }, { propertyName: "options", predicate: MatOption, descendants: true }, { propertyName: "optionGroups", predicate: MAT_OPTGROUP, descendants: true }], viewQueries: [{ propertyName: "trigger", first: true, predicate: ["trigger"], descendants: true }, { propertyName: "panel", first: true, predicate: ["panel"], descendants: true }, { propertyName: "_overlayDir", first: true, predicate: CdkConnectedOverlay, descendants: true }], exportAs: ["matSelect"],
|
|
1046
|
+
], queries: [{ propertyName: "customTrigger", first: true, predicate: MAT_SELECT_TRIGGER, descendants: true }, { propertyName: "options", predicate: MatOption, descendants: true }, { propertyName: "optionGroups", predicate: MAT_OPTGROUP, descendants: true }], viewQueries: [{ propertyName: "trigger", first: true, predicate: ["trigger"], descendants: true }, { propertyName: "panel", first: true, predicate: ["panel"], descendants: true }, { propertyName: "_overlayDir", first: true, predicate: CdkConnectedOverlay, descendants: true }], exportAs: ["matSelect"], usesOnChanges: true, ngImport: i0, template: "<div cdk-overlay-origin\n class=\"mat-mdc-select-trigger\"\n (click)=\"toggle()\"\n #fallbackOverlayOrigin=\"cdkOverlayOrigin\"\n #trigger>\n\n <div class=\"mat-mdc-select-value\" [attr.id]=\"_valueId\">\n @if (empty) {\n <span class=\"mat-mdc-select-placeholder mat-mdc-select-min-line\">{{placeholder}}</span>\n } @else {\n <span class=\"mat-mdc-select-value-text\">\n @if (customTrigger) {\n <ng-content select=\"mat-select-trigger\"></ng-content>\n } @else {\n <span class=\"mat-mdc-select-min-line\">{{triggerValue}}</span>\n }\n </span>\n }\n </div>\n\n <div class=\"mat-mdc-select-arrow-wrapper\">\n <div class=\"mat-mdc-select-arrow\">\n <!-- Use an inline SVG, because it works better than a CSS triangle in high contrast mode. -->\n <svg viewBox=\"0 0 24 24\" width=\"24px\" height=\"24px\" focusable=\"false\" aria-hidden=\"true\">\n <path d=\"M7 10l5 5 5-5z\"/>\n </svg>\n </div>\n </div>\n</div>\n\n<ng-template\n cdk-connected-overlay\n cdkConnectedOverlayLockPosition\n cdkConnectedOverlayHasBackdrop\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\n [cdkConnectedOverlayPanelClass]=\"_overlayPanelClass\"\n [cdkConnectedOverlayScrollStrategy]=\"_scrollStrategy\"\n [cdkConnectedOverlayOrigin]=\"_preferredOverlayOrigin || fallbackOverlayOrigin\"\n [cdkConnectedOverlayOpen]=\"panelOpen\"\n [cdkConnectedOverlayPositions]=\"_positions\"\n [cdkConnectedOverlayWidth]=\"_overlayWidth\"\n (backdropClick)=\"close()\"\n (attach)=\"_onAttached()\"\n (detach)=\"close()\">\n <div\n #panel\n role=\"listbox\"\n tabindex=\"-1\"\n class=\"mat-mdc-select-panel mdc-menu-surface mdc-menu-surface--open {{ _getPanelTheme() }}\"\n [attr.id]=\"id + '-panel'\"\n [attr.aria-multiselectable]=\"multiple\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"_getPanelAriaLabelledby()\"\n [ngClass]=\"panelClass\"\n [@transformPanel]=\"'showing'\"\n (@transformPanel.done)=\"_panelDoneAnimatingStream.next($event.toState)\"\n (keydown)=\"_handleKeydown($event)\">\n <ng-content></ng-content>\n </div>\n</ng-template>\n", styles: [".mat-mdc-select{display:inline-block;width:100%;outline:none;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;color:var(--mat-select-enabled-trigger-text-color);font-family:var(--mat-select-trigger-text-font);line-height:var(--mat-select-trigger-text-line-height);font-size:var(--mat-select-trigger-text-size);font-weight:var(--mat-select-trigger-text-weight);letter-spacing:var(--mat-select-trigger-text-tracking)}.mat-mdc-select-disabled{color:var(--mat-select-disabled-trigger-text-color)}.mat-mdc-select-trigger{display:inline-flex;align-items:center;cursor:pointer;position:relative;box-sizing:border-box;width:100%}.mat-mdc-select-disabled .mat-mdc-select-trigger{-webkit-user-select:none;user-select:none;cursor:default}.mat-mdc-select-value{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-mdc-select-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-mdc-select-arrow-wrapper{height:24px;flex-shrink:0;display:inline-flex;align-items:center}.mat-form-field-appearance-fill .mat-mdc-select-arrow-wrapper{transform:translateY(-8px)}.mat-form-field-appearance-fill .mdc-text-field--no-label .mat-mdc-select-arrow-wrapper{transform:none}.mat-mdc-select-arrow{width:10px;height:5px;position:relative;color:var(--mat-select-enabled-arrow-color)}.mat-mdc-form-field.mat-focused .mat-mdc-select-arrow{color:var(--mat-select-focused-arrow-color)}.mat-mdc-form-field .mat-mdc-select.mat-mdc-select-invalid .mat-mdc-select-arrow{color:var(--mat-select-invalid-arrow-color)}.mat-mdc-form-field .mat-mdc-select.mat-mdc-select-disabled .mat-mdc-select-arrow{color:var(--mat-select-disabled-arrow-color)}.mat-mdc-select-arrow svg{fill:currentColor;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}.cdk-high-contrast-active .mat-mdc-select-arrow svg{fill:CanvasText}.mat-mdc-select-disabled .cdk-high-contrast-active .mat-mdc-select-arrow svg{fill:GrayText}div.mat-mdc-select-panel{box-shadow:0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);width:100%;max-height:275px;outline:0;overflow:auto;padding:8px 0;border-radius:4px;box-sizing:border-box;position:static;background-color:var(--mat-select-panel-background-color)}.cdk-high-contrast-active div.mat-mdc-select-panel{outline:solid 1px}.cdk-overlay-pane:not(.mat-mdc-select-panel-above) div.mat-mdc-select-panel{border-top-left-radius:0;border-top-right-radius:0;transform-origin:top center}.mat-mdc-select-panel-above div.mat-mdc-select-panel{border-bottom-left-radius:0;border-bottom-right-radius:0;transform-origin:bottom center}.mat-mdc-select-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1);color:var(--mat-select-placeholder-text-color)}._mat-animation-noopable .mat-mdc-select-placeholder{transition:none}.mat-form-field-hide-placeholder .mat-mdc-select-placeholder{color:rgba(0,0,0,0);-webkit-text-fill-color:rgba(0,0,0,0);transition:none;display:block}.mat-mdc-form-field-type-mat-select:not(.mat-form-field-disabled) .mat-mdc-text-field-wrapper{cursor:pointer}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mat-mdc-floating-label{max-width:calc(100% - 18px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mdc-floating-label--float-above{max-width:calc(100%/0.75 - 24px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-notched-outline__notch{max-width:calc(100% - 60px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-text-field--label-floating .mdc-notched-outline__notch{max-width:calc(100% - 24px)}.mat-mdc-select-min-line:empty::before{content:\" \";white-space:pre;width:1px;display:inline-block;visibility:hidden}"], dependencies: [{ kind: "directive", type: CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "directive", type: CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], animations: [matSelectAnimations.transformPanel], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
1046
1047
|
}
|
|
1047
1048
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: MatSelect, decorators: [{
|
|
1048
1049
|
type: Component,
|
|
1049
|
-
args: [{ selector: 'mat-select', exportAs: 'matSelect',
|
|
1050
|
+
args: [{ selector: 'mat-select', exportAs: 'matSelect', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
1050
1051
|
'role': 'combobox',
|
|
1051
1052
|
'aria-autocomplete': 'none',
|
|
1052
1053
|
'aria-haspopup': 'listbox',
|
|
1053
1054
|
'class': 'mat-mdc-select',
|
|
1054
1055
|
'[attr.id]': 'id',
|
|
1055
|
-
'[attr.tabindex]': 'tabIndex',
|
|
1056
|
+
'[attr.tabindex]': 'disabled ? -1 : tabIndex',
|
|
1056
1057
|
'[attr.aria-controls]': 'panelOpen ? id + "-panel" : null',
|
|
1057
1058
|
'[attr.aria-expanded]': 'panelOpen',
|
|
1058
1059
|
'[attr.aria-label]': 'ariaLabel || null',
|
|
@@ -1072,14 +1073,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImpor
|
|
|
1072
1073
|
}, animations: [matSelectAnimations.transformPanel], providers: [
|
|
1073
1074
|
{ provide: MatFormFieldControl, useExisting: MatSelect },
|
|
1074
1075
|
{ provide: MAT_OPTION_PARENT_COMPONENT, useExisting: MatSelect },
|
|
1075
|
-
], template: "<div cdk-overlay-origin\n class=\"mat-mdc-select-trigger\"\n (click)=\"toggle()\"\n #fallbackOverlayOrigin=\"cdkOverlayOrigin\"\n #trigger>\n\n <div class=\"mat-mdc-select-value\" [attr.id]=\"_valueId\">\n @if (empty) {\n <span class=\"mat-mdc-select-placeholder mat-mdc-select-min-line\">{{placeholder}}</span>\n } @else {\n <span class=\"mat-mdc-select-value-text\">\n @if (customTrigger) {\n <ng-content select=\"mat-select-trigger\"></ng-content>\n } @else {\n <span class=\"mat-mdc-select-min-line\">{{triggerValue}}</span>\n }\n </span>\n }\n </div>\n\n <div class=\"mat-mdc-select-arrow-wrapper\">\n <div class=\"mat-mdc-select-arrow\">\n <!-- Use an inline SVG, because it works better than a CSS triangle in high contrast mode. -->\n <svg viewBox=\"0 0 24 24\" width=\"24px\" height=\"24px\" focusable=\"false\" aria-hidden=\"true\">\n <path d=\"M7 10l5 5 5-5z\"/>\n </svg>\n </div>\n </div>\n</div>\n\n<ng-template\n cdk-connected-overlay\n cdkConnectedOverlayLockPosition\n cdkConnectedOverlayHasBackdrop\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\n [cdkConnectedOverlayPanelClass]=\"_overlayPanelClass\"\n [cdkConnectedOverlayScrollStrategy]=\"_scrollStrategy\"\n [cdkConnectedOverlayOrigin]=\"_preferredOverlayOrigin || fallbackOverlayOrigin\"\n [cdkConnectedOverlayOpen]=\"panelOpen\"\n [cdkConnectedOverlayPositions]=\"_positions\"\n [cdkConnectedOverlayWidth]=\"_overlayWidth\"\n (backdropClick)=\"close()\"\n (attach)=\"_onAttached()\"\n (detach)=\"close()\">\n <div\n #panel\n role=\"listbox\"\n tabindex=\"-1\"\n class=\"mat-mdc-select-panel mdc-menu-surface mdc-menu-surface--open {{ _getPanelTheme() }}\"\n [attr.id]=\"id + '-panel'\"\n [attr.aria-multiselectable]=\"multiple\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"_getPanelAriaLabelledby()\"\n [ngClass]=\"panelClass\"\n [@transformPanel]=\"'showing'\"\n (@transformPanel.done)=\"_panelDoneAnimatingStream.next($event.toState)\"\n (keydown)=\"_handleKeydown($event)\">\n <ng-content></ng-content>\n </div>\n</ng-template>\n", styles: [".mat-mdc-select{display:inline-block;width:100%;outline:none;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;color:var(--mat-select-enabled-trigger-text-color);font-family:var(--mat-select-trigger-text-font);line-height:var(--mat-select-trigger-text-line-height);font-size:var(--mat-select-trigger-text-size);font-weight:var(--mat-select-trigger-text-weight);letter-spacing:var(--mat-select-trigger-text-tracking)}.mat-mdc-select-disabled{color:var(--mat-select-disabled-trigger-text-color)}.mat-mdc-select-trigger{display:inline-flex;align-items:center;cursor:pointer;position:relative;box-sizing:border-box;width:100%}.mat-mdc-select-disabled .mat-mdc-select-trigger{-webkit-user-select:none;user-select:none;cursor:default}.mat-mdc-select-value{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-mdc-select-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-mdc-select-arrow-wrapper{height:24px;flex-shrink:0;display:inline-flex;align-items:center}.mat-form-field-appearance-fill .mat-mdc-select-arrow-wrapper{transform:translateY(-8px)}.mat-form-field-appearance-fill .mdc-text-field--no-label .mat-mdc-select-arrow-wrapper{transform:none}.mat-mdc-select-arrow{width:10px;height:5px;position:relative;color:var(--mat-select-enabled-arrow-color)}.mat-mdc-form-field.mat-focused .mat-mdc-select-arrow{color:var(--mat-select-focused-arrow-color)}.mat-mdc-form-field .mat-mdc-select.mat-mdc-select-invalid .mat-mdc-select-arrow{color:var(--mat-select-invalid-arrow-color)}.mat-mdc-form-field .mat-mdc-select.mat-mdc-select-disabled .mat-mdc-select-arrow{color:var(--mat-select-disabled-arrow-color)}.mat-mdc-select-arrow svg{fill:currentColor;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}.cdk-high-contrast-active .mat-mdc-select-arrow svg{fill:CanvasText}.mat-mdc-select-disabled .cdk-high-contrast-active .mat-mdc-select-arrow svg{fill:GrayText}div.mat-mdc-select-panel{box-shadow:0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);width:100%;max-height:275px;outline:0;overflow:auto;padding:8px 0;border-radius:4px;box-sizing:border-box;position:static;background-color:var(--mat-select-panel-background-color)}.cdk-high-contrast-active div.mat-mdc-select-panel{outline:solid 1px}.cdk-overlay-pane:not(.mat-mdc-select-panel-above) div.mat-mdc-select-panel{border-top-left-radius:0;border-top-right-radius:0;transform-origin:top center}.mat-mdc-select-panel-above div.mat-mdc-select-panel{border-bottom-left-radius:0;border-bottom-right-radius:0;transform-origin:bottom center}.mat-mdc-select-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1);color:var(--mat-select-placeholder-text-color)}._mat-animation-noopable .mat-mdc-select-placeholder{transition:none}.mat-form-field-hide-placeholder .mat-mdc-select-placeholder{color:rgba(0,0,0,0);-webkit-text-fill-color:rgba(0,0,0,0);transition:none;display:block}.mat-mdc-form-field-type-mat-select:not(.mat-form-field-disabled) .mat-mdc-text-field-wrapper{cursor:pointer}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mat-mdc-floating-label{max-width:calc(100% - 18px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mdc-floating-label--float-above{max-width:calc(100%/0.75 - 24px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-notched-outline__notch{max-width:calc(100% - 60px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-text-field--label-floating .mdc-notched-outline__notch{max-width:calc(100% - 24px)}.mat-mdc-select-min-line:empty::before{content:\" \";white-space:pre;width:1px;display:inline-block;visibility:hidden}"] }]
|
|
1076
|
+
], standalone: true, imports: [CdkOverlayOrigin, CdkConnectedOverlay, NgClass], template: "<div cdk-overlay-origin\n class=\"mat-mdc-select-trigger\"\n (click)=\"toggle()\"\n #fallbackOverlayOrigin=\"cdkOverlayOrigin\"\n #trigger>\n\n <div class=\"mat-mdc-select-value\" [attr.id]=\"_valueId\">\n @if (empty) {\n <span class=\"mat-mdc-select-placeholder mat-mdc-select-min-line\">{{placeholder}}</span>\n } @else {\n <span class=\"mat-mdc-select-value-text\">\n @if (customTrigger) {\n <ng-content select=\"mat-select-trigger\"></ng-content>\n } @else {\n <span class=\"mat-mdc-select-min-line\">{{triggerValue}}</span>\n }\n </span>\n }\n </div>\n\n <div class=\"mat-mdc-select-arrow-wrapper\">\n <div class=\"mat-mdc-select-arrow\">\n <!-- Use an inline SVG, because it works better than a CSS triangle in high contrast mode. -->\n <svg viewBox=\"0 0 24 24\" width=\"24px\" height=\"24px\" focusable=\"false\" aria-hidden=\"true\">\n <path d=\"M7 10l5 5 5-5z\"/>\n </svg>\n </div>\n </div>\n</div>\n\n<ng-template\n cdk-connected-overlay\n cdkConnectedOverlayLockPosition\n cdkConnectedOverlayHasBackdrop\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\n [cdkConnectedOverlayPanelClass]=\"_overlayPanelClass\"\n [cdkConnectedOverlayScrollStrategy]=\"_scrollStrategy\"\n [cdkConnectedOverlayOrigin]=\"_preferredOverlayOrigin || fallbackOverlayOrigin\"\n [cdkConnectedOverlayOpen]=\"panelOpen\"\n [cdkConnectedOverlayPositions]=\"_positions\"\n [cdkConnectedOverlayWidth]=\"_overlayWidth\"\n (backdropClick)=\"close()\"\n (attach)=\"_onAttached()\"\n (detach)=\"close()\">\n <div\n #panel\n role=\"listbox\"\n tabindex=\"-1\"\n class=\"mat-mdc-select-panel mdc-menu-surface mdc-menu-surface--open {{ _getPanelTheme() }}\"\n [attr.id]=\"id + '-panel'\"\n [attr.aria-multiselectable]=\"multiple\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"_getPanelAriaLabelledby()\"\n [ngClass]=\"panelClass\"\n [@transformPanel]=\"'showing'\"\n (@transformPanel.done)=\"_panelDoneAnimatingStream.next($event.toState)\"\n (keydown)=\"_handleKeydown($event)\">\n <ng-content></ng-content>\n </div>\n</ng-template>\n", styles: [".mat-mdc-select{display:inline-block;width:100%;outline:none;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;color:var(--mat-select-enabled-trigger-text-color);font-family:var(--mat-select-trigger-text-font);line-height:var(--mat-select-trigger-text-line-height);font-size:var(--mat-select-trigger-text-size);font-weight:var(--mat-select-trigger-text-weight);letter-spacing:var(--mat-select-trigger-text-tracking)}.mat-mdc-select-disabled{color:var(--mat-select-disabled-trigger-text-color)}.mat-mdc-select-trigger{display:inline-flex;align-items:center;cursor:pointer;position:relative;box-sizing:border-box;width:100%}.mat-mdc-select-disabled .mat-mdc-select-trigger{-webkit-user-select:none;user-select:none;cursor:default}.mat-mdc-select-value{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-mdc-select-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-mdc-select-arrow-wrapper{height:24px;flex-shrink:0;display:inline-flex;align-items:center}.mat-form-field-appearance-fill .mat-mdc-select-arrow-wrapper{transform:translateY(-8px)}.mat-form-field-appearance-fill .mdc-text-field--no-label .mat-mdc-select-arrow-wrapper{transform:none}.mat-mdc-select-arrow{width:10px;height:5px;position:relative;color:var(--mat-select-enabled-arrow-color)}.mat-mdc-form-field.mat-focused .mat-mdc-select-arrow{color:var(--mat-select-focused-arrow-color)}.mat-mdc-form-field .mat-mdc-select.mat-mdc-select-invalid .mat-mdc-select-arrow{color:var(--mat-select-invalid-arrow-color)}.mat-mdc-form-field .mat-mdc-select.mat-mdc-select-disabled .mat-mdc-select-arrow{color:var(--mat-select-disabled-arrow-color)}.mat-mdc-select-arrow svg{fill:currentColor;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}.cdk-high-contrast-active .mat-mdc-select-arrow svg{fill:CanvasText}.mat-mdc-select-disabled .cdk-high-contrast-active .mat-mdc-select-arrow svg{fill:GrayText}div.mat-mdc-select-panel{box-shadow:0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);width:100%;max-height:275px;outline:0;overflow:auto;padding:8px 0;border-radius:4px;box-sizing:border-box;position:static;background-color:var(--mat-select-panel-background-color)}.cdk-high-contrast-active div.mat-mdc-select-panel{outline:solid 1px}.cdk-overlay-pane:not(.mat-mdc-select-panel-above) div.mat-mdc-select-panel{border-top-left-radius:0;border-top-right-radius:0;transform-origin:top center}.mat-mdc-select-panel-above div.mat-mdc-select-panel{border-bottom-left-radius:0;border-bottom-right-radius:0;transform-origin:bottom center}.mat-mdc-select-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1);color:var(--mat-select-placeholder-text-color)}._mat-animation-noopable .mat-mdc-select-placeholder{transition:none}.mat-form-field-hide-placeholder .mat-mdc-select-placeholder{color:rgba(0,0,0,0);-webkit-text-fill-color:rgba(0,0,0,0);transition:none;display:block}.mat-mdc-form-field-type-mat-select:not(.mat-form-field-disabled) .mat-mdc-text-field-wrapper{cursor:pointer}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mat-mdc-floating-label{max-width:calc(100% - 18px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mdc-floating-label--float-above{max-width:calc(100%/0.75 - 24px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-notched-outline__notch{max-width:calc(100% - 60px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-text-field--label-floating .mdc-notched-outline__notch{max-width:calc(100% - 24px)}.mat-mdc-select-min-line:empty::before{content:\" \";white-space:pre;width:1px;display:inline-block;visibility:hidden}"] }]
|
|
1076
1077
|
}], ctorParameters: () => [{ type: i1.ViewportRuler }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: i2.ErrorStateMatcher }, { type: i0.ElementRef }, { type: i3.Directionality, decorators: [{
|
|
1077
1078
|
type: Optional
|
|
1078
1079
|
}] }, { type: i4.NgForm, decorators: [{
|
|
1079
1080
|
type: Optional
|
|
1080
1081
|
}] }, { type: i4.FormGroupDirective, decorators: [{
|
|
1081
1082
|
type: Optional
|
|
1082
|
-
}] }, { type:
|
|
1083
|
+
}] }, { type: i6.MatFormField, decorators: [{
|
|
1083
1084
|
type: Optional
|
|
1084
1085
|
}, {
|
|
1085
1086
|
type: Inject,
|
|
@@ -1122,16 +1123,31 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImpor
|
|
|
1122
1123
|
args: [CdkConnectedOverlay]
|
|
1123
1124
|
}], panelClass: [{
|
|
1124
1125
|
type: Input
|
|
1126
|
+
}], disabled: [{
|
|
1127
|
+
type: Input,
|
|
1128
|
+
args: [{ transform: booleanAttribute }]
|
|
1129
|
+
}], disableRipple: [{
|
|
1130
|
+
type: Input,
|
|
1131
|
+
args: [{ transform: booleanAttribute }]
|
|
1132
|
+
}], tabIndex: [{
|
|
1133
|
+
type: Input,
|
|
1134
|
+
args: [{
|
|
1135
|
+
transform: (value) => (value == null ? 0 : numberAttribute(value)),
|
|
1136
|
+
}]
|
|
1125
1137
|
}], hideSingleSelectionIndicator: [{
|
|
1126
|
-
type: Input
|
|
1138
|
+
type: Input,
|
|
1139
|
+
args: [{ transform: booleanAttribute }]
|
|
1127
1140
|
}], placeholder: [{
|
|
1128
1141
|
type: Input
|
|
1129
1142
|
}], required: [{
|
|
1130
|
-
type: Input
|
|
1143
|
+
type: Input,
|
|
1144
|
+
args: [{ transform: booleanAttribute }]
|
|
1131
1145
|
}], multiple: [{
|
|
1132
|
-
type: Input
|
|
1146
|
+
type: Input,
|
|
1147
|
+
args: [{ transform: booleanAttribute }]
|
|
1133
1148
|
}], disableOptionCentering: [{
|
|
1134
|
-
type: Input
|
|
1149
|
+
type: Input,
|
|
1150
|
+
args: [{ transform: booleanAttribute }]
|
|
1135
1151
|
}], compareWith: [{
|
|
1136
1152
|
type: Input
|
|
1137
1153
|
}], value: [{
|
|
@@ -1145,7 +1161,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImpor
|
|
|
1145
1161
|
}], errorStateMatcher: [{
|
|
1146
1162
|
type: Input
|
|
1147
1163
|
}], typeaheadDebounceInterval: [{
|
|
1148
|
-
type: Input
|
|
1164
|
+
type: Input,
|
|
1165
|
+
args: [{ transform: numberAttribute }]
|
|
1149
1166
|
}], sortComparator: [{
|
|
1150
1167
|
type: Input
|
|
1151
1168
|
}], id: [{
|
|
@@ -1170,25 +1187,34 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImpor
|
|
|
1170
1187
|
*/
|
|
1171
1188
|
class MatSelectTrigger {
|
|
1172
1189
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: MatSelectTrigger, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
1173
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.4", type: MatSelectTrigger, selector: "mat-select-trigger", providers: [{ provide: MAT_SELECT_TRIGGER, useExisting: MatSelectTrigger }], ngImport: i0 }); }
|
|
1190
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.4", type: MatSelectTrigger, isStandalone: true, selector: "mat-select-trigger", providers: [{ provide: MAT_SELECT_TRIGGER, useExisting: MatSelectTrigger }], ngImport: i0 }); }
|
|
1174
1191
|
}
|
|
1175
1192
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: MatSelectTrigger, decorators: [{
|
|
1176
1193
|
type: Directive,
|
|
1177
1194
|
args: [{
|
|
1178
1195
|
selector: 'mat-select-trigger',
|
|
1179
1196
|
providers: [{ provide: MAT_SELECT_TRIGGER, useExisting: MatSelectTrigger }],
|
|
1197
|
+
standalone: true,
|
|
1180
1198
|
}]
|
|
1181
1199
|
}] });
|
|
1182
1200
|
|
|
1183
1201
|
class MatSelectModule {
|
|
1184
1202
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: MatSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
1185
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.4", ngImport: i0, type: MatSelectModule,
|
|
1203
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.4", ngImport: i0, type: MatSelectModule, imports: [CommonModule,
|
|
1204
|
+
OverlayModule,
|
|
1205
|
+
MatOptionModule,
|
|
1206
|
+
MatCommonModule,
|
|
1207
|
+
MatSelect,
|
|
1208
|
+
MatSelectTrigger], exports: [CdkScrollableModule,
|
|
1186
1209
|
MatFormFieldModule,
|
|
1187
1210
|
MatSelect,
|
|
1188
1211
|
MatSelectTrigger,
|
|
1189
1212
|
MatOptionModule,
|
|
1190
1213
|
MatCommonModule] }); }
|
|
1191
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: MatSelectModule, providers: [MAT_SELECT_SCROLL_STRATEGY_PROVIDER], imports: [CommonModule,
|
|
1214
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: MatSelectModule, providers: [MAT_SELECT_SCROLL_STRATEGY_PROVIDER], imports: [CommonModule,
|
|
1215
|
+
OverlayModule,
|
|
1216
|
+
MatOptionModule,
|
|
1217
|
+
MatCommonModule, CdkScrollableModule,
|
|
1192
1218
|
MatFormFieldModule,
|
|
1193
1219
|
MatOptionModule,
|
|
1194
1220
|
MatCommonModule] }); }
|
|
@@ -1196,7 +1222,14 @@ class MatSelectModule {
|
|
|
1196
1222
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: MatSelectModule, decorators: [{
|
|
1197
1223
|
type: NgModule,
|
|
1198
1224
|
args: [{
|
|
1199
|
-
imports: [
|
|
1225
|
+
imports: [
|
|
1226
|
+
CommonModule,
|
|
1227
|
+
OverlayModule,
|
|
1228
|
+
MatOptionModule,
|
|
1229
|
+
MatCommonModule,
|
|
1230
|
+
MatSelect,
|
|
1231
|
+
MatSelectTrigger,
|
|
1232
|
+
],
|
|
1200
1233
|
exports: [
|
|
1201
1234
|
CdkScrollableModule,
|
|
1202
1235
|
MatFormFieldModule,
|
|
@@ -1205,7 +1238,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImpor
|
|
|
1205
1238
|
MatOptionModule,
|
|
1206
1239
|
MatCommonModule,
|
|
1207
1240
|
],
|
|
1208
|
-
declarations: [MatSelect, MatSelectTrigger],
|
|
1209
1241
|
providers: [MAT_SELECT_SCROLL_STRATEGY_PROVIDER],
|
|
1210
1242
|
}]
|
|
1211
1243
|
}] });
|