material 3.2.6 → 3.3.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 (577) hide show
  1. package/README.md +1 -1
  2. package/dist/components/badge/badge.d.ts +0 -59
  3. package/dist/components/badge/constants.d.ts +0 -15
  4. package/dist/components/badge/index.d.ts +0 -6
  5. package/dist/components/badge/types.d.ts +0 -244
  6. package/dist/components/bottom-app-bar/bottom-app-bar.d.ts +0 -10
  7. package/dist/components/bottom-app-bar/constants.d.ts +0 -9
  8. package/dist/components/bottom-app-bar/index.d.ts +0 -4
  9. package/dist/components/bottom-app-bar/types.d.ts +0 -76
  10. package/dist/components/bottom-sheet/bottom-sheet.d.ts +0 -21
  11. package/dist/components/bottom-sheet/constants.d.ts +0 -29
  12. package/dist/components/bottom-sheet/types.d.ts +0 -89
  13. package/dist/components/button/button.d.ts +0 -62
  14. package/dist/components/button/constants.d.ts +0 -41
  15. package/dist/components/button/index.d.ts +0 -4
  16. package/dist/components/button/types.d.ts +0 -347
  17. package/dist/components/button-group/button-group.d.ts +0 -51
  18. package/dist/components/button-group/constants.d.ts +0 -83
  19. package/dist/components/button-group/index.d.ts +0 -10
  20. package/dist/components/button-group/types.d.ts +0 -234
  21. package/dist/components/card/card.d.ts +0 -64
  22. package/dist/components/card/constants.d.ts +0 -33
  23. package/dist/components/card/content.d.ts +0 -86
  24. package/dist/components/card/index.d.ts +0 -66
  25. package/dist/components/card/types.d.ts +0 -366
  26. package/dist/components/carousel/carousel.d.ts +0 -22
  27. package/dist/components/carousel/constants.d.ts +0 -16
  28. package/dist/components/carousel/types.d.ts +0 -29
  29. package/dist/components/checkbox/checkbox.d.ts +0 -61
  30. package/dist/components/checkbox/constants.d.ts +0 -33
  31. package/dist/components/checkbox/index.d.ts +0 -25
  32. package/dist/components/checkbox/types.d.ts +0 -206
  33. package/dist/components/chips/chips.d.ts +0 -14
  34. package/dist/components/chips/constants.d.ts +0 -1
  35. package/dist/components/chips/factories.d.ts +0 -4
  36. package/dist/components/chips/types.d.ts +0 -278
  37. package/dist/components/datepicker/constants.d.ts +0 -56
  38. package/dist/components/datepicker/datepicker.d.ts +0 -5
  39. package/dist/components/datepicker/types.d.ts +12 -257
  40. package/dist/components/dialog/constants.d.ts +0 -65
  41. package/dist/components/dialog/dialog.d.ts +0 -86
  42. package/dist/components/dialog/index.d.ts +0 -12
  43. package/dist/components/dialog/types.d.ts +0 -511
  44. package/dist/components/divider/config.d.ts +0 -130
  45. package/dist/components/divider/constants.d.ts +0 -27
  46. package/dist/components/divider/divider.d.ts +0 -36
  47. package/dist/components/divider/index.d.ts +0 -29
  48. package/dist/components/divider/types.d.ts +0 -126
  49. package/dist/components/drawer/constants.d.ts +0 -53
  50. package/dist/components/drawer/drawer.d.ts +0 -56
  51. package/dist/components/drawer/index.d.ts +0 -4
  52. package/dist/components/drawer/types.d.ts +0 -200
  53. package/dist/components/extended-fab/config.js +3 -2
  54. package/dist/components/extended-fab/constants.d.ts +0 -46
  55. package/dist/components/extended-fab/extended-fab.d.ts +0 -58
  56. package/dist/components/extended-fab/index.d.ts +1 -35
  57. package/dist/components/extended-fab/types.d.ts +2 -654
  58. package/dist/components/fab/config.js +3 -2
  59. package/dist/components/fab/constants.d.ts +0 -40
  60. package/dist/components/fab/fab.d.ts +0 -42
  61. package/dist/components/fab/index.d.ts +1 -34
  62. package/dist/components/fab/types.d.ts +2 -543
  63. package/dist/components/fab-menu/constants.d.ts +0 -22
  64. package/dist/components/fab-menu/fab-menu.d.ts +0 -36
  65. package/dist/components/fab-menu/types.d.ts +0 -80
  66. package/dist/components/icon-button/constants.d.ts +0 -90
  67. package/dist/components/icon-button/icon-button.d.ts +0 -83
  68. package/dist/components/icon-button/index.d.ts +0 -44
  69. package/dist/components/icon-button/types.d.ts +0 -314
  70. package/dist/components/index.d.ts +0 -9
  71. package/dist/components/list/constants.d.ts +0 -47
  72. package/dist/components/list/index.d.ts +0 -1
  73. package/dist/components/list/list.d.ts +0 -26
  74. package/dist/components/list/types.d.ts +0 -263
  75. package/dist/components/loading-indicator/constants.d.ts +0 -35
  76. package/dist/components/loading-indicator/features/renderer.d.ts +0 -14
  77. package/dist/components/loading-indicator/loading-indicator.d.ts +0 -6
  78. package/dist/components/loading-indicator/types.d.ts +0 -35
  79. package/dist/components/menu/constants.d.ts +0 -79
  80. package/dist/components/menu/index.d.ts +0 -25
  81. package/dist/components/menu/inner.d.ts +0 -3
  82. package/dist/components/menu/menu.d.ts +0 -26
  83. package/dist/components/menu/types.d.ts +0 -423
  84. package/dist/components/navigation-bar/navigation-bar.d.ts +0 -7
  85. package/dist/components/navigation-bar/types.d.ts +0 -25
  86. package/dist/components/navigation-rail/constants.d.ts +0 -2
  87. package/dist/components/navigation-rail/navigation-rail.d.ts +0 -5
  88. package/dist/components/navigation-rail/types.d.ts +0 -22
  89. package/dist/components/progress/constants.d.ts +24 -56
  90. package/dist/components/progress/progress.d.ts +0 -21
  91. package/dist/components/progress/types.d.ts +0 -251
  92. package/dist/components/radios/constants.d.ts +0 -22
  93. package/dist/components/radios/radios.d.ts +0 -5
  94. package/dist/components/radios/types.d.ts +0 -142
  95. package/dist/components/search/constants.d.ts +0 -59
  96. package/dist/components/search/search.d.ts +0 -32
  97. package/dist/components/search/types.d.ts +0 -159
  98. package/dist/components/select/constants.d.ts +0 -60
  99. package/dist/components/select/index.d.ts +0 -22
  100. package/dist/components/select/select.d.ts +0 -33
  101. package/dist/components/select/types.d.ts +0 -241
  102. package/dist/components/side-sheet/constants.d.ts +0 -28
  103. package/dist/components/side-sheet/side-sheet.d.ts +0 -21
  104. package/dist/components/side-sheet/types.d.ts +0 -82
  105. package/dist/components/slider/constants.d.ts +0 -86
  106. package/dist/components/slider/slider.d.ts +0 -16
  107. package/dist/components/slider/types.d.ts +0 -184
  108. package/dist/components/snackbar/constants.d.ts +0 -73
  109. package/dist/components/snackbar/snackbar.d.ts +0 -13
  110. package/dist/components/snackbar/types.d.ts +0 -147
  111. package/dist/components/split-button/constants.d.ts +0 -33
  112. package/dist/components/split-button/split-button.d.ts +0 -21
  113. package/dist/components/split-button/types.d.ts +0 -81
  114. package/dist/components/switch/constants.d.ts +0 -49
  115. package/dist/components/switch/switch.d.ts +0 -5
  116. package/dist/components/switch/types.d.ts +0 -80
  117. package/dist/components/tabs/constants.d.ts +0 -76
  118. package/dist/components/tabs/indicator.d.ts +0 -27
  119. package/dist/components/tabs/responsive.d.ts +0 -30
  120. package/dist/components/tabs/tab.d.ts +0 -13
  121. package/dist/components/tabs/tabs.d.ts +0 -24
  122. package/dist/components/tabs/types.d.ts +0 -335
  123. package/dist/components/tabs/utils.d.ts +0 -66
  124. package/dist/components/text-field/constants.d.ts +0 -82
  125. package/dist/components/text-field/features/trailing-icon.d.ts +0 -61
  126. package/dist/components/text-field/text-field.d.ts +0 -33
  127. package/dist/components/text-field/types.d.ts +0 -123
  128. package/dist/components/timepicker/constants.d.ts +0 -88
  129. package/dist/components/timepicker/types.d.ts +0 -268
  130. package/dist/components/toolbar/constants.d.ts +0 -27
  131. package/dist/components/toolbar/toolbar.d.ts +0 -25
  132. package/dist/components/toolbar/types.d.ts +0 -102
  133. package/dist/components/tooltip/constants.d.ts +0 -58
  134. package/dist/components/tooltip/tooltip.d.ts +0 -5
  135. package/dist/components/tooltip/types.d.ts +0 -140
  136. package/dist/components/top-app-bar/constants.d.ts +0 -41
  137. package/dist/components/top-app-bar/index.d.ts +0 -4
  138. package/dist/components/top-app-bar/top-app-bar.d.ts +0 -10
  139. package/dist/components/top-app-bar/types.d.ts +0 -94
  140. package/dist/core/canvas/animation.d.ts +0 -13
  141. package/dist/core/canvas/drawing.d.ts +18 -55
  142. package/dist/core/canvas/index.d.ts +0 -4
  143. package/dist/core/canvas/resize.d.ts +0 -13
  144. package/dist/core/canvas/utils.d.ts +0 -62
  145. package/dist/core/compose/base.d.ts +0 -22
  146. package/dist/core/compose/cleanup.d.ts +0 -2
  147. package/dist/core/compose/component.d.ts +0 -31
  148. package/dist/core/compose/features/badge.d.ts +0 -25
  149. package/dist/core/compose/features/checkable.d.ts +0 -36
  150. package/dist/core/compose/features/debounce.d.ts +0 -57
  151. package/dist/core/compose/features/disabled.d.ts +0 -31
  152. package/dist/core/compose/features/events.d.ts +0 -38
  153. package/dist/core/compose/features/icon.d.ts +0 -49
  154. package/dist/core/compose/features/input.d.ts +0 -82
  155. package/dist/core/compose/features/lifecycle.d.ts +0 -36
  156. package/dist/core/compose/features/position.d.ts +0 -27
  157. package/dist/core/compose/features/ripple.d.ts +0 -29
  158. package/dist/core/compose/features/size.d.ts +0 -9
  159. package/dist/core/compose/features/style.d.ts +0 -9
  160. package/dist/core/compose/features/text.d.ts +0 -45
  161. package/dist/core/compose/features/textinput.d.ts +0 -88
  162. package/dist/core/compose/features/textlabel.d.ts +0 -44
  163. package/dist/core/compose/features/throttle.d.ts +0 -54
  164. package/dist/core/compose/features/track.d.ts +0 -34
  165. package/dist/core/compose/features/variant.d.ts +0 -9
  166. package/dist/core/compose/features/withEvents.d.ts +0 -30
  167. package/dist/core/compose/index.d.ts +0 -4
  168. package/dist/core/compose/pipe.d.ts +0 -55
  169. package/dist/core/compose/utils/type-guards.d.ts +0 -15
  170. package/dist/core/config/component.d.ts +0 -45
  171. package/dist/core/config/global.d.ts +0 -43
  172. package/dist/core/config.d.ts +0 -59
  173. package/dist/core/dom/attributes.d.ts +0 -41
  174. package/dist/core/dom/classes.d.ts +0 -49
  175. package/dist/core/dom/create.d.ts +0 -98
  176. package/dist/core/dom/events.d.ts +0 -52
  177. package/dist/core/dom/focus.d.ts +0 -32
  178. package/dist/core/dom/html.d.ts +0 -24
  179. package/dist/core/dom/layer.d.ts +0 -98
  180. package/dist/core/dom/roving.d.ts +0 -19
  181. package/dist/core/index.d.ts +0 -9
  182. package/dist/core/navigation/destinations.d.ts +0 -23
  183. package/dist/core/shapes/cubic.d.ts +24 -19
  184. package/dist/core/shapes/material.d.ts +0 -64
  185. package/dist/core/shapes/polygon.d.ts +6 -16
  186. package/dist/core/state/emitter.d.ts +0 -36
  187. package/dist/core/state/events.d.ts +0 -29
  188. package/dist/core/state/store.d.ts +0 -70
  189. package/dist/core/theme/index.d.ts +0 -3
  190. package/dist/core/theme/shape.d.ts +0 -7
  191. package/dist/core/theme/tokens.d.ts +48 -32
  192. package/dist/core/utils/background.d.ts +0 -29
  193. package/dist/core/utils/color.d.ts +0 -13
  194. package/dist/core/utils/index.d.ts +0 -11
  195. package/dist/core/utils/mobile.d.ts +0 -31
  196. package/dist/core/utils/object.d.ts +0 -11
  197. package/dist/core/utils/performance.d.ts +0 -70
  198. package/dist/core/utils/theme.d.ts +0 -36
  199. package/dist/core/utils/url.d.ts +0 -17
  200. package/dist/elements/adapter.d.ts +13 -62
  201. package/dist/elements/badge.d.ts +0 -17
  202. package/dist/elements/bottom-app-bar.d.ts +7 -17
  203. package/dist/elements/bottom-sheet.d.ts +9 -38
  204. package/dist/elements/button-group.d.ts +0 -31
  205. package/dist/elements/button.d.ts +24 -18
  206. package/dist/elements/button.js +12 -0
  207. package/dist/elements/card.d.ts +12 -24
  208. package/dist/elements/card.js +3 -2
  209. package/dist/elements/carousel.d.ts +5 -29
  210. package/dist/elements/checkbox.d.ts +5 -15
  211. package/dist/elements/chips.d.ts +0 -33
  212. package/dist/elements/css/extended-fab.css +1 -1
  213. package/dist/elements/css/extended-fab.js +1 -1
  214. package/dist/elements/css/fab-menu.css +1 -1
  215. package/dist/elements/css/fab-menu.js +1 -1
  216. package/dist/elements/css/fab.css +1 -1
  217. package/dist/elements/css/fab.js +1 -1
  218. package/dist/elements/css/hosts/extended-fab.css +1 -1
  219. package/dist/elements/css/hosts/fab.css +1 -1
  220. package/dist/elements/datepicker.d.ts +4 -48
  221. package/dist/elements/define.d.ts +3 -161
  222. package/dist/elements/dialog.d.ts +8 -39
  223. package/dist/elements/divider.d.ts +0 -14
  224. package/dist/elements/drawer.d.ts +0 -35
  225. package/dist/elements/extended-fab.d.ts +10 -18
  226. package/dist/elements/extended-fab.js +3 -1
  227. package/dist/elements/fab-menu.d.ts +5 -30
  228. package/dist/elements/fab.d.ts +8 -17
  229. package/dist/elements/fab.js +3 -1
  230. package/dist/elements/floating-placement.js +1 -0
  231. package/dist/elements/icon-button.d.ts +5 -26
  232. package/dist/elements/index.d.ts +0 -16
  233. package/dist/elements/list.d.ts +0 -34
  234. package/dist/elements/loading-indicator.d.ts +4 -13
  235. package/dist/elements/menu.d.ts +5 -51
  236. package/dist/elements/navigation-bar.d.ts +4 -29
  237. package/dist/elements/navigation-rail.d.ts +8 -49
  238. package/dist/elements/preupgrade/badge.css +1 -1
  239. package/dist/elements/preupgrade/bottom-app-bar.css +1 -1
  240. package/dist/elements/preupgrade/bottom-sheet.css +1 -1
  241. package/dist/elements/preupgrade/button-group.css +1 -1
  242. package/dist/elements/preupgrade/button.css +2 -2
  243. package/dist/elements/preupgrade/card.css +2 -2
  244. package/dist/elements/preupgrade/carousel.css +1 -1
  245. package/dist/elements/preupgrade/checkbox.css +1 -1
  246. package/dist/elements/preupgrade/chips.css +1 -1
  247. package/dist/elements/preupgrade/datepicker.css +1 -1
  248. package/dist/elements/preupgrade/dialog.css +1 -1
  249. package/dist/elements/preupgrade/divider.css +1 -1
  250. package/dist/elements/preupgrade/drawer.css +1 -1
  251. package/dist/elements/preupgrade/extended-fab.css +2 -2
  252. package/dist/elements/preupgrade/fab-menu.css +1 -1
  253. package/dist/elements/preupgrade/fab.css +2 -2
  254. package/dist/elements/preupgrade/icon-button.css +1 -1
  255. package/dist/elements/preupgrade/list.css +1 -1
  256. package/dist/elements/preupgrade/loading-indicator.css +1 -1
  257. package/dist/elements/preupgrade/menu.css +1 -1
  258. package/dist/elements/preupgrade/navigation-bar.css +1 -1
  259. package/dist/elements/preupgrade/navigation-rail.css +1 -1
  260. package/dist/elements/preupgrade/progress.css +1 -1
  261. package/dist/elements/preupgrade/radios.css +1 -1
  262. package/dist/elements/preupgrade/search.css +1 -1
  263. package/dist/elements/preupgrade/select.css +1 -1
  264. package/dist/elements/preupgrade/side-sheet.css +1 -1
  265. package/dist/elements/preupgrade/slider.css +1 -1
  266. package/dist/elements/preupgrade/snackbar.css +1 -1
  267. package/dist/elements/preupgrade/split-button.css +1 -1
  268. package/dist/elements/preupgrade/switch.css +1 -1
  269. package/dist/elements/preupgrade/tabs.css +1 -1
  270. package/dist/elements/preupgrade/text-field.css +1 -1
  271. package/dist/elements/preupgrade/timepicker.css +1 -1
  272. package/dist/elements/preupgrade/toolbar.css +1 -1
  273. package/dist/elements/preupgrade/tooltip.css +1 -1
  274. package/dist/elements/preupgrade/top-app-bar.css +1 -1
  275. package/dist/elements/preupgrade.css +2 -2
  276. package/dist/elements/preupgrade.d.ts +0 -1
  277. package/dist/elements/preupgrade.js +1 -1
  278. package/dist/elements/progress.d.ts +0 -15
  279. package/dist/elements/radios.d.ts +0 -22
  280. package/dist/elements/search.d.ts +5 -53
  281. package/dist/elements/select.d.ts +0 -31
  282. package/dist/elements/side-sheet.d.ts +7 -29
  283. package/dist/elements/slider.d.ts +3 -22
  284. package/dist/elements/snackbar.d.ts +4 -28
  285. package/dist/elements/split-button.d.ts +0 -30
  286. package/dist/elements/styles.d.ts +0 -63
  287. package/dist/elements/switch.d.ts +5 -17
  288. package/dist/elements/tabs.d.ts +0 -22
  289. package/dist/elements/text-field.d.ts +4 -38
  290. package/dist/elements/timepicker.d.ts +4 -44
  291. package/dist/elements/toolbar.d.ts +8 -25
  292. package/dist/elements/tooltip.d.ts +4 -30
  293. package/dist/elements/top-app-bar.d.ts +7 -23
  294. package/dist/index.d.ts +0 -11
  295. package/dist/package.json +1 -1
  296. package/dist/react/create.d.ts +0 -42
  297. package/dist/react/index.d.ts +0 -6
  298. package/dist/react/jsx.d.ts +0 -13
  299. package/dist/solid/create.d.ts +0 -48
  300. package/dist/solid/index.d.ts +0 -6
  301. package/dist/solid/jsx.d.ts +1 -10
  302. package/dist/ssr/index.d.ts +0 -49
  303. package/dist/ssr/solid.d.ts +0 -4
  304. package/dist/ssr/svelte.d.ts +0 -4
  305. package/dist/ssr/vue.d.ts +0 -4
  306. package/dist/styles/badge.css +1 -1
  307. package/dist/styles/base.css +1 -1
  308. package/dist/styles/bottom-app-bar.css +1 -1
  309. package/dist/styles/bottom-sheet.css +1 -1
  310. package/dist/styles/button-group.css +1 -1
  311. package/dist/styles/button.css +1 -1
  312. package/dist/styles/card.css +1 -1
  313. package/dist/styles/carousel.css +1 -1
  314. package/dist/styles/checkbox.css +1 -1
  315. package/dist/styles/chips.css +1 -1
  316. package/dist/styles/contrast.css +1 -1
  317. package/dist/styles/datepicker.css +1 -1
  318. package/dist/styles/dialog.css +1 -1
  319. package/dist/styles/divider.css +1 -1
  320. package/dist/styles/drawer.css +1 -1
  321. package/dist/styles/extended-fab.css +2 -2
  322. package/dist/styles/fab-menu.css +2 -2
  323. package/dist/styles/fab.css +2 -2
  324. package/dist/styles/icon-button.css +1 -1
  325. package/dist/styles/list.css +1 -1
  326. package/dist/styles/loading-indicator.css +1 -1
  327. package/dist/styles/menu.css +1 -1
  328. package/dist/styles/navigation-bar.css +1 -1
  329. package/dist/styles/navigation-rail.css +1 -1
  330. package/dist/styles/progress.css +1 -1
  331. package/dist/styles/radios.css +1 -1
  332. package/dist/styles/search.css +1 -1
  333. package/dist/styles/select.css +1 -1
  334. package/dist/styles/side-sheet.css +1 -1
  335. package/dist/styles/slider.css +1 -1
  336. package/dist/styles/snackbar.css +1 -1
  337. package/dist/styles/split-button.css +1 -1
  338. package/dist/styles/switch.css +1 -1
  339. package/dist/styles/tabs.css +1 -1
  340. package/dist/styles/text-field.css +1 -1
  341. package/dist/styles/timepicker.css +1 -1
  342. package/dist/styles/toolbar.css +1 -1
  343. package/dist/styles/tooltip.css +1 -1
  344. package/dist/styles/top-app-bar.css +1 -1
  345. package/dist/styles/typography.css +1 -1
  346. package/dist/styles/utilities.css +1 -1
  347. package/dist/styles.css +2 -2
  348. package/dist/svelte/Button.svelte +5 -4
  349. package/dist/svelte/runtime.d.ts +8 -62
  350. package/dist/themes/autumn-contrast.css +1 -1
  351. package/dist/themes/autumn.css +1 -1
  352. package/dist/themes/baseline-contrast.css +1 -1
  353. package/dist/themes/baseline.css +1 -1
  354. package/dist/themes/brownbeige-contrast.css +1 -1
  355. package/dist/themes/brownbeige.css +1 -1
  356. package/dist/themes/content-contrast.css +1 -1
  357. package/dist/themes/content.css +1 -1
  358. package/dist/themes/desert-contrast.css +1 -1
  359. package/dist/themes/desert.css +1 -1
  360. package/dist/themes/expressive-contrast.css +1 -1
  361. package/dist/themes/expressive.css +1 -1
  362. package/dist/themes/fidelity-contrast.css +1 -1
  363. package/dist/themes/fidelity.css +1 -1
  364. package/dist/themes/forest-contrast.css +1 -1
  365. package/dist/themes/forest.css +1 -1
  366. package/dist/themes/fruit-salad-contrast.css +1 -1
  367. package/dist/themes/fruit-salad.css +1 -1
  368. package/dist/themes/highcontrast-contrast.css +1 -1
  369. package/dist/themes/highcontrast.css +1 -1
  370. package/dist/themes/monochrome-contrast.css +1 -1
  371. package/dist/themes/monochrome.css +1 -1
  372. package/dist/themes/neutral-contrast.css +1 -1
  373. package/dist/themes/neutral.css +1 -1
  374. package/dist/themes/ocean-contrast.css +1 -1
  375. package/dist/themes/ocean.css +1 -1
  376. package/dist/themes/rainbow-contrast.css +1 -1
  377. package/dist/themes/rainbow.css +1 -1
  378. package/dist/themes/sageivory-contrast.css +1 -1
  379. package/dist/themes/sageivory.css +1 -1
  380. package/dist/themes/spring-contrast.css +1 -1
  381. package/dist/themes/spring.css +1 -1
  382. package/dist/themes/summer-contrast.css +1 -1
  383. package/dist/themes/summer.css +1 -1
  384. package/dist/themes/sunset-contrast.css +1 -1
  385. package/dist/themes/sunset.css +1 -1
  386. package/dist/themes/tealcaramel-contrast.css +1 -1
  387. package/dist/themes/tealcaramel.css +1 -1
  388. package/dist/themes/vibrant-contrast.css +1 -1
  389. package/dist/themes/vibrant.css +1 -1
  390. package/dist/vue/create.d.ts +15 -58
  391. package/dist/vue/index.d.ts +0 -6
  392. package/package.json +1 -1
  393. package/src/styles/abstract/_floating-placement.scss +12 -0
  394. package/src/styles/components/_extended-fab.scss +34 -8
  395. package/src/styles/components/_fab-menu.scss +58 -8
  396. package/src/styles/components/_fab.scss +34 -8
  397. package/src/styles/elements/_button.scss +27 -5
  398. package/src/styles/elements/_card.scss +14 -0
  399. package/src/styles/elements/_extended-fab.scss +2 -0
  400. package/src/styles/elements/_fab.scss +2 -0
  401. package/dist/components/badge/api.d.ts +0 -41
  402. package/dist/components/badge/config.d.ts +0 -631
  403. package/dist/components/badge/features.d.ts +0 -38
  404. package/dist/components/bottom-app-bar/config.d.ts +0 -16
  405. package/dist/components/bottom-sheet/api.d.ts +0 -44
  406. package/dist/components/bottom-sheet/config.d.ts +0 -547
  407. package/dist/components/bottom-sheet/features/drag.d.ts +0 -35
  408. package/dist/components/bottom-sheet/features/index.d.ts +0 -3
  409. package/dist/components/bottom-sheet/features/state.d.ts +0 -31
  410. package/dist/components/bottom-sheet/features/structure.d.ts +0 -26
  411. package/dist/components/button/api.d.ts +0 -68
  412. package/dist/components/button/config.d.ts +0 -594
  413. package/dist/components/button/features/progress.d.ts +0 -43
  414. package/dist/components/button/features/toggle.d.ts +0 -43
  415. package/dist/components/button-group/config.d.ts +0 -147
  416. package/dist/components/card/api.d.ts +0 -24
  417. package/dist/components/card/config.d.ts +0 -635
  418. package/dist/components/card/features.d.ts +0 -124
  419. package/dist/components/carousel/api.d.ts +0 -20
  420. package/dist/components/carousel/arrangement.d.ts +0 -23
  421. package/dist/components/carousel/config.d.ts +0 -540
  422. package/dist/components/carousel/features/index.d.ts +0 -2
  423. package/dist/components/carousel/features/scroll.d.ts +0 -20
  424. package/dist/components/carousel/features/slides.d.ts +0 -18
  425. package/dist/components/carousel/keylines.d.ts +0 -68
  426. package/dist/components/carousel/strategy.d.ts +0 -36
  427. package/dist/components/checkbox/api.d.ts +0 -7
  428. package/dist/components/checkbox/config.d.ts +0 -568
  429. package/dist/components/chips/api.d.ts +0 -62
  430. package/dist/components/chips/chip/chip.d.ts +0 -4
  431. package/dist/components/chips/chip/constants.d.ts +0 -38
  432. package/dist/components/chips/chip/index.d.ts +0 -1
  433. package/dist/components/chips/config.d.ts +0 -583
  434. package/dist/components/chips/features/chip-items.d.ts +0 -39
  435. package/dist/components/chips/features/container.d.ts +0 -75
  436. package/dist/components/chips/features/controller.d.ts +0 -61
  437. package/dist/components/chips/features/dom.d.ts +0 -24
  438. package/dist/components/chips/features/index.d.ts +0 -4
  439. package/dist/components/chips/schema.d.ts +0 -35
  440. package/dist/components/datepicker/api.d.ts +0 -7
  441. package/dist/components/datepicker/config.d.ts +0 -542
  442. package/dist/components/datepicker/render.d.ts +0 -3
  443. package/dist/components/datepicker/utils.d.ts +0 -84
  444. package/dist/components/dialog/api.d.ts +0 -66
  445. package/dist/components/dialog/config.d.ts +0 -583
  446. package/dist/components/dialog/features.d.ts +0 -42
  447. package/dist/components/divider/features.d.ts +0 -6
  448. package/dist/components/drawer/api.d.ts +0 -55
  449. package/dist/components/drawer/config.d.ts +0 -620
  450. package/dist/components/drawer/features/headline.d.ts +0 -27
  451. package/dist/components/drawer/features/index.d.ts +0 -3
  452. package/dist/components/drawer/features/items.d.ts +0 -32
  453. package/dist/components/drawer/features/state.d.ts +0 -22
  454. package/dist/components/extended-fab/api.d.ts +0 -96
  455. package/dist/components/extended-fab/config.d.ts +0 -600
  456. package/dist/components/fab/api.d.ts +0 -74
  457. package/dist/components/fab/config.d.ts +0 -596
  458. package/dist/components/fab-menu/config.d.ts +0 -11
  459. package/dist/components/fab-menu/stagger.d.ts +0 -10
  460. package/dist/components/icon-button/api.d.ts +0 -84
  461. package/dist/components/icon-button/config.d.ts +0 -624
  462. package/dist/components/icon-button/features/toggle.d.ts +0 -133
  463. package/dist/components/list/api.d.ts +0 -156
  464. package/dist/components/list/config.d.ts +0 -625
  465. package/dist/components/list/features/anatomy.d.ts +0 -6
  466. package/dist/components/list/features/index.d.ts +0 -2
  467. package/dist/components/list/features/renderer.d.ts +0 -8
  468. package/dist/components/list/features/selection.d.ts +0 -3
  469. package/dist/components/loading-indicator/api.d.ts +0 -14
  470. package/dist/components/loading-indicator/config.d.ts +0 -557
  471. package/dist/components/loading-indicator/features/motion.d.ts +0 -22
  472. package/dist/components/menu/api.d.ts +0 -63
  473. package/dist/components/menu/config.d.ts +0 -576
  474. package/dist/components/menu/features/controller.d.ts +0 -15
  475. package/dist/components/menu/features/index.d.ts +0 -5
  476. package/dist/components/menu/features/keyboard.d.ts +0 -23
  477. package/dist/components/menu/features/layer.d.ts +0 -15
  478. package/dist/components/menu/features/loader.d.ts +0 -35
  479. package/dist/components/menu/features/opener.d.ts +0 -16
  480. package/dist/components/menu/features/position.d.ts +0 -18
  481. package/dist/components/menu/features/registry.d.ts +0 -37
  482. package/dist/components/menu/features/submenu.d.ts +0 -28
  483. package/dist/components/menu/features/tasks.d.ts +0 -9
  484. package/dist/components/navigation-bar/config.d.ts +0 -2
  485. package/dist/components/navigation-rail/config.d.ts +0 -2
  486. package/dist/components/progress/api.d.ts +0 -81
  487. package/dist/components/progress/config.d.ts +0 -620
  488. package/dist/components/progress/features/canvas.d.ts +0 -60
  489. package/dist/components/progress/features/circular.d.ts +0 -19
  490. package/dist/components/progress/features/colors.d.ts +0 -17
  491. package/dist/components/progress/features/index.d.ts +0 -8
  492. package/dist/components/progress/features/linear.d.ts +0 -25
  493. package/dist/components/progress/features/motion.d.ts +0 -43
  494. package/dist/components/progress/features/resize-observer.d.ts +0 -5
  495. package/dist/components/progress/features/state.d.ts +0 -44
  496. package/dist/components/radios/api.d.ts +0 -37
  497. package/dist/components/radios/config.d.ts +0 -568
  498. package/dist/components/radios/radio.d.ts +0 -26
  499. package/dist/components/search/api.d.ts +0 -63
  500. package/dist/components/search/config.d.ts +0 -657
  501. package/dist/components/search/features/index.d.ts +0 -4
  502. package/dist/components/search/features/input.d.ts +0 -93
  503. package/dist/components/search/features/states.d.ts +0 -111
  504. package/dist/components/search/features/structure.d.ts +0 -16
  505. package/dist/components/search/features/suggestions.d.ts +0 -60
  506. package/dist/components/select/api.d.ts +0 -8
  507. package/dist/components/select/config.d.ts +0 -18
  508. package/dist/components/select/features.d.ts +0 -14
  509. package/dist/components/side-sheet/api.d.ts +0 -34
  510. package/dist/components/side-sheet/config.d.ts +0 -547
  511. package/dist/components/side-sheet/features/index.d.ts +0 -2
  512. package/dist/components/side-sheet/features/state.d.ts +0 -28
  513. package/dist/components/side-sheet/features/structure.d.ts +0 -21
  514. package/dist/components/slider/api.d.ts +0 -65
  515. package/dist/components/slider/config.d.ts +0 -605
  516. package/dist/components/slider/features/axis.d.ts +0 -42
  517. package/dist/components/slider/features/controller.d.ts +0 -528
  518. package/dist/components/slider/features/dom.d.ts +0 -22
  519. package/dist/components/slider/features/handlers.d.ts +0 -16
  520. package/dist/components/slider/features/index.d.ts +0 -5
  521. package/dist/components/slider/features/range.d.ts +0 -14
  522. package/dist/components/slider/features/states.d.ts +0 -76
  523. package/dist/components/slider/features/tracks.d.ts +0 -50
  524. package/dist/components/snackbar/api.d.ts +0 -7
  525. package/dist/components/snackbar/config.d.ts +0 -596
  526. package/dist/components/snackbar/features.d.ts +0 -26
  527. package/dist/components/snackbar/layer.d.ts +0 -23
  528. package/dist/components/snackbar/position.d.ts +0 -16
  529. package/dist/components/snackbar/queue.d.ts +0 -15
  530. package/dist/components/split-button/api.d.ts +0 -14
  531. package/dist/components/split-button/config.d.ts +0 -553
  532. package/dist/components/split-button/features/buttons.d.ts +0 -8
  533. package/dist/components/split-button/features/menu.d.ts +0 -10
  534. package/dist/components/switch/api.d.ts +0 -7
  535. package/dist/components/switch/config.d.ts +0 -558
  536. package/dist/components/switch/features.d.ts +0 -63
  537. package/dist/components/tabs/api.d.ts +0 -54
  538. package/dist/components/tabs/config.d.ts +0 -31
  539. package/dist/components/tabs/features.d.ts +0 -131
  540. package/dist/components/tabs/scroll-indicators.d.ts +0 -18
  541. package/dist/components/tabs/state.d.ts +0 -48
  542. package/dist/components/text-field/api.d.ts +0 -29
  543. package/dist/components/text-field/config.d.ts +0 -560
  544. package/dist/components/text-field/features/counter.d.ts +0 -29
  545. package/dist/components/text-field/features/density.d.ts +0 -28
  546. package/dist/components/text-field/features/error.d.ts +0 -55
  547. package/dist/components/text-field/features/field.d.ts +0 -37
  548. package/dist/components/text-field/features/index.d.ts +0 -20
  549. package/dist/components/text-field/features/leading-icon.d.ts +0 -68
  550. package/dist/components/text-field/features/placement.d.ts +0 -30
  551. package/dist/components/text-field/features/prefix-text.d.ts +0 -67
  552. package/dist/components/text-field/features/required.d.ts +0 -33
  553. package/dist/components/text-field/features/suffix-text.d.ts +0 -67
  554. package/dist/components/text-field/features/supporting-text.d.ts +0 -59
  555. package/dist/components/timepicker/api.d.ts +0 -26
  556. package/dist/components/timepicker/config.d.ts +0 -570
  557. package/dist/components/timepicker/dial.d.ts +0 -35
  558. package/dist/components/timepicker/render.d.ts +0 -9
  559. package/dist/components/timepicker/utils.d.ts +0 -55
  560. package/dist/components/toolbar/config.d.ts +0 -19
  561. package/dist/components/tooltip/api.d.ts +0 -18
  562. package/dist/components/tooltip/config.d.ts +0 -563
  563. package/dist/components/top-app-bar/config.d.ts +0 -16
  564. package/dist/core/compose/features/constants.d.ts +0 -8
  565. package/dist/core/dom/direction.d.ts +0 -16
  566. package/dist/core/dom/form-value.d.ts +0 -24
  567. package/dist/core/dom/utils.d.ts +0 -33
  568. package/dist/core/navigation/ripple.d.ts +0 -2
  569. package/dist/core/utils/attributes.d.ts +0 -29
  570. package/dist/core/utils/validate.d.ts +0 -73
  571. package/dist/core/utils/warn.d.ts +0 -16
  572. package/dist/elements/form-button.d.ts +0 -29
  573. package/dist/elements/lifecycle.d.ts +0 -4
  574. package/dist/elements/sheet.d.ts +0 -44
  575. package/dist/react/shadow.d.ts +0 -2
  576. package/dist/solid/shadow.d.ts +0 -3
  577. package/dist/vue/shadow.d.ts +0 -7
@@ -1,377 +1,109 @@
1
1
  import type { ForwardedEventPayload } from "../../core/dom/index.js";
2
2
  import type { NormalizedEvent } from "../../core/utils/mobile.js";
3
- /** Normalized touch-end event emitted by the interactive root on touch devices. */
4
3
  export type TimePickerTapPayload = NormalizedEvent;
5
- /** Horizontal swipe emitted by the interactive root on touch devices. */
6
4
  export interface TimePickerSwipePayload {
7
5
  direction: "left" | "right";
8
6
  deltaX: number;
9
7
  deltaY: number;
10
8
  }
11
- /**
12
- * The committed 24-hour value carried by `change` and `confirm`.
13
- */
14
9
  export interface TimePickerValueEvent {
15
- /** HH:MM, or HH:MM:SS with showSeconds */
16
10
  value: string;
17
11
  }
18
- /** A draft edit while the committed value remains available as `value`. */
19
12
  export interface TimePickerInputEvent extends TimePickerValueEvent {
20
- /** The uncommitted 24-hour value shown in the open picker. */
21
13
  draftValue: string;
22
14
  }
23
- /** Events emitted by the picker API and its interactive root. */
24
15
  export interface TimePickerEvents {
25
- /**
26
- * The committed 24-hour value (HH:MM, or HH:MM:SS with showSeconds), also
27
- * submitted by the form: once when OK commits a different time. setValue is
28
- * silent. Moves on the dial or in the fields are `input`.
29
- */
30
16
  change: (event: TimePickerValueEvent) => void;
31
- /** The committed value and draft as the dial, fields or AM/PM change. */
32
17
  input: (event: TimePickerInputEvent) => void;
33
- /** The confirmed 24-hour value, matching getValue() and the submitted form value. */
34
18
  confirm: (event: TimePickerValueEvent) => void;
35
19
  open: () => void;
36
20
  close: () => void;
37
21
  cancel: () => void;
38
- /** Root events; the dialog is inside the root, so its clicks and keys reach these too. */
39
22
  click: (payload: ForwardedEventPayload<MouseEvent, HTMLElement>) => void;
40
23
  keydown: (payload: ForwardedEventPayload<KeyboardEvent, HTMLElement>) => void;
41
24
  tap: (payload: TimePickerTapPayload) => void;
42
25
  swipe: (payload: TimePickerSwipePayload) => void;
43
26
  }
44
- /**
45
- * Time picker display type
46
- * @enum {string}
47
- */
48
27
  export declare enum TIME_PICKER_TYPE {
49
- /** Clock dial-based time picker */
50
28
  DIAL = "dial",
51
- /** Text input-based time picker */
52
29
  INPUT = "input"
53
30
  }
54
- /**
55
- * Time picker orientation
56
- * @enum {string}
57
- */
58
31
  export declare enum TIME_PICKER_ORIENTATION {
59
- /** Vertical layout (default on mobile) */
60
32
  VERTICAL = "vertical",
61
- /** Horizontal layout */
62
33
  HORIZONTAL = "horizontal"
63
34
  }
64
- /**
65
- * Time format (12-hour or 24-hour)
66
- * @enum {string}
67
- */
68
35
  export declare enum TIME_FORMAT {
69
- /** 12-hour format with AM/PM */
70
36
  AMPM = "12h",
71
- /** 24-hour format */
72
37
  MILITARY = "24h"
73
38
  }
74
- /** A time format as the enum or its string value, `'12h'` or `'24h'` */
75
39
  export type TimeFormat = TIME_FORMAT | `${TIME_FORMAT}`;
76
- /** A time picker type as the enum or its string value, `'dial'` or `'input'` */
77
40
  export type TimePickerType = TIME_PICKER_TYPE | `${TIME_PICKER_TYPE}`;
78
- /** An orientation as the enum or its string value, `'vertical'` or `'horizontal'` */
79
41
  export type TimePickerOrientation = TIME_PICKER_ORIENTATION | `${TIME_PICKER_ORIENTATION}`;
80
- /**
81
- * Period of day for 12-hour format
82
- * @enum {string}
83
- */
84
42
  export declare enum TIME_PERIOD {
85
- /** Morning */
86
43
  AM = "AM",
87
- /** Afternoon/Evening */
88
44
  PM = "PM"
89
45
  }
90
- /**
91
- * Configuration interface for the TimePicker component
92
- * @category Components
93
- */
94
46
  export interface TimePickerConfig {
95
- /**
96
- * Initial time value in 24-hour format (HH:MM)
97
- * @example '14:30'
98
- */
99
47
  value?: string;
100
- /**
101
- * Form field name. A time picker renders no form control of its own, so it
102
- * submits nothing unless this is set; with it, a hidden input on the
103
- * picker's element carries the current time as 24-hour `HH:mm` — or
104
- * `HH:mm:ss` when `showSeconds` is on — whatever format the picker displays.
105
- */
106
48
  name?: string;
107
- /**
108
- * Type of time picker to display
109
- * @default TIME_PICKER_TYPE.DIAL
110
- */
111
49
  type?: TimePickerType;
112
- /**
113
- * Time format to use (12h or 24h)
114
- * @default TIME_FORMAT.AMPM
115
- */
116
50
  format?: TimeFormat;
117
- /**
118
- * Layout orientation for the time picker
119
- * @default TIME_PICKER_ORIENTATION.VERTICAL
120
- */
121
51
  orientation?: TimePickerOrientation;
122
- /**
123
- * Title text for the time picker
124
- * @example 'Select departure time'
125
- */
126
52
  title?: string;
127
- /**
128
- * Whether to show seconds selector
129
- * @default false
130
- */
131
53
  showSeconds?: boolean;
132
- /**
133
- * Additional CSS classes to add to the time picker
134
- * @example 'custom-picker dark-theme'
135
- */
136
54
  class?: string;
137
- /**
138
- * Component prefix for class names
139
- * @default 'mtrl'
140
- */
141
55
  prefix?: string;
142
- /**
143
- * Component name used in class generation
144
- */
145
56
  componentName?: string;
146
- /**
147
- * Earliest selectable time, 24-hour `HH:MM` or `HH:MM:SS`. Dial numbers and
148
- * AM/PM that cannot reach it are disabled, and a picked or typed time before
149
- * it moves up to it. `setValue` is not held to it.
150
- * @example '09:00'
151
- */
152
57
  minTime?: string;
153
- /**
154
- * Latest selectable time, 24-hour `HH:MM` or `HH:MM:SS`; as `minTime`, at the
155
- * other end.
156
- * @example '18:00'
157
- */
158
58
  maxTime?: string;
159
- /**
160
- * Minute step: dial minutes off it are disabled, a pointer between them picks
161
- * the nearest, and a typed minute rounds to it when committed.
162
- * @default 1
163
- */
164
59
  minuteStep?: number;
165
- /**
166
- * Second step, as `minuteStep`, when seconds are shown.
167
- * @default 1
168
- */
169
60
  secondStep?: number;
170
- /**
171
- * Custom text for cancel button
172
- * @default 'Cancel'
173
- */
174
61
  cancelText?: string;
175
- /**
176
- * Custom text for confirm button
177
- * @default 'OK'
178
- */
179
62
  confirmText?: string;
180
- /**
181
- * Whether the time picker is open when the factory returns: `isOpen()` is
182
- * true and `open` has been emitted (to `onOpen`). Its surface is shown a
183
- * task later, in the place the picker has been put by then, or in the body.
184
- * It was `isOpen`, the name of the method that reads the state.
185
- * @default false
186
- */
187
63
  open?: boolean;
188
- /**
189
- * Whether the picker is disabled: it does not open
190
- * @default false
191
- */
192
64
  disabled?: boolean;
193
- /**
194
- * Where the dialog is appended. By default it stays in the component's own
195
- * element, as the other modals' do; it was document.body.
196
- * @default the component's element
197
- */
198
65
  container?: string | HTMLElement;
199
- /**
200
- * Custom icon for the clock button
201
- */
202
66
  clockIcon?: string;
203
- /**
204
- * Custom icon for the keyboard button
205
- */
206
67
  keyboardIcon?: string;
207
- /**
208
- * `change` listener registered at creation. The user commits a new time on
209
- * OK; setValue is silent. The argument is `{ value }` (HH:MM, or HH:MM:SS).
210
- */
211
68
  onChange?: TimePickerEvents["change"];
212
- /**
213
- * `input` listener registered at creation, as the draft changes while the
214
- * picker is open.
215
- */
216
69
  onInput?: TimePickerEvents["input"];
217
- /**
218
- * `open` listener registered at creation.
219
- */
220
70
  onOpen?: TimePickerEvents["open"];
221
- /**
222
- * `close` listener registered at creation.
223
- */
224
71
  onClose?: TimePickerEvents["close"];
225
- /**
226
- * `confirm` listener registered at creation. The argument is `{ value }`,
227
- * the same 24-hour string `getValue()` returns.
228
- */
229
72
  onConfirm?: TimePickerEvents["confirm"];
230
- /**
231
- * `cancel` listener registered at creation.
232
- */
233
73
  onCancel?: TimePickerEvents["cancel"];
234
74
  }
235
- /**
236
- * Configuration as it leaves `createBaseConfig`.
237
- *
238
- * `TimePickerConfig` marks these optional because a caller may omit them.
239
- * Once the defaults have been merged they are all present, and everything
240
- * downstream — the renderer, the clock dial, the API — reads them as such.
241
- * Saying so here is what lets that hold without each reader guessing.
242
- * @category Components
243
- * @internal
244
- */
245
75
  export type ResolvedTimePickerConfig = TimePickerConfig & Required<Pick<TimePickerConfig, "type" | "format" | "orientation" | "showSeconds" | "minuteStep" | "secondStep" | "cancelText" | "confirmText" | "open" | "clockIcon" | "keyboardIcon" | "prefix">> & {
246
- /** The dialog title's id, unique per picker. */
247
76
  titleId?: string;
248
77
  };
249
- /**
250
- * Time value object
251
- * @category Components
252
- */
253
78
  export interface TimeValue {
254
- /** Hours (0-23) */
255
79
  hours: number;
256
- /** Minutes (0-59) */
257
80
  minutes: number;
258
- /** Seconds (0-59), optional */
259
81
  seconds?: number;
260
- /** AM/PM for 12-hour format */
261
82
  period?: TIME_PERIOD;
262
83
  }
263
- /**
264
- * TimePicker component interface
265
- * @category Components
266
- */
267
84
  export interface TimePickerComponent {
268
- /** The time picker's container DOM element */
269
85
  element: HTMLElement;
270
- /** Modal container element */
271
86
  modalElement: HTMLElement;
272
- /** Dialog container element */
273
87
  dialogElement: HTMLElement;
274
- /** Whether the time picker is currently open */
275
88
  isOpen: () => boolean;
276
- /**
277
- * Opens the time picker. When it returns, `isOpen()` is true and `open` has
278
- * been emitted; the surface may be painted after `open()` returns. On an
279
- * open or disabled picker it does nothing.
280
- * @returns The time picker component for chaining
281
- */
282
89
  open: () => TimePickerComponent;
283
- /**
284
- * Closes the time picker
285
- * @returns The time picker component for chaining
286
- */
287
90
  close: () => TimePickerComponent;
288
- /**
289
- * Toggles the time picker open/closed state
290
- * @returns The time picker component for chaining
291
- */
292
91
  toggle: () => TimePickerComponent;
293
- /**
294
- * Gets the current time value
295
- * @returns Current time string in 24-hour format (HH:MM, or HH:MM:SS when showSeconds is true)
296
- */
297
92
  getValue: () => string;
298
- /**
299
- * Gets the current time as a TimeValue object
300
- * @returns Current time object with hours, minutes, seconds, and period
301
- */
302
93
  getTimeObject: () => TimeValue;
303
- /**
304
- * Sets the time value. Silent: neither `change` nor onChange
305
- * @param time - Time string in 24-hour format (HH:MM or HH:MM:SS)
306
- * @returns The time picker component for chaining
307
- */
308
94
  setValue: (time: string) => TimePickerComponent;
309
- /**
310
- * Sets the time picker type (dial or input)
311
- * @param type - Time picker type
312
- * @returns The time picker component for chaining
313
- */
314
95
  setType: (type: TimePickerType) => TimePickerComponent;
315
- /**
316
- * Gets the current time picker type
317
- * @returns Current time picker type
318
- */
319
96
  getType: () => TIME_PICKER_TYPE;
320
- /**
321
- * Sets the time format (12h or 24h)
322
- * @param format - Time format
323
- * @returns The time picker component for chaining
324
- */
325
97
  setFormat: (format: TimeFormat) => TimePickerComponent;
326
- /**
327
- * Gets the current time format
328
- * @returns Current time format
329
- */
330
98
  getFormat: () => TIME_FORMAT;
331
- /**
332
- * Sets the time picker orientation
333
- * @param orientation - Time picker orientation
334
- * @returns The time picker component for chaining
335
- */
336
99
  setOrientation: (orientation: TimePickerOrientation) => TimePickerComponent;
337
- /**
338
- * Gets the current time picker orientation
339
- * @returns Current time picker orientation
340
- */
341
100
  getOrientation: () => TIME_PICKER_ORIENTATION;
342
- /**
343
- * Sets the time picker title
344
- * @param title - Title text
345
- * @returns The time picker component for chaining
346
- */
347
101
  setTitle: (title: string) => TimePickerComponent;
348
- /**
349
- * Gets the current time picker title
350
- * @returns Current title text
351
- */
352
102
  getTitle: () => string;
353
- /** Enables the picker */
354
103
  enable: () => TimePickerComponent;
355
- /** Disables the picker: it does not open, and an open one is cancelled */
356
104
  disable: () => TimePickerComponent;
357
- /** Whether the picker is disabled */
358
105
  isDisabled: () => boolean;
359
- /**
360
- * Destroys the time picker component and cleans up resources
361
- */
362
106
  destroy: () => void;
363
- /**
364
- * Adds an event listener to the time picker
365
- * @param event - Event name ('change', 'open', 'close', etc.)
366
- * @param handler - Event handler function
367
- * @returns The time picker component for chaining
368
- */
369
107
  on: <K extends keyof TimePickerEvents>(event: K, handler: TimePickerEvents[K]) => TimePickerComponent;
370
- /**
371
- * Removes an event listener from the time picker
372
- * @param event - Event name
373
- * @param handler - Event handler function
374
- * @returns The time picker component for chaining
375
- */
376
108
  off: <K extends keyof TimePickerEvents>(event: K, handler: TimePickerEvents[K]) => TimePickerComponent;
377
109
  }
@@ -1,35 +1,18 @@
1
- /**
2
- * Toolbar variants (m3.material.io toolbars)
3
- * - docked: full width at the bottom of the window, for global actions
4
- * - floating: a pill above the content, for contextual actions
5
- */
6
1
  export declare const TOOLBAR_VARIANTS: {
7
2
  readonly DOCKED: "docked";
8
3
  readonly FLOATING: "floating";
9
4
  };
10
5
  export type ToolbarVariant = (typeof TOOLBAR_VARIANTS)[keyof typeof TOOLBAR_VARIANTS];
11
- /**
12
- * Toolbar colours
13
- * - standard: surface container, low emphasis
14
- * - vibrant: primary container, high emphasis (e.g. an edit mode)
15
- */
16
6
  export declare const TOOLBAR_COLORS: {
17
7
  readonly STANDARD: "standard";
18
8
  readonly VIBRANT: "vibrant";
19
9
  };
20
10
  export type ToolbarColor = (typeof TOOLBAR_COLORS)[keyof typeof TOOLBAR_COLORS];
21
- /** Floating toolbar layouts. A docked toolbar is always horizontal. */
22
11
  export declare const TOOLBAR_ORIENTATIONS: {
23
12
  readonly HORIZONTAL: "horizontal";
24
13
  readonly VERTICAL: "vertical";
25
14
  };
26
15
  export type ToolbarOrientation = (typeof TOOLBAR_ORIENTATIONS)[keyof typeof TOOLBAR_ORIENTATIONS];
27
- /**
28
- * Where the toolbar sits in its positioned container.
29
- * - none: in the flow, placed by the page
30
- * - bottom, top: a horizontal toolbar (docked: bottom only)
31
- * - start, end: a vertical toolbar, on the reading-direction side
32
- */
33
16
  export declare const TOOLBAR_PLACEMENTS: {
34
17
  readonly NONE: "none";
35
18
  readonly BOTTOM: "bottom";
@@ -38,27 +21,17 @@ export declare const TOOLBAR_PLACEMENTS: {
38
21
  readonly END: "end";
39
22
  };
40
23
  export type ToolbarPlacement = (typeof TOOLBAR_PLACEMENTS)[keyof typeof TOOLBAR_PLACEMENTS];
41
- /**
42
- * How a docked toolbar lays out its items: spread evenly across the width
43
- * (compact windows), or centred 32dp apart (medium windows and up).
44
- */
45
24
  export declare const TOOLBAR_ARRANGEMENTS: {
46
25
  readonly SPREAD: "spread";
47
26
  readonly CENTER: "center";
48
27
  };
49
28
  export type ToolbarArrangement = (typeof TOOLBAR_ARRANGEMENTS)[keyof typeof TOOLBAR_ARRANGEMENTS];
50
- /** Scroll behaviours: stay on screen, or leave it while scrolling forward. */
51
29
  export declare const TOOLBAR_SCROLL_BEHAVIORS: {
52
30
  readonly NONE: "none";
53
31
  readonly EXIT: "exit";
54
32
  };
55
33
  export type ToolbarScrollBehavior = (typeof TOOLBAR_SCROLL_BEHAVIORS)[keyof typeof TOOLBAR_SCROLL_BEHAVIORS];
56
- /** Which side of a floating toolbar its FAB sits on, along the toolbar. */
57
34
  export type ToolbarFabPosition = "start" | "end";
58
- /**
59
- * The scroll distance, in px, that hides or shows the toolbar
60
- * (Compose FloatingToolbarDefaults.ScrollDistanceThreshold, 40dp).
61
- */
62
35
  export declare const TOOLBAR_SCROLL_THRESHOLD = 40;
63
36
  export declare const TOOLBAR_EVENTS: {
64
37
  readonly SHOW: "show";
@@ -1,29 +1,4 @@
1
1
  import type { ToolbarConfig, ToolbarComponent } from "./types.js";
2
- /**
3
- * Creates a toolbar: M3 Expressive's docked and floating toolbars.
4
- *
5
- * The element with the `toolbar` role holds the items and is one tab stop,
6
- * walked with the arrow keys, Home and End. A paired FAB sits beside it,
7
- * outside that tab stop.
8
- *
9
- * @param config - Toolbar configuration
10
- * @returns A toolbar component
11
- * @category Components
12
- * @see https://m3.material.io/components/toolbars/overview
13
- *
14
- * @example
15
- * ```ts
16
- * const toolbar = createToolbar({
17
- * variant: 'floating',
18
- * placement: 'bottom',
19
- * items: [
20
- * { icon: boldIcon, ariaLabel: 'Bold', toggle: true },
21
- * { icon: italicIcon, ariaLabel: 'Italic', toggle: true },
22
- * ],
23
- * overflow: (opener) => createMenu({ opener, items: moreItems }),
24
- * });
25
- * ```
26
- */
27
2
  declare const createToolbar: (config?: ToolbarConfig) => ToolbarComponent;
28
3
  export default createToolbar;
29
4
  export { createToolbar };
@@ -3,150 +3,48 @@ import type { BaseComponentConfig } from "../../core/config/component.js";
3
3
  import type { ButtonConfig } from "../button/types.js";
4
4
  import type { IconButtonConfig } from "../icon-button/types.js";
5
5
  import type { ToolbarVariant, ToolbarColor, ToolbarOrientation, ToolbarPlacement, ToolbarArrangement, ToolbarScrollBehavior, ToolbarFabPosition } from "./constants.js";
6
- /** Anything the toolbar can hold that already exists: an element, or a component carrying one. */
7
6
  export type ToolbarElementItem = HTMLElement | {
8
7
  element: HTMLElement;
9
8
  };
10
- /** A button the toolbar creates from its config: a label is what makes it a button. */
11
9
  export type ToolbarButtonItem = ButtonConfig & {
12
10
  text: string;
13
11
  };
14
- /**
15
- * An item of the toolbar:
16
- * - an icon button config (`icon`, `ariaLabel`, and `toggle`, `selected`,
17
- * `variant`, `width` as on createIconButton), created by the toolbar;
18
- * - a button config with `text`, created by the toolbar;
19
- * - an element or a component, such as a text field or a divider, added as it is.
20
- */
21
12
  export type ToolbarItem = ToolbarElementItem | ToolbarButtonItem | IconButtonConfig;
22
- /**
23
- * Configuration of a toolbar
24
- * @category Components
25
- * @see https://m3.material.io/components/toolbars/overview
26
- */
27
13
  export interface ToolbarConfig extends BaseComponentConfig {
28
- /**
29
- * Docked (full width, global actions) or floating (a pill, contextual actions)
30
- * @default 'docked'
31
- */
32
14
  variant?: ToolbarVariant | string;
33
- /**
34
- * Standard (surface container) or vibrant (primary container)
35
- * @default 'standard'
36
- */
37
15
  color?: ToolbarColor | string;
38
- /**
39
- * Layout of a floating toolbar. A docked toolbar is always horizontal.
40
- * @default 'horizontal'
41
- */
42
16
  orientation?: ToolbarOrientation | string;
43
- /**
44
- * Where the toolbar sits in its positioned container: `'none'` leaves it in
45
- * the flow. A horizontal toolbar takes `'bottom'` or `'top'` (docked: bottom
46
- * only), a vertical one `'start'` or `'end'`.
47
- * @default 'none'
48
- */
49
17
  placement?: ToolbarPlacement | string;
50
- /**
51
- * How a docked toolbar lays out its items: spread across the width, or centred 32dp apart
52
- * @default 'spread'
53
- */
54
18
  arrangement?: ToolbarArrangement | string;
55
- /**
56
- * Whether a floating toolbar casts a shadow (elevation level 1). Remove it
57
- * when the content beneath is visually distinct. A docked toolbar has none.
58
- * @default true for floating
59
- */
60
19
  elevated?: boolean;
61
- /** The items, in order */
62
20
  items?: ToolbarItem[];
63
- /**
64
- * A FAB paired with a floating toolbar, outside its tab stop. Create it with
65
- * createFab; a vibrant toolbar pairs with a `tertiary-container` FAB.
66
- */
67
21
  fab?: ToolbarElementItem;
68
- /**
69
- * Which end of the toolbar the FAB sits at, along its layout
70
- * @default 'end'
71
- */
72
22
  fabPosition?: ToolbarFabPosition | string;
73
- /**
74
- * Adds a trailing "more" icon button and calls this with it, to build the
75
- * overflow menu the button opens: `(opener) => createMenu({ opener, items })`.
76
- * The toolbar itself does not import the menu.
77
- */
78
23
  overflow?: (opener: HTMLElement) => unknown;
79
- /**
80
- * Icon of the overflow button
81
- * @default a "more vertical" icon
82
- */
83
24
  overflowIcon?: string;
84
- /**
85
- * Accessible name of the overflow button
86
- * @default 'More options'
87
- */
88
25
  overflowLabel?: string;
89
- /**
90
- * `'exit'` hides the toolbar while the content scrolls forward and shows it
91
- * when it scrolls back
92
- * @default 'none'
93
- */
94
26
  scrollBehavior?: ToolbarScrollBehavior | string;
95
- /**
96
- * What scrolls, for `scrollBehavior: 'exit'`
97
- * @default window
98
- */
99
27
  scrollTarget?: HTMLElement | Window;
100
- /**
101
- * The scroll distance, in px, that hides or shows the toolbar
102
- * @default 40
103
- */
104
28
  scrollThreshold?: number;
105
- /**
106
- * Accessible name of the toolbar
107
- * @default 'Toolbar'
108
- */
109
29
  ariaLabel?: string;
110
- /** Additional CSS classes */
111
30
  class?: string;
112
31
  }
113
- /** Events of a toolbar */
114
32
  export interface ToolbarEvents {
115
- /** The toolbar came back on screen */
116
33
  show: () => void;
117
- /** The toolbar left the screen */
118
34
  hide: () => void;
119
35
  }
120
- /**
121
- * A toolbar
122
- * @category Components
123
- */
124
36
  export interface ToolbarComponent extends ElementComponent {
125
- /** The element with the `toolbar` role, which holds the items */
126
37
  bar: HTMLElement;
127
- /** The overflow button, when `overflow` is set */
128
38
  overflowButton: HTMLElement | null;
129
- /**
130
- * Adds an item at the end, before the overflow button
131
- * @returns The item's element
132
- */
133
39
  add(item: ToolbarItem): HTMLElement;
134
- /** Removes an item; one the toolbar created is destroyed */
135
40
  remove(item: ToolbarElementItem): this;
136
- /** The item elements, in order, without the overflow button */
137
41
  getItems(): HTMLElement[];
138
- /** Brings the toolbar back on screen */
139
42
  show(): this;
140
- /** Moves the toolbar off screen and out of the focus order */
141
43
  hide(): this;
142
- /** Whether the toolbar is on screen */
143
44
  isVisible(): boolean;
144
- /** Changes the colour */
145
45
  setColor(color: ToolbarColor | string): this;
146
- /** The current colour */
147
46
  getColor(): ToolbarColor;
148
47
  on<K extends keyof ToolbarEvents>(event: K, handler: ToolbarEvents[K]): this;
149
48
  off<K extends keyof ToolbarEvents>(event: K, handler: ToolbarEvents[K]): this;
150
- /** Removes the toolbar, its listeners and the items it created */
151
49
  destroy(): void;
152
50
  }