@depup/angular__material 21.2.2-depup.19

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 (578) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +31 -0
  3. package/_index.scss +145 -0
  4. package/autocomplete/_autocomplete-theme.scss +76 -0
  5. package/autocomplete/_m2-autocomplete.scss +19 -0
  6. package/autocomplete/_m3-autocomplete.scss +26 -0
  7. package/badge/_badge-theme.scss +106 -0
  8. package/badge/_m2-badge.scss +73 -0
  9. package/badge/_m3-badge.scss +52 -0
  10. package/bottom-sheet/_bottom-sheet-theme.scss +76 -0
  11. package/bottom-sheet/_m2-bottom-sheet.scss +24 -0
  12. package/bottom-sheet/_m3-bottom-sheet.scss +25 -0
  13. package/button/_button-theme.scss +113 -0
  14. package/button/_fab-theme.scss +111 -0
  15. package/button/_icon-button-theme.scss +136 -0
  16. package/button/_m2-button.scss +194 -0
  17. package/button/_m2-fab.scss +101 -0
  18. package/button/_m2-icon-button.scss +59 -0
  19. package/button/_m3-button.scss +170 -0
  20. package/button/_m3-fab.scss +92 -0
  21. package/button/_m3-icon-button.scss +54 -0
  22. package/button-toggle/_button-toggle-theme.scss +93 -0
  23. package/button-toggle/_m2-button-toggle.scss +68 -0
  24. package/button-toggle/_m3-button-toggle.scss +72 -0
  25. package/card/_card-theme.scss +76 -0
  26. package/card/_m2-card.scss +39 -0
  27. package/card/_m3-card.scss +44 -0
  28. package/changes.json +10 -0
  29. package/checkbox/_checkbox-theme.scss +105 -0
  30. package/checkbox/_m2-checkbox.scss +78 -0
  31. package/checkbox/_m3-checkbox.scss +68 -0
  32. package/chips/_chips-theme.scss +115 -0
  33. package/chips/_m2-chip.scss +85 -0
  34. package/chips/_m3-chip.scss +81 -0
  35. package/core/_core-theme.scss +125 -0
  36. package/core/_core.scss +50 -0
  37. package/core/_m2-app.scss +24 -0
  38. package/core/_m3-app.scss +44 -0
  39. package/core/color/_all-color.scss +17 -0
  40. package/core/density/private/_all-density.scss +78 -0
  41. package/core/focus-indicators/_private.scss +126 -0
  42. package/core/m2/_index.scss +52 -0
  43. package/core/m2/_palette.scss +748 -0
  44. package/core/m2/_theming.scss +340 -0
  45. package/core/m2/_typography-utils.scss +81 -0
  46. package/core/m2/_typography.scss +388 -0
  47. package/core/option/_m2-optgroup.scss +21 -0
  48. package/core/option/_m2-option.scss +38 -0
  49. package/core/option/_m3-optgroup.scss +25 -0
  50. package/core/option/_m3-option.scss +37 -0
  51. package/core/option/_optgroup-theme.scss +76 -0
  52. package/core/option/_option-theme.scss +103 -0
  53. package/core/ripple/_m2-ripple.scss +17 -0
  54. package/core/ripple/_m3-ripple.scss +17 -0
  55. package/core/ripple/_ripple-theme.scss +75 -0
  56. package/core/ripple/_ripple.scss +56 -0
  57. package/core/selection/pseudo-checkbox/_m2-pseudo-checkbox.scss +32 -0
  58. package/core/selection/pseudo-checkbox/_m3-pseudo-checkbox.scss +34 -0
  59. package/core/selection/pseudo-checkbox/_pseudo-checkbox-common.scss +86 -0
  60. package/core/selection/pseudo-checkbox/_pseudo-checkbox-theme.scss +110 -0
  61. package/core/style/_checkbox-common.scss +11 -0
  62. package/core/style/_elevation.scss +208 -0
  63. package/core/style/_layout-common.scss +8 -0
  64. package/core/style/_private.scss +27 -0
  65. package/core/style/_sass-utils.scss +57 -0
  66. package/core/style/_validation.scss +52 -0
  67. package/core/style/_variables.scss +44 -0
  68. package/core/style/_vendor-prefixes.scss +56 -0
  69. package/core/theming/_all-theme.scss +168 -0
  70. package/core/theming/_color-api-backwards-compatibility.scss +159 -0
  71. package/core/theming/_config-validation.scss +174 -0
  72. package/core/theming/_definition.scss +141 -0
  73. package/core/theming/_inspection.scss +289 -0
  74. package/core/theming/_m2-inspection.scss +243 -0
  75. package/core/theming/_palettes.scss +1036 -0
  76. package/core/theming/_theming.scss +193 -0
  77. package/core/theming/_validation.scss +5 -0
  78. package/core/tokens/_classes.scss +398 -0
  79. package/core/tokens/_m2-utils.scss +25 -0
  80. package/core/tokens/_m3-tokens.scss +126 -0
  81. package/core/tokens/_m3-utils.scss +36 -0
  82. package/core/tokens/_system.scss +398 -0
  83. package/core/tokens/_token-utils.scss +119 -0
  84. package/core/tokens/m2/_index.scss +6 -0
  85. package/core/tokens/m2/_md-sys-color-internal.scss +11 -0
  86. package/core/tokens/m2/_md-sys-color.scss +123 -0
  87. package/core/tokens/m2/_md-sys-elevation.scss +10 -0
  88. package/core/tokens/m2/_md-sys-motion.scss +30 -0
  89. package/core/tokens/m2/_md-sys-shape.scss +16 -0
  90. package/core/tokens/m2/_md-sys-state.scss +8 -0
  91. package/core/tokens/m2/_md-sys-typescale.scss +68 -0
  92. package/core/tokens/m3/_index.scss +7 -0
  93. package/core/tokens/m3/_md-sys-color-internal.scss +11 -0
  94. package/core/tokens/m3/_md-sys-color.scss +118 -0
  95. package/core/tokens/m3/_md-sys-elevation.scss +15 -0
  96. package/core/tokens/m3/_md-sys-motion.scss +35 -0
  97. package/core/tokens/m3/_md-sys-shape.scss +21 -0
  98. package/core/tokens/m3/_md-sys-state.scss +13 -0
  99. package/core/tokens/m3/_md-sys-typescale-internal.scss +5 -0
  100. package/core/tokens/m3/_md-sys-typescale.scss +114 -0
  101. package/core/tokens/m3/_theme.scss +35 -0
  102. package/core/typography/_all-typography.scss +104 -0
  103. package/core/typography/_typography-utils.scss +31 -0
  104. package/core/typography/_typography.scss +269 -0
  105. package/core/typography/_versioning.scss +90 -0
  106. package/datepicker/_datepicker-theme.scss +132 -0
  107. package/datepicker/_m2-datepicker.scss +81 -0
  108. package/datepicker/_m3-datepicker.scss +74 -0
  109. package/dialog/_dialog-legacy-padding.scss +31 -0
  110. package/dialog/_dialog-theme.scss +76 -0
  111. package/dialog/_m2-dialog.scss +43 -0
  112. package/dialog/_m3-dialog.scss +47 -0
  113. package/divider/_divider-theme.scss +75 -0
  114. package/divider/_m2-divider.scss +17 -0
  115. package/divider/_m3-divider.scss +19 -0
  116. package/expansion/_expansion-theme.scss +76 -0
  117. package/expansion/_m2-expansion.scss +64 -0
  118. package/expansion/_m3-expansion.scss +61 -0
  119. package/fesm2022/_animation-chunk.mjs +22 -0
  120. package/fesm2022/_animation-chunk.mjs.map +1 -0
  121. package/fesm2022/_date-formats-chunk.mjs +86 -0
  122. package/fesm2022/_date-formats-chunk.mjs.map +1 -0
  123. package/fesm2022/_date-range-input-harness-chunk.mjs +322 -0
  124. package/fesm2022/_date-range-input-harness-chunk.mjs.map +1 -0
  125. package/fesm2022/_error-options-chunk.mjs +66 -0
  126. package/fesm2022/_error-options-chunk.mjs.map +1 -0
  127. package/fesm2022/_error-state-chunk.mjs +30 -0
  128. package/fesm2022/_error-state-chunk.mjs.map +1 -0
  129. package/fesm2022/_form-field-chunk.mjs +1351 -0
  130. package/fesm2022/_form-field-chunk.mjs.map +1 -0
  131. package/fesm2022/_icon-button-chunk.mjs +268 -0
  132. package/fesm2022/_icon-button-chunk.mjs.map +1 -0
  133. package/fesm2022/_icon-registry-chunk.mjs +368 -0
  134. package/fesm2022/_icon-registry-chunk.mjs.map +1 -0
  135. package/fesm2022/_input-harness-chunk.mjs +67 -0
  136. package/fesm2022/_input-harness-chunk.mjs.map +1 -0
  137. package/fesm2022/_input-value-accessor-chunk.mjs +6 -0
  138. package/fesm2022/_input-value-accessor-chunk.mjs.map +1 -0
  139. package/fesm2022/_internal-form-field-chunk.mjs +67 -0
  140. package/fesm2022/_internal-form-field-chunk.mjs.map +1 -0
  141. package/fesm2022/_line-chunk.mjs +99 -0
  142. package/fesm2022/_line-chunk.mjs.map +1 -0
  143. package/fesm2022/_option-chunk.mjs +385 -0
  144. package/fesm2022/_option-chunk.mjs.map +1 -0
  145. package/fesm2022/_option-harness-chunk.mjs +30 -0
  146. package/fesm2022/_option-harness-chunk.mjs.map +1 -0
  147. package/fesm2022/_option-module-chunk.mjs +48 -0
  148. package/fesm2022/_option-module-chunk.mjs.map +1 -0
  149. package/fesm2022/_pseudo-checkbox-chunk.mjs +88 -0
  150. package/fesm2022/_pseudo-checkbox-chunk.mjs.map +1 -0
  151. package/fesm2022/_pseudo-checkbox-module-chunk.mjs +46 -0
  152. package/fesm2022/_pseudo-checkbox-module-chunk.mjs.map +1 -0
  153. package/fesm2022/_public-api-chunk.mjs +84 -0
  154. package/fesm2022/_public-api-chunk.mjs.map +1 -0
  155. package/fesm2022/_ripple-chunk.mjs +544 -0
  156. package/fesm2022/_ripple-chunk.mjs.map +1 -0
  157. package/fesm2022/_ripple-loader-chunk.mjs +144 -0
  158. package/fesm2022/_ripple-loader-chunk.mjs.map +1 -0
  159. package/fesm2022/_ripple-module-chunk.mjs +46 -0
  160. package/fesm2022/_ripple-module-chunk.mjs.map +1 -0
  161. package/fesm2022/_structural-styles-chunk.mjs +45 -0
  162. package/fesm2022/_structural-styles-chunk.mjs.map +1 -0
  163. package/fesm2022/_tooltip-chunk.mjs +848 -0
  164. package/fesm2022/_tooltip-chunk.mjs.map +1 -0
  165. package/fesm2022/autocomplete-testing.mjs +75 -0
  166. package/fesm2022/autocomplete-testing.mjs.map +1 -0
  167. package/fesm2022/autocomplete.mjs +1068 -0
  168. package/fesm2022/autocomplete.mjs.map +1 -0
  169. package/fesm2022/badge-testing.mjs +48 -0
  170. package/fesm2022/badge-testing.mjs.map +1 -0
  171. package/fesm2022/badge.mjs +357 -0
  172. package/fesm2022/badge.mjs.map +1 -0
  173. package/fesm2022/bottom-sheet-testing.mjs +17 -0
  174. package/fesm2022/bottom-sheet-testing.mjs.map +1 -0
  175. package/fesm2022/bottom-sheet.mjs +390 -0
  176. package/fesm2022/bottom-sheet.mjs.map +1 -0
  177. package/fesm2022/button-testing.mjs +81 -0
  178. package/fesm2022/button-testing.mjs.map +1 -0
  179. package/fesm2022/button-toggle-testing.mjs +87 -0
  180. package/fesm2022/button-toggle-testing.mjs.map +1 -0
  181. package/fesm2022/button-toggle.mjs +789 -0
  182. package/fesm2022/button-toggle.mjs.map +1 -0
  183. package/fesm2022/button.mjs +308 -0
  184. package/fesm2022/button.mjs.map +1 -0
  185. package/fesm2022/card-testing.mjs +29 -0
  186. package/fesm2022/card-testing.mjs.map +1 -0
  187. package/fesm2022/card.mjs +615 -0
  188. package/fesm2022/card.mjs.map +1 -0
  189. package/fesm2022/checkbox-testing.mjs +79 -0
  190. package/fesm2022/checkbox-testing.mjs.map +1 -0
  191. package/fesm2022/checkbox.mjs +551 -0
  192. package/fesm2022/checkbox.mjs.map +1 -0
  193. package/fesm2022/chips-testing.mjs +239 -0
  194. package/fesm2022/chips-testing.mjs.map +1 -0
  195. package/fesm2022/chips.mjs +2663 -0
  196. package/fesm2022/chips.mjs.map +1 -0
  197. package/fesm2022/core-testing.mjs +22 -0
  198. package/fesm2022/core-testing.mjs.map +1 -0
  199. package/fesm2022/core.mjs +408 -0
  200. package/fesm2022/core.mjs.map +1 -0
  201. package/fesm2022/datepicker-testing.mjs +26 -0
  202. package/fesm2022/datepicker-testing.mjs.map +1 -0
  203. package/fesm2022/datepicker.mjs +5015 -0
  204. package/fesm2022/datepicker.mjs.map +1 -0
  205. package/fesm2022/dialog-testing.mjs +123 -0
  206. package/fesm2022/dialog-testing.mjs.map +1 -0
  207. package/fesm2022/dialog.mjs +873 -0
  208. package/fesm2022/dialog.mjs.map +1 -0
  209. package/fesm2022/divider-testing.mjs +17 -0
  210. package/fesm2022/divider-testing.mjs.map +1 -0
  211. package/fesm2022/divider.mjs +132 -0
  212. package/fesm2022/divider.mjs.map +1 -0
  213. package/fesm2022/expansion-testing.mjs +87 -0
  214. package/fesm2022/expansion-testing.mjs.map +1 -0
  215. package/fesm2022/expansion.mjs +749 -0
  216. package/fesm2022/expansion.mjs.map +1 -0
  217. package/fesm2022/form-field-testing-control.mjs +24 -0
  218. package/fesm2022/form-field-testing-control.mjs.map +1 -0
  219. package/fesm2022/form-field-testing.mjs +135 -0
  220. package/fesm2022/form-field-testing.mjs.map +1 -0
  221. package/fesm2022/form-field.mjs +57 -0
  222. package/fesm2022/form-field.mjs.map +1 -0
  223. package/fesm2022/grid-list-testing.mjs +80 -0
  224. package/fesm2022/grid-list-testing.mjs.map +1 -0
  225. package/fesm2022/grid-list.mjs +604 -0
  226. package/fesm2022/grid-list.mjs.map +1 -0
  227. package/fesm2022/icon-testing.mjs +172 -0
  228. package/fesm2022/icon-testing.mjs.map +1 -0
  229. package/fesm2022/icon.mjs +366 -0
  230. package/fesm2022/icon.mjs.map +1 -0
  231. package/fesm2022/input-testing.mjs +73 -0
  232. package/fesm2022/input-testing.mjs.map +1 -0
  233. package/fesm2022/input.mjs +495 -0
  234. package/fesm2022/input.mjs.map +1 -0
  235. package/fesm2022/list-testing.mjs +295 -0
  236. package/fesm2022/list-testing.mjs.map +1 -0
  237. package/fesm2022/list.mjs +1604 -0
  238. package/fesm2022/list.mjs.map +1 -0
  239. package/fesm2022/material.mjs +4 -0
  240. package/fesm2022/material.mjs.map +1 -0
  241. package/fesm2022/menu-testing.mjs +174 -0
  242. package/fesm2022/menu-testing.mjs.map +1 -0
  243. package/fesm2022/menu.mjs +1421 -0
  244. package/fesm2022/menu.mjs.map +1 -0
  245. package/fesm2022/paginator-testing.mjs +69 -0
  246. package/fesm2022/paginator-testing.mjs.map +1 -0
  247. package/fesm2022/paginator.mjs +445 -0
  248. package/fesm2022/paginator.mjs.map +1 -0
  249. package/fesm2022/progress-bar-testing.mjs +20 -0
  250. package/fesm2022/progress-bar-testing.mjs.map +1 -0
  251. package/fesm2022/progress-bar.mjs +247 -0
  252. package/fesm2022/progress-bar.mjs.map +1 -0
  253. package/fesm2022/progress-spinner-testing.mjs +21 -0
  254. package/fesm2022/progress-spinner-testing.mjs.map +1 -0
  255. package/fesm2022/progress-spinner.mjs +258 -0
  256. package/fesm2022/progress-spinner.mjs.map +1 -0
  257. package/fesm2022/radio-testing.mjs +143 -0
  258. package/fesm2022/radio-testing.mjs.map +1 -0
  259. package/fesm2022/radio.mjs +751 -0
  260. package/fesm2022/radio.mjs.map +1 -0
  261. package/fesm2022/select-testing.mjs +92 -0
  262. package/fesm2022/select-testing.mjs.map +1 -0
  263. package/fesm2022/select.mjs +1181 -0
  264. package/fesm2022/select.mjs.map +1 -0
  265. package/fesm2022/sidenav-testing.mjs +80 -0
  266. package/fesm2022/sidenav-testing.mjs.map +1 -0
  267. package/fesm2022/sidenav.mjs +1151 -0
  268. package/fesm2022/sidenav.mjs.map +1 -0
  269. package/fesm2022/slide-toggle-testing.mjs +68 -0
  270. package/fesm2022/slide-toggle-testing.mjs.map +1 -0
  271. package/fesm2022/slide-toggle.mjs +403 -0
  272. package/fesm2022/slide-toggle.mjs.map +1 -0
  273. package/fesm2022/slider-testing.mjs +105 -0
  274. package/fesm2022/slider-testing.mjs.map +1 -0
  275. package/fesm2022/slider.mjs +1720 -0
  276. package/fesm2022/slider.mjs.map +1 -0
  277. package/fesm2022/snack-bar-testing.mjs +47 -0
  278. package/fesm2022/snack-bar-testing.mjs.map +1 -0
  279. package/fesm2022/snack-bar.mjs +820 -0
  280. package/fesm2022/snack-bar.mjs.map +1 -0
  281. package/fesm2022/sort-testing.mjs +55 -0
  282. package/fesm2022/sort-testing.mjs.map +1 -0
  283. package/fesm2022/sort.mjs +470 -0
  284. package/fesm2022/sort.mjs.map +1 -0
  285. package/fesm2022/stepper-testing.mjs +99 -0
  286. package/fesm2022/stepper-testing.mjs.map +1 -0
  287. package/fesm2022/stepper.mjs +900 -0
  288. package/fesm2022/stepper.mjs.map +1 -0
  289. package/fesm2022/table-testing.mjs +152 -0
  290. package/fesm2022/table-testing.mjs.map +1 -0
  291. package/fesm2022/table.mjs +1151 -0
  292. package/fesm2022/table.mjs.map +1 -0
  293. package/fesm2022/tabs-testing.mjs +144 -0
  294. package/fesm2022/tabs-testing.mjs.map +1 -0
  295. package/fesm2022/tabs.mjs +2435 -0
  296. package/fesm2022/tabs.mjs.map +1 -0
  297. package/fesm2022/timepicker-testing.mjs +128 -0
  298. package/fesm2022/timepicker-testing.mjs.map +1 -0
  299. package/fesm2022/timepicker.mjs +1284 -0
  300. package/fesm2022/timepicker.mjs.map +1 -0
  301. package/fesm2022/toolbar-testing.mjs +26 -0
  302. package/fesm2022/toolbar-testing.mjs.map +1 -0
  303. package/fesm2022/toolbar.mjs +182 -0
  304. package/fesm2022/toolbar.mjs.map +1 -0
  305. package/fesm2022/tooltip-testing.mjs +48 -0
  306. package/fesm2022/tooltip-testing.mjs.map +1 -0
  307. package/fesm2022/tooltip.mjs +58 -0
  308. package/fesm2022/tooltip.mjs.map +1 -0
  309. package/fesm2022/tree-testing.mjs +104 -0
  310. package/fesm2022/tree-testing.mjs.map +1 -0
  311. package/fesm2022/tree.mjs +681 -0
  312. package/fesm2022/tree.mjs.map +1 -0
  313. package/form-field/_form-field-theme.scss +96 -0
  314. package/form-field/_m2-form-field.scss +226 -0
  315. package/form-field/_m3-form-field.scss +137 -0
  316. package/grid-list/_grid-list-theme.scss +76 -0
  317. package/grid-list/_m2-grid-list.scss +21 -0
  318. package/grid-list/_m3-grid-list.scss +20 -0
  319. package/icon/_icon-theme.scss +109 -0
  320. package/icon/_m2-icon.scss +15 -0
  321. package/icon/_m3-icon.scss +21 -0
  322. package/input/_input-theme.scss +36 -0
  323. package/list/_list-theme.scss +201 -0
  324. package/list/_m2-list.scss +92 -0
  325. package/list/_m3-list.scss +93 -0
  326. package/menu/_m2-menu.scss +44 -0
  327. package/menu/_m3-menu.scss +42 -0
  328. package/menu/_menu-theme.scss +76 -0
  329. package/package.json +404 -0
  330. package/paginator/_m2-paginator.scss +69 -0
  331. package/paginator/_m3-paginator.scss +46 -0
  332. package/paginator/_paginator-theme.scss +76 -0
  333. package/prebuilt-themes/azure-blue.css +1 -0
  334. package/prebuilt-themes/cyan-orange.css +1 -0
  335. package/prebuilt-themes/deeppurple-amber.css +1 -0
  336. package/prebuilt-themes/indigo-pink.css +1 -0
  337. package/prebuilt-themes/magenta-violet.css +1 -0
  338. package/prebuilt-themes/pink-bluegrey.css +1 -0
  339. package/prebuilt-themes/purple-green.css +1 -0
  340. package/prebuilt-themes/rose-red.css +1 -0
  341. package/progress-bar/_m2-progress-bar.scss +36 -0
  342. package/progress-bar/_m3-progress-bar.scss +29 -0
  343. package/progress-bar/_progress-bar-theme.scss +93 -0
  344. package/progress-spinner/_m2-progress-spinner.scss +25 -0
  345. package/progress-spinner/_m3-progress-spinner.scss +27 -0
  346. package/progress-spinner/_progress-spinner-theme.scss +95 -0
  347. package/radio/_m2-radio.scss +67 -0
  348. package/radio/_m3-radio.scss +65 -0
  349. package/radio/_radio-theme.scss +102 -0
  350. package/schematics/collection.json +55 -0
  351. package/schematics/migration.json +15 -0
  352. package/schematics/ng-add/fonts/material-fonts.d.ts +11 -0
  353. package/schematics/ng-add/fonts/material-fonts.js +41 -0
  354. package/schematics/ng-add/fonts/material-fonts.js.map +1 -0
  355. package/schematics/ng-add/index.d.ts +17 -0
  356. package/schematics/ng-add/index.js +54 -0
  357. package/schematics/ng-add/index.js.map +1 -0
  358. package/schematics/ng-add/package-config.d.ts +12 -0
  359. package/schematics/ng-add/package-config.js +51 -0
  360. package/schematics/ng-add/package-config.js.map +1 -0
  361. package/schematics/ng-add/schema.d.ts +15 -0
  362. package/schematics/ng-add/schema.js +10 -0
  363. package/schematics/ng-add/schema.js.map +1 -0
  364. package/schematics/ng-add/schema.json +43 -0
  365. package/schematics/ng-add/setup-project.d.ts +15 -0
  366. package/schematics/ng-add/setup-project.js +36 -0
  367. package/schematics/ng-add/setup-project.js.map +1 -0
  368. package/schematics/ng-add/theming/create-theme.d.ts +9 -0
  369. package/schematics/ng-add/theming/create-theme.js +58 -0
  370. package/schematics/ng-add/theming/create-theme.js.map +1 -0
  371. package/schematics/ng-add/theming/theming.d.ts +11 -0
  372. package/schematics/ng-add/theming/theming.js +133 -0
  373. package/schematics/ng-add/theming/theming.js.map +1 -0
  374. package/schematics/ng-generate/address-form/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.__style__.template +27 -0
  375. package/schematics/ng-generate/address-form/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.html.template +99 -0
  376. package/schematics/ng-generate/address-form/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.spec.ts.template +38 -0
  377. package/schematics/ng-generate/address-form/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.ts.template +118 -0
  378. package/schematics/ng-generate/address-form/index.d.ts +14 -0
  379. package/schematics/ng-generate/address-form/index.js +43 -0
  380. package/schematics/ng-generate/address-form/index.js.map +1 -0
  381. package/schematics/ng-generate/address-form/schema.d.ts +10 -0
  382. package/schematics/ng-generate/address-form/schema.js +10 -0
  383. package/schematics/ng-generate/address-form/schema.js.map +1 -0
  384. package/schematics/ng-generate/address-form/schema.json +100 -0
  385. package/schematics/ng-generate/dashboard/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.__style__.template +21 -0
  386. package/schematics/ng-generate/dashboard/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.html.template +26 -0
  387. package/schematics/ng-generate/dashboard/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.spec.ts.template +36 -0
  388. package/schematics/ng-generate/dashboard/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.ts.template +56 -0
  389. package/schematics/ng-generate/dashboard/index.d.ts +14 -0
  390. package/schematics/ng-generate/dashboard/index.js +42 -0
  391. package/schematics/ng-generate/dashboard/index.js.map +1 -0
  392. package/schematics/ng-generate/dashboard/schema.d.ts +10 -0
  393. package/schematics/ng-generate/dashboard/schema.js +10 -0
  394. package/schematics/ng-generate/dashboard/schema.js.map +1 -0
  395. package/schematics/ng-generate/dashboard/schema.json +100 -0
  396. package/schematics/ng-generate/navigation/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.__style__.template +17 -0
  397. package/schematics/ng-generate/navigation/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.html.template +28 -0
  398. package/schematics/ng-generate/navigation/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.spec.ts.template +36 -0
  399. package/schematics/ng-generate/navigation/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.ts.template +42 -0
  400. package/schematics/ng-generate/navigation/index.d.ts +14 -0
  401. package/schematics/ng-generate/navigation/index.js +42 -0
  402. package/schematics/ng-generate/navigation/index.js.map +1 -0
  403. package/schematics/ng-generate/navigation/schema.d.ts +10 -0
  404. package/schematics/ng-generate/navigation/schema.js +10 -0
  405. package/schematics/ng-generate/navigation/schema.js.map +1 -0
  406. package/schematics/ng-generate/navigation/schema.json +105 -0
  407. package/schematics/ng-generate/table/files/__path__/__name@dasherize@if-flat__/__name@dasherize__-datasource.ts.template +111 -0
  408. package/schematics/ng-generate/table/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.__style__.template +3 -0
  409. package/schematics/ng-generate/table/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.html.template +26 -0
  410. package/schematics/ng-generate/table/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.spec.ts.template +32 -0
  411. package/schematics/ng-generate/table/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.ts.template +36 -0
  412. package/schematics/ng-generate/table/index.d.ts +14 -0
  413. package/schematics/ng-generate/table/index.js +40 -0
  414. package/schematics/ng-generate/table/index.js.map +1 -0
  415. package/schematics/ng-generate/table/schema.d.ts +10 -0
  416. package/schematics/ng-generate/table/schema.js +10 -0
  417. package/schematics/ng-generate/table/schema.js.map +1 -0
  418. package/schematics/ng-generate/table/schema.json +100 -0
  419. package/schematics/ng-generate/theme-color/index_bundled.js +6561 -0
  420. package/schematics/ng-generate/theme-color/index_bundled.js.map +6 -0
  421. package/schematics/ng-generate/theme-color/schema.json +55 -0
  422. package/schematics/ng-generate/tree/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.__style__.template +4 -0
  423. package/schematics/ng-generate/tree/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.html.template +22 -0
  424. package/schematics/ng-generate/tree/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.spec.ts.template +32 -0
  425. package/schematics/ng-generate/tree/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.ts.template +93 -0
  426. package/schematics/ng-generate/tree/files/__path__/__name@dasherize@if-flat__/example-data.ts.template +47 -0
  427. package/schematics/ng-generate/tree/index.d.ts +14 -0
  428. package/schematics/ng-generate/tree/index.js +40 -0
  429. package/schematics/ng-generate/tree/index.js.map +1 -0
  430. package/schematics/ng-generate/tree/schema.d.ts +10 -0
  431. package/schematics/ng-generate/tree/schema.js +10 -0
  432. package/schematics/ng-generate/tree/schema.js.map +1 -0
  433. package/schematics/ng-generate/tree/schema.json +100 -0
  434. package/schematics/ng-update/index_bundled.js +204 -0
  435. package/schematics/ng-update/index_bundled.js.map +6 -0
  436. package/schematics/package.json +3 -0
  437. package/select/_m2-select.scss +49 -0
  438. package/select/_m3-select.scss +54 -0
  439. package/select/_select-theme.scss +99 -0
  440. package/sidenav/_m2-sidenav.scss +48 -0
  441. package/sidenav/_m3-sidenav.scss +26 -0
  442. package/sidenav/_sidenav-theme.scss +75 -0
  443. package/slide-toggle/_m2-slide-toggle.scss +134 -0
  444. package/slide-toggle/_m3-slide-toggle.scss +133 -0
  445. package/slide-toggle/_slide-toggle-theme.scss +119 -0
  446. package/slider/_m2-slider.scss +73 -0
  447. package/slider/_m3-slider.scss +69 -0
  448. package/slider/_slider-theme.scss +103 -0
  449. package/snack-bar/_m2-snack-bar.scss +24 -0
  450. package/snack-bar/_m3-snack-bar.scss +26 -0
  451. package/snack-bar/_snack-bar-theme.scss +77 -0
  452. package/sort/_m2-sort.scss +16 -0
  453. package/sort/_m3-sort.scss +20 -0
  454. package/sort/_sort-theme.scss +76 -0
  455. package/stepper/_m2-stepper.scss +65 -0
  456. package/stepper/_m3-stepper.scss +66 -0
  457. package/stepper/_stepper-theme.scss +102 -0
  458. package/table/_m2-table.scss +63 -0
  459. package/table/_m3-table.scss +52 -0
  460. package/table/_table-theme.scss +76 -0
  461. package/tabs/_m2-tabs.scss +68 -0
  462. package/tabs/_m3-tabs.scss +58 -0
  463. package/tabs/_tabs-theme.scss +131 -0
  464. package/timepicker/_m2-timepicker.scss +19 -0
  465. package/timepicker/_m3-timepicker.scss +21 -0
  466. package/timepicker/_timepicker-theme.scss +81 -0
  467. package/toolbar/_m2-toolbar.scss +43 -0
  468. package/toolbar/_m3-toolbar.scss +41 -0
  469. package/toolbar/_toolbar-theme.scss +114 -0
  470. package/tooltip/_m2-tooltip.scss +24 -0
  471. package/tooltip/_m3-tooltip.scss +25 -0
  472. package/tooltip/_tooltip-theme.scss +76 -0
  473. package/tree/_m2-tree.scss +30 -0
  474. package/tree/_m3-tree.scss +37 -0
  475. package/tree/_tree-theme.scss +76 -0
  476. package/types/_badge-chunk.d.ts +100 -0
  477. package/types/_button-toggle-chunk.d.ts +252 -0
  478. package/types/_date-adapter-chunk.d.ts +261 -0
  479. package/types/_date-range-input-harness-chunk.d.ts +284 -0
  480. package/types/_dialog-chunk.d.ts +336 -0
  481. package/types/_error-options-chunk.d.ts +17 -0
  482. package/types/_form-field-chunk.d.ts +375 -0
  483. package/types/_form-field-control-chunk.d.ts +64 -0
  484. package/types/_form-field-control-harness-chunk.d.ts +20 -0
  485. package/types/_form-field-module-chunk.d.ts +18 -0
  486. package/types/_icon-module-chunk.d.ts +162 -0
  487. package/types/_icon-registry-chunk.d.ts +271 -0
  488. package/types/_input-harness-chunk.d.ts +61 -0
  489. package/types/_line-chunk.d.ts +25 -0
  490. package/types/_list-option-types-chunk.d.ts +15 -0
  491. package/types/_option-chunk.d.ts +146 -0
  492. package/types/_option-harness-chunk.d.ts +35 -0
  493. package/types/_option-module-chunk.d.ts +13 -0
  494. package/types/_option-parent-chunk.d.ts +20 -0
  495. package/types/_paginator-chunk.d.ts +184 -0
  496. package/types/_palette-chunk.d.ts +4 -0
  497. package/types/_progress-spinner-chunk.d.ts +91 -0
  498. package/types/_pseudo-checkbox-module-chunk.d.ts +45 -0
  499. package/types/_ripple-chunk.d.ts +256 -0
  500. package/types/_ripple-loader-chunk.d.ts +48 -0
  501. package/types/_ripple-module-chunk.d.ts +11 -0
  502. package/types/_sort-chunk.d.ts +88 -0
  503. package/types/_sort-direction-chunk.d.ts +3 -0
  504. package/types/_tooltip-chunk.d.ts +315 -0
  505. package/types/autocomplete-testing.d.ts +53 -0
  506. package/types/autocomplete.d.ts +420 -0
  507. package/types/badge-testing.d.ts +36 -0
  508. package/types/badge.d.ts +14 -0
  509. package/types/bottom-sheet-testing.d.ts +26 -0
  510. package/types/bottom-sheet.d.ts +192 -0
  511. package/types/button-testing.d.ts +70 -0
  512. package/types/button-toggle-testing.d.ts +97 -0
  513. package/types/button-toggle.d.ts +16 -0
  514. package/types/button.d.ts +210 -0
  515. package/types/card-testing.d.ts +41 -0
  516. package/types/card.d.ts +156 -0
  517. package/types/checkbox-testing.d.ts +86 -0
  518. package/types/checkbox.d.ts +216 -0
  519. package/types/chips-testing.d.ts +270 -0
  520. package/types/chips.d.ts +993 -0
  521. package/types/core-testing.d.ts +32 -0
  522. package/types/core.d.ts +185 -0
  523. package/types/datepicker-testing.d.ts +25 -0
  524. package/types/datepicker.d.ts +1746 -0
  525. package/types/dialog-testing.d.ts +83 -0
  526. package/types/dialog.d.ts +84 -0
  527. package/types/divider-testing.d.ts +15 -0
  528. package/types/divider.d.ts +24 -0
  529. package/types/expansion-testing.d.ts +101 -0
  530. package/types/expansion.d.ts +258 -0
  531. package/types/form-field-testing-control.d.ts +13 -0
  532. package/types/form-field-testing.d.ts +127 -0
  533. package/types/form-field.d.ts +19 -0
  534. package/types/grid-list-testing.d.ts +82 -0
  535. package/types/grid-list.d.ts +207 -0
  536. package/types/icon-testing.d.ts +81 -0
  537. package/types/icon.d.ts +8 -0
  538. package/types/input-testing.d.ts +73 -0
  539. package/types/input.d.ts +208 -0
  540. package/types/list-testing.d.ts +354 -0
  541. package/types/list.d.ts +516 -0
  542. package/types/material.d.ts +3 -0
  543. package/types/menu-testing.d.ts +141 -0
  544. package/types/menu.d.ts +547 -0
  545. package/types/paginator-testing.d.ts +51 -0
  546. package/types/paginator.d.ts +36 -0
  547. package/types/progress-bar-testing.d.ts +24 -0
  548. package/types/progress-bar.d.ts +106 -0
  549. package/types/progress-spinner-testing.d.ts +28 -0
  550. package/types/progress-spinner.d.ts +13 -0
  551. package/types/radio-testing.d.ts +109 -0
  552. package/types/radio.d.ts +295 -0
  553. package/types/select-testing.d.ts +63 -0
  554. package/types/select.d.ts +448 -0
  555. package/types/sidenav-testing.d.ts +122 -0
  556. package/types/sidenav.d.ts +335 -0
  557. package/types/slide-toggle-testing.d.ts +66 -0
  558. package/types/slide-toggle.d.ts +151 -0
  559. package/types/slider-testing.d.ts +90 -0
  560. package/types/slider.d.ts +662 -0
  561. package/types/snack-bar-testing.d.ts +64 -0
  562. package/types/snack-bar.d.ts +328 -0
  563. package/types/sort-testing.d.ts +48 -0
  564. package/types/sort.d.ts +126 -0
  565. package/types/stepper-testing.d.ts +136 -0
  566. package/types/stepper.d.ts +225 -0
  567. package/types/table-testing.d.ts +174 -0
  568. package/types/table.d.ts +302 -0
  569. package/types/tabs-testing.d.ts +145 -0
  570. package/types/tabs.d.ts +890 -0
  571. package/types/timepicker-testing.d.ts +108 -0
  572. package/types/timepicker.d.ts +318 -0
  573. package/types/toolbar-testing.d.ts +33 -0
  574. package/types/toolbar.d.ts +44 -0
  575. package/types/tooltip-testing.d.ts +35 -0
  576. package/types/tooltip.d.ts +17 -0
  577. package/types/tree-testing.d.ts +119 -0
  578. package/types/tree.d.ts +233 -0
@@ -0,0 +1,25 @@
1
+ @use 'sass:map';
2
+ @use '../core/tokens/m3-utils';
3
+ @use '../core/tokens/m3';
4
+
5
+ /// Generates custom tokens for the mat-bottom-sheet.
6
+ @function get-tokens($theme: m3.$sys-theme) {
7
+ $system: m3-utils.get-system($theme);
8
+ @return (
9
+ base: (
10
+ bottom-sheet-container-shape: 28px,
11
+ ),
12
+ color: (
13
+ bottom-sheet-container-text-color: map.get($system, on-surface),
14
+ bottom-sheet-container-background-color: map.get($system, surface-container-low),
15
+ ),
16
+ typography: (
17
+ bottom-sheet-container-text-font: map.get($system, body-large-font),
18
+ bottom-sheet-container-text-line-height: map.get($system, body-large-line-height),
19
+ bottom-sheet-container-text-size: map.get($system, body-large-size),
20
+ bottom-sheet-container-text-tracking: map.get($system, body-large-tracking),
21
+ bottom-sheet-container-text-weight: map.get($system, body-large-weight),
22
+ ),
23
+ density: (),
24
+ );
25
+ }
@@ -0,0 +1,113 @@
1
+ @use '../core/theming/inspection';
2
+ @use '../core/tokens/token-utils';
3
+ @use '../core/typography/typography';
4
+ @use './m2-button';
5
+ @use './m3-button';
6
+ @use 'sass:map';
7
+
8
+ /// Outputs base theme styles (styles not dependent on the color, typography, or density settings)
9
+ /// for the mat-button.
10
+ /// @param {Map} $theme The theme to generate base styles for.
11
+ @mixin base($theme) {
12
+ $tokens: map.get(m2-button.get-tokens($theme), base);
13
+ @if inspection.get-theme-version($theme) == 1 {
14
+ $tokens: map.get(m3-button.get-tokens($theme), base);
15
+ }
16
+
17
+ @include token-utils.values($tokens);
18
+ }
19
+
20
+ /// Outputs color theme styles for the mat-button.
21
+ /// @param {Map} $theme The theme to generate color styles for.
22
+ /// @param {String} $color-variant The color variant to use for
23
+ /// the badge: primary, secondary, tertiary, or error (If not specified,
24
+ /// default primary color will be used).
25
+ @mixin color($theme, $color-variant: null) {
26
+ $tokens: map.get(m2-button.get-tokens($theme), color);
27
+ @if inspection.get-theme-version($theme) == 1 {
28
+ $tokens: map.get(m3-button.get-tokens($theme, $color-variant), color);
29
+ }
30
+
31
+ @include token-utils.values($tokens);
32
+
33
+ @if inspection.get-theme-version($theme) != 1 {
34
+ .mat-mdc-button,
35
+ .mat-mdc-unelevated-button,
36
+ .mat-mdc-raised-button,
37
+ .mat-mdc-outlined-button,
38
+ .mat-tonal-button {
39
+ &.mat-primary {
40
+ $tokens: m2-button.private-get-color-palette-color-tokens($theme, primary);
41
+ @include token-utils.values($tokens);
42
+ }
43
+
44
+ &.mat-accent {
45
+ $tokens: m2-button.private-get-color-palette-color-tokens($theme, secondary);
46
+ @include token-utils.values($tokens);
47
+ }
48
+
49
+ &.mat-warn {
50
+ $tokens: m2-button.private-get-color-palette-color-tokens($theme, error);
51
+ @include token-utils.values($tokens);
52
+ }
53
+ }
54
+ }
55
+ }
56
+
57
+ @mixin typography($theme) {
58
+ $tokens: map.get(m2-button.get-tokens($theme), typography);
59
+ @if inspection.get-theme-version($theme) == 1 {
60
+ $tokens: map.get(m3-button.get-tokens($theme), typography);
61
+ }
62
+
63
+ @include token-utils.values($tokens);
64
+ }
65
+
66
+ @mixin density($theme) {
67
+ $tokens: map.get(m2-button.get-tokens($theme), density);
68
+ @if inspection.get-theme-version($theme) == 1 {
69
+ $tokens: map.get(m3-button.get-tokens($theme), density);
70
+ }
71
+
72
+ @include token-utils.values($tokens);
73
+ }
74
+
75
+ /// Defines the tokens that will be available in the `overrides` mixin and for docs extraction.
76
+ @function _define-overrides() {
77
+ @return (
78
+ (
79
+ namespace: button,
80
+ tokens: token-utils.get-overrides(m3-button.get-tokens(), button),
81
+ ),
82
+ );
83
+ }
84
+
85
+ /// Outputs the CSS variable values for the given tokens.
86
+ /// @param {Map} $tokens The token values to emit.
87
+ @mixin overrides($tokens: ()) {
88
+ @include token-utils.batch-create-token-values($tokens, _define-overrides());
89
+ }
90
+
91
+ /// Outputs all (base, color, typography, and density) theme styles for the mat-button.
92
+ /// @param {Map} $theme The theme to generate styles for.
93
+ /// @param {String} $color-variant: The color variant to use for the button: primary, secondary,
94
+ // tertiary, or error (If not specified, default primary color will be used).
95
+ @mixin theme($theme, $color-variant: null) {
96
+ @if inspection.get-theme-version($theme) == 1 {
97
+ @include base($theme);
98
+ @include color($theme, $color-variant);
99
+ @include density($theme);
100
+ @include typography($theme);
101
+ } @else {
102
+ @include base($theme);
103
+ @if inspection.theme-has($theme, color) {
104
+ @include color($theme);
105
+ }
106
+ @if inspection.theme-has($theme, density) {
107
+ @include density($theme);
108
+ }
109
+ @if inspection.theme-has($theme, typography) {
110
+ @include typography($theme);
111
+ }
112
+ }
113
+ }
@@ -0,0 +1,111 @@
1
+ @use '../core/theming/inspection';
2
+ @use './m2-fab';
3
+ @use './m3-fab';
4
+ @use '../core/tokens/token-utils';
5
+ @use '../core/typography/typography';
6
+ @use 'sass:map';
7
+
8
+ /// Outputs base theme styles (styles not dependent on the color, typography, or density settings)
9
+ /// for the mat-fab.
10
+ /// @param {Map} $theme The theme to generate base styles for.
11
+ @mixin base($theme) {
12
+ $tokens: map.get(m2-fab.get-tokens($theme), base);
13
+ @if inspection.get-theme-version($theme) == 1 {
14
+ $tokens: map.get(m3-fab.get-tokens($theme), base);
15
+ }
16
+
17
+ @include token-utils.values($tokens);
18
+ }
19
+
20
+ /// Outputs color theme styles for the mat-fab.
21
+ /// @param {Map} $theme The theme to generate color styles for.
22
+ /// @param {ArgList} $color-variant: The color variant to use for the fab: primary, secondary,
23
+ // or tertiary. (If not specified, default primary color will be used).
24
+ @mixin color($theme, $color-variant: null) {
25
+ $tokens: map.get(m2-fab.get-tokens($theme), color);
26
+ @if inspection.get-theme-version($theme) == 1 {
27
+ $tokens: map.get(m3-fab.get-tokens($theme, $color-variant), color);
28
+ }
29
+
30
+ @include token-utils.values($tokens);
31
+
32
+ @if inspection.get-theme-version($theme) != 1 {
33
+ .mat-mdc-fab, .mat-mdc-mini-fab {
34
+ &.mat-primary {
35
+ $tokens: m2-fab.private-get-color-palette-color-tokens($theme, primary);
36
+ @include token-utils.values($tokens);
37
+ }
38
+
39
+ &.mat-accent {
40
+ $tokens: m2-fab.private-get-color-palette-color-tokens($theme, secondary);
41
+ @include token-utils.values($tokens);
42
+ }
43
+
44
+ &.mat-warn {
45
+ $tokens: m2-fab.private-get-color-palette-color-tokens($theme, error);
46
+ @include token-utils.values($tokens);
47
+ }
48
+ }
49
+ }
50
+ }
51
+
52
+ /// Outputs typography theme styles for the mat-fab.
53
+ /// @param {Map} $theme The theme to generate typography styles for.
54
+ @mixin typography($theme) {
55
+ $tokens: map.get(m2-fab.get-tokens($theme), typography);
56
+ @if inspection.get-theme-version($theme) == 1 {
57
+ $tokens: map.get(m3-fab.get-tokens($theme), typography);
58
+ }
59
+
60
+ @include token-utils.values($tokens);
61
+ }
62
+
63
+ /// Outputs density theme styles for the mat-fab.
64
+ /// @param {Map} $theme The theme to generate density styles for.
65
+ @mixin density($theme) {
66
+ $tokens: map.get(m2-fab.get-tokens($theme), density);
67
+ @if inspection.get-theme-version($theme) == 1 {
68
+ $tokens: map.get(m3-fab.get-tokens($theme), density);
69
+ }
70
+
71
+ @include token-utils.values($tokens);
72
+ }
73
+
74
+ /// Defines the tokens that will be available in the `overrides` mixin and for docs extraction.
75
+ @function _define-overrides() {
76
+ @return (
77
+ (
78
+ namespace: fab,
79
+ tokens: token-utils.get-overrides(m3-fab.get-tokens(), fab)
80
+ ),
81
+ );
82
+ }
83
+
84
+ /// Outputs the CSS variable values for the given tokens.
85
+ /// @param {Map} $tokens The token values to emit.
86
+ @mixin overrides($tokens: ()) {
87
+ @include token-utils.batch-create-token-values($tokens, _define-overrides());
88
+ }
89
+
90
+ /// Outputs all (base, color, typography, and density) theme styles for the mat-checkbox.
91
+ /// @param {Map} $theme The theme to generate styles for.
92
+ /// @param {String} $color-variant: The color variant to use for the fab
93
+ @mixin theme($theme, $color-variant: null) {
94
+ @if inspection.get-theme-version($theme) == 1 {
95
+ @include base($theme);
96
+ @include color($theme, $color-variant);
97
+ @include density($theme);
98
+ @include typography($theme);
99
+ } @else {
100
+ @include base($theme);
101
+ @if inspection.theme-has($theme, color) {
102
+ @include color($theme);
103
+ }
104
+ @if inspection.theme-has($theme, density) {
105
+ @include density($theme);
106
+ }
107
+ @if inspection.theme-has($theme, typography) {
108
+ @include typography($theme);
109
+ }
110
+ }
111
+ }
@@ -0,0 +1,136 @@
1
+ @use 'sass:map';
2
+ @use 'sass:math';
3
+ @use './m2-icon-button';
4
+ @use './m3-icon-button';
5
+ @use '../core/tokens/token-utils';
6
+ @use '../core/tokens/m2-utils';
7
+ @use '../core/theming/inspection';
8
+ @use '../core/theming/theming';
9
+
10
+ @mixin base($theme) {
11
+ $tokens: map.get(m2-icon-button.get-tokens($theme), base);
12
+ @if inspection.get-theme-version($theme) == 1 {
13
+ $tokens: map.get(m3-icon-button.get-tokens($theme), base);
14
+ }
15
+
16
+ @include token-utils.values($tokens);
17
+ }
18
+
19
+ /// Outputs color theme styles for the mat-icon-button.
20
+ /// @param {Map} $theme The theme to generate color styles for.
21
+ /// @param {String} $color-variant: The color variant to use for the
22
+ // button: primary, secondary, tertiary, or error.
23
+ @mixin color($theme, $color-variant: null) {
24
+ $tokens: map.get(m2-icon-button.get-tokens($theme), color);
25
+ @if inspection.get-theme-version($theme) == 1 {
26
+ $tokens: map.get(m3-icon-button.get-tokens($theme, $color-variant), color);
27
+ }
28
+
29
+ @include token-utils.values($tokens);
30
+
31
+ @if inspection.get-theme-version($theme) != 1 {
32
+ .mat-mdc-icon-button {
33
+ &.mat-primary {
34
+ $tokens: m2-icon-button.private-get-color-palette-color-tokens($theme, primary);
35
+ @include token-utils.values($tokens);
36
+ }
37
+
38
+ &.mat-accent {
39
+ $tokens: m2-icon-button.private-get-color-palette-color-tokens($theme, secondary);
40
+ @include token-utils.values($tokens);
41
+ }
42
+
43
+ &.mat-warn {
44
+ $tokens: m2-icon-button.private-get-color-palette-color-tokens($theme, error);
45
+ @include token-utils.values($tokens);
46
+ }
47
+ }
48
+ }
49
+ }
50
+
51
+ @mixin typography($theme) {
52
+ $tokens: map.get(m2-icon-button.get-tokens($theme), typography);
53
+ @if inspection.get-theme-version($theme) == 1 {
54
+ $tokens: map.get(m3-icon-button.get-tokens($theme), typography);
55
+ }
56
+
57
+ @include token-utils.values($tokens);
58
+ }
59
+
60
+ @mixin density($theme) {
61
+ @if inspection.get-theme-version($theme) == 1 {
62
+ @include token-utils.values(map.get(m3-icon-button.get-tokens($theme), density));
63
+ } @else {
64
+ $icon-size: 24px;
65
+ $system: m2-utils.get-system($theme);
66
+ $density-scale: theming.clamp-density(map.get($system, density-scale), -5);
67
+ $size-map: (
68
+ 0: 48px,
69
+ -1: 44px,
70
+ -2: 40px,
71
+ -3: 36px,
72
+ -4: 32px,
73
+ -5: 28px,
74
+ );
75
+ $calculated-size: map.get($size-map, $density-scale);
76
+
77
+ $density-tokens: map.get(m2-icon-button.get-tokens($theme), density);
78
+ $density-tokens: map.remove($density-tokens, icon-button-state-layer-size);
79
+ @include token-utils.values($density-tokens);
80
+
81
+ // Use `mat-mdc-button-base` to increase the specificity over the button's structural styles.
82
+ .mat-mdc-icon-button.mat-mdc-button-base {
83
+ // Match the styles that used to be present. This is necessary for backwards
84
+ // compat to match the previous implementations selector count (two classes).
85
+ --mdc-icon-button-state-layer-size: #{$calculated-size};
86
+ --mat-icon-button-state-layer-size: #{$calculated-size};
87
+
88
+ // TODO: Switch calculated-size to "var(--mat-icon-button-state-layer-size)"
89
+ // Currently fails validation because the variable is "undefined"
90
+ // in the sass stack.
91
+ // TODO: Switch icon-size to "var(--mat-icon-button-icon-size)". Currently
92
+ // fails validation because the variable is "undefined" in the sass stack.
93
+ width: var(--mat-icon-button-state-layer-size);
94
+ height: var(--mat-icon-button-state-layer-size);
95
+ padding: math.div($calculated-size - $icon-size, 2);
96
+ }
97
+ }
98
+ }
99
+
100
+ /// Defines the tokens that will be available in the `overrides` mixin and for docs extraction.
101
+ @function _define-overrides() {
102
+ @return (
103
+ (
104
+ namespace: icon-button,
105
+ tokens: token-utils.get-overrides(m3-icon-button.get-tokens(), icon-button)
106
+ ),
107
+ );
108
+ }
109
+
110
+ @mixin overrides($tokens: ()) {
111
+ @include token-utils.batch-create-token-values($tokens, _define-overrides());
112
+ }
113
+
114
+ /// Outputs all (base, color, typography, and density) theme styles for the mat-icon-button.
115
+ /// @param {Map} $theme The theme to generate styles for.
116
+ /// @param {String} $color-variant: The color variant to use for the button: primary,
117
+ // secondary, tertiary, or error.
118
+ @mixin theme($theme, $color-variant: null) {
119
+ @if inspection.get-theme-version($theme) == 1 {
120
+ @include base($theme);
121
+ @include color($theme, $color-variant);
122
+ @include density($theme);
123
+ @include typography($theme);
124
+ } @else {
125
+ @include base($theme);
126
+ @if inspection.theme-has($theme, color) {
127
+ @include color($theme);
128
+ }
129
+ @if inspection.theme-has($theme, density) {
130
+ @include density($theme);
131
+ }
132
+ @if inspection.theme-has($theme, typography) {
133
+ @include typography($theme);
134
+ }
135
+ }
136
+ }
@@ -0,0 +1,194 @@
1
+ @use 'sass:map';
2
+ @use '../core/tokens/m2-utils';
3
+ @use '../core/tokens/m3-utils';
4
+ @use '../core/theming/theming';
5
+ @use '../core/style/elevation';
6
+
7
+ @function get-tokens($theme) {
8
+ $system: m2-utils.get-system($theme);
9
+ $disabled: m3-utils.color-with-opacity(map.get($system, on-surface), 38%);
10
+ $disabled-container : m3-utils.color-with-opacity(map.get($system, on-surface), 12%);
11
+
12
+ $scale: theming.clamp-density(map.get($system, density-scale), -3);
13
+ $height: map.get((
14
+ 0: 36px,
15
+ -1: 32px,
16
+ -2: 28px,
17
+ -3: 24px,
18
+ ), $scale);
19
+ $touch-target-size: 48px;
20
+ $touch-target-display: block;
21
+
22
+ @if ($scale < -1) {
23
+ $touch-target-display: none;
24
+ }
25
+
26
+ @return (
27
+ base: (
28
+ button-filled-container-shape: 4px,
29
+ button-filled-horizontal-padding: 16px,
30
+ button-filled-icon-offset: -4px,
31
+ button-filled-icon-spacing: 8px,
32
+ button-filled-touch-target-size: $touch-target-size,
33
+ button-outlined-container-shape: 4px,
34
+ button-outlined-horizontal-padding: 15px, // Normally it's 16px, but -1px for the outline.
35
+ button-outlined-icon-offset: -4px,
36
+ button-outlined-icon-spacing: 8px,
37
+ button-outlined-keep-touch-target: false,
38
+ button-outlined-outline-width: 1px,
39
+ button-outlined-touch-target-size: $touch-target-size,
40
+ button-protected-container-elevation-shadow: elevation.get-box-shadow(2),
41
+ button-protected-container-shape: 4px,
42
+ button-protected-disabled-container-elevation-shadow: elevation.get-box-shadow(0),
43
+ button-protected-focus-container-elevation-shadow: elevation.get-box-shadow(4),
44
+ button-protected-horizontal-padding: 16px,
45
+ button-protected-hover-container-elevation-shadow: elevation.get-box-shadow(4),
46
+ button-protected-icon-offset: -4px,
47
+ button-protected-icon-spacing: 8px,
48
+ button-protected-pressed-container-elevation-shadow: elevation.get-box-shadow(8),
49
+ button-protected-touch-target-size: $touch-target-size,
50
+ button-text-container-shape: 4px,
51
+ button-text-horizontal-padding: 8px,
52
+ button-text-icon-offset: 0,
53
+ button-text-icon-spacing: 8px,
54
+ button-text-with-icon-horizontal-padding: 8px,
55
+ button-text-touch-target-size: $touch-target-size,
56
+ button-tonal-container-shape: 4px,
57
+ button-tonal-horizontal-padding: 16px,
58
+ button-tonal-icon-offset: -4px,
59
+ button-tonal-icon-spacing: 8px,
60
+ button-tonal-touch-target-size: $touch-target-size,
61
+ ),
62
+ color: (
63
+ button-filled-container-color: map.get($system, surface),
64
+ button-filled-disabled-container-color: $disabled-container,
65
+ button-filled-disabled-label-text-color: $disabled,
66
+ button-filled-disabled-state-layer-color: map.get($system, on-surface-variant),
67
+ button-filled-focus-state-layer-opacity: map.get($system, focus-state-layer-opacity),
68
+ button-filled-hover-state-layer-opacity: map.get($system, hover-state-layer-opacity),
69
+ button-filled-label-text-color: map.get($system, on-surface),
70
+ button-filled-pressed-state-layer-opacity: map.get($system, pressed-state-layer-opacity),
71
+ button-filled-ripple-color: m3-utils.color-with-opacity(
72
+ map.get($system, on-surface), map.get($system, pressed-state-layer-opacity)),
73
+ button-filled-state-layer-color: map.get($system, on-surface),
74
+ button-outlined-disabled-label-text-color: $disabled,
75
+ button-outlined-disabled-outline-color: map.get($system, outline),
76
+ button-outlined-disabled-state-layer-color: map.get($system, on-surface-variant),
77
+ button-outlined-focus-state-layer-opacity: map.get($system, focus-state-layer-opacity),
78
+ button-outlined-hover-state-layer-opacity: map.get($system, hover-state-layer-opacity),
79
+ button-outlined-label-text-color: map.get($system, on-surface),
80
+ button-outlined-outline-color: map.get($system, outline),
81
+ button-outlined-pressed-state-layer-opacity: map.get($system, pressed-state-layer-opacity),
82
+ button-outlined-ripple-color: m3-utils.color-with-opacity(
83
+ map.get($system, on-surface), map.get($system, pressed-state-layer-opacity)),
84
+ button-outlined-state-layer-color: map.get($system, on-surface),
85
+ button-protected-container-color: map.get($system, surface),
86
+ button-protected-disabled-container-color: $disabled-container,
87
+ button-protected-disabled-label-text-color: $disabled,
88
+ button-protected-disabled-state-layer-color: map.get($system, on-surface-variant),
89
+ button-protected-focus-state-layer-opacity: map.get($system, focus-state-layer-opacity),
90
+ button-protected-hover-state-layer-opacity: map.get($system, hover-state-layer-opacity),
91
+ button-protected-label-text-color: map.get($system, on-surface),
92
+ button-protected-pressed-state-layer-opacity: map.get($system, pressed-state-layer-opacity),
93
+ button-protected-ripple-color: m3-utils.color-with-opacity(
94
+ map.get($system, on-surface), map.get($system, pressed-state-layer-opacity)),
95
+ button-protected-state-layer-color: map.get($system, on-surface),
96
+ button-text-disabled-label-text-color: $disabled,
97
+ button-text-disabled-state-layer-color: map.get($system, on-surface-variant),
98
+ button-text-focus-state-layer-opacity: map.get($system, focus-state-layer-opacity),
99
+ button-text-hover-state-layer-opacity: map.get($system, hover-state-layer-opacity),
100
+ button-text-label-text-color: map.get($system, on-surface),
101
+ button-text-pressed-state-layer-opacity: map.get($system, pressed-state-layer-opacity),
102
+ button-text-ripple-color: m3-utils.color-with-opacity(
103
+ map.get($system, on-surface), map.get($system, pressed-state-layer-opacity)),
104
+ button-text-state-layer-color: map.get($system, on-surface),
105
+ button-tonal-container-color: map.get($system, surface),
106
+ button-tonal-disabled-container-color: $disabled-container,
107
+ button-tonal-disabled-label-text-color: $disabled,
108
+ button-tonal-disabled-state-layer-color: map.get($system, on-surface-variant),
109
+ button-tonal-focus-state-layer-opacity: map.get($system, focus-state-layer-opacity),
110
+ button-tonal-hover-state-layer-opacity: map.get($system, hover-state-layer-opacity),
111
+ button-tonal-label-text-color: map.get($system, on-surface),
112
+ button-tonal-pressed-state-layer-opacity: map.get($system, pressed-state-layer-opacity),
113
+ button-tonal-ripple-color: m3-utils.color-with-opacity(
114
+ map.get($system, on-surface), map.get($system, pressed-state-layer-opacity)),
115
+ button-tonal-state-layer-color: map.get($system, on-surface),
116
+ ),
117
+ typography: (
118
+ button-filled-label-text-font: map.get($system, label-small-font),
119
+ button-filled-label-text-size: map.get($system, label-small-size),
120
+ button-filled-label-text-tracking: map.get($system, label-small-tracking),
121
+ button-filled-label-text-transform: none,
122
+ button-filled-label-text-weight: map.get($system, label-small-weight),
123
+ button-outlined-label-text-font: map.get($system, label-small-font),
124
+ button-outlined-label-text-size: map.get($system, label-small-size),
125
+ button-outlined-label-text-tracking: map.get($system, label-small-tracking),
126
+ button-outlined-label-text-transform: none,
127
+ button-outlined-label-text-weight: map.get($system, label-small-weight),
128
+ button-protected-label-text-font: map.get($system, label-small-font),
129
+ button-protected-label-text-size: map.get($system, label-small-size),
130
+ button-protected-label-text-tracking: map.get($system, label-small-tracking),
131
+ button-protected-label-text-transform: none,
132
+ button-protected-label-text-weight: map.get($system, label-small-weight),
133
+ button-text-label-text-font: map.get($system, label-small-font),
134
+ button-text-label-text-size: map.get($system, label-small-size),
135
+ button-text-label-text-tracking: map.get($system, label-small-tracking),
136
+ button-text-label-text-transform: none,
137
+ button-text-label-text-weight: map.get($system, label-small-weight),
138
+ button-tonal-label-text-font: map.get($system, label-small-font),
139
+ button-tonal-label-text-size: map.get($system, label-small-size),
140
+ button-tonal-label-text-tracking: map.get($system, label-small-tracking),
141
+ button-tonal-label-text-transform: none,
142
+ button-tonal-label-text-weight: map.get($system, label-small-weight),
143
+ ),
144
+ density: (
145
+ button-filled-container-height: $height,
146
+ button-filled-touch-target-display: $touch-target-display,
147
+ button-outlined-container-height: $height,
148
+ button-outlined-touch-target-display: $touch-target-display,
149
+ button-protected-container-height: $height,
150
+ button-protected-touch-target-display: $touch-target-display,
151
+ button-text-container-height: $height,
152
+ button-text-touch-target-display: $touch-target-display,
153
+ button-tonal-container-height: $height,
154
+ button-tonal-touch-target-display: $touch-target-display,
155
+ ),
156
+ );
157
+ }
158
+
159
+ // Generates the mapping for the properties that change based on the button palette color.
160
+ @function private-get-color-palette-color-tokens($theme, $color-variant) {
161
+ $system: m2-utils.get-system($theme);
162
+ $system: m3-utils.replace-colors-with-variant($system, primary, $color-variant);
163
+
164
+ // outlined-outline-color:
165
+ // TODO: we shouldn't have to set this since it's the same as the non-palette version, however
166
+ // there are a bunch of tests internally that depend on it. We should remove this and clean
167
+ // up the screenshots separately.
168
+ @return (
169
+ button-filled-container-color: map.get($system, primary),
170
+ button-filled-label-text-color: map.get($system, on-primary),
171
+ button-filled-ripple-color: m3-utils.color-with-opacity(
172
+ map.get($system, on-primary), map.get($system, pressed-state-layer-opacity)),
173
+ button-filled-state-layer-color: map.get($system, on-primary),
174
+ button-outlined-label-text-color: map.get($system, primary),
175
+ button-outlined-outline-color: map.get($system, outline),
176
+ button-outlined-ripple-color: m3-utils.color-with-opacity(
177
+ map.get($system, primary), map.get($system, pressed-state-layer-opacity)),
178
+ button-outlined-state-layer-color: map.get($system, primary),
179
+ button-protected-container-color: map.get($system, primary),
180
+ button-protected-label-text-color: map.get($system, on-primary),
181
+ button-protected-ripple-color: m3-utils.color-with-opacity(
182
+ map.get($system, on-primary), map.get($system, pressed-state-layer-opacity)),
183
+ button-protected-state-layer-color: map.get($system, on-primary),
184
+ button-text-label-text-color: map.get($system, primary),
185
+ button-text-ripple-color: m3-utils.color-with-opacity(
186
+ map.get($system, primary), map.get($system, pressed-state-layer-opacity)),
187
+ button-text-state-layer-color: map.get($system, primary),
188
+ button-tonal-container-color: map.get($system, primary),
189
+ button-tonal-label-text-color: map.get($system, on-primary),
190
+ button-tonal-ripple-color: m3-utils.color-with-opacity(
191
+ map.get($system, on-primary), map.get($system, pressed-state-layer-opacity)),
192
+ button-tonal-state-layer-color: map.get($system, on-primary),
193
+ );
194
+ }
@@ -0,0 +1,101 @@
1
+ @use 'sass:map';
2
+ @use 'sass:meta';
3
+ @use '../core/tokens/m2-utils';
4
+ @use '../core/tokens/m3-utils';
5
+ @use '../core/theming/theming';
6
+ @use '../core/theming/inspection';
7
+ @use '../core/style/elevation';
8
+
9
+ @function get-tokens($theme) {
10
+ $system: m2-utils.get-system($theme);
11
+ // TODO: Use system colors instead of checking theme type
12
+ $is-dark: false;
13
+ @if (meta.type-of($theme) == map and map.get($theme, color)) {
14
+ $is-dark: inspection.get-theme-type($theme) == dark;
15
+ }
16
+ $disabled: m3-utils.color-with-opacity(map.get($system, on-surface), 38%);
17
+ $disabled-container : m3-utils.color-with-opacity(map.get($system, on-surface), 12%);
18
+ $density-scale: theming.clamp-density(map.get($system, density-scale), -3);
19
+ $touch-target-size: 48px;
20
+ $touch-target-display: block;
21
+
22
+ @if ($density-scale < -1) {
23
+ $touch-target-display: none;
24
+ }
25
+
26
+ @return (
27
+ base: (
28
+ fab-container-elevation-shadow: elevation.get-box-shadow(6),
29
+ fab-container-shape: 50%,
30
+ fab-touch-target-size: $touch-target-size,
31
+ fab-extended-container-elevation-shadow: elevation.get-box-shadow(6),
32
+ fab-extended-container-height: 48px,
33
+ fab-extended-container-shape: 24px,
34
+ fab-extended-focus-container-elevation-shadow: elevation.get-box-shadow(8),
35
+ fab-extended-hover-container-elevation-shadow: elevation.get-box-shadow(8),
36
+ fab-extended-pressed-container-elevation-shadow: elevation.get-box-shadow(12),
37
+ fab-focus-container-elevation-shadow: elevation.get-box-shadow(8),
38
+ fab-hover-container-elevation-shadow: elevation.get-box-shadow(8),
39
+ fab-pressed-container-elevation-shadow: elevation.get-box-shadow(12),
40
+ fab-small-container-elevation-shadow: elevation.get-box-shadow(6),
41
+ fab-small-container-shape: 50%,
42
+ fab-small-touch-target-size: $touch-target-size,
43
+ fab-small-focus-container-elevation-shadow: elevation.get-box-shadow(8),
44
+ fab-small-hover-container-elevation-shadow: elevation.get-box-shadow(8),
45
+ fab-small-pressed-container-elevation-shadow: elevation.get-box-shadow(12),
46
+ ),
47
+ color: (
48
+ fab-container-color: map.get($system, surface),
49
+ fab-disabled-state-container-color: $disabled-container,
50
+ fab-disabled-state-foreground-color: $disabled,
51
+ fab-disabled-state-layer-color: map.get($system, on-surface-variant),
52
+ fab-focus-state-layer-opacity: map.get($system, focus-state-layer-opacity),
53
+ fab-foreground-color: map.get($system, on-surface),
54
+ fab-hover-state-layer-opacity: map.get($system, hover-state-layer-opacity),
55
+ fab-pressed-state-layer-opacity: map.get($system, pressed-state-layer-opacity),
56
+ fab-ripple-color: m3-utils.color-with-opacity(
57
+ map.get($system, on-surface), map.get($system, pressed-state-layer-opacity)),
58
+ fab-small-container-color: map.get($system, surface),
59
+ fab-small-disabled-state-container-color: $disabled-container,
60
+ fab-small-disabled-state-foreground-color: $disabled,
61
+ fab-small-disabled-state-layer-color: map.get($system, on-surface-variant),
62
+ fab-small-focus-state-layer-opacity: map.get($system, focus-state-layer-opacity),
63
+ fab-small-foreground-color: map.get($system, on-surface),
64
+ fab-small-hover-state-layer-opacity: map.get($system, hover-state-layer-opacity),
65
+ fab-small-pressed-state-layer-opacity: map.get($system, pressed-state-layer-opacity),
66
+ fab-small-ripple-color: m3-utils.color-with-opacity(
67
+ map.get($system, on-surface), map.get($system, pressed-state-layer-opacity)),
68
+ fab-small-state-layer-color: map.get($system, on-surface),
69
+ fab-state-layer-color: map.get($system, on-surface),
70
+ ),
71
+ typography: (
72
+ fab-extended-label-text-font: map.get($system, label-small-font),
73
+ fab-extended-label-text-size: map.get($system, label-small-size),
74
+ fab-extended-label-text-tracking: map.get($system, label-small-tracking),
75
+ fab-extended-label-text-weight: map.get($system, label-small-weight)
76
+ ),
77
+ density: (
78
+ fab-small-touch-target-display: $touch-target-display,
79
+ fab-touch-target-display: $touch-target-display,
80
+ ),
81
+ );
82
+ }
83
+
84
+ // Generates the mapping for the properties that change based on the FAB palette color.
85
+ @function private-get-color-palette-color-tokens($theme, $color-variant) {
86
+ $system: m2-utils.get-system($theme);
87
+ $system: m3-utils.replace-colors-with-variant($system, primary, $color-variant);
88
+
89
+ @return (
90
+ fab-container-color: map.get($system, primary),
91
+ fab-foreground-color: map.get($system, on-primary),
92
+ fab-ripple-color: m3-utils.color-with-opacity(
93
+ map.get($system, primary), map.get($system, pressed-state-layer-opacity)),
94
+ fab-small-container-color: map.get($system, primary),
95
+ fab-small-foreground-color: map.get($system, on-primary),
96
+ fab-small-ripple-color: m3-utils.color-with-opacity(
97
+ map.get($system, on-primary), map.get($system, pressed-state-layer-opacity)),
98
+ fab-small-state-layer-color: map.get($system, on-primary),
99
+ fab-state-layer-color: map.get($system, on-primary),
100
+ );
101
+ }