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,16 +1,3 @@
1
- /**
2
- * `<m-extended-fab>`: the extended floating action button as a custom
3
- * element. Children are the label.
4
- *
5
- * `variant`, `size`, `width`, `icon-position`, `position`,
6
- * `collapse-on-scroll` and `aria-label` have no setter on the extended FAB:
7
- * changing one recreates it. `type="submit"` and `type="reset"` act on the
8
- * host's form.
9
- *
10
- * Parts: `extended-fab`, `icon`, `label` (also `text`), `ripple`.
11
- *
12
- * @module elements
13
- */
14
1
  import type { ExtendedFabComponent } from "../components/extended-fab/types.js";
15
2
  import { type DefineOptions, type ElementInstance } from "./define.js";
16
3
  declare const extendedFabSpec: {
@@ -36,7 +23,6 @@ declare const extendedFabSpec: {
36
23
  config: string;
37
24
  update: (c: ExtendedFabComponent, v: import("./define.js").AttributeValue) => undefined;
38
25
  };
39
- /** Markup (HTML). Not sanitized by default: see Markup and sanitizing. */
40
26
  icon: {
41
27
  type: "string";
42
28
  config: string;
@@ -50,6 +36,10 @@ declare const extendedFabSpec: {
50
36
  type: "string";
51
37
  config: string;
52
38
  };
39
+ placement: {
40
+ type: "string";
41
+ config: string;
42
+ };
53
43
  "collapse-on-scroll": {
54
44
  type: "boolean";
55
45
  config: string;
@@ -68,7 +58,12 @@ declare const extendedFabSpec: {
68
58
  config: string;
69
59
  };
70
60
  };
71
- methods: readonly ["lower", "raise", "collapse", "expand"];
61
+ methods: readonly [
62
+ "lower",
63
+ "raise",
64
+ "collapse",
65
+ "expand"
66
+ ];
72
67
  events: {
73
68
  collapse: {
74
69
  detail: () => null;
@@ -86,12 +81,9 @@ declare const extendedFabSpec: {
86
81
  };
87
82
  export declare const extendedFabElement: import("./define.js").ElementDefinition<ExtendedFabComponent>;
88
83
  export type ExtendedFabSpec = typeof extendedFabSpec;
89
- /** `<m-extended-fab>` as a ref or a query returns it. */
90
84
  export type ExtendedFabElement = ElementInstance<ExtendedFabSpec, ExtendedFabComponent>;
91
- /** Registers `<m-extended-fab>` (or `<prefix-extended-fab>`). */
92
85
  export declare const defineExtendedFab: (options?: DefineOptions) => string;
93
86
  declare global {
94
- /** `document.querySelector("m-…")` and `createElement` return the element's type (the default prefix). */
95
87
  interface HTMLElementTagNameMap {
96
88
  "m-extended-fab": ExtendedFabElement;
97
89
  }
@@ -1,12 +1,13 @@
1
1
  import createExtendedFab from "../components/extended-fab/index.js";
2
2
  import { defineElement } from "./define.js";
3
3
  import { buttonForm, submitOnClick, typeAttribute } from "./form-button.js";
4
+ import { FLOATING_HOST_STYLES } from "./floating-placement.js";
4
5
  const create = (config) => createExtendedFab({ ...config, type: "button" });
5
6
  const extendedFabSpec = {
6
7
  name: "extended-fab",
7
8
  create: (config) => create(config),
8
9
  styles: ["extended-fab"],
9
- hostStyles: ":host{vertical-align:middle}",
10
+ hostStyles: ":host{vertical-align:middle}" + FLOATING_HOST_STYLES,
10
11
  attributes: {
11
12
  variant: { type: "string", config: "variant" },
12
13
  size: { type: "string", config: "size" },
@@ -15,6 +16,7 @@ const extendedFabSpec = {
15
16
  icon: { type: "string", config: "icon", update: (c, v) => void c.setIcon(String(v ?? "")) },
16
17
  "icon-position": { type: "string", config: "iconPosition" },
17
18
  position: { type: "string", config: "position" },
19
+ placement: { type: "string", config: "placement" },
18
20
  "collapse-on-scroll": { type: "boolean", config: "collapseOnScroll" },
19
21
  value: { type: "string", config: "value", update: (c, v) => void c.setValue(String(v ?? "")) },
20
22
  type: typeAttribute,
@@ -1,30 +1,7 @@
1
- /**
2
- * `<m-fab-menu>` with `<m-fab-menu-item>` children.
3
- *
4
- * Each `<m-fab-menu-item>` declares one action: its text (or `label`),
5
- * `value` and `icon`. The FAB takes `icon` and `aria-label`, which names the
6
- * menu it opens. `color`, `size`, `presentation` and `placement` are the
7
- * factory's options: the expressive list below 600px, the baseline menu from
8
- * 600px, unless `presentation` says otherwise.
9
- *
10
- * `open` is state, as on `<m-menu>`: the attribute reflects whether the menu
11
- * is open, and setting or removing it opens or closes it. `show()`, `hide()`
12
- * and `toggle()` do the same. `open` and `close` are dispatched as it opens
13
- * and closes, by those methods or the user (not when the attribute or the
14
- * property is what changed: that is applied at once, and quietly), and
15
- * `select` with the item's value when one is chosen.
16
- *
17
- * Parts: `fab-menu`, `fab`, `list`, `item`.
18
- *
19
- * @module elements
20
- */
21
1
  import type { FabMenuComponent } from "../components/fab-menu/types.js";
22
2
  import { type Config, type DefineOptions, type ElementAttributes, type ElementInstance } from "./define.js";
23
- /** The FAB menu, with the methods the element adds to it. */
24
3
  export type FabMenuElementComponent = FabMenuComponent & {
25
- /** Opens the menu. */
26
4
  show: () => void;
27
- /** Closes the menu. */
28
5
  hide: () => void;
29
6
  };
30
7
  declare const fabMenuSpec: {
@@ -37,7 +14,6 @@ declare const fabMenuSpec: {
37
14
  type: "boolean";
38
15
  update: (c: FabMenuElementComponent, v: import("./define.js").AttributeValue) => void;
39
16
  };
40
- /** 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. */
41
17
  icon: {
42
18
  type: "string";
43
19
  config: string;
@@ -64,7 +40,11 @@ declare const fabMenuSpec: {
64
40
  config: string;
65
41
  };
66
42
  };
67
- methods: readonly ["show", "hide", "toggle"];
43
+ methods: readonly [
44
+ "show",
45
+ "hide",
46
+ "toggle"
47
+ ];
68
48
  events: {
69
49
  open: {
70
50
  detail: () => {};
@@ -86,9 +66,7 @@ declare const fabMenuSpec: {
86
66
  };
87
67
  export declare const fabMenuElement: import("./define.js").ElementDefinition<FabMenuElementComponent>;
88
68
  export type FabMenuSpec = typeof fabMenuSpec;
89
- /** `<m-fab-menu>` as a ref or a query returns it. */
90
69
  export type FabMenuElement = ElementInstance<FabMenuSpec, FabMenuElementComponent>;
91
- /** `<m-fab-menu-item>` declares one action and renders nothing. Its text is the label unless `label` is set. */
92
70
  export declare const fabMenuItemDeclaration: {
93
71
  readonly name: "fab-menu-item";
94
72
  readonly attributes: {
@@ -98,17 +76,14 @@ export declare const fabMenuItemDeclaration: {
98
76
  readonly label: {
99
77
  readonly type: "string";
100
78
  };
101
- /** 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. */
102
79
  readonly icon: {
103
80
  readonly type: "string";
104
81
  };
105
82
  };
106
83
  };
107
84
  export type FabMenuItemAttributes = ElementAttributes<typeof fabMenuItemDeclaration>;
108
- /** Registers `<m-fab-menu>` and `<m-fab-menu-item>` (or with another prefix). */
109
85
  export declare const defineFabMenu: (options?: DefineOptions) => string;
110
86
  declare global {
111
- /** `document.querySelector("m-…")` and `createElement` return the element's type (the default prefix). */
112
87
  interface HTMLElementTagNameMap {
113
88
  "m-fab-menu": FabMenuElement;
114
89
  "m-fab-menu-item": HTMLElement & FabMenuItemAttributes;
@@ -1,15 +1,3 @@
1
- /**
2
- * `<m-fab>`: the floating action button as a custom element. It has no text,
3
- * so `aria-label` is its accessible name.
4
- *
5
- * `variant`, `size`, `position` and `aria-label` have no setter on the FAB:
6
- * changing one recreates it. `type="submit"` and `type="reset"` act on the
7
- * host's form.
8
- *
9
- * Parts: `fab`, `icon`, `ripple`.
10
- *
11
- * @module elements
12
- */
13
1
  import type { FabComponent } from "../components/fab/types.js";
14
2
  import { type DefineOptions, type ElementInstance } from "./define.js";
15
3
  declare const fabSpec: {
@@ -31,7 +19,6 @@ declare const fabSpec: {
31
19
  config: string;
32
20
  update: (c: FabComponent, v: import("./define.js").AttributeValue) => undefined;
33
21
  };
34
- /** Markup (HTML). Not sanitized by default: see Markup and sanitizing. */
35
22
  icon: {
36
23
  type: "string";
37
24
  config: string;
@@ -41,6 +28,10 @@ declare const fabSpec: {
41
28
  type: "string";
42
29
  config: string;
43
30
  };
31
+ placement: {
32
+ type: "string";
33
+ config: string;
34
+ };
44
35
  value: {
45
36
  type: "string";
46
37
  config: string;
@@ -55,18 +46,18 @@ declare const fabSpec: {
55
46
  config: string;
56
47
  };
57
48
  };
58
- methods: readonly ["lower", "raise"];
49
+ methods: readonly [
50
+ "lower",
51
+ "raise"
52
+ ];
59
53
  form: import("./define.js").FormSpec<FabComponent>;
60
54
  setup: <C extends import("./define.js").ElementComponent>(host: import("./define.js").ElementHost<C>) => (() => void);
61
55
  };
62
56
  export declare const fabElement: import("./define.js").ElementDefinition<FabComponent>;
63
57
  export type FabSpec = typeof fabSpec;
64
- /** `<m-fab>` as a ref or a query returns it. */
65
58
  export type FabElement = ElementInstance<FabSpec, FabComponent>;
66
- /** Registers `<m-fab>` (or `<prefix-fab>`). */
67
59
  export declare const defineFab: (options?: DefineOptions) => string;
68
60
  declare global {
69
- /** `document.querySelector("m-…")` and `createElement` return the element's type (the default prefix). */
70
61
  interface HTMLElementTagNameMap {
71
62
  "m-fab": FabElement;
72
63
  }
@@ -1,17 +1,19 @@
1
1
  import createFab from "../components/fab/index.js";
2
2
  import { defineElement } from "./define.js";
3
3
  import { buttonForm, submitOnClick, typeAttribute } from "./form-button.js";
4
+ import { FLOATING_HOST_STYLES } from "./floating-placement.js";
4
5
  const fabSpec = {
5
6
  name: "fab",
6
7
  create: (config) => createFab({ ...config, type: "button" }),
7
8
  styles: ["fab"],
8
- hostStyles: ":host{vertical-align:middle}",
9
+ hostStyles: ":host{vertical-align:middle}" + FLOATING_HOST_STYLES,
9
10
  attributes: {
10
11
  variant: { type: "string", config: "variant" },
11
12
  size: { type: "string", config: "size" },
12
13
  disabled: { type: "boolean", config: "disabled", update: (c, v) => void (v ? c.disable() : c.enable()) },
13
14
  icon: { type: "string", config: "icon", update: (c, v) => void c.setIcon(String(v ?? "")) },
14
15
  position: { type: "string", config: "position" },
16
+ placement: { type: "string", config: "placement" },
15
17
  value: { type: "string", config: "value", update: (c, v) => void c.setValue(String(v ?? "")) },
16
18
  type: typeAttribute,
17
19
  "aria-label": { type: "string", config: "ariaLabel" },
@@ -0,0 +1 @@
1
+ export const FLOATING_HOST_STYLES = ":host(:is([placement='top-start'],[placement='top-end'],[placement='bottom-start'],[placement='bottom-end'])){position:fixed}";
@@ -1,23 +1,3 @@
1
- /**
2
- * `<m-icon-button>`: the icon button as a custom element. It has no text, so
3
- * `aria-label` is its accessible name.
4
- *
5
- * With `toggle`, the `selected` attribute is the default state and the
6
- * `selected` property the live one: the attribute moves the state until the
7
- * user or script changes it. A click dispatches `change` with `{ selected, value }`
8
- * from the host, as `<m-switch>` and `<m-checkbox>` do. The `toggle` event
9
- * 0.10 dispatched beside it, which clashed with the native ToggleEvent, is
10
- * gone in material 3.0.0.
11
- * `type="submit"` and `type="reset"` act on the host's form.
12
- *
13
- * Parts: `icon-button`, `icon`, `ripple`.
14
- *
15
- * The host carries `data-mtrl-icon-button` whenever it is connected: its
16
- * prefix-independent marker, which another element's `::slotted()` rules can
17
- * match where they cannot spell the tag (`ElementSpec.marker`).
18
- *
19
- * @module elements
20
- */
21
1
  import type { IconButtonComponent } from "../components/icon-button/types.js";
22
2
  import { type DefineOptions, type ElementInstance } from "./define.js";
23
3
  declare const iconButtonSpec: {
@@ -52,13 +32,11 @@ declare const iconButtonSpec: {
52
32
  config: string;
53
33
  update: (c: IconButtonComponent, v: import("./define.js").AttributeValue) => undefined;
54
34
  };
55
- /** Markup (HTML). Not sanitized by default: see Markup and sanitizing. */
56
35
  icon: {
57
36
  type: "string";
58
37
  config: string;
59
38
  update: (c: IconButtonComponent, v: import("./define.js").AttributeValue) => undefined;
60
39
  };
61
- /** Markup (HTML), shown while `toggle` and `selected`. Not sanitized by default: see Markup and sanitizing. */
62
40
  "selected-icon": {
63
41
  type: "string";
64
42
  config: string;
@@ -95,7 +73,11 @@ declare const iconButtonSpec: {
95
73
  config: string;
96
74
  };
97
75
  };
98
- methods: readonly ["select", "deselect", "toggleSelected"];
76
+ methods: readonly [
77
+ "select",
78
+ "deselect",
79
+ "toggleSelected"
80
+ ];
99
81
  model: "selected";
100
82
  events: {
101
83
  change: {
@@ -110,12 +92,9 @@ declare const iconButtonSpec: {
110
92
  };
111
93
  export declare const iconButtonElement: import("./define.js").ElementDefinition<IconButtonComponent>;
112
94
  export type IconButtonSpec = typeof iconButtonSpec;
113
- /** `<m-icon-button>` as a ref or a query returns it. */
114
95
  export type IconButtonElement = ElementInstance<IconButtonSpec, IconButtonComponent>;
115
- /** Registers `<m-icon-button>` (or `<prefix-icon-button>`). */
116
96
  export declare const defineIconButton: (options?: DefineOptions) => string;
117
97
  declare global {
118
- /** `document.querySelector("m-…")` and `createElement` return the element's type (the default prefix). */
119
98
  interface HTMLElementTagNameMap {
120
99
  "m-icon-button": IconButtonElement;
121
100
  }
@@ -1,13 +1,3 @@
1
- /**
2
- * The web component layer: each component as a custom element.
3
- *
4
- * Importing registers nothing and touches no DOM, so this module is safe on a
5
- * server. In the browser, import the CSS (`material/elements/css` or one
6
- * component's `material/elements/css/<name>`), then call a `define*` function or
7
- * `defineAll()`.
8
- *
9
- * @module elements
10
- */
11
1
  import type { DefineOptions } from "./define.js";
12
2
  export { defineElement, DEFAULT_PREFIX, SHADOW_BASE_STYLES } from "./define.js";
13
3
  export type { DefineOptions, ElementSpec, ElementDefinition, ElementComponent, ElementHost, ElementInstance, ElementAttributes, ElementProperties, ElementSlotText, ElementSlots, ElementSlotProp, ElementMarkup, ElementEvents, ElementMethods, ElementProps, AttributeSpec, AttributeType, PropertySpec, EventSpec, SlotSpec, FormSpec, } from "./define.js";
@@ -88,10 +78,6 @@ export { timepickerElement, defineTimepicker } from "./timepicker.js";
88
78
  export type { TimepickerSpec, TimepickerElement, TimepickerElementComponent } from "./timepicker.js";
89
79
  export { searchElement, searchSuggestionDeclaration, defineSearch } from "./search.js";
90
80
  export type { SearchSpec, SearchElement, SearchSuggestionAttributes, SearchElementComponent, SearchElementEvents } from "./search.js";
91
- /**
92
- * Every element, by name. Framework adapters are generated from this list and
93
- * name `<key>Element` and `define<Key>` after each key, so keys are camelCase.
94
- */
95
81
  export declare const elements: {
96
82
  readonly button: import("./define.js").ElementDefinition<import("../index.js").ButtonComponent>;
97
83
  readonly switch: import("./define.js").ElementDefinition<import("../index.js").SwitchComponent>;
@@ -131,7 +117,6 @@ export declare const elements: {
131
117
  readonly timepicker: import("./define.js").ElementDefinition<import("./timepicker.js").TimepickerElementComponent>;
132
118
  readonly search: import("./define.js").ElementDefinition<import("./search.js").SearchElementComponent>;
133
119
  };
134
- /** Declaration children, which render nothing and are read by their parent. */
135
120
  export declare const declarations: {
136
121
  readonly tab: {
137
122
  readonly name: "tab";
@@ -457,5 +442,4 @@ export declare const declarations: {
457
442
  };
458
443
  };
459
444
  };
460
- /** Registers every element. */
461
445
  export declare const defineAll: (options?: DefineOptions) => void;
@@ -1,27 +1,3 @@
1
- /**
2
- * `<m-list>` with `<m-list-item>` children.
3
- *
4
- * Each `<m-list-item>` declares one row: its text (or `headline`) is the
5
- * headline, with `overline`, `supporting-text`, a leading icon, avatar or
6
- * image, a trailing icon or text, `value`, `disabled` and `selected`. An item
7
- * with `kind="divider"` or `kind="subheader"` declares the list's structure
8
- * instead. The list reads them into the factory's config and updates in place
9
- * when they change; the children stay where the framework put them.
10
- *
11
- * `variant` is the factory's style: `standard` (the default) or `segmented`.
12
- *
13
- * `selection` is the factory's mode: `single` (the default), `multiple`, or
14
- * `none` (rows are not interactive). `value` on `<m-list>` and the items'
15
- * `selected` are the default selection, which moves the live one until the
16
- * user or script changes it; the `value` property is the live selection (the
17
- * first selected value, as on a native `<select multiple>`) and `values` all
18
- * of it. A click or Enter on a row dispatches `activate` with its value, then
19
- * `change` when the selection moved.
20
- *
21
- * Parts: `list`, `content`, `item`, `action`, `text`, `headline`, `supporting`.
22
- *
23
- * @module elements
24
- */
25
1
  import type { ListComponent, ListItem } from "../components/list/types.js";
26
2
  import { type Config, type DefineOptions, type ElementAttributes, type ElementHost, type ElementInstance } from "./define.js";
27
3
  declare const listSpec: {
@@ -87,12 +63,7 @@ declare const listSpec: {
87
63
  };
88
64
  export declare const listElement: import("./define.js").ElementDefinition<ListComponent<ListItem>>;
89
65
  export type ListSpec = typeof listSpec;
90
- /** `<m-list>` as a ref or a query returns it. */
91
66
  export type ListElement = ElementInstance<ListSpec, ListComponent<ListItem>>;
92
- /**
93
- * `<m-list-item>` declares one row and renders nothing. Its text content is
94
- * the headline unless `headline` is set.
95
- */
96
67
  export declare const listItemDeclaration: {
97
68
  readonly name: "list-item";
98
69
  readonly attributes: {
@@ -108,18 +79,15 @@ export declare const listItemDeclaration: {
108
79
  readonly "supporting-text": {
109
80
  readonly type: "string";
110
81
  };
111
- /** Markup (HTML). Not sanitized by default: see Markup and sanitizing. */
112
82
  readonly "leading-icon": {
113
83
  readonly type: "string";
114
84
  };
115
- /** Markup (HTML), not a person's name or an image URL. Not sanitized by default: see Markup and sanitizing. */
116
85
  readonly "leading-avatar": {
117
86
  readonly type: "string";
118
87
  };
119
88
  readonly "leading-image": {
120
89
  readonly type: "string";
121
90
  };
122
- /** Markup (HTML). Not sanitized by default: see Markup and sanitizing. */
123
91
  readonly "trailing-icon": {
124
92
  readonly type: "string";
125
93
  };
@@ -141,10 +109,8 @@ export declare const listItemDeclaration: {
141
109
  };
142
110
  };
143
111
  export type ListItemAttributes = ElementAttributes<typeof listItemDeclaration>;
144
- /** Registers `<m-list>` and `<m-list-item>` (or with another prefix). */
145
112
  export declare const defineList: (options?: DefineOptions) => string;
146
113
  declare global {
147
- /** `document.querySelector("m-…")` and `createElement` return the element's type (the default prefix). */
148
114
  interface HTMLElementTagNameMap {
149
115
  "m-list": ListElement;
150
116
  "m-list-item": HTMLElement & ListItemAttributes;
@@ -1,12 +1,3 @@
1
- /**
2
- * `<m-loading-indicator>`: the expressive loading indicator as a custom
3
- * element. It animates from connection; a `value` from 0 to 1 makes it
4
- * determinate. `aria-label` names what is loading.
5
- *
6
- * Parts: `loading-indicator`, `canvas`.
7
- *
8
- * @module elements
9
- */
10
1
  import type { LoadingIndicatorComponent } from "../components/loading-indicator/types.js";
11
2
  import { type DefineOptions, type ElementInstance } from "./define.js";
12
3
  declare const loadingIndicatorSpec: {
@@ -35,16 +26,16 @@ declare const loadingIndicatorSpec: {
35
26
  update: (c: LoadingIndicatorComponent, v: import("./define.js").AttributeValue) => undefined;
36
27
  };
37
28
  };
38
- methods: readonly ["start", "stop"];
29
+ methods: readonly [
30
+ "start",
31
+ "stop"
32
+ ];
39
33
  };
40
34
  export declare const loadingIndicatorElement: import("./define.js").ElementDefinition<LoadingIndicatorComponent>;
41
35
  export type LoadingIndicatorSpec = typeof loadingIndicatorSpec;
42
- /** `<m-loading-indicator>` as a ref or a query returns it. */
43
36
  export type LoadingIndicatorElement = ElementInstance<LoadingIndicatorSpec, LoadingIndicatorComponent>;
44
- /** Registers `<m-loading-indicator>` (or `<prefix-loading-indicator>`). */
45
37
  export declare const defineLoadingIndicator: (options?: DefineOptions) => string;
46
38
  declare global {
47
- /** `document.querySelector("m-…")` and `createElement` return the element's type (the default prefix). */
48
39
  interface HTMLElementTagNameMap {
49
40
  "m-loading-indicator": LoadingIndicatorElement;
50
41
  }
@@ -1,50 +1,10 @@
1
- /**
2
- * `<m-menu>` with `<m-menu-item>` children.
3
- *
4
- * Each `<m-menu-item>` declares one item: its text (or `label`), `value`,
5
- * `icon`, `shortcut`, `supporting-text` and `disabled`; `divider` makes it a
6
- * divider instead and `gap` a gap between groups (separate surfaces in the
7
- * vertical menu), and `<m-menu-item>` children inside it are its submenu.
8
- * The menu reads them into the factory's items and updates in place when they
9
- * change; the children stay where the framework put them.
10
- *
11
- * The menu opens against an anchor: `anchor` is the id of an element in the
12
- * menu's own root, then the document's, and the `anchor` property an element
13
- * (or an id). The anchor opens and closes the menu by pointer and key, as the
14
- * factory's opener does. The surface stays in the element's shadow root and
15
- * is shown in the top layer (the factory's `layer: "top"`), so it keeps its
16
- * styles and is above everything on the page.
17
- *
18
- * `open` is state, not a value, as on `<details>`: the attribute reflects
19
- * whether the menu is open, setting or removing it opens or closes it, and
20
- * the user closing the menu removes it. `show()`, `hide()` and `toggle()` do
21
- * the same. `open` and `close` are dispatched as it opens and closes, by
22
- * those methods, the anchor or the user (not when the attribute or the
23
- * property is what changed: that is applied at once, and quietly, as on the
24
- * other elements), and `select` with the item's value when one is chosen.
25
- * There is no two-way binding: an app that keeps `open` in its state follows
26
- * the `close` event. `no-close-on-select` keeps the menu open when an item is
27
- * chosen, and `color="vibrant"` is the vertical menu's vibrant colours.
28
- *
29
- * Parts: `menu`, `list`, `item`, `item-content`, `item-text`.
30
- *
31
- * @module elements
32
- */
33
1
  import type { MenuComponent, MenuContent } from "../components/menu/types.js";
34
2
  import { type Config, type DefineOptions, type ElementAttributes, type ElementInstance } from "./define.js";
35
- /** The menu, with the methods the element adds to it. */
36
3
  export type MenuElementComponent = MenuComponent & {
37
- /** Opens the menu. */
38
4
  show: () => void;
39
- /** Closes the menu. */
40
5
  hide: () => void;
41
6
  };
42
- /** An anchor as a property takes it: an element, or an id. */
43
7
  export type MenuAnchor = HTMLElement | string | null;
44
- /**
45
- * The items `<tag>` children declare, with their own `<tag>` children as a
46
- * submenu. Shared by the elements whose menu takes items (`<m-split-button>`).
47
- */
48
8
  export declare const declaredMenuItems: (parent: Element, tag: string) => MenuContent[];
49
9
  declare const menuSpec: {
50
10
  name: string;
@@ -104,7 +64,11 @@ declare const menuSpec: {
104
64
  config: string;
105
65
  };
106
66
  };
107
- methods: readonly ["show", "hide", "toggle"];
67
+ methods: readonly [
68
+ "show",
69
+ "hide",
70
+ "toggle"
71
+ ];
108
72
  events: {
109
73
  open: {
110
74
  detail: () => {};
@@ -126,13 +90,7 @@ declare const menuSpec: {
126
90
  };
127
91
  export declare const menuElement: import("./define.js").ElementDefinition<MenuElementComponent>;
128
92
  export type MenuSpec = typeof menuSpec;
129
- /** `<m-menu>` as a ref or a query returns it. */
130
93
  export type MenuElement = ElementInstance<MenuSpec, MenuElementComponent>;
131
- /**
132
- * `<m-menu-item>` declares one item and renders nothing. Its text is the
133
- * label unless `label` is set; `<m-menu-item>` children are its submenu.
134
- * Shared with `<m-split-button>`.
135
- */
136
94
  export declare const menuItemDeclaration: {
137
95
  readonly name: "menu-item";
138
96
  readonly attributes: {
@@ -142,7 +100,6 @@ export declare const menuItemDeclaration: {
142
100
  readonly label: {
143
101
  readonly type: "string";
144
102
  };
145
- /** Markup (HTML). Not sanitized by default: see Markup and sanitizing. */
146
103
  readonly icon: {
147
104
  readonly type: "string";
148
105
  };
@@ -164,12 +121,9 @@ export declare const menuItemDeclaration: {
164
121
  };
165
122
  };
166
123
  export type MenuItemAttributes = ElementAttributes<typeof menuItemDeclaration>;
167
- /** Registers `<m-menu-item>`, before the elements that read it. */
168
124
  export declare const defineMenuItem: (options?: DefineOptions) => void;
169
- /** Registers `<m-menu>` and `<m-menu-item>` (or with another prefix). */
170
125
  export declare const defineMenu: (options?: DefineOptions) => string;
171
126
  declare global {
172
- /** `document.querySelector("m-…")` and `createElement` return the element's type (the default prefix). */
173
127
  interface HTMLElementTagNameMap {
174
128
  "m-menu": MenuElement;
175
129
  "m-menu-item": HTMLElement & MenuItemAttributes;
@@ -1,23 +1,3 @@
1
- /**
2
- * `<m-navigation-bar>` with `<m-navigation-bar-item>` children: the M3
3
- * Expressive navigation bar.
4
- *
5
- * Each `<m-navigation-bar-item>` declares one destination, as the rail's items
6
- * do: `value`, `icon`, `selected-icon`, `badge` (empty: the dot), `badge-label`,
7
- * `href`, `disabled`, and its text as the label. An item with `href` renders as
8
- * a link and keeps native navigation. `value` on the bar is the default
9
- * destination, which moves the live one until the user or script changes it;
10
- * the `value` property is the live one, and `change` carries it.
11
- *
12
- * `item-layout` is `auto` (the default: icon above the label, beside it once
13
- * the bar is 600px wide), `vertical` or `horizontal`. `hide-on-scroll` hides
14
- * the bar while the window scrolls down and shows it on the way back up;
15
- * `visibility` reports each change. A change to either recreates the bar.
16
- *
17
- * Parts: `navigation-bar`, `items`, `item`, `content`, `indicator`, `icon`, `label`.
18
- *
19
- * @module elements
20
- */
21
1
  import type { NavigationBarComponent } from "../components/navigation-bar/types.js";
22
2
  import { type Config, type DefineOptions, type ElementAttributes, type ElementHost, type ElementInstance } from "./define.js";
23
3
  declare const navigationBarSpec: {
@@ -53,7 +33,10 @@ declare const navigationBarSpec: {
53
33
  set: (c: NavigationBarComponent, v: unknown) => undefined;
54
34
  };
55
35
  };
56
- methods: readonly ["hide", "show"];
36
+ methods: readonly [
37
+ "hide",
38
+ "show"
39
+ ];
57
40
  model: "value";
58
41
  events: {
59
42
  change: {
@@ -74,12 +57,7 @@ declare const navigationBarSpec: {
74
57
  };
75
58
  export declare const navigationBarElement: import("./define.js").ElementDefinition<NavigationBarComponent>;
76
59
  export type NavigationBarSpec = typeof navigationBarSpec;
77
- /** `<m-navigation-bar>` as a ref or a query returns it. */
78
60
  export type NavigationBarElement = ElementInstance<NavigationBarSpec, NavigationBarComponent>;
79
- /**
80
- * `<m-navigation-bar-item>` declares one destination and renders nothing.
81
- * Its text content is the label unless `label` is set; `icon` is required.
82
- */
83
61
  export declare const navigationBarItemDeclaration: {
84
62
  readonly name: "navigation-bar-item";
85
63
  readonly attributes: {
@@ -89,11 +67,9 @@ export declare const navigationBarItemDeclaration: {
89
67
  readonly label: {
90
68
  readonly type: "string";
91
69
  };
92
- /** Markup (HTML). Not sanitized by default: see Markup and sanitizing. */
93
70
  readonly icon: {
94
71
  readonly type: "string";
95
72
  };
96
- /** Markup (HTML). Not sanitized by default: see Markup and sanitizing. Shown while this destination is active. */
97
73
  readonly "selected-icon": {
98
74
  readonly type: "string";
99
75
  };
@@ -112,7 +88,6 @@ export declare const navigationBarItemDeclaration: {
112
88
  };
113
89
  };
114
90
  export type NavigationBarItemAttributes = ElementAttributes<typeof navigationBarItemDeclaration>;
115
- /** Registers `<m-navigation-bar>` and `<m-navigation-bar-item>` (or with another prefix). */
116
91
  export declare const defineNavigationBar: (options?: DefineOptions) => string;
117
92
  declare global {
118
93
  interface HTMLElementTagNameMap {