@angular/material 17.0.0-next.2 → 17.0.0-next.4

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.
Files changed (263) hide show
  1. package/autocomplete/index.d.ts +4 -2
  2. package/button/_button-theme.scss +52 -36
  3. package/core/tokens/m2/mdc/_button-filled.scss +92 -0
  4. package/core/tokens/m2/mdc/_icon-button.scss +2 -0
  5. package/esm2022/autocomplete/autocomplete-origin.mjs +4 -4
  6. package/esm2022/autocomplete/autocomplete-trigger.mjs +12 -6
  7. package/esm2022/autocomplete/autocomplete.mjs +4 -4
  8. package/esm2022/autocomplete/module.mjs +5 -5
  9. package/esm2022/badge/badge-module.mjs +5 -5
  10. package/esm2022/badge/badge.mjs +4 -4
  11. package/esm2022/bottom-sheet/bottom-sheet-container.mjs +4 -4
  12. package/esm2022/bottom-sheet/bottom-sheet-module.mjs +5 -5
  13. package/esm2022/bottom-sheet/bottom-sheet.mjs +4 -4
  14. package/esm2022/button/button-base.mjs +7 -7
  15. package/esm2022/button/button.mjs +9 -9
  16. package/esm2022/button/fab.mjs +17 -17
  17. package/esm2022/button/icon-button.mjs +7 -7
  18. package/esm2022/button/module.mjs +5 -5
  19. package/esm2022/button-toggle/button-toggle-module.mjs +5 -5
  20. package/esm2022/button-toggle/button-toggle.mjs +7 -7
  21. package/esm2022/card/card.mjs +43 -43
  22. package/esm2022/card/module.mjs +5 -5
  23. package/esm2022/checkbox/checkbox-required-validator.mjs +4 -4
  24. package/esm2022/checkbox/checkbox.mjs +4 -4
  25. package/esm2022/checkbox/module.mjs +9 -9
  26. package/esm2022/chips/chip-action.mjs +4 -4
  27. package/esm2022/chips/chip-edit-input.mjs +4 -4
  28. package/esm2022/chips/chip-grid.mjs +4 -4
  29. package/esm2022/chips/chip-icons.mjs +10 -10
  30. package/esm2022/chips/chip-input.mjs +4 -4
  31. package/esm2022/chips/chip-listbox.mjs +4 -4
  32. package/esm2022/chips/chip-option.mjs +4 -4
  33. package/esm2022/chips/chip-row.mjs +4 -4
  34. package/esm2022/chips/chip-set.mjs +4 -4
  35. package/esm2022/chips/chip.mjs +4 -4
  36. package/esm2022/chips/module.mjs +5 -5
  37. package/esm2022/core/common-behaviors/common-module.mjs +5 -5
  38. package/esm2022/core/datetime/index.mjs +9 -9
  39. package/esm2022/core/datetime/native-date-adapter.mjs +4 -4
  40. package/esm2022/core/error/error-options.mjs +7 -7
  41. package/esm2022/core/line/line.mjs +8 -8
  42. package/esm2022/core/option/index.mjs +5 -5
  43. package/esm2022/core/option/optgroup.mjs +4 -4
  44. package/esm2022/core/option/option.mjs +4 -4
  45. package/esm2022/core/private/ripple-loader.mjs +4 -4
  46. package/esm2022/core/ripple/index.mjs +5 -5
  47. package/esm2022/core/ripple/ripple.mjs +4 -4
  48. package/esm2022/core/selection/pseudo-checkbox/pseudo-checkbox-module.mjs +5 -5
  49. package/esm2022/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +4 -4
  50. package/esm2022/core/version.mjs +1 -1
  51. package/esm2022/datepicker/calendar-body.mjs +4 -4
  52. package/esm2022/datepicker/calendar.mjs +7 -7
  53. package/esm2022/datepicker/date-range-input-parts.mjs +10 -10
  54. package/esm2022/datepicker/date-range-input.mjs +4 -4
  55. package/esm2022/datepicker/date-range-picker.mjs +4 -4
  56. package/esm2022/datepicker/date-range-selection-strategy.mjs +4 -4
  57. package/esm2022/datepicker/date-selection-model.mjs +10 -10
  58. package/esm2022/datepicker/datepicker-actions.mjs +10 -10
  59. package/esm2022/datepicker/datepicker-base.mjs +7 -7
  60. package/esm2022/datepicker/datepicker-input-base.mjs +4 -4
  61. package/esm2022/datepicker/datepicker-input.mjs +4 -4
  62. package/esm2022/datepicker/datepicker-intl.mjs +4 -4
  63. package/esm2022/datepicker/datepicker-module.mjs +5 -5
  64. package/esm2022/datepicker/datepicker-toggle.mjs +7 -7
  65. package/esm2022/datepicker/datepicker.mjs +4 -4
  66. package/esm2022/datepicker/month-view.mjs +4 -4
  67. package/esm2022/datepicker/multi-year-view.mjs +4 -4
  68. package/esm2022/datepicker/year-view.mjs +4 -4
  69. package/esm2022/dialog/dialog-container.mjs +4 -4
  70. package/esm2022/dialog/dialog-content-directives.mjs +13 -13
  71. package/esm2022/dialog/dialog.mjs +4 -4
  72. package/esm2022/dialog/module.mjs +5 -5
  73. package/esm2022/dialog/testing/dialog-opener.mjs +5 -3
  74. package/esm2022/divider/divider-module.mjs +5 -5
  75. package/esm2022/divider/divider.mjs +4 -4
  76. package/esm2022/expansion/accordion.mjs +4 -4
  77. package/esm2022/expansion/expansion-module.mjs +5 -5
  78. package/esm2022/expansion/expansion-panel-content.mjs +4 -4
  79. package/esm2022/expansion/expansion-panel-header.mjs +10 -10
  80. package/esm2022/expansion/expansion-panel.mjs +7 -7
  81. package/esm2022/form-field/directives/error.mjs +4 -4
  82. package/esm2022/form-field/directives/floating-label.mjs +4 -4
  83. package/esm2022/form-field/directives/hint.mjs +4 -4
  84. package/esm2022/form-field/directives/label.mjs +4 -4
  85. package/esm2022/form-field/directives/line-ripple.mjs +4 -4
  86. package/esm2022/form-field/directives/notched-outline.mjs +4 -4
  87. package/esm2022/form-field/directives/prefix.mjs +4 -4
  88. package/esm2022/form-field/directives/suffix.mjs +4 -4
  89. package/esm2022/form-field/form-field-control.mjs +4 -4
  90. package/esm2022/form-field/form-field.mjs +6 -6
  91. package/esm2022/form-field/module.mjs +5 -5
  92. package/esm2022/grid-list/grid-list-module.mjs +5 -5
  93. package/esm2022/grid-list/grid-list.mjs +4 -4
  94. package/esm2022/grid-list/grid-tile.mjs +16 -16
  95. package/esm2022/icon/icon-module.mjs +5 -5
  96. package/esm2022/icon/icon-registry.mjs +4 -4
  97. package/esm2022/icon/icon.mjs +4 -4
  98. package/esm2022/icon/testing/fake-icon-registry.mjs +8 -8
  99. package/esm2022/input/input.mjs +4 -4
  100. package/esm2022/input/module.mjs +5 -5
  101. package/esm2022/list/action-list.mjs +4 -4
  102. package/esm2022/list/list-base.mjs +7 -7
  103. package/esm2022/list/list-item-sections.mjs +19 -19
  104. package/esm2022/list/list-module.mjs +5 -5
  105. package/esm2022/list/list-option.mjs +4 -4
  106. package/esm2022/list/list.mjs +7 -7
  107. package/esm2022/list/nav-list.mjs +4 -4
  108. package/esm2022/list/selection-list.mjs +4 -4
  109. package/esm2022/list/subheader.mjs +4 -4
  110. package/esm2022/menu/menu-content.mjs +4 -4
  111. package/esm2022/menu/menu-item.mjs +4 -4
  112. package/esm2022/menu/menu-trigger.mjs +4 -4
  113. package/esm2022/menu/menu.mjs +4 -4
  114. package/esm2022/menu/module.mjs +5 -5
  115. package/esm2022/paginator/module.mjs +5 -5
  116. package/esm2022/paginator/paginator-intl.mjs +4 -4
  117. package/esm2022/paginator/paginator.mjs +4 -4
  118. package/esm2022/progress-bar/module.mjs +5 -5
  119. package/esm2022/progress-bar/progress-bar.mjs +4 -4
  120. package/esm2022/progress-spinner/module.mjs +5 -5
  121. package/esm2022/progress-spinner/progress-spinner.mjs +4 -4
  122. package/esm2022/radio/module.mjs +5 -5
  123. package/esm2022/radio/radio.mjs +7 -7
  124. package/esm2022/select/module.mjs +5 -5
  125. package/esm2022/select/select.mjs +7 -7
  126. package/esm2022/sidenav/drawer.mjs +10 -10
  127. package/esm2022/sidenav/sidenav-module.mjs +5 -5
  128. package/esm2022/sidenav/sidenav.mjs +10 -10
  129. package/esm2022/slide-toggle/module.mjs +9 -9
  130. package/esm2022/slide-toggle/slide-toggle-required-validator.mjs +4 -4
  131. package/esm2022/slide-toggle/slide-toggle.mjs +4 -4
  132. package/esm2022/slider/module.mjs +5 -5
  133. package/esm2022/slider/slider-input.mjs +7 -7
  134. package/esm2022/slider/slider-thumb.mjs +4 -4
  135. package/esm2022/slider/slider.mjs +4 -4
  136. package/esm2022/snack-bar/module.mjs +5 -5
  137. package/esm2022/snack-bar/simple-snack-bar.mjs +4 -4
  138. package/esm2022/snack-bar/snack-bar-container.mjs +4 -4
  139. package/esm2022/snack-bar/snack-bar-content.mjs +10 -10
  140. package/esm2022/snack-bar/snack-bar.mjs +4 -4
  141. package/esm2022/sort/sort-header-intl.mjs +4 -4
  142. package/esm2022/sort/sort-header.mjs +4 -4
  143. package/esm2022/sort/sort-module.mjs +5 -5
  144. package/esm2022/sort/sort.mjs +4 -4
  145. package/esm2022/stepper/step-content.mjs +4 -4
  146. package/esm2022/stepper/step-header.mjs +4 -4
  147. package/esm2022/stepper/step-label.mjs +4 -4
  148. package/esm2022/stepper/stepper-button.mjs +7 -7
  149. package/esm2022/stepper/stepper-icon.mjs +4 -4
  150. package/esm2022/stepper/stepper-intl.mjs +4 -4
  151. package/esm2022/stepper/stepper-module.mjs +5 -5
  152. package/esm2022/stepper/stepper.mjs +7 -7
  153. package/esm2022/table/cell.mjs +22 -22
  154. package/esm2022/table/module.mjs +5 -5
  155. package/esm2022/table/row.mjs +22 -22
  156. package/esm2022/table/table.mjs +7 -7
  157. package/esm2022/table/text-column.mjs +4 -4
  158. package/esm2022/tabs/module.mjs +5 -5
  159. package/esm2022/tabs/paginated-tab-header.mjs +4 -4
  160. package/esm2022/tabs/tab-body.mjs +7 -7
  161. package/esm2022/tabs/tab-content.mjs +4 -4
  162. package/esm2022/tabs/tab-group.mjs +4 -4
  163. package/esm2022/tabs/tab-header.mjs +4 -4
  164. package/esm2022/tabs/tab-label-wrapper.mjs +4 -4
  165. package/esm2022/tabs/tab-label.mjs +4 -4
  166. package/esm2022/tabs/tab-nav-bar/tab-nav-bar.mjs +10 -10
  167. package/esm2022/tabs/tab.mjs +4 -4
  168. package/esm2022/toolbar/toolbar-module.mjs +5 -5
  169. package/esm2022/toolbar/toolbar.mjs +7 -7
  170. package/esm2022/tooltip/module.mjs +5 -5
  171. package/esm2022/tooltip/tooltip.mjs +7 -7
  172. package/esm2022/tree/node.mjs +10 -10
  173. package/esm2022/tree/outlet.mjs +4 -4
  174. package/esm2022/tree/padding.mjs +4 -4
  175. package/esm2022/tree/toggle.mjs +4 -4
  176. package/esm2022/tree/tree-module.mjs +5 -5
  177. package/esm2022/tree/tree.mjs +4 -4
  178. package/fesm2022/autocomplete.mjs +21 -15
  179. package/fesm2022/autocomplete.mjs.map +1 -1
  180. package/fesm2022/badge.mjs +7 -7
  181. package/fesm2022/badge.mjs.map +1 -1
  182. package/fesm2022/bottom-sheet.mjs +10 -10
  183. package/fesm2022/bottom-sheet.mjs.map +1 -1
  184. package/fesm2022/button-toggle.mjs +10 -10
  185. package/fesm2022/button-toggle.mjs.map +1 -1
  186. package/fesm2022/button.mjs +40 -40
  187. package/fesm2022/button.mjs.map +1 -1
  188. package/fesm2022/card.mjs +46 -46
  189. package/fesm2022/card.mjs.map +1 -1
  190. package/fesm2022/checkbox.mjs +14 -14
  191. package/fesm2022/checkbox.mjs.map +1 -1
  192. package/fesm2022/chips.mjs +40 -40
  193. package/fesm2022/chips.mjs.map +1 -1
  194. package/fesm2022/core.mjs +56 -56
  195. package/fesm2022/core.mjs.map +1 -1
  196. package/fesm2022/datepicker.mjs +82 -82
  197. package/fesm2022/datepicker.mjs.map +1 -1
  198. package/fesm2022/dialog.mjs +22 -22
  199. package/fesm2022/dialog.mjs.map +1 -1
  200. package/fesm2022/divider.mjs +7 -7
  201. package/fesm2022/divider.mjs.map +1 -1
  202. package/fesm2022/expansion.mjs +25 -25
  203. package/fesm2022/expansion.mjs.map +1 -1
  204. package/fesm2022/form-field.mjs +36 -36
  205. package/fesm2022/form-field.mjs.map +1 -1
  206. package/fesm2022/grid-list.mjs +22 -22
  207. package/fesm2022/grid-list.mjs.map +1 -1
  208. package/fesm2022/icon/testing.mjs +7 -7
  209. package/fesm2022/icon/testing.mjs.map +1 -1
  210. package/fesm2022/icon.mjs +10 -10
  211. package/fesm2022/icon.mjs.map +1 -1
  212. package/fesm2022/input.mjs +7 -7
  213. package/fesm2022/input.mjs.map +1 -1
  214. package/fesm2022/list.mjs +49 -49
  215. package/fesm2022/list.mjs.map +1 -1
  216. package/fesm2022/menu.mjs +16 -16
  217. package/fesm2022/menu.mjs.map +1 -1
  218. package/fesm2022/paginator.mjs +10 -10
  219. package/fesm2022/paginator.mjs.map +1 -1
  220. package/fesm2022/progress-bar.mjs +7 -7
  221. package/fesm2022/progress-bar.mjs.map +1 -1
  222. package/fesm2022/progress-spinner.mjs +7 -7
  223. package/fesm2022/progress-spinner.mjs.map +1 -1
  224. package/fesm2022/radio.mjs +10 -10
  225. package/fesm2022/radio.mjs.map +1 -1
  226. package/fesm2022/select.mjs +10 -10
  227. package/fesm2022/select.mjs.map +1 -1
  228. package/fesm2022/sidenav.mjs +22 -22
  229. package/fesm2022/sidenav.mjs.map +1 -1
  230. package/fesm2022/slide-toggle.mjs +14 -14
  231. package/fesm2022/slide-toggle.mjs.map +1 -1
  232. package/fesm2022/slider.mjs +16 -16
  233. package/fesm2022/slider.mjs.map +1 -1
  234. package/fesm2022/snack-bar.mjs +22 -22
  235. package/fesm2022/snack-bar.mjs.map +1 -1
  236. package/fesm2022/sort.mjs +13 -13
  237. package/fesm2022/sort.mjs.map +1 -1
  238. package/fesm2022/stepper.mjs +31 -31
  239. package/fesm2022/stepper.mjs.map +1 -1
  240. package/fesm2022/table.mjs +55 -55
  241. package/fesm2022/table.mjs.map +1 -1
  242. package/fesm2022/tabs.mjs +40 -40
  243. package/fesm2022/tabs.mjs.map +1 -1
  244. package/fesm2022/toolbar.mjs +10 -10
  245. package/fesm2022/toolbar.mjs.map +1 -1
  246. package/fesm2022/tooltip.mjs +10 -10
  247. package/fesm2022/tooltip.mjs.map +1 -1
  248. package/fesm2022/tree.mjs +25 -25
  249. package/fesm2022/tree.mjs.map +1 -1
  250. package/form-field/_mdc-text-field-structure-overrides.scss +5 -0
  251. package/list/_list-theme.scss +3 -3
  252. package/package.json +49 -49
  253. package/prebuilt-themes/deeppurple-amber.css +1 -1
  254. package/prebuilt-themes/indigo-pink.css +1 -1
  255. package/prebuilt-themes/pink-bluegrey.css +1 -1
  256. package/prebuilt-themes/purple-green.css +1 -1
  257. package/schematics/ng-add/index.js +1 -1
  258. package/schematics/ng-add/index.mjs +1 -1
  259. package/schematics/ng-add/theming/theming.js +3 -3
  260. package/schematics/ng-add/theming/theming.mjs +3 -3
  261. package/schematics/ng-generate/mdc-migration/index_bundled.js +9771 -6306
  262. package/schematics/ng-generate/mdc-migration/index_bundled.js.map +4 -4
  263. package/schematics/ng-update/index_bundled.js +25 -25
@@ -285,8 +285,8 @@ export declare class MatAutocompleteTrigger implements ControlValueAccessor, Aft
285
285
  private _outsideClickSubscription;
286
286
  /** Old value of the native input. Used to work around issues with the `input` event on IE. */
287
287
  private _previousValue;
288
- /** Value of the input element when the panel was opened. */
289
- private _valueOnOpen;
288
+ /** Value of the input element when the panel was attached (even if there are no options). */
289
+ private _valueOnAttach;
290
290
  /** Strategy that is used to position the panel. */
291
291
  private _positionStrategy;
292
292
  /** Whether or not the label state is being overridden. */
@@ -400,6 +400,8 @@ export declare class MatAutocompleteTrigger implements ControlValueAccessor, Aft
400
400
  * the state of the trigger right before the opening sequence was finished.
401
401
  */
402
402
  private _emitOpened;
403
+ /** Intended to be called when the panel is attached. Captures the current value of the input. */
404
+ private _captureValueOnAttach;
403
405
  /** Destroys the autocomplete suggestion panel. */
404
406
  private _destroyPanel;
405
407
  private _assignOptionValue;
@@ -11,6 +11,12 @@
11
11
  @use '../core/theming/theming';
12
12
  @use '../core/theming/inspection';
13
13
  @use '../core/typography/typography';
14
+ @use '../core/tokens/m2/mdc/button-filled' as tokens-mdc-button-filled;
15
+
16
+ @function on-color($theme, $palette) {
17
+ $is-dark: inspection.get-theme-type($theme) == dark;
18
+ @return if(mdc-helpers.variable-safe-contrast-tone($palette, $is-dark) == 'dark', #000, #fff);
19
+ }
14
20
 
15
21
  @mixin _button-variant($color) {
16
22
  @include mdc-button-text-theme.theme((
@@ -18,13 +24,6 @@
18
24
  ));
19
25
  }
20
26
 
21
- @mixin _unelevated-button-variant($foreground, $background) {
22
- @include mdc-button-filled-theme.theme((
23
- container-color: $background,
24
- label-text-color: $foreground,
25
- ));
26
- }
27
-
28
27
  @mixin _raised-button-variant($foreground, $background) {
29
28
  @include mdc-button-protected-theme.theme((
30
29
  container-color: $background,
@@ -79,35 +78,6 @@
79
78
  }
80
79
  }
81
80
 
82
- .mat-mdc-unelevated-button {
83
- &.mat-unthemed {
84
- @include _unelevated-button-variant($on-surface, $surface);
85
- }
86
-
87
- &.mat-primary {
88
- @include _unelevated-button-variant($on-primary, $primary);
89
- }
90
-
91
- &.mat-accent {
92
- @include _unelevated-button-variant($on-secondary, $secondary);
93
- }
94
-
95
- &.mat-warn {
96
- @include _unelevated-button-variant($on-error, $error);
97
- }
98
-
99
- @include button-theme-private.apply-disabled-style() {
100
- @include mdc-button-filled-theme.theme((
101
- // We need to pass both the disabled and enabled values, because the enabled
102
- // ones apply to anchors while the disabled ones are for buttons.
103
- disabled-container-color: $disabled-container-color,
104
- disabled-label-text-color: $disabled-ink-color,
105
- container-color: $disabled-container-color,
106
- label-text-color: $disabled-ink-color,
107
- ));
108
- }
109
- }
110
-
111
81
  .mat-mdc-raised-button {
112
82
  &.mat-unthemed {
113
83
  @include _raised-button-variant($on-surface, $surface);
@@ -180,6 +150,52 @@
180
150
  @include button-theme-private.ripple-theme-styles($theme, true);
181
151
  }
182
152
  }
153
+
154
+ .mat-mdc-unelevated-button {
155
+ $surface: inspection.get-theme-color($theme, background, card);
156
+ $primary: inspection.get-theme-color($theme, primary);
157
+ $accent: inspection.get-theme-color($theme, accent);
158
+ $error: inspection.get-theme-color($theme, warn);
159
+
160
+ $on-surface: on-color($theme, $surface);
161
+ $on-primary: on-color($theme, $primary);
162
+ $on-accent: on-color($theme, $accent);
163
+ $on-error: on-color($theme, $error);
164
+
165
+ $default-color-tokens: tokens-mdc-button-filled.get-color-tokens($theme, $surface, $on-surface);
166
+ $primary-color-tokens: tokens-mdc-button-filled.get-color-tokens($theme, $primary, $on-primary);
167
+ $accent-color-tokens: tokens-mdc-button-filled.get-color-tokens($theme, $accent, $on-accent);
168
+ $warn-color-tokens: tokens-mdc-button-filled.get-color-tokens($theme, $error, $on-error);
169
+
170
+ &.mat-unthemed {
171
+ @include mdc-button-filled-theme.theme($default-color-tokens);
172
+ }
173
+
174
+ &.mat-primary {
175
+ @include mdc-button-filled-theme.theme($primary-color-tokens);
176
+ }
177
+
178
+ &.mat-accent {
179
+ @include mdc-button-filled-theme.theme($accent-color-tokens);
180
+ }
181
+
182
+ &.mat-warn {
183
+ @include mdc-button-filled-theme.theme($warn-color-tokens);
184
+ }
185
+
186
+ @include button-theme-private.apply-disabled-style() {
187
+ $is-dark: inspection.get-theme-type($theme) == dark;
188
+ $disabled-ink-color: rgba($on-surface, if($is-dark, 0.5, 0.38));
189
+ $disabled-container-color: rgba($on-surface, 0.12);
190
+
191
+ @include mdc-button-filled-theme.theme((
192
+ disabled-container-color: $disabled-container-color,
193
+ disabled-label-text-color: $disabled-ink-color,
194
+ container-color: $disabled-container-color,
195
+ label-text-color: $disabled-ink-color,
196
+ ));
197
+ }
198
+ }
183
199
  }
184
200
 
185
201
  @mixin typography($theme) {
@@ -0,0 +1,92 @@
1
+ @use '../../token-utils';
2
+ @use '../../../mdc-helpers/mdc-helpers';
3
+ @use '../../../style/sass-utils';
4
+ @use '../../../theming/inspection';
5
+
6
+ // The prefix used to generate the fully qualified name for tokens in this file.
7
+ $prefix: (mdc, button-filled);
8
+
9
+ // Tokens that can't be configured through Angular Material's current theming API,
10
+ // but may be in a future version of the theming API.
11
+ //
12
+ // Tokens that are available in MDC, but not used in Angular Material should be mapped to `null`.
13
+ // `null` indicates that we are intentionally choosing not to emit a slot or value for the token in
14
+ // our CSS.
15
+ @function get-unthemable-tokens() {
16
+ @return (
17
+ container-elevation: 0,
18
+ container-height: 36px,
19
+ container-shape: 4px,
20
+ disabled-container-elevation: 0,
21
+ focus-container-elevation: 0,
22
+ hover-container-elevation: 0,
23
+ keep-touch-target: false,
24
+ pressed-container-elevation: 0,
25
+
26
+ focus-state-layer-opacity: null,
27
+ hover-state-layer-opacity: null,
28
+ pressed-state-layer-opacity: null,
29
+ container-shadow-color: null,
30
+ focus-label-text-color: null,
31
+ hover-label-text-color: null,
32
+ label-text-font: null,
33
+ label-text-size: null,
34
+ label-text-tracking: null,
35
+ label-text-transform: null,
36
+ label-text-weight: null,
37
+ pressed-label-text-color: null,
38
+ with-icon-disabled-icon-color: null,
39
+ with-icon-focus-icon-color: null,
40
+ with-icon-hover-icon-color: null,
41
+ with-icon-icon-color: null,
42
+ with-icon-icon-size: null,
43
+ with-icon-pressed-icon-color: null
44
+ );
45
+ }
46
+
47
+ @function on-color($theme, $palette) {
48
+ @if ($palette) {
49
+ $is-dark: inspection.get-theme-type($theme) == dark;
50
+ @return if(mdc-helpers.variable-safe-contrast-tone($palette, $is-dark) == 'dark', #000, #fff);
51
+ }
52
+ }
53
+
54
+ // Tokens that can be configured through Angular Material's color theming API.
55
+ @function get-color-tokens($theme, $color: null, $on-color: null) {
56
+ $is-dark: inspection.get-theme-type($theme) == dark;
57
+ $primary: inspection.get-theme-color($theme, primary);
58
+ $surface: inspection.get-theme-color($theme, background, card);
59
+ $on-primary: on-color($theme, $primary);
60
+ $on-surface: on-color($theme, $surface);
61
+
62
+ @return (
63
+ container-color: if($color, $color, transparent),
64
+ disabled-container-color: rgba($on-surface, 0.12),
65
+ disabled-label-text-color: rgba($on-surface, if($is-dark, 0.5, 0.38)),
66
+ focus-state-layer-color: $on-primary,
67
+ hover-state-layer-color: $on-primary,
68
+ label-text-color: if($on-color, $on-color, inherit),
69
+ pressed-state-layer-color: $on-primary
70
+ );
71
+ }
72
+
73
+ // Tokens that can be configured through Angular Material's typography theming API.
74
+ @function get-typography-tokens($theme) {
75
+ @return ();
76
+ }
77
+
78
+ // Tokens that can be configured through Angular Material's density theming API.
79
+ @function get-density-tokens($theme) {
80
+ @return ();
81
+ }
82
+
83
+ // Combines the tokens generated by the above functions into a single map with placeholder values.
84
+ // This is used to create token slots.
85
+ @function get-token-slots() {
86
+ @return sass-utils.deep-merge-all(
87
+ get-unthemable-tokens(),
88
+ get-color-tokens(token-utils.$placeholder-color-config),
89
+ get-typography-tokens(token-utils.$placeholder-typography-config),
90
+ get-density-tokens(token-utils.$placeholder-density-config)
91
+ );
92
+ }
@@ -39,6 +39,8 @@ $prefix: (mdc, icon-button);
39
39
  pressed-icon-color: null,
40
40
  pressed-state-layer-color: null,
41
41
  pressed-state-layer-opacity: null,
42
+ focus-ring-color: null,
43
+ focus-ring-offset: null,
42
44
  );
43
45
  }
44
46
 
@@ -17,14 +17,14 @@ export class MatAutocompleteOrigin {
17
17
  elementRef) {
18
18
  this.elementRef = elementRef;
19
19
  }
20
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.1", ngImport: i0, type: MatAutocompleteOrigin, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
21
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.1", type: MatAutocompleteOrigin, selector: "[matAutocompleteOrigin]", exportAs: ["matAutocompleteOrigin"], ngImport: i0 }); }
20
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: MatAutocompleteOrigin, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
21
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.0-next.4", type: MatAutocompleteOrigin, selector: "[matAutocompleteOrigin]", exportAs: ["matAutocompleteOrigin"], ngImport: i0 }); }
22
22
  }
23
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.1", ngImport: i0, type: MatAutocompleteOrigin, decorators: [{
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: MatAutocompleteOrigin, decorators: [{
24
24
  type: Directive,
25
25
  args: [{
26
26
  selector: '[matAutocompleteOrigin]',
27
27
  exportAs: 'matAutocompleteOrigin',
28
28
  }]
29
29
  }], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLW9yaWdpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tYXRlcmlhbC9hdXRvY29tcGxldGUvYXV0b2NvbXBsZXRlLW9yaWdpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFFSCxPQUFPLEVBQUMsU0FBUyxFQUFFLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQzs7QUFFcEQ7OztHQUdHO0FBS0gsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQztJQUNFLGtFQUFrRTtJQUMzRCxVQUFtQztRQUFuQyxlQUFVLEdBQVYsVUFBVSxDQUF5QjtJQUN6QyxDQUFDOzhHQUpPLHFCQUFxQjtrR0FBckIscUJBQXFCOzsyRkFBckIscUJBQXFCO2tCQUpqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx5QkFBeUI7b0JBQ25DLFFBQVEsRUFBRSx1QkFBdUI7aUJBQ2xDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7RGlyZWN0aXZlLCBFbGVtZW50UmVmfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBEaXJlY3RpdmUgYXBwbGllZCB0byBhbiBlbGVtZW50IHRvIG1ha2UgaXQgdXNhYmxlXG4gKiBhcyBhIGNvbm5lY3Rpb24gcG9pbnQgZm9yIGFuIGF1dG9jb21wbGV0ZSBwYW5lbC5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW21hdEF1dG9jb21wbGV0ZU9yaWdpbl0nLFxuICBleHBvcnRBczogJ21hdEF1dG9jb21wbGV0ZU9yaWdpbicsXG59KVxuZXhwb3J0IGNsYXNzIE1hdEF1dG9jb21wbGV0ZU9yaWdpbiB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIC8qKiBSZWZlcmVuY2UgdG8gdGhlIGVsZW1lbnQgb24gd2hpY2ggdGhlIGRpcmVjdGl2ZSBpcyBhcHBsaWVkLiAqL1xuICAgIHB1YmxpYyBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgKSB7fVxufVxuIl19
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLW9yaWdpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tYXRlcmlhbC9hdXRvY29tcGxldGUvYXV0b2NvbXBsZXRlLW9yaWdpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFFSCxPQUFPLEVBQUMsU0FBUyxFQUFFLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQzs7QUFFcEQ7OztHQUdHO0FBS0gsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQztJQUNFLGtFQUFrRTtJQUMzRCxVQUFtQztRQUFuQyxlQUFVLEdBQVYsVUFBVSxDQUF5QjtJQUN6QyxDQUFDO3FIQUpPLHFCQUFxQjt5R0FBckIscUJBQXFCOztrR0FBckIscUJBQXFCO2tCQUpqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx5QkFBeUI7b0JBQ25DLFFBQVEsRUFBRSx1QkFBdUI7aUJBQ2xDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7RGlyZWN0aXZlLCBFbGVtZW50UmVmfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBEaXJlY3RpdmUgYXBwbGllZCB0byBhbiBlbGVtZW50IHRvIG1ha2UgaXQgdXNhYmxlXG4gKiBhcyBhIGNvbm5lY3Rpb24gcG9pbnQgZm9yIGFuIGF1dG9jb21wbGV0ZSBwYW5lbC5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW21hdEF1dG9jb21wbGV0ZU9yaWdpbl0nLFxuICBleHBvcnRBczogJ21hdEF1dG9jb21wbGV0ZU9yaWdpbicsXG59KVxuZXhwb3J0IGNsYXNzIE1hdEF1dG9jb21wbGV0ZU9yaWdpbiB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIC8qKiBSZWZlcmVuY2UgdG8gdGhlIGVsZW1lbnQgb24gd2hpY2ggdGhlIGRpcmVjdGl2ZSBpcyBhcHBsaWVkLiAqL1xuICAgIHB1YmxpYyBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgKSB7fVxufVxuIl19