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,19 +1,11 @@
1
1
  import type { ElementComponent } from "../../core/compose/index.js";
2
2
  import type { BaseComponentConfig } from "../../core/config/component.js";
3
3
  import type { FabMenuColor, FabMenuSize, FabMenuPresentation, FabMenuPlacement } from "./constants.js";
4
- /** An action of the menu */
5
4
  export interface FabMenuItem {
6
- /** Identifies the item in `select` */
7
5
  id: string;
8
- /** The label: always shown (m3.material.io FAB menu guidelines) */
9
6
  text: string;
10
- /** Icon HTML, 24dp. Markup (HTML). Not sanitized by default: see Markup and sanitizing. The menu opts out of server rendering, so the server leaves this escaped until the component upgrades. */
11
7
  icon?: string;
12
8
  }
13
- /**
14
- * What the menu presentation needs from a menu: the baseline menu
15
- * (createMenu), or one the app brings.
16
- */
17
9
  export interface FabMenuMenu {
18
10
  open(event?: Event, interactionType?: "mouse" | "keyboard"): unknown;
19
11
  close(event?: Event, restoreFocus?: boolean): unknown;
@@ -24,107 +16,35 @@ export interface FabMenuMenu {
24
16
  destroy(): void;
25
17
  element: HTMLElement;
26
18
  }
27
- /**
28
- * Configuration of a FAB menu
29
- * @category Components
30
- * @see https://m3.material.io/components/fab-menu/overview
31
- */
32
19
  export interface FabMenuConfig extends BaseComponentConfig {
33
- /** The FAB's icon HTML. Markup (HTML). Not sanitized by default: see Markup and sanitizing. The menu opts out of server rendering, so the server leaves this escaped until the component upgrades. */
34
20
  icon: string;
35
- /** The FAB's accessible name: it describes the menu the FAB opens */
36
21
  ariaLabel: string;
37
- /**
38
- * The actions, 2 to 6 (m3.material.io FAB menu guidelines). Top to bottom:
39
- * the last one is nearest the FAB.
40
- */
41
22
  items: FabMenuItem[];
42
- /**
43
- * Colour set: the FAB is the role's container, the close button the role,
44
- * the items the container
45
- * @default 'primary'
46
- */
47
23
  color?: FabMenuColor | string;
48
- /**
49
- * The size of the FAB the menu opens from
50
- * @default 'default'
51
- */
52
24
  size?: FabMenuSize | string;
53
- /**
54
- * The expressive list (compact windows), the baseline menu (the site's rule
55
- * on the web), or either by the window's width
56
- * @default 'auto'
57
- */
58
25
  presentation?: FabMenuPresentation | string;
59
- /**
60
- * Where the FAB sits in its positioned container: 16dp from the window
61
- * edges, 24dp in large windows. `'none'` leaves it in the flow.
62
- * @default 'none'
63
- */
64
26
  placement?: FabMenuPlacement | string;
65
- /** The icon of the close button, 20dp. Default: a close icon. Markup (HTML). Not sanitized by default: see Markup and sanitizing. */
66
27
  closeIcon?: string;
67
- /**
68
- * A menu of the app's own for the menu presentation, in place of the
69
- * baseline menu the FAB menu loads when it needs one. Built with the FAB as
70
- * its opener; the FAB menu opens and closes it.
71
- */
72
28
  menu?: (opener: HTMLElement, items: FabMenuItem[]) => FabMenuMenu;
73
- /** Additional CSS classes */
74
29
  class?: string;
75
30
  }
76
- /** Events of a FAB menu */
77
31
  export interface FabMenuEvents {
78
- /** The menu opened */
79
32
  open: () => void;
80
- /** The menu closed */
81
33
  close: () => void;
82
- /**
83
- * An item was chosen; the menu closes. `value` is the item's id again, as
84
- * the `value` of `<m-fab-menu>`'s `select` (the payload rule)
85
- */
86
34
  select: (event: {
87
35
  id: string;
88
36
  value: string;
89
37
  }) => void;
90
38
  }
91
- /**
92
- * A FAB menu
93
- * @category Components
94
- */
95
39
  export interface FabMenuComponent extends ElementComponent {
96
- /** The FAB, which becomes the close button of the list */
97
40
  fab: HTMLElement;
98
- /** The list of the list presentation: `role="menu"` */
99
41
  list: HTMLElement;
100
- /**
101
- * Opens the menu. When it returns, `isOpen()` is true, the FAB has
102
- * `aria-expanded="true"` and `open` has been emitted. In the `menu`
103
- * presentation the surface is a module loaded on demand: it may be painted
104
- * after `open()` returns, and not at all when `close()` comes first. On an
105
- * open menu it does nothing and emits nothing.
106
- *
107
- * While that module loads for the first time: Escape and a click outside
108
- * do not close the menu yet (they are the surface's own, once it is
109
- * shown), and a second click on the FAB does; opened again, the surface
110
- * opens as the last call asked; and if the module fails to load the menu
111
- * closes again, with `close`. On `<m-fab-menu>` opened by its `open`
112
- * attribute, which dispatches no `open`, that `close` is dispatched alone.
113
- */
114
42
  open(event?: Event): this;
115
- /**
116
- * Closes the menu. When it returns, `isOpen()` is false and `close` has
117
- * been emitted. On a closed menu it does nothing and emits nothing.
118
- */
119
43
  close(): this;
120
- /** Opens or closes the menu */
121
44
  toggle(event?: Event): this;
122
- /** Whether the menu is open */
123
45
  isOpen(): boolean;
124
- /** The presentation in use: 'list' or 'menu' */
125
46
  getPresentation(): "list" | "menu";
126
47
  on<K extends keyof FabMenuEvents>(event: K, handler: FabMenuEvents[K]): this;
127
48
  off<K extends keyof FabMenuEvents>(event: K, handler: FabMenuEvents[K]): this;
128
- /** Removes the FAB menu, its listeners and its menu */
129
49
  destroy(): void;
130
50
  }
@@ -1,125 +1,44 @@
1
- /**
2
- * IconButton variants following Material Design 3 guidelines
3
- *
4
- * Four built-in color styles, in order of emphasis:
5
- * - filled: Highest emphasis, key actions
6
- * - tonal: High emphasis, secondary actions
7
- * - outlined: Medium emphasis, not main focus
8
- * - standard: Lowest emphasis, on colorful surfaces
9
- */
10
1
  export declare const ICON_BUTTON_VARIANTS: {
11
- /** Primary action button with solid background (highest emphasis) */
12
2
  readonly FILLED: "filled";
13
- /** Secondary action button with tonal background (high emphasis) */
14
3
  readonly TONAL: "tonal";
15
- /** Button with outline border and transparent background (medium emphasis) */
16
4
  readonly OUTLINED: "outlined";
17
- /** Button with no background, just icon (lowest emphasis) */
18
5
  readonly STANDARD: "standard";
19
6
  };
20
- /**
21
- * IconButton variant type
22
- */
23
7
  export type IconButtonVariant = typeof ICON_BUTTON_VARIANTS[keyof typeof ICON_BUTTON_VARIANTS];
24
- /**
25
- * IconButton sizes following Material Design 3 specifications
26
- *
27
- * | Size | Container | Icon Size |
28
- * |------|-----------|-----------|
29
- * | XS | 32dp | 20dp |
30
- * | S | 40dp | 24dp |
31
- * | M | 56dp | 24dp |
32
- * | L | 96dp | 32dp |
33
- * | XL | 136dp | 40dp |
34
- */
35
8
  export declare const ICON_BUTTON_SIZES: {
36
- /** Extra small - 32px container, 20px icon */
37
9
  readonly XS: "xs";
38
- /** Small - 40px container, 24px icon (default) */
39
10
  readonly S: "s";
40
- /** Medium - 56px container, 24px icon */
41
11
  readonly M: "m";
42
- /** Large - 96px container, 32px icon */
43
12
  readonly L: "l";
44
- /** Extra large - 136px container, 40px icon */
45
13
  readonly XL: "xl";
46
14
  };
47
- /**
48
- * IconButton size type
49
- */
50
15
  export type IconButtonSize = typeof ICON_BUTTON_SIZES[keyof typeof ICON_BUTTON_SIZES];
51
- /**
52
- * IconButton shapes following Material Design 3 specifications
53
- *
54
- * - round: Full corner radius (default)
55
- * - square: Fixed corner radius per size
56
- */
57
16
  export declare const ICON_BUTTON_SHAPES: {
58
- /** Round shape - full corner radius (default) */
59
17
  readonly ROUND: "round";
60
- /** Square shape - fixed corner radius based on size */
61
18
  readonly SQUARE: "square";
62
19
  };
63
- /**
64
- * IconButton shape type
65
- */
66
20
  export type IconButtonShape = typeof ICON_BUTTON_SHAPES[keyof typeof ICON_BUTTON_SHAPES];
67
- /**
68
- * IconButton width variants following Material Design 3 specifications
69
- *
70
- * | Size | Narrow | Default | Wide |
71
- * |------|--------|---------|--------|
72
- * | XS | 28dp | 32dp | 40dp |
73
- * | S | 32dp | 40dp | 52dp |
74
- * | M | 48dp | 56dp | 72dp |
75
- * | L | 64dp | 96dp | 128dp |
76
- * | XL | 104dp | 136dp | 184dp |
77
- */
78
21
  export declare const ICON_BUTTON_WIDTHS: {
79
- /** Narrow width */
80
22
  readonly NARROW: "narrow";
81
- /** Default width */
82
23
  readonly DEFAULT: "default";
83
- /** Wide width */
84
24
  readonly WIDE: "wide";
85
25
  };
86
- /**
87
- * IconButton width type
88
- */
89
26
  export type IconButtonWidth = typeof ICON_BUTTON_WIDTHS[keyof typeof ICON_BUTTON_WIDTHS];
90
- /**
91
- * Button types for IconButton
92
- */
93
27
  export declare const ICON_BUTTON_TYPES: {
94
28
  readonly BUTTON: "button";
95
29
  readonly SUBMIT: "submit";
96
30
  readonly RESET: "reset";
97
31
  };
98
- /**
99
- * CSS classes used by the IconButton component
100
- */
101
32
  export declare const ICON_BUTTON_CLASSES: {
102
- /** Root element class */
103
33
  readonly ROOT: "icon-button";
104
- /** Class for the icon container */
105
34
  readonly ICON: "icon-button__icon";
106
- /** Applied when button is selected (toggle state) */
107
35
  readonly SELECTED: "icon-button--selected";
108
- /** Applied when button is disabled */
109
36
  readonly DISABLED: "icon-button--disabled";
110
- /** Applied when button is pressed (for shape morph) */
111
37
  readonly PRESSED: "icon-button--pressed";
112
38
  };
113
- /**
114
- * Default ripple effect configuration for IconButton
115
- */
116
39
  export declare const DEFAULT_RIPPLE_CONFIG: {
117
40
  readonly DURATION: 450;
118
41
  };
119
- /**
120
- * Corner radius values for square shape per size (in dp)
121
- * Round shape uses full corner radius (50%)
122
- */
123
42
  export declare const ICON_BUTTON_CORNER_RADIUS: {
124
43
  readonly XS: {
125
44
  readonly square: 12;
@@ -142,9 +61,6 @@ export declare const ICON_BUTTON_CORNER_RADIUS: {
142
61
  readonly pressed: 16;
143
62
  };
144
63
  };
145
- /**
146
- * Icon sizes per button size (in dp)
147
- */
148
64
  export declare const ICON_BUTTON_ICON_SIZES: {
149
65
  readonly XS: 20;
150
66
  readonly S: 24;
@@ -152,9 +68,6 @@ export declare const ICON_BUTTON_ICON_SIZES: {
152
68
  readonly L: 32;
153
69
  readonly XL: 40;
154
70
  };
155
- /**
156
- * Container sizes per button size (in dp)
157
- */
158
71
  export declare const ICON_BUTTON_CONTAINER_SIZES: {
159
72
  readonly XS: 32;
160
73
  readonly S: 40;
@@ -162,9 +75,6 @@ export declare const ICON_BUTTON_CONTAINER_SIZES: {
162
75
  readonly L: 96;
163
76
  readonly XL: 136;
164
77
  };
165
- /**
166
- * Width values per size and width variant (in dp)
167
- */
168
78
  export declare const ICON_BUTTON_WIDTH_VALUES: {
169
79
  readonly XS: {
170
80
  readonly narrow: 28;
@@ -1,86 +1,3 @@
1
1
  import { IconButtonConfig, IconButtonComponent } from "./types.js";
2
- /**
3
- * Creates a new IconButton component with the specified configuration.
4
- *
5
- * IconButtons display actions in a compact form using icons. They must use
6
- * a system icon with a clear meaning. IconButtons support both default
7
- * (single action) and toggle (binary state) modes.
8
- *
9
- * The IconButton component is created using a functional composition pattern,
10
- * applying various features through the pipe function. This approach allows
11
- * for flexible and modular component construction.
12
- *
13
- * @param config - Configuration options for the icon button
14
- * This can include icon content, variant styling, size, shape, width,
15
- * toggle behavior, and other properties. See {@link IconButtonConfig}
16
- * for available options.
17
- *
18
- * @returns A fully configured IconButton component instance with
19
- * all requested features applied. The returned component has methods for
20
- * manipulation, event handling, and lifecycle management.
21
- *
22
- * @throws Error if IconButton creation fails for any reason
23
- *
24
- * @example
25
- * ```ts
26
- * // Create a standard icon button
27
- * const menuButton = createIconButton({
28
- * icon: '<svg>...</svg>',
29
- * ariaLabel: 'Open menu'
30
- * });
31
- *
32
- * // Create a filled icon button
33
- * const addButton = createIconButton({
34
- * icon: '<svg>...</svg>',
35
- * variant: 'filled',
36
- * ariaLabel: 'Add item'
37
- * });
38
- *
39
- * // Create a toggle icon button (favorite)
40
- * const favoriteButton = createIconButton({
41
- * icon: '<svg>...</svg>', // outlined heart
42
- * selectedIcon: '<svg>...</svg>', // filled heart
43
- * toggle: true,
44
- * variant: 'standard',
45
- * ariaLabel: 'Add to favorites'
46
- * });
47
- *
48
- * // Listen for toggle events
49
- * favoriteButton.on('change', ({ selected }) => {
50
- * console.log('Selected:', selected);
51
- * });
52
- *
53
- * // Create different sizes
54
- * const smallButton = createIconButton({
55
- * icon: '<svg>...</svg>',
56
- * size: 'xs',
57
- * ariaLabel: 'Small action'
58
- * });
59
- *
60
- * const largeButton = createIconButton({
61
- * icon: '<svg>...</svg>',
62
- * size: 'xl',
63
- * variant: 'tonal',
64
- * ariaLabel: 'Large action'
65
- * });
66
- *
67
- * // Create square shaped button
68
- * const squareButton = createIconButton({
69
- * icon: '<svg>...</svg>',
70
- * shape: 'square',
71
- * variant: 'outlined',
72
- * ariaLabel: 'Square action'
73
- * });
74
- *
75
- * // Create with different widths
76
- * const wideButton = createIconButton({
77
- * icon: '<svg>...</svg>',
78
- * width: 'wide',
79
- * ariaLabel: 'Wide action'
80
- * });
81
- * ```
82
- *
83
- * @category Components
84
- */
85
2
  declare const createIconButton: (config: IconButtonConfig) => IconButtonComponent;
86
3
  export default createIconButton;
@@ -1,47 +1,3 @@
1
- /**
2
- * @module IconButton
3
- *
4
- * Icon Button component following Material Design 3 guidelines.
5
- * Icon buttons display actions in a compact form using icons.
6
- * They support both default (single action) and toggle (binary state) modes.
7
- *
8
- * Features:
9
- * - Four variants (filled, tonal, outlined, standard)
10
- * - Five size options (xs, s, m, l, xl)
11
- * - Shape options (round, square)
12
- * - Width options (narrow, default, wide)
13
- * - Toggle mode with selected/unselected states
14
- * - Shape morphing on press and selection (CSS-driven)
15
- * - Ripple effect on interaction
16
- * - Full accessibility support
17
- *
18
- * @example
19
- * ```typescript
20
- * // Create a standard icon button
21
- * const menuButton = createIconButton({
22
- * icon: '<svg viewBox="0 0 24 24">...</svg>',
23
- * ariaLabel: 'Open menu'
24
- * });
25
- *
26
- * // Create a toggle icon button (favorite)
27
- * const favoriteButton = createIconButton({
28
- * icon: '<svg>...</svg>', // outlined heart
29
- * selectedIcon: '<svg>...</svg>', // filled heart
30
- * toggle: true,
31
- * ariaLabel: 'Add to favorites'
32
- * });
33
- *
34
- * // Listen for toggle events
35
- * favoriteButton.on('change', ({ selected }) => {
36
- * console.log('Selected:', selected);
37
- * });
38
- *
39
- * // Attach to DOM
40
- * container.appendChild(menuButton.element);
41
- * ```
42
- *
43
- * @category Components
44
- */
45
1
  export { default, default as createIconButton } from "./icon-button.js";
46
2
  export type { IconButtonConfig, IconButtonComponent, IconButtonEvents, IconButtonChangePayload, IconAPI, ToggleManager } from "./types.js";
47
3
  export { ICON_BUTTON_VARIANTS, ICON_BUTTON_SIZES, ICON_BUTTON_SHAPES, ICON_BUTTON_WIDTHS, ICON_BUTTON_CLASSES, ICON_BUTTON_CONTAINER_SIZES, ICON_BUTTON_ICON_SIZES, ICON_BUTTON_WIDTH_VALUES, ICON_BUTTON_CORNER_RADIUS } from "./constants.js";