@expressivecss/expressive 0.16.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 (384) hide show
  1. package/CHANGELOG.md +306 -1
  2. package/README.md +1 -1
  3. package/dist/css/expressive.css +540 -646
  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/js/chunks/{chunk-PA7NU5AK.mjs → chunk-26VUH75M.mjs} +6 -3
  8. package/dist/js/chunks/chunk-26VUH75M.mjs.map +7 -0
  9. package/dist/js/chunks/{chunk-NBJAUGPP.mjs → chunk-2LFCOGC3.mjs} +12 -23
  10. package/dist/js/chunks/chunk-2LFCOGC3.mjs.map +7 -0
  11. package/dist/js/chunks/{chunk-OP43LLIC.mjs → chunk-36GELQGX.mjs} +4 -4
  12. package/dist/js/chunks/{chunk-OP43LLIC.mjs.map → chunk-36GELQGX.mjs.map} +2 -2
  13. package/dist/js/chunks/{chunk-EC26RU2D.mjs → chunk-3FKWIRHW.mjs} +6 -2
  14. package/dist/js/chunks/chunk-3FKWIRHW.mjs.map +7 -0
  15. package/dist/js/chunks/{chunk-Y6H2X7ZC.mjs → chunk-3KF65KGL.mjs} +3 -3
  16. package/dist/js/chunks/{chunk-4QUCNFSD.mjs → chunk-3KLZRQZI.mjs} +31 -10
  17. package/dist/js/chunks/chunk-3KLZRQZI.mjs.map +7 -0
  18. package/dist/js/chunks/{chunk-75E5EDJF.mjs → chunk-3XORNED5.mjs} +2 -2
  19. package/dist/js/chunks/{chunk-NNHVANQA.mjs → chunk-4WBGAQN3.mjs} +3 -3
  20. package/dist/js/chunks/{chunk-ZJNLAGY5.mjs → chunk-5F4URJHL.mjs} +2 -2
  21. package/dist/js/chunks/{chunk-ZVLOUDIJ.mjs → chunk-67UNY7RH.mjs} +50 -2
  22. package/dist/js/chunks/chunk-67UNY7RH.mjs.map +7 -0
  23. package/dist/js/chunks/{chunk-P6DRQ6KS.mjs → chunk-7CXNATJS.mjs} +6 -5
  24. package/dist/js/chunks/chunk-7CXNATJS.mjs.map +7 -0
  25. package/dist/js/chunks/{chunk-4TRZ2AER.mjs → chunk-7X44MKEQ.mjs} +15 -14
  26. package/dist/js/chunks/chunk-7X44MKEQ.mjs.map +7 -0
  27. package/dist/js/chunks/{chunk-GWZ76SR4.mjs → chunk-7ZAMOMGY.mjs} +12 -7
  28. package/dist/js/chunks/chunk-7ZAMOMGY.mjs.map +7 -0
  29. package/dist/js/chunks/{chunk-GVZQH2H5.mjs → chunk-AEG6LOAJ.mjs} +2 -2
  30. package/dist/js/chunks/{chunk-Y6TLRA3U.mjs → chunk-AQNFCJJ5.mjs} +27 -21
  31. package/dist/js/chunks/chunk-AQNFCJJ5.mjs.map +7 -0
  32. package/dist/js/chunks/{chunk-OUCHKSAW.mjs → chunk-B55LWKBM.mjs} +16 -4
  33. package/dist/js/chunks/chunk-B55LWKBM.mjs.map +7 -0
  34. package/dist/js/chunks/{chunk-AI73GJKG.mjs → chunk-BB5VXYXT.mjs} +2 -2
  35. package/dist/js/chunks/{chunk-2RLBDFH4.mjs → chunk-BDATLH3H.mjs} +4 -4
  36. package/dist/js/chunks/{chunk-2CS6TITK.mjs → chunk-CWMQOT4O.mjs} +23 -10
  37. package/dist/js/chunks/chunk-CWMQOT4O.mjs.map +7 -0
  38. package/dist/js/chunks/{chunk-ZKWUWBUB.mjs → chunk-CY2CTOVM.mjs} +2 -2
  39. package/dist/js/chunks/{chunk-CSYWKEK3.mjs → chunk-DWA5UYLJ.mjs} +58 -27
  40. package/dist/js/chunks/chunk-DWA5UYLJ.mjs.map +7 -0
  41. package/dist/js/chunks/{chunk-CMGXGYUC.mjs → chunk-EB2V4OKL.mjs} +14 -9
  42. package/dist/js/chunks/chunk-EB2V4OKL.mjs.map +7 -0
  43. package/dist/js/chunks/{chunk-Z4GICXR2.mjs → chunk-EWO662ZC.mjs} +5 -7
  44. package/dist/js/chunks/chunk-EWO662ZC.mjs.map +7 -0
  45. package/dist/js/chunks/{chunk-VGY4M57S.mjs → chunk-F7LAKFMX.mjs} +67 -34
  46. package/dist/js/chunks/chunk-F7LAKFMX.mjs.map +7 -0
  47. package/dist/js/chunks/{chunk-67ZPPKXS.mjs → chunk-FNIIH2LU.mjs} +3 -3
  48. package/dist/js/chunks/chunk-GE3YMFS6.mjs +15 -0
  49. package/dist/js/chunks/chunk-GE3YMFS6.mjs.map +7 -0
  50. package/dist/js/chunks/{chunk-DZYVU75J.mjs → chunk-GFWYMWYN.mjs} +18 -14
  51. package/dist/js/chunks/chunk-GFWYMWYN.mjs.map +7 -0
  52. package/dist/js/chunks/{chunk-3L3QIYLC.mjs → chunk-H5ISU45X.mjs} +8 -6
  53. package/dist/js/chunks/chunk-H5ISU45X.mjs.map +7 -0
  54. package/dist/js/chunks/{chunk-QXKWVHBD.mjs → chunk-H6YIKFAQ.mjs} +67 -46
  55. package/dist/js/chunks/chunk-H6YIKFAQ.mjs.map +7 -0
  56. package/dist/js/chunks/{chunk-KZPSAXIU.mjs → chunk-HEH7E3KO.mjs} +22 -12
  57. package/dist/js/chunks/chunk-HEH7E3KO.mjs.map +7 -0
  58. package/dist/js/chunks/{chunk-T3BNSRP3.mjs → chunk-HQRLBTNM.mjs} +3 -3
  59. package/dist/js/chunks/{chunk-NAC72P7R.mjs → chunk-I2F7MLUU.mjs} +2 -2
  60. package/dist/js/chunks/{chunk-ZM3XBHWV.mjs → chunk-IQOTGGHX.mjs} +86 -35
  61. package/dist/js/chunks/chunk-IQOTGGHX.mjs.map +7 -0
  62. package/dist/js/chunks/{chunk-QACZ6TUP.mjs → chunk-JH3YWKA6.mjs} +5 -4
  63. package/dist/js/chunks/chunk-JH3YWKA6.mjs.map +7 -0
  64. package/dist/js/chunks/chunk-JOLJAYIJ.mjs +7 -0
  65. package/dist/js/chunks/{chunk-4IKVPCSU.mjs.map → chunk-JOLJAYIJ.mjs.map} +1 -1
  66. package/dist/js/chunks/{chunk-BPF3I2MN.mjs → chunk-KOTGMCMI.mjs} +9 -2
  67. package/dist/js/chunks/chunk-KOTGMCMI.mjs.map +7 -0
  68. package/dist/js/chunks/{chunk-ANKFWNWT.mjs → chunk-LC4O5LFS.mjs} +3 -3
  69. package/dist/js/chunks/{chunk-4PIXLDNJ.mjs → chunk-LEF33SCP.mjs} +2 -2
  70. package/dist/js/chunks/{chunk-ILDRRG7T.mjs → chunk-LFORZRPH.mjs} +3 -3
  71. package/dist/js/chunks/{chunk-Z4OARDZ7.mjs → chunk-LWLNV5EC.mjs} +26 -17
  72. package/dist/js/chunks/chunk-LWLNV5EC.mjs.map +7 -0
  73. package/dist/js/chunks/{chunk-WU7XJ4RR.mjs → chunk-LXRHUQAX.mjs} +66 -25
  74. package/dist/js/chunks/chunk-LXRHUQAX.mjs.map +7 -0
  75. package/dist/js/chunks/{chunk-VMY55K2X.mjs → chunk-MA2SZZFB.mjs} +11 -7
  76. package/dist/js/chunks/chunk-MA2SZZFB.mjs.map +7 -0
  77. package/dist/js/chunks/{chunk-VJVQIXHC.mjs → chunk-MDBZAMIV.mjs} +8 -10
  78. package/dist/js/chunks/chunk-MDBZAMIV.mjs.map +7 -0
  79. package/dist/js/chunks/{chunk-4EWGD4V2.mjs → chunk-NODZ5VAD.mjs} +2 -2
  80. package/dist/js/chunks/{chunk-UGJHCHXG.mjs → chunk-O2WJB6TH.mjs} +79 -55
  81. package/dist/js/chunks/chunk-O2WJB6TH.mjs.map +7 -0
  82. package/dist/js/chunks/{chunk-7YZ5CN3V.mjs → chunk-PCABY5BN.mjs} +5 -3
  83. package/dist/js/chunks/chunk-PCABY5BN.mjs.map +7 -0
  84. package/dist/js/chunks/{chunk-X7SDA2J5.mjs → chunk-PWKYVMND.mjs} +9 -5
  85. package/dist/js/chunks/{chunk-X7SDA2J5.mjs.map → chunk-PWKYVMND.mjs.map} +2 -2
  86. package/dist/js/chunks/{chunk-SPPHF7YZ.mjs → chunk-QHZZT7YO.mjs} +35 -14
  87. package/dist/js/chunks/chunk-QHZZT7YO.mjs.map +7 -0
  88. package/dist/js/chunks/{chunk-LDXCC2L3.mjs → chunk-QND56EW2.mjs} +5 -4
  89. package/dist/js/chunks/chunk-QND56EW2.mjs.map +7 -0
  90. package/dist/js/chunks/{chunk-NVQ5EHCU.mjs → chunk-QNODAANY.mjs} +4 -4
  91. package/dist/js/chunks/{chunk-7NLUI3RR.mjs → chunk-QRO5FV3I.mjs} +23 -13
  92. package/dist/js/chunks/chunk-QRO5FV3I.mjs.map +7 -0
  93. package/dist/js/chunks/{chunk-FCNF4GRJ.mjs → chunk-R7A7JRC5.mjs} +6 -11
  94. package/dist/js/chunks/chunk-R7A7JRC5.mjs.map +7 -0
  95. package/dist/js/chunks/{chunk-S23RJ3XY.mjs → chunk-RKG2CBFE.mjs} +4 -16
  96. package/dist/js/chunks/chunk-RKG2CBFE.mjs.map +7 -0
  97. package/dist/js/chunks/{chunk-6FSEUFVW.mjs → chunk-RSNS5OYS.mjs} +6 -6
  98. package/dist/js/chunks/chunk-RSNS5OYS.mjs.map +7 -0
  99. package/dist/js/chunks/{chunk-ROH2HDB4.mjs → chunk-RUDYMEJ3.mjs} +2 -2
  100. package/dist/js/chunks/{chunk-BIGU5RCJ.mjs → chunk-STJR62SU.mjs} +13 -5
  101. package/dist/js/chunks/chunk-STJR62SU.mjs.map +7 -0
  102. package/dist/js/chunks/{chunk-752ADW4M.mjs → chunk-SUSD4UTN.mjs} +27 -32
  103. package/dist/js/chunks/chunk-SUSD4UTN.mjs.map +7 -0
  104. package/dist/js/chunks/{chunk-B7DQFHA5.mjs → chunk-SYBOA5HC.mjs} +7 -12
  105. package/dist/js/chunks/chunk-SYBOA5HC.mjs.map +7 -0
  106. package/dist/js/chunks/{chunk-TFABTUAZ.mjs → chunk-T4MOBP3J.mjs} +2 -2
  107. package/dist/js/chunks/{chunk-GCWWEZKO.mjs → chunk-TM7HPGTV.mjs} +3 -3
  108. package/dist/js/chunks/{chunk-5KIHWJI2.mjs → chunk-TMQDZSDC.mjs} +34 -12
  109. package/dist/js/chunks/chunk-TMQDZSDC.mjs.map +7 -0
  110. package/dist/js/chunks/{chunk-ZO6ZLHFF.mjs → chunk-TVSX5YA2.mjs} +3 -3
  111. package/dist/js/chunks/{chunk-INLZWHLY.mjs → chunk-UHO5CV6K.mjs} +2 -2
  112. package/dist/js/chunks/{chunk-INLZWHLY.mjs.map → chunk-UHO5CV6K.mjs.map} +2 -2
  113. package/dist/js/chunks/{chunk-7YQBHTK3.mjs → chunk-UKCNELUN.mjs} +6 -8
  114. package/dist/js/chunks/chunk-UKCNELUN.mjs.map +7 -0
  115. package/dist/js/chunks/{chunk-VH4BMAZS.mjs → chunk-UKQK5GWR.mjs} +13 -13
  116. package/dist/js/chunks/chunk-UKQK5GWR.mjs.map +7 -0
  117. package/dist/js/chunks/{chunk-OYNUDOHR.mjs → chunk-UTSLYQ65.mjs} +7 -6
  118. package/dist/js/chunks/{chunk-OYNUDOHR.mjs.map → chunk-UTSLYQ65.mjs.map} +2 -2
  119. package/dist/js/chunks/{chunk-7W7TV6NY.mjs → chunk-VS5OJBOD.mjs} +2 -2
  120. package/dist/js/chunks/{chunk-7W7TV6NY.mjs.map → chunk-VS5OJBOD.mjs.map} +2 -2
  121. package/dist/js/chunks/{chunk-KYIEG4U3.mjs → chunk-VZMROW5A.mjs} +43 -14
  122. package/dist/js/chunks/chunk-VZMROW5A.mjs.map +7 -0
  123. package/dist/js/chunks/{chunk-VFV75DHF.mjs → chunk-XB6Y7P5W.mjs} +11 -12
  124. package/dist/js/chunks/chunk-XB6Y7P5W.mjs.map +7 -0
  125. package/dist/js/chunks/{chunk-CZSQHXEV.mjs → chunk-XDAMOMVD.mjs} +20 -21
  126. package/dist/js/chunks/chunk-XDAMOMVD.mjs.map +7 -0
  127. package/dist/js/chunks/{chunk-EVCVFEV3.mjs → chunk-XJPMW5SP.mjs} +21 -35
  128. package/dist/js/chunks/chunk-XJPMW5SP.mjs.map +7 -0
  129. package/dist/js/chunks/{chunk-VR3L2WN5.mjs → chunk-YKANQILZ.mjs} +7 -6
  130. package/dist/js/chunks/chunk-YKANQILZ.mjs.map +7 -0
  131. package/dist/js/chunks/{chunk-JUKBBN6P.mjs → chunk-YLZOJLDI.mjs} +2 -2
  132. package/dist/js/chunks/{chunk-U4B3VHFS.mjs → chunk-ZK7YY322.mjs} +28 -21
  133. package/dist/js/chunks/chunk-ZK7YY322.mjs.map +7 -0
  134. package/dist/js/expressive.cjs +2739 -2387
  135. package/dist/js/expressive.cjs.map +4 -4
  136. package/dist/js/expressive.js +2739 -2387
  137. package/dist/js/expressive.js.map +4 -4
  138. package/dist/js/expressive.min.js +7 -7
  139. package/dist/js/expressive.min.js.map +4 -4
  140. package/dist/js/expressive.mjs +76 -75
  141. package/dist/js/expressive.mjs.map +1 -1
  142. package/dist/js/internal/behaviors/bottomSheets.mjs +3 -3
  143. package/dist/js/internal/behaviors/copy.mjs +3 -3
  144. package/dist/js/internal/behaviors/dataTables.mjs +2 -4
  145. package/dist/js/internal/behaviors/dialogs.mjs +2 -2
  146. package/dist/js/internal/behaviors/forms.mjs +2 -2
  147. package/dist/js/internal/behaviors/imageCompare.mjs +2 -2
  148. package/dist/js/internal/behaviors/lists.mjs +2 -2
  149. package/dist/js/internal/behaviors/paneResize.mjs +2 -2
  150. package/dist/js/internal/behaviors/sheetDrag.mjs +2 -2
  151. package/dist/js/internal/behaviors/sideSheets.mjs +3 -3
  152. package/dist/js/internal/behaviors/sortable.mjs +2 -2
  153. package/dist/js/internal/behaviors/theme.mjs +2 -2
  154. package/dist/js/internal/behaviors/tour.mjs +2 -2
  155. package/dist/js/internal/behaviors/transferList.mjs +2 -2
  156. package/dist/js/internal/components/appBar.mjs +3 -3
  157. package/dist/js/internal/components/autocomplete.mjs +5 -4
  158. package/dist/js/internal/components/backToTop.mjs +3 -3
  159. package/dist/js/internal/components/barChart.mjs +5 -5
  160. package/dist/js/internal/components/buttonGroup.mjs +3 -3
  161. package/dist/js/internal/components/buttons.mjs +3 -3
  162. package/dist/js/internal/components/cards.mjs +3 -3
  163. package/dist/js/internal/components/carousel.mjs +3 -3
  164. package/dist/js/internal/components/cascader.mjs +4 -4
  165. package/dist/js/internal/components/characterCounter.mjs +3 -3
  166. package/dist/js/internal/components/chips.mjs +7 -6
  167. package/dist/js/internal/components/colorPicker.mjs +3 -3
  168. package/dist/js/internal/components/columnChart.mjs +4 -4
  169. package/dist/js/internal/components/commandPalette.mjs +3 -3
  170. package/dist/js/internal/components/confetti.mjs +3 -3
  171. package/dist/js/internal/components/currencyInput.mjs +3 -3
  172. package/dist/js/internal/components/datepicker.mjs +8 -7
  173. package/dist/js/internal/components/expandingCard.mjs +3 -3
  174. package/dist/js/internal/components/funnelChart.mjs +4 -4
  175. package/dist/js/internal/components/heatmapChart.mjs +4 -4
  176. package/dist/js/internal/components/hoverCard.mjs +3 -3
  177. package/dist/js/internal/components/index.mjs +60 -59
  178. package/dist/js/internal/components/inputMask.mjs +3 -3
  179. package/dist/js/internal/components/keypad.mjs +3 -3
  180. package/dist/js/internal/components/lightbox.mjs +3 -3
  181. package/dist/js/internal/components/lineChart.mjs +23 -7
  182. package/dist/js/internal/components/loadingOverlay.mjs +3 -3
  183. package/dist/js/internal/components/mapView.mjs +3 -3
  184. package/dist/js/internal/components/menu.mjs +3 -3
  185. package/dist/js/internal/components/menubar.mjs +4 -4
  186. package/dist/js/internal/components/messageScroller.mjs +3 -3
  187. package/dist/js/internal/components/mixedChart.mjs +5 -5
  188. package/dist/js/internal/components/navigationRail.mjs +3 -3
  189. package/dist/js/internal/components/particles.mjs +3 -3
  190. package/dist/js/internal/components/pieChart.mjs +4 -4
  191. package/dist/js/internal/components/pullToRefresh.mjs +3 -3
  192. package/dist/js/internal/components/questionnaire.mjs +3 -3
  193. package/dist/js/internal/components/radarChart.mjs +4 -4
  194. package/dist/js/internal/components/radialChart.mjs +4 -4
  195. package/dist/js/internal/components/registry.mjs +59 -58
  196. package/dist/js/internal/components/richTextEditor.mjs +3 -3
  197. package/dist/js/internal/components/sankeyChart.mjs +4 -4
  198. package/dist/js/internal/components/scatterChart.mjs +4 -4
  199. package/dist/js/internal/components/scrollspy.mjs +3 -3
  200. package/dist/js/internal/components/select.mjs +5 -4
  201. package/dist/js/internal/components/showMore.mjs +3 -3
  202. package/dist/js/internal/components/slider.mjs +3 -3
  203. package/dist/js/internal/components/snackbar.mjs +2 -2
  204. package/dist/js/internal/components/swipeActions.mjs +3 -3
  205. package/dist/js/internal/components/tabs.mjs +3 -3
  206. package/dist/js/internal/components/timepicker.mjs +5 -5
  207. package/dist/js/internal/components/tooltip.mjs +3 -3
  208. package/dist/js/internal/components/treeSelect.mjs +6 -5
  209. package/dist/js/internal/components/treemapChart.mjs +4 -4
  210. package/dist/js/internal/core/component.mjs +6 -4
  211. package/dist/js/internal/core/formControl.mjs +2 -2
  212. package/dist/js/internal/core/imageURL.mjs +7 -0
  213. package/dist/js/internal/core/imageURL.mjs.map +7 -0
  214. package/dist/js/internal/core/utils.mjs +11 -1
  215. package/dist/js/internal/plugins/dockedDisplayPlugin.mjs +2 -2
  216. package/dist/js/internal/plugins/modalDisplayPlugin.mjs +3 -3
  217. package/dist/js/modular.mjs +76 -75
  218. package/dist/types/behaviors/bottomSheets.d.ts +5 -3
  219. package/dist/types/behaviors/dataTables.d.ts +2 -6
  220. package/dist/types/behaviors/forms.d.ts +7 -7
  221. package/dist/types/behaviors/imageCompare.d.ts +2 -1
  222. package/dist/types/behaviors/transferList.d.ts +2 -0
  223. package/dist/types/components/autocomplete.d.ts +14 -3
  224. package/dist/types/components/carousel.d.ts +7 -0
  225. package/dist/types/components/chips.d.ts +15 -0
  226. package/dist/types/components/colorPicker.d.ts +14 -0
  227. package/dist/types/components/currencyInput.d.ts +5 -4
  228. package/dist/types/components/datepicker.d.ts +54 -27
  229. package/dist/types/components/funnelChart.d.ts +1 -4
  230. package/dist/types/components/heatmapChart.d.ts +3 -0
  231. package/dist/types/components/hoverCard.d.ts +1 -0
  232. package/dist/types/components/inputMask.d.ts +0 -2
  233. package/dist/types/components/lineChart.d.ts +43 -5
  234. package/dist/types/components/mapView.d.ts +113 -11
  235. package/dist/types/components/menu.d.ts +14 -0
  236. package/dist/types/components/particles.d.ts +14 -1
  237. package/dist/types/components/pieChart.d.ts +1 -2
  238. package/dist/types/components/richTextEditor.d.ts +40 -9
  239. package/dist/types/components/select.d.ts +1 -3
  240. package/dist/types/components/showMore.d.ts +2 -0
  241. package/dist/types/components/slider.d.ts +0 -1
  242. package/dist/types/components/snackbar.d.ts +7 -1
  243. package/dist/types/components/tabs.d.ts +3 -3
  244. package/dist/types/components/timepicker.d.ts +15 -6
  245. package/dist/types/components/tooltip.d.ts +1 -1
  246. package/dist/types/components/treemapChart.d.ts +2 -2
  247. package/dist/types/core/component.d.ts +9 -3
  248. package/dist/types/core/imageURL.d.ts +2 -0
  249. package/dist/types/core/utils.d.ts +39 -1
  250. package/dist/types/modular.d.ts +1 -1
  251. package/dist/types/plugins/modalDisplayPlugin.d.ts +8 -1
  252. package/package.json +8 -6
  253. package/src/sass/abstracts/_mixins.scss +459 -59
  254. package/src/sass/abstracts/_variables.scss +25 -0
  255. package/src/sass/components/_accordion.scss +1 -3
  256. package/src/sass/components/_aura.scss +1 -0
  257. package/src/sass/components/_back-to-top.scss +3 -3
  258. package/src/sass/components/_bar-chart.scss +2 -83
  259. package/src/sass/components/_bottom-sheet.scss +7 -0
  260. package/src/sass/components/_breadcrumb.scss +1 -7
  261. package/src/sass/components/_button-groups.scss +15 -38
  262. package/src/sass/components/_buttons.scss +24 -74
  263. package/src/sass/components/_calendar.scss +1 -3
  264. package/src/sass/components/_carousel.scss +10 -10
  265. package/src/sass/components/_cascader.scss +3 -14
  266. package/src/sass/components/_column-chart.scss +1 -19
  267. package/src/sass/components/_confetti.scss +3 -4
  268. package/src/sass/components/_data-table.scss +10 -0
  269. package/src/sass/components/_dialog.scss +10 -18
  270. package/src/sass/components/_expanding-card.scss +1 -5
  271. package/src/sass/components/_fab-menu.scss +4 -12
  272. package/src/sass/components/_funnel-chart.scss +1 -62
  273. package/src/sass/components/_heatmap-chart.scss +2 -6
  274. package/src/sass/components/_icon-buttons.scss +1 -4
  275. package/src/sass/components/_line-chart.scss +2 -70
  276. package/src/sass/components/_map.scss +4 -0
  277. package/src/sass/components/_marquee.scss +3 -3
  278. package/src/sass/components/_mega-menu.scss +8 -17
  279. package/src/sass/components/_menu.scss +10 -11
  280. package/src/sass/components/_menubar.scss +1 -13
  281. package/src/sass/components/_mixed-chart.scss +1 -37
  282. package/src/sass/components/_navbar.scss +11 -16
  283. package/src/sass/components/_navigation-bar.scss +2 -5
  284. package/src/sass/components/_navigation-rail.scss +25 -15
  285. package/src/sass/components/_page-footer.scss +1 -3
  286. package/src/sass/components/_pagination.scss +3 -14
  287. package/src/sass/components/_panes.scss +3 -16
  288. package/src/sass/components/_particles.scss +3 -4
  289. package/src/sass/components/_pie-chart.scss +8 -70
  290. package/src/sass/components/_progress.scss +31 -13
  291. package/src/sass/components/_radar-chart.scss +2 -32
  292. package/src/sass/components/_radial-chart.scss +2 -48
  293. package/src/sass/components/_sankey-chart.scss +5 -28
  294. package/src/sass/components/_scatter-chart.scss +2 -11
  295. package/src/sass/components/_search.scss +1 -4
  296. package/src/sass/components/_side-sheet.scss +9 -14
  297. package/src/sass/components/_skeleton.scss +24 -15
  298. package/src/sass/components/_snackbar.scss +11 -13
  299. package/src/sass/components/_table_of_contents.scss +1 -3
  300. package/src/sass/components/_tabs.scss +4 -20
  301. package/src/sass/components/_timepicker.scss +2 -1
  302. package/src/sass/components/_toolbar.scss +1 -4
  303. package/src/sass/components/_tooltip.scss +9 -5
  304. package/src/sass/components/_tree.scss +5 -17
  305. package/src/sass/components/_treemap-chart.scss +2 -26
  306. package/src/sass/components/forms/_checkboxes.scss +2 -21
  307. package/src/sass/components/forms/_drop-zone.scss +1 -4
  308. package/src/sass/components/forms/_fieldset.scss +1 -4
  309. package/src/sass/components/forms/_file-input.scss +6 -0
  310. package/src/sass/components/forms/_input-fields.scss +21 -4
  311. package/src/sass/components/forms/_radio-buttons.scss +2 -24
  312. package/src/sass/components/forms/_select.scss +6 -7
  313. package/src/sass/components/forms/_slider.scss +1 -4
  314. package/src/sass/components/forms/_switches.scss +14 -21
  315. package/src/sass/utilities/_helpers.scss +1 -1
  316. package/src/sass/utilities/_visibility.scss +1 -3
  317. package/dist/js/chunks/chunk-2CS6TITK.mjs.map +0 -7
  318. package/dist/js/chunks/chunk-3L3QIYLC.mjs.map +0 -7
  319. package/dist/js/chunks/chunk-4IKVPCSU.mjs +0 -7
  320. package/dist/js/chunks/chunk-4QUCNFSD.mjs.map +0 -7
  321. package/dist/js/chunks/chunk-4TRZ2AER.mjs.map +0 -7
  322. package/dist/js/chunks/chunk-5KIHWJI2.mjs.map +0 -7
  323. package/dist/js/chunks/chunk-6FSEUFVW.mjs.map +0 -7
  324. package/dist/js/chunks/chunk-752ADW4M.mjs.map +0 -7
  325. package/dist/js/chunks/chunk-7NLUI3RR.mjs.map +0 -7
  326. package/dist/js/chunks/chunk-7YQBHTK3.mjs.map +0 -7
  327. package/dist/js/chunks/chunk-7YZ5CN3V.mjs.map +0 -7
  328. package/dist/js/chunks/chunk-B7DQFHA5.mjs.map +0 -7
  329. package/dist/js/chunks/chunk-BIGU5RCJ.mjs.map +0 -7
  330. package/dist/js/chunks/chunk-BPF3I2MN.mjs.map +0 -7
  331. package/dist/js/chunks/chunk-CMGXGYUC.mjs.map +0 -7
  332. package/dist/js/chunks/chunk-CSYWKEK3.mjs.map +0 -7
  333. package/dist/js/chunks/chunk-CZSQHXEV.mjs.map +0 -7
  334. package/dist/js/chunks/chunk-DZYVU75J.mjs.map +0 -7
  335. package/dist/js/chunks/chunk-EC26RU2D.mjs.map +0 -7
  336. package/dist/js/chunks/chunk-EVCVFEV3.mjs.map +0 -7
  337. package/dist/js/chunks/chunk-FCNF4GRJ.mjs.map +0 -7
  338. package/dist/js/chunks/chunk-GWZ76SR4.mjs.map +0 -7
  339. package/dist/js/chunks/chunk-KYIEG4U3.mjs.map +0 -7
  340. package/dist/js/chunks/chunk-KZPSAXIU.mjs.map +0 -7
  341. package/dist/js/chunks/chunk-LDXCC2L3.mjs.map +0 -7
  342. package/dist/js/chunks/chunk-NBJAUGPP.mjs.map +0 -7
  343. package/dist/js/chunks/chunk-OUCHKSAW.mjs.map +0 -7
  344. package/dist/js/chunks/chunk-P6DRQ6KS.mjs.map +0 -7
  345. package/dist/js/chunks/chunk-PA7NU5AK.mjs.map +0 -7
  346. package/dist/js/chunks/chunk-QACZ6TUP.mjs.map +0 -7
  347. package/dist/js/chunks/chunk-QXKWVHBD.mjs.map +0 -7
  348. package/dist/js/chunks/chunk-S23RJ3XY.mjs.map +0 -7
  349. package/dist/js/chunks/chunk-SPPHF7YZ.mjs.map +0 -7
  350. package/dist/js/chunks/chunk-U4B3VHFS.mjs.map +0 -7
  351. package/dist/js/chunks/chunk-UGJHCHXG.mjs.map +0 -7
  352. package/dist/js/chunks/chunk-VFV75DHF.mjs.map +0 -7
  353. package/dist/js/chunks/chunk-VGY4M57S.mjs.map +0 -7
  354. package/dist/js/chunks/chunk-VH4BMAZS.mjs.map +0 -7
  355. package/dist/js/chunks/chunk-VJVQIXHC.mjs.map +0 -7
  356. package/dist/js/chunks/chunk-VMY55K2X.mjs.map +0 -7
  357. package/dist/js/chunks/chunk-VR3L2WN5.mjs.map +0 -7
  358. package/dist/js/chunks/chunk-WU7XJ4RR.mjs.map +0 -7
  359. package/dist/js/chunks/chunk-Y6TLRA3U.mjs.map +0 -7
  360. package/dist/js/chunks/chunk-Z4GICXR2.mjs.map +0 -7
  361. package/dist/js/chunks/chunk-Z4OARDZ7.mjs.map +0 -7
  362. package/dist/js/chunks/chunk-ZM3XBHWV.mjs.map +0 -7
  363. package/dist/js/chunks/chunk-ZVLOUDIJ.mjs.map +0 -7
  364. /package/dist/js/chunks/{chunk-Y6H2X7ZC.mjs.map → chunk-3KF65KGL.mjs.map} +0 -0
  365. /package/dist/js/chunks/{chunk-75E5EDJF.mjs.map → chunk-3XORNED5.mjs.map} +0 -0
  366. /package/dist/js/chunks/{chunk-NNHVANQA.mjs.map → chunk-4WBGAQN3.mjs.map} +0 -0
  367. /package/dist/js/chunks/{chunk-ZJNLAGY5.mjs.map → chunk-5F4URJHL.mjs.map} +0 -0
  368. /package/dist/js/chunks/{chunk-GVZQH2H5.mjs.map → chunk-AEG6LOAJ.mjs.map} +0 -0
  369. /package/dist/js/chunks/{chunk-AI73GJKG.mjs.map → chunk-BB5VXYXT.mjs.map} +0 -0
  370. /package/dist/js/chunks/{chunk-2RLBDFH4.mjs.map → chunk-BDATLH3H.mjs.map} +0 -0
  371. /package/dist/js/chunks/{chunk-ZKWUWBUB.mjs.map → chunk-CY2CTOVM.mjs.map} +0 -0
  372. /package/dist/js/chunks/{chunk-67ZPPKXS.mjs.map → chunk-FNIIH2LU.mjs.map} +0 -0
  373. /package/dist/js/chunks/{chunk-T3BNSRP3.mjs.map → chunk-HQRLBTNM.mjs.map} +0 -0
  374. /package/dist/js/chunks/{chunk-NAC72P7R.mjs.map → chunk-I2F7MLUU.mjs.map} +0 -0
  375. /package/dist/js/chunks/{chunk-ANKFWNWT.mjs.map → chunk-LC4O5LFS.mjs.map} +0 -0
  376. /package/dist/js/chunks/{chunk-4PIXLDNJ.mjs.map → chunk-LEF33SCP.mjs.map} +0 -0
  377. /package/dist/js/chunks/{chunk-ILDRRG7T.mjs.map → chunk-LFORZRPH.mjs.map} +0 -0
  378. /package/dist/js/chunks/{chunk-4EWGD4V2.mjs.map → chunk-NODZ5VAD.mjs.map} +0 -0
  379. /package/dist/js/chunks/{chunk-NVQ5EHCU.mjs.map → chunk-QNODAANY.mjs.map} +0 -0
  380. /package/dist/js/chunks/{chunk-ROH2HDB4.mjs.map → chunk-RUDYMEJ3.mjs.map} +0 -0
  381. /package/dist/js/chunks/{chunk-TFABTUAZ.mjs.map → chunk-T4MOBP3J.mjs.map} +0 -0
  382. /package/dist/js/chunks/{chunk-GCWWEZKO.mjs.map → chunk-TM7HPGTV.mjs.map} +0 -0
  383. /package/dist/js/chunks/{chunk-ZO6ZLHFF.mjs.map → chunk-TVSX5YA2.mjs.map} +0 -0
  384. /package/dist/js/chunks/{chunk-JUKBBN6P.mjs.map → chunk-YLZOJLDI.mjs.map} +0 -0
@@ -191,6 +191,25 @@ export interface DatepickerOptions extends BaseOptions {
191
191
  */
192
192
  displayPluginOptions: object;
193
193
  }
194
+ type Calendar = {
195
+ month: number;
196
+ year: number;
197
+ };
198
+ /** What `renderDay()` draws one cell from. */
199
+ type DayConfig = {
200
+ day: number;
201
+ month: number;
202
+ year: number;
203
+ hasEvent: boolean;
204
+ isSelected: boolean;
205
+ isToday: boolean;
206
+ isDisabled: boolean;
207
+ isEmpty: boolean;
208
+ showDaysInNextAndPreviousMonths: boolean;
209
+ isDateRangeStart: boolean;
210
+ isDateRangeEnd: boolean;
211
+ isDateRange: boolean;
212
+ };
194
213
  export declare class Datepicker extends Component<DatepickerOptions> {
195
214
  el: HTMLInputElement;
196
215
  id: string;
@@ -204,17 +223,12 @@ export declare class Datepicker extends Component<DatepickerOptions> {
204
223
  date: Date;
205
224
  endDate: null | Date;
206
225
  dates: Date[];
207
- calendars: [{
208
- month: number;
209
- year: number;
210
- }];
226
+ calendars: [Calendar];
211
227
  private displayPlugin;
212
228
  /** What setInputValue last wrote, so reading it back does not depend on the parser. */
213
229
  private _writtenInputs;
214
- private _form;
215
230
  private _resetDates;
216
231
  private _selection;
217
- private _resetTimer;
218
232
  private footer;
219
233
  /** Nesting depth of {@link _batchDraws}; > 0 means draws are being collected. */
220
234
  private _drawDepth;
@@ -239,7 +253,7 @@ export declare class Datepicker extends Component<DatepickerOptions> {
239
253
  * translation file is as trustworthy as whatever wrote it.
240
254
  */
241
255
  static _escape(value: unknown): string;
242
- static _isDate(obj: any): boolean;
256
+ static _isDate(obj: unknown): obj is Date;
243
257
  /**
244
258
  * A value read without a custom parser: in the picker's own string format
245
259
  * with its names, or else as an ISO date or by the browser.
@@ -250,8 +264,8 @@ export declare class Datepicker extends Component<DatepickerOptions> {
250
264
  /**
251
265
  * @deprecated as this function has no effect without any return statement or global parameter setter.
252
266
  */
253
- static _setToStartOfDay(date: any): void;
254
- static _compareDates(a: any, b: any): boolean;
267
+ static _setToStartOfDay(date: unknown): void;
268
+ static _compareDates(a: Date, b: Date): boolean;
255
269
  static key: string;
256
270
  destroy(): void;
257
271
  private _removeDateOverlay;
@@ -274,6 +288,8 @@ export declare class Datepicker extends Component<DatepickerOptions> {
274
288
  * Sets date from input field.
275
289
  */
276
290
  setDateFromInput(el: HTMLInputElement): void;
291
+ /** Whether `date` is the date already selected for `el`. */
292
+ private _shows;
277
293
  private _selectTypedMultiDate;
278
294
  /**
279
295
  * Set a date on the datepicker.
@@ -284,6 +300,8 @@ export declare class Datepicker extends Component<DatepickerOptions> {
284
300
  */
285
301
  setDate(date?: Date, preventOnSelect?: boolean, isEndDate?: boolean, fromUserInput?: boolean): void;
286
302
  validateDate(date: Date): void | Date;
303
+ /** A copy of `date`, moved to minDate or maxDate when it falls outside them. */
304
+ private _withinBounds;
287
305
  /**
288
306
  * The date an input holds. Without a custom parser, Date.parse reads
289
307
  * "05/10/2026" from a dd/mm/yyyy format as 10 May, so reuse the date behind
@@ -312,7 +330,7 @@ export declare class Datepicker extends Component<DatepickerOptions> {
312
330
  /**
313
331
  * Sets the data-date attribute on the date input field
314
332
  */
315
- setDataDate(el: any, date: any): void;
333
+ setDataDate(el: HTMLInputElement, date: Date | null): void;
316
334
  /**
317
335
  * Sets dates on the input values.
318
336
  */
@@ -321,7 +339,7 @@ export declare class Datepicker extends Component<DatepickerOptions> {
321
339
  /**
322
340
  * Sets given date as the input value on the given element.
323
341
  */
324
- setInputValue(el: any, date: any): void;
342
+ setInputValue(el: HTMLInputElement | null, date: Date | null): void;
325
343
  /**
326
344
  * Renders the date in the modal head section.
327
345
  */
@@ -332,18 +350,18 @@ export declare class Datepicker extends Component<DatepickerOptions> {
332
350
  */
333
351
  gotoDate(date: Date): void;
334
352
  adjustCalendars(): void;
335
- adjustCalendar(calendar: any): any;
353
+ adjustCalendar(calendar: Calendar): Calendar;
336
354
  nextMonth(): void;
337
355
  prevMonth(): void;
338
- render(year: any, month: any, randId: any): string;
339
- renderDay(opts: any): string;
356
+ render(year: number, month: number, randId: string): string;
357
+ renderDay(opts: DayConfig): string;
340
358
  /** Assemble calendar cells; reject unsupported elements and attributes. */
341
- renderRow(days: any, isRTL: any, isRowSelected: any): string;
359
+ renderRow(days: string[], isRTL: boolean, isRowSelected: boolean): string;
342
360
  /** Assemble calendar rows; reject unsupported elements and attributes. */
343
- renderTable(opts: any, data: any, randId: any): string;
344
- renderHead(opts: any): string;
361
+ renderTable(opts: DatepickerOptions, data: string[], randId: string): string;
362
+ renderHead(opts: DatepickerOptions): string;
345
363
  /** Wrap calendar rows after validating and encoding their contents. */
346
- renderBody(rows: any): string;
364
+ renderBody(rows: string[]): string;
347
365
  private static _calendarMarkup;
348
366
  /**
349
367
  * Whether each month arrow is usable at this position in the allowed range.
@@ -351,6 +369,14 @@ export declare class Datepicker extends Component<DatepickerOptions> {
351
369
  * Depends on the month, which is deliberately *not* part of the controls
352
370
  * cache key - so the reuse path has to recompute and reapply it.
353
371
  */
372
+ /**
373
+ * Removes the time from minDate and maxDate, on copies: the caller's Date
374
+ * objects are theirs. Each also sets the month and year bounds, which the
375
+ * arrows, the month and year lists and PageUp/PageDown read. They used to
376
+ * stay at their defaults, so the calendar paged into months where every
377
+ * day was disabled.
378
+ */
379
+ private _setDateBounds;
354
380
  private _arrowState;
355
381
  /**
356
382
  * Identifies the *shape* of the controls - everything that changes which
@@ -361,7 +387,7 @@ export declare class Datepicker extends Component<DatepickerOptions> {
361
387
  * on the displayed year, so paging across a year boundary does change it.
362
388
  */
363
389
  private _controlsCacheKey;
364
- renderTitle(instance: any, c: any, year: any, month: any, refYear: any, randId: any): string;
390
+ renderTitle(instance: Datepicker, c: number, year: number, month: number, refYear: number, randId: string): string;
365
391
  /**
366
392
  * Run `fn`, collapsing every draw it triggers into a single one at the end.
367
393
  *
@@ -401,7 +427,7 @@ export declare class Datepicker extends Component<DatepickerOptions> {
401
427
  /** A date input's listeners. An input the picker removes keeps them, but no event reaches it then. */
402
428
  private _addInputEventHandlers;
403
429
  private _removeDateInput;
404
- _handleInputClick: (e: any) => void;
430
+ _handleInputClick: (e: Event) => void;
405
431
  /** Shows a docked or modal calendar. A modal takes focus from the input, so the selected day gets it. */
406
432
  private _showDisplay;
407
433
  _handleInputKeydown: (e: KeyboardEvent) => void;
@@ -409,23 +435,24 @@ export declare class Datepicker extends Component<DatepickerOptions> {
409
435
  private _syncCalendarFocus;
410
436
  private _handleCalendarFocus;
411
437
  private _handleCalendarKeydown;
412
- _handleCalendarClick: (e: any) => void;
438
+ _handleCalendarClick: (e: Event) => void;
413
439
  _handleDateRangeCalendarClick: (date: Date) => void;
414
440
  _handleClearClick: () => void;
415
441
  _clearDates: () => void;
416
- _handleMonthChange: (e: any) => void;
417
- _handleYearChange: (e: any) => void;
418
- gotoMonth(month: any): void;
419
- gotoYear(year: any): void;
420
- _handleFormReset: (e: Event) => void;
442
+ _handleMonthChange: (e: Event) => void;
443
+ _handleYearChange: (e: Event) => void;
444
+ gotoMonth(month: string | number): void;
445
+ gotoYear(year: string | number): void;
446
+ private _readBack;
421
447
  private _readBackMultiple;
422
448
  /** A native date input's overlay text follows its value, including an empty one. */
423
449
  private _syncDataDate;
424
450
  private _readBackSingle;
425
451
  _handleInputChange: (e: Event) => void;
426
- renderDayName(opts: any, day: any, abbr?: boolean): any;
452
+ renderDayName(opts: DatepickerOptions, day: number, abbr?: boolean): string;
427
453
  createDateInput(): HTMLInputElement;
428
454
  _finishSelection: () => void;
429
455
  _confirm: () => void;
430
456
  _cancel: () => void;
431
457
  }
458
+ export {};
@@ -20,14 +20,11 @@ export declare class FunnelChart extends LineChart {
20
20
  static key: string;
21
21
  /** Every stage is the first series' color, so the tooltip's swatches all match it. */
22
22
  protected _read(): void;
23
- show(index: number): void;
24
- /** Writes a row's share after its first value in the tooltip. */
25
- private _addShare;
26
23
  /**
27
24
  * A row's value as a percentage of the first row's, in whole percentages
28
25
  * with a tenth below 10%, or '' when either row has no stage.
29
26
  */
30
- private _share;
27
+ protected _share(index: number): string;
31
28
  /** A funnel has one series of stages, so it has no legend. */
32
29
  protected _legend(): Element[];
33
30
  /**
@@ -23,11 +23,14 @@ export declare class HeatmapChart extends LineChart {
23
23
  private _endLevels;
24
24
  /** The box the cells scroll in, beside the row labels. */
25
25
  private _scroll;
26
+ /** Keeps the tooltip on its cell when the chart changes size. */
27
+ private _resizes;
26
28
  protected get _type(): string;
27
29
  /** Color carries the value, so there is no value axis. */
28
30
  protected get _axis(): boolean;
29
31
  static key: string;
30
32
  protected get _count(): number;
33
+ destroy(): void;
31
34
  /** Redraws the grid, scrolled where it was. */
32
35
  update(): void;
33
36
  /** Highlights one cell, numbered row by row. Pass -1 to hide the tooltip. */
@@ -47,6 +47,7 @@ export declare class HoverCard extends Component<HoverCardOptions> {
47
47
  private _handlePointerEnter;
48
48
  private _handlePointerLeave;
49
49
  private _handleLinkFocus;
50
+ private _handleCardEnter;
50
51
  private _handleCardFocus;
51
52
  private _handleFocusOut;
52
53
  /** Escape is listened for only while the card shows. close() removes it, and destroy() through the signal. */
@@ -22,8 +22,6 @@ export declare class InputMask extends Component<BaseOptions> {
22
22
  private _acrossLiteral;
23
23
  /** Removes slot character `index`, puts the caret where it was, and reports the edit as typing would. */
24
24
  private _remove;
25
- private _onReset;
26
- private _afterReset;
27
25
  private _format;
28
26
  /** Rewrites the value to the mask. Returns where the caret goes, or null when the value already fit. */
29
27
  private _rewrite;
@@ -19,6 +19,8 @@ export interface LineChartOptions extends BaseOptions {
19
19
  watch: boolean;
20
20
  }
21
21
  export declare const COLORS = 4;
22
+ /** Charts that color each row, not each series, cycle through six colors. */
23
+ export declare const ROW_COLORS = 6;
22
24
  /**
23
25
  * The legend of a pie or radial chart: an item per row, colored as
24
26
  * `colors[i]` when that is set, holding a span for each of `rows[i]`.
@@ -26,8 +28,12 @@ export declare const COLORS = 4;
26
28
  export declare function rowLegend(className: string, colors: (string | undefined)[], rows: string[][]): HTMLUListElement;
27
29
  /** A point at a turn clockwise from the top and a distance from the middle, as "x,y". */
28
30
  export declare function polarPoint(turn: number, r: number): string;
29
- /** A series' color number, for its `data-series`. */
30
- export declare const seriesColor: (i: number) => string;
31
+ /** A series' color number, for its `data-series`, from a palette of `colors`. */
32
+ export declare const seriesColor: (i: number, colors?: number) => string;
33
+ /** The rows of a series split at each null into runs of indexes, empty runs included. */
34
+ export declare function splitRuns(values: (number | null)[]): number[][];
35
+ /** An axis of tick labels, each placed by --at, its distance along the plot. */
36
+ export declare function tickAxis(className: string, ticks: number[], text: (tick: number) => string, at: (tick: number) => number): HTMLOListElement;
31
37
  /**
32
38
  * The timing of the paths' motion after update(), from the chart's motion
33
39
  * tokens, as the columns' CSS transition reads them. Null for a zero
@@ -46,12 +52,39 @@ export declare function pace(el: Element): {
46
52
  export declare function morph(path: SVGElement, from: string, timing: Pace): void;
47
53
  /** The paths' motion timing. */
48
54
  type Pace = NonNullable<ReturnType<typeof pace>>;
49
- /** A round step that cuts `span` into at most `parts` pieces. */
55
+ /** A round step that cuts `span` into at most `parts` pieces. A reversed span, as an author's `data-min` above the data gives, is measured by its size. */
50
56
  export declare function niceStep(span: number, parts?: number): number;
51
57
  /** The multiples of `step` from `low` to `high`, without float error. */
52
58
  export declare function steps(low: number, high: number, step: number): number[];
53
59
  /** A number format in the element's language, or the browser's for an invalid lang attribute. */
54
60
  export declare function numberFormat(el: Element, options: Intl.NumberFormatOptions): Intl.NumberFormat;
61
+ /**
62
+ * A compact format that gives each tick its own label: three significant
63
+ * digits, or more when two ticks would read the same, as 10,050 and 10,100
64
+ * both do at "10.1K". 21 is the most Intl allows.
65
+ */
66
+ export declare function tickFormat(el: Element, ticks: number[]): Intl.NumberFormat;
67
+ /**
68
+ * A share of a whole as a percentage: whole numbers, with a tenth below 10%
69
+ * so a small part is not 0%. A chart that writes many keeps `formats` and
70
+ * clears it when the language may have changed.
71
+ */
72
+ export declare function percentLabel(el: Element, share: number, formats?: Intl.NumberFormat[]): string;
73
+ /** Whether a series header cell has a class. */
74
+ export declare const hasClass: (series: Series, name: string) => boolean;
75
+ /** Colors the tooltip's swatches like a mark; no color leaves the default. */
76
+ export declare function tintTooltip(tooltip: HTMLElement, color?: string): void;
77
+ /** A span holding `text`. */
78
+ export declare const textSpan: (text: string) => HTMLSpanElement & {
79
+ textContent: string;
80
+ };
81
+ /**
82
+ * The mark a key moves to among marks `0` to `last` in table order, from
83
+ * `active`. The arrows keep their meaning in a right-to-left chart, since
84
+ * table order is no direction on screen. With nothing shown, Escape is left
85
+ * to a dialog or sheet around the chart.
86
+ */
87
+ export declare function linearKey(key: string, active: number, last: number): number | undefined;
55
88
  /** A y scale's ends, and with .axis the values its labels mark. */
56
89
  export interface ChartScale {
57
90
  min: number;
@@ -92,8 +125,6 @@ export interface Series {
92
125
  * than a guess.
93
126
  */
94
127
  export declare function cellValue(cell: Element | undefined): number | null;
95
- /** Reads text as one number, as cellValue does, or null. */
96
- export declare function numberValue(raw: string): number | null;
97
128
  /** An axis label: the tick in `format`, with the column's signs after any minus. */
98
129
  export declare function tickText(format: Intl.NumberFormat, tick: number, [prefix, suffix]: [string, string]): string;
99
130
  /** The currency, percent and spacing around a cell's number, as [prefix, suffix]. */
@@ -257,6 +288,13 @@ export declare class LineChart extends Component<LineChartOptions> {
257
288
  private _toggle;
258
289
  /** Draws the series, which fill the plot. */
259
290
  protected _draw(drawn?: Series[]): Element;
291
+ /**
292
+ * A row's share of the whole, written after its first value in the
293
+ * tooltip, or undefined. Pie, funnel and treemap charts give one.
294
+ */
295
+ protected _share(_index: number): string | undefined;
296
+ /** The series as lines and areas, which a chart that overrides _draw can still call. */
297
+ protected _drawLines(drawn?: Series[]): Element;
260
298
  /**
261
299
  * After update(), the shape each series moves from: where it was drawn,
262
300
  * and for a row it had no value at, its base. That is the plot bottom,
@@ -1,4 +1,4 @@
1
- import { Component, BaseOptions } from '../core/component';
1
+ import { Component, BaseOptions, InitElement, InitElements } from '../core/component';
2
2
  /** `[longitude, latitude]`, MapLibre's order. */
3
3
  export type LngLat = [number, number];
4
4
  /**
@@ -6,22 +6,117 @@ export type LngLat = [number, number];
6
6
  * the published types do not depend on MapLibre.
7
7
  */
8
8
  export interface MapLibre {
9
- Map: new (options: object) => any;
10
- Marker: new (options: object) => any;
11
- Popup: new (options: object) => any;
9
+ Map: new (options: MapInit) => MapInstance;
10
+ Marker: new (options: object) => MapMarker;
11
+ Popup: new (options: object) => MapPopup;
12
+ }
13
+ /**
14
+ * What `new Map()` gets. Only the container is declared; the style, center,
15
+ * zoom and `mapOptions` ride along, and MapLibre types them itself.
16
+ */
17
+ export interface MapInit {
18
+ container: HTMLElement;
19
+ }
20
+ /** A point on the map, as MapLibre hands it back. */
21
+ export interface MapLngLat {
22
+ lng: number;
23
+ lat: number;
24
+ }
25
+ /** A map click, with the DOM event behind it and, on a layer, the features hit. */
26
+ export interface MapMouseEvent {
27
+ originalEvent: MouseEvent;
28
+ lngLat: MapLngLat;
29
+ features?: Array<{
30
+ properties: Record<string, unknown>;
31
+ geometry: {
32
+ coordinates: LngLat;
33
+ };
34
+ }>;
35
+ }
36
+ export interface MapMarker {
37
+ getElement(): HTMLElement;
38
+ getLngLat(): MapLngLat;
39
+ setLngLat(at: LngLat | MapLngLat): this;
40
+ addTo(map: MapInstance): this;
41
+ on(event: 'dragstart' | 'dragend', callback: () => void): unknown;
42
+ remove(): unknown;
43
+ }
44
+ export interface MapPopup {
45
+ getElement(): HTMLElement | undefined;
46
+ setDOMContent(content: Node): this;
47
+ setLngLat(at: LngLat | MapLngLat): this;
48
+ addTo(map: MapInstance): this;
49
+ isOpen(): boolean;
50
+ on(event: 'open' | 'close', callback: () => void): unknown;
51
+ remove(): unknown;
52
+ }
53
+ /** A style layer, as `getStyle()` lists them. */
54
+ export interface MapLayer {
55
+ id: string;
56
+ source?: string;
57
+ layout?: Record<string, unknown>;
58
+ }
59
+ /** A source, as `getSource()` returns it. */
60
+ export interface MapSource {
61
+ type: string;
62
+ }
63
+ /** A clustered GeoJSON source, which is what `addClusters()` registers. */
64
+ export interface MapClusterSource extends MapSource {
65
+ getClusterExpansionZoom(clusterId: unknown): Promise<number>;
66
+ }
67
+ /** The parts of a `maplibre-gl` `Map` this component calls. */
68
+ export interface MapInstance {
69
+ on(event: string, listener: (e: MapMouseEvent) => void): unknown;
70
+ on(event: string, layer: string, listener: (e: MapMouseEvent) => void): unknown;
71
+ off(event: string, layer: string, listener: (e: MapMouseEvent) => void): unknown;
72
+ remove(): void;
73
+ zoomIn(): unknown;
74
+ zoomOut(): unknown;
75
+ resetNorthPitch(): unknown;
76
+ getZoom(): number;
77
+ getMinZoom(): number;
78
+ getMaxZoom(): number;
79
+ getBearing(): number;
80
+ getCanvas(): HTMLCanvasElement;
81
+ getStyle(): {
82
+ glyphs?: string;
83
+ layers: MapLayer[];
84
+ };
85
+ setStyle(style: string | object | null, options?: {
86
+ diff?: boolean;
87
+ }): unknown;
88
+ getSource(id: string): MapSource | undefined;
89
+ addSource(id: string, source: object): unknown;
90
+ removeSource(id: string): unknown;
91
+ addLayer(layer: object): unknown;
92
+ removeLayer(id: string): unknown;
93
+ project(at: MapLngLat): {
94
+ x: number;
95
+ y: number;
96
+ };
97
+ unproject(point: [number, number]): MapLngLat;
98
+ panBy(offset: [number, number]): unknown;
99
+ flyTo(options: {
100
+ center: LngLat;
101
+ zoom: number;
102
+ }): unknown;
103
+ easeTo(options: {
104
+ center: LngLat;
105
+ zoom: number;
106
+ }): unknown;
12
107
  }
13
108
  /** A style for each color scheme. The map follows the page's theme. */
14
109
  export interface MapThemedStyle {
15
110
  light: string | object;
16
111
  dark: string | object;
17
112
  }
18
- export interface MapViewOptions extends BaseOptions {
113
+ export interface MapViewOptions<L extends MapLibre = MapLibre> extends BaseOptions {
19
114
  /**
20
115
  * The `maplibre-gl` module. ExpressiveCSS does not bundle MapLibre, so the
21
116
  * page imports it and passes it in.
22
117
  * @default null
23
118
  */
24
- maplibregl: MapLibre | null;
119
+ maplibregl: L | null;
25
120
  /**
26
121
  * A MapLibre style URL or object, or `{ light, dark }` to follow the theme.
27
122
  * @default OpenFreeMap Positron and Dark
@@ -88,11 +183,14 @@ export interface MapClusterOptions {
88
183
  * The class is `MapView` rather than `Map` so importing it does not shadow
89
184
  * JavaScript's `Map`.
90
185
  */
91
- export declare class MapView extends Component<MapViewOptions> {
92
- /** The MapLibre map. */
93
- map: any;
186
+ export declare class MapView<L extends MapLibre = MapLibre> extends Component<MapViewOptions<L>> {
187
+ /**
188
+ * The MapLibre map, with the full type of the `maplibregl` passed to the
189
+ * constructor; `init()` and `getInstance()` see the `MapInstance` subset.
190
+ */
191
+ map: InstanceType<L['Map']> | null;
94
192
  /** The MapLibre markers made from `.map-marker` children, in order. */
95
- markers: any[];
193
+ markers: MapMarker[];
96
194
  private _children;
97
195
  private _popups;
98
196
  private _markerPopups;
@@ -107,7 +205,11 @@ export declare class MapView extends Component<MapViewOptions> {
107
205
  private _dragged;
108
206
  private _restore;
109
207
  private _actions;
110
- constructor(el: HTMLElement, options: Partial<MapViewOptions>);
208
+ /** Initializes a map, typed by the `maplibregl` passed in. */
209
+ static init<L extends MapLibre>(this: typeof MapView, el: HTMLElement, options?: Partial<MapViewOptions<L>>): MapView<L>;
210
+ /** Initializes a map on each element, typed by the `maplibregl` passed in. */
211
+ static init<L extends MapLibre>(this: typeof MapView, els: InitElements<InitElement>, options?: Partial<MapViewOptions<L>>): MapView<L>[];
212
+ constructor(el: HTMLElement, options: Partial<MapViewOptions<L>>);
111
213
  static get defaults(): MapViewOptions;
112
214
  static key: string;
113
215
  destroy(): void;
@@ -121,6 +121,10 @@ export declare class Menu extends Component<MenuOptions> {
121
121
  private _contextPoint;
122
122
  /** What had focus when a context menu opened; focus goes back there. */
123
123
  private _contextReturn;
124
+ /** Each attribute setup wrote, with the value it had before, for destroy(). */
125
+ private _originalAttributes;
126
+ /** Where the menu was before it moved next to the trigger. */
127
+ private _originalPlace;
124
128
  constructor(el: HTMLElement, options: Partial<MenuOptions>);
125
129
  static get defaults(): MenuOptions;
126
130
  static key: string;
@@ -132,6 +136,7 @@ export declare class Menu extends Component<MenuOptions> {
132
136
  _handleClick: (e: MouseEvent) => void;
133
137
  _handleMouseEnter: () => void;
134
138
  _handleMouseLeave: (e: MouseEvent) => void;
139
+ private static _inOpenTrigger;
135
140
  _handleDocumentClick: (e: MouseEvent) => void;
136
141
  _handleDocumentKeydown: (e: KeyboardEvent) => void;
137
142
  _handleTriggerKeydown: (e: KeyboardEvent) => void;
@@ -165,6 +170,15 @@ export declare class Menu extends Component<MenuOptions> {
165
170
  _resetMenuStyles(): void;
166
171
  _resetMenuPositioningStyles(): void;
167
172
  _moveMenuToElement(): void;
173
+ /** Keeps the value an attribute had before setup first changed it, which destroy() puts back. */
174
+ private _keepAttribute;
175
+ private _setAttribute;
176
+ /**
177
+ * Puts back the attributes setup wrote and the menu where it was, so a
178
+ * destroyed trigger is no longer announced as a menu button. The place is
179
+ * only used while it is still in the page.
180
+ */
181
+ private _restoreSetup;
168
182
  _makeMenuFocusable(): void;
169
183
  /**
170
184
  * Moves focus for Up, Down, Home or End among the list's focusable rows,
@@ -50,6 +50,8 @@ export declare class Particles extends Component<ParticlesOptions> {
50
50
  private _particles;
51
51
  private _width;
52
52
  private _height;
53
+ /** The device pixel ratio the buffer was sized for, which painting scales by. */
54
+ private _dpr;
53
55
  private _frame;
54
56
  private _last;
55
57
  private _mouse;
@@ -69,7 +71,18 @@ export declare class Particles extends Component<ParticlesOptions> {
69
71
  private _start;
70
72
  private _stop;
71
73
  private _onPointerMove;
72
- private _reset;
74
+ /** Matches the pixel buffer to the canvas box, which clears it. */
75
+ private _fit;
76
+ /** Scatters a new set of particles. */
77
+ private _scatter;
78
+ /**
79
+ * Refits the buffer and moves each particle with the box, so a drag that
80
+ * resizes the canvas every frame keeps the same dots. It used to scatter a
81
+ * new set each time. A box that had no size has no positions to keep.
82
+ * Refitting clears the buffer, and the observer runs after this frame's
83
+ * draw, so a moving canvas is painted here too or it shows blank.
84
+ */
85
+ private _resize;
73
86
  private _particle;
74
87
  private _draw;
75
88
  private _paint;
@@ -43,8 +43,7 @@ export declare class PieChart extends LineChart {
43
43
  /** CSS places the tooltip on the slice's middle from --turn. */
44
44
  protected _place(index: number): void;
45
45
  /** The row's share of the whole as a percentage, or '' for none. */
46
- private _share;
47
- private _percent;
46
+ protected _share(index: number): string;
48
47
  /**
49
48
  * Each slice's row name outside it, on the slice's middle, with a leader
50
49
  * line back to the slice. Names on the right half run rightwards and those
@@ -1,27 +1,44 @@
1
- import { Component, BaseOptions } from '../core/component';
1
+ import { Component, BaseOptions, InitElement, InitElements } from '../core/component';
2
2
  /**
3
3
  * The parts of a Tiptap `Editor` this component uses. Declared here so the
4
4
  * published types do not depend on Tiptap.
5
5
  */
6
+ /** A Tiptap command chain. Commands by name come through `command()`. */
7
+ export interface RichTextEditorChain {
8
+ focus(): RichTextEditorChain;
9
+ run(): boolean;
10
+ }
11
+ /**
12
+ * What `new Editor()` gets. Only these are declared; the extensions and
13
+ * `editorProps` ride along, and Tiptap types them itself.
14
+ */
15
+ export interface RichTextEditorConfig {
16
+ element: HTMLElement;
17
+ content: string;
18
+ editable: boolean;
19
+ }
6
20
  export interface RichTextEditorInstance {
7
21
  commands: object;
8
22
  isEditable: boolean;
9
23
  isEmpty: boolean;
10
- chain(): any;
11
- can(): any;
24
+ chain(): RichTextEditorChain;
25
+ /** Each command as a check that reports whether it can run now. */
26
+ can(): object;
12
27
  isActive(name: string, attributes?: object): boolean;
13
28
  getHTML(): string;
14
29
  on(event: string, callback: () => void): unknown;
15
30
  off(event: string, callback: () => void): unknown;
16
31
  destroy(): void;
17
32
  }
18
- export interface RichTextEditorOptions extends BaseOptions {
33
+ /** Tiptap's `Editor` class, or any class with the parts this component uses. */
34
+ export type RichTextEditorClass = new (options: RichTextEditorConfig) => RichTextEditorInstance;
35
+ export interface RichTextEditorOptions<E extends RichTextEditorClass = RichTextEditorClass> extends BaseOptions {
19
36
  /**
20
37
  * Tiptap's `Editor` class. ExpressiveCSS does not bundle Tiptap, so the
21
38
  * page imports it and passes it in.
22
39
  * @default null
23
40
  */
24
- Editor: (new (options: any) => RichTextEditorInstance) | null;
41
+ Editor: E | null;
25
42
  /**
26
43
  * Tiptap extensions, usually `[StarterKit]`.
27
44
  * @default []
@@ -39,9 +56,13 @@ export interface RichTextEditorOptions extends BaseOptions {
39
56
  * disabled when their command cannot run, and `toggle*` commands report their
40
57
  * state with `aria-pressed` and `.active`.
41
58
  */
42
- export declare class RichTextEditor extends Component<RichTextEditorOptions> {
43
- /** The Tiptap editor. */
44
- editor: RichTextEditorInstance | null;
59
+ export declare class RichTextEditor<E extends RichTextEditorClass = RichTextEditorClass> extends Component<RichTextEditorOptions<E>> {
60
+ /**
61
+ * The Tiptap editor, with the full type of the `Editor` passed to the
62
+ * constructor; `init()` and `getInstance()` see the `RichTextEditorInstance`
63
+ * subset.
64
+ */
65
+ editor: InstanceType<E> | null;
45
66
  /** The form value. */
46
67
  textarea: HTMLTextAreaElement | null;
47
68
  /** The element the editor is mounted in. */
@@ -50,7 +71,11 @@ export declare class RichTextEditor extends Component<RichTextEditorOptions> {
50
71
  private _label;
51
72
  private _required;
52
73
  private _form;
53
- constructor(el: HTMLElement, options: Partial<RichTextEditorOptions>);
74
+ /** Initializes an editor, typed by the `Editor` passed in. */
75
+ static init<E extends RichTextEditorClass>(this: typeof RichTextEditor, el: HTMLElement, options?: Partial<RichTextEditorOptions<E>>): RichTextEditor<E>;
76
+ /** Initializes an editor on each element, typed by the `Editor` passed in. */
77
+ static init<E extends RichTextEditorClass>(this: typeof RichTextEditor, els: InitElements<InitElement>, options?: Partial<RichTextEditorOptions<E>>): RichTextEditor<E>[];
78
+ constructor(el: HTMLElement, options: Partial<RichTextEditorOptions<E>>);
54
79
  static get defaults(): RichTextEditorOptions;
55
80
  static key: string;
56
81
  destroy(): void;
@@ -58,6 +83,12 @@ export declare class RichTextEditor extends Component<RichTextEditorOptions> {
58
83
  private _handleLabelClick;
59
84
  private _skipsValidation;
60
85
  private _handleSubmit;
86
+ /**
87
+ * The form restores the textarea after the reset event, so the editor reads
88
+ * it back a task later. Without this the editor kept the typed text while the
89
+ * form submitted the default. No update is emitted, so a reset fires no input.
90
+ */
91
+ private _handleReset;
61
92
  private _handleUpdate;
62
93
  private _handleTransaction;
63
94
  }