@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
@@ -0,0 +1,56 @@
1
+ import { LineChart, LineChartOptions } from './lineChart';
2
+ export type TreemapChartOptions = LineChartOptions;
3
+ /**
4
+ * Treemap chart. It reads its <table> like LineChart, but draws each row of
5
+ * the first value column as a rectangle whose area is its share of the
6
+ * whole, filling the plot, the largest at the top inline-start corner. Rows
7
+ * with no positive value draw nothing. Further columns show in the tooltip.
8
+ *
9
+ * Call `update()` after changing the table, or start it with `watch` or
10
+ * `data-watch`.
11
+ */
12
+ export declare class TreemapChart extends LineChart {
13
+ /** Each row's positive value, or 0 for a row with no rectangle. */
14
+ private _values;
15
+ /** Each row's rectangle, or null. */
16
+ private _boxes;
17
+ /** Each drawn row's place as fractions of the plot. */
18
+ private _places;
19
+ /** Lays the rectangles out again when the plot changes shape. */
20
+ private _sizes;
21
+ protected get _type(): string;
22
+ /** Area carries the value, so there is no value axis. */
23
+ protected get _axis(): boolean;
24
+ protected get _points(): boolean;
25
+ static key: string;
26
+ /**
27
+ * Highlights one row: outlines its rectangle and fills the tooltip, with
28
+ * the row's share. A row with no rectangle passes to the next one with
29
+ * one, as when focus asks for the first row. Pass -1 to hide them.
30
+ */
31
+ show(index: number): void;
32
+ /** The first row from `index` on with a rectangle, or -1. */
33
+ private _drawnFrom;
34
+ /** The row's share of the whole, written as the pie chart writes it. */
35
+ protected _share(row: number): string;
36
+ /**
37
+ * Opens the tooltip from the middle of the row's rectangle toward the
38
+ * middle of the plot.
39
+ */
40
+ protected _place(index: number): void;
41
+ /** The row whose rectangle is under the pointer, or -1. */
42
+ protected _indexAt(e: PointerEvent): number;
43
+ /**
44
+ * The arrows step through the rows with a rectangle in table order, which
45
+ * runs in no one direction on screen, so they do not swap in a
46
+ * right-to-left page. Home and End go to the first and last of them.
47
+ */
48
+ protected _keyTarget(key: string): number | undefined;
49
+ destroy(): void;
50
+ /** Neither row labels nor a legend: each rectangle carries its name. */
51
+ protected _guides(): Element[];
52
+ /** One rectangle per positive row, in table order, placed by _layout(). */
53
+ protected _draw(): Element;
54
+ /** Squarifies the positive rows, largest first, equal values in table order, and places their rectangles. */
55
+ private _layout;
56
+ }
@@ -5,24 +5,39 @@ export interface BaseOptions {
5
5
  }
6
6
  export type InitElement = HTMLElement | Element;
7
7
  export type InitElements<T extends InitElement> = NodeListOf<T> | HTMLCollectionOf<T>;
8
- type ComponentConstructor<T extends Component<O>, O extends BaseOptions> = {
9
- new (el: HTMLElement, options: Partial<O>): T;
8
+ /** Any component class; `init` reads its element, options and instance types. */
9
+ type ComponentClass = (new (el: never, options: never) => Component<BaseOptions>) & {
10
+ key: string;
10
11
  };
11
- type ComponentType<C extends Component<O>, O extends BaseOptions> = ComponentConstructor<C, O> & typeof Component<O>;
12
+ /** The element a component class is constructed on. */
13
+ type ElementOf<C extends ComponentClass> = C extends new (el: infer E, options: never) => unknown ? E : never;
14
+ /** The options `init` accepts for a component class. */
15
+ type InitOptions<C extends ComponentClass> = Partial<InstanceType<C>['options']>;
12
16
  export interface I18nOptions {
13
17
  cancel: string;
14
18
  clear: string;
15
19
  done: string;
16
20
  }
17
- export interface Openable {
18
- isOpen: boolean;
19
- open(): void;
20
- close(): void;
21
+ /** What {@link Component._notify} passes on, and when it stops. */
22
+ export interface NotifyOptions {
23
+ args?: unknown[];
24
+ detail?: unknown;
25
+ current?: () => boolean;
21
26
  }
27
+ /**
28
+ * `options` without its keys set to `undefined`, so those keep their
29
+ * defaults: `{ i18n: { tooShort: t.missing } }` must not erase a message.
30
+ */
31
+ export declare const defined: <T extends object>(options: T) => T;
22
32
  /**
23
33
  * Base class implementation for Expressive components.
24
34
  */
25
35
  export declare class Component<O extends BaseOptions> {
36
+ /**
37
+ * The element property that holds an instance, `Expressive_<Name>`, so page
38
+ * code can read `el.Expressive_Tabs` as well as call `Tabs.getInstance(el)`.
39
+ */
40
+ static key: string;
26
41
  /**
27
42
  * The DOM element the plugin was initialized with.
28
43
  */
@@ -31,42 +46,51 @@ export declare class Component<O extends BaseOptions> {
31
46
  * The options the instance was initialized with.
32
47
  */
33
48
  options: O;
49
+ /** Aborted by destroy(), which removes every listener added with its signal. */
50
+ protected _events: AbortController;
34
51
  /**
35
- * Constructs component instance and set everything up.
52
+ * Destroys any instance already on `el`, then spreads `options` over the
53
+ * class defaults, and `options.i18n` over the default strings, so passing
54
+ * one string keeps the rest. A subclass passes options it reads from
55
+ * markup in `options`.
36
56
  */
37
- constructor(el: HTMLElement, options: Partial<O>, classDef: ComponentType<Component<O>, O>);
57
+ constructor(el: HTMLElement, options: Partial<O>);
38
58
  /**
39
- * Initializes component instance.
59
+ * Initializes an instance of the class it is called on.
40
60
  * @param el HTML element.
41
61
  * @param options Component options.
42
- * @param classDef Class definition.
43
- */
44
- protected static init<I extends HTMLElement, O extends BaseOptions, C extends Component<O>>(el: I, options: O, classDef: ComponentType<C, O>): C;
45
- /**
46
- * Initializes component instances.
47
- * @param els HTML elements.
48
- * @param options Component options.
49
- * @param classDef Class definition.
50
62
  */
51
- protected static init<I extends InitElement, O extends BaseOptions, C extends Component<O>>(els: InitElements<I>, options: Partial<O>, classDef: ComponentType<C, O>): C[];
63
+ static init<C extends ComponentClass>(this: C, el: ElementOf<C>, options?: InitOptions<C>): InstanceType<C>;
52
64
  /**
53
- * Initializes component instances.
65
+ * Initializes an instance of the class it is called on for each element.
54
66
  * @param els HTML elements.
55
67
  * @param options Component options.
56
- * @param classDef Class definition.
57
68
  */
58
- protected static init<I extends InitElement, O extends BaseOptions, C extends Component<O>>(els: I | InitElements<I>, options: Partial<O>, classDef: ComponentType<C, O>): C | C[];
69
+ static init<C extends ComponentClass>(this: C, els: InitElements<InitElement>, options?: InitOptions<C>): InstanceType<C>[];
59
70
  /**
60
71
  * @returns default options for component instance.
61
72
  */
62
73
  static get defaults(): BaseOptions;
63
74
  /**
64
- * Retrieves component instance for the given element.
75
+ * Retrieves the instance of the class it is called on for the given element,
76
+ * or undefined before init and after destroy.
65
77
  * @param el Associated HTML Element.
66
78
  */
67
- static getInstance(el: HTMLElement): Component<BaseOptions>;
79
+ static getInstance<C extends ComponentClass>(this: C, el: Element): InstanceType<C> | undefined;
80
+ /**
81
+ * Runs an `on…` option callback, then fires `expressive:<type>` from the
82
+ * element, so pages can listen instead of passing options. The callback gets
83
+ * `args` (the element by default) and the event carries `detail`.
84
+ *
85
+ * A callback or listener may close, reopen or destroy the component. Pass
86
+ * `current` to tell whether the state `type` names still holds; the event
87
+ * is skipped once it does not, or once the instance is destroyed, and the
88
+ * result says whether to carry on.
89
+ */
90
+ protected _notify(type: string, callback?: ((...args: never[]) => unknown) | null, { args, detail, current }?: NotifyOptions): boolean;
68
91
  /**
69
- * Destroy plugin instance and teardown.
92
+ * Destroy plugin instance and teardown. A subclass tears down its own state
93
+ * and calls this to remove its listeners and release the element.
70
94
  */
71
95
  destroy(): void;
72
96
  }
@@ -0,0 +1,21 @@
1
+ /**
2
+ * A form-associated element that wraps a text input and submits for it, so
3
+ * the browser handles the field's values, reset, validity and disabled state.
4
+ * Chips and Cascader each define one under their own tag.
5
+ */
6
+ export interface FormControl extends HTMLElement {
7
+ readonly internals: ElementInternals;
8
+ /** Called for a form reset no listener canceled, in the same task. */
9
+ onFormReset: (() => void) | null;
10
+ }
11
+ /** Whether the browser has form-associated custom elements. jsdom does not. */
12
+ export declare const formAssociated: () => boolean;
13
+ /**
14
+ * Wraps `input` in a `tag` control that takes its name. `display: contents`
15
+ * lays the input out as a child of the field still. The control follows the
16
+ * input's disabled and form attributes, and `onChange` runs after the input's
17
+ * disabled, readonly or form attribute changes.
18
+ */
19
+ export declare function wrapInControl(tag: string, input: HTMLInputElement, onChange: () => void): FormControl;
20
+ /** Unwraps the control, with whatever else went in it, and gives `input` its name back. */
21
+ export declare function unwrapControl(control: FormControl, input: HTMLInputElement): void;
@@ -0,0 +1,2 @@
1
+ /** Accept image URLs without allowing arbitrary URL schemes. */
2
+ export declare function imageURL(value: string | null | undefined, base: string): string | undefined;
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Springs solved at run time. The CSS springs are sampled at build time
3
+ * into linear() easings that always start from rest, so motion that is
4
+ * interrupted restarts. A spring solved here starts from where something
5
+ * is, at the speed it has, as M3's springs do: mass 1, a damping ratio and
6
+ * a stiffness.
7
+ */
8
+ export interface Spring {
9
+ damping: number;
10
+ stiffness: number;
11
+ }
12
+ /**
13
+ * The spring's path from `from` to `to`, released at `velocity` in units
14
+ * per millisecond, as one value a frame until it settles on `to`.
15
+ */
16
+ export declare function springPath(from: number, to: number, velocity: number, spring: Spring): number[];
17
+ /** The spring a CSS token names, from its -damping and -stiffness tokens, or null without them. */
18
+ export declare function springToken(el: Element, name: string): Spring | null;
19
+ /** Plays a path on one property, `write` turning each value into CSS. */
20
+ export declare function animatePath(el: Element, property: string, path: number[], write: (value: number) => string): Animation;
@@ -1,32 +1,68 @@
1
- /** The part of a `DOMRect` the positioning helpers below actually read. */
2
- type Bounding = Pick<DOMRect, 'left' | 'top' | 'width' | 'height'>;
3
- /** Which edges of a container a box has crossed. */
4
- type Edges = {
5
- top: boolean;
6
- right: boolean;
7
- bottom: boolean;
8
- left: boolean;
9
- };
1
+ /** Sets an attribute, or removes it for null, as when restoring a value read with getAttribute. */
2
+ export declare function restoreAttribute(el: Element, name: string, value: string | null): void;
3
+ /**
4
+ * Reads text as one number, which currency or percent signs, grouping commas
5
+ * and a typographic minus may surround, or null for anything else. Charts and
6
+ * data tables read their cells with it.
7
+ */
8
+ export declare function numberValue(raw: string): number | null;
9
+ /**
10
+ * Where a field listens for its form's events. Neither formdata nor reset
11
+ * leaves a shadow root, so a field in one listens there. Otherwise the
12
+ * document, so the listener follows the field into another form.
13
+ */
14
+ export declare function formEventScope(el: Element): Document | ShadowRoot;
15
+ /**
16
+ * Runs `restored` after a reset of the field's form. The form restores its
17
+ * fields after the reset event, so it waits a task. It skips a cancelled
18
+ * reset, and a field whose listeners `signal` has removed since.
19
+ *
20
+ * It listens on the field's root, which hears a form the field moves into
21
+ * later, and on the form itself, which still hears it after the form moves
22
+ * into a shadow root. Reset does not leave a shadow root. The returned
23
+ * function binds both again, for a field that moved into another root;
24
+ * listeners already bound are not added twice.
25
+ */
26
+ export declare function afterFormReset(el: HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement, restored: () => void, signal: AbortSignal): () => void;
27
+ /**
28
+ * Runs `restored(form)` a task after any form in the document resets, once
29
+ * the form has restored its fields, unless the reset was cancelled. For
30
+ * document-level behaviors; a component bound to one field uses afterFormReset.
31
+ */
32
+ export declare function afterAnyFormReset(restored: (form: HTMLFormElement) => void): void;
33
+ /** The focused element, followed down through open shadow roots. */
34
+ export declare function deepActiveElement(root: Document | ShadowRoot): Element | null;
35
+ /**
36
+ * Fills a picker's footer: a Clear button, hidden unless `showClearBtn`,
37
+ * then Cancel and Done unless the picker writes its value without them.
38
+ */
39
+ export declare function pickerFooter(footer: HTMLElement, { i18n, showClearBtn, autoSubmit }: {
40
+ i18n: Partial<Record<'clear' | 'cancel' | 'done', string>>;
41
+ showClearBtn: boolean;
42
+ autoSubmit: boolean;
43
+ }, clearClass: string, onClear: () => void, onConfirm: () => void, onCancel: () => void): void;
44
+ /**
45
+ * An AbortController from the window `node` is in. Its signal removes
46
+ * listeners added there, and jsdom rejects a signal from another window.
47
+ */
48
+ export declare function controllerFor(node: Node): AbortController;
49
+ /** An SVG element with its attributes. */
50
+ export declare function svgNode(name: string, attributes?: Record<string, string>): SVGElement;
10
51
  /**
11
52
  * Class with utilitary functions for global usage.
12
53
  */
13
54
  export declare class Utils {
14
55
  /**
15
- * Key maps. One `KeyboardEvent.key` value each: the second entries these used
16
- * to carry (`Esc`, `Up`, `Del`, ...) were IE and Edge Legacy spellings, and
17
- * the support baseline excludes both.
18
- */
19
- static keys: {
20
- TAB: string;
21
- ENTER: string;
22
- ESC: string;
23
- BACKSPACE: string;
24
- ARROW_UP: string;
25
- ARROW_DOWN: string;
26
- ARROW_LEFT: string;
27
- ARROW_RIGHT: string;
28
- DELETE: string;
29
- };
56
+ * Whether a keydown belongs to an IME composition, such as the Enter that
57
+ * confirms a candidate. Safari reports `isComposing` false for that Enter,
58
+ * so keyCode 229 covers it.
59
+ */
60
+ static isComposing(e: KeyboardEvent): boolean;
61
+ /**
62
+ * `handler`, skipped for every key of an IME composition: while the user
63
+ * picks a candidate, Enter, the arrows and Escape belong to the IME.
64
+ */
65
+ static ignoringComposition(handler: (e: KeyboardEvent) => void): (e: KeyboardEvent) => void;
30
66
  /**
31
67
  * Run `callback` once the document is parsed.
32
68
  *
@@ -36,6 +72,11 @@ export declare class Utils {
36
72
  * both orders.
37
73
  */
38
74
  static onDocumentReady(callback: () => void): void;
75
+ /**
76
+ * The language an element is written in, from the nearest `lang`, or
77
+ * undefined without one or for a tag the browser does not know.
78
+ */
79
+ static locale(el: Element): string | undefined;
39
80
  /**
40
81
  * Generates a unique string identifier. Every caller prefixes the result and
41
82
  * uses it as an element id, and a UUID is valid in that position.
@@ -71,70 +112,80 @@ export declare class Utils {
71
112
  */
72
113
  static getElementById(el: Node, id: string): HTMLElement;
73
114
  /**
74
- * Checks for exceeded edges
75
- * @param container Container element.
76
- * @param bounding Bounding rect.
77
- * @param offset Element offset.
78
- */
79
- static checkWithinContainer(container: HTMLElement, bounding: Bounding, offset: number): Edges;
80
- /**
81
- * Checks if element can be aligned in multiple directions.
82
- * @param el Element to be inspected.
83
- * @param container Container element.
84
- * @param bounding Bounding rect.
85
- * @param offset Element offset.
86
- */
87
- static checkPossibleAlignments(el: HTMLElement, container: HTMLElement, bounding: Bounding, offset: number): {
88
- top: boolean;
89
- right: boolean;
90
- bottom: boolean;
91
- left: boolean;
92
- spaceOnTop: number;
93
- spaceOnRight: number;
94
- spaceOnBottom: number;
95
- spaceOnLeft: number;
96
- };
115
+ * `querySelector` against the tree `el` lives in, then the document, so a
116
+ * selector option finds an element in the same shadow root and still finds
117
+ * one outside it, such as `body`.
118
+ */
119
+ static querySelector(el: Node, selector: string): HTMLElement | null;
97
120
  /**
98
- * Retrieves target element id from trigger.
99
- * @param trigger Trigger element.
121
+ * Adds or removes one name in an element's inline `anchor-name` list. A
122
+ * trigger can anchor a Tooltip and a Menu at once, and writing the whole
123
+ * property let the last writer, or the first to be destroyed, wipe the other.
100
124
  */
101
- static getIdFromTrigger(trigger: HTMLElement): string;
125
+ static setAnchorName(el: HTMLElement, name: string, on: boolean): void;
102
126
  /**
103
- * Retrieves document scroll postion from top.
127
+ * Fires `expressive:<type>` from `el`. It bubbles and crosses shadow roots,
128
+ * so a page can listen on the element, an ancestor or the document. A
129
+ * `cancelable` event returns false once a listener calls preventDefault().
104
130
  */
105
- static getDocumentScrollTop(): number;
131
+ static emit(el: Element, type: string, detail?: unknown, cancelable?: boolean): boolean;
106
132
  /**
107
- * Retrieves document scroll postion from left.
133
+ * The element an event really started on, for a listener on the document.
134
+ * There `event.target` is retargeted to the shadow host, so delegation that
135
+ * reads it never sees anything inside an open shadow root. A closed root
136
+ * keeps its inside private and still yields the host.
108
137
  */
109
- static getDocumentScrollLeft(): number;
138
+ static eventTarget(event: Event): Element | null;
139
+ /** Whether a key was pressed without Alt, Ctrl or Meta, which belong to the browser and the system. */
140
+ static plainKey(e: KeyboardEvent): boolean;
141
+ /** Where a key moves from `index` among `count` items: by `steps`, or to an end for Home and End. NaN for any other key. */
142
+ static _keyIndex(key: string, index: number, count: number, steps: Record<string, number>): number;
110
143
  /**
111
- * Trailing-edge throttle: run `func` now, then at most once per `wait` ms
112
- * with the most recent arguments.
113
- *
114
- * This used to carry its underscore ancestor's whole configuration - leading
115
- * and trailing switches, a result passthrough - and both call sites are
116
- * resize handlers passing nothing but a function and a delay.
117
- *
118
- * Assign the return value once. `x = Utils.throttle(fn, 200)` is right;
119
- * wrapping it in an arrow builds a fresh closure per event and never calls
120
- * it, which is how resize handling was dead in three components.
144
+ * The item a key moves focus to, from the focused one among `items`: by
145
+ * the offset `steps` gives the key, or to the first or last for Home and
146
+ * End. Disabled items are skipped. Undefined for other keys, for a key
147
+ * with a modifier, when focus is on none of the items, and past either end
148
+ * unless `wrap`.
121
149
  */
122
- static throttle(func: (...args: unknown[]) => void, wait: number): (...args: unknown[]) => void;
150
+ static focusTarget(items: HTMLElement[], e: KeyboardEvent, steps: Record<string, number>, wrap?: boolean): HTMLElement | undefined;
123
151
  /**
124
- * Renders confirm/close buttons with callback function
152
+ * Whether focus is on or inside any of `els`, read from each element's own
153
+ * root. A document listener cannot tell from `composedPath()` when the
154
+ * element sits in a closed shadow root, but the element's root still knows
155
+ * what has focus.
125
156
  */
126
- static createConfirmationContainer(container: HTMLElement, confirmText: string, cancelText: string, onConfirm: (Function: object) => void, onCancel: (Function: object) => void): void;
157
+ static focusIsIn(...els: (Element | null | undefined)[]): boolean;
127
158
  /**
128
- * Renders a button with optional callback function
159
+ * `closest()` for a document listener: the nearest element on the event's
160
+ * composed path that matches `selector`. Unlike `eventTarget(e).closest()`
161
+ * it climbs out of shadow roots too, so a press on a shadow-root icon inside
162
+ * a light-DOM button still finds the button.
129
163
  */
130
- static createButton(container: HTMLElement, text: string, className?: string[], visibility?: boolean, callback?: (Function: object) => void): void;
131
- static _setAbsolutePosition(origin: HTMLElement, container: HTMLElement, position: string, margin: number, transitionMovement: number, align?: string): {
164
+ static closestInPath<T extends Element = Element>(event: Event, selector: string): T | null;
165
+ /**
166
+ * Retrieves target element id from trigger.
167
+ * @param trigger Trigger element.
168
+ */
169
+ static getIdFromTrigger(trigger: HTMLElement): string;
170
+ /**
171
+ * Writes document coordinates as `top`/`left` on an absolutely positioned
172
+ * element. A static body uses document coordinates; positioned parents,
173
+ * such as a shadow host, use their padding edge, including borders and
174
+ * local scrolling.
175
+ */
176
+ static _placeInOffsetParent(el: HTMLElement, coordinates: {
132
177
  x: number;
133
178
  y: number;
134
- };
179
+ }): void;
180
+ /**
181
+ * Moves document coordinates so a `width` by `height` box stays in the
182
+ * viewport. A box past the left or top edge, or within `offset` of it,
183
+ * starts `offset` in; a box past the right or bottom edge, or within
184
+ * `offset` of it, ends at that edge. `offset` is the margin plus the slide
185
+ * distance, or minus it for right alignment.
186
+ */
135
187
  static _repositionWithinScreen(x: number, y: number, width: number, height: number, margin: number, transitionMovement: number, align: string): {
136
188
  x: number;
137
189
  y: number;
138
190
  };
139
191
  }
140
- export {};
@@ -1,11 +1,21 @@
1
1
  export * from './components';
2
2
  export { Dialogs } from './behaviors/dialogs';
3
+ export type { ConfirmOptions } from './behaviors/dialogs';
3
4
  export { BottomSheets } from './behaviors/bottomSheets';
4
5
  export { SideSheets } from './behaviors/sideSheets';
5
6
  export { Forms } from './behaviors/forms';
7
+ export { Copy } from './behaviors/copy';
8
+ export { Theme } from './behaviors/theme';
9
+ export { PaneResize } from './behaviors/paneResize';
10
+ export { ImageCompare } from './behaviors/imageCompare';
11
+ export { Tour } from './behaviors/tour';
12
+ export { Sortable } from './behaviors/sortable';
13
+ export { Lists } from './behaviors/lists';
14
+ export { DataTables } from './behaviors/dataTables';
15
+ export { TransferList } from './behaviors/transferList';
6
16
  export { AutoInit } from './components/registry';
7
17
  export type { AutoInitOptions } from './components/registry';
8
- export declare const version = "0.15.0";
18
+ export declare const version = "0.17.0";
9
19
  export type * from './components/autocomplete';
10
20
  export type * from './components/appBar';
11
21
  export type * from './components/buttons';
@@ -13,8 +23,12 @@ export type * from './components/buttonGroup';
13
23
  export type * from './components/cards';
14
24
  export type * from './components/expandingCard';
15
25
  export type * from './components/carousel';
26
+ export type * from './components/confetti';
27
+ export type * from './components/particles';
28
+ export type * from './components/keypad';
16
29
  export type * from './components/characterCounter';
17
30
  export type * from './components/chips';
31
+ export type * from './components/cascader';
18
32
  export type * from './components/lineChart';
19
33
  export type * from './components/columnChart';
20
34
  export type * from './components/barChart';
@@ -23,13 +37,31 @@ export type * from './components/heatmapChart';
23
37
  export type * from './components/radarChart';
24
38
  export type * from './components/radialChart';
25
39
  export type * from './components/mixedChart';
40
+ export type * from './components/scatterChart';
41
+ export type * from './components/funnelChart';
42
+ export type * from './components/sankeyChart';
43
+ export type * from './components/treemapChart';
44
+ export type * from './components/pullToRefresh';
45
+ export type * from './components/loadingOverlay';
46
+ export type * from './components/backToTop';
47
+ export type * from './components/swipeActions';
48
+ export type * from './components/inputMask';
49
+ export type * from './components/showMore';
50
+ export type * from './components/hoverCard';
51
+ export type * from './components/currencyInput';
52
+ export type * from './components/commandPalette';
26
53
  export type * from './components/questionnaire';
27
54
  export type * from './components/datepicker';
28
55
  export type * from './components/menu';
56
+ export type * from './components/menubar';
57
+ export type * from './components/messageScroller';
58
+ export type * from './components/richTextEditor';
59
+ export type * from './components/mapView';
29
60
  export type * from './components/lightbox';
30
61
  export type * from './components/slider';
31
62
  export type * from './components/scrollspy';
32
63
  export type * from './components/select';
64
+ export type * from './components/treeSelect';
33
65
  export type * from './components/navigationRail';
34
66
  export type * from './components/tabs';
35
67
  export type * from './components/timepicker';
@@ -21,22 +21,24 @@ export declare class DockedDisplayPlugin {
21
21
  private readonly container;
22
22
  private options;
23
23
  private visible;
24
+ /**
25
+ * Elements whose clicks count as inside, beside the container: the element
26
+ * the container docks to, and any other control that opens it, such as a
27
+ * date range's end input. A click on one of those must not close it.
28
+ */
29
+ readonly triggers: HTMLElement[];
24
30
  constructor(el: HTMLElement, container: HTMLElement, options: Partial<DockedDisplayPluginOptions>);
25
31
  private _handleDocumentClick;
26
- private get _transition();
32
+ /** Eases the container to `y` pixels down and to `opacity`. */
33
+ private _animate;
34
+ /** Places the container below the element, kept on screen. */
35
+ private _place;
27
36
  /**
28
37
  * Tears the plugin down. While shown, the document listener holds a
29
38
  * reference to this instance - and through it the whole picker subtree - so
30
39
  * the owning component must call this from its own destroy().
31
40
  */
32
41
  destroy: () => void;
33
- /**
34
- * Initializes instance of DockedDisplayPlugin
35
- * @param el HTMLElement to position to
36
- * @param container HTMLElement to be positioned
37
- * @param options Plugin options
38
- */
39
- static init(el: HTMLElement, container: HTMLElement, options?: Partial<DockedDisplayPluginOptions>): DockedDisplayPlugin;
40
42
  show: () => void;
41
43
  hide: () => void;
42
44
  }
@@ -0,0 +1,39 @@
1
+ import { DockedDisplayPlugin, DockedDisplayPluginOptions } from './dockedDisplayPlugin';
2
+ /**
3
+ * Shows a picker in a modal <dialog>, which the dialog styles draw as a
4
+ * basic dialog over a scrim. The browser keeps focus inside it. Escape or a
5
+ * press on the scrim closes it, and the picker hears that as Cancel; the
6
+ * picker closes it itself through hide() on Ok or Cancel. Focus goes back
7
+ * to the field that opened it.
8
+ */
9
+ export declare class ModalDisplayPlugin {
10
+ /** The fields that open the dialog, as DockedDisplayPlugin keeps them. */
11
+ readonly triggers: HTMLElement[];
12
+ private readonly dialog;
13
+ private readonly onDismiss;
14
+ /** Whether the picker, not the user, is closing the dialog. */
15
+ private _settled;
16
+ private _opener;
17
+ /** Whether the press that ends in the next click started on the scrim. */
18
+ private _downOnScrim;
19
+ constructor(el: HTMLElement, container: HTMLElement, onDismiss: () => void);
20
+ private _handlePointerDown;
21
+ /**
22
+ * The picker fills the dialog, so a press on the dialog itself is on the
23
+ * scrim. A drag that starts on the picker, such as the timepicker hand,
24
+ * and ends on the scrim also clicks the dialog, so both ends must be there.
25
+ */
26
+ private _handleClick;
27
+ private _handleClose;
28
+ destroy: () => void;
29
+ show: () => void;
30
+ hide: () => void;
31
+ }
32
+ export type DisplayPlugin = DockedDisplayPlugin | ModalDisplayPlugin;
33
+ /**
34
+ * The display plugin a picker's `displayPlugin` option names: 'docked',
35
+ * 'modal', or none for an inline picker. `onDismiss` is the picker's Cancel.
36
+ */
37
+ export declare function createDisplayPlugin(type: string | null, el: HTMLElement, container: HTMLElement, options: Partial<DockedDisplayPluginOptions>, onDismiss: () => void): DisplayPlugin | undefined;
38
+ /** Ok and Cancel close a modal picker; a docked one stays until a click outside. */
39
+ export declare function hideModal(plugin: DisplayPlugin | undefined): void;