@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,17 @@
1
+ @use 'sass:map';
2
+ @use '../tokens/m2-utils';
3
+ @use '../tokens/m3-utils';
4
+
5
+ @function get-tokens($theme) {
6
+ $system: m2-utils.get-system($theme);
7
+
8
+ @return (
9
+ base: (),
10
+ color: (
11
+ ripple-color: m3-utils.color-with-opacity(
12
+ map.get($system, on-surface), map.get($system, pressed-state-layer-opacity)),
13
+ ),
14
+ typography: (),
15
+ density: (),
16
+ );
17
+ }
@@ -0,0 +1,17 @@
1
+ @use 'sass:map';
2
+ @use '../tokens/m3-utils';
3
+ @use '../tokens/m3';
4
+
5
+ /// Generates custom tokens for the mat-ripple.
6
+ @function get-tokens($theme: m3.$sys-theme) {
7
+ $system: m3-utils.get-system($theme);
8
+
9
+ @return (
10
+ base: (),
11
+ color: (
12
+ ripple-color: m3-utils.color-with-opacity(map.get($system, on-surface), 10%),
13
+ ),
14
+ typography: (),
15
+ density: (),
16
+ );
17
+ }
@@ -0,0 +1,75 @@
1
+ @use 'sass:map';
2
+ @use './m2-ripple';
3
+ @use './m3-ripple';
4
+ @use '../tokens/token-utils';
5
+ @use '../theming/inspection';
6
+
7
+ @mixin base($theme) {
8
+ $tokens: map.get(m2-ripple.get-tokens($theme), base);
9
+ @if inspection.get-theme-version($theme) == 1 {
10
+ $tokens: map.get(m3-ripple.get-tokens($theme), base);
11
+ }
12
+
13
+ @include token-utils.values($tokens);
14
+ }
15
+
16
+ @mixin color($theme) {
17
+ $tokens: map.get(m2-ripple.get-tokens($theme), color);
18
+ @if inspection.get-theme-version($theme) == 1 {
19
+ $tokens: map.get(m3-ripple.get-tokens($theme), color);
20
+ }
21
+
22
+ @include token-utils.values($tokens);
23
+ }
24
+
25
+ @mixin typography($theme) {
26
+ $tokens: map.get(m2-ripple.get-tokens($theme), typography);
27
+ @if inspection.get-theme-version($theme) == 1 {
28
+ $tokens: map.get(m3-ripple.get-tokens($theme), typography);
29
+ }
30
+
31
+ @include token-utils.values($tokens);
32
+ }
33
+
34
+ @mixin density($theme) {
35
+ $tokens: map.get(m2-ripple.get-tokens($theme), density);
36
+ @if inspection.get-theme-version($theme) == 1 {
37
+ $tokens: map.get(m3-ripple.get-tokens($theme), density);
38
+ }
39
+
40
+ @include token-utils.values($tokens);
41
+ }
42
+
43
+ /// Defines the tokens that will be available in the `overrides` mixin and for docs extraction.
44
+ @function _define-overrides() {
45
+ @return (
46
+ (
47
+ namespace: ripple,
48
+ tokens: token-utils.get-overrides(m3-ripple.get-tokens(), ripple)
49
+ ),
50
+ );
51
+ }
52
+
53
+ @mixin overrides($tokens: ()) {
54
+ @include token-utils.batch-create-token-values($tokens, _define-overrides());
55
+ }
56
+
57
+ @mixin theme($theme) {
58
+ @if inspection.get-theme-version($theme) == 1 {
59
+ @include base($theme);
60
+ @include color($theme);
61
+ @include density($theme);
62
+ @include typography($theme);
63
+ } @else {
64
+ @include base($theme);
65
+ @if inspection.theme-has($theme, color) {
66
+ @include color($theme);
67
+ }
68
+ @if inspection.theme-has($theme, density) {
69
+ @include density($theme);
70
+ }
71
+ @if inspection.theme-has($theme, typography) {
72
+ @include typography($theme);
73
+ }
74
+ }
75
+ }
@@ -0,0 +1,56 @@
1
+ @use '@angular/cdk';
2
+ @use './m3-ripple';
3
+ @use '../tokens/token-utils';
4
+
5
+ $fallbacks: m3-ripple.get-tokens();
6
+
7
+ @mixin ripple() {
8
+ // The host element of an mat-ripple directive should always have a position of "absolute" or
9
+ // "relative" so that the ripples inside are correctly positioned relatively to the container.
10
+ .mat-ripple {
11
+ overflow: hidden;
12
+
13
+ // By default, every ripple container should have position: relative in favor of creating an
14
+ // easy API for developers using the MatRipple directive.
15
+ position: relative;
16
+
17
+ // Promote containers that have ripples to a new layer. We want to target `:not(:empty)`,
18
+ // because we don't want all ripple containers to have their own layer since they're used in a
19
+ // lot of places and the layer is only relevant while animating. Note that ideally we'd use
20
+ // the `contain` property here (see #13175), because `:empty` can be broken by having extra
21
+ // text inside the element, but it isn't very well supported yet.
22
+ &:not(:empty) {
23
+ transform: translateZ(0);
24
+ }
25
+ }
26
+
27
+ .mat-ripple.mat-ripple-unbounded {
28
+ overflow: visible;
29
+ }
30
+
31
+ .mat-ripple-element {
32
+ position: absolute;
33
+ border-radius: 50%;
34
+ pointer-events: none;
35
+
36
+ transition: opacity, transform 0ms cubic-bezier(0, 0, 0.2, 1);
37
+
38
+ // We use a 3d transform here in order to avoid an issue in Safari where
39
+ // the ripples aren't clipped when inside the shadow DOM (see #24028).
40
+ transform: scale3d(0, 0, 0);
41
+
42
+ // We have to emit a fallback value here, because some internal builds depend on it.
43
+ background-color: token-utils.slot(ripple-color, $fallbacks, $fallback: rgba(#000, 0.1));
44
+
45
+ // In high contrast mode the ripple is opaque, causing it to obstruct the content.
46
+ @include cdk.high-contrast {
47
+ display: none;
48
+ }
49
+
50
+ // Hide ripples inside cloned drag&drop elements since they won't go away.
51
+ .cdk-drag-preview &,
52
+ .cdk-drag-placeholder & {
53
+ display: none;
54
+ }
55
+ }
56
+ }
@@ -0,0 +1,32 @@
1
+ @use 'sass:map';
2
+ @use '../../tokens/m2-utils';
3
+ @use '../../tokens/m3-utils';
4
+
5
+ @function get-tokens($theme) {
6
+ @return (
7
+ base: (),
8
+ color: private-get-color-palette-color-tokens($theme, secondary),
9
+ typography: (),
10
+ density: (),
11
+ );
12
+ }
13
+
14
+ // Tokens that can be configured through Angular Material's color theming API.
15
+ @function private-get-color-palette-color-tokens($theme, $color-variant) {
16
+ $system: m2-utils.get-system($theme);
17
+ $system: m3-utils.replace-colors-with-variant($system, secondary, $color-variant);
18
+
19
+ @return (
20
+ pseudo-checkbox-full-selected-icon-color: map.get($system, secondary),
21
+ pseudo-checkbox-full-selected-checkmark-color: map.get($system, background),
22
+ pseudo-checkbox-full-unselected-icon-color: map.get($system, on-surface-variant),
23
+ pseudo-checkbox-full-disabled-selected-checkmark-color: map.get($system, background),
24
+ pseudo-checkbox-full-disabled-unselected-icon-color:
25
+ m3-utils.color-with-opacity(map.get($system, on-surface), 38%),
26
+ pseudo-checkbox-full-disabled-selected-icon-color:
27
+ m3-utils.color-with-opacity(map.get($system, on-surface), 38%),
28
+ pseudo-checkbox-minimal-selected-checkmark-color: map.get($system, secondary),
29
+ pseudo-checkbox-minimal-disabled-selected-checkmark-color:
30
+ m3-utils.color-with-opacity(map.get($system, on-surface), 38%),
31
+ );
32
+ }
@@ -0,0 +1,34 @@
1
+ @use 'sass:map';
2
+ @use '../../tokens/m3-utils';
3
+ @use '../../tokens/m3';
4
+
5
+ /// Generates custom tokens for the full variant of mat-pseudo-checkbox.
6
+ /// @param {String} $color-variant The color variant to use for the component (M3 only)
7
+ @function get-tokens($theme: m3.$sys-theme, $color-variant: null) {
8
+ $system: m3-utils.get-system($theme);
9
+ @if $color-variant {
10
+ $system: m3-utils.replace-colors-with-variant($system, primary, $color-variant);
11
+ }
12
+
13
+ @return (
14
+ base: (),
15
+ color: (
16
+ pseudo-checkbox-full-disabled-selected-checkmark-color: map.get($system, surface),
17
+ pseudo-checkbox-full-disabled-selected-icon-color:
18
+ m3-utils.color-with-opacity(map.get($system, on-surface), 38%),
19
+ pseudo-checkbox-full-disabled-unselected-icon-color:
20
+ m3-utils.color-with-opacity(map.get($system, on-surface), 38%),
21
+ pseudo-checkbox-full-selected-checkmark-color: map.get($system, on-primary),
22
+ pseudo-checkbox-full-selected-icon-color: map.get($system, primary),
23
+ pseudo-checkbox-full-unselected-icon-color: map.get($system, on-surface-variant),
24
+ pseudo-checkbox-minimal-disabled-selected-checkmark-color:
25
+ m3-utils.color-with-opacity(map.get($system, on-surface), 38%),
26
+ pseudo-checkbox-minimal-selected-checkmark-color: map.get($system, primary),
27
+ ),
28
+ typography: (),
29
+ density: (),
30
+ );
31
+
32
+ $tokens: (
33
+ );
34
+ }
@@ -0,0 +1,86 @@
1
+ @use 'sass:math';
2
+ @use '../../style/checkbox-common';
3
+
4
+ // Padding inside of a pseudo checkbox.
5
+ $padding: checkbox-common.$border-width * 2;
6
+
7
+ // Center a checkmark indicator inside the checkbox.
8
+ //
9
+ // `$box-size`: size of the checkbox
10
+ // `$mark-size`: size of the checkmark indicator
11
+ @mixin _checkbox-checked-styles-with-size($box-size, $mark-size) {
12
+ // Center a checkmark. `$checkbox-cmmon.$border-width` is the width of the line of the checkmark.
13
+ $width: $mark-size;
14
+ $height: math.div($mark-size - checkbox-common.$border-width, 2);
15
+
16
+ // The rendered length of the short-side of the checkmark graphic when rendered. Add length of
17
+ // the border-width since this element is content-box.
18
+ $short-side: $height + checkbox-common.$border-width;
19
+
20
+ width: $width;
21
+ height: $height;
22
+
23
+ // Rotate on the center of the element. This makes it easier to center the checkmark graphic.
24
+ transform-origin: center;
25
+
26
+ // Take negative one times the distance from the top corner of the checkmark graphic to the top
27
+ // of the element in its rotated position. This accounts for the top corner of the elemant being
28
+ // blank since we only use the left and bottom borders to draw the checkmark graphic.
29
+ top: -1 * math.div($short-side - checkbox-common.$border-width, math.sqrt(2));
30
+
31
+ left: 0;
32
+ bottom: 0;
33
+ right: 0;
34
+
35
+ // center the checkmark graphic with margin auto
36
+ margin: auto;
37
+ }
38
+
39
+ // Center a horizontal line placed in the vertical and horizontal center of the checkbox. It does
40
+ // not touch the border of the checkbox.
41
+ //
42
+ // `$box-size`: size of the checkbox.
43
+ // `$border-size`: size of the checkbox's border.
44
+ @mixin _checkbox-indeterminate-styles-with-size($box-size, $border-size) {
45
+ // Center the line in the checkbox. `$checkbox-common.$border-width` is the width of the line.
46
+ top: math.div($box-size - checkbox-common.$border-width, 2) - $border-size;
47
+ width: $box-size - checkbox-common.$border-width - (2 * $border-size);
48
+ }
49
+
50
+ /// Applies the styles that set the size of the pseudo checkbox
51
+ @mixin size($box-size) {
52
+
53
+ .mat-pseudo-checkbox {
54
+ width: $box-size;
55
+ height: $box-size;
56
+ }
57
+
58
+ .mat-pseudo-checkbox-minimal {
59
+ $mark-size: $box-size - $padding;
60
+ $border-size: 0; // Minimal appearance does not have a border.
61
+
62
+ &.mat-pseudo-checkbox-checked::after {
63
+ @include _checkbox-checked-styles-with-size($box-size, $mark-size);
64
+ }
65
+ &.mat-pseudo-checkbox-indeterminate::after {
66
+ @include _checkbox-indeterminate-styles-with-size($box-size, $border-size);
67
+ }
68
+ }
69
+
70
+ .mat-pseudo-checkbox-full {
71
+ $mark-size: $box-size - (2 * $padding); // Apply a smaller mark to account for the border.
72
+ $border-size: checkbox-common.$border-width;
73
+
74
+ &.mat-pseudo-checkbox-checked::after {
75
+ @include _checkbox-checked-styles-with-size($box-size, $mark-size);
76
+ }
77
+ &.mat-pseudo-checkbox-indeterminate::after {
78
+ @include _checkbox-indeterminate-styles-with-size($box-size, $border-size);
79
+ }
80
+ }
81
+ }
82
+
83
+ /// Applies the legacy size styles to the pseudo-checkbox
84
+ @mixin legacy-size() {
85
+ @include size(checkbox-common.$legacy-size);
86
+ }
@@ -0,0 +1,110 @@
1
+ @use '../../theming/inspection';
2
+ @use '../../tokens/token-utils';
3
+ @use './m2-pseudo-checkbox';
4
+ @use './m3-pseudo-checkbox';
5
+ @use 'sass:map';
6
+
7
+ @mixin _palette-styles($theme, $palette-name) {
8
+ $tokens: map.get(m2-pseudo-checkbox.get-tokens($theme), color);
9
+ @include token-utils.values($tokens);
10
+ }
11
+
12
+ @mixin base($theme) {
13
+ $tokens: map.get(m2-pseudo-checkbox.get-tokens($theme), base);
14
+ @if inspection.get-theme-version($theme) == 1 {
15
+ $tokens: map.get(m3-pseudo-checkbox.get-tokens($theme), base);
16
+ }
17
+
18
+ @include token-utils.values($tokens);
19
+ }
20
+
21
+ /// Outputs the CSS variable values for the given tokens.
22
+ /// @param {Map} $tokens The token values to emit.
23
+ @mixin overrides($tokens: ()) {
24
+ @include token-utils.batch-create-token-values($tokens, _define-overrides());
25
+ }
26
+
27
+ /// Outputs color theme styles for the mat-pseudo-checkbox.
28
+ /// @param {Map} $theme The theme to generate color styles for.
29
+ /// @param {String} $color-variant The color variant to use for the component (M3 only)
30
+ @mixin color($theme, $color-variant: null) {
31
+ $tokens: map.get(m2-pseudo-checkbox.get-tokens($theme), color);
32
+ @if inspection.get-theme-version($theme) == 1 {
33
+ $tokens: map.get(m3-pseudo-checkbox.get-tokens($theme, $color-variant), color);
34
+ }
35
+
36
+ @include token-utils.values($tokens);
37
+
38
+ @if inspection.get-theme-version($theme) != 1 {
39
+ // Default to the accent color. Note that the pseudo checkboxes are meant to inherit the
40
+ // theme from their parent, rather than implementing their own theming, which is why we
41
+ // don't attach to the `mat-*` classes. Also note that this needs to be below `.mat-primary`
42
+ // in order to allow for the color to be overwritten if the checkbox is inside a parent that
43
+ // has `mat-accent` and is placed inside another parent that has `mat-primary`.
44
+ .mat-primary {
45
+ $tokens: m2-pseudo-checkbox.private-get-color-palette-color-tokens($theme, primary);
46
+ @include token-utils.values($tokens);
47
+ }
48
+
49
+ .mat-accent {
50
+ $tokens: m2-pseudo-checkbox.private-get-color-palette-color-tokens($theme, secondary);
51
+ @include token-utils.values($tokens);
52
+ }
53
+
54
+ .mat-warn {
55
+ $tokens: m2-pseudo-checkbox.private-get-color-palette-color-tokens($theme, error);
56
+ @include token-utils.values($tokens);
57
+ }
58
+ }
59
+ }
60
+
61
+ @mixin typography($theme) {
62
+ $tokens: map.get(m2-pseudo-checkbox.get-tokens($theme), typography);
63
+ @if inspection.get-theme-version($theme) == 1 {
64
+ $tokens: map.get(m3-pseudo-checkbox.get-tokens($theme), typography);
65
+ }
66
+
67
+ @include token-utils.values($tokens);
68
+ }
69
+
70
+ @mixin density($theme) {
71
+ $tokens: map.get(m2-pseudo-checkbox.get-tokens($theme), density);
72
+ @if inspection.get-theme-version($theme) == 1 {
73
+ $tokens: map.get(m3-pseudo-checkbox.get-tokens($theme), density);
74
+ }
75
+
76
+ @include token-utils.values($tokens);
77
+ }
78
+
79
+ /// Defines the tokens that will be available in the `overrides` mixin and for docs extraction.
80
+ @function _define-overrides() {
81
+ @return (
82
+ (
83
+ namespace: pseudo-checkbox,
84
+ tokens: token-utils.get-overrides(m3-pseudo-checkbox.get-tokens(), pseudo-checkbox)
85
+ ),
86
+ );
87
+ }
88
+
89
+ /// Outputs all (base, color, typography, and density) theme styles for the mat-pseudo-checkbox.
90
+ /// @param {Map} $theme The theme to generate styles for.
91
+ /// @param {String} $color-variant The color variant to use for the component (M3 only)
92
+ @mixin theme($theme, $color-variant: null) {
93
+ @if inspection.get-theme-version($theme) == 1 {
94
+ @include base($theme);
95
+ @include color($theme, $color-variant);
96
+ @include density($theme);
97
+ @include typography($theme);
98
+ } @else {
99
+ @include base($theme);
100
+ @if inspection.theme-has($theme, color) {
101
+ @include color($theme);
102
+ }
103
+ @if inspection.theme-has($theme, density) {
104
+ @include density($theme);
105
+ }
106
+ @if inspection.theme-has($theme, typography) {
107
+ @include typography($theme);
108
+ }
109
+ }
110
+ }
@@ -0,0 +1,11 @@
1
+ // The width/height of the checkbox element.
2
+ $size: 18px !default;
3
+
4
+ // The width/height of the legacy-checkbox element.
5
+ $legacy-size: 16px !default;
6
+
7
+ // The width of the checkbox border shown when the checkbox is unchecked.
8
+ $border-width: 2px;
9
+
10
+ // The base duration used for the majority of transitions for the checkbox.
11
+ $transition-duration: 90ms;
@@ -0,0 +1,208 @@
1
+ @use 'sass:map';
2
+ @use 'sass:math';
3
+ @use 'sass:meta';
4
+ @use 'sass:string';
5
+ @use './variables';
6
+ @use './sass-utils';
7
+
8
+ $_umbra-opacity: 0.2;
9
+ $_penumbra-opacity: 0.14;
10
+ $_ambient-opacity: 0.12;
11
+
12
+ $_umbra-map: (
13
+ 0: '0px 0px 0px 0px',
14
+ 1: '0px 2px 1px -1px',
15
+ 2: '0px 3px 1px -2px',
16
+ 3: '0px 3px 3px -2px',
17
+ 4: '0px 2px 4px -1px',
18
+ 5: '0px 3px 5px -1px',
19
+ 6: '0px 3px 5px -1px',
20
+ 7: '0px 4px 5px -2px',
21
+ 8: '0px 5px 5px -3px',
22
+ 9: '0px 5px 6px -3px',
23
+ 10: '0px 6px 6px -3px',
24
+ 11: '0px 6px 7px -4px',
25
+ 12: '0px 7px 8px -4px',
26
+ 13: '0px 7px 8px -4px',
27
+ 14: '0px 7px 9px -4px',
28
+ 15: '0px 8px 9px -5px',
29
+ 16: '0px 8px 10px -5px',
30
+ 17: '0px 8px 11px -5px',
31
+ 18: '0px 9px 11px -5px',
32
+ 19: '0px 9px 12px -6px',
33
+ 20: '0px 10px 13px -6px',
34
+ 21: '0px 10px 13px -6px',
35
+ 22: '0px 10px 14px -6px',
36
+ 23: '0px 11px 14px -7px',
37
+ 24: '0px 11px 15px -7px',
38
+ );
39
+
40
+ $_penumbra-map: (
41
+ 0: '0px 0px 0px 0px',
42
+ 1: '0px 1px 1px 0px',
43
+ 2: '0px 2px 2px 0px',
44
+ 3: '0px 3px 4px 0px',
45
+ 4: '0px 4px 5px 0px',
46
+ 5: '0px 5px 8px 0px',
47
+ 6: '0px 6px 10px 0px',
48
+ 7: '0px 7px 10px 1px',
49
+ 8: '0px 8px 10px 1px',
50
+ 9: '0px 9px 12px 1px',
51
+ 10: '0px 10px 14px 1px',
52
+ 11: '0px 11px 15px 1px',
53
+ 12: '0px 12px 17px 2px',
54
+ 13: '0px 13px 19px 2px',
55
+ 14: '0px 14px 21px 2px',
56
+ 15: '0px 15px 22px 2px',
57
+ 16: '0px 16px 24px 2px',
58
+ 17: '0px 17px 26px 2px',
59
+ 18: '0px 18px 28px 2px',
60
+ 19: '0px 19px 29px 2px',
61
+ 20: '0px 20px 31px 3px',
62
+ 21: '0px 21px 33px 3px',
63
+ 22: '0px 22px 35px 3px',
64
+ 23: '0px 23px 36px 3px',
65
+ 24: '0px 24px 38px 3px',
66
+ );
67
+
68
+ $_ambient-map: (
69
+ 0: '0px 0px 0px 0px',
70
+ 1: '0px 1px 3px 0px',
71
+ 2: '0px 1px 5px 0px',
72
+ 3: '0px 1px 8px 0px',
73
+ 4: '0px 1px 10px 0px',
74
+ 5: '0px 1px 14px 0px',
75
+ 6: '0px 1px 18px 0px',
76
+ 7: '0px 2px 16px 1px',
77
+ 8: '0px 3px 14px 2px',
78
+ 9: '0px 3px 16px 2px',
79
+ 10: '0px 4px 18px 3px',
80
+ 11: '0px 4px 20px 3px',
81
+ 12: '0px 5px 22px 4px',
82
+ 13: '0px 5px 24px 4px',
83
+ 14: '0px 5px 26px 4px',
84
+ 15: '0px 6px 28px 5px',
85
+ 16: '0px 6px 30px 5px',
86
+ 17: '0px 6px 32px 5px',
87
+ 18: '0px 7px 34px 6px',
88
+ 19: '0px 7px 36px 6px',
89
+ 20: '0px 8px 38px 7px',
90
+ 21: '0px 8px 40px 7px',
91
+ 22: '0px 8px 42px 7px',
92
+ 23: '0px 9px 44px 8px',
93
+ 24: '0px 9px 46px 8px',
94
+ );
95
+
96
+ // A collection of mixins and CSS classes that can be used to apply elevation to a material
97
+ // element.
98
+ // See: https://material.io/design/environment/elevation.html
99
+ // Examples:
100
+ //
101
+ //
102
+ // .mat-foo {
103
+ // @include $mat-elevation(2);
104
+ //
105
+ // &:active {
106
+ // @include $mat-elevation(8);
107
+ // }
108
+ // }
109
+ //
110
+ // <div id="external-card" class="mat-elevation-z2"><p>Some content</p></div>
111
+ //
112
+ // For an explanation of the design behind how elevation is implemented, see the design doc at
113
+ // https://docs.google.com/document/d/1W3NGSLqDZzjbBBLW2C6y_6NUxtvdZAVaJvg58LY3Q0E/edit
114
+
115
+ // The default duration value for elevation transitions.
116
+ $transition-duration: 280ms !default;
117
+
118
+ // The default easing value for elevation transitions.
119
+ $transition-timing-function: variables.$fast-out-slow-in-timing-function;
120
+
121
+ // The default color for elevation shadows.
122
+ $color: black !default;
123
+
124
+ // Prefix for elevation-related selectors.
125
+ $prefix: 'mat-elevation-z';
126
+
127
+ // Applies the correct css rules to an element to give it the elevation specified by $zValue.
128
+ // The $zValue must be between 0 and 24.
129
+ @mixin elevation($zValue, $color: $color, $opacity: null) {
130
+ box-shadow: get-box-shadow($zValue, $color, $opacity);
131
+ }
132
+
133
+ // Applies the elevation to an element in a manner that allows
134
+ // consumers to override it via the Material elevation classes.
135
+ @mixin overridable-elevation($zValue, $color: $color, $opacity: null) {
136
+ &:not([class*='#{$prefix}']) {
137
+ @include elevation($zValue, $color, $opacity);
138
+ }
139
+ }
140
+
141
+ // Gets the box shadow value for a specific elevation.
142
+ @function get-box-shadow($zValue, $shadow-color: black, $opacity: null) {
143
+ @if $zValue == null {
144
+ @return null;
145
+ }
146
+
147
+ @if (sass-utils.is-css-var-name($zValue)) {
148
+ @return $zValue;
149
+ }
150
+
151
+ @if meta.type-of($zValue) != number or not math.is-unitless($zValue) {
152
+ @error '$zValue must be a unitless number, but received `#{$zValue}`';
153
+ }
154
+
155
+ @if $zValue < 0 or $zValue > 24 {
156
+ @error '$zValue must be between 0 and 24, but received `#{$zValue}`';
157
+ }
158
+
159
+ $umbra-z-value: map.get($_umbra-map, $zValue);
160
+ $penumbra-z-value: map.get($_penumbra-map, $zValue);
161
+ $ambient-z-value: map.get($_ambient-map, $zValue);
162
+ $color-opacity: 1;
163
+
164
+ @if ($opacity != null) {
165
+ $color-opacity: $opacity;
166
+ }
167
+
168
+ $umbra-color: _compute-color-opacity($shadow-color, $_umbra-opacity * $color-opacity);
169
+ $penumbra-color: _compute-color-opacity($shadow-color, $_penumbra-opacity * $color-opacity);
170
+ $ambient-color: _compute-color-opacity($shadow-color, $_ambient-opacity * $color-opacity);
171
+
172
+ @return string.unquote('#{$umbra-z-value} #{$umbra-color}, #{$penumbra-z-value} ' +
173
+ '#{$penumbra-color}, #{$ambient-z-value} #{$ambient-color}');
174
+ }
175
+
176
+ // Returns a string that can be used as the value for a transition property for elevation.
177
+ // Calling this function directly is useful in situations where a component needs to transition
178
+ // more than one property.
179
+ //
180
+ // .foo {
181
+ // transition: mat-elevation-transition-property-value(), opacity 100ms ease;
182
+ // }
183
+ @function private-transition-property-value(
184
+ $duration: $transition-duration,
185
+ $easing: $transition-timing-function) {
186
+ @return box-shadow #{$duration} #{$easing};
187
+ }
188
+
189
+ // Applies the correct css rules needed to have an element transition between elevations.
190
+ // This mixin should be applied to elements whose elevation values will change depending on their
191
+ // context (e.g. when active or disabled).
192
+ //
193
+ // NOTE(traviskaufman): Both this mixin and the above function use default parameters so they can
194
+ // be used in the same way by clients.
195
+ @mixin elevation-transition(
196
+ $duration: $transition-duration,
197
+ $easing: $transition-timing-function) {
198
+ transition: private-transition-property-value($duration, $easing);
199
+ }
200
+
201
+ @function _compute-color-opacity($color, $opacity) {
202
+ @if meta.type-of($color) == color and $opacity != null {
203
+ @return rgba($color, $opacity);
204
+ }
205
+ @else {
206
+ @return $color;
207
+ }
208
+ }
@@ -0,0 +1,8 @@
1
+ // This mixin ensures an element spans to fill the nearest ancestor with defined positioning.
2
+ @mixin fill {
3
+ top: 0;
4
+ left: 0;
5
+ right: 0;
6
+ bottom: 0;
7
+ position: absolute;
8
+ }
@@ -0,0 +1,27 @@
1
+ @use './elevation';
2
+ @use '../tokens/m2-utils';
3
+ @use 'sass:map';
4
+
5
+ @mixin private-theme-elevation($zValue, $theme) {
6
+ $system: m2-utils.get-system($theme);
7
+ @include elevation.elevation($zValue, map.get($system, shadow));
8
+ }
9
+
10
+ @mixin private-theme-overridable-elevation($zValue, $theme) {
11
+ $system: m2-utils.get-system($theme);
12
+ @include elevation.overridable-elevation($zValue, map.get($system, shadow));
13
+ }
14
+
15
+ // If the mat-animation-noop class is present on the components root element,
16
+ // prevent non css animations from running.
17
+ // NOTE: Currently this mixin should only be used with components that do not
18
+ // have any projected content.
19
+ @mixin private-animation-noop() {
20
+ &._mat-animation-noopable {
21
+ // Use !important here since we don't know what context this mixin will
22
+ // be included in and MDC can have some really specific selectors.
23
+ transition: none !important;
24
+ animation: none !important;
25
+ @content;
26
+ }
27
+ }