@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
@@ -12,7 +12,11 @@
12
12
  // the cursor spoke and the tooltip are HTML placed by the --turn RadarChart
13
13
  // sets, a fraction of a turn clockwise from the top.
14
14
  //
15
- // Modifiers: .area fills each shape, .points marks each value, .sparkline
15
+ // A gap in a series breaks its outline; .area fills each unbroken run as a
16
+ // wedge from the middle.
17
+ //
18
+ // Modifiers: .area fills each shape, .points marks each value, .axis
19
+ // rings the grid at round values and labels the rings, .sparkline
16
20
  // is a small chart with no labels, legend or tooltip.
17
21
  // A series header cell's classes reach its shape: <th class="dashed">.
18
22
  //
@@ -24,17 +28,18 @@
24
28
  // --md-comp-radar-chart-color-1..4 primary, tertiary, secondary,
25
29
  // on-surface-variant
26
30
 
27
- @include chart("radar-chart");
31
+ @include chart("radar-chart", $grid: false, $tooltip: middle, $cursor: line);
32
+ @include chart-axis("radar-chart", $beside: false);
28
33
 
29
34
  .radar-chart {
30
35
  --md-comp-radar-chart-line-width: 2px;
31
- --md-comp-radar-chart-label-room: 80px;
36
+ --md-comp-radar-chart-label-room: #{rem(80px)};
32
37
  // How far past the rim a label starts.
33
38
  --radar-chart-label-offset: 8px;
34
39
 
35
40
  &.sparkline {
36
41
  --md-comp-radar-chart-line-width: 1.5px;
37
- --md-comp-radar-chart-label-room: 0px;
42
+ --md-comp-radar-chart-label-room: #{rem(0px)};
38
43
  --radar-chart-label-offset: 0px;
39
44
  }
40
45
  }
@@ -53,9 +58,27 @@
53
58
  2 * var(--md-sys-typescale-body-small-line-height) + var(--radar-chart-label-offset)
54
59
  )
55
60
  auto;
56
- border: 0;
57
61
  border-radius: 50%;
58
- background: none;
62
+ }
63
+
64
+ // .axis rings the grid at round values and labels each ring up the top
65
+ // spoke. Zero, the middle, goes unlabelled.
66
+ .radar-chart-axis > li {
67
+ inset-inline: auto;
68
+ left: 50%;
69
+ top: calc(var(--at, 0%) / 2);
70
+ border: 0;
71
+
72
+ &:first-child {
73
+ display: none;
74
+ }
75
+ }
76
+
77
+ .radar-chart-axis > li > span {
78
+ inset: auto auto auto 4px;
79
+ width: auto;
80
+ padding: 0;
81
+ overflow: visible;
59
82
  }
60
83
 
61
84
  .radar-chart-web {
@@ -86,12 +109,19 @@
86
109
  }
87
110
 
88
111
  .radar-chart-shape {
89
- fill: var(--radar-chart-color);
90
- fill-opacity: 0;
112
+ fill: none;
91
113
  stroke-width: var(--md-comp-radar-chart-line-width);
114
+ }
92
115
 
116
+ .radar-chart-area {
117
+ fill: var(--radar-chart-color);
118
+ fill-opacity: 0.24;
119
+ }
120
+
121
+ .radar-chart-shape,
122
+ .radar-chart-area {
93
123
  @media (prefers-reduced-motion: no-preference) {
94
- transition: opacity 400ms cubic-bezier(0.2, 0, 0, 1), scale 400ms cubic-bezier(0.2, 0, 0, 1);
124
+ transition: opacity var(--md-sys-motion-duration-medium4) var(--md-sys-motion-easing-standard), scale var(--md-sys-motion-duration-medium4) var(--md-sys-motion-easing-standard);
95
125
 
96
126
  @starting-style {
97
127
  opacity: 0;
@@ -100,10 +130,6 @@
100
130
  }
101
131
  }
102
132
 
103
- .radar-chart.area .radar-chart-shape {
104
- fill-opacity: 0.24;
105
- }
106
-
107
133
  .radar-chart-series.dashed .radar-chart-shape {
108
134
  stroke-dasharray: 2 6;
109
135
  }
@@ -116,9 +142,7 @@
116
142
  // Each label sits just past its spoke's tip and leans away from the middle:
117
143
  // right of a spoke on the right, above the top one, and so on.
118
144
  .radar-chart-axes {
119
- margin: 0;
120
- padding: 0;
121
- list-style: none;
145
+ @include list-reset;
122
146
  color: var(--md-sys-color-on-surface-variant);
123
147
  @include typescale("body-small");
124
148
 
@@ -141,22 +165,9 @@
141
165
  // places the points on it by their share of its length from the rim.
142
166
  .radar-chart-cursor {
143
167
  inset: auto auto 50% 50%;
144
- width: 1px;
145
168
  height: 50%;
146
- background-color: var(--md-sys-color-outline);
147
169
  transform-origin: bottom;
148
170
  rotate: calc(var(--turn, 0) * 1turn);
149
-
150
- > span {
151
- position: absolute;
152
- left: 0;
153
- width: 10px;
154
- height: 10px;
155
- border: 2px solid var(--md-sys-color-surface);
156
- border-radius: 50%;
157
- background-color: var(--radar-chart-color);
158
- translate: -50% -50%;
159
- }
160
171
  }
161
172
 
162
173
  // Past the spoke's tip, on the side away from the middle.
@@ -165,11 +176,6 @@
165
176
 
166
177
  left: calc(50% + sin(var(--radar-chart-angle)) * 50%);
167
178
  top: calc(50% - cos(var(--radar-chart-angle)) * 50%);
168
- translate: 12px -50%;
169
-
170
- &.end {
171
- translate: calc(-100% - 12px) -50%;
172
- }
173
179
  }
174
180
 
175
181
  .radar-chart-legend {
@@ -194,12 +200,4 @@
194
200
  .radar-chart-axes {
195
201
  forced-color-adjust: auto;
196
202
  }
197
-
198
- .radar-chart-cursor {
199
- background-color: CanvasText;
200
- }
201
-
202
- .radar-chart-cursor > span {
203
- forced-color-adjust: none;
204
- }
205
203
  }
@@ -11,8 +11,15 @@
11
11
  // circle, from the --radial-chart-dash RadialChart sets, so it can grow in;
12
12
  // --radial-chart-offset moves a round-capped dash in by half the width.
13
13
  //
14
- // Modifiers: .gauge draws half circles over the middle, .sparkline is a
15
- // small chart with no legend or tooltip. A <tfoot> row shows in the middle.
14
+ // data-segments on the figure splits each ring into that many segments,
15
+ // filled whole, with the ring gap between them.
16
+ //
17
+ // Modifiers: .gauge draws half circles over the middle, .gradient shades
18
+ // each fill along its ring, from a light tint at the start to the full
19
+ // color at the end, .labels draws
20
+ // three-quarter rings and names each one in the empty top left quarter,
21
+ // or under the base line of a gauge, .sparkline is a small chart with no legend, tooltip or names. A <tfoot>
22
+ // row shows in the middle.
16
23
  //
17
24
  // Tokens:
18
25
  // --md-comp-radial-chart-height 240px, the rings' diameter (sparkline 48px)
@@ -24,7 +31,7 @@
24
31
  // --md-comp-radial-chart-color-1..4 primary, tertiary, secondary,
25
32
  // on-surface-variant
26
33
 
27
- @include chart("radial-chart");
34
+ @include chart("radial-chart", $round: true, $tooltip: middle, $legend-columns: 3);
28
35
 
29
36
  .radial-chart {
30
37
  --md-comp-radial-chart-thickness: 8;
@@ -34,16 +41,6 @@
34
41
  gap: 16px;
35
42
  }
36
43
 
37
- .radial-chart-plot {
38
- width: min(100%, var(--md-comp-radial-chart-height));
39
- height: auto;
40
- aspect-ratio: 1;
41
- margin-inline: auto;
42
- border: 0;
43
- border-radius: 50%;
44
- background: none;
45
- }
46
-
47
44
  .radial-chart.gauge .radial-chart-plot {
48
45
  aspect-ratio: 2;
49
46
  border-radius: 50% 50% 0 0 / 100% 100% 0 0;
@@ -71,8 +68,9 @@
71
68
  stroke: var(--md-comp-radial-chart-track-color);
72
69
  }
73
70
 
74
- // A gauge's track ends where its fill would, so it ends round too.
75
- .radial-chart.gauge .radial-chart-track {
71
+ // A track short of a whole circle ends where its fill would, so it ends
72
+ // round too.
73
+ .radial-chart-track.capped {
76
74
  stroke-linecap: round;
77
75
  }
78
76
 
@@ -90,7 +88,7 @@
90
88
  }
91
89
 
92
90
  @media (prefers-reduced-motion: no-preference) {
93
- transition: stroke-dasharray 600ms cubic-bezier(0.2, 0, 0, 1), opacity 200ms cubic-bezier(0.2, 0, 0, 1);
91
+ transition: stroke-dasharray var(--md-sys-motion-duration-long4) var(--md-sys-motion-easing-standard), opacity var(--md-sys-motion-duration-short4) var(--md-sys-motion-easing-standard);
94
92
 
95
93
  @starting-style {
96
94
  stroke-dasharray: 0 1000;
@@ -98,14 +96,104 @@
98
96
  }
99
97
  }
100
98
 
101
- .radial-chart-tooltip {
102
- translate: 12px -50%;
99
+ // .gradient draws each fill again in HTML: a conic gradient round the
100
+ // ring's middle, masked by RadialChart to the fill's own dash, from a tint
101
+ // of the ring's color to the color itself where the fill ends. The SVG fill
102
+ // under it keeps its shape for the cap and the hover, and drops its color.
103
+ // A second mask, a conic reveal, grows the fill in as the SVG dash does. A
104
+ // shadow root ignores @property, so the reveal falls back to the whole turn
105
+ // there and the fill appears without growing.
106
+ @property --radial-chart-reveal {
107
+ syntax: "<angle>";
108
+ inherits: false;
109
+ initial-value: 360deg;
110
+ }
111
+
112
+ .radial-chart.gradient .radial-chart-ring {
113
+ stroke: transparent;
114
+ }
115
+
116
+ .radial-chart-sweep {
117
+ // The rings' middle: the box's, or for a gauge the middle of its base line.
118
+ --radial-chart-at: 50% 50%;
119
+
120
+ position: absolute;
121
+ inset: 0;
122
+ background: conic-gradient(
123
+ from var(--radial-chart-from, 0turn) at var(--radial-chart-at),
124
+ color-mix(in oklab, var(--radial-chart-color) 35%, var(--md-sys-color-surface)),
125
+ var(--radial-chart-color) var(--radial-chart-to, 1turn)
126
+ );
127
+ mask-image:
128
+ var(--radial-chart-shape, none),
129
+ conic-gradient(from var(--radial-chart-from, 0turn) at var(--radial-chart-at), #000 var(--radial-chart-reveal, 360deg), transparent 0);
130
+ mask-size: 100% 100%;
131
+ mask-repeat: no-repeat;
132
+ mask-composite: intersect;
133
+ pointer-events: none;
134
+
135
+ @media (prefers-reduced-motion: no-preference) {
136
+ transition:
137
+ --radial-chart-reveal var(--md-sys-motion-duration-long4) var(--md-sys-motion-easing-standard),
138
+ opacity var(--md-sys-motion-duration-short4) var(--md-sys-motion-easing-standard);
139
+
140
+ @starting-style {
141
+ --radial-chart-reveal: 0deg;
142
+ }
143
+ }
144
+
145
+ .radial-chart.gauge & {
146
+ --radial-chart-at: 50% 100%;
147
+ }
103
148
 
104
- &.end {
105
- translate: calc(-100% - 12px) -50%;
149
+ .radial-chart-rings:has(.active) &:not(.active) {
150
+ opacity: 0.38;
106
151
  }
107
152
  }
108
153
 
154
+ // The names' font shrinks with the plot, so they need its size.
155
+ .radial-chart.labels .radial-chart-rings {
156
+ container-type: size;
157
+ }
158
+
159
+ // RadialChart sets each name's --radial-chart-at to its ring's top. Names
160
+ // end at the middle line, beside the start of their ring, and shrink to fit
161
+ // between crowded rings: one unit of the SVG's 100-unit box is 1cqw. They
162
+ // stay in a text color, since a ring color token may be too light to read.
163
+ .radial-chart-names > span {
164
+ position: absolute;
165
+ top: var(--radial-chart-at, 50%);
166
+ right: calc(50% + 4px);
167
+ max-width: calc(50% - 8px);
168
+ @include ellipsis;
169
+ translate: 0 -50%;
170
+ color: var(--md-sys-color-on-surface-variant);
171
+ @include typescale("label-medium");
172
+ font-size: min(var(--md-sys-typescale-label-medium-font-size), var(--radial-chart-step, 10) * 0.6cqw);
173
+ line-height: 1.2;
174
+ }
175
+
176
+ // A gauge's names hang under its base line, a row each with the innermost
177
+ // ring's on top. Each starts at its ring's start, after a line down from
178
+ // it, and every line passes left of the names above it.
179
+ .radial-chart.gauge.labels:not(.sparkline) .radial-chart-plot {
180
+ margin-block-end: calc(var(--radial-chart-rows, 0) * var(--md-sys-typescale-label-medium-line-height) + 4px);
181
+ }
182
+
183
+ .radial-chart.gauge .radial-chart-names > span {
184
+ top: calc(100% + 4px);
185
+ right: 0;
186
+ left: var(--radial-chart-at, 0);
187
+ max-width: none;
188
+ padding: calc(var(--radial-chart-row, 0) * var(--md-sys-typescale-label-medium-line-height)) 0 0 4px;
189
+ border-left: 1px solid var(--md-sys-color-outline-variant);
190
+ translate: none;
191
+ // The rings do not mirror in RTL, so each name stays beside its line.
192
+ text-align: left;
193
+ font-size: var(--md-sys-typescale-label-medium-font-size);
194
+ line-height: var(--md-sys-typescale-label-medium-line-height);
195
+ }
196
+
109
197
  // The middle, inside the innermost ring; a gauge's sits on its base line.
110
198
  .radial-chart-total {
111
199
  position: absolute;
@@ -136,35 +224,9 @@
136
224
  justify-content: end;
137
225
  }
138
226
 
139
- // One row per ring: swatch, name and cell in aligned columns.
140
- .radial-chart-legend {
141
- display: grid;
142
- grid-template-columns: auto minmax(0, 1fr) auto;
143
- align-items: center;
144
- gap: 8px;
145
-
146
- > li {
147
- display: contents;
148
- }
149
-
150
- > li > span:first-child {
151
- overflow: hidden;
152
- text-overflow: ellipsis;
153
- white-space: nowrap;
154
- }
155
-
156
- > li > span:last-child {
157
- text-align: end;
158
- color: var(--md-sys-color-on-surface);
159
- font-weight: 500;
160
- font-variant-numeric: tabular-nums;
161
- }
162
- }
163
-
164
227
  .radial-chart.sparkline .radial-chart-plot {
165
228
  // A set width, so the chart keeps its size as a flex item.
166
229
  width: var(--md-comp-radial-chart-height);
167
- margin-inline: 0;
168
230
  }
169
231
 
170
232
  @media (forced-colors: active) {
@@ -12,7 +12,7 @@
12
12
 
13
13
  .rich-text-editor {
14
14
  --md-comp-rich-text-editor-min-height: 160px;
15
- --md-comp-rich-text-editor-shape: 16px;
15
+ --md-comp-rich-text-editor-shape: var(--md-sys-shape-corner-large);
16
16
 
17
17
  display: flex;
18
18
  flex-direction: column;
@@ -76,7 +76,7 @@
76
76
 
77
77
  :not(pre) > code,
78
78
  pre {
79
- border-radius: 8px;
79
+ border-radius: var(--md-sys-shape-corner-small);
80
80
  background-color: var(--md-sys-color-surface-container-highest);
81
81
  font-family: ui-monospace, monospace;
82
82
  }
@@ -0,0 +1,91 @@
1
+ @use "../abstracts" as *;
2
+
3
+ // Sankey chart. A <figure class="sankey-chart"> holds a <figcaption> and a
4
+ // <table> of flows: the first column names each row's source node, the
5
+ // second its target node, and the third holds the value. Without JavaScript
6
+ // the table shows. SankeyChart draws the nodes in columns and each row as a
7
+ // link between two of them, and hides the table visually, so a screen
8
+ // reader still reads the flows as a table. The plot and tooltip come from
9
+ // chart().
10
+ //
11
+ // The SVG stretches to the plot (preserveAspectRatio="none"). Nodes and
12
+ // links are filled shapes with no stroke, so stretching keeps every link
13
+ // as thick as its value and every node as tall as its total.
14
+ //
15
+ // Each node takes a color in node order through data-series, and each link
16
+ // its source node's color, lighter. The names sit over the drawing, level
17
+ // with their nodes, from --sankey-chart-x and --sankey-chart-y, the
18
+ // script's percentages of the plot from its inline start and top.
19
+ //
20
+ // Tokens:
21
+ // --md-comp-sankey-chart-height 240px
22
+ // --md-comp-sankey-chart-link-opacity 0.4
23
+ // --md-comp-sankey-chart-color-1..6 primary, tertiary, secondary,
24
+ // on-surface-variant, then primary-
25
+ // and tertiary-container deepened
26
+ // toward on-surface, as the pie chart's
27
+
28
+ // No grid lines or baseline: the nodes and links have no value axis.
29
+ @include chart("sankey-chart", $colors: 6, $grid: false, $tooltip: middle);
30
+
31
+ .sankey-chart {
32
+ --md-comp-sankey-chart-link-opacity: 0.4;
33
+ }
34
+
35
+ .sankey-chart-plot > svg {
36
+ @include fill-parent;
37
+ overflow: visible;
38
+ }
39
+
40
+ .sankey-chart-node {
41
+ fill: var(--sankey-chart-color);
42
+ }
43
+
44
+ .sankey-chart-link {
45
+ fill: var(--sankey-chart-color);
46
+ fill-opacity: var(--md-comp-sankey-chart-link-opacity);
47
+
48
+ // The link the keys or pointer picked.
49
+ &.active {
50
+ fill-opacity: 0.8;
51
+ }
52
+ }
53
+
54
+ // Level with the link's middle.
55
+ .sankey-chart-tooltip {
56
+ // The value header names a column, not a node, so it has no swatch.
57
+ > span.value::before {
58
+ content: none;
59
+ }
60
+ }
61
+
62
+ // Over the drawing, and out of the pointer's way, so a link under a name
63
+ // still takes it.
64
+ .sankey-chart-names {
65
+ position: absolute;
66
+ inset: 0;
67
+ z-index: 1;
68
+ pointer-events: none;
69
+ }
70
+
71
+ .sankey-chart-name {
72
+ position: absolute;
73
+ top: var(--sankey-chart-y, 0%);
74
+ inset-inline-start: var(--sankey-chart-x, 0%);
75
+ padding-inline: 4px;
76
+ color: var(--md-sys-color-on-surface);
77
+ @include typescale("body-small");
78
+ white-space: nowrap;
79
+ translate: 0 -50%;
80
+
81
+ &.end {
82
+ inset-inline: auto calc(100% - var(--sankey-chart-x, 0%));
83
+ }
84
+ }
85
+
86
+ // The colors tell the nodes apart, so they keep them.
87
+ @media (forced-colors: active) {
88
+ .sankey-chart-plot > svg {
89
+ forced-color-adjust: none;
90
+ }
91
+ }
@@ -0,0 +1,144 @@
1
+ @use "../abstracts" as *;
2
+
3
+ // Scatter chart. A <figure class="scatter-chart"> holds a <figcaption> and a
4
+ // <table> of data: the first column labels each row, the second is the x
5
+ // axis, and each further column is a series named by its header cell.
6
+ // Without JavaScript the table shows. ScatterChart draws each row as one
7
+ // point per series and hides the table visually, so a screen reader still
8
+ // reads the data as a table. The plot, tooltip and legend come from chart().
9
+ //
10
+ // The SVG stretches to the plot (preserveAspectRatio="none"), and points are
11
+ // round caps on zero-length lines with a non-scaling stroke, so they stay
12
+ // round at any size.
13
+ //
14
+ // Modifiers: .axis labels both axes at round values with grid lines,
15
+ // .toggle makes each legend item a button that shows or hides its series,
16
+ // and .bubble makes the last column each row's size, drawing every point as
17
+ // a bubble whose area follows it. The script sets each bubble's
18
+ // --scatter-chart-size, its diameter as a share of the largest, and animates
19
+ // it on update(), so it is registered as a number.
20
+ //
21
+ // Tokens:
22
+ // --md-comp-scatter-chart-height 240px
23
+ // --md-comp-scatter-chart-point-size 8px
24
+ // --md-comp-scatter-chart-bubble-size 48px, the largest bubble's diameter
25
+ // --md-comp-scatter-chart-grid-color outline-variant
26
+ // --md-comp-scatter-chart-color-1..4 primary, tertiary, secondary,
27
+ // on-surface-variant
28
+
29
+ @property --scatter-chart-size {
30
+ syntax: "<number>";
31
+ inherits: false;
32
+ initial-value: 1;
33
+ }
34
+
35
+ @include chart("scatter-chart", $tooltip: middle);
36
+ @include chart-axis("scatter-chart");
37
+
38
+ .scatter-chart {
39
+ --md-comp-scatter-chart-point-size: 8px;
40
+ --md-comp-scatter-chart-bubble-size: 48px;
41
+ }
42
+
43
+ .scatter-chart-plot > svg {
44
+ @include fill-parent;
45
+ overflow: visible;
46
+ }
47
+
48
+ .scatter-chart-points {
49
+ fill: none;
50
+ stroke: var(--scatter-chart-color);
51
+ stroke-width: var(--md-comp-scatter-chart-point-size);
52
+ stroke-linecap: round;
53
+ vector-effect: non-scaling-stroke;
54
+ }
55
+
56
+ // Partly transparent, so overlapping bubbles still show through.
57
+ .scatter-chart.bubble .scatter-chart-points {
58
+ stroke-width: calc(var(--md-comp-scatter-chart-bubble-size) * var(--scatter-chart-size));
59
+ stroke-opacity: 0.7;
60
+ }
61
+
62
+ // With .bubble, room the largest bubble's radius wide around the plot, and
63
+ // the axis labels moved out by as much, so a bubble at the end of a scale
64
+ // spills into empty space instead of over the labels, caption or legend.
65
+ .scatter-chart.bubble {
66
+ --scatter-chart-room: calc(var(--md-comp-scatter-chart-bubble-size) / 2);
67
+
68
+ > .scatter-chart-plot {
69
+ margin: var(--scatter-chart-room);
70
+ }
71
+
72
+ &.axis > .scatter-chart-plot {
73
+ margin-block: calc(8px + var(--scatter-chart-room)) calc(#{rem(20px)} + var(--scatter-chart-room));
74
+ margin-inline-start: calc(var(--md-comp-scatter-chart-axis-width) + var(--scatter-chart-room));
75
+ }
76
+
77
+ .scatter-chart-axis:not(.x) > li > span {
78
+ inset-inline-end: calc(100% + var(--scatter-chart-room));
79
+ }
80
+
81
+ .scatter-chart-axis.x > li > span {
82
+ top: calc(100% + var(--scatter-chart-room));
83
+ }
84
+ }
85
+
86
+ // The x scale's labels, below the plot, each with a grid line up through it
87
+ // at --at from the left. The script mirrors --at in a right-to-left chart.
88
+ .scatter-chart.axis > .scatter-chart-plot {
89
+ margin-block-end: rem(20px);
90
+ }
91
+
92
+ .scatter-chart-axis.x {
93
+ > li {
94
+ inset-inline: auto;
95
+ inset-block: 0;
96
+ left: var(--at, 0%);
97
+ border-block-start: 0;
98
+ border-inline-start: 1px solid var(--md-comp-scatter-chart-grid-color);
99
+ }
100
+
101
+ > li > span {
102
+ inset-inline: auto;
103
+ top: 100%;
104
+ left: 0;
105
+ width: auto;
106
+ padding: 4px 0 0;
107
+ translate: -50% 0;
108
+ }
109
+ }
110
+
111
+ // The highlighted point's marker, and the tooltip level with it.
112
+ .scatter-chart-cursor {
113
+ inset-block: auto;
114
+ width: 14px;
115
+ height: 14px;
116
+ border: 2px solid var(--md-sys-color-surface);
117
+ border-radius: 50%;
118
+ box-sizing: border-box;
119
+ background-color: var(--scatter-chart-color);
120
+ translate: -50% -50%;
121
+ }
122
+
123
+ // Around a bubble, the marker is the bubble's size plus its border.
124
+ .scatter-chart.bubble .scatter-chart-cursor {
125
+ width: max(14px, calc(var(--md-comp-scatter-chart-bubble-size) * var(--scatter-chart-size) + 4px));
126
+ height: max(14px, calc(var(--md-comp-scatter-chart-bubble-size) * var(--scatter-chart-size) + 4px));
127
+ }
128
+
129
+ .scatter-chart-tooltip {
130
+ // The x header names the axis, not a series, so it has no swatch.
131
+ > span.x::before {
132
+ content: none;
133
+ }
134
+ }
135
+
136
+ @media (forced-colors: active) {
137
+ .scatter-chart-cursor {
138
+ forced-color-adjust: none;
139
+ }
140
+
141
+ .scatter-chart.bubble .scatter-chart-points {
142
+ stroke-opacity: 1;
143
+ }
144
+ }
@@ -1,5 +1,3 @@
1
- @use "../abstracts" as *;
2
-
3
1
  // Scrim (M3 Expressive). A foundation, not a component: there is no markup an
4
2
  // author writes to get one. It is the wash a modal surface puts behind itself
5
3
  // to dim what it covers, and this is the one place its value is decided -
@@ -1,5 +1,3 @@
1
- @use "../abstracts" as *;
2
-
3
1
  // ScrollSpy. The section is the target of a hash link. Offset is CSS
4
2
  // (scroll-margin). Which TOC link is current is IntersectionObserver.
5
3
  //