mtrl 0.3.8 → 0.3.9

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 (691) hide show
  1. package/dist/LICENSE +21 -0
  2. package/dist/README.md +324 -0
  3. package/dist/components/badge/api.d.ts +48 -0
  4. package/{src/components/badge/badge.ts → dist/components/badge/badge.d.ts} +14 -57
  5. package/dist/components/badge/config.d.ts +79 -0
  6. package/dist/components/badge/constants.d.ts +35 -0
  7. package/dist/components/badge/features.d.ts +36 -0
  8. package/dist/components/badge/index.d.ts +8 -0
  9. package/dist/components/badge/types.d.ts +256 -0
  10. package/dist/components/bottom-app-bar/bottom-app-bar.d.ts +12 -0
  11. package/dist/components/bottom-app-bar/config.d.ts +16 -0
  12. package/dist/components/bottom-app-bar/constants.d.ts +22 -0
  13. package/{src/components/bottom-app-bar/index.ts → dist/components/bottom-app-bar/index.d.ts} +0 -9
  14. package/dist/components/bottom-app-bar/types.d.ts +96 -0
  15. package/dist/components/button/api.d.ts +47 -0
  16. package/dist/components/button/button.d.ts +25 -0
  17. package/dist/components/button/config.d.ts +59 -0
  18. package/dist/components/button/constants.d.ts +43 -0
  19. package/dist/components/button/index.d.ts +6 -0
  20. package/dist/components/button/types.d.ts +265 -0
  21. package/dist/components/card/api.d.ts +11 -0
  22. package/{src/components/card/card.ts → dist/components/card/card.d.ts} +10 -58
  23. package/dist/components/card/config.d.ts +105 -0
  24. package/dist/components/card/constants.d.ts +85 -0
  25. package/dist/components/card/content.d.ts +92 -0
  26. package/dist/components/card/features.d.ts +131 -0
  27. package/{src/components/card/index.ts → dist/components/card/index.d.ts} +13 -74
  28. package/dist/components/card/types.d.ts +471 -0
  29. package/dist/components/carousel/api.d.ts +33 -0
  30. package/dist/components/carousel/carousel.d.ts +75 -0
  31. package/dist/components/carousel/config.d.ts +45 -0
  32. package/dist/components/carousel/constants.d.ts +165 -0
  33. package/dist/components/carousel/features/drag.d.ts +8 -0
  34. package/{src/components/carousel/features/index.ts → dist/components/carousel/features/index.d.ts} +1 -4
  35. package/dist/components/carousel/features/slides.d.ts +8 -0
  36. package/{src/components/carousel/index.ts → dist/components/carousel/index.d.ts} +10 -29
  37. package/dist/components/carousel/types.d.ts +276 -0
  38. package/dist/components/checkbox/api.d.ts +7 -0
  39. package/dist/components/checkbox/checkbox.d.ts +65 -0
  40. package/dist/components/checkbox/config.d.ts +44 -0
  41. package/dist/components/checkbox/constants.d.ts +63 -0
  42. package/{src/components/checkbox/index.ts → dist/components/checkbox/index.d.ts} +8 -25
  43. package/dist/components/checkbox/types.d.ts +242 -0
  44. package/dist/components/chips/api.d.ts +49 -0
  45. package/dist/components/chips/chip/api.d.ts +23 -0
  46. package/dist/components/chips/chip/chip.d.ts +8 -0
  47. package/dist/components/chips/chip/config.d.ts +57 -0
  48. package/dist/components/chips/chip/constants.d.ts +38 -0
  49. package/dist/components/chips/chip/index.d.ts +2 -0
  50. package/dist/components/chips/chip/types.d.ts +11 -0
  51. package/dist/components/chips/chips.d.ts +17 -0
  52. package/dist/components/chips/config.d.ts +67 -0
  53. package/dist/components/chips/constants.d.ts +46 -0
  54. package/dist/components/chips/features/chip-items.d.ts +8 -0
  55. package/dist/components/chips/features/container.d.ts +8 -0
  56. package/dist/components/chips/features/controller.d.ts +9 -0
  57. package/{src/components/chips/features/index.ts → dist/components/chips/features/index.d.ts} +1 -2
  58. package/dist/components/chips/features/label.d.ts +8 -0
  59. package/dist/components/chips/index.d.ts +4 -0
  60. package/dist/components/chips/schema.d.ts +34 -0
  61. package/dist/components/chips/types.d.ts +398 -0
  62. package/dist/components/datepicker/api.d.ts +9 -0
  63. package/dist/components/datepicker/config.d.ts +79 -0
  64. package/dist/components/datepicker/constants.d.ts +97 -0
  65. package/dist/components/datepicker/datepicker.d.ts +8 -0
  66. package/dist/components/datepicker/index.d.ts +3 -0
  67. package/dist/components/datepicker/render.d.ts +43 -0
  68. package/dist/components/datepicker/types.d.ts +321 -0
  69. package/dist/components/datepicker/utils.d.ts +84 -0
  70. package/dist/components/dialog/api.d.ts +59 -0
  71. package/dist/components/dialog/config.d.ts +91 -0
  72. package/dist/components/dialog/constants.d.ts +116 -0
  73. package/{src/components/dialog/dialog.ts → dist/components/dialog/dialog.d.ts} +16 -69
  74. package/dist/components/dialog/features.d.ts +37 -0
  75. package/dist/components/dialog/index.d.ts +14 -0
  76. package/dist/components/dialog/types.d.ts +483 -0
  77. package/dist/components/divider/config.d.ts +143 -0
  78. package/dist/components/divider/constants.d.ts +45 -0
  79. package/{src/components/divider/divider.ts → dist/components/divider/divider.d.ts} +9 -37
  80. package/dist/components/divider/features.d.ts +50 -0
  81. package/{src/components/divider/index.ts → dist/components/divider/index.d.ts} +6 -12
  82. package/dist/components/divider/types.d.ts +124 -0
  83. package/dist/components/extended-fab/api.d.ts +83 -0
  84. package/dist/components/extended-fab/config.d.ts +75 -0
  85. package/dist/components/extended-fab/constants.d.ts +82 -0
  86. package/dist/components/extended-fab/extended-fab.d.ts +61 -0
  87. package/{src/components/extended-fab/index.ts → dist/components/extended-fab/index.d.ts} +6 -15
  88. package/dist/components/extended-fab/types.d.ts +703 -0
  89. package/dist/components/fab/api.d.ts +64 -0
  90. package/dist/components/fab/config.d.ts +71 -0
  91. package/dist/components/fab/constants.d.ts +75 -0
  92. package/{src/components/fab/fab.ts → dist/components/fab/fab.d.ts} +10 -46
  93. package/{src/components/fab/index.ts → dist/components/fab/index.d.ts} +6 -15
  94. package/dist/components/fab/types.d.ts +577 -0
  95. package/dist/components/index.d.ts +76 -0
  96. package/dist/components/list/api.d.ts +106 -0
  97. package/dist/components/list/config.d.ts +61 -0
  98. package/dist/components/list/constants.d.ts +76 -0
  99. package/dist/components/list/features/index.d.ts +2 -0
  100. package/dist/components/list/features/listmanager.d.ts +9 -0
  101. package/dist/components/list/features/selection.d.ts +9 -0
  102. package/dist/components/list/index.d.ts +12 -0
  103. package/dist/components/list/list.d.ts +11 -0
  104. package/dist/components/list/types.d.ts +294 -0
  105. package/dist/components/menu/api.d.ts +58 -0
  106. package/dist/components/menu/config.d.ts +78 -0
  107. package/dist/components/menu/constants.d.ts +106 -0
  108. package/dist/components/menu/features/controller.d.ts +10 -0
  109. package/dist/components/menu/features/index.d.ts +6 -0
  110. package/dist/components/menu/features/keyboard.d.ts +26 -0
  111. package/dist/components/menu/features/opener.d.ts +10 -0
  112. package/dist/components/menu/features/position.d.ts +18 -0
  113. package/dist/components/menu/features/submenu.d.ts +10 -0
  114. package/{src/components/menu/index.ts → dist/components/menu/index.d.ts} +11 -27
  115. package/dist/components/menu/menu.d.ts +29 -0
  116. package/dist/components/menu/types.d.ts +338 -0
  117. package/dist/components/navigation/api.d.ts +8 -0
  118. package/dist/components/navigation/config.d.ts +34 -0
  119. package/dist/components/navigation/constants.d.ts +137 -0
  120. package/dist/components/navigation/features/controller.d.ts +30 -0
  121. package/dist/components/navigation/features/items.d.ts +32 -0
  122. package/dist/components/navigation/index.d.ts +3 -0
  123. package/dist/components/navigation/nav-item.d.ts +30 -0
  124. package/dist/components/navigation/navigation.d.ts +8 -0
  125. package/dist/components/navigation/system/core.d.ts +72 -0
  126. package/dist/components/navigation/system/events.d.ts +35 -0
  127. package/dist/components/navigation/system/index.d.ts +10 -0
  128. package/dist/components/navigation/system/mobile.d.ts +52 -0
  129. package/dist/components/navigation/system/state.d.ts +22 -0
  130. package/dist/components/navigation/system/types.d.ts +305 -0
  131. package/dist/components/navigation/types.d.ts +216 -0
  132. package/dist/components/progress/api.d.ts +46 -0
  133. package/dist/components/progress/config.d.ts +63 -0
  134. package/dist/components/progress/constants.d.ts +58 -0
  135. package/dist/components/progress/index.d.ts +3 -0
  136. package/dist/components/progress/progress.d.ts +24 -0
  137. package/dist/components/progress/types.d.ts +199 -0
  138. package/dist/components/radios/api.d.ts +37 -0
  139. package/dist/components/radios/config.d.ts +42 -0
  140. package/dist/components/radios/constants.d.ts +114 -0
  141. package/dist/components/radios/index.d.ts +3 -0
  142. package/dist/components/radios/radio.d.ts +8 -0
  143. package/dist/components/radios/radios.d.ts +8 -0
  144. package/dist/components/radios/types.d.ts +189 -0
  145. package/dist/components/search/api.d.ts +55 -0
  146. package/dist/components/search/config.d.ts +73 -0
  147. package/dist/components/search/constants.d.ts +128 -0
  148. package/{src/components/search/features/index.ts → dist/components/search/features/index.d.ts} +1 -2
  149. package/dist/components/search/features/search.d.ts +7 -0
  150. package/dist/components/search/features/states.d.ts +8 -0
  151. package/dist/components/search/features/structure.d.ts +7 -0
  152. package/dist/components/search/index.d.ts +3 -0
  153. package/dist/components/search/search.d.ts +8 -0
  154. package/dist/components/search/types.d.ts +132 -0
  155. package/dist/components/segmented-button/config.d.ts +65 -0
  156. package/dist/components/segmented-button/constants.d.ts +85 -0
  157. package/dist/components/segmented-button/index.d.ts +4 -0
  158. package/dist/components/segmented-button/segment.d.ts +15 -0
  159. package/dist/components/segmented-button/segmented-button.d.ts +49 -0
  160. package/dist/components/segmented-button/types.d.ts +257 -0
  161. package/dist/components/select/api.d.ts +8 -0
  162. package/dist/components/select/config.d.ts +18 -0
  163. package/dist/components/select/constants.d.ts +113 -0
  164. package/dist/components/select/features.d.ts +13 -0
  165. package/{src/components/select/index.ts → dist/components/select/index.d.ts} +7 -20
  166. package/dist/components/select/select.d.ts +36 -0
  167. package/dist/components/select/types.d.ts +302 -0
  168. package/dist/components/sheet/api.d.ts +37 -0
  169. package/dist/components/sheet/config.d.ts +42 -0
  170. package/dist/components/sheet/constants.d.ts +136 -0
  171. package/dist/components/sheet/features/content.d.ts +6 -0
  172. package/dist/components/sheet/features/gestures.d.ts +6 -0
  173. package/{src/components/sheet/features/index.ts → dist/components/sheet/features/index.d.ts} +1 -2
  174. package/dist/components/sheet/features/position.d.ts +7 -0
  175. package/dist/components/sheet/features/state.d.ts +6 -0
  176. package/dist/components/sheet/features/title.d.ts +6 -0
  177. package/dist/components/sheet/index.d.ts +3 -0
  178. package/dist/components/sheet/sheet.d.ts +8 -0
  179. package/dist/components/sheet/types.d.ts +250 -0
  180. package/dist/components/slider/api.d.ts +57 -0
  181. package/dist/components/slider/config.d.ts +75 -0
  182. package/dist/components/slider/constants.d.ts +138 -0
  183. package/dist/components/slider/features/controller.d.ts +9 -0
  184. package/dist/components/slider/features/handlers.d.ts +25 -0
  185. package/dist/components/slider/features/index.d.ts +3 -0
  186. package/dist/components/slider/features/range.d.ts +8 -0
  187. package/dist/components/slider/features/states.d.ts +9 -0
  188. package/dist/components/slider/index.d.ts +3 -0
  189. package/dist/components/slider/schema.d.ts +108 -0
  190. package/dist/components/slider/slider.d.ts +18 -0
  191. package/dist/components/slider/types.d.ts +170 -0
  192. package/dist/components/snackbar/api.d.ts +7 -0
  193. package/dist/components/snackbar/config.d.ts +55 -0
  194. package/dist/components/snackbar/constants.d.ts +88 -0
  195. package/dist/components/snackbar/features.d.ts +13 -0
  196. package/dist/components/snackbar/index.d.ts +3 -0
  197. package/dist/components/snackbar/position.d.ts +15 -0
  198. package/dist/components/snackbar/queue.d.ts +7 -0
  199. package/dist/components/snackbar/snackbar.d.ts +8 -0
  200. package/dist/components/snackbar/types.d.ts +172 -0
  201. package/dist/components/switch/api.d.ts +7 -0
  202. package/dist/components/switch/config.d.ts +34 -0
  203. package/dist/components/switch/constants.d.ts +88 -0
  204. package/dist/components/switch/features.d.ts +59 -0
  205. package/dist/components/switch/index.d.ts +4 -0
  206. package/dist/components/switch/switch.d.ts +8 -0
  207. package/dist/components/switch/types.d.ts +131 -0
  208. package/dist/components/tabs/api.d.ts +52 -0
  209. package/dist/components/tabs/config.d.ts +39 -0
  210. package/dist/components/tabs/constants.d.ts +142 -0
  211. package/dist/components/tabs/features.d.ts +133 -0
  212. package/dist/components/tabs/index.d.ts +11 -0
  213. package/dist/components/tabs/indicator.d.ts +49 -0
  214. package/dist/components/tabs/responsive.d.ts +38 -0
  215. package/dist/components/tabs/scroll-indicators.d.ts +18 -0
  216. package/dist/components/tabs/state.d.ts +53 -0
  217. package/dist/components/tabs/tab-api.d.ts +43 -0
  218. package/dist/components/tabs/tab.d.ts +7 -0
  219. package/dist/components/tabs/tabs.d.ts +27 -0
  220. package/dist/components/tabs/types.d.ts +390 -0
  221. package/dist/components/tabs/utils.d.ts +17 -0
  222. package/dist/components/textfield/api.d.ts +8 -0
  223. package/dist/components/textfield/config.d.ts +34 -0
  224. package/dist/components/textfield/constants.d.ts +148 -0
  225. package/{src/components/textfield/features/index.ts → dist/components/textfield/features/index.d.ts} +1 -6
  226. package/dist/components/textfield/features/leading-icon.d.ts +55 -0
  227. package/dist/components/textfield/features/placement.d.ts +28 -0
  228. package/dist/components/textfield/features/prefix-text.d.ts +54 -0
  229. package/dist/components/textfield/features/suffix-text.d.ts +54 -0
  230. package/dist/components/textfield/features/supporting-text.d.ts +59 -0
  231. package/dist/components/textfield/features/trailing-icon.d.ts +55 -0
  232. package/dist/components/textfield/index.d.ts +3 -0
  233. package/dist/components/textfield/textfield.d.ts +36 -0
  234. package/dist/components/textfield/types.d.ts +217 -0
  235. package/dist/components/timepicker/api.d.ts +24 -0
  236. package/dist/components/timepicker/clockdial.d.ts +34 -0
  237. package/dist/components/timepicker/config.d.ts +75 -0
  238. package/dist/components/timepicker/constants.d.ts +266 -0
  239. package/dist/components/timepicker/index.d.ts +4 -0
  240. package/dist/components/timepicker/render.d.ts +9 -0
  241. package/dist/components/timepicker/timepicker.d.ts +8 -0
  242. package/dist/components/timepicker/types.d.ts +284 -0
  243. package/dist/components/timepicker/utils.d.ts +74 -0
  244. package/dist/components/tooltip/api.d.ts +18 -0
  245. package/dist/components/tooltip/config.d.ts +38 -0
  246. package/dist/components/tooltip/constants.d.ts +108 -0
  247. package/dist/components/tooltip/index.d.ts +3 -0
  248. package/dist/components/tooltip/tooltip.d.ts +8 -0
  249. package/dist/components/tooltip/types.d.ts +188 -0
  250. package/dist/components/top-app-bar/config.d.ts +16 -0
  251. package/dist/components/top-app-bar/constants.d.ts +74 -0
  252. package/{src/components/top-app-bar/index.ts → dist/components/top-app-bar/index.d.ts} +2 -4
  253. package/dist/components/top-app-bar/top-app-bar.d.ts +68 -0
  254. package/dist/components/top-app-bar/types.d.ts +118 -0
  255. package/dist/constants.d.ts +30 -0
  256. package/dist/core/collection/adapters/base.d.ts +47 -0
  257. package/dist/core/collection/adapters/route.d.ts +149 -0
  258. package/dist/core/collection/collection.d.ts +131 -0
  259. package/dist/core/collection/index.d.ts +10 -0
  260. package/dist/core/collection/list-manager/config.d.ts +29 -0
  261. package/dist/core/collection/list-manager/dom-elements.d.ts +30 -0
  262. package/dist/core/collection/list-manager/index.d.ts +61 -0
  263. package/dist/core/collection/list-manager/item-measurement.d.ts +91 -0
  264. package/dist/core/collection/list-manager/renderer.d.ts +31 -0
  265. package/dist/core/collection/list-manager/scroll-tracker.d.ts +20 -0
  266. package/dist/core/collection/list-manager/state.d.ts +60 -0
  267. package/dist/core/collection/list-manager/types.d.ts +361 -0
  268. package/dist/core/collection/list-manager/utils/recycling.d.ts +34 -0
  269. package/dist/core/collection/list-manager/utils/visibility.d.ts +45 -0
  270. package/dist/core/compose/base.d.ts +31 -0
  271. package/dist/core/compose/component.d.ts +61 -0
  272. package/dist/core/compose/features/badge.d.ts +43 -0
  273. package/dist/core/compose/features/checkable.d.ts +59 -0
  274. package/dist/core/compose/features/constants.d.ts +45 -0
  275. package/dist/core/compose/features/debounce.d.ts +84 -0
  276. package/dist/core/compose/features/disabled.d.ts +47 -0
  277. package/dist/core/compose/features/events.d.ts +37 -0
  278. package/dist/core/compose/features/gestures/longpress.d.ts +85 -0
  279. package/dist/core/compose/features/gestures/pan.d.ts +108 -0
  280. package/dist/core/compose/features/gestures/pinch.d.ts +111 -0
  281. package/dist/core/compose/features/gestures/rotate.d.ts +111 -0
  282. package/dist/core/compose/features/gestures/swipe.d.ts +149 -0
  283. package/dist/core/compose/features/gestures/tap.d.ts +79 -0
  284. package/dist/core/compose/features/gestures.d.ts +86 -0
  285. package/dist/core/compose/features/icon.d.ts +71 -0
  286. package/{src/core/compose/features/index.ts → dist/core/compose/features/index.d.ts} +7 -8
  287. package/dist/core/compose/features/input.d.ts +71 -0
  288. package/dist/core/compose/features/lifecycle.d.ts +61 -0
  289. package/dist/core/compose/features/position.d.ts +51 -0
  290. package/dist/core/compose/features/ripple.d.ts +61 -0
  291. package/dist/core/compose/features/size.d.ts +17 -0
  292. package/dist/core/compose/features/style.d.ts +16 -0
  293. package/dist/core/compose/features/text.d.ts +63 -0
  294. package/dist/core/compose/features/textinput.d.ts +93 -0
  295. package/dist/core/compose/features/textlabel.d.ts +57 -0
  296. package/dist/core/compose/features/throttle.d.ts +75 -0
  297. package/dist/core/compose/features/track.d.ts +42 -0
  298. package/dist/core/compose/features/variant.d.ts +17 -0
  299. package/dist/core/compose/features/withEvents.d.ts +45 -0
  300. package/dist/core/compose/index.d.ts +17 -0
  301. package/{src/core/compose/pipe.ts → dist/core/compose/pipe.d.ts} +4 -20
  302. package/dist/core/compose/utils/type-guards.d.ts +27 -0
  303. package/dist/core/composition/features/dom.d.ts +19 -0
  304. package/dist/core/composition/features/icon.d.ts +45 -0
  305. package/{src/core/composition/features/index.ts → dist/core/composition/features/index.d.ts} +1 -6
  306. package/dist/core/composition/features/label.d.ts +49 -0
  307. package/{src/core/composition/features/layout.ts → dist/core/composition/features/layout.d.ts} +8 -24
  308. package/{src/core/composition/index.ts → dist/core/composition/index.d.ts} +4 -14
  309. package/{src/core/config/component-config.ts → dist/core/config/component.d.ts} +34 -82
  310. package/dist/core/config.d.ts +130 -0
  311. package/{src/core/dom/attributes.ts → dist/core/dom/attributes.d.ts} +2 -13
  312. package/dist/core/dom/classes.d.ts +42 -0
  313. package/dist/core/dom/create.d.ts +124 -0
  314. package/dist/core/dom/events.d.ts +69 -0
  315. package/{src/core/dom/index.ts → dist/core/dom/index.d.ts} +1 -5
  316. package/dist/core/dom/utils.d.ts +42 -0
  317. package/dist/core/gestures/index.d.ts +12 -0
  318. package/dist/core/gestures/longpress.d.ts +23 -0
  319. package/dist/core/gestures/manager.d.ts +14 -0
  320. package/dist/core/gestures/pan.d.ts +12 -0
  321. package/dist/core/gestures/pinch.d.ts +14 -0
  322. package/dist/core/gestures/rotate.d.ts +14 -0
  323. package/dist/core/gestures/swipe.d.ts +20 -0
  324. package/dist/core/gestures/tap.d.ts +12 -0
  325. package/dist/core/gestures/types.d.ts +320 -0
  326. package/dist/core/gestures/utils.d.ts +57 -0
  327. package/dist/core/index.d.ts +29 -0
  328. package/dist/core/layout/array.d.ts +15 -0
  329. package/dist/core/layout/config.d.ts +32 -0
  330. package/dist/core/layout/create.d.ts +14 -0
  331. package/dist/core/layout/index.d.ts +13 -0
  332. package/dist/core/layout/jsx.d.ts +13 -0
  333. package/dist/core/layout/object.d.ts +14 -0
  334. package/dist/core/layout/processor.d.ts +28 -0
  335. package/dist/core/layout/result.d.ts +12 -0
  336. package/dist/core/layout/template.d.ts +12 -0
  337. package/dist/core/layout/types.d.ts +137 -0
  338. package/dist/core/layout/utils.d.ts +38 -0
  339. package/dist/core/state/disabled.d.ts +32 -0
  340. package/dist/core/state/emitter.d.ts +40 -0
  341. package/dist/core/state/events.d.ts +36 -0
  342. package/{src/core/state/index.ts → dist/core/state/index.d.ts} +1 -7
  343. package/dist/core/state/lifecycle.d.ts +57 -0
  344. package/dist/core/state/store.d.ts +82 -0
  345. package/dist/core/utils/background.d.ts +40 -0
  346. package/dist/core/utils/index.d.ts +23 -0
  347. package/dist/core/utils/mobile.d.ts +54 -0
  348. package/dist/core/utils/object.d.ts +13 -0
  349. package/dist/core/utils/performance.d.ts +79 -0
  350. package/dist/core/utils/validate.d.ts +73 -0
  351. package/dist/index.cjs +64 -0
  352. package/dist/index.cjs.map +285 -0
  353. package/dist/index.d.ts +15 -0
  354. package/dist/index.js +53 -14854
  355. package/dist/index.js.map +285 -0
  356. package/dist/package.json +39 -0
  357. package/dist/styles.css +7 -0
  358. package/package.json +23 -4
  359. package/.env +0 -15
  360. package/.typedocignore +0 -11
  361. package/CONTRIBUTING.md +0 -218
  362. package/DOCS.md +0 -153
  363. package/TESTING.md +0 -214
  364. package/git-user-stats.js +0 -545
  365. package/index.ts +0 -10
  366. package/src/components/badge/api.ts +0 -313
  367. package/src/components/badge/config.ts +0 -153
  368. package/src/components/badge/features.ts +0 -194
  369. package/src/components/badge/index.ts +0 -90
  370. package/src/components/badge/types.ts +0 -279
  371. package/src/components/bottom-app-bar/bottom-app-bar.ts +0 -154
  372. package/src/components/bottom-app-bar/config.ts +0 -29
  373. package/src/components/bottom-app-bar/types.ts +0 -114
  374. package/src/components/button/api.ts +0 -172
  375. package/src/components/button/button.ts +0 -112
  376. package/src/components/button/config.ts +0 -96
  377. package/src/components/button/index.ts +0 -37
  378. package/src/components/button/types.ts +0 -290
  379. package/src/components/card/api.ts +0 -222
  380. package/src/components/card/config.ts +0 -304
  381. package/src/components/card/content.ts +0 -343
  382. package/src/components/card/features.ts +0 -407
  383. package/src/components/card/types.ts +0 -497
  384. package/src/components/carousel/api.ts +0 -147
  385. package/src/components/carousel/carousel.ts +0 -242
  386. package/src/components/carousel/config.ts +0 -91
  387. package/src/components/carousel/constants.ts +0 -181
  388. package/src/components/carousel/features/drag.ts +0 -388
  389. package/src/components/carousel/features/slides.ts +0 -682
  390. package/src/components/carousel/types.ts +0 -327
  391. package/src/components/checkbox/api.ts +0 -82
  392. package/src/components/checkbox/checkbox.ts +0 -142
  393. package/src/components/checkbox/config.ts +0 -89
  394. package/src/components/checkbox/types.ts +0 -342
  395. package/src/components/chips/api.ts +0 -194
  396. package/src/components/chips/chip/api.ts +0 -233
  397. package/src/components/chips/chip/chip.ts +0 -131
  398. package/src/components/chips/chip/config.ts +0 -91
  399. package/src/components/chips/chip/index.ts +0 -3
  400. package/src/components/chips/chips.md +0 -481
  401. package/src/components/chips/chips.ts +0 -75
  402. package/src/components/chips/config.ts +0 -109
  403. package/src/components/chips/constants.ts +0 -61
  404. package/src/components/chips/features/chip-items.ts +0 -33
  405. package/src/components/chips/features/container.ts +0 -77
  406. package/src/components/chips/features/controller.ts +0 -448
  407. package/src/components/chips/features/label.ts +0 -108
  408. package/src/components/chips/index.ts +0 -11
  409. package/src/components/chips/schema.ts +0 -61
  410. package/src/components/chips/types.ts +0 -469
  411. package/src/components/datepicker/api.ts +0 -265
  412. package/src/components/datepicker/config.ts +0 -141
  413. package/src/components/datepicker/datepicker.ts +0 -341
  414. package/src/components/datepicker/index.ts +0 -12
  415. package/src/components/datepicker/render.ts +0 -450
  416. package/src/components/datepicker/types.ts +0 -397
  417. package/src/components/datepicker/utils.ts +0 -289
  418. package/src/components/dialog/api.ts +0 -317
  419. package/src/components/dialog/config.ts +0 -116
  420. package/src/components/dialog/features.ts +0 -907
  421. package/src/components/dialog/index.ts +0 -141
  422. package/src/components/dialog/types.ts +0 -553
  423. package/src/components/divider/config.ts +0 -165
  424. package/src/components/divider/features.ts +0 -233
  425. package/src/components/divider/types.ts +0 -132
  426. package/src/components/extended-fab/api.ts +0 -193
  427. package/src/components/extended-fab/config.ts +0 -140
  428. package/src/components/extended-fab/extended-fab.ts +0 -153
  429. package/src/components/extended-fab/types.ts +0 -749
  430. package/src/components/fab/api.ts +0 -137
  431. package/src/components/fab/config.ts +0 -121
  432. package/src/components/fab/types.ts +0 -615
  433. package/src/components/list/api.ts +0 -82
  434. package/src/components/list/config.ts +0 -63
  435. package/src/components/list/features.ts +0 -229
  436. package/src/components/list/index.ts +0 -67
  437. package/src/components/list/list-item.ts +0 -163
  438. package/src/components/list/list.ts +0 -108
  439. package/src/components/list/types.ts +0 -396
  440. package/src/components/list/utils.ts +0 -98
  441. package/src/components/menu/api.ts +0 -230
  442. package/src/components/menu/config.ts +0 -127
  443. package/src/components/menu/features/anchor.ts +0 -394
  444. package/src/components/menu/features/controller.ts +0 -1423
  445. package/src/components/menu/features/index.ts +0 -13
  446. package/src/components/menu/features/position.ts +0 -353
  447. package/src/components/menu/menu.ts +0 -121
  448. package/src/components/menu/types.ts +0 -392
  449. package/src/components/navigation/api.ts +0 -142
  450. package/src/components/navigation/config.ts +0 -73
  451. package/src/components/navigation/features/controller.ts +0 -273
  452. package/src/components/navigation/features/items.ts +0 -353
  453. package/src/components/navigation/index.ts +0 -11
  454. package/src/components/navigation/nav-item.ts +0 -196
  455. package/src/components/navigation/navigation.ts +0 -115
  456. package/src/components/navigation/system/core.ts +0 -302
  457. package/src/components/navigation/system/events.ts +0 -240
  458. package/src/components/navigation/system/index.ts +0 -184
  459. package/src/components/navigation/system/mobile.ts +0 -278
  460. package/src/components/navigation/system/state.ts +0 -77
  461. package/src/components/navigation/system/types.ts +0 -364
  462. package/src/components/navigation/types.ts +0 -292
  463. package/src/components/progress/api.ts +0 -178
  464. package/src/components/progress/config.ts +0 -122
  465. package/src/components/progress/index.ts +0 -4
  466. package/src/components/progress/progress.ts +0 -159
  467. package/src/components/progress/types.ts +0 -255
  468. package/src/components/radios/api.ts +0 -125
  469. package/src/components/radios/config.ts +0 -59
  470. package/src/components/radios/constants.ts +0 -19
  471. package/src/components/radios/index.ts +0 -3
  472. package/src/components/radios/radio.ts +0 -292
  473. package/src/components/radios/radios.ts +0 -43
  474. package/src/components/radios/types.ts +0 -219
  475. package/src/components/search/api.ts +0 -203
  476. package/src/components/search/config.ts +0 -86
  477. package/src/components/search/features/search.ts +0 -717
  478. package/src/components/search/features/states.ts +0 -169
  479. package/src/components/search/features/structure.ts +0 -197
  480. package/src/components/search/index.ts +0 -7
  481. package/src/components/search/search.ts +0 -52
  482. package/src/components/search/types.ts +0 -175
  483. package/src/components/segmented-button/config.ts +0 -119
  484. package/src/components/segmented-button/index.ts +0 -4
  485. package/src/components/segmented-button/segment.ts +0 -108
  486. package/src/components/segmented-button/segmented-button.ts +0 -361
  487. package/src/components/segmented-button/types.ts +0 -306
  488. package/src/components/select/api.ts +0 -78
  489. package/src/components/select/config.ts +0 -76
  490. package/src/components/select/features.ts +0 -331
  491. package/src/components/select/select.ts +0 -73
  492. package/src/components/select/types.ts +0 -355
  493. package/src/components/sheet/api.ts +0 -96
  494. package/src/components/sheet/config.ts +0 -65
  495. package/src/components/sheet/features/content.ts +0 -51
  496. package/src/components/sheet/features/gestures.ts +0 -177
  497. package/src/components/sheet/features/position.ts +0 -41
  498. package/src/components/sheet/features/state.ts +0 -116
  499. package/src/components/sheet/features/title.ts +0 -86
  500. package/src/components/sheet/index.ts +0 -12
  501. package/src/components/sheet/sheet.ts +0 -56
  502. package/src/components/sheet/types.ts +0 -294
  503. package/src/components/slider/accessibility.md +0 -59
  504. package/src/components/slider/api.ts +0 -192
  505. package/src/components/slider/config.ts +0 -118
  506. package/src/components/slider/features/controller.ts +0 -737
  507. package/src/components/slider/features/handlers.ts +0 -497
  508. package/src/components/slider/features/index.ts +0 -5
  509. package/src/components/slider/features/range.ts +0 -104
  510. package/src/components/slider/features/states.ts +0 -195
  511. package/src/components/slider/index.ts +0 -17
  512. package/src/components/slider/schema.ts +0 -141
  513. package/src/components/slider/slider.ts +0 -76
  514. package/src/components/slider/types.ts +0 -223
  515. package/src/components/snackbar/api.ts +0 -162
  516. package/src/components/snackbar/config.ts +0 -61
  517. package/src/components/snackbar/features.ts +0 -76
  518. package/src/components/snackbar/index.ts +0 -9
  519. package/src/components/snackbar/position.ts +0 -79
  520. package/src/components/snackbar/queue.ts +0 -76
  521. package/src/components/snackbar/snackbar.ts +0 -60
  522. package/src/components/snackbar/types.ts +0 -159
  523. package/src/components/switch/api.ts +0 -93
  524. package/src/components/switch/config.ts +0 -56
  525. package/src/components/switch/features.ts +0 -198
  526. package/src/components/switch/index.ts +0 -8
  527. package/src/components/switch/switch.ts +0 -52
  528. package/src/components/switch/types.ts +0 -168
  529. package/src/components/tabs/api.ts +0 -221
  530. package/src/components/tabs/config.ts +0 -73
  531. package/src/components/tabs/features.ts +0 -403
  532. package/src/components/tabs/index.ts +0 -46
  533. package/src/components/tabs/indicator.ts +0 -285
  534. package/src/components/tabs/responsive.ts +0 -144
  535. package/src/components/tabs/scroll-indicators.ts +0 -149
  536. package/src/components/tabs/state.ts +0 -186
  537. package/src/components/tabs/tab-api.ts +0 -266
  538. package/src/components/tabs/tab.ts +0 -267
  539. package/src/components/tabs/tabs.ts +0 -71
  540. package/src/components/tabs/types.ts +0 -461
  541. package/src/components/tabs/utils.ts +0 -107
  542. package/src/components/textfield/api.ts +0 -197
  543. package/src/components/textfield/config.ts +0 -52
  544. package/src/components/textfield/features/leading-icon.ts +0 -127
  545. package/src/components/textfield/features/placement.ts +0 -149
  546. package/src/components/textfield/features/prefix-text.ts +0 -107
  547. package/src/components/textfield/features/suffix-text.ts +0 -100
  548. package/src/components/textfield/features/supporting-text.ts +0 -113
  549. package/src/components/textfield/features/trailing-icon.ts +0 -108
  550. package/src/components/textfield/index.ts +0 -9
  551. package/src/components/textfield/textfield.ts +0 -92
  552. package/src/components/textfield/types.ts +0 -265
  553. package/src/components/timepicker/README.md +0 -277
  554. package/src/components/timepicker/api.ts +0 -632
  555. package/src/components/timepicker/clockdial.ts +0 -479
  556. package/src/components/timepicker/config.ts +0 -228
  557. package/src/components/timepicker/index.ts +0 -3
  558. package/src/components/timepicker/render.ts +0 -613
  559. package/src/components/timepicker/timepicker.ts +0 -117
  560. package/src/components/timepicker/types.ts +0 -336
  561. package/src/components/timepicker/utils.ts +0 -241
  562. package/src/components/tooltip/api.ts +0 -415
  563. package/src/components/tooltip/config.ts +0 -80
  564. package/src/components/tooltip/index.ts +0 -12
  565. package/src/components/tooltip/tooltip.ts +0 -60
  566. package/src/components/tooltip/types.ts +0 -223
  567. package/src/components/top-app-bar/config.ts +0 -83
  568. package/src/components/top-app-bar/top-app-bar.ts +0 -316
  569. package/src/components/top-app-bar/types.ts +0 -140
  570. package/src/core/build/constants.ts +0 -48
  571. package/src/core/build/icon.ts +0 -137
  572. package/src/core/build/ripple.ts +0 -193
  573. package/src/core/build/text.ts +0 -91
  574. package/src/core/collection/adapters/base.ts +0 -62
  575. package/src/core/collection/adapters/route.ts +0 -201
  576. package/src/core/collection/collection.ts +0 -300
  577. package/src/core/collection/index.ts +0 -57
  578. package/src/core/collection/list-manager.ts +0 -333
  579. package/src/core/compose/base.ts +0 -43
  580. package/src/core/compose/component.ts +0 -255
  581. package/src/core/compose/features/badge.ts +0 -79
  582. package/src/core/compose/features/checkable.ts +0 -155
  583. package/src/core/compose/features/disabled.ts +0 -116
  584. package/src/core/compose/features/events.ts +0 -65
  585. package/src/core/compose/features/icon.ts +0 -71
  586. package/src/core/compose/features/input.ts +0 -174
  587. package/src/core/compose/features/lifecycle.ts +0 -139
  588. package/src/core/compose/features/position.ts +0 -94
  589. package/src/core/compose/features/ripple.ts +0 -58
  590. package/src/core/compose/features/size.ts +0 -29
  591. package/src/core/compose/features/style.ts +0 -31
  592. package/src/core/compose/features/text.ts +0 -44
  593. package/src/core/compose/features/textinput.ts +0 -238
  594. package/src/core/compose/features/textlabel.ts +0 -113
  595. package/src/core/compose/features/track.ts +0 -84
  596. package/src/core/compose/features/variant.ts +0 -29
  597. package/src/core/compose/features/withEvents.ts +0 -137
  598. package/src/core/compose/index.ts +0 -54
  599. package/src/core/composition/features/dom.ts +0 -45
  600. package/src/core/composition/features/icon.ts +0 -131
  601. package/src/core/composition/features/label.ts +0 -155
  602. package/src/core/config.ts +0 -211
  603. package/src/core/dom/classes.ts +0 -132
  604. package/src/core/dom/create.ts +0 -273
  605. package/src/core/dom/events.ts +0 -209
  606. package/src/core/dom/utils.ts +0 -97
  607. package/src/core/index.ts +0 -111
  608. package/src/core/layout/README.md +0 -715
  609. package/src/core/layout/array.ts +0 -180
  610. package/src/core/layout/config.ts +0 -193
  611. package/src/core/layout/create.ts +0 -54
  612. package/src/core/layout/index.ts +0 -36
  613. package/src/core/layout/object.ts +0 -123
  614. package/src/core/layout/processor.ts +0 -106
  615. package/src/core/layout/result.ts +0 -84
  616. package/src/core/layout/types.ts +0 -180
  617. package/src/core/layout/utils.ts +0 -144
  618. package/src/core/state/disabled.ts +0 -81
  619. package/src/core/state/emitter.ts +0 -94
  620. package/src/core/state/events.ts +0 -88
  621. package/src/core/state/lifecycle.ts +0 -131
  622. package/src/core/state/store.ts +0 -197
  623. package/src/core/utils/index.ts +0 -45
  624. package/src/core/utils/mobile.ts +0 -98
  625. package/src/core/utils/object.ts +0 -41
  626. package/src/core/utils/validate.ts +0 -234
  627. package/src/index.ts +0 -90
  628. package/src/styles/abstract/_base.scss +0 -2
  629. package/src/styles/abstract/_config.scss +0 -28
  630. package/src/styles/abstract/_functions.scss +0 -124
  631. package/src/styles/abstract/_mixins.scss +0 -352
  632. package/src/styles/abstract/_theme.scss +0 -269
  633. package/src/styles/abstract/_variables.scss +0 -305
  634. package/src/styles/base/_reset.scss +0 -86
  635. package/src/styles/base/_typography.scss +0 -155
  636. package/src/styles/components/_badge.scss +0 -182
  637. package/src/styles/components/_bottom-app-bar.scss +0 -103
  638. package/src/styles/components/_button.scss +0 -224
  639. package/src/styles/components/_card.scss +0 -401
  640. package/src/styles/components/_carousel.scss +0 -645
  641. package/src/styles/components/_checkbox.scss +0 -231
  642. package/src/styles/components/_chips.scss +0 -638
  643. package/src/styles/components/_datepicker.scss +0 -358
  644. package/src/styles/components/_dialog.scss +0 -259
  645. package/src/styles/components/_divider.scss +0 -57
  646. package/src/styles/components/_extended-fab.scss +0 -267
  647. package/src/styles/components/_fab.scss +0 -225
  648. package/src/styles/components/_list.scss +0 -248
  649. package/src/styles/components/_menu.scss +0 -242
  650. package/src/styles/components/_navigation-mobile.scss +0 -244
  651. package/src/styles/components/_navigation-system.scss +0 -151
  652. package/src/styles/components/_navigation.scss +0 -407
  653. package/src/styles/components/_progress.scss +0 -151
  654. package/src/styles/components/_radios.scss +0 -187
  655. package/src/styles/components/_search.scss +0 -306
  656. package/src/styles/components/_segmented-button.scss +0 -227
  657. package/src/styles/components/_select.scss +0 -272
  658. package/src/styles/components/_sheet.scss +0 -236
  659. package/src/styles/components/_slider.scss +0 -489
  660. package/src/styles/components/_snackbar.scss +0 -211
  661. package/src/styles/components/_switch.scss +0 -298
  662. package/src/styles/components/_tabs.scss +0 -416
  663. package/src/styles/components/_textfield.scss +0 -773
  664. package/src/styles/components/_timepicker.scss +0 -451
  665. package/src/styles/components/_tooltip.scss +0 -241
  666. package/src/styles/components/_top-app-bar.scss +0 -225
  667. package/src/styles/main.scss +0 -175
  668. package/src/styles/themes/_autumn.scss +0 -105
  669. package/src/styles/themes/_base-theme.scss +0 -85
  670. package/src/styles/themes/_baseline.scss +0 -173
  671. package/src/styles/themes/_bluekhaki.scss +0 -125
  672. package/src/styles/themes/_brownbeige.scss +0 -125
  673. package/src/styles/themes/_browngreen.scss +0 -125
  674. package/src/styles/themes/_forest.scss +0 -77
  675. package/src/styles/themes/_greenbeige.scss +0 -125
  676. package/src/styles/themes/_index.scss +0 -6
  677. package/src/styles/themes/_material.scss +0 -125
  678. package/src/styles/themes/_ocean.scss +0 -77
  679. package/src/styles/themes/_sageivory.scss +0 -125
  680. package/src/styles/themes/_spring.scss +0 -77
  681. package/src/styles/themes/_summer.scss +0 -87
  682. package/src/styles/themes/_sunset.scss +0 -60
  683. package/src/styles/themes/_tealcaramel.scss +0 -125
  684. package/src/styles/themes/_winter.scss +0 -77
  685. package/src/styles/utilities/_colors.scss +0 -154
  686. package/src/styles/utilities/_flexbox.scss +0 -194
  687. package/src/styles/utilities/_layout.scss +0 -665
  688. package/src/styles/utilities/_ripple.scss +0 -79
  689. package/src/styles/utilities/_spacing.scss +0 -139
  690. package/src/styles/utilities/_typography.scss +0 -178
  691. package/src/styles/utilities/_visibility.scss +0 -142
@@ -0,0 +1,24 @@
1
+ import { ProgressConfig, ProgressComponent } from './types';
2
+ /**
3
+ * Creates a new Progress component
4
+ * @param {ProgressConfig} config - Progress configuration object
5
+ * @returns {ProgressComponent} Progress component instance
6
+ *
7
+ * @example
8
+ * ```ts
9
+ * // Create a linear determinate progress bar
10
+ * const progress = createProgress({
11
+ * variant: 'linear',
12
+ * value: 42,
13
+ * showLabel: true
14
+ * });
15
+ *
16
+ * // Create an indeterminate circular progress
17
+ * const loader = createProgress({
18
+ * variant: 'circular',
19
+ * indeterminate: true
20
+ * });
21
+ * ```
22
+ */
23
+ declare const createProgress: (config?: ProgressConfig) => ProgressComponent;
24
+ export default createProgress;
@@ -0,0 +1,199 @@
1
+ /**
2
+ * Progress variant types
3
+ * @category Components
4
+ */
5
+ export type ProgressVariant = 'linear' | 'circular';
6
+ /**
7
+ * Progress component event types
8
+ * @category Components
9
+ */
10
+ export type ProgressEvent = 'change' | 'complete';
11
+ /**
12
+ * Configuration interface for the Progress component
13
+ * @category Components
14
+ */
15
+ export interface ProgressConfig {
16
+ /**
17
+ * Progress variant that determines visual style
18
+ * @default 'linear'
19
+ */
20
+ variant?: ProgressVariant | string;
21
+ /**
22
+ * Initial progress value (0-100)
23
+ * @default 0
24
+ */
25
+ value?: number;
26
+ /**
27
+ * Whether the progress indicator is initially disabled
28
+ * @default false
29
+ */
30
+ disabled?: boolean;
31
+ /**
32
+ * Maximum value
33
+ * @default 100
34
+ */
35
+ max?: number;
36
+ /**
37
+ * Buffer value for linear progress with buffer (like video loading)
38
+ * @default 0
39
+ */
40
+ buffer?: number;
41
+ /**
42
+ * Additional CSS classes to add to the progress component
43
+ * @example 'page-loader main-progress'
44
+ */
45
+ class?: string;
46
+ /**
47
+ * Whether to show text label with percentage
48
+ * @default false
49
+ */
50
+ showLabel?: boolean;
51
+ /**
52
+ * Whether progress is indeterminate (shows animation without specific value)
53
+ * @default false
54
+ */
55
+ indeterminate?: boolean;
56
+ /**
57
+ * Custom label formatter function
58
+ * @example (value, max) => `${Math.round((value/max) * 100)}%`
59
+ */
60
+ labelFormatter?: (value: number, max: number) => string;
61
+ /**
62
+ * Component prefix for class names
63
+ * @default 'mtrl'
64
+ */
65
+ prefix?: string;
66
+ /**
67
+ * Component name used in class generation
68
+ * @default 'progress'
69
+ */
70
+ componentName?: string;
71
+ }
72
+ /**
73
+ * Progress component interface
74
+ * @category Components
75
+ */
76
+ export interface ProgressComponent {
77
+ /** The component's root DOM element */
78
+ element: HTMLElement;
79
+ /** The track element (background) */
80
+ trackElement: HTMLElement;
81
+ /** The indicator element (filled part) */
82
+ indicatorElement: HTMLElement;
83
+ /** The buffer element for linear variant (pre-loaded state) */
84
+ bufferElement?: HTMLElement;
85
+ /** The label element if showLabel is enabled */
86
+ labelElement?: HTMLElement;
87
+ /**
88
+ * Gets a class name with the component's prefix
89
+ * @param name - Base class name
90
+ * @returns Prefixed class name
91
+ */
92
+ getClass: (name: string) => string;
93
+ /**
94
+ * Sets the current progress value
95
+ * @param value - Progress value (between 0 and max)
96
+ * @returns The progress component for chaining
97
+ */
98
+ setValue: (value: number) => ProgressComponent;
99
+ /**
100
+ * Gets the current progress value
101
+ * @returns Current progress value
102
+ */
103
+ getValue: () => number;
104
+ /**
105
+ * Sets the buffer value (for linear variant with buffer indicators)
106
+ * @param value - Buffer value (between 0 and max)
107
+ * @returns The progress component for chaining
108
+ */
109
+ setBuffer: (value: number) => ProgressComponent;
110
+ /**
111
+ * Gets the current buffer value
112
+ * @returns Current buffer value
113
+ */
114
+ getBuffer: () => number;
115
+ /**
116
+ * Enables the progress component
117
+ * @returns The progress component for chaining
118
+ */
119
+ enable: () => ProgressComponent;
120
+ /**
121
+ * Disables the progress component
122
+ * @returns The progress component for chaining
123
+ */
124
+ disable: () => ProgressComponent;
125
+ /**
126
+ * Checks if the component is disabled
127
+ * @returns Whether the component is disabled
128
+ */
129
+ isDisabled: () => boolean;
130
+ /**
131
+ * Shows the label element
132
+ * @returns The progress component for chaining
133
+ */
134
+ showLabel: () => ProgressComponent;
135
+ /**
136
+ * Hides the label element
137
+ * @returns The progress component for chaining
138
+ */
139
+ hideLabel: () => ProgressComponent;
140
+ /**
141
+ * Sets a custom formatter for the label
142
+ * @param formatter - Function that formats the label text
143
+ * @returns The progress component for chaining
144
+ */
145
+ setLabelFormatter: (formatter: (value: number, max: number) => string) => ProgressComponent;
146
+ /**
147
+ * Sets the indeterminate state
148
+ * @param indeterminate - Whether progress is indeterminate
149
+ * @returns The progress component for chaining
150
+ */
151
+ setIndeterminate: (indeterminate: boolean) => ProgressComponent;
152
+ /**
153
+ * Checks if the component is in indeterminate state
154
+ * @returns Whether the component is indeterminate
155
+ */
156
+ isIndeterminate: () => boolean;
157
+ /**
158
+ * Adds an event listener to the progress
159
+ * @param event - Event name ('change', 'complete')
160
+ * @param handler - Event handler function
161
+ * @returns The progress component for chaining
162
+ */
163
+ on: (event: string, handler: Function) => ProgressComponent;
164
+ /**
165
+ * Removes an event listener from the progress
166
+ * @param event - Event name
167
+ * @param handler - Event handler function
168
+ * @returns The progress component for chaining
169
+ */
170
+ off: (event: string, handler: Function) => ProgressComponent;
171
+ /**
172
+ * Destroys the progress component and cleans up resources
173
+ */
174
+ destroy: () => void;
175
+ /**
176
+ * Adds CSS classes to the progress element
177
+ * @param classes - One or more class names to add
178
+ * @returns The progress component for chaining
179
+ */
180
+ addClass: (...classes: string[]) => ProgressComponent;
181
+ /**
182
+ * API for managing disabled state
183
+ */
184
+ disabled: {
185
+ /** Enables the progress */
186
+ enable: () => void;
187
+ /** Disables the progress */
188
+ disable: () => void;
189
+ /** Checks if the progress is disabled */
190
+ isDisabled: () => boolean;
191
+ };
192
+ /**
193
+ * API for managing component lifecycle
194
+ */
195
+ lifecycle: {
196
+ /** Destroys the component and cleans up resources */
197
+ destroy: () => void;
198
+ };
199
+ }
@@ -0,0 +1,37 @@
1
+ import { RadiosComponent } from './types';
2
+ interface ApiOptions {
3
+ disabled: {
4
+ enable: () => void;
5
+ disable: () => void;
6
+ };
7
+ lifecycle: {
8
+ destroy: () => void;
9
+ };
10
+ }
11
+ interface ComponentWithRadio {
12
+ element: HTMLElement;
13
+ radios: any[];
14
+ getValue: () => string;
15
+ setValue: (value: string) => any;
16
+ getSelected: () => any;
17
+ addOption: (option: any) => any;
18
+ removeOption: (value: string) => any;
19
+ enable: () => any;
20
+ disable: () => any;
21
+ enableOption: (value: string) => any;
22
+ disableOption: (value: string) => any;
23
+ getClass: (name: string) => string;
24
+ events: {
25
+ on: (event: string, handler: Function) => void;
26
+ off: (event: string, handler: Function) => void;
27
+ emit?: (event: string, data: any) => void;
28
+ };
29
+ }
30
+ /**
31
+ * Enhances a radios component with API methods
32
+ * @param {ApiOptions} options - API configuration options
33
+ * @returns {Function} Higher-order function that adds API methods to component
34
+ * @internal This is an internal utility for the Radios component
35
+ */
36
+ export declare const withAPI: ({ disabled, lifecycle }: ApiOptions) => (component: ComponentWithRadio) => RadiosComponent;
37
+ export {};
@@ -0,0 +1,42 @@
1
+ import { RadiosConfig } from './types';
2
+ /**
3
+ * Default configuration for the Radios component
4
+ */
5
+ export declare const defaultConfig: RadiosConfig;
6
+ /**
7
+ * Creates the base configuration for Radios component
8
+ * @param {RadiosConfig} config - User provided configuration
9
+ * @returns {RadiosConfig} Complete configuration with defaults applied
10
+ */
11
+ export declare const createBaseConfig: (config: RadiosConfig) => RadiosConfig;
12
+ /**
13
+ * Generates element configuration for the Radios container
14
+ * @param {RadiosConfig} config - Radios configuration
15
+ * @returns {Object} Element configuration object for withElement
16
+ */
17
+ export declare const getElementConfig: (config: RadiosConfig) => {
18
+ tag: string;
19
+ componentName: string;
20
+ attrs: Record<string, any>;
21
+ className: string[];
22
+ rawClass: string | string[];
23
+ html: string;
24
+ text: string;
25
+ forwardEvents: Record<string, boolean | ((component: any, event: Event) => boolean)>;
26
+ interactive: boolean;
27
+ };
28
+ /**
29
+ * Creates API configuration for the Radios component
30
+ * @param {Object} comp - Component with disabled and lifecycle features
31
+ * @returns {Object} API configuration object
32
+ */
33
+ export declare const getApiConfig: (comp: any) => {
34
+ disabled: {
35
+ enable: () => any;
36
+ disable: () => any;
37
+ };
38
+ lifecycle: {
39
+ destroy: () => any;
40
+ };
41
+ };
42
+ export default defaultConfig;
@@ -0,0 +1,114 @@
1
+ /**
2
+ * Radio states for styling and behavior
3
+ */
4
+ export declare const RADIO_STATES: {
5
+ /** Radio is selected */
6
+ readonly CHECKED: "checked";
7
+ /** Radio is not selected */
8
+ readonly UNCHECKED: "unchecked";
9
+ /** Radio is disabled */
10
+ readonly DISABLED: "disabled";
11
+ /** Radio has keyboard focus */
12
+ readonly FOCUSED: "focused";
13
+ };
14
+ /**
15
+ * Radio layout directions
16
+ */
17
+ export declare const RADIO_DIRECTIONS: {
18
+ /** Radios stacked vertically */
19
+ readonly VERTICAL: "vertical";
20
+ /** Radios arranged horizontally */
21
+ readonly HORIZONTAL: "horizontal";
22
+ };
23
+ /**
24
+ * Radio variants
25
+ */
26
+ export declare const RADIO_VARIANTS: {
27
+ /** Standard radio button */
28
+ readonly STANDARD: "standard";
29
+ /** Filled radio button */
30
+ readonly FILLED: "filled";
31
+ /** Outlined radio button */
32
+ readonly OUTLINED: "outlined";
33
+ };
34
+ /**
35
+ * Radio label positions
36
+ */
37
+ export declare const RADIO_LABEL_POSITIONS: {
38
+ /** Label to the right of the radio (default) */
39
+ readonly RIGHT: "right";
40
+ /** Label to the left of the radio */
41
+ readonly LEFT: "left";
42
+ };
43
+ /**
44
+ * Radio size options
45
+ */
46
+ export declare const RADIO_SIZES: {
47
+ /** Small radio button */
48
+ readonly SMALL: "small";
49
+ /** Standard radio button */
50
+ readonly MEDIUM: "medium";
51
+ /** Large radio button */
52
+ readonly LARGE: "large";
53
+ };
54
+ /**
55
+ * Radio events
56
+ */
57
+ export declare const RADIO_EVENTS: {
58
+ /** Fired when a radio button is selected */
59
+ readonly CHANGE: "change";
60
+ /** Fired when a radio is focused */
61
+ readonly FOCUS: "focus";
62
+ /** Fired when a radio loses focus */
63
+ readonly BLUR: "blur";
64
+ };
65
+ /**
66
+ * Default configuration values
67
+ */
68
+ export declare const RADIO_DEFAULTS: {
69
+ /** Default radio variant */
70
+ readonly VARIANT: "standard";
71
+ /** Default radio direction */
72
+ readonly DIRECTION: "vertical";
73
+ /** Default label position */
74
+ readonly LABEL_POSITION: "right";
75
+ /** Default radio size */
76
+ readonly SIZE: "medium";
77
+ };
78
+ /**
79
+ * CSS classes for radio elements
80
+ */
81
+ export declare const RADIO_CLASSES: {
82
+ /** Container for radio group */
83
+ readonly GROUP: "radio-group";
84
+ /** Individual radio button */
85
+ readonly RADIO: "radio";
86
+ /** Radio input element */
87
+ readonly INPUT: "radio__input";
88
+ /** Radio label */
89
+ readonly LABEL: "radio__label";
90
+ /** Radio control (the circular part) */
91
+ readonly CONTROL: "radio__control";
92
+ /** The inner dot of the radio */
93
+ readonly DOT: "radio__dot";
94
+ /** Radio focus ring */
95
+ readonly FOCUS_RING: "radio__focus-ring";
96
+ /** Radio ripple effect */
97
+ readonly RIPPLE: "radio__ripple";
98
+ /** Checked state */
99
+ readonly CHECKED: "radio--checked";
100
+ /** Disabled state */
101
+ readonly DISABLED: "radio--disabled";
102
+ /** Focus state */
103
+ readonly FOCUSED: "radio--focused";
104
+ /** Label right position */
105
+ readonly LABEL_RIGHT: "radio--label-right";
106
+ /** Label left position */
107
+ readonly LABEL_LEFT: "radio--label-left";
108
+ /** Small size */
109
+ readonly SMALL: "radio--small";
110
+ /** Medium size */
111
+ readonly MEDIUM: "radio--medium";
112
+ /** Large size */
113
+ readonly LARGE: "radio--large";
114
+ };
@@ -0,0 +1,3 @@
1
+ export { default } from './radios';
2
+ export { RadiosConfig, RadiosComponent, RadioOptionConfig } from './types';
3
+ export { RADIO_STATES, RADIO_DIRECTIONS, RADIO_VARIANTS, RADIO_LABEL_POSITIONS, RADIO_SIZES, RADIO_EVENTS, RADIO_DEFAULTS, RADIO_CLASSES } from './constants';
@@ -0,0 +1,8 @@
1
+ import { RadiosConfig } from './types';
2
+ /**
3
+ * Creates a feature that adds radio functionality to a component
4
+ * @param {RadiosConfig} config - Configuration with radio options
5
+ * @returns {Function} Higher-order function that adds radio to component
6
+ */
7
+ export declare const withRadio: (config: RadiosConfig) => (component: any) => any;
8
+ export default withRadio;
@@ -0,0 +1,8 @@
1
+ import { RadiosConfig, RadiosComponent } from './types';
2
+ /**
3
+ * Creates a new Radios component
4
+ * @param {RadiosConfig} config - Radios configuration object
5
+ * @returns {RadiosComponent} Radios component instance
6
+ */
7
+ declare const createRadios: (config: RadiosConfig) => RadiosComponent;
8
+ export default createRadios;
@@ -0,0 +1,189 @@
1
+ /**
2
+ * Configuration for a radio option in the Radios component
3
+ * @category Components
4
+ */
5
+ export interface RadioOptionConfig {
6
+ /**
7
+ * Radio input value attribute
8
+ * @example 'option1'
9
+ */
10
+ value: string;
11
+ /**
12
+ * Radio label text content
13
+ * @example 'Option 1'
14
+ */
15
+ label: string;
16
+ /**
17
+ * Whether the radio is initially disabled
18
+ * @default false
19
+ */
20
+ disabled?: boolean;
21
+ /**
22
+ * Whether to position the label before the radio
23
+ * @default false
24
+ */
25
+ labelBefore?: boolean;
26
+ }
27
+ /**
28
+ * Configuration interface for the Radios component
29
+ * @category Components
30
+ */
31
+ export interface RadiosConfig {
32
+ /**
33
+ * Radio input name attribute used for grouping radios
34
+ * @example 'options'
35
+ */
36
+ name: string;
37
+ /**
38
+ * Array of radio option configurations
39
+ */
40
+ options?: RadioOptionConfig[];
41
+ /**
42
+ * Initial selected value
43
+ */
44
+ value?: string;
45
+ /**
46
+ * Layout direction for radio buttons
47
+ * @default 'vertical'
48
+ */
49
+ direction?: 'vertical' | 'horizontal';
50
+ /**
51
+ * Whether the entire group is initially disabled
52
+ * @default false
53
+ */
54
+ disabled?: boolean;
55
+ /**
56
+ * Whether to enable ripple effect
57
+ * @default true
58
+ */
59
+ ripple?: boolean;
60
+ /**
61
+ * Additional CSS classes to add to the radios component
62
+ */
63
+ class?: string;
64
+ /**
65
+ * Component prefix for class names
66
+ * @default 'mtrl'
67
+ */
68
+ prefix?: string;
69
+ /**
70
+ * Component name used in class generation
71
+ */
72
+ componentName?: string;
73
+ /**
74
+ * Ripple effect configuration
75
+ */
76
+ rippleConfig?: {
77
+ /** Duration of the ripple animation in milliseconds */
78
+ duration?: number;
79
+ /** Timing function for the ripple animation */
80
+ timing?: string;
81
+ /** Opacity values for ripple start and end [start, end] */
82
+ opacity?: [string, string];
83
+ };
84
+ }
85
+ /**
86
+ * Interface for a single radio in the Radios component
87
+ * @category Components
88
+ */
89
+ export interface RadioItem {
90
+ /** The radio container element */
91
+ element: HTMLElement;
92
+ /** The actual radio input element */
93
+ input: HTMLInputElement;
94
+ /** The label element */
95
+ label: HTMLLabelElement;
96
+ /** The radio option configuration */
97
+ config: RadioOptionConfig;
98
+ /** Destroys the radio and removes event listeners */
99
+ destroy: () => void;
100
+ }
101
+ /**
102
+ * Radios component interface
103
+ * @category Components
104
+ */
105
+ export interface RadiosComponent {
106
+ /** The radios container DOM element */
107
+ element: HTMLElement;
108
+ /** Array of radio items in the group */
109
+ radios: RadioItem[];
110
+ /** API for managing component lifecycle */
111
+ lifecycle: {
112
+ /** Destroys the component and cleans up resources */
113
+ destroy: () => void;
114
+ };
115
+ /**
116
+ * Gets a class name with the component's prefix
117
+ * @param name - Base class name
118
+ * @returns Prefixed class name
119
+ */
120
+ getClass: (name: string) => string;
121
+ /**
122
+ * Gets the radios component name
123
+ * @returns Selected radio value or empty string if none selected
124
+ */
125
+ getValue: () => string;
126
+ /**
127
+ * Sets the radios component value (selects a radio)
128
+ * @param value - Value to select
129
+ * @returns The radios component for chaining
130
+ */
131
+ setValue: (value: string) => RadiosComponent;
132
+ /**
133
+ * Gets the selected radio option's configuration
134
+ * @returns The selected radio option config or null
135
+ */
136
+ getSelected: () => RadioOptionConfig | null;
137
+ /**
138
+ * Adds a radio option to the radios component
139
+ * @param option - Radio option configuration
140
+ * @returns The radios component for chaining
141
+ */
142
+ addOption: (option: RadioOptionConfig) => RadiosComponent;
143
+ /**
144
+ * Removes a radio option from the radios component
145
+ * @param value - Value of the radio to remove
146
+ * @returns The radios component for chaining
147
+ */
148
+ removeOption: (value: string) => RadiosComponent;
149
+ /**
150
+ * Enables the radios component
151
+ * @returns The radios component for chaining
152
+ */
153
+ enable: () => RadiosComponent;
154
+ /**
155
+ * Disables the radios component
156
+ * @returns The radios component for chaining
157
+ */
158
+ disable: () => RadiosComponent;
159
+ /**
160
+ * Enables a specific radio option
161
+ * @param value - Value of the radio to enable
162
+ * @returns The radios component for chaining
163
+ */
164
+ enableOption: (value: string) => RadiosComponent;
165
+ /**
166
+ * Disables a specific radio option
167
+ * @param value - Value of the radio to disable
168
+ * @returns The radios component for chaining
169
+ */
170
+ disableOption: (value: string) => RadiosComponent;
171
+ /**
172
+ * Destroys the radios component and all radio items
173
+ */
174
+ destroy: () => void;
175
+ /**
176
+ * Adds an event listener to the radios component
177
+ * @param event - Event name ('change')
178
+ * @param handler - Event handler function
179
+ * @returns The radios component for chaining
180
+ */
181
+ on: (event: string, handler: Function) => RadiosComponent;
182
+ /**
183
+ * Removes an event listener from the radios component
184
+ * @param event - Event name
185
+ * @param handler - Event handler function
186
+ * @returns The radios component for chaining
187
+ */
188
+ off: (event: string, handler: Function) => RadiosComponent;
189
+ }
@@ -0,0 +1,55 @@
1
+ import { SearchComponent } from './types';
2
+ /**
3
+ * API options interface - structured by feature area
4
+ */
5
+ interface ApiOptions {
6
+ search: {
7
+ setValue: (value: string, triggerEvent?: boolean) => any;
8
+ getValue: () => string;
9
+ setPlaceholder: (text: string) => any;
10
+ getPlaceholder: () => string;
11
+ focus: () => any;
12
+ blur: () => any;
13
+ expand: () => any;
14
+ collapse: () => any;
15
+ clear: () => any;
16
+ submit: () => any;
17
+ setSuggestions: (suggestions: any[]) => any;
18
+ showSuggestions: (show: boolean) => any;
19
+ };
20
+ disabled: {
21
+ enable: () => void;
22
+ disable: () => void;
23
+ isDisabled: () => boolean;
24
+ };
25
+ appearance: {
26
+ setColor: (color: string) => void;
27
+ getColor: () => string;
28
+ setSize: (size: string) => void;
29
+ getSize: () => string;
30
+ };
31
+ icons: {
32
+ setLeadingIcon: (iconHtml: string) => void;
33
+ setTrailingIcon: (iconHtml: string) => void;
34
+ setTrailingIcon2: (iconHtml: string) => void;
35
+ setAvatar: (avatarHtml: string) => void;
36
+ showClearButton: (show: boolean) => void;
37
+ };
38
+ events: {
39
+ on: (event: string, handler: Function) => void;
40
+ off: (event: string, handler: Function) => void;
41
+ };
42
+ lifecycle: {
43
+ destroy: () => void;
44
+ };
45
+ }
46
+ /**
47
+ * Enhances a search component with a streamlined API
48
+ * @param {ApiOptions} options - API configuration options
49
+ * @returns {Function} Higher-order function that adds API methods to component
50
+ * @internal This is an internal utility for the Search component
51
+ */
52
+ export declare const withAPI: (options: ApiOptions) => (component: {
53
+ element: HTMLElement;
54
+ }) => SearchComponent;
55
+ export {};