@expressivecss/expressive 0.15.0 → 0.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (609) hide show
  1. package/CHANGELOG.md +1807 -1
  2. package/README.md +9 -8
  3. package/dist/css/expressive.css +19176 -11958
  4. package/dist/css/expressive.css.map +1 -1
  5. package/dist/css/expressive.min.css +1 -1
  6. package/dist/css/expressive.min.css.map +1 -1
  7. package/dist/fonts/LICENSE-noto-sans-arabic +93 -0
  8. package/dist/fonts/LICENSE-noto-sans-hebrew +93 -0
  9. package/dist/fonts/LICENSE-noto-sans-thai +93 -0
  10. package/dist/fonts/material-symbols-outlined.woff2 +0 -0
  11. package/dist/fonts/material-symbols-rounded.woff2 +0 -0
  12. package/dist/fonts/material-symbols-sharp.woff2 +0 -0
  13. package/dist/fonts/noto-sans-arabic-arabic-400.woff2 +0 -0
  14. package/dist/fonts/noto-sans-arabic-arabic-500.woff2 +0 -0
  15. package/dist/fonts/noto-sans-arabic-arabic-700.woff2 +0 -0
  16. package/dist/fonts/noto-sans-cyrillic-400.woff2 +0 -0
  17. package/dist/fonts/noto-sans-cyrillic-500.woff2 +0 -0
  18. package/dist/fonts/noto-sans-cyrillic-700.woff2 +0 -0
  19. package/dist/fonts/noto-sans-cyrillic-ext-400.woff2 +0 -0
  20. package/dist/fonts/noto-sans-cyrillic-ext-500.woff2 +0 -0
  21. package/dist/fonts/noto-sans-cyrillic-ext-700.woff2 +0 -0
  22. package/dist/fonts/noto-sans-devanagari-400.woff2 +0 -0
  23. package/dist/fonts/noto-sans-devanagari-500.woff2 +0 -0
  24. package/dist/fonts/noto-sans-devanagari-700.woff2 +0 -0
  25. package/dist/fonts/noto-sans-greek-400.woff2 +0 -0
  26. package/dist/fonts/noto-sans-greek-500.woff2 +0 -0
  27. package/dist/fonts/noto-sans-greek-700.woff2 +0 -0
  28. package/dist/fonts/noto-sans-greek-ext-400.woff2 +0 -0
  29. package/dist/fonts/noto-sans-greek-ext-500.woff2 +0 -0
  30. package/dist/fonts/noto-sans-greek-ext-700.woff2 +0 -0
  31. package/dist/fonts/noto-sans-hebrew-hebrew-400.woff2 +0 -0
  32. package/dist/fonts/noto-sans-hebrew-hebrew-500.woff2 +0 -0
  33. package/dist/fonts/noto-sans-hebrew-hebrew-700.woff2 +0 -0
  34. package/dist/fonts/noto-sans-latin-700.woff2 +0 -0
  35. package/dist/fonts/noto-sans-latin-ext-400.woff2 +0 -0
  36. package/dist/fonts/noto-sans-latin-ext-500.woff2 +0 -0
  37. package/dist/fonts/noto-sans-latin-ext-700.woff2 +0 -0
  38. package/dist/fonts/noto-sans-thai-thai-400.woff2 +0 -0
  39. package/dist/fonts/noto-sans-thai-thai-500.woff2 +0 -0
  40. package/dist/fonts/noto-sans-thai-thai-700.woff2 +0 -0
  41. package/dist/fonts/noto-sans-vietnamese-400.woff2 +0 -0
  42. package/dist/fonts/noto-sans-vietnamese-500.woff2 +0 -0
  43. package/dist/fonts/noto-sans-vietnamese-700.woff2 +0 -0
  44. package/dist/fonts/roboto-cyrillic-400.woff2 +0 -0
  45. package/dist/fonts/roboto-cyrillic-500.woff2 +0 -0
  46. package/dist/fonts/roboto-cyrillic-700.woff2 +0 -0
  47. package/dist/fonts/roboto-cyrillic-ext-400.woff2 +0 -0
  48. package/dist/fonts/roboto-cyrillic-ext-500.woff2 +0 -0
  49. package/dist/fonts/roboto-cyrillic-ext-700.woff2 +0 -0
  50. package/dist/fonts/roboto-greek-400.woff2 +0 -0
  51. package/dist/fonts/roboto-greek-500.woff2 +0 -0
  52. package/dist/fonts/roboto-greek-700.woff2 +0 -0
  53. package/dist/fonts/roboto-greek-ext-400.woff2 +0 -0
  54. package/dist/fonts/roboto-greek-ext-500.woff2 +0 -0
  55. package/dist/fonts/roboto-greek-ext-700.woff2 +0 -0
  56. package/dist/fonts/roboto-latin-700.woff2 +0 -0
  57. package/dist/fonts/roboto-latin-ext-400.woff2 +0 -0
  58. package/dist/fonts/roboto-latin-ext-500.woff2 +0 -0
  59. package/dist/fonts/roboto-latin-ext-700.woff2 +0 -0
  60. package/dist/fonts/roboto-vietnamese-400.woff2 +0 -0
  61. package/dist/fonts/roboto-vietnamese-500.woff2 +0 -0
  62. package/dist/fonts/roboto-vietnamese-700.woff2 +0 -0
  63. package/dist/js/chunks/chunk-26VUH75M.mjs +102 -0
  64. package/dist/js/chunks/chunk-26VUH75M.mjs.map +7 -0
  65. package/dist/js/chunks/chunk-2LFCOGC3.mjs +233 -0
  66. package/dist/js/chunks/chunk-2LFCOGC3.mjs.map +7 -0
  67. package/dist/js/chunks/{chunk-DXGRXYYL.mjs → chunk-36GELQGX.mjs} +29 -46
  68. package/dist/js/chunks/chunk-36GELQGX.mjs.map +7 -0
  69. package/dist/js/chunks/{chunk-74MXKKLN.mjs → chunk-3FKWIRHW.mjs} +15 -29
  70. package/dist/js/chunks/chunk-3FKWIRHW.mjs.map +7 -0
  71. package/dist/js/chunks/chunk-3KF65KGL.mjs +209 -0
  72. package/dist/js/chunks/chunk-3KF65KGL.mjs.map +7 -0
  73. package/dist/js/chunks/{chunk-KVJAVDBC.mjs → chunk-3KLZRQZI.mjs} +88 -116
  74. package/dist/js/chunks/chunk-3KLZRQZI.mjs.map +7 -0
  75. package/dist/js/chunks/{chunk-CK2XCICY.mjs → chunk-3XORNED5.mjs} +3 -11
  76. package/dist/js/chunks/chunk-3XORNED5.mjs.map +7 -0
  77. package/dist/js/chunks/chunk-4WBGAQN3.mjs +113 -0
  78. package/dist/js/chunks/chunk-4WBGAQN3.mjs.map +7 -0
  79. package/dist/js/chunks/{chunk-FM5CZOUB.mjs → chunk-5F4URJHL.mjs} +19 -30
  80. package/dist/js/chunks/chunk-5F4URJHL.mjs.map +7 -0
  81. package/dist/js/chunks/chunk-67UNY7RH.mjs +299 -0
  82. package/dist/js/chunks/chunk-67UNY7RH.mjs.map +7 -0
  83. package/dist/js/chunks/chunk-7CXNATJS.mjs +97 -0
  84. package/dist/js/chunks/chunk-7CXNATJS.mjs.map +7 -0
  85. package/dist/js/chunks/{chunk-UETTGDLI.mjs → chunk-7X44MKEQ.mjs} +43 -48
  86. package/dist/js/chunks/chunk-7X44MKEQ.mjs.map +7 -0
  87. package/dist/js/chunks/chunk-7ZAMOMGY.mjs +440 -0
  88. package/dist/js/chunks/chunk-7ZAMOMGY.mjs.map +7 -0
  89. package/dist/js/chunks/chunk-AEG6LOAJ.mjs +54 -0
  90. package/dist/js/chunks/chunk-AEG6LOAJ.mjs.map +7 -0
  91. package/dist/js/chunks/chunk-AQNFCJJ5.mjs +135 -0
  92. package/dist/js/chunks/chunk-AQNFCJJ5.mjs.map +7 -0
  93. package/dist/js/chunks/chunk-B55LWKBM.mjs +75 -0
  94. package/dist/js/chunks/chunk-B55LWKBM.mjs.map +7 -0
  95. package/dist/js/chunks/chunk-BB5VXYXT.mjs +28 -0
  96. package/dist/js/chunks/chunk-BB5VXYXT.mjs.map +7 -0
  97. package/dist/js/chunks/chunk-BDATLH3H.mjs +108 -0
  98. package/dist/js/chunks/chunk-BDATLH3H.mjs.map +7 -0
  99. package/dist/js/chunks/chunk-CWMQOT4O.mjs +232 -0
  100. package/dist/js/chunks/chunk-CWMQOT4O.mjs.map +7 -0
  101. package/dist/js/chunks/chunk-CY2CTOVM.mjs +81 -0
  102. package/dist/js/chunks/chunk-CY2CTOVM.mjs.map +7 -0
  103. package/dist/js/chunks/{chunk-NUHMOAOY.mjs → chunk-DWA5UYLJ.mjs} +363 -218
  104. package/dist/js/chunks/chunk-DWA5UYLJ.mjs.map +7 -0
  105. package/dist/js/chunks/chunk-EB2V4OKL.mjs +79 -0
  106. package/dist/js/chunks/chunk-EB2V4OKL.mjs.map +7 -0
  107. package/dist/js/chunks/chunk-EWO662ZC.mjs +188 -0
  108. package/dist/js/chunks/chunk-EWO662ZC.mjs.map +7 -0
  109. package/dist/js/chunks/{chunk-ZX6M7SWO.mjs → chunk-F7LAKFMX.mjs} +320 -141
  110. package/dist/js/chunks/chunk-F7LAKFMX.mjs.map +7 -0
  111. package/dist/js/chunks/{chunk-L27Q6ZMI.mjs → chunk-FNIIH2LU.mjs} +20 -33
  112. package/dist/js/chunks/chunk-FNIIH2LU.mjs.map +7 -0
  113. package/dist/js/chunks/chunk-GE3YMFS6.mjs +15 -0
  114. package/dist/js/chunks/chunk-GE3YMFS6.mjs.map +7 -0
  115. package/dist/js/chunks/chunk-GFWYMWYN.mjs +125 -0
  116. package/dist/js/chunks/chunk-GFWYMWYN.mjs.map +7 -0
  117. package/dist/js/chunks/chunk-GNRSYMVH.mjs +1 -0
  118. package/dist/js/chunks/chunk-H5ISU45X.mjs +87 -0
  119. package/dist/js/chunks/chunk-H5ISU45X.mjs.map +7 -0
  120. package/dist/js/chunks/{chunk-GJL6GCIU.mjs → chunk-H6YIKFAQ.mjs} +311 -186
  121. package/dist/js/chunks/chunk-H6YIKFAQ.mjs.map +7 -0
  122. package/dist/js/chunks/{chunk-BGZLF6JZ.mjs → chunk-HEH7E3KO.mjs} +155 -35
  123. package/dist/js/chunks/chunk-HEH7E3KO.mjs.map +7 -0
  124. package/dist/js/chunks/chunk-HQRLBTNM.mjs +152 -0
  125. package/dist/js/chunks/chunk-HQRLBTNM.mjs.map +7 -0
  126. package/dist/js/chunks/chunk-I2F7MLUU.mjs +137 -0
  127. package/dist/js/chunks/chunk-I2F7MLUU.mjs.map +7 -0
  128. package/dist/js/chunks/chunk-IQOTGGHX.mjs +797 -0
  129. package/dist/js/chunks/chunk-IQOTGGHX.mjs.map +7 -0
  130. package/dist/js/chunks/chunk-JH3YWKA6.mjs +225 -0
  131. package/dist/js/chunks/chunk-JH3YWKA6.mjs.map +7 -0
  132. package/dist/js/chunks/chunk-JOLJAYIJ.mjs +7 -0
  133. package/dist/js/chunks/chunk-JOLJAYIJ.mjs.map +7 -0
  134. package/dist/js/chunks/{chunk-VGNYF6FB.mjs → chunk-KOTGMCMI.mjs} +116 -24
  135. package/dist/js/chunks/chunk-KOTGMCMI.mjs.map +7 -0
  136. package/dist/js/chunks/{chunk-LQWUDNHZ.mjs → chunk-LC4O5LFS.mjs} +21 -45
  137. package/dist/js/chunks/chunk-LC4O5LFS.mjs.map +7 -0
  138. package/dist/js/chunks/chunk-LEF33SCP.mjs +127 -0
  139. package/dist/js/chunks/chunk-LEF33SCP.mjs.map +7 -0
  140. package/dist/js/chunks/{chunk-PDG64UHF.mjs → chunk-LFORZRPH.mjs} +21 -23
  141. package/dist/js/chunks/chunk-LFORZRPH.mjs.map +7 -0
  142. package/dist/js/chunks/chunk-LWLNV5EC.mjs +451 -0
  143. package/dist/js/chunks/chunk-LWLNV5EC.mjs.map +7 -0
  144. package/dist/js/chunks/chunk-LXRHUQAX.mjs +491 -0
  145. package/dist/js/chunks/chunk-LXRHUQAX.mjs.map +7 -0
  146. package/dist/js/chunks/{chunk-SFI2U4YW.mjs → chunk-MA2SZZFB.mjs} +82 -111
  147. package/dist/js/chunks/chunk-MA2SZZFB.mjs.map +7 -0
  148. package/dist/js/chunks/chunk-MDBZAMIV.mjs +121 -0
  149. package/dist/js/chunks/chunk-MDBZAMIV.mjs.map +7 -0
  150. package/dist/js/chunks/chunk-NODZ5VAD.mjs +75 -0
  151. package/dist/js/chunks/chunk-NODZ5VAD.mjs.map +7 -0
  152. package/dist/js/chunks/chunk-O2WJB6TH.mjs +365 -0
  153. package/dist/js/chunks/chunk-O2WJB6TH.mjs.map +7 -0
  154. package/dist/js/chunks/chunk-PCABY5BN.mjs +35 -0
  155. package/dist/js/chunks/chunk-PCABY5BN.mjs.map +7 -0
  156. package/dist/js/chunks/chunk-PWKYVMND.mjs +120 -0
  157. package/dist/js/chunks/chunk-PWKYVMND.mjs.map +7 -0
  158. package/dist/js/chunks/{chunk-SMY7GJSS.mjs → chunk-QHZZT7YO.mjs} +66 -38
  159. package/dist/js/chunks/chunk-QHZZT7YO.mjs.map +7 -0
  160. package/dist/js/chunks/chunk-QND56EW2.mjs +439 -0
  161. package/dist/js/chunks/chunk-QND56EW2.mjs.map +7 -0
  162. package/dist/js/chunks/chunk-QNODAANY.mjs +376 -0
  163. package/dist/js/chunks/chunk-QNODAANY.mjs.map +7 -0
  164. package/dist/js/chunks/{chunk-KHXZ2A4K.mjs → chunk-QRO5FV3I.mjs} +156 -73
  165. package/dist/js/chunks/chunk-QRO5FV3I.mjs.map +7 -0
  166. package/dist/js/chunks/chunk-R7A7JRC5.mjs +440 -0
  167. package/dist/js/chunks/chunk-R7A7JRC5.mjs.map +7 -0
  168. package/dist/js/chunks/chunk-RKG2CBFE.mjs +74 -0
  169. package/dist/js/chunks/chunk-RKG2CBFE.mjs.map +7 -0
  170. package/dist/js/chunks/{chunk-XAEAEHIX.mjs → chunk-RSNS5OYS.mjs} +38 -25
  171. package/dist/js/chunks/chunk-RSNS5OYS.mjs.map +7 -0
  172. package/dist/js/chunks/{chunk-X4ISMKE2.mjs → chunk-RUDYMEJ3.mjs} +7 -6
  173. package/dist/js/chunks/chunk-RUDYMEJ3.mjs.map +7 -0
  174. package/dist/js/chunks/chunk-STJR62SU.mjs +161 -0
  175. package/dist/js/chunks/chunk-STJR62SU.mjs.map +7 -0
  176. package/dist/js/chunks/chunk-SUSD4UTN.mjs +220 -0
  177. package/dist/js/chunks/chunk-SUSD4UTN.mjs.map +7 -0
  178. package/dist/js/chunks/{chunk-5CEAOLUA.mjs → chunk-SYBOA5HC.mjs} +26 -48
  179. package/dist/js/chunks/chunk-SYBOA5HC.mjs.map +7 -0
  180. package/dist/js/chunks/chunk-T4MOBP3J.mjs +108 -0
  181. package/dist/js/chunks/chunk-T4MOBP3J.mjs.map +7 -0
  182. package/dist/js/chunks/chunk-TM7HPGTV.mjs +342 -0
  183. package/dist/js/chunks/chunk-TM7HPGTV.mjs.map +7 -0
  184. package/dist/js/chunks/{chunk-C6CHEWYP.mjs → chunk-TMQDZSDC.mjs} +71 -35
  185. package/dist/js/chunks/chunk-TMQDZSDC.mjs.map +7 -0
  186. package/dist/js/chunks/chunk-TVSX5YA2.mjs +48 -0
  187. package/dist/js/chunks/chunk-TVSX5YA2.mjs.map +7 -0
  188. package/dist/js/chunks/chunk-UHO5CV6K.mjs +80 -0
  189. package/dist/js/chunks/chunk-UHO5CV6K.mjs.map +7 -0
  190. package/dist/js/chunks/chunk-UKCNELUN.mjs +223 -0
  191. package/dist/js/chunks/chunk-UKCNELUN.mjs.map +7 -0
  192. package/dist/js/chunks/chunk-UKQK5GWR.mjs +167 -0
  193. package/dist/js/chunks/chunk-UKQK5GWR.mjs.map +7 -0
  194. package/dist/js/chunks/{chunk-TSZYSW7F.mjs → chunk-UTSLYQ65.mjs} +21 -48
  195. package/dist/js/chunks/chunk-UTSLYQ65.mjs.map +7 -0
  196. package/dist/js/chunks/chunk-VS5OJBOD.mjs +108 -0
  197. package/dist/js/chunks/chunk-VS5OJBOD.mjs.map +7 -0
  198. package/dist/js/chunks/chunk-VZMROW5A.mjs +759 -0
  199. package/dist/js/chunks/chunk-VZMROW5A.mjs.map +7 -0
  200. package/dist/js/chunks/chunk-W6FAL3TI.mjs +38 -0
  201. package/dist/js/chunks/chunk-W6FAL3TI.mjs.map +7 -0
  202. package/dist/js/chunks/chunk-XB6Y7P5W.mjs +69 -0
  203. package/dist/js/chunks/chunk-XB6Y7P5W.mjs.map +7 -0
  204. package/dist/js/chunks/chunk-XDAMOMVD.mjs +226 -0
  205. package/dist/js/chunks/chunk-XDAMOMVD.mjs.map +7 -0
  206. package/dist/js/chunks/{chunk-WDK4T63U.mjs → chunk-XJPMW5SP.mjs} +247 -172
  207. package/dist/js/chunks/chunk-XJPMW5SP.mjs.map +7 -0
  208. package/dist/js/chunks/{chunk-KUFHW3DS.mjs → chunk-YKANQILZ.mjs} +16 -21
  209. package/dist/js/chunks/chunk-YKANQILZ.mjs.map +7 -0
  210. package/dist/js/chunks/chunk-YLZOJLDI.mjs +175 -0
  211. package/dist/js/chunks/chunk-YLZOJLDI.mjs.map +7 -0
  212. package/dist/js/chunks/chunk-ZK7YY322.mjs +514 -0
  213. package/dist/js/chunks/chunk-ZK7YY322.mjs.map +7 -0
  214. package/dist/js/expressive.cjs +10266 -3628
  215. package/dist/js/expressive.cjs.map +4 -4
  216. package/dist/js/expressive.js +10266 -3628
  217. package/dist/js/expressive.js.map +4 -4
  218. package/dist/js/expressive.min.js +23 -22
  219. package/dist/js/expressive.min.js.map +4 -4
  220. package/dist/js/expressive.mjs +181 -69
  221. package/dist/js/expressive.mjs.map +2 -2
  222. package/dist/js/internal/behaviors/bottomSheets.mjs +4 -3
  223. package/dist/js/internal/behaviors/copy.mjs +9 -0
  224. package/dist/js/internal/behaviors/copy.mjs.map +7 -0
  225. package/dist/js/internal/behaviors/dataTables.mjs +8 -0
  226. package/dist/js/internal/behaviors/dataTables.mjs.map +7 -0
  227. package/dist/js/internal/behaviors/dialogs.mjs +2 -2
  228. package/dist/js/internal/behaviors/forms.mjs +2 -2
  229. package/dist/js/internal/behaviors/imageCompare.mjs +8 -0
  230. package/dist/js/internal/behaviors/imageCompare.mjs.map +7 -0
  231. package/dist/js/internal/behaviors/lists.mjs +8 -0
  232. package/dist/js/internal/behaviors/lists.mjs.map +7 -0
  233. package/dist/js/internal/behaviors/paneResize.mjs +8 -0
  234. package/dist/js/internal/behaviors/paneResize.mjs.map +7 -0
  235. package/dist/js/internal/behaviors/sheetDrag.mjs +7 -2
  236. package/dist/js/internal/behaviors/sideSheets.mjs +4 -3
  237. package/dist/js/internal/behaviors/sortable.mjs +8 -0
  238. package/dist/js/internal/behaviors/sortable.mjs.map +7 -0
  239. package/dist/js/internal/behaviors/theme.mjs +8 -0
  240. package/dist/js/internal/behaviors/theme.mjs.map +7 -0
  241. package/dist/js/internal/behaviors/tour.mjs +8 -0
  242. package/dist/js/internal/behaviors/tour.mjs.map +7 -0
  243. package/dist/js/internal/behaviors/transferList.mjs +8 -0
  244. package/dist/js/internal/behaviors/transferList.mjs.map +7 -0
  245. package/dist/js/internal/components/appBar.mjs +3 -2
  246. package/dist/js/internal/components/autocomplete.mjs +5 -4
  247. package/dist/js/internal/components/backToTop.mjs +9 -0
  248. package/dist/js/internal/components/backToTop.mjs.map +7 -0
  249. package/dist/js/internal/components/barChart.mjs +5 -4
  250. package/dist/js/internal/components/buttonGroup.mjs +3 -2
  251. package/dist/js/internal/components/buttons.mjs +3 -3
  252. package/dist/js/internal/components/cards.mjs +3 -3
  253. package/dist/js/internal/components/carousel.mjs +3 -3
  254. package/dist/js/internal/components/cascader.mjs +10 -0
  255. package/dist/js/internal/components/cascader.mjs.map +7 -0
  256. package/dist/js/internal/components/characterCounter.mjs +3 -2
  257. package/dist/js/internal/components/chips.mjs +7 -5
  258. package/dist/js/internal/components/colorPicker.mjs +9 -0
  259. package/dist/js/internal/components/colorPicker.mjs.map +7 -0
  260. package/dist/js/internal/components/columnChart.mjs +4 -3
  261. package/dist/js/internal/components/commandPalette.mjs +3 -3
  262. package/dist/js/internal/components/confetti.mjs +3 -2
  263. package/dist/js/internal/components/currencyInput.mjs +9 -0
  264. package/dist/js/internal/components/currencyInput.mjs.map +7 -0
  265. package/dist/js/internal/components/datepicker.mjs +12 -8
  266. package/dist/js/internal/components/expandingCard.mjs +3 -3
  267. package/dist/js/internal/components/funnelChart.mjs +10 -0
  268. package/dist/js/internal/components/funnelChart.mjs.map +7 -0
  269. package/dist/js/internal/components/heatmapChart.mjs +4 -3
  270. package/dist/js/internal/components/hoverCard.mjs +9 -0
  271. package/dist/js/internal/components/hoverCard.mjs.map +7 -0
  272. package/dist/js/internal/components/index.mjs +131 -65
  273. package/dist/js/internal/components/inputMask.mjs +9 -0
  274. package/dist/js/internal/components/inputMask.mjs.map +7 -0
  275. package/dist/js/internal/components/keypad.mjs +3 -3
  276. package/dist/js/internal/components/lightbox.mjs +3 -3
  277. package/dist/js/internal/components/lineChart.mjs +41 -4
  278. package/dist/js/internal/components/loadingOverlay.mjs +9 -0
  279. package/dist/js/internal/components/loadingOverlay.mjs.map +7 -0
  280. package/dist/js/internal/components/mapView.mjs +3 -3
  281. package/dist/js/internal/components/menu.mjs +3 -3
  282. package/dist/js/internal/components/menubar.mjs +10 -0
  283. package/dist/js/internal/components/menubar.mjs.map +7 -0
  284. package/dist/js/internal/components/messageScroller.mjs +3 -3
  285. package/dist/js/internal/components/mixedChart.mjs +5 -4
  286. package/dist/js/internal/components/navigationRail.mjs +3 -2
  287. package/dist/js/internal/components/particles.mjs +3 -2
  288. package/dist/js/internal/components/pieChart.mjs +4 -3
  289. package/dist/js/internal/components/pullToRefresh.mjs +9 -0
  290. package/dist/js/internal/components/pullToRefresh.mjs.map +7 -0
  291. package/dist/js/internal/components/questionnaire.mjs +3 -3
  292. package/dist/js/internal/components/radarChart.mjs +4 -3
  293. package/dist/js/internal/components/radialChart.mjs +4 -3
  294. package/dist/js/internal/components/registry.mjs +60 -41
  295. package/dist/js/internal/components/richTextEditor.mjs +3 -3
  296. package/dist/js/internal/components/sankeyChart.mjs +10 -0
  297. package/dist/js/internal/components/sankeyChart.mjs.map +7 -0
  298. package/dist/js/internal/components/scatterChart.mjs +10 -0
  299. package/dist/js/internal/components/scatterChart.mjs.map +7 -0
  300. package/dist/js/internal/components/scrollspy.mjs +3 -2
  301. package/dist/js/internal/components/select.mjs +5 -4
  302. package/dist/js/internal/components/showMore.mjs +9 -0
  303. package/dist/js/internal/components/showMore.mjs.map +7 -0
  304. package/dist/js/internal/components/slider.mjs +3 -3
  305. package/dist/js/internal/components/snackbar.mjs +2 -2
  306. package/dist/js/internal/components/swipeActions.mjs +9 -0
  307. package/dist/js/internal/components/swipeActions.mjs.map +7 -0
  308. package/dist/js/internal/components/tabs.mjs +3 -4
  309. package/dist/js/internal/components/timepicker.mjs +5 -4
  310. package/dist/js/internal/components/tooltip.mjs +3 -3
  311. package/dist/js/internal/components/treeSelect.mjs +14 -0
  312. package/dist/js/internal/components/treeSelect.mjs.map +7 -0
  313. package/dist/js/internal/components/treemapChart.mjs +10 -0
  314. package/dist/js/internal/components/treemapChart.mjs.map +7 -0
  315. package/dist/js/internal/core/component.mjs +6 -3
  316. package/dist/js/internal/core/formControl.mjs +12 -0
  317. package/dist/js/internal/core/formControl.mjs.map +7 -0
  318. package/dist/js/internal/core/imageURL.mjs +7 -0
  319. package/dist/js/internal/core/imageURL.mjs.map +7 -0
  320. package/dist/js/internal/core/spring.mjs +11 -0
  321. package/dist/js/internal/core/spring.mjs.map +7 -0
  322. package/dist/js/internal/core/utils.mjs +21 -3
  323. package/dist/js/internal/plugins/dockedDisplayPlugin.mjs +2 -2
  324. package/dist/js/internal/plugins/modalDisplayPlugin.mjs +13 -0
  325. package/dist/js/internal/plugins/modalDisplayPlugin.mjs.map +7 -0
  326. package/dist/js/modular.mjs +172 -69
  327. package/dist/types/behaviors/bottomSheets.d.ts +23 -5
  328. package/dist/types/behaviors/copy.d.ts +18 -0
  329. package/dist/types/behaviors/dataTables.d.ts +125 -0
  330. package/dist/types/behaviors/dialogs.d.ts +27 -1
  331. package/dist/types/behaviors/forms.d.ts +70 -4
  332. package/dist/types/behaviors/imageCompare.d.ts +13 -0
  333. package/dist/types/behaviors/lists.d.ts +12 -0
  334. package/dist/types/behaviors/paneResize.d.ts +29 -0
  335. package/dist/types/behaviors/sheetDrag.d.ts +18 -0
  336. package/dist/types/behaviors/sideSheets.d.ts +1 -1
  337. package/dist/types/behaviors/sortable.d.ts +28 -0
  338. package/dist/types/behaviors/theme.d.ts +22 -0
  339. package/dist/types/behaviors/tour.d.ts +36 -0
  340. package/dist/types/behaviors/transferList.d.ts +53 -0
  341. package/dist/types/components/appBar.d.ts +5 -6
  342. package/dist/types/components/autocomplete.d.ts +105 -20
  343. package/dist/types/components/backToTop.d.ts +36 -0
  344. package/dist/types/components/barChart.d.ts +3 -6
  345. package/dist/types/components/buttonGroup.d.ts +2 -4
  346. package/dist/types/components/buttons.d.ts +5 -5
  347. package/dist/types/components/cards.d.ts +3 -16
  348. package/dist/types/components/carousel.d.ts +16 -15
  349. package/dist/types/components/cascader.d.ts +130 -0
  350. package/dist/types/components/characterCounter.d.ts +2 -15
  351. package/dist/types/components/chips.d.ts +80 -19
  352. package/dist/types/components/colorPicker.d.ts +56 -0
  353. package/dist/types/components/columnChart.d.ts +23 -10
  354. package/dist/types/components/commandPalette.d.ts +11 -16
  355. package/dist/types/components/confetti.d.ts +2 -4
  356. package/dist/types/components/currencyInput.d.ts +60 -0
  357. package/dist/types/components/datepicker.d.ts +107 -56
  358. package/dist/types/components/expandingCard.d.ts +4 -6
  359. package/dist/types/components/funnelChart.d.ts +35 -0
  360. package/dist/types/components/heatmapChart.d.ts +42 -8
  361. package/dist/types/components/hoverCard.d.ts +59 -0
  362. package/dist/types/components/index.d.ts +16 -1
  363. package/dist/types/components/inputMask.d.ts +28 -0
  364. package/dist/types/components/keypad.d.ts +38 -6
  365. package/dist/types/components/lightbox.d.ts +14 -20
  366. package/dist/types/components/lineChart.d.ts +212 -12
  367. package/dist/types/components/loadingOverlay.d.ts +42 -0
  368. package/dist/types/components/mapView.d.ts +138 -27
  369. package/dist/types/components/menu.d.ts +74 -22
  370. package/dist/types/components/menubar.d.ts +37 -0
  371. package/dist/types/components/messageScroller.d.ts +2 -14
  372. package/dist/types/components/mixedChart.d.ts +15 -6
  373. package/dist/types/components/navigationRail.d.ts +16 -5
  374. package/dist/types/components/particles.d.ts +22 -5
  375. package/dist/types/components/pieChart.d.ts +33 -9
  376. package/dist/types/components/pullToRefresh.d.ts +80 -0
  377. package/dist/types/components/questionnaire.d.ts +58 -16
  378. package/dist/types/components/radarChart.d.ts +10 -6
  379. package/dist/types/components/radialChart.d.ts +58 -7
  380. package/dist/types/components/registry.d.ts +73 -3
  381. package/dist/types/components/richTextEditor.d.ts +45 -22
  382. package/dist/types/components/sankeyChart.d.ts +72 -0
  383. package/dist/types/components/scatterChart.d.ts +102 -0
  384. package/dist/types/components/scrollspy.d.ts +3 -5
  385. package/dist/types/components/select.d.ts +44 -33
  386. package/dist/types/components/showMore.d.ts +53 -0
  387. package/dist/types/components/slider.d.ts +2 -15
  388. package/dist/types/components/snackbar.d.ts +68 -1
  389. package/dist/types/components/swipeActions.d.ts +81 -0
  390. package/dist/types/components/tabs.d.ts +92 -30
  391. package/dist/types/components/timepicker.d.ts +128 -27
  392. package/dist/types/components/tooltip.d.ts +57 -21
  393. package/dist/types/components/treeSelect.d.ts +106 -0
  394. package/dist/types/components/treemapChart.d.ts +56 -0
  395. package/dist/types/core/component.d.ts +49 -25
  396. package/dist/types/core/formControl.d.ts +21 -0
  397. package/dist/types/core/imageURL.d.ts +2 -0
  398. package/dist/types/core/spring.d.ts +20 -0
  399. package/dist/types/core/utils.d.ts +123 -72
  400. package/dist/types/modular.d.ts +33 -1
  401. package/dist/types/plugins/dockedDisplayPlugin.d.ts +10 -8
  402. package/dist/types/plugins/modalDisplayPlugin.d.ts +39 -0
  403. package/package.json +17 -13
  404. package/src/sass/README.md +27 -18
  405. package/src/sass/abstracts/_elevation.scss +13 -7
  406. package/src/sass/abstracts/_index.scss +1 -0
  407. package/src/sass/abstracts/_mixins.scss +864 -78
  408. package/src/sass/abstracts/_spring.scss +63 -0
  409. package/src/sass/abstracts/_variables.scss +64 -21
  410. package/src/sass/base/_fonts.scss +61 -48
  411. package/src/sass/base/_global.scss +104 -24
  412. package/src/sass/base/_index.scss +2 -0
  413. package/src/sass/base/_normalize.scss +59 -114
  414. package/src/sass/base/_print.scss +21 -0
  415. package/src/sass/base/_prose.scss +68 -0
  416. package/src/sass/base/_typography.scss +9 -5
  417. package/src/sass/components/_accordion.scss +10 -19
  418. package/src/sass/components/_alert.scss +102 -0
  419. package/src/sass/components/_aura.scss +9 -3
  420. package/src/sass/components/_avatar.scss +3 -3
  421. package/src/sass/components/_back-to-top.scss +38 -0
  422. package/src/sass/components/_badges.scss +6 -5
  423. package/src/sass/components/_bar-chart.scss +31 -90
  424. package/src/sass/components/_bottom-sheet.scss +51 -16
  425. package/src/sass/components/_breadcrumb.scss +8 -7
  426. package/src/sass/components/_button-groups.scss +30 -63
  427. package/src/sass/components/_buttons.scss +137 -94
  428. package/src/sass/components/_calendar.scss +244 -0
  429. package/src/sass/components/_cards.scss +36 -44
  430. package/src/sass/components/_carousel.scss +37 -113
  431. package/src/sass/components/_cascader.scss +131 -0
  432. package/src/sass/components/_chips.scss +36 -46
  433. package/src/sass/components/_column-chart.scss +15 -26
  434. package/src/sass/components/_command-palette.scss +4 -7
  435. package/src/sass/components/_confetti.scss +1 -4
  436. package/src/sass/components/_countdown.scss +1 -1
  437. package/src/sass/components/_data-table.scss +172 -25
  438. package/src/sass/components/_datepicker.scss +54 -40
  439. package/src/sass/components/_description-list.scss +85 -0
  440. package/src/sass/components/_dialog.scss +48 -55
  441. package/src/sass/components/_docked-display.scss +1 -3
  442. package/src/sass/components/_drag-handle.scss +16 -20
  443. package/src/sass/components/_expanding-card.scss +21 -14
  444. package/src/sass/components/_fab-menu.scss +43 -39
  445. package/src/sass/components/_funnel-chart.scss +63 -0
  446. package/src/sass/components/_heatmap-chart.scss +114 -29
  447. package/src/sass/components/_icon-buttons.scss +8 -11
  448. package/src/sass/components/_icons-material-design.scss +2 -2
  449. package/src/sass/components/_image-compare.scss +108 -0
  450. package/src/sass/components/_index.scss +20 -0
  451. package/src/sass/components/_keypad.scss +39 -19
  452. package/src/sass/components/_kpi.scss +6 -11
  453. package/src/sass/components/_lightbox.scss +24 -13
  454. package/src/sass/components/_line-chart.scss +9 -63
  455. package/src/sass/components/_list.scss +59 -14
  456. package/src/sass/components/_loading-indicator.scss +1 -0
  457. package/src/sass/components/_loading-overlay.scss +105 -0
  458. package/src/sass/components/_map.scss +37 -11
  459. package/src/sass/components/_marquee.scss +4 -3
  460. package/src/sass/components/_mega-menu.scss +128 -0
  461. package/src/sass/components/_menu.scss +146 -127
  462. package/src/sass/components/_menubar.scss +47 -0
  463. package/src/sass/components/_message-scroller.scss +2 -2
  464. package/src/sass/components/_message.scss +3 -3
  465. package/src/sass/components/_mixed-chart.scss +27 -35
  466. package/src/sass/components/_modal-display.scss +21 -0
  467. package/src/sass/components/_navbar.scss +45 -36
  468. package/src/sass/components/_navigation-bar.scss +12 -77
  469. package/src/sass/components/_navigation-rail.scss +161 -92
  470. package/src/sass/components/_org-chart.scss +192 -0
  471. package/src/sass/components/_page-footer.scss +2 -4
  472. package/src/sass/components/_pagination.scss +9 -27
  473. package/src/sass/components/_panes.scss +35 -42
  474. package/src/sass/components/_particles.scss +1 -4
  475. package/src/sass/components/_pie-chart.scss +86 -68
  476. package/src/sass/components/_popover.scss +18 -5
  477. package/src/sass/components/_progress.scss +183 -44
  478. package/src/sass/components/_pull-to-refresh.scss +90 -0
  479. package/src/sass/components/_questionnaire.scss +74 -3
  480. package/src/sass/components/_radar-chart.scss +40 -42
  481. package/src/sass/components/_radial-chart.scss +108 -46
  482. package/src/sass/components/_rich-text-editor.scss +2 -2
  483. package/src/sass/components/_sankey-chart.scss +91 -0
  484. package/src/sass/components/_scatter-chart.scss +144 -0
  485. package/src/sass/components/_scrim.scss +0 -2
  486. package/src/sass/components/_scrollspy.scss +0 -2
  487. package/src/sass/components/_search.scss +27 -26
  488. package/src/sass/components/_show-more.scss +8 -0
  489. package/src/sass/components/_side-sheet.scss +32 -51
  490. package/src/sass/components/_skeleton.scss +26 -19
  491. package/src/sass/components/_snackbar.scss +25 -21
  492. package/src/sass/components/_split-button.scss +5 -5
  493. package/src/sass/components/_stat.scss +3 -8
  494. package/src/sass/components/_stepper.scss +1 -1
  495. package/src/sass/components/_swipe-actions.scss +71 -0
  496. package/src/sass/components/_table_of_contents.scss +1 -3
  497. package/src/sass/components/_tabs.scss +49 -46
  498. package/src/sass/components/_timeline.scss +12 -12
  499. package/src/sass/components/_timepicker.scss +111 -79
  500. package/src/sass/components/_toolbar.scss +36 -47
  501. package/src/sass/components/_tooltip.scss +25 -12
  502. package/src/sass/components/_tour.scss +89 -0
  503. package/src/sass/components/_transfer-list.scss +73 -0
  504. package/src/sass/components/_transitions.scss +4 -4
  505. package/src/sass/components/_tree.scss +7 -32
  506. package/src/sass/components/_treemap-chart.scss +98 -0
  507. package/src/sass/components/forms/_checkboxes.scss +107 -44
  508. package/src/sass/components/forms/_color-picker.scss +135 -0
  509. package/src/sass/components/forms/_color-swatches.scss +85 -0
  510. package/src/sass/components/forms/_drop-zone.scss +16 -13
  511. package/src/sass/components/forms/_fieldset.scss +4 -7
  512. package/src/sass/components/forms/_file-input.scss +12 -8
  513. package/src/sass/components/forms/_index.scss +3 -1
  514. package/src/sass/components/forms/_input-fields.scss +271 -90
  515. package/src/sass/components/forms/_radio-buttons.scss +34 -117
  516. package/src/sass/components/forms/_rating.scss +2 -32
  517. package/src/sass/components/forms/_select.scss +198 -20
  518. package/src/sass/components/forms/_slider.scss +92 -98
  519. package/src/sass/components/forms/_switches.scss +62 -180
  520. package/src/sass/custom.scss +10 -1
  521. package/src/sass/expressive.scss +3 -63
  522. package/src/sass/tokens/_contrast.scss +94 -0
  523. package/src/sass/tokens/_elevation.scss +16 -0
  524. package/src/sass/tokens/_index.scss +5 -0
  525. package/src/sass/tokens/_motion.scss +109 -0
  526. package/src/sass/tokens/_reference.scss +72 -141
  527. package/src/sass/tokens/_shape.scss +38 -0
  528. package/src/sass/tokens/_stacking.scss +27 -0
  529. package/src/sass/tokens/_state.scss +0 -2
  530. package/src/sass/tokens/_theme.scss +10 -1
  531. package/src/sass/tokens/_vibrant.scss +2 -5
  532. package/src/sass/utilities/_defer-render.scss +17 -0
  533. package/src/sass/utilities/_helpers.scss +184 -27
  534. package/src/sass/utilities/_index.scss +1 -0
  535. package/src/sass/utilities/_scroll-area.scss +0 -2
  536. package/src/sass/utilities/_spacing.scss +52 -34
  537. package/src/sass/utilities/_typescale.scss +8 -1
  538. package/src/sass/utilities/_visibility.scss +46 -77
  539. package/src/sass/utilities/_z-depth.scss +7 -4
  540. package/dist/js/chunks/chunk-33QVDDGR.mjs +0 -270
  541. package/dist/js/chunks/chunk-33QVDDGR.mjs.map +0 -7
  542. package/dist/js/chunks/chunk-45FER6RI.mjs +0 -59
  543. package/dist/js/chunks/chunk-45FER6RI.mjs.map +0 -7
  544. package/dist/js/chunks/chunk-5CEAOLUA.mjs.map +0 -7
  545. package/dist/js/chunks/chunk-6VATUZC6.mjs +0 -295
  546. package/dist/js/chunks/chunk-6VATUZC6.mjs.map +0 -7
  547. package/dist/js/chunks/chunk-74MXKKLN.mjs.map +0 -7
  548. package/dist/js/chunks/chunk-AIURVCG6.mjs +0 -55
  549. package/dist/js/chunks/chunk-AIURVCG6.mjs.map +0 -7
  550. package/dist/js/chunks/chunk-BGZLF6JZ.mjs.map +0 -7
  551. package/dist/js/chunks/chunk-C6CHEWYP.mjs.map +0 -7
  552. package/dist/js/chunks/chunk-CK2XCICY.mjs.map +0 -7
  553. package/dist/js/chunks/chunk-CXXM2L4F.mjs +0 -344
  554. package/dist/js/chunks/chunk-CXXM2L4F.mjs.map +0 -7
  555. package/dist/js/chunks/chunk-DXGRXYYL.mjs.map +0 -7
  556. package/dist/js/chunks/chunk-FM5CZOUB.mjs.map +0 -7
  557. package/dist/js/chunks/chunk-GJL6GCIU.mjs.map +0 -7
  558. package/dist/js/chunks/chunk-K3HZMFMD.mjs +0 -135
  559. package/dist/js/chunks/chunk-K3HZMFMD.mjs.map +0 -7
  560. package/dist/js/chunks/chunk-KHXZ2A4K.mjs.map +0 -7
  561. package/dist/js/chunks/chunk-KQACNQ22.mjs +0 -7
  562. package/dist/js/chunks/chunk-KQACNQ22.mjs.map +0 -7
  563. package/dist/js/chunks/chunk-KUFHW3DS.mjs.map +0 -7
  564. package/dist/js/chunks/chunk-KVJAVDBC.mjs.map +0 -7
  565. package/dist/js/chunks/chunk-L27Q6ZMI.mjs.map +0 -7
  566. package/dist/js/chunks/chunk-LQWUDNHZ.mjs.map +0 -7
  567. package/dist/js/chunks/chunk-M372EDXD.mjs +0 -322
  568. package/dist/js/chunks/chunk-M372EDXD.mjs.map +0 -7
  569. package/dist/js/chunks/chunk-M3MURWMB.mjs +0 -82
  570. package/dist/js/chunks/chunk-M3MURWMB.mjs.map +0 -7
  571. package/dist/js/chunks/chunk-NUHMOAOY.mjs.map +0 -7
  572. package/dist/js/chunks/chunk-OWG3LMUL.mjs +0 -169
  573. package/dist/js/chunks/chunk-OWG3LMUL.mjs.map +0 -7
  574. package/dist/js/chunks/chunk-PD6HYHAE.mjs +0 -48
  575. package/dist/js/chunks/chunk-PD6HYHAE.mjs.map +0 -7
  576. package/dist/js/chunks/chunk-PDG64UHF.mjs.map +0 -7
  577. package/dist/js/chunks/chunk-PO3AXVR3.mjs +0 -546
  578. package/dist/js/chunks/chunk-PO3AXVR3.mjs.map +0 -7
  579. package/dist/js/chunks/chunk-QYGK36OG.mjs +0 -181
  580. package/dist/js/chunks/chunk-QYGK36OG.mjs.map +0 -7
  581. package/dist/js/chunks/chunk-SFI2U4YW.mjs.map +0 -7
  582. package/dist/js/chunks/chunk-SMY7GJSS.mjs.map +0 -7
  583. package/dist/js/chunks/chunk-TCCA2HDG.mjs +0 -414
  584. package/dist/js/chunks/chunk-TCCA2HDG.mjs.map +0 -7
  585. package/dist/js/chunks/chunk-TSZYSW7F.mjs.map +0 -7
  586. package/dist/js/chunks/chunk-UAZSDUVP.mjs +0 -90
  587. package/dist/js/chunks/chunk-UAZSDUVP.mjs.map +0 -7
  588. package/dist/js/chunks/chunk-UBRZZWRA.mjs +0 -127
  589. package/dist/js/chunks/chunk-UBRZZWRA.mjs.map +0 -7
  590. package/dist/js/chunks/chunk-UCOE7ZDL.mjs +0 -287
  591. package/dist/js/chunks/chunk-UCOE7ZDL.mjs.map +0 -7
  592. package/dist/js/chunks/chunk-UETTGDLI.mjs.map +0 -7
  593. package/dist/js/chunks/chunk-UNCRDLP6.mjs +0 -136
  594. package/dist/js/chunks/chunk-UNCRDLP6.mjs.map +0 -7
  595. package/dist/js/chunks/chunk-VGNYF6FB.mjs.map +0 -7
  596. package/dist/js/chunks/chunk-VGPGBNGL.mjs +0 -68
  597. package/dist/js/chunks/chunk-VGPGBNGL.mjs.map +0 -7
  598. package/dist/js/chunks/chunk-VKAUVTQY.mjs +0 -1
  599. package/dist/js/chunks/chunk-VM4FTS7L.mjs +0 -48
  600. package/dist/js/chunks/chunk-VM4FTS7L.mjs.map +0 -7
  601. package/dist/js/chunks/chunk-WDK4T63U.mjs.map +0 -7
  602. package/dist/js/chunks/chunk-WOCCTVUF.mjs +0 -185
  603. package/dist/js/chunks/chunk-WOCCTVUF.mjs.map +0 -7
  604. package/dist/js/chunks/chunk-WQYN5L4E.mjs +0 -107
  605. package/dist/js/chunks/chunk-WQYN5L4E.mjs.map +0 -7
  606. package/dist/js/chunks/chunk-X4ISMKE2.mjs.map +0 -7
  607. package/dist/js/chunks/chunk-XAEAEHIX.mjs.map +0 -7
  608. package/dist/js/chunks/chunk-ZX6M7SWO.mjs.map +0 -7
  609. /package/dist/js/chunks/{chunk-VKAUVTQY.mjs.map → chunk-GNRSYMVH.mjs.map} +0 -0
@@ -6,8 +6,8 @@
6
6
  // elements, so everything below has to survive on any of them - hence the
7
7
  // resets.
8
8
  .chip {
9
- --font-size: 14px;
10
- --font-size-icon: 18px;
9
+ --font-size: var(--md-sys-typescale-label-large-font-size);
10
+ --font-size-icon: #{rem(18px)};
11
11
  --padding: 8px;
12
12
 
13
13
  color: var(--md-sys-color-on-surface-variant);
@@ -19,18 +19,16 @@
19
19
  min-width: 0;
20
20
  gap: 8px;
21
21
  margin: 0;
22
- min-height: 32px;
22
+ min-height: rem(32px);
23
23
  height: auto;
24
- // 4dp keeps wrapped lines off the edges. It is also exactly what a 24dp
25
- // avatar or delete target leaves in the 32dp container, so a chip that fits
26
- // on one line keeps its height.
24
+ // Keep a 4px inset for wrapped lines as the content boxes grow.
27
25
  padding-block: 4px;
28
- padding-left: var(--padding);
29
- padding-right: var(--padding);
30
- font-size: var(--font-size);
26
+ padding-left: var(--md-comp-chip-padding, var(--padding));
27
+ padding-right: var(--md-comp-chip-padding, var(--padding));
28
+ font-size: var(--md-comp-chip-label-size, var(--font-size));
31
29
  line-height: 1.5;
32
30
  font-weight: 500;
33
- border-radius: 8px;
31
+ border-radius: var(--md-sys-shape-corner-small);
34
32
  align-items: center;
35
33
  user-select: none;
36
34
  vertical-align: top;
@@ -41,13 +39,12 @@
41
39
  font-family: inherit;
42
40
  text-align: inherit;
43
41
 
44
- // Selected. `.active` is the pre-0.8.0 name and still works; `:focus` used
45
- // to stand in for selection here, which meant a chip could not show focus
46
- // and selection as the different things they are.
47
- &.selected,
48
- &.active {
42
+ // Selected. `:focus` used to stand in for selection here, which meant a
43
+ // chip could not show focus and selection as the different things they are.
44
+ &.selected {
49
45
  background-color: var(--md-sys-color-secondary-container);
50
46
  color: var(--md-sys-color-on-secondary-container);
47
+ @include forced-colors-selected;
51
48
  }
52
49
 
53
50
  @include focus-visible();
@@ -58,11 +55,7 @@
58
55
  cursor: pointer;
59
56
 
60
57
  &:hover {
61
- background-color: color-mix(
62
- in oklab,
63
- var(--md-sys-color-on-surface-variant) state-opacity("hover"),
64
- var(--md-sys-color-surface-container-low)
65
- );
58
+ background-color: state-layer(var(--md-sys-color-on-surface-variant), "hover", var(--md-sys-color-surface-container-low));
66
59
  }
67
60
  }
68
61
 
@@ -75,6 +68,7 @@
75
68
  .chip-input:checked + .chip {
76
69
  background-color: var(--md-sys-color-secondary-container);
77
70
  color: var(--md-sys-color-on-secondary-container);
71
+ @include forced-colors-selected;
78
72
  }
79
73
 
80
74
  .chip-input:focus-visible + .chip {
@@ -91,14 +85,14 @@
91
85
  .chip > img {
92
86
  flex-shrink: 0;
93
87
  margin: 0;
94
- width: 24px;
95
- height: 24px;
88
+ width: rem(24px);
89
+ height: rem(24px);
96
90
  object-fit: cover;
97
- border-radius: 12px;
91
+ border-radius: var(--md-sys-shape-corner-medium);
98
92
  }
99
93
 
100
- .chip > :is(.material-symbols, .material-symbols-outlined, .material-symbols-rounded, .material-symbols-sharp, .material-icons) {
101
- font-size: var(--font-size-icon);
94
+ .chip > :is(.material-symbols, .material-symbols-outlined, .material-symbols-rounded, .material-symbols-sharp) {
95
+ font-size: var(--md-comp-chip-icon-size, var(--font-size-icon));
102
96
  color: var(--md-sys-color-on-surface-variant);
103
97
  }
104
98
 
@@ -106,8 +100,8 @@
106
100
  .chip .close {
107
101
  flex-shrink: 0;
108
102
  border-radius: 50%;
109
- height: 24px;
110
- width: 24px;
103
+ height: rem(24px);
104
+ width: rem(24px);
111
105
  padding: 0;
112
106
  display: grid;
113
107
  justify-content: center;
@@ -131,7 +125,7 @@
131
125
  }
132
126
 
133
127
  .chip .close:hover {
134
- background-color: color-mix(in oklab, var(--md-sys-color-on-surface-variant) state-opacity("hover"), transparent);
128
+ background-color: state-layer(var(--md-sys-color-on-surface-variant), "hover");
135
129
  }
136
130
 
137
131
  //--------------------------
@@ -145,7 +139,15 @@
145
139
  margin: 0 0 8px 0;
146
140
  padding: 4px;
147
141
  outline: none;
148
- transition: all .3s;
142
+ // An effect, not a move: the fast effects spring, which never overshoots.
143
+ transition:
144
+ border-color var(--md-sys-motion-spring-fast-effects-duration) var(--md-sys-motion-spring-fast-effects),
145
+ border-width var(--md-sys-motion-spring-fast-effects-duration) var(--md-sys-motion-spring-fast-effects),
146
+ box-shadow var(--md-sys-motion-spring-fast-effects-duration) var(--md-sys-motion-spring-fast-effects);
147
+
148
+ @media (prefers-reduced-motion: reduce) {
149
+ transition: none;
150
+ }
149
151
 
150
152
  &.focus {
151
153
  border-bottom: 1px solid var(--md-sys-color-primary);
@@ -163,16 +165,16 @@
163
165
  input:not([type]):not(.browser-default).input {
164
166
  background: none;
165
167
  border: 0;
166
- color: var(--md-sys-color-on-background);
168
+ color: var(--md-sys-color-on-surface);
167
169
  display: inline-block;
168
- font-size: 16px;
169
- height: 32px;
170
+ font-size: rem(16px);
171
+ height: rem(32px);
170
172
  outline: 0;
171
173
  margin: 0;
172
174
  padding: 0;
173
175
  width: fit-content;
174
- min-width: 100px;
175
- max-width: 200px;
176
+ min-width: rem(100px);
177
+ max-width: rem(200px);
176
178
 
177
179
  &:focus {
178
180
  border: 0;
@@ -187,18 +189,6 @@
187
189
  }
188
190
  }
189
191
 
190
- // Form prefix
191
- .prefix ~ .chips {
192
- margin-left: 3rem;
193
- width: calc(100% - 3rem);
194
- }
195
-
196
- // Form suffix
197
- .suffix ~ .chips {
198
- margin-right: 3rem;
199
- width: calc(100% - 3rem);
200
- }
201
-
202
192
  .chips:empty ~ label {
203
193
  font-size: 0.8rem;
204
194
  transform: translateY(-140%);
@@ -11,8 +11,10 @@
11
11
  //
12
12
  // Modifiers: .stacked draws one column per row with each series on the
13
13
  // ones before it, .fade fades each column toward its base, .track draws a
14
- // full-height track behind each row's columns, .sparkline is a small chart
15
- // with no axis, grid, legend or tooltip.
14
+ // full-height track behind each row's columns, .axis labels the y axis at
15
+ // round values with a grid line at each, .sparkline is a small chart
16
+ // with no axis, grid, legend or tooltip. A series header with class
17
+ // "range" reads cells such as "12–28" and floats a column between the ends.
16
18
  //
17
19
  // Tokens:
18
20
  // --md-comp-column-chart-height 240px (sparkline 48px)
@@ -20,14 +22,15 @@
20
22
  // --md-comp-column-chart-shape 4px, the column's end radius
21
23
  // --md-comp-column-chart-track-color surface-container-highest
22
24
  // --md-comp-column-chart-grid-color outline-variant
25
+ // --md-comp-column-chart-axis-width 48px, room for the .axis labels
23
26
  // --md-comp-column-chart-color-1..4 primary, tertiary, secondary,
24
27
  // on-surface-variant
25
28
 
26
- @include chart("column-chart");
29
+ @include chart("column-chart", $cursor: band);
30
+ @include chart-axis("column-chart");
27
31
 
28
32
  .column-chart {
29
33
  --md-comp-column-chart-column-width: 60%;
30
- --md-comp-column-chart-shape: 4px;
31
34
  --md-comp-column-chart-track-color: var(--md-sys-color-surface-container-highest);
32
35
  }
33
36
 
@@ -63,17 +66,14 @@
63
66
  &.negative {
64
67
  --column-chart-ends: var(--column-chart-base) var(--column-chart-base) var(--column-chart-tip) var(--column-chart-tip);
65
68
  }
66
- }
67
-
68
- @media (prefers-reduced-motion: no-preference) {
69
- > div > span {
70
- transition: clip-path 400ms cubic-bezier(0.2, 0, 0, 1);
71
69
 
72
- @starting-style {
73
- clip-path: inset(var(--zero, 100%) 0 calc(100% - var(--zero, 100%)) round var(--column-chart-ends));
74
- }
70
+ // A range floats, so both its ends are tips.
71
+ &.floating {
72
+ --column-chart-base: var(--column-chart-tip);
75
73
  }
76
74
  }
75
+
76
+ @include chart-column-motion;
77
77
  }
78
78
 
79
79
  // One column per row, rounded only at the ends of the whole stack.
@@ -110,25 +110,14 @@
110
110
  }
111
111
  }
112
112
 
113
- // A band behind the highlighted row's columns.
114
- .column-chart-plot {
115
- isolation: isolate;
116
- }
117
-
118
- .column-chart-cursor {
119
- z-index: -1;
120
- width: calc(100% / var(--rows, 1));
121
- border-radius: var(--md-comp-column-chart-shape);
122
- background-color: color-mix(in oklab, var(--md-sys-color-on-surface) state-opacity("hover"), transparent);
123
- translate: -50% 0;
124
- }
125
-
126
113
  @media (forced-colors: active) {
127
114
  .column-chart-columns > div > span {
128
115
  forced-color-adjust: none;
129
116
  }
130
117
 
131
- .column-chart-cursor {
118
+ // The track is a fill, which forced colors paint as Canvas.
119
+ .column-chart.track .column-chart-columns > div {
132
120
  outline: 1px solid CanvasText;
121
+ outline-offset: -1px;
133
122
  }
134
123
  }
@@ -54,7 +54,7 @@ dialog.command-palette {
54
54
 
55
55
  > li {
56
56
  margin: 0;
57
- border-radius: 12px;
57
+ border-radius: var(--md-sys-shape-corner-medium);
58
58
  color: var(--md-sys-color-on-surface);
59
59
  }
60
60
 
@@ -87,7 +87,7 @@ dialog.command-palette {
87
87
 
88
88
  > #{$icon}:first-child {
89
89
  flex: none;
90
- font-size: 20px;
90
+ font-size: rem(20px);
91
91
  color: var(--md-sys-color-on-surface-variant);
92
92
  }
93
93
 
@@ -132,9 +132,6 @@ dialog.command-palette {
132
132
  }
133
133
  }
134
134
 
135
- @media (forced-colors: active) {
136
- dialog.command-palette > :is(ul, ol) > li.active {
137
- outline: 2px solid Highlight;
138
- outline-offset: -2px;
139
- }
135
+ dialog.command-palette > :is(ul, ol) > li.active {
136
+ @include forced-colors-selected;
140
137
  }
@@ -6,9 +6,6 @@
6
6
  // styles its own canvas inline.
7
7
 
8
8
  canvas.confetti {
9
- position: absolute;
10
- inset: 0;
11
- width: 100%;
12
- height: 100%;
9
+ @include fill-parent;
13
10
  pointer-events: none;
14
11
  }
@@ -22,7 +22,7 @@
22
22
  // --md-comp-countdown-duration roll duration 400ms
23
23
  // --md-comp-countdown-easing roll easing cubic-bezier(0.2, 0, 0, 1)
24
24
 
25
- $_timing: var(--md-comp-countdown-duration, 400ms) var(--md-comp-countdown-easing, cubic-bezier(0.2, 0, 0, 1));
25
+ $_timing: var(--md-comp-countdown-duration, var(--md-sys-motion-duration-medium4)) var(--md-comp-countdown-easing, var(--md-sys-motion-easing-standard));
26
26
  $_tens: "";
27
27
  $_ones: "";
28
28
  @for $i from 0 through 99 {
@@ -12,7 +12,25 @@
12
12
  // Sorting and selection are page state written into the markup:
13
13
  // th[aria-sort] a <button> in the header cell shows the sort arrow
14
14
  // row checkbox a checked box in the first cell selects the row
15
- // The framework only draws them; the page reorders rows.
15
+ // [aria-expanded] a button in a row shows or hides the
16
+ // tr.data-table-detail right after it; a button with
17
+ // aria-haspopup (a row's menu, select or combobox) is
18
+ // not a disclosure and is left alone
19
+ // The framework draws them. With data-sort on the wrapper it also reorders
20
+ // the rows and moves aria-sort, and a checkbox in the first header cell
21
+ // selects every row (behaviors/dataTables.ts). The page flips
22
+ // aria-expanded. A .data-table-actions bar just before the wrapper joins its
23
+ // top edge and takes the selected color while any row is selected.
24
+ //
25
+ // .sticky-column on the wrapper pins each row's first cell to its
26
+ // inline-start edge while the other columns scroll sideways. When the first
27
+ // column holds checkboxes, the name cell after it is pinned too, so the
28
+ // checkbox column takes a fixed width that offsets the second cell. Detail
29
+ // rows and the caption scroll with the table.
30
+ //
31
+ // A <button class="drag-handle"> ending a header cell resizes its column by
32
+ // pointer, keyboard or click (behaviors/dataTables.ts). It sits on the cell's
33
+ // inline-end edge and is not a sort control.
16
34
  //
17
35
  // Tokens:
18
36
  // --md-comp-data-table-container-color surface
@@ -22,15 +40,21 @@
22
40
  // --md-comp-data-table-row-height 52px / dense 40px
23
41
  // --md-comp-data-table-cell-padding 16px
24
42
  // --md-comp-data-table-selected-container-color secondary-container
43
+ // --md-comp-data-table-detail-container-color surface-container-low
44
+ // --md-comp-data-table-checkbox-column-width cell padding + 18px box
45
+ // --md-comp-data-table-column-min-width 48px, the narrowest resize
25
46
 
26
47
  .data-table {
27
48
  --md-comp-data-table-container-color: var(--md-sys-color-surface);
28
- --md-comp-data-table-shape: 12px;
49
+ --md-comp-data-table-shape: var(--md-sys-shape-corner-medium);
29
50
  --md-comp-data-table-outline-color: var(--md-sys-color-outline-variant);
30
51
  --md-comp-data-table-header-height: 56px;
31
52
  --md-comp-data-table-row-height: 52px;
32
53
  --md-comp-data-table-cell-padding: 16px;
33
54
  --md-comp-data-table-selected-container-color: var(--md-sys-color-secondary-container);
55
+ --md-comp-data-table-detail-container-color: var(--md-sys-color-surface-container-low);
56
+ --md-comp-data-table-checkbox-column-width: calc(var(--md-comp-data-table-cell-padding) + 18px);
57
+ --md-comp-data-table-column-min-width: #{rem(48px)};
34
58
 
35
59
  box-sizing: border-box;
36
60
  max-width: 100%;
@@ -102,31 +126,115 @@
102
126
  font-variant-numeric: tabular-nums;
103
127
  }
104
128
 
129
+ // --_row carries the row's state color to its cells, so a pinned cell can
130
+ // paint it over its own opaque fill.
105
131
  > table > tbody > tr {
106
- transition: background-color 0.2s ease-out;
132
+ background-color: var(--_row, transparent);
133
+ transition: background-color var(--md-sys-motion-duration-short4) ease-out;
107
134
 
108
135
  &:hover {
109
- background-color: color-mix(
110
- in oklab,
111
- var(--md-sys-color-on-surface) state-opacity("hover"),
112
- transparent
113
- );
136
+ --_row: #{state-layer(var(--md-sys-color-on-surface), "hover")};
114
137
  }
115
138
 
116
139
  &:has(> :first-child input[type="checkbox"]:checked) {
117
- background-color: var(--md-comp-data-table-selected-container-color);
140
+ --_row: var(--md-comp-data-table-selected-container-color);
118
141
  color: var(--md-sys-color-on-secondary-container);
119
142
  }
120
143
  }
121
144
 
145
+ // Row expansion. The detail row shows only while the row before it holds an
146
+ // expanded toggle, so the page flips one attribute and nothing else.
147
+ > table > tbody > tr:not(:has(button[aria-expanded="true"]:not([aria-haspopup]))) + tr.data-table-detail {
148
+ display: none;
149
+ }
150
+
151
+ // Keep filtering and paging separate from the author's hidden attribute.
152
+ > table > tbody > tr:is([data-table-filter-hidden], [data-table-page-hidden]) {
153
+ display: none;
154
+ }
155
+
156
+ > table > tbody > tr.data-table-detail > td {
157
+ padding-block: 16px;
158
+ background-color: var(--md-comp-data-table-detail-container-color);
159
+ }
160
+
161
+ td button[aria-expanded]:not([aria-haspopup]) > #{$icon} {
162
+ transition: transform var(--md-sys-motion-duration-short4) ease-out;
163
+
164
+ // Its own reset: an author's motion duration override outlasts the
165
+ // layered token zeroing.
166
+ @media (prefers-reduced-motion: reduce) {
167
+ transition: none;
168
+ }
169
+ }
170
+
171
+ td button[aria-expanded="true"]:not([aria-haspopup]) > #{$icon} {
172
+ transform: rotate(180deg);
173
+ }
174
+
122
175
  // A checkbox cell hugs its box rather than taking a text column's width.
123
176
  :is(th, td):has(> label > input[type="checkbox"]:only-child) {
124
177
  width: 1px;
125
178
  padding-inline-end: 0;
126
179
  }
127
180
 
181
+ // Sticky first column. Pinned body cells stack above scrolled body cells,
182
+ // and the pinned header cells above the scrolled header cells.
183
+ &.sticky-column {
184
+ > table > * > tr:where(:not(.data-table-detail)) > :first-child {
185
+ position: sticky;
186
+ inset-inline-start: 0;
187
+ z-index: 1;
188
+ border-inline-end: 1px solid var(--md-comp-data-table-outline-color);
189
+ // ponytail: the row color jumps here while the rest of the row fades;
190
+ // a registered @property would let it transition too.
191
+ background: linear-gradient(var(--_row, transparent), var(--_row, transparent)) var(--md-comp-data-table-container-color);
192
+ }
193
+
194
+ > table > thead > tr > :first-child {
195
+ z-index: 2;
196
+ }
197
+ }
198
+
199
+ &.sticky-column:has(> table > * > tr > :first-child > label > input[type="checkbox"]:only-child) {
200
+ > table > * > tr:where(:not(.data-table-detail)) > :first-child {
201
+ width: var(--md-comp-data-table-checkbox-column-width);
202
+ padding-inline-end: 0;
203
+ border-inline-end: 0;
204
+ }
205
+
206
+ > table > * > tr:where(:not(.data-table-detail)) > :nth-child(2) {
207
+ position: sticky;
208
+ inset-inline-start: var(--md-comp-data-table-checkbox-column-width);
209
+ z-index: 1;
210
+ border-inline-end: 1px solid var(--md-comp-data-table-outline-color);
211
+ background: linear-gradient(var(--_row, transparent), var(--_row, transparent)) var(--md-comp-data-table-container-color);
212
+ }
213
+
214
+ > table > thead > tr > :nth-child(2) {
215
+ z-index: 2;
216
+ }
217
+ }
218
+
219
+ // A resizable column's handle. Header cells are sticky, so they hold it.
220
+ // The end padding clears the handle's 24px hit area, so end-aligned
221
+ // text never runs under it.
222
+ th:has(> button.drag-handle:last-child) {
223
+ min-inline-size: var(--md-comp-data-table-column-min-width);
224
+ padding-inline-end: max(var(--md-comp-data-table-cell-padding), 24px);
225
+ }
226
+
227
+ th > button.drag-handle:last-child {
228
+ position: absolute;
229
+ inset-block: 0;
230
+ inset-inline-end: 0;
231
+ block-size: auto;
232
+ cursor: col-resize;
233
+ touch-action: none;
234
+ }
235
+
128
236
  // The sort control fills the header text and carries a trailing arrow.
129
- th > button {
237
+ th > button:where(:not(.drag-handle)) {
130
238
  display: inline-flex;
131
239
  align-items: center;
132
240
  gap: 4px;
@@ -134,7 +242,7 @@
134
242
  margin: 0;
135
243
  padding: 0;
136
244
  border: 0;
137
- border-radius: 4px;
245
+ border-radius: var(--md-sys-shape-corner-extra-small);
138
246
  background: none;
139
247
  color: inherit;
140
248
  font: inherit;
@@ -145,14 +253,13 @@
145
253
  @include focus-visible;
146
254
 
147
255
  &::after {
148
- content: "";
149
- flex: none;
150
- width: 18px;
151
- height: 18px;
152
- background-color: currentColor;
153
- mask: $trend-arrow center / 18px no-repeat;
256
+ @include trend-arrow;
154
257
  opacity: 0;
155
- transition: opacity 0.2s ease-out, transform 0.2s ease-out;
258
+ transition: opacity var(--md-sys-motion-duration-short4) ease-out, transform var(--md-sys-motion-duration-short4) ease-out;
259
+
260
+ @media (prefers-reduced-motion: reduce) {
261
+ transition: none;
262
+ }
156
263
  }
157
264
 
158
265
  &:hover::after {
@@ -161,26 +268,66 @@
161
268
  }
162
269
 
163
270
  // Numbers line up on their end edge, so the arrow leads their label.
164
- th.numeric > button {
271
+ th.numeric > button:where(:not(.drag-handle)) {
165
272
  flex-direction: row-reverse;
166
273
  }
167
274
 
168
275
  th:is([aria-sort="ascending"], [aria-sort="descending"]) {
169
276
  color: var(--md-sys-color-on-surface);
170
277
 
171
- > button::after {
278
+ > button:where(:not(.drag-handle))::after {
172
279
  opacity: 1;
173
280
  }
174
281
  }
175
282
 
176
- th[aria-sort="descending"] > button::after {
283
+ th[aria-sort="descending"] > button:where(:not(.drag-handle))::after {
177
284
  transform: rotate(180deg);
178
285
  }
179
286
  }
180
287
 
181
- @media (forced-colors: active) {
182
- .data-table th > button::after {
183
- forced-color-adjust: none;
184
- background-color: CanvasText;
288
+ .data-table th > button:where(:not(.drag-handle))::after {
289
+ @include forced-colors-fill;
290
+ }
291
+
292
+ // Bulk actions. A bar of buttons for the selected rows, written just before
293
+ // the .data-table it acts on. It shares the table's outline and joins its top
294
+ // edge; while a body row is selected it takes the selected color, so it reads
295
+ // as part of the selection. The page keeps any "3 selected" text current.
296
+ .data-table-actions {
297
+ box-sizing: border-box;
298
+ display: flex;
299
+ flex-wrap: wrap;
300
+ align-items: center;
301
+ gap: 8px;
302
+ min-height: 56px;
303
+ margin: $element-top-margin 0 0;
304
+ padding: 8px 16px;
305
+ border: 1px solid var(--md-sys-color-outline-variant);
306
+ border-block-end: 0;
307
+ border-radius: var(--md-sys-shape-corner-medium) var(--md-sys-shape-corner-medium) 0 0;
308
+ background-color: var(--md-sys-color-surface);
309
+ color: var(--md-sys-color-on-surface);
310
+ transition: background-color var(--md-sys-motion-duration-short4) ease-out;
311
+ @include typescale("title-small");
312
+
313
+ &[hidden] {
314
+ display: none;
315
+ }
316
+
317
+ &:has(+ .data-table > table > tbody > tr > :first-child input[type="checkbox"]:checked) {
318
+ background-color: var(--md-sys-color-secondary-container);
319
+ color: var(--md-sys-color-on-secondary-container);
320
+ }
321
+
322
+ // The count or label pushes the buttons to the end.
323
+ > :first-child:not(button, .button, .icon-button) {
324
+ margin-inline-end: auto;
325
+ }
326
+
327
+ // A hidden bar leaves the table's own top edge alone.
328
+ &:not([hidden]) + .data-table {
329
+ margin-block-start: 0;
330
+ border-start-start-radius: 0;
331
+ border-start-end-radius: 0;
185
332
  }
186
333
  }