@angular/material 16.2.0 → 17.0.0-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (760) hide show
  1. package/_index.scss +19 -63
  2. package/autocomplete/index.d.ts +41 -72
  3. package/autocomplete/testing/index.d.ts +5 -23
  4. package/button/_fab-theme.scss +12 -0
  5. package/card/_card-theme.scss +86 -44
  6. package/checkbox/_checkbox-theme.scss +78 -43
  7. package/checkbox/index.d.ts +22 -42
  8. package/checkbox/testing/index.d.ts +6 -12
  9. package/core/index.d.ts +17 -28
  10. package/core/style/_validation.scss +43 -0
  11. package/core/theming/_inspection.scss +229 -0
  12. package/core/theming/_theming.scss +110 -10
  13. package/core/tokens/m2/mat/_form-field.scss +34 -1
  14. package/core/tokens/m2/mat/_slider.scss +43 -0
  15. package/core/tokens/m2/mdc/_filled-text-field.scss +1 -1
  16. package/core/tokens/m2/mdc/_outlined-text-field.scss +1 -1
  17. package/core/tokens/m2/mdc/_slider.scss +154 -0
  18. package/dialog/index.d.ts +46 -87
  19. package/dialog/testing/index.d.ts +6 -18
  20. package/esm2022/autocomplete/autocomplete-origin.mjs +9 -17
  21. package/esm2022/autocomplete/autocomplete-trigger.mjs +32 -41
  22. package/esm2022/autocomplete/autocomplete.mjs +59 -72
  23. package/esm2022/autocomplete/testing/autocomplete-harness.mjs +20 -33
  24. package/esm2022/button/fab.mjs +8 -8
  25. package/esm2022/card/card.mjs +2 -2
  26. package/esm2022/checkbox/checkbox.mjs +72 -79
  27. package/esm2022/checkbox/testing/checkbox-harness.mjs +41 -36
  28. package/esm2022/core/datetime/native-date-adapter.mjs +14 -11
  29. package/esm2022/core/option/optgroup.mjs +19 -26
  30. package/esm2022/core/option/option.mjs +25 -35
  31. package/esm2022/core/version.mjs +1 -1
  32. package/esm2022/dialog/dialog-container.mjs +52 -77
  33. package/esm2022/dialog/dialog-content-directives.mjs +16 -4
  34. package/esm2022/dialog/dialog-ref.mjs +1 -1
  35. package/esm2022/dialog/dialog.mjs +16 -46
  36. package/esm2022/dialog/public-api.mjs +2 -2
  37. package/esm2022/dialog/testing/dialog-harness.mjs +13 -16
  38. package/esm2022/dialog/testing/dialog-opener.mjs +17 -27
  39. package/esm2022/dialog/testing/index.mjs +2 -2
  40. package/esm2022/form-field/form-field.mjs +3 -3
  41. package/esm2022/form-field/testing/error-harness.mjs +10 -12
  42. package/esm2022/form-field/testing/form-field-harness.mjs +45 -48
  43. package/esm2022/list/action-list.mjs +2 -2
  44. package/esm2022/list/list.mjs +2 -2
  45. package/esm2022/list/nav-list.mjs +2 -2
  46. package/esm2022/list/selection-list.mjs +2 -2
  47. package/esm2022/menu/menu-content.mjs +9 -16
  48. package/esm2022/menu/menu-trigger.mjs +14 -25
  49. package/esm2022/menu/menu.mjs +15 -29
  50. package/esm2022/menu/public-api.mjs +3 -3
  51. package/esm2022/menu/testing/menu-harness.mjs +29 -43
  52. package/esm2022/paginator/paginator.mjs +24 -38
  53. package/esm2022/paginator/testing/paginator-harness.mjs +25 -27
  54. package/esm2022/progress-bar/progress-bar.mjs +2 -2
  55. package/esm2022/progress-spinner/progress-spinner.mjs +2 -2
  56. package/esm2022/radio/radio.mjs +58 -83
  57. package/esm2022/radio/testing/radio-harness.mjs +31 -38
  58. package/esm2022/select/select.mjs +194 -212
  59. package/esm2022/select/testing/select-harness.mjs +18 -23
  60. package/esm2022/slide-toggle/slide-toggle.mjs +43 -53
  61. package/esm2022/slide-toggle/testing/slide-toggle-harness.mjs +33 -40
  62. package/esm2022/slider/slider.mjs +2 -2
  63. package/esm2022/snack-bar/snack-bar-container.mjs +17 -32
  64. package/esm2022/snack-bar/snack-bar-ref.mjs +1 -1
  65. package/esm2022/snack-bar/snack-bar.mjs +11 -25
  66. package/esm2022/snack-bar/testing/snack-bar-harness.mjs +18 -31
  67. package/esm2022/table/row.mjs +7 -5
  68. package/esm2022/table/table-data-source.mjs +15 -18
  69. package/esm2022/table/table.mjs +18 -4
  70. package/esm2022/table/testing/cell-harness.mjs +4 -4
  71. package/esm2022/table/testing/row-harness.mjs +4 -4
  72. package/esm2022/table/testing/table-harness.mjs +22 -24
  73. package/esm2022/tabs/public-api.mjs +7 -8
  74. package/esm2022/tabs/tab-body.mjs +13 -29
  75. package/esm2022/tabs/tab-group.mjs +55 -79
  76. package/esm2022/tabs/tab-header.mjs +13 -34
  77. package/esm2022/tabs/tab-label-wrapper.mjs +6 -18
  78. package/esm2022/tabs/tab-nav-bar/tab-nav-bar.mjs +119 -168
  79. package/esm2022/tabs/tab.mjs +25 -37
  80. package/esm2022/tooltip/testing/tooltip-harness.mjs +21 -23
  81. package/esm2022/tooltip/tooltip.mjs +68 -101
  82. package/fesm2022/autocomplete/testing.mjs +20 -33
  83. package/fesm2022/autocomplete/testing.mjs.map +1 -1
  84. package/fesm2022/autocomplete.mjs +97 -127
  85. package/fesm2022/autocomplete.mjs.map +1 -1
  86. package/fesm2022/button.mjs +8 -8
  87. package/fesm2022/button.mjs.map +1 -1
  88. package/fesm2022/card.mjs +2 -2
  89. package/fesm2022/card.mjs.map +1 -1
  90. package/fesm2022/checkbox/testing.mjs +41 -36
  91. package/fesm2022/checkbox/testing.mjs.map +1 -1
  92. package/fesm2022/checkbox.mjs +72 -79
  93. package/fesm2022/checkbox.mjs.map +1 -1
  94. package/fesm2022/core.mjs +49 -61
  95. package/fesm2022/core.mjs.map +1 -1
  96. package/fesm2022/dialog/testing.mjs +30 -43
  97. package/fesm2022/dialog/testing.mjs.map +1 -1
  98. package/fesm2022/dialog.mjs +82 -125
  99. package/fesm2022/dialog.mjs.map +1 -1
  100. package/fesm2022/form-field/testing.mjs +54 -59
  101. package/fesm2022/form-field/testing.mjs.map +1 -1
  102. package/fesm2022/form-field.mjs +2 -2
  103. package/fesm2022/form-field.mjs.map +1 -1
  104. package/fesm2022/list.mjs +8 -8
  105. package/fesm2022/list.mjs.map +1 -1
  106. package/fesm2022/menu/testing.mjs +30 -44
  107. package/fesm2022/menu/testing.mjs.map +1 -1
  108. package/fesm2022/menu.mjs +34 -66
  109. package/fesm2022/menu.mjs.map +1 -1
  110. package/fesm2022/paginator/testing.mjs +25 -27
  111. package/fesm2022/paginator/testing.mjs.map +1 -1
  112. package/fesm2022/paginator.mjs +24 -38
  113. package/fesm2022/paginator.mjs.map +1 -1
  114. package/fesm2022/progress-bar.mjs +2 -2
  115. package/fesm2022/progress-bar.mjs.map +1 -1
  116. package/fesm2022/progress-spinner.mjs +2 -2
  117. package/fesm2022/progress-spinner.mjs.map +1 -1
  118. package/fesm2022/radio/testing.mjs +31 -38
  119. package/fesm2022/radio/testing.mjs.map +1 -1
  120. package/fesm2022/radio.mjs +59 -84
  121. package/fesm2022/radio.mjs.map +1 -1
  122. package/fesm2022/select/testing.mjs +18 -23
  123. package/fesm2022/select/testing.mjs.map +1 -1
  124. package/fesm2022/select.mjs +196 -214
  125. package/fesm2022/select.mjs.map +1 -1
  126. package/fesm2022/slide-toggle/testing.mjs +33 -40
  127. package/fesm2022/slide-toggle/testing.mjs.map +1 -1
  128. package/fesm2022/slide-toggle.mjs +43 -53
  129. package/fesm2022/slide-toggle.mjs.map +1 -1
  130. package/fesm2022/slider.mjs +2 -2
  131. package/fesm2022/slider.mjs.map +1 -1
  132. package/fesm2022/snack-bar/testing.mjs +19 -32
  133. package/fesm2022/snack-bar/testing.mjs.map +1 -1
  134. package/fesm2022/snack-bar.mjs +26 -55
  135. package/fesm2022/snack-bar.mjs.map +1 -1
  136. package/fesm2022/table/testing.mjs +28 -30
  137. package/fesm2022/table/testing.mjs.map +1 -1
  138. package/fesm2022/table.mjs +37 -24
  139. package/fesm2022/table.mjs.map +1 -1
  140. package/fesm2022/tabs.mjs +234 -368
  141. package/fesm2022/tabs.mjs.map +1 -1
  142. package/fesm2022/tooltip/testing.mjs +21 -23
  143. package/fesm2022/tooltip/testing.mjs.map +1 -1
  144. package/fesm2022/tooltip.mjs +69 -102
  145. package/fesm2022/tooltip.mjs.map +1 -1
  146. package/form-field/_form-field-focus-overlay.scss +13 -18
  147. package/form-field/_form-field-native-select.scss +30 -67
  148. package/form-field/_form-field-subscript.scss +4 -8
  149. package/form-field/_form-field-theme.scss +15 -48
  150. package/form-field/_mdc-text-field-structure-overrides.scss +20 -0
  151. package/form-field/testing/index.d.ts +14 -44
  152. package/list/_list-theme.scss +9 -0
  153. package/menu/index.d.ts +22 -44
  154. package/menu/testing/index.d.ts +6 -23
  155. package/package.json +7 -286
  156. package/paginator/index.d.ts +6 -22
  157. package/paginator/testing/index.d.ts +9 -22
  158. package/prebuilt-themes/deeppurple-amber.css +1 -1
  159. package/prebuilt-themes/indigo-pink.css +1 -1
  160. package/prebuilt-themes/pink-bluegrey.css +1 -1
  161. package/prebuilt-themes/purple-green.css +1 -1
  162. package/progress-bar/_progress-bar-theme.scss +9 -0
  163. package/progress-spinner/_progress-spinner-theme.scss +11 -0
  164. package/radio/index.d.ts +22 -45
  165. package/radio/testing/index.d.ts +7 -23
  166. package/schematics/migration.json +4 -4
  167. package/schematics/ng-add/index.js +2 -2
  168. package/schematics/ng-add/index.mjs +2 -2
  169. package/schematics/ng-generate/mdc-migration/index_bundled.js +2 -2
  170. package/schematics/ng-generate/mdc-migration/index_bundled.js.map +2 -2
  171. package/schematics/ng-update/index_bundled.js +4 -4
  172. package/schematics/ng-update/index_bundled.js.map +1 -1
  173. package/select/index.d.ts +47 -68
  174. package/select/testing/index.d.ts +9 -22
  175. package/slide-toggle/index.d.ts +17 -27
  176. package/slide-toggle/testing/index.d.ts +6 -13
  177. package/slider/_slider-theme.scss +64 -64
  178. package/snack-bar/_snack-bar-theme.scss +8 -0
  179. package/snack-bar/index.d.ts +40 -62
  180. package/snack-bar/testing/index.d.ts +5 -20
  181. package/table/index.d.ts +2 -31
  182. package/table/testing/index.d.ts +17 -34
  183. package/tabs/index.d.ts +60 -144
  184. package/tooltip/_tooltip-theme.scss +12 -3
  185. package/tooltip/index.d.ts +26 -49
  186. package/tooltip/testing/index.d.ts +7 -17
  187. package/_theming.scss +0 -43
  188. package/_token-theming.scss +0 -2
  189. package/autocomplete/_autocomplete-theme.import.scss +0 -1
  190. package/badge/_badge-legacy-index.scss +0 -3
  191. package/badge/_badge-theme.import.scss +0 -11
  192. package/bottom-sheet/_bottom-sheet-legacy-index.scss +0 -2
  193. package/bottom-sheet/_bottom-sheet-theme.import.scss +0 -10
  194. package/button/_button-base.import.scss +0 -4
  195. package/button/_button-theme.import.scss +0 -13
  196. package/button-toggle/_button-toggle-legacy-index.scss +0 -2
  197. package/button-toggle/_button-toggle-theme.import.scss +0 -15
  198. package/button-toggle/_button-toggle-variables.import.scss +0 -1
  199. package/card/_card-theme.import.scss +0 -3
  200. package/checkbox/_checkbox-theme.import.scss +0 -10
  201. package/chips/_chips-theme.import.scss +0 -4
  202. package/core/_core-legacy-index.scss +0 -16
  203. package/core/_core.import.scss +0 -60
  204. package/core/color/_all-color.import.scss +0 -53
  205. package/core/color/_color-legacy-index.scss +0 -1
  206. package/core/density/private/_all-density.import.scss +0 -15
  207. package/core/density/private/_compatibility.import.scss +0 -4
  208. package/core/density/private/_density-legacy-index.scss +0 -5
  209. package/core/focus-indicators/_focus-indicators-legacy-index.scss +0 -5
  210. package/core/focus-indicators/_focus-indicators.import.scss +0 -23
  211. package/core/mdc-helpers/_mdc-helpers.import.scss +0 -9
  212. package/core/option/_optgroup-theme.import.scss +0 -4
  213. package/core/option/_option-legacy-index.scss +0 -5
  214. package/core/option/_option-theme.import.scss +0 -4
  215. package/core/ripple/_ripple-legacy-index.scss +0 -3
  216. package/core/ripple/_ripple.import.scss +0 -20
  217. package/core/selection/pseudo-checkbox/_pseudo-checkbox-legacy-index.scss +0 -2
  218. package/core/selection/pseudo-checkbox/_pseudo-checkbox-theme.import.scss +0 -17
  219. package/core/style/_button-common.import.scss +0 -4
  220. package/core/style/_checkbox-common.import.scss +0 -11
  221. package/core/style/_elevation.import.scss +0 -17
  222. package/core/style/_form-common.import.scss +0 -16
  223. package/core/style/_layout-common.import.scss +0 -1
  224. package/core/style/_list-common.import.scss +0 -2
  225. package/core/style/_menu-common.import.scss +0 -18
  226. package/core/style/_private.import.scss +0 -15
  227. package/core/style/_style-legacy-index.scss +0 -24
  228. package/core/style/_variables.import.scss +0 -8
  229. package/core/style/_vendor-prefixes.import.scss +0 -1
  230. package/core/theming/_all-theme.import.scss +0 -86
  231. package/core/theming/_palette.import.scss +0 -12
  232. package/core/theming/_theming-legacy-index.scss +0 -22
  233. package/core/theming/_theming.import.scss +0 -24
  234. package/core/typography/_all-typography.import.scss +0 -76
  235. package/core/typography/_typography-legacy-index.scss +0 -18
  236. package/core/typography/_typography-utils.import.scss +0 -9
  237. package/core/typography/_typography.import.scss +0 -14
  238. package/datepicker/_datepicker-legacy-index.scss +0 -9
  239. package/datepicker/_datepicker-theme.import.scss +0 -17
  240. package/dialog/_dialog-legacy-padding.import.scss +0 -1
  241. package/dialog/_dialog-theme.import.scss +0 -1
  242. package/dialog/_mdc-dialog-structure-overrides.import.scss +0 -1
  243. package/divider/_divider-legacy-index.scss +0 -3
  244. package/divider/_divider-offset.import.scss +0 -1
  245. package/divider/_divider-theme.import.scss +0 -6
  246. package/esm2022/legacy-autocomplete/autocomplete-module.mjs +0 -51
  247. package/esm2022/legacy-autocomplete/autocomplete-origin.mjs +0 -28
  248. package/esm2022/legacy-autocomplete/autocomplete-trigger.mjs +0 -60
  249. package/esm2022/legacy-autocomplete/autocomplete.mjs +0 -40
  250. package/esm2022/legacy-autocomplete/index.mjs +0 -9
  251. package/esm2022/legacy-autocomplete/legacy-autocomplete_public_index.mjs +0 -5
  252. package/esm2022/legacy-autocomplete/public-api.mjs +0 -48
  253. package/esm2022/legacy-autocomplete/testing/autocomplete-harness-filters.mjs +0 -9
  254. package/esm2022/legacy-autocomplete/testing/autocomplete-harness.mjs +0 -39
  255. package/esm2022/legacy-autocomplete/testing/index.mjs +0 -9
  256. package/esm2022/legacy-autocomplete/testing/public-api.mjs +0 -9
  257. package/esm2022/legacy-button/button-module.mjs +0 -29
  258. package/esm2022/legacy-button/button.mjs +0 -177
  259. package/esm2022/legacy-button/index.mjs +0 -9
  260. package/esm2022/legacy-button/legacy-button_public_index.mjs +0 -5
  261. package/esm2022/legacy-button/public-api.mjs +0 -10
  262. package/esm2022/legacy-button/testing/button-harness.mjs +0 -82
  263. package/esm2022/legacy-button/testing/index.mjs +0 -9
  264. package/esm2022/legacy-button/testing/public-api.mjs +0 -9
  265. package/esm2022/legacy-card/card-module.mjs +0 -87
  266. package/esm2022/legacy-card/card.mjs +0 -276
  267. package/esm2022/legacy-card/index.mjs +0 -9
  268. package/esm2022/legacy-card/legacy-card_public_index.mjs +0 -5
  269. package/esm2022/legacy-card/public-api.mjs +0 -10
  270. package/esm2022/legacy-card/testing/card-harness-filters.mjs +0 -9
  271. package/esm2022/legacy-card/testing/card-harness.mjs +0 -47
  272. package/esm2022/legacy-card/testing/index.mjs +0 -9
  273. package/esm2022/legacy-card/testing/public-api.mjs +0 -9
  274. package/esm2022/legacy-checkbox/checkbox-module.mjs +0 -31
  275. package/esm2022/legacy-checkbox/checkbox.mjs +0 -137
  276. package/esm2022/legacy-checkbox/index.mjs +0 -9
  277. package/esm2022/legacy-checkbox/legacy-checkbox_public_index.mjs +0 -5
  278. package/esm2022/legacy-checkbox/public-api.mjs +0 -36
  279. package/esm2022/legacy-checkbox/testing/checkbox-harness.mjs +0 -46
  280. package/esm2022/legacy-checkbox/testing/index.mjs +0 -9
  281. package/esm2022/legacy-checkbox/testing/public-api.mjs +0 -9
  282. package/esm2022/legacy-chips/chip-default-options.mjs +0 -15
  283. package/esm2022/legacy-chips/chip-input.mjs +0 -198
  284. package/esm2022/legacy-chips/chip-list.mjs +0 -718
  285. package/esm2022/legacy-chips/chip-text-control.mjs +0 -9
  286. package/esm2022/legacy-chips/chip.mjs +0 -445
  287. package/esm2022/legacy-chips/chips-module.mjs +0 -68
  288. package/esm2022/legacy-chips/index.mjs +0 -9
  289. package/esm2022/legacy-chips/legacy-chips_public_index.mjs +0 -5
  290. package/esm2022/legacy-chips/public-api.mjs +0 -13
  291. package/esm2022/legacy-chips/testing/chip-avatar-harness.mjs +0 -26
  292. package/esm2022/legacy-chips/testing/chip-harness-filters.mjs +0 -2
  293. package/esm2022/legacy-chips/testing/chip-harness.mjs +0 -95
  294. package/esm2022/legacy-chips/testing/chip-input-harness.mjs +0 -86
  295. package/esm2022/legacy-chips/testing/chip-list-harness.mjs +0 -90
  296. package/esm2022/legacy-chips/testing/chip-listbox-harness.mjs +0 -48
  297. package/esm2022/legacy-chips/testing/chip-option-harness.mjs +0 -49
  298. package/esm2022/legacy-chips/testing/chip-remove-harness.mjs +0 -30
  299. package/esm2022/legacy-chips/testing/index.mjs +0 -9
  300. package/esm2022/legacy-chips/testing/public-api.mjs +0 -14
  301. package/esm2022/legacy-core/index.mjs +0 -9
  302. package/esm2022/legacy-core/legacy-core_public_index.mjs +0 -5
  303. package/esm2022/legacy-core/option/index.mjs +0 -69
  304. package/esm2022/legacy-core/option/optgroup.mjs +0 -30
  305. package/esm2022/legacy-core/option/option.mjs +0 -54
  306. package/esm2022/legacy-core/public-api.mjs +0 -170
  307. package/esm2022/legacy-core/testing/index.mjs +0 -9
  308. package/esm2022/legacy-core/testing/optgroup-harness-filters.mjs +0 -9
  309. package/esm2022/legacy-core/testing/optgroup-harness.mjs +0 -47
  310. package/esm2022/legacy-core/testing/option-harness-filters.mjs +0 -9
  311. package/esm2022/legacy-core/testing/option-harness.mjs +0 -58
  312. package/esm2022/legacy-core/testing/public-api.mjs +0 -12
  313. package/esm2022/legacy-dialog/dialog-animations.mjs +0 -17
  314. package/esm2022/legacy-dialog/dialog-config.mjs +0 -22
  315. package/esm2022/legacy-dialog/dialog-container.mjs +0 -85
  316. package/esm2022/legacy-dialog/dialog-content-directives.mjs +0 -197
  317. package/esm2022/legacy-dialog/dialog-module.mjs +0 -57
  318. package/esm2022/legacy-dialog/dialog-ref.mjs +0 -16
  319. package/esm2022/legacy-dialog/dialog.mjs +0 -106
  320. package/esm2022/legacy-dialog/index.mjs +0 -9
  321. package/esm2022/legacy-dialog/legacy-dialog_public_index.mjs +0 -5
  322. package/esm2022/legacy-dialog/public-api.mjs +0 -40
  323. package/esm2022/legacy-dialog/testing/dialog-harness.mjs +0 -36
  324. package/esm2022/legacy-dialog/testing/dialog-opener.mjs +0 -56
  325. package/esm2022/legacy-dialog/testing/index.mjs +0 -9
  326. package/esm2022/legacy-dialog/testing/public-api.mjs +0 -10
  327. package/esm2022/legacy-form-field/error.mjs +0 -46
  328. package/esm2022/legacy-form-field/form-field-module.mjs +0 -67
  329. package/esm2022/legacy-form-field/form-field.mjs +0 -530
  330. package/esm2022/legacy-form-field/hint.mjs +0 -56
  331. package/esm2022/legacy-form-field/index.mjs +0 -9
  332. package/esm2022/legacy-form-field/label.mjs +0 -25
  333. package/esm2022/legacy-form-field/legacy-form-field_public_index.mjs +0 -5
  334. package/esm2022/legacy-form-field/placeholder.mjs +0 -26
  335. package/esm2022/legacy-form-field/prefix.mjs +0 -27
  336. package/esm2022/legacy-form-field/public-api.mjs +0 -62
  337. package/esm2022/legacy-form-field/suffix.mjs +0 -27
  338. package/esm2022/legacy-form-field/testing/error-harness.mjs +0 -26
  339. package/esm2022/legacy-form-field/testing/form-field-harness.mjs +0 -73
  340. package/esm2022/legacy-form-field/testing/index.mjs +0 -9
  341. package/esm2022/legacy-form-field/testing/public-api.mjs +0 -19
  342. package/esm2022/legacy-input/index.mjs +0 -9
  343. package/esm2022/legacy-input/input-module.mjs +0 -45
  344. package/esm2022/legacy-input/input.mjs +0 -62
  345. package/esm2022/legacy-input/legacy-input_public_index.mjs +0 -5
  346. package/esm2022/legacy-input/public-api.mjs +0 -21
  347. package/esm2022/legacy-input/testing/index.mjs +0 -9
  348. package/esm2022/legacy-input/testing/public-api.mjs +0 -24
  349. package/esm2022/legacy-list/index.mjs +0 -9
  350. package/esm2022/legacy-list/legacy-list_public_index.mjs +0 -5
  351. package/esm2022/legacy-list/list-module.mjs +0 -75
  352. package/esm2022/legacy-list/list.mjs +0 -223
  353. package/esm2022/legacy-list/public-api.mjs +0 -22
  354. package/esm2022/legacy-list/selection-list.mjs +0 -619
  355. package/esm2022/legacy-list/testing/action-list-harness.mjs +0 -67
  356. package/esm2022/legacy-list/testing/index.mjs +0 -9
  357. package/esm2022/legacy-list/testing/list-harness-base.mjs +0 -97
  358. package/esm2022/legacy-list/testing/list-harness-filters.mjs +0 -9
  359. package/esm2022/legacy-list/testing/list-harness.mjs +0 -51
  360. package/esm2022/legacy-list/testing/list-item-harness-base.mjs +0 -74
  361. package/esm2022/legacy-list/testing/nav-list-harness.mjs +0 -71
  362. package/esm2022/legacy-list/testing/public-api.mjs +0 -12
  363. package/esm2022/legacy-list/testing/selection-list-harness.mjs +0 -129
  364. package/esm2022/legacy-menu/index.mjs +0 -9
  365. package/esm2022/legacy-menu/legacy-menu_public_index.mjs +0 -5
  366. package/esm2022/legacy-menu/menu-content.mjs +0 -27
  367. package/esm2022/legacy-menu/menu-item.mjs +0 -41
  368. package/esm2022/legacy-menu/menu-module.mjs +0 -50
  369. package/esm2022/legacy-menu/menu-trigger.mjs +0 -31
  370. package/esm2022/legacy-menu/menu.mjs +0 -40
  371. package/esm2022/legacy-menu/public-api.mjs +0 -49
  372. package/esm2022/legacy-menu/testing/index.mjs +0 -9
  373. package/esm2022/legacy-menu/testing/menu-harness.mjs +0 -56
  374. package/esm2022/legacy-menu/testing/public-api.mjs +0 -9
  375. package/esm2022/legacy-paginator/index.mjs +0 -9
  376. package/esm2022/legacy-paginator/legacy-paginator_public_index.mjs +0 -5
  377. package/esm2022/legacy-paginator/paginator-module.mjs +0 -49
  378. package/esm2022/legacy-paginator/paginator.mjs +0 -53
  379. package/esm2022/legacy-paginator/public-api.mjs +0 -36
  380. package/esm2022/legacy-paginator/testing/index.mjs +0 -9
  381. package/esm2022/legacy-paginator/testing/paginator-harness.mjs +0 -41
  382. package/esm2022/legacy-paginator/testing/public-api.mjs +0 -15
  383. package/esm2022/legacy-progress-bar/index.mjs +0 -9
  384. package/esm2022/legacy-progress-bar/legacy-progress-bar_public_index.mjs +0 -5
  385. package/esm2022/legacy-progress-bar/progress-bar-module.mjs +0 -30
  386. package/esm2022/legacy-progress-bar/progress-bar.mjs +0 -190
  387. package/esm2022/legacy-progress-bar/public-api.mjs +0 -11
  388. package/esm2022/legacy-progress-bar/testing/index.mjs +0 -9
  389. package/esm2022/legacy-progress-bar/testing/progress-bar-harness.mjs +0 -38
  390. package/esm2022/legacy-progress-bar/testing/public-api.mjs +0 -9
  391. package/esm2022/legacy-progress-spinner/index.mjs +0 -9
  392. package/esm2022/legacy-progress-spinner/legacy-progress-spinner_public_index.mjs +0 -5
  393. package/esm2022/legacy-progress-spinner/progress-spinner-module.mjs +0 -30
  394. package/esm2022/legacy-progress-spinner/progress-spinner.mjs +0 -286
  395. package/esm2022/legacy-progress-spinner/public-api.mjs +0 -19
  396. package/esm2022/legacy-progress-spinner/testing/index.mjs +0 -9
  397. package/esm2022/legacy-progress-spinner/testing/progress-spinner-harness.mjs +0 -39
  398. package/esm2022/legacy-progress-spinner/testing/public-api.mjs +0 -9
  399. package/esm2022/legacy-radio/index.mjs +0 -9
  400. package/esm2022/legacy-radio/legacy-radio_public_index.mjs +0 -5
  401. package/esm2022/legacy-radio/public-api.mjs +0 -31
  402. package/esm2022/legacy-radio/radio-module.mjs +0 -29
  403. package/esm2022/legacy-radio/radio.mjs +0 -112
  404. package/esm2022/legacy-radio/testing/index.mjs +0 -9
  405. package/esm2022/legacy-radio/testing/public-api.mjs +0 -9
  406. package/esm2022/legacy-radio/testing/radio-harness.mjs +0 -58
  407. package/esm2022/legacy-select/index.mjs +0 -9
  408. package/esm2022/legacy-select/legacy-select_public_index.mjs +0 -5
  409. package/esm2022/legacy-select/public-api.mjs +0 -37
  410. package/esm2022/legacy-select/select-animations.mjs +0 -56
  411. package/esm2022/legacy-select/select-errors.mjs +0 -39
  412. package/esm2022/legacy-select/select-module.mjs +0 -51
  413. package/esm2022/legacy-select/select.mjs +0 -447
  414. package/esm2022/legacy-select/testing/index.mjs +0 -9
  415. package/esm2022/legacy-select/testing/public-api.mjs +0 -9
  416. package/esm2022/legacy-select/testing/select-harness-filters.mjs +0 -9
  417. package/esm2022/legacy-select/testing/select-harness.mjs +0 -36
  418. package/esm2022/legacy-slide-toggle/index.mjs +0 -9
  419. package/esm2022/legacy-slide-toggle/legacy-slide-toggle_public_index.mjs +0 -5
  420. package/esm2022/legacy-slide-toggle/public-api.mjs +0 -32
  421. package/esm2022/legacy-slide-toggle/slide-toggle-config.mjs +0 -18
  422. package/esm2022/legacy-slide-toggle/slide-toggle-module.mjs +0 -42
  423. package/esm2022/legacy-slide-toggle/slide-toggle.mjs +0 -137
  424. package/esm2022/legacy-slide-toggle/testing/index.mjs +0 -9
  425. package/esm2022/legacy-slide-toggle/testing/public-api.mjs +0 -15
  426. package/esm2022/legacy-slide-toggle/testing/slide-toggle-harness.mjs +0 -50
  427. package/esm2022/legacy-slider/index.mjs +0 -9
  428. package/esm2022/legacy-slider/legacy-slider_public_index.mjs +0 -5
  429. package/esm2022/legacy-slider/public-api.mjs +0 -10
  430. package/esm2022/legacy-slider/slider-module.mjs +0 -30
  431. package/esm2022/legacy-slider/slider.mjs +0 -847
  432. package/esm2022/legacy-slider/testing/index.mjs +0 -9
  433. package/esm2022/legacy-slider/testing/public-api.mjs +0 -9
  434. package/esm2022/legacy-slider/testing/slider-harness-filters.mjs +0 -2
  435. package/esm2022/legacy-slider/testing/slider-harness.mjs +0 -122
  436. package/esm2022/legacy-snack-bar/index.mjs +0 -9
  437. package/esm2022/legacy-snack-bar/legacy-snack-bar_public_index.mjs +0 -5
  438. package/esm2022/legacy-snack-bar/public-api.mjs +0 -53
  439. package/esm2022/legacy-snack-bar/simple-snack-bar.mjs +0 -45
  440. package/esm2022/legacy-snack-bar/snack-bar-container.mjs +0 -39
  441. package/esm2022/legacy-snack-bar/snack-bar-module.mjs +0 -34
  442. package/esm2022/legacy-snack-bar/snack-bar.mjs +0 -47
  443. package/esm2022/legacy-snack-bar/testing/index.mjs +0 -9
  444. package/esm2022/legacy-snack-bar/testing/public-api.mjs +0 -9
  445. package/esm2022/legacy-snack-bar/testing/snack-bar-harness.mjs +0 -46
  446. package/esm2022/legacy-table/cell.mjs +0 -163
  447. package/esm2022/legacy-table/index.mjs +0 -9
  448. package/esm2022/legacy-table/legacy-table_public_index.mjs +0 -5
  449. package/esm2022/legacy-table/public-api.mjs +0 -20
  450. package/esm2022/legacy-table/row.mjs +0 -165
  451. package/esm2022/legacy-table/table-data-source.mjs +0 -27
  452. package/esm2022/legacy-table/table-module.mjs +0 -98
  453. package/esm2022/legacy-table/table.mjs +0 -72
  454. package/esm2022/legacy-table/testing/cell-harness.mjs +0 -62
  455. package/esm2022/legacy-table/testing/index.mjs +0 -9
  456. package/esm2022/legacy-table/testing/public-api.mjs +0 -27
  457. package/esm2022/legacy-table/testing/row-harness.mjs +0 -76
  458. package/esm2022/legacy-table/testing/table-harness.mjs +0 -34
  459. package/esm2022/legacy-table/text-column.mjs +0 -65
  460. package/esm2022/legacy-tabs/index.mjs +0 -9
  461. package/esm2022/legacy-tabs/ink-bar.mjs +0 -73
  462. package/esm2022/legacy-tabs/legacy-tabs_public_index.mjs +0 -5
  463. package/esm2022/legacy-tabs/public-api.mjs +0 -94
  464. package/esm2022/legacy-tabs/tab-body.mjs +0 -64
  465. package/esm2022/legacy-tabs/tab-content.mjs +0 -27
  466. package/esm2022/legacy-tabs/tab-group.mjs +0 -72
  467. package/esm2022/legacy-tabs/tab-header.mjs +0 -75
  468. package/esm2022/legacy-tabs/tab-label-wrapper.mjs +0 -30
  469. package/esm2022/legacy-tabs/tab-label.mjs +0 -27
  470. package/esm2022/legacy-tabs/tab-nav-bar/index.mjs +0 -9
  471. package/esm2022/legacy-tabs/tab-nav-bar/tab-nav-bar.mjs +0 -164
  472. package/esm2022/legacy-tabs/tab.mjs +0 -46
  473. package/esm2022/legacy-tabs/tabs-module.mjs +0 -99
  474. package/esm2022/legacy-tabs/testing/index.mjs +0 -9
  475. package/esm2022/legacy-tabs/testing/public-api.mjs +0 -12
  476. package/esm2022/legacy-tabs/testing/tab-group-harness.mjs +0 -61
  477. package/esm2022/legacy-tabs/testing/tab-harness-filters.mjs +0 -2
  478. package/esm2022/legacy-tabs/testing/tab-harness.mjs +0 -71
  479. package/esm2022/legacy-tabs/testing/tab-link-harness.mjs +0 -45
  480. package/esm2022/legacy-tabs/testing/tab-nav-bar-harness.mjs +0 -70
  481. package/esm2022/legacy-tabs/testing/tab-nav-panel-harness.mjs +0 -31
  482. package/esm2022/legacy-tooltip/index.mjs +0 -9
  483. package/esm2022/legacy-tooltip/legacy-tooltip_public_index.mjs +0 -5
  484. package/esm2022/legacy-tooltip/public-api.mjs +0 -47
  485. package/esm2022/legacy-tooltip/testing/index.mjs +0 -9
  486. package/esm2022/legacy-tooltip/testing/public-api.mjs +0 -9
  487. package/esm2022/legacy-tooltip/testing/tooltip-harness.mjs +0 -35
  488. package/esm2022/legacy-tooltip/tooltip-animations.mjs +0 -28
  489. package/esm2022/legacy-tooltip/tooltip-module.mjs +0 -35
  490. package/esm2022/legacy-tooltip/tooltip.mjs +0 -108
  491. package/expansion/_expansion-legacy-index.scss +0 -2
  492. package/expansion/_expansion-theme.import.scss +0 -12
  493. package/expansion/_expansion-variables.import.scss +0 -1
  494. package/fesm2022/legacy-autocomplete/testing.mjs +0 -35
  495. package/fesm2022/legacy-autocomplete/testing.mjs.map +0 -1
  496. package/fesm2022/legacy-autocomplete.mjs +0 -146
  497. package/fesm2022/legacy-autocomplete.mjs.map +0 -1
  498. package/fesm2022/legacy-button/testing.mjs +0 -78
  499. package/fesm2022/legacy-button/testing.mjs.map +0 -1
  500. package/fesm2022/legacy-button.mjs +0 -194
  501. package/fesm2022/legacy-button.mjs.map +0 -1
  502. package/fesm2022/legacy-card/testing.mjs +0 -43
  503. package/fesm2022/legacy-card/testing.mjs.map +0 -1
  504. package/fesm2022/legacy-card.mjs +0 -353
  505. package/fesm2022/legacy-card.mjs.map +0 -1
  506. package/fesm2022/legacy-checkbox/testing.mjs +0 -42
  507. package/fesm2022/legacy-checkbox/testing.mjs.map +0 -1
  508. package/fesm2022/legacy-checkbox.mjs +0 -157
  509. package/fesm2022/legacy-checkbox.mjs.map +0 -1
  510. package/fesm2022/legacy-chips/testing.mjs +0 -365
  511. package/fesm2022/legacy-chips/testing.mjs.map +0 -1
  512. package/fesm2022/legacy-chips.mjs +0 -1399
  513. package/fesm2022/legacy-chips.mjs.map +0 -1
  514. package/fesm2022/legacy-core/testing.mjs +0 -92
  515. package/fesm2022/legacy-core/testing.mjs.map +0 -1
  516. package/fesm2022/legacy-core.mjs +0 -92
  517. package/fesm2022/legacy-core.mjs.map +0 -1
  518. package/fesm2022/legacy-dialog/testing.mjs +0 -80
  519. package/fesm2022/legacy-dialog/testing.mjs.map +0 -1
  520. package/fesm2022/legacy-dialog.mjs +0 -437
  521. package/fesm2022/legacy-dialog.mjs.map +0 -1
  522. package/fesm2022/legacy-form-field/testing.mjs +0 -87
  523. package/fesm2022/legacy-form-field/testing.mjs.map +0 -1
  524. package/fesm2022/legacy-form-field.mjs +0 -726
  525. package/fesm2022/legacy-form-field.mjs.map +0 -1
  526. package/fesm2022/legacy-input/testing.mjs +0 -2
  527. package/fesm2022/legacy-input/testing.mjs.map +0 -1
  528. package/fesm2022/legacy-input.mjs +0 -97
  529. package/fesm2022/legacy-input.mjs.map +0 -1
  530. package/fesm2022/legacy-list/testing.mjs +0 -436
  531. package/fesm2022/legacy-list/testing.mjs.map +0 -1
  532. package/fesm2022/legacy-list.mjs +0 -891
  533. package/fesm2022/legacy-list.mjs.map +0 -1
  534. package/fesm2022/legacy-menu/testing.mjs +0 -52
  535. package/fesm2022/legacy-menu/testing.mjs.map +0 -1
  536. package/fesm2022/legacy-menu.mjs +0 -145
  537. package/fesm2022/legacy-menu.mjs.map +0 -1
  538. package/fesm2022/legacy-paginator/testing.mjs +0 -38
  539. package/fesm2022/legacy-paginator/testing.mjs.map +0 -1
  540. package/fesm2022/legacy-paginator.mjs +0 -92
  541. package/fesm2022/legacy-paginator.mjs.map +0 -1
  542. package/fesm2022/legacy-progress-bar/testing.mjs +0 -34
  543. package/fesm2022/legacy-progress-bar/testing.mjs.map +0 -1
  544. package/fesm2022/legacy-progress-bar.mjs +0 -210
  545. package/fesm2022/legacy-progress-bar.mjs.map +0 -1
  546. package/fesm2022/legacy-progress-spinner/testing.mjs +0 -35
  547. package/fesm2022/legacy-progress-spinner/testing.mjs.map +0 -1
  548. package/fesm2022/legacy-progress-spinner.mjs +0 -312
  549. package/fesm2022/legacy-progress-spinner.mjs.map +0 -1
  550. package/fesm2022/legacy-radio/testing.mjs +0 -54
  551. package/fesm2022/legacy-radio/testing.mjs.map +0 -1
  552. package/fesm2022/legacy-radio.mjs +0 -130
  553. package/fesm2022/legacy-radio.mjs.map +0 -1
  554. package/fesm2022/legacy-select/testing.mjs +0 -32
  555. package/fesm2022/legacy-select/testing.mjs.map +0 -1
  556. package/fesm2022/legacy-select.mjs +0 -541
  557. package/fesm2022/legacy-select.mjs.map +0 -1
  558. package/fesm2022/legacy-slide-toggle/testing.mjs +0 -47
  559. package/fesm2022/legacy-slide-toggle/testing.mjs.map +0 -1
  560. package/fesm2022/legacy-slide-toggle.mjs +0 -177
  561. package/fesm2022/legacy-slide-toggle.mjs.map +0 -1
  562. package/fesm2022/legacy-slider/testing.mjs +0 -118
  563. package/fesm2022/legacy-slider/testing.mjs.map +0 -1
  564. package/fesm2022/legacy-slider.mjs +0 -863
  565. package/fesm2022/legacy-slider.mjs.map +0 -1
  566. package/fesm2022/legacy-snack-bar/testing.mjs +0 -42
  567. package/fesm2022/legacy-snack-bar/testing.mjs.map +0 -1
  568. package/fesm2022/legacy-snack-bar.mjs +0 -128
  569. package/fesm2022/legacy-snack-bar.mjs.map +0 -1
  570. package/fesm2022/legacy-table/testing.mjs +0 -150
  571. package/fesm2022/legacy-table/testing.mjs.map +0 -1
  572. package/fesm2022/legacy-table.mjs +0 -538
  573. package/fesm2022/legacy-table.mjs.map +0 -1
  574. package/fesm2022/legacy-tabs/testing.mjs +0 -239
  575. package/fesm2022/legacy-tabs/testing.mjs.map +0 -1
  576. package/fesm2022/legacy-tabs.mjs +0 -549
  577. package/fesm2022/legacy-tabs.mjs.map +0 -1
  578. package/fesm2022/legacy-tooltip/testing.mjs +0 -31
  579. package/fesm2022/legacy-tooltip/testing.mjs.map +0 -1
  580. package/fesm2022/legacy-tooltip.mjs +0 -148
  581. package/fesm2022/legacy-tooltip.mjs.map +0 -1
  582. package/form-field/_form-field-theme.import.scss +0 -29
  583. package/form-field/_mdc-text-field-theme-variable-refresh.scss +0 -88
  584. package/grid-list/_grid-list-legacy-index.scss +0 -2
  585. package/grid-list/_grid-list-theme.import.scss +0 -10
  586. package/icon/_icon-legacy-index.scss +0 -2
  587. package/icon/_icon-theme.import.scss +0 -5
  588. package/input/_input-theme.import.scss +0 -1
  589. package/legacy-autocomplete/_autocomplete-legacy-index.scss +0 -2
  590. package/legacy-autocomplete/_autocomplete-theme.import.scss +0 -7
  591. package/legacy-autocomplete/_autocomplete-theme.scss +0 -57
  592. package/legacy-autocomplete/index.d.ts +0 -115
  593. package/legacy-autocomplete/testing/index.d.ts +0 -41
  594. package/legacy-button/_button-base.import.scss +0 -21
  595. package/legacy-button/_button-base.scss +0 -114
  596. package/legacy-button/_button-legacy-index.scss +0 -22
  597. package/legacy-button/_button-theme.import.scss +0 -11
  598. package/legacy-button/_button-theme.scss +0 -223
  599. package/legacy-button/index.d.ts +0 -87
  600. package/legacy-button/testing/index.d.ts +0 -49
  601. package/legacy-card/_card-legacy-index.scss +0 -2
  602. package/legacy-card/_card-theme.import.scss +0 -10
  603. package/legacy-card/_card-theme.scss +0 -78
  604. package/legacy-card/index.d.ts +0 -201
  605. package/legacy-card/testing/index.d.ts +0 -56
  606. package/legacy-checkbox/_checkbox-legacy-index.scss +0 -2
  607. package/legacy-checkbox/_checkbox-theme.import.scss +0 -7
  608. package/legacy-checkbox/_checkbox-theme.scss +0 -138
  609. package/legacy-checkbox/index.d.ts +0 -116
  610. package/legacy-checkbox/testing/index.d.ts +0 -30
  611. package/legacy-chips/_chips-legacy-index.scss +0 -7
  612. package/legacy-chips/_chips-theme.import.scss +0 -14
  613. package/legacy-chips/_chips-theme.scss +0 -133
  614. package/legacy-chips/index.d.ts +0 -705
  615. package/legacy-chips/testing/index.d.ts +0 -316
  616. package/legacy-core/_core-theme.scss +0 -65
  617. package/legacy-core/_core.import.scss +0 -5
  618. package/legacy-core/_core.scss +0 -18
  619. package/legacy-core/color/_all-color.import.scss +0 -4
  620. package/legacy-core/color/_all-color.scss +0 -28
  621. package/legacy-core/density/private/_all-density.import.scss +0 -3
  622. package/legacy-core/density/private/_all-density.scss +0 -46
  623. package/legacy-core/density/private/_compatibility.import.scss +0 -4
  624. package/legacy-core/density/private/_compatibility.scss +0 -74
  625. package/legacy-core/index.d.ts +0 -218
  626. package/legacy-core/option/_optgroup-theme.import.scss +0 -27
  627. package/legacy-core/option/_optgroup-theme.scss +0 -52
  628. package/legacy-core/option/_option-legacy-index.scss +0 -5
  629. package/legacy-core/option/_option-theme.import.scss +0 -27
  630. package/legacy-core/option/_option-theme.scss +0 -86
  631. package/legacy-core/testing/index.d.ts +0 -80
  632. package/legacy-core/theming/_all-theme.import.scss +0 -3
  633. package/legacy-core/theming/_all-theme.scss +0 -89
  634. package/legacy-core/typography/_all-typography.import.scss +0 -4
  635. package/legacy-core/typography/_all-typography.scss +0 -105
  636. package/legacy-dialog/_dialog-legacy-index.scss +0 -2
  637. package/legacy-dialog/_dialog-theme.import.scss +0 -10
  638. package/legacy-dialog/_dialog-theme.scss +0 -53
  639. package/legacy-dialog/index.d.ts +0 -269
  640. package/legacy-dialog/testing/index.d.ts +0 -63
  641. package/legacy-form-field/_form-field-fill-theme.import.scss +0 -13
  642. package/legacy-form-field/_form-field-fill-theme.scss +0 -136
  643. package/legacy-form-field/_form-field-legacy-index.scss +0 -29
  644. package/legacy-form-field/_form-field-legacy-theme.import.scss +0 -14
  645. package/legacy-form-field/_form-field-legacy-theme.scss +0 -204
  646. package/legacy-form-field/_form-field-outline-theme.import.scss +0 -13
  647. package/legacy-form-field/_form-field-outline-theme.scss +0 -167
  648. package/legacy-form-field/_form-field-standard-theme.import.scss +0 -11
  649. package/legacy-form-field/_form-field-standard-theme.scss +0 -55
  650. package/legacy-form-field/_form-field-theme.import.scss +0 -29
  651. package/legacy-form-field/_form-field-theme.scss +0 -278
  652. package/legacy-form-field/index.d.ts +0 -370
  653. package/legacy-form-field/testing/index.d.ts +0 -76
  654. package/legacy-input/_input-legacy-index.scss +0 -2
  655. package/legacy-input/_input-theme.import.scss +0 -11
  656. package/legacy-input/_input-theme.scss +0 -115
  657. package/legacy-input/index.d.ts +0 -41
  658. package/legacy-input/testing/index.d.ts +0 -20
  659. package/legacy-list/_list-legacy-index.scss +0 -2
  660. package/legacy-list/_list-theme.import.scss +0 -10
  661. package/legacy-list/_list-theme.scss +0 -124
  662. package/legacy-list/index.d.ts +0 -396
  663. package/legacy-list/testing/index.d.ts +0 -419
  664. package/legacy-menu/_menu-legacy-index.scss +0 -2
  665. package/legacy-menu/_menu-theme.import.scss +0 -10
  666. package/legacy-menu/_menu-theme.scss +0 -84
  667. package/legacy-menu/index.d.ts +0 -127
  668. package/legacy-menu/testing/index.d.ts +0 -47
  669. package/legacy-paginator/_paginator-legacy-index.scss +0 -2
  670. package/legacy-paginator/_paginator-theme.import.scss +0 -11
  671. package/legacy-paginator/_paginator-theme.scss +0 -92
  672. package/legacy-paginator/_paginator-variables.import.scss +0 -1
  673. package/legacy-paginator/_paginator-variables.scss +0 -13
  674. package/legacy-paginator/index.d.ts +0 -87
  675. package/legacy-paginator/testing/index.d.ts +0 -36
  676. package/legacy-prebuilt-themes/legacy-deeppurple-amber.css +0 -1
  677. package/legacy-prebuilt-themes/legacy-indigo-pink.css +0 -1
  678. package/legacy-prebuilt-themes/legacy-pink-bluegrey.css +0 -1
  679. package/legacy-prebuilt-themes/legacy-purple-green.css +0 -1
  680. package/legacy-progress-bar/_progress-bar-legacy-index.scss +0 -2
  681. package/legacy-progress-bar/_progress-bar-theme.import.scss +0 -6
  682. package/legacy-progress-bar/_progress-bar-theme.scss +0 -93
  683. package/legacy-progress-bar/index.d.ts +0 -131
  684. package/legacy-progress-bar/testing/index.d.ts +0 -28
  685. package/legacy-progress-spinner/_progress-spinner-legacy-index.scss +0 -3
  686. package/legacy-progress-spinner/_progress-spinner-theme.import.scss +0 -7
  687. package/legacy-progress-spinner/_progress-spinner-theme.scss +0 -52
  688. package/legacy-progress-spinner/index.d.ts +0 -129
  689. package/legacy-progress-spinner/testing/index.d.ts +0 -29
  690. package/legacy-radio/_radio-legacy-index.scss +0 -2
  691. package/legacy-radio/_radio-theme.import.scss +0 -8
  692. package/legacy-radio/_radio-theme.scss +0 -104
  693. package/legacy-radio/index.d.ts +0 -75
  694. package/legacy-radio/testing/index.d.ts +0 -50
  695. package/legacy-select/_select-legacy-index.scss +0 -2
  696. package/legacy-select/_select-theme.import.scss +0 -11
  697. package/legacy-select/_select-theme.scss +0 -107
  698. package/legacy-select/index.d.ts +0 -230
  699. package/legacy-select/testing/index.d.ts +0 -38
  700. package/legacy-slide-toggle/_slide-toggle-legacy-index.scss +0 -3
  701. package/legacy-slide-toggle/_slide-toggle-theme.import.scss +0 -11
  702. package/legacy-slide-toggle/_slide-toggle-theme.scss +0 -111
  703. package/legacy-slide-toggle/index.d.ts +0 -113
  704. package/legacy-slide-toggle/testing/index.d.ts +0 -34
  705. package/legacy-slider/_slider-legacy-index.scss +0 -3
  706. package/legacy-slider/_slider-theme.import.scss +0 -8
  707. package/legacy-slider/_slider-theme.scss +0 -210
  708. package/legacy-slider/index.d.ts +0 -303
  709. package/legacy-slider/testing/index.d.ts +0 -68
  710. package/legacy-snack-bar/_snack-bar-legacy-index.scss +0 -2
  711. package/legacy-snack-bar/_snack-bar-theme.import.scss +0 -11
  712. package/legacy-snack-bar/_snack-bar-theme.scss +0 -72
  713. package/legacy-snack-bar/index.d.ts +0 -118
  714. package/legacy-snack-bar/testing/index.d.ts +0 -28
  715. package/legacy-table/_table-legacy-index.scss +0 -3
  716. package/legacy-table/_table-theme.import.scss +0 -8
  717. package/legacy-table/_table-theme.scss +0 -78
  718. package/legacy-table/index.d.ts +0 -298
  719. package/legacy-table/testing/index.d.ts +0 -149
  720. package/legacy-tabs/_tabs-common.import.scss +0 -11
  721. package/legacy-tabs/_tabs-common.scss +0 -173
  722. package/legacy-tabs/_tabs-legacy-index.scss +0 -6
  723. package/legacy-tabs/_tabs-theme.import.scss +0 -9
  724. package/legacy-tabs/_tabs-theme.scss +0 -188
  725. package/legacy-tabs/index.d.ts +0 -338
  726. package/legacy-tabs/testing/index.d.ts +0 -195
  727. package/legacy-tooltip/_tooltip-legacy-index.scss +0 -3
  728. package/legacy-tooltip/_tooltip-theme.import.scss +0 -9
  729. package/legacy-tooltip/_tooltip-theme.scss +0 -67
  730. package/legacy-tooltip/index.d.ts +0 -117
  731. package/legacy-tooltip/testing/index.d.ts +0 -30
  732. package/list/_list-theme.import.scss +0 -1
  733. package/menu/_menu-theme.import.scss +0 -2
  734. package/paginator/_paginator-theme.import.scss +0 -6
  735. package/paginator/_paginator-variables.import.scss +0 -1
  736. package/progress-bar/_progress-bar-theme.import.scss +0 -3
  737. package/progress-spinner/_progress-spinner-theme.import.scss +0 -3
  738. package/radio/_radio-theme.import.scss +0 -4
  739. package/select/_select-theme.import.scss +0 -7
  740. package/sidenav/_sidenav-legacy-index.scss +0 -2
  741. package/sidenav/_sidenav-theme.import.scss +0 -8
  742. package/slide-toggle/_slide-toggle-theme.import.scss +0 -7
  743. package/slider/_slider-theme.import.scss +0 -2
  744. package/snack-bar/_snack-bar-theme.import.scss +0 -5
  745. package/sort/_sort-legacy-index.scss +0 -2
  746. package/sort/_sort-theme.import.scss +0 -5
  747. package/stepper/_stepper-legacy-index.scss +0 -7
  748. package/stepper/_stepper-theme.import.scss +0 -16
  749. package/stepper/_stepper-variables.import.scss +0 -6
  750. package/table/_table-flex-styles.import.scss +0 -1
  751. package/table/_table-theme.import.scss +0 -8
  752. package/tabs/_tabs-common.import.scss +0 -11
  753. package/tabs/_tabs-theme.import.scss +0 -5
  754. package/toolbar/_toolbar-legacy-index.scss +0 -4
  755. package/toolbar/_toolbar-theme.import.scss +0 -14
  756. package/toolbar/_toolbar-variables.import.scss +0 -1
  757. package/tooltip/_tooltip-theme.import.scss +0 -2
  758. package/tree/_tree-legacy-index.scss +0 -2
  759. package/tree/_tree-theme.import.scss +0 -9
  760. package/tree/_tree-variables.import.scss +0 -1
@@ -0,0 +1,43 @@
1
+ @use 'sass:list';
2
+ @use 'sass:meta';
3
+
4
+ /// Validates that the object's type matches any of the expected types.
5
+ /// @param {any} $obj The object to test
6
+ /// @param {List} $types The expected types
7
+ /// @return {String} null if no error, else the unexpected type.
8
+ @function validate-type($obj, $types...) {
9
+ $result: meta.type-of($obj);
10
+ // A zero-length list is the same as a zero-length map.
11
+ @if ($result == list and list.index($types, map) and list.length($obj) == 0) {
12
+ @return null;
13
+ }
14
+ @return if(list.index($types, $result), null, $result);
15
+ }
16
+
17
+ /// Validates that a list contains only values from the allowed list of values.
18
+ /// @param {List} $list The list to test
19
+ /// @param {List} $allowed The allowed values
20
+ /// @return {List} null if no error, else the list of non-allowed values.
21
+ @function validate-allowed-values($list, $allowed...) {
22
+ $invalid: ();
23
+ @each $element in $list {
24
+ @if not list.index($allowed, $element) {
25
+ $invalid: list.append($invalid, $element);
26
+ }
27
+ }
28
+ @return if(list.length($invalid) > 0, $invalid, null);
29
+ }
30
+
31
+ /// Validates that a list contains all values from the required list of values.
32
+ /// @param {List} $list The list to test
33
+ /// @param {List} $required The required values
34
+ /// @return {List} null if no error, else the list of missing values.
35
+ @function validate-required-values($list, $required...) {
36
+ $invalid: ();
37
+ @each $element in $required {
38
+ @if not list.index($list, $element) {
39
+ $invalid: list.append($invalid, $element);
40
+ }
41
+ }
42
+ @return if(list.length($invalid) > 0, $invalid, null);
43
+ }
@@ -0,0 +1,229 @@
1
+ // This file contains functions used to inspect Angular Material theme objects.
2
+
3
+ @use 'sass:list';
4
+ @use 'sass:map';
5
+ @use '../style/validation';
6
+
7
+ $_internals: _mat-theming-internals-do-not-access;
8
+
9
+ $_m3-typescales: (
10
+ display-large,
11
+ display-medium,
12
+ display-small,
13
+ headline-large,
14
+ headline-medium,
15
+ headline-small,
16
+ title-large,
17
+ title-medium,
18
+ title-small,
19
+ label-large,
20
+ label-medium,
21
+ label-small,
22
+ body-large,
23
+ body-medium,
24
+ body-small,
25
+ );
26
+
27
+ $_typography-properties: (font, font-family, line-height, font-size, letter-spacing, font-weight);
28
+
29
+ /// Validates that the given value is a versioned theme object.
30
+ /// @param {Any} $theme The theme object to validate.
31
+ /// @return {Boolean|Null} true if the theme has errors, else null.
32
+ @function _validate-theme-object($theme) {
33
+ $err: validation.validate-type($theme, 'map') or
34
+ map.get($theme, $_internals, theme-version) == null;
35
+ @return if($err, true, null);
36
+ }
37
+
38
+ /// Gets the version number of a theme object. A theme that is not a valid versioned theme object is
39
+ /// considered to be version 0.
40
+ /// @param {Map} $theme The theme to check the version of
41
+ /// @return {Number} The version number of the theme (0 if unknown).
42
+ @function get-theme-version($theme) {
43
+ $err: _validate-theme-object($theme);
44
+ @return if($err, 0, map.get($theme, $_internals, theme-version) or 0);
45
+ }
46
+
47
+ /// Gets the type of theme represented by a theme object (light or dark).
48
+ /// @param {Map} $theme The theme
49
+ /// @return {String} The type of theme (either `light` or `dark`).
50
+ @function get-theme-type($theme) {
51
+ $err: _validate-theme-object($theme);
52
+ @if $err {
53
+ // TODO(mmalerba): implement for old style theme objects.
54
+ @error #{'get-theme-type does not support legacy theme objects.'};
55
+ }
56
+ @if not theme-has($theme, color) {
57
+ @error 'Color information is not available on this theme.';
58
+ }
59
+ @return map.get($theme, $_internals, theme-type) or light;
60
+ }
61
+
62
+ /// Gets a color from a theme object. This function can take 2 or 3 arguments. If 2 arguments are
63
+ /// passed, the second argument is treated as the name of a color role. If 3 arguments are passed,
64
+ /// the second argument is treated as the name of a color palette (primary, secondary, etc.) and the
65
+ /// third is treated as the palette hue (10, 50, etc.)
66
+ /// @param {Map} $theme The theme
67
+ /// @param {String} $color-role-or-palette-name The name of the color role to get, or the name of a
68
+ /// color palette.
69
+ /// @param {Number} $hue The palette hue to get (passing this argument means the second argument is
70
+ /// interpreted as a palette name).
71
+ /// @return {Color} The requested theme color.
72
+ @function get-theme-color($theme, $args...) {
73
+ $args-count: list.length($args);
74
+ @if $args-count == 1 {
75
+ @return _get-theme-role-color($theme, $args...);
76
+ }
77
+ @else if $args-count == 2 {
78
+ @return _get-theme-palette-color($theme, $args...);
79
+ }
80
+ @error #{'Expected 2 or 3 arguments. Got:'} $args-count + 1;
81
+ }
82
+
83
+ /// Gets a role color from a theme object.
84
+ /// @param {Map} $theme The theme
85
+ /// @param {String} $color-role-name The name of the color role to get.
86
+ /// @return {Color} The requested role color.
87
+ @function _get-theme-role-color($theme, $color-role-name) {
88
+ $err: _validate-theme-object($theme);
89
+ @if $err {
90
+ // TODO(mmalerba): implement for old style theme objects.
91
+ @error #{'get-theme-color does not support legacy theme objects.'};
92
+ }
93
+ @if not theme-has($theme, color) {
94
+ @error 'Color information is not available on this theme.';
95
+ }
96
+ $color-roles: map.get($theme, $_internals, color-tokens, (mdc, theme));
97
+ $result: map.get($color-roles, $color-role-name);
98
+ @if not $result {
99
+ @error #{'Valid color roles are: #{map.keys($color-roles)}. Got:'} $color-role-name;
100
+ }
101
+ @return $result;
102
+ }
103
+
104
+ /// Gets a palette color from a theme object.
105
+ /// @param {Map} $theme The theme
106
+ /// @param {String} $palette-name The name of the palette to get the color from.
107
+ /// @param {Number} $hue The hue to read from the palette.
108
+ /// @return {Color} The requested palette color.
109
+ @function _get-theme-palette-color($theme, $palette-name, $hue) {
110
+ $err: _validate-theme-object($theme);
111
+ @if $err {
112
+ // TODO(mmalerba): implement for old style theme objects.
113
+ @error #{'get-theme-color does not support legacy theme objects.'};
114
+ }
115
+ @if not theme-has($theme, color) {
116
+ @error 'Color information is not available on this theme.';
117
+ }
118
+ $palettes: map.get($theme, $_internals, palettes);
119
+ $palette: map.get($palettes, $palette-name);
120
+ @if not $palette {
121
+ $supported-palettes: map.keys($palettes);
122
+ @error #{'Valid palettes are: #{$supported-palettes}. Got:'} $palette-name;
123
+ }
124
+ $result: map.get($palette, $hue);
125
+ @if not $result {
126
+ $supported-hues: map.keys($palette);
127
+ @error #{'Valid hues for'} $palette-name #{'are: #{$supported-hues}. Got:'} $hue;
128
+ }
129
+ @return $result;
130
+ }
131
+
132
+ /// Gets a typography value from a theme object.
133
+ /// @param {Map} $theme The theme
134
+ /// @param {String} $typescale The typescale name.
135
+ /// @param {String} $property The CSS font property to get
136
+ /// (font, font-family, font-size, font-weight, line-height, or letter-spacing).
137
+ /// @return {*} The value of the requested font property.
138
+ @function get-theme-typography($theme, $typescale, $property: font) {
139
+ $err: _validate-theme-object($theme);
140
+ @if $err {
141
+ // TODO(mmalerba): implement for old style theme objects.
142
+ @error #{'get-theme-typography does not support legacy theme objects.'};
143
+ }
144
+ @if not theme-has($theme, typography) {
145
+ @error 'Typography information is not available on this theme.';
146
+ }
147
+ @if not list.index($_m3-typescales, $typescale) {
148
+ @error #{'Valid typescales are: #{$_m3-typescales}. Got:'} $typescale;
149
+ }
150
+ @if not list.index($_typography-properties, $property) {
151
+ @error #{'Valid typography properties are: #{$_typography-properties}. Got:'} $property;
152
+ }
153
+ $property-key: map.get((
154
+ font: '',
155
+ font-family: '-font',
156
+ line-height: '-line-height',
157
+ font-size: '-size',
158
+ letter-spacing: '-tracking',
159
+ font-weight: '-weight'
160
+ ), $property);
161
+ $token-name: '#{$typescale}#{$property-key}';
162
+ @return map.get($theme, $_internals, typography-tokens, (mdc, typography), $token-name);
163
+ }
164
+
165
+ /// Gets the density scale from a theme object.
166
+ /// @param {Map} $theme The theme
167
+ /// @return {Number} The density scale.
168
+ @function get-theme-density($theme) {
169
+ $err: _validate-theme-object($theme);
170
+ @if $err {
171
+ // TODO(mmalerba): implement for old style theme objects.
172
+ @error #{'get-theme-density does not support legacy theme objects.'};
173
+ }
174
+ @if not theme-has($theme, density) {
175
+ @error 'Density information is not available on this theme.';
176
+ }
177
+ @return map.get($theme, $_internals, density-scale);
178
+ }
179
+
180
+ /// Checks whether the theme has information about given theming system.
181
+ /// @param {Map} $theme The theme
182
+ /// @param {String} $system The system to check
183
+ /// @param {Boolean} Whether the theme has information about the system.
184
+ @function theme-has($theme, $system) {
185
+ $err: _validate-theme-object($theme);
186
+ @if $err {
187
+ // TODO(mmalerba): implement for old style theme objects.
188
+ @error #{'get-theme-density does not support legacy theme objects.'};
189
+ }
190
+ @if $system == base {
191
+ @return map.get($theme, $_internals, base-tokens) != null;
192
+ }
193
+ @if $system == color {
194
+ @return map.get($theme, $_internals, color-tokens) != null and
195
+ map.get($theme, $_internals, theme-type) != null and
196
+ map.get($theme, $_internals, palettes) != null;
197
+ }
198
+ @if $system == typography {
199
+ @return map.get($theme, $_internals, typography-tokens) != null;
200
+ }
201
+ @if $system == density {
202
+ @return map.get($theme, $_internals, density-scale) != null;
203
+ }
204
+ @error 'Valid systems are: base, color, typography, density. Got:' $system;
205
+ }
206
+
207
+ /// Gets the set of tokens from the given theme, limited to those affected by the requested theming
208
+ /// systems.
209
+ /// @param {Map} $theme The theme to get tokens from.
210
+ /// @param {String...} $systems The theming systems to get tokens for. Valid values are: color,
211
+ /// typography, density, base. If no systems are passed, all tokens will be returned.
212
+ /// @return {Map} The requested tokens for the theme.
213
+ @function get-theme-tokens($theme, $systems...) {
214
+ $systems: if(list.length($systems) == 0, (color, typography, density, base), $systems);
215
+ $err: _validate-theme-object($theme);
216
+ @if $err {
217
+ @error #{'Expected $theme to be an Angular Material theme object. Got:'} $theme;
218
+ }
219
+ $err: validation.validate-allowed-values($systems, color, typography, density, base);
220
+ @if $err {
221
+ @error #{'Expected $systems to contain valid system names (color, typography, density, or'}
222
+ #{'base). Got invalid system names:'} $err;
223
+ }
224
+ $result: ();
225
+ @each $system in $systems {
226
+ $result: map.deep-merge($result, map.get($theme, $_internals, '#{$system}-tokens'));
227
+ }
228
+ @return $result;
229
+ }
@@ -35,6 +35,7 @@ $_disable-color-backwards-compatibility: false;
35
35
  $_emitted-color: () !default;
36
36
  $_emitted-typography: () !default;
37
37
  $_emitted-density: () !default;
38
+ $_emitted-base: () !default;
38
39
 
39
40
  /// Extracts a color from a palette or throws an error if it doesn't exist.
40
41
  /// @param {Map} $palette The palette from which to extract a color.
@@ -71,7 +72,6 @@ $_emitted-density: () !default;
71
72
  lighter: _get-color-from-palette($base-palette, $lighter),
72
73
  darker: _get-color-from-palette($base-palette, $darker),
73
74
  text: _get-color-from-palette($base-palette, $text),
74
-
75
75
  default-contrast: get-contrast-color-from-palette($base-palette, $default),
76
76
  lighter-contrast: get-contrast-color-from-palette($base-palette, $lighter),
77
77
  darker-contrast: get-contrast-color-from-palette($base-palette, $darker)
@@ -321,6 +321,8 @@ $_emitted-density: () !default;
321
321
  // Private APIs
322
322
  //
323
323
 
324
+ $_internals: _mat-theming-internals-do-not-access;
325
+
324
326
  // Checks if configurations that have been declared in the given theme have been generated
325
327
  // before. If so, warnings will be reported. This should notify developers in case duplicate
326
328
  // styles are accidentally generated due to wrong usage of the all-theme mixins.
@@ -334,6 +336,111 @@ $_emitted-density: () !default;
334
336
  // (e.g. `all-component-themes` and `all-legacy-component-themes`) without causing any
335
337
  // style duplication.
336
338
  @mixin private-check-duplicate-theme-styles($theme-or-color-config, $id) {
339
+ // TODO(mmalerba): use get-theme-version for this check when its moved out of experimental.
340
+ @if map.get($theme-or-color-config, $_internals, theme-version) == 1 {
341
+ @include _check-duplicate-theme-styles-v1($theme-or-color-config, $id) {
342
+ // Optionally, consumers of this mixin can wrap contents inside so that nested
343
+ // duplicate style checks do not report another warning. e.g. if developers include
344
+ // the `all-component-themes` mixin twice, only the top-level duplicate styles check
345
+ // should report a warning. Not all individual components should report a warning too.
346
+ $orig-mat-theme-ignore-duplication-warnings: $theme-ignore-duplication-warnings;
347
+ $theme-ignore-duplication-warnings: true !global;
348
+ @content;
349
+ $theme-ignore-duplication-warnings: $orig-mat-theme-ignore-duplication-warnings !global;
350
+ }
351
+ }
352
+ @else {
353
+ @include _check-duplicate-theme-styles-v0($theme-or-color-config, $id) {
354
+ // Optionally, consumers of this mixin can wrap contents inside so that nested
355
+ // duplicate style checks do not report another warning. e.g. if developers include
356
+ // the `all-component-themes` mixin twice, only the top-level duplicate styles check
357
+ // should report a warning. Not all individual components should report a warning too.
358
+ $orig-mat-theme-ignore-duplication-warnings: $theme-ignore-duplication-warnings;
359
+ $theme-ignore-duplication-warnings: true !global;
360
+ @content;
361
+ $theme-ignore-duplication-warnings: $orig-mat-theme-ignore-duplication-warnings !global;
362
+ }
363
+ }
364
+ }
365
+
366
+ /// Strip out any settings map entries that have empty values (null or ()).
367
+ @function _strip-empty-settings($settings) {
368
+ $result: ();
369
+ @each $key, $value in $settings {
370
+ @if $value != null and $value != () {
371
+ $result: map.set($result, $key, $value);
372
+ }
373
+ }
374
+ @return if($result == (), null, $result);
375
+ }
376
+
377
+ // Checks for duplicate styles in a `theme-version: 1` style theme.
378
+ @mixin _check-duplicate-theme-styles-v1($theme-or-color-config, $id) {
379
+ $color-settings: _strip-empty-settings((
380
+ theme-type: map.get($theme-or-color-config, $_internals, theme-type),
381
+ color-tokens: map.get($theme-or-color-config, $_internals, color-tokens),
382
+ ));
383
+ $typography-settings: _strip-empty-settings((
384
+ typography-tokens: map.get($theme-or-color-config, $_internals, typography-tokens),
385
+ ));
386
+ $density-settings: _strip-empty-settings((
387
+ density-scale: map.get($theme-or-color-config, $_internals, density-scale),
388
+ density-tokens: map.get($theme-or-color-config, $_internals, density-tokens),
389
+ ));
390
+ $base-settings: _strip-empty-settings((
391
+ base-tokens: map.get($theme-or-color-config, $_internals, base-tokens),
392
+ ));
393
+ $previous-color-settings: map.get($_emitted-color, $id) or ();
394
+ $previous-typography-settings: map.get($_emitted-typography, $id) or ();
395
+ $previous-density-settings: map.get($_emitted-density, $id) or ();
396
+ $previous-base-settings: map.get($_emitted-base, $id) or ();
397
+
398
+ // Check if the color configuration has been generated before.
399
+ @if $color-settings != null {
400
+ @if list.index($previous-color-settings, $color-settings) != null and
401
+ not $theme-ignore-duplication-warnings {
402
+ @warn 'The same color styles are generated multiple times. ' + $_duplicate-warning;
403
+ }
404
+ $previous-color-settings: list.append($previous-color-settings, $color-settings);
405
+ }
406
+
407
+ // Check if the typography configuration has been generated before.
408
+ @if $typography-settings != null {
409
+ @if list.index($previous-typography-settings, $typography-settings) != null and
410
+ not $theme-ignore-duplication-warnings {
411
+ @warn 'The same typography styles are generated multiple times. ' + $_duplicate-warning;
412
+ }
413
+ $previous-typography-settings: list.append($previous-typography-settings, $typography-settings);
414
+ }
415
+
416
+ // Check if the density configuration has been generated before.
417
+ @if $density-settings != null {
418
+ @if list.index($previous-density-settings, $density-settings) != null and
419
+ not $theme-ignore-duplication-warnings {
420
+ @warn 'The same density styles are generated multiple times. ' + $_duplicate-warning;
421
+ }
422
+ $previous-density-settings: list.append($previous-density-settings, $density-settings);
423
+ }
424
+
425
+ // Check if the base configuration has been generated before.
426
+ @if $base-settings != null {
427
+ @if list.index($previous-base-settings, $base-settings) != null and
428
+ not $theme-ignore-duplication-warnings {
429
+ @warn 'The same base theme styles are generated multiple times. ' + $_duplicate-warning;
430
+ }
431
+ $previous-base-settings: list.append($previous-base-settings, $base-settings);
432
+ }
433
+
434
+ $_emitted-color: map.set($_emitted-color, $id, $previous-color-settings) !global;
435
+ $_emitted-density: map.set($_emitted-density, $id, $previous-density-settings) !global;
436
+ $_emitted-typography: map.set($_emitted-typography, $id, $previous-typography-settings) !global;
437
+ $_emitted-base: map.set($_emitted-base, $id, $previous-base-settings) !global;
438
+
439
+ @content;
440
+ }
441
+
442
+ // Checks for duplicate styles in a `theme-version: 0` style theme.
443
+ @mixin _check-duplicate-theme-styles-v0($theme-or-color-config, $id) {
337
444
  $theme: private-legacy-get-theme($theme-or-color-config);
338
445
  $color-config: get-color-config($theme);
339
446
  $density-config: get-density-config($theme);
@@ -383,13 +490,6 @@ $_emitted-density: () !default;
383
490
  $_emitted-density: map.merge($_emitted-density, ($id: $previous-density)) !global;
384
491
  $_emitted-typography: map.merge($_emitted-typography, ($id: $previous-typography)) !global;
385
492
 
386
- // Optionally, consumers of this mixin can wrap contents inside so that nested
387
- // duplicate style checks do not report another warning. e.g. if developers include
388
- // the `all-component-themes` mixin twice, only the top-level duplicate styles check
389
- // should report a warning. Not all individual components should report a warning too.
390
- $orig-mat-theme-ignore-duplication-warnings: $theme-ignore-duplication-warnings;
391
- $theme-ignore-duplication-warnings: true !global;
392
-
393
493
  // If duplicate default density styles would be generated for a legacy constructed theme,
394
494
  // we adjust the density generation so that no density styles are generated by default.
395
495
  // If no default density styles have been generated yet, we ensure that the styles
@@ -401,7 +501,6 @@ $_emitted-density: () !default;
401
501
  compatibility.$private-density-generate-styles: not $duplicate-legacy-density;
402
502
 
403
503
  @content;
404
- $theme-ignore-duplication-warnings: $orig-mat-theme-ignore-duplication-warnings !global;
405
504
 
406
505
  compatibility.$private-density-generate-at-root: false;
407
506
  compatibility.$private-density-generate-styles: true;
@@ -456,7 +555,8 @@ $_emitted-density: () !default;
456
555
  // TODO(devversion): remove this in the future. Constructing themes manually is rare,
457
556
  // and the code can be easily updated to the new API.
458
557
  @function private-legacy-get-theme($theme-or-color-config) {
459
- @if private-is-theme-object($theme-or-color-config) {
558
+ @if private-is-theme-object($theme-or-color-config) or
559
+ map.get($theme-or-color-config, $_internals, theme-version) == 1 {
460
560
  @return $theme-or-color-config;
461
561
  }
462
562
 
@@ -1,6 +1,8 @@
1
1
  @use 'sass:map';
2
2
  @use '../../token-utils';
3
3
  @use '../../../style/sass-utils';
4
+ @use '../../../theming/theming';
5
+ @use '../../../theming/palette';
4
6
  @use '../../../typography/typography-utils';
5
7
 
6
8
  // The prefix used to generate the fully qualified name for tokens in this file.
@@ -14,12 +16,43 @@ $prefix: (mat, form-field);
14
16
 
15
17
  // Tokens that can be configured through Angular Material's color theming API.
16
18
  @function get-color-tokens($config) {
19
+ $warn: map.get($config, warn);
17
20
  $is-dark: map.get($config, is-dark);
18
21
  $on-surface: if($is-dark, #fff, #000);
22
+ $color-tokens: private-get-color-palette-color-tokens($config, primary);
19
23
 
20
- @return (
24
+ @return map.merge($color-tokens, (
21
25
  // MDC has a token for the enabled placeholder, but not for the disabled one.
22
26
  disabled-input-text-placeholder-color: rgba($on-surface, 0.38),
27
+ state-layer-color: rgba($on-surface, 0.87),
28
+ error-text-color: theming.get-color-from-palette($warn),
29
+
30
+ // On dark themes we set the native `select` color to some shade of white,
31
+ // however the color propagates to all of the `option` elements, which are
32
+ // always on a white background inside the dropdown, causing them to blend in.
33
+ // Since we can't change background of the dropdown, we need to explicitly
34
+ // reset the color of the options to something dark.
35
+ select-option-text-color: if($is-dark, palette.$dark-primary-text, inherit),
36
+ // Note the spelling of the `GrayText` here which is a system color. See:
37
+ // https://developer.mozilla.org/en-US/docs/Web/CSS/system-color
38
+ select-disabled-option-text-color: if($is-dark, palette.$dark-disabled-text, GrayText),
39
+
40
+ // These values are taken from the MDC select implementation:
41
+ // https://github.com/material-components/material-components-web/blob/master/packages/mdc-select/_select-theme.scss
42
+ enabled-select-arrow-color: rgba($on-surface, 0.54),
43
+ disabled-select-arrow-color: rgba($on-surface, 0.38),
44
+
45
+ hover-state-layer-opacity: if($is-dark, 0.08, 0.04),
46
+ focus-state-layer-opacity: if($is-dark, 0.24, 0.12),
47
+ ));
48
+ }
49
+
50
+ // Generates the mapping for the properties that change based on the form field color.
51
+ @function private-get-color-palette-color-tokens($config, $palette-name) {
52
+ $palette: map.get($config, $palette-name);
53
+
54
+ @return (
55
+ focus-select-arrow-color: theming.get-color-from-palette($palette, default, 0.87),
23
56
  );
24
57
  }
25
58
 
@@ -0,0 +1,43 @@
1
+ @use 'sass:map';
2
+ @use '../../token-utils';
3
+ @use '../../../style/sass-utils';
4
+
5
+ // The prefix used to generate the fully qualified name for tokens in this file.
6
+ $prefix: (mat, slider);
7
+
8
+ // Tokens that can't be configured through Angular Material's current theming API,
9
+ // but may be in a future version of the theming API.
10
+ @function get-unthemable-tokens() {
11
+ @return ();
12
+ }
13
+
14
+ // Tokens that can be configured through Angular Material's color theming API.
15
+ @function get-color-tokens($config) {
16
+ $is-dark: map.get($config, is-dark);
17
+
18
+ @return (
19
+ // Opacity of value indicator text container
20
+ value-indicator-opacity: if($is-dark, 0.9, 0.6),
21
+ );
22
+ }
23
+
24
+ // Tokens that can be configured through Angular Material's typography theming API.
25
+ @function get-typography-tokens($config) {
26
+ @return ();
27
+ }
28
+
29
+ // Tokens that can be configured through Angular Material's density theming API.
30
+ @function get-density-tokens($config) {
31
+ @return ();
32
+ }
33
+
34
+ // Combines the tokens generated by the above functions into a single map with placeholder values.
35
+ // This is used to create token slots.
36
+ @function get-token-slots() {
37
+ @return sass-utils.deep-merge-all(
38
+ get-unthemable-tokens(),
39
+ get-color-tokens(token-utils.$placeholder-color-config),
40
+ get-typography-tokens(token-utils.$placeholder-typography-config),
41
+ get-density-tokens(token-utils.$placeholder-density-config)
42
+ );
43
+ }
@@ -134,7 +134,7 @@ $prefix: (mdc, filled-text-field);
134
134
  @return $first-color;
135
135
  }
136
136
 
137
- // Generates the mapping for the properties that change based on the slide toggle color.
137
+ // Generates the mapping for the properties that change based on the text field color.
138
138
  @function private-get-color-palette-color-tokens($config, $palette-name) {
139
139
  $palette: map.get($config, $palette-name);
140
140
  $palette-color: theming.get-color-from-palette($palette);
@@ -117,7 +117,7 @@ $prefix: (mdc, outlined-text-field);
117
117
  ));
118
118
  }
119
119
 
120
- // Generates the mapping for the properties that change based on the slide toggle color.
120
+ // Generates the mapping for the properties that change based on the text field color.
121
121
  @function private-get-color-palette-color-tokens($config, $palette-name) {
122
122
  $palette: map.get($config, $palette-name);
123
123
  $palette-color: theming.get-color-from-palette($palette);