@elaraai/east-ui 0.0.1-beta.5 → 0.0.1-beta.7

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 (414) hide show
  1. package/README.md +2 -2
  2. package/dist/src/buttons/button/index.d.ts +7 -5
  3. package/dist/src/buttons/button/index.d.ts.map +1 -1
  4. package/dist/src/buttons/button/index.js +9 -13
  5. package/dist/src/buttons/button/index.js.map +1 -1
  6. package/dist/src/buttons/button/types.d.ts +7 -1
  7. package/dist/src/buttons/button/types.d.ts.map +1 -1
  8. package/dist/src/buttons/button/types.js +3 -1
  9. package/dist/src/buttons/button/types.js.map +1 -1
  10. package/dist/src/buttons/icon-button/index.d.ts +13 -32
  11. package/dist/src/buttons/icon-button/index.d.ts.map +1 -1
  12. package/dist/src/buttons/icon-button/index.js +13 -33
  13. package/dist/src/buttons/icon-button/index.js.map +1 -1
  14. package/dist/src/buttons/icon-button/types.d.ts +45 -38
  15. package/dist/src/buttons/icon-button/types.d.ts.map +1 -1
  16. package/dist/src/buttons/icon-button/types.js +5 -2
  17. package/dist/src/buttons/icon-button/types.js.map +1 -1
  18. package/dist/src/charts/area/index.d.ts +16 -31
  19. package/dist/src/charts/area/index.d.ts.map +1 -1
  20. package/dist/src/charts/area/index.js +16 -31
  21. package/dist/src/charts/area/index.js.map +1 -1
  22. package/dist/src/charts/area/types.d.ts +22 -1
  23. package/dist/src/charts/area/types.d.ts.map +1 -1
  24. package/dist/src/charts/bar/index.d.ts +12 -39
  25. package/dist/src/charts/bar/index.d.ts.map +1 -1
  26. package/dist/src/charts/bar/index.js +12 -39
  27. package/dist/src/charts/bar/index.js.map +1 -1
  28. package/dist/src/charts/bar/types.d.ts +23 -1
  29. package/dist/src/charts/bar/types.d.ts.map +1 -1
  30. package/dist/src/charts/bar-list/index.d.ts +11 -14
  31. package/dist/src/charts/bar-list/index.d.ts.map +1 -1
  32. package/dist/src/charts/bar-list/index.js +11 -14
  33. package/dist/src/charts/bar-list/index.js.map +1 -1
  34. package/dist/src/charts/bar-list/types.d.ts +9 -0
  35. package/dist/src/charts/bar-list/types.d.ts.map +1 -1
  36. package/dist/src/charts/bar-segment/index.d.ts +10 -13
  37. package/dist/src/charts/bar-segment/index.d.ts.map +1 -1
  38. package/dist/src/charts/bar-segment/index.js +10 -13
  39. package/dist/src/charts/bar-segment/index.js.map +1 -1
  40. package/dist/src/charts/bar-segment/types.d.ts +7 -0
  41. package/dist/src/charts/bar-segment/types.d.ts.map +1 -1
  42. package/dist/src/charts/line/index.d.ts +18 -17
  43. package/dist/src/charts/line/index.d.ts.map +1 -1
  44. package/dist/src/charts/line/index.js +18 -17
  45. package/dist/src/charts/line/index.js.map +1 -1
  46. package/dist/src/charts/line/types.d.ts +18 -1
  47. package/dist/src/charts/line/types.d.ts.map +1 -1
  48. package/dist/src/charts/pie/index.d.ts +11 -18
  49. package/dist/src/charts/pie/index.d.ts.map +1 -1
  50. package/dist/src/charts/pie/index.js +11 -18
  51. package/dist/src/charts/pie/index.js.map +1 -1
  52. package/dist/src/charts/pie/types.d.ts +10 -0
  53. package/dist/src/charts/pie/types.d.ts.map +1 -1
  54. package/dist/src/charts/radar/index.d.ts +15 -16
  55. package/dist/src/charts/radar/index.d.ts.map +1 -1
  56. package/dist/src/charts/radar/index.js +15 -16
  57. package/dist/src/charts/radar/index.js.map +1 -1
  58. package/dist/src/charts/radar/types.d.ts +15 -1
  59. package/dist/src/charts/radar/types.d.ts.map +1 -1
  60. package/dist/src/charts/scatter/index.d.ts +12 -13
  61. package/dist/src/charts/scatter/index.d.ts.map +1 -1
  62. package/dist/src/charts/scatter/index.js +12 -13
  63. package/dist/src/charts/scatter/index.js.map +1 -1
  64. package/dist/src/charts/scatter/types.d.ts +14 -1
  65. package/dist/src/charts/scatter/types.d.ts.map +1 -1
  66. package/dist/src/collections/data-list/index.d.ts +19 -40
  67. package/dist/src/collections/data-list/index.d.ts.map +1 -1
  68. package/dist/src/collections/data-list/index.js +19 -40
  69. package/dist/src/collections/data-list/index.js.map +1 -1
  70. package/dist/src/collections/data-list/types.d.ts +10 -6
  71. package/dist/src/collections/data-list/types.d.ts.map +1 -1
  72. package/dist/src/collections/data-list/types.js +10 -6
  73. package/dist/src/collections/data-list/types.js.map +1 -1
  74. package/dist/src/collections/gantt/index.d.ts +4668 -968
  75. package/dist/src/collections/gantt/index.d.ts.map +1 -1
  76. package/dist/src/collections/gantt/index.js +133 -81
  77. package/dist/src/collections/gantt/index.js.map +1 -1
  78. package/dist/src/collections/gantt/types.d.ts +336 -56
  79. package/dist/src/collections/gantt/types.d.ts.map +1 -1
  80. package/dist/src/collections/gantt/types.js +142 -2
  81. package/dist/src/collections/gantt/types.js.map +1 -1
  82. package/dist/src/collections/table/index.d.ts +11350 -8517
  83. package/dist/src/collections/table/index.d.ts.map +1 -1
  84. package/dist/src/collections/table/index.js +64 -53
  85. package/dist/src/collections/table/index.js.map +1 -1
  86. package/dist/src/collections/table/types.d.ts +155 -17
  87. package/dist/src/collections/table/types.d.ts.map +1 -1
  88. package/dist/src/collections/table/types.js +78 -14
  89. package/dist/src/collections/table/types.js.map +1 -1
  90. package/dist/src/collections/tree-view/index.d.ts +42 -70
  91. package/dist/src/collections/tree-view/index.d.ts.map +1 -1
  92. package/dist/src/collections/tree-view/index.js +40 -71
  93. package/dist/src/collections/tree-view/index.js.map +1 -1
  94. package/dist/src/collections/tree-view/types.d.ts +24 -1
  95. package/dist/src/collections/tree-view/types.d.ts.map +1 -1
  96. package/dist/src/collections/tree-view/types.js +7 -1
  97. package/dist/src/collections/tree-view/types.js.map +1 -1
  98. package/dist/src/component.d.ts +688 -21
  99. package/dist/src/component.d.ts.map +1 -1
  100. package/dist/src/component.js +15 -23
  101. package/dist/src/component.js.map +1 -1
  102. package/dist/src/container/card/index.d.ts +1387 -64
  103. package/dist/src/container/card/index.d.ts.map +1 -1
  104. package/dist/src/container/card/index.js +11 -20
  105. package/dist/src/container/card/index.js.map +1 -1
  106. package/dist/src/container/card/types.d.ts +3 -4
  107. package/dist/src/container/card/types.d.ts.map +1 -1
  108. package/dist/src/container/card/types.js +3 -4
  109. package/dist/src/container/card/types.js.map +1 -1
  110. package/dist/src/disclosure/accordion/index.d.ts +2923 -277
  111. package/dist/src/disclosure/accordion/index.d.ts.map +1 -1
  112. package/dist/src/disclosure/accordion/index.js +35 -65
  113. package/dist/src/disclosure/accordion/index.js.map +1 -1
  114. package/dist/src/disclosure/accordion/types.d.ts +6 -1
  115. package/dist/src/disclosure/accordion/types.d.ts.map +1 -1
  116. package/dist/src/disclosure/accordion/types.js +3 -1
  117. package/dist/src/disclosure/accordion/types.js.map +1 -1
  118. package/dist/src/disclosure/carousel/index.d.ts +1391 -89
  119. package/dist/src/disclosure/carousel/index.d.ts.map +1 -1
  120. package/dist/src/disclosure/carousel/index.js +15 -46
  121. package/dist/src/disclosure/carousel/index.js.map +1 -1
  122. package/dist/src/disclosure/carousel/types.d.ts +9 -3
  123. package/dist/src/disclosure/carousel/types.d.ts.map +1 -1
  124. package/dist/src/disclosure/carousel/types.js +4 -1
  125. package/dist/src/disclosure/carousel/types.js.map +1 -1
  126. package/dist/src/disclosure/tabs/index.d.ts +2911 -283
  127. package/dist/src/disclosure/tabs/index.d.ts.map +1 -1
  128. package/dist/src/disclosure/tabs/index.js +18 -56
  129. package/dist/src/disclosure/tabs/index.js.map +1 -1
  130. package/dist/src/disclosure/tabs/types.d.ts +6 -1
  131. package/dist/src/disclosure/tabs/types.d.ts.map +1 -1
  132. package/dist/src/disclosure/tabs/types.js +3 -1
  133. package/dist/src/disclosure/tabs/types.js.map +1 -1
  134. package/dist/src/display/avatar/index.d.ts +8 -33
  135. package/dist/src/display/avatar/index.d.ts.map +1 -1
  136. package/dist/src/display/avatar/index.js +8 -33
  137. package/dist/src/display/avatar/index.js.map +1 -1
  138. package/dist/src/display/badge/index.d.ts +7 -22
  139. package/dist/src/display/badge/index.d.ts.map +1 -1
  140. package/dist/src/display/badge/index.js +7 -22
  141. package/dist/src/display/badge/index.js.map +1 -1
  142. package/dist/src/display/icon/index.d.ts +4 -36
  143. package/dist/src/display/icon/index.d.ts.map +1 -1
  144. package/dist/src/display/icon/index.js +4 -36
  145. package/dist/src/display/icon/index.js.map +1 -1
  146. package/dist/src/display/icon/types.d.ts +1 -0
  147. package/dist/src/display/icon/types.d.ts.map +1 -1
  148. package/dist/src/display/icon/types.js +1 -0
  149. package/dist/src/display/icon/types.js.map +1 -1
  150. package/dist/src/display/stat/index.d.ts +18 -40
  151. package/dist/src/display/stat/index.d.ts.map +1 -1
  152. package/dist/src/display/stat/index.js +18 -40
  153. package/dist/src/display/stat/index.js.map +1 -1
  154. package/dist/src/display/stat/types.d.ts +10 -6
  155. package/dist/src/display/stat/types.d.ts.map +1 -1
  156. package/dist/src/display/stat/types.js +10 -6
  157. package/dist/src/display/stat/types.js.map +1 -1
  158. package/dist/src/display/tag/index.d.ts +10 -30
  159. package/dist/src/display/tag/index.d.ts.map +1 -1
  160. package/dist/src/display/tag/index.js +13 -38
  161. package/dist/src/display/tag/index.js.map +1 -1
  162. package/dist/src/display/tag/types.d.ts +6 -1
  163. package/dist/src/display/tag/types.d.ts.map +1 -1
  164. package/dist/src/display/tag/types.js +3 -1
  165. package/dist/src/display/tag/types.js.map +1 -1
  166. package/dist/src/feedback/alert/index.d.ts +7 -39
  167. package/dist/src/feedback/alert/index.d.ts.map +1 -1
  168. package/dist/src/feedback/alert/index.js +7 -39
  169. package/dist/src/feedback/alert/index.js.map +1 -1
  170. package/dist/src/feedback/alert/types.d.ts +24 -13
  171. package/dist/src/feedback/alert/types.d.ts.map +1 -1
  172. package/dist/src/feedback/alert/types.js +24 -13
  173. package/dist/src/feedback/alert/types.js.map +1 -1
  174. package/dist/src/feedback/progress/index.d.ts +8 -42
  175. package/dist/src/feedback/progress/index.d.ts.map +1 -1
  176. package/dist/src/feedback/progress/index.js +8 -42
  177. package/dist/src/feedback/progress/index.js.map +1 -1
  178. package/dist/src/feedback/progress/types.d.ts +10 -5
  179. package/dist/src/feedback/progress/types.d.ts.map +1 -1
  180. package/dist/src/feedback/progress/types.js +10 -5
  181. package/dist/src/feedback/progress/types.js.map +1 -1
  182. package/dist/src/forms/checkbox/index.d.ts +13 -23
  183. package/dist/src/forms/checkbox/index.d.ts.map +1 -1
  184. package/dist/src/forms/checkbox/index.js +21 -39
  185. package/dist/src/forms/checkbox/index.js.map +1 -1
  186. package/dist/src/forms/checkbox/types.d.ts +20 -15
  187. package/dist/src/forms/checkbox/types.d.ts.map +1 -1
  188. package/dist/src/forms/checkbox/types.js +3 -1
  189. package/dist/src/forms/checkbox/types.js.map +1 -1
  190. package/dist/src/forms/field/index.d.ts +688 -7140
  191. package/dist/src/forms/field/index.d.ts.map +1 -1
  192. package/dist/src/forms/field/index.js +531 -90
  193. package/dist/src/forms/field/index.js.map +1 -1
  194. package/dist/src/forms/field/types.d.ts +730 -4
  195. package/dist/src/forms/field/types.d.ts.map +1 -1
  196. package/dist/src/forms/field/types.js +83 -1
  197. package/dist/src/forms/field/types.js.map +1 -1
  198. package/dist/src/forms/file-upload/index.d.ts +22 -52
  199. package/dist/src/forms/file-upload/index.d.ts.map +1 -1
  200. package/dist/src/forms/file-upload/index.js +15 -54
  201. package/dist/src/forms/file-upload/index.js.map +1 -1
  202. package/dist/src/forms/file-upload/types.d.ts +52 -1
  203. package/dist/src/forms/file-upload/types.d.ts.map +1 -1
  204. package/dist/src/forms/file-upload/types.js +32 -1
  205. package/dist/src/forms/file-upload/types.js.map +1 -1
  206. package/dist/src/forms/index.d.ts +1 -2
  207. package/dist/src/forms/index.d.ts.map +1 -1
  208. package/dist/src/forms/index.js +1 -2
  209. package/dist/src/forms/index.js.map +1 -1
  210. package/dist/src/forms/input/index.d.ts +70 -8
  211. package/dist/src/forms/input/index.d.ts.map +1 -1
  212. package/dist/src/forms/input/index.js +94 -93
  213. package/dist/src/forms/input/index.js.map +1 -1
  214. package/dist/src/forms/input/types.d.ts +203 -99
  215. package/dist/src/forms/input/types.d.ts.map +1 -1
  216. package/dist/src/forms/input/types.js +49 -26
  217. package/dist/src/forms/input/types.js.map +1 -1
  218. package/dist/src/forms/select/index.d.ts +22 -15
  219. package/dist/src/forms/select/index.d.ts.map +1 -1
  220. package/dist/src/forms/select/index.js +33 -34
  221. package/dist/src/forms/select/index.js.map +1 -1
  222. package/dist/src/forms/select/types.d.ts +44 -5
  223. package/dist/src/forms/select/types.d.ts.map +1 -1
  224. package/dist/src/forms/select/types.js +7 -1
  225. package/dist/src/forms/select/types.js.map +1 -1
  226. package/dist/src/forms/slider/index.d.ts +15 -31
  227. package/dist/src/forms/slider/index.d.ts.map +1 -1
  228. package/dist/src/forms/slider/index.js +26 -50
  229. package/dist/src/forms/slider/index.js.map +1 -1
  230. package/dist/src/forms/slider/types.d.ts +19 -7
  231. package/dist/src/forms/slider/types.d.ts.map +1 -1
  232. package/dist/src/forms/slider/types.js +13 -7
  233. package/dist/src/forms/slider/types.js.map +1 -1
  234. package/dist/src/forms/switch/index.d.ts +26 -23
  235. package/dist/src/forms/switch/index.d.ts.map +1 -1
  236. package/dist/src/forms/switch/index.js +33 -38
  237. package/dist/src/forms/switch/index.js.map +1 -1
  238. package/dist/src/forms/switch/types.d.ts +20 -15
  239. package/dist/src/forms/switch/types.d.ts.map +1 -1
  240. package/dist/src/forms/switch/types.js +3 -1
  241. package/dist/src/forms/switch/types.js.map +1 -1
  242. package/dist/src/forms/tags-input/index.d.ts +20 -50
  243. package/dist/src/forms/tags-input/index.d.ts.map +1 -1
  244. package/dist/src/forms/tags-input/index.js +24 -52
  245. package/dist/src/forms/tags-input/index.js.map +1 -1
  246. package/dist/src/forms/tags-input/types.d.ts +19 -1
  247. package/dist/src/forms/tags-input/types.d.ts.map +1 -1
  248. package/dist/src/forms/tags-input/types.js +10 -1
  249. package/dist/src/forms/tags-input/types.js.map +1 -1
  250. package/dist/src/forms/textarea/index.d.ts +20 -47
  251. package/dist/src/forms/textarea/index.d.ts.map +1 -1
  252. package/dist/src/forms/textarea/index.js +24 -49
  253. package/dist/src/forms/textarea/index.js.map +1 -1
  254. package/dist/src/forms/textarea/types.d.ts +25 -4
  255. package/dist/src/forms/textarea/types.d.ts.map +1 -1
  256. package/dist/src/forms/textarea/types.js +13 -4
  257. package/dist/src/forms/textarea/types.js.map +1 -1
  258. package/dist/src/index.d.ts +7 -3
  259. package/dist/src/index.d.ts.map +1 -1
  260. package/dist/src/index.js +9 -4
  261. package/dist/src/index.js.map +1 -1
  262. package/dist/src/internal.d.ts +0 -1
  263. package/dist/src/internal.d.ts.map +1 -1
  264. package/dist/src/internal.js +0 -1
  265. package/dist/src/internal.js.map +1 -1
  266. package/dist/src/layout/box/index.d.ts +1463 -71
  267. package/dist/src/layout/box/index.d.ts.map +1 -1
  268. package/dist/src/layout/box/index.js +48 -32
  269. package/dist/src/layout/box/index.js.map +1 -1
  270. package/dist/src/layout/box/types.d.ts +52 -2
  271. package/dist/src/layout/box/types.d.ts.map +1 -1
  272. package/dist/src/layout/box/types.js +15 -1
  273. package/dist/src/layout/box/types.js.map +1 -1
  274. package/dist/src/layout/flex/index.d.ts +8915 -0
  275. package/dist/src/layout/flex/index.d.ts.map +1 -0
  276. package/dist/src/layout/flex/index.js +291 -0
  277. package/dist/src/layout/flex/index.js.map +1 -0
  278. package/dist/src/layout/flex/types.d.ts +176 -0
  279. package/dist/src/layout/flex/types.d.ts.map +1 -0
  280. package/dist/src/layout/flex/types.js +56 -0
  281. package/dist/src/layout/flex/types.js.map +1 -0
  282. package/dist/src/layout/grid/index.d.ts +2907 -268
  283. package/dist/src/layout/grid/index.d.ts.map +1 -1
  284. package/dist/src/layout/grid/index.js +12 -37
  285. package/dist/src/layout/grid/index.js.map +1 -1
  286. package/dist/src/layout/grid/types.d.ts +11 -3
  287. package/dist/src/layout/grid/types.d.ts.map +1 -1
  288. package/dist/src/layout/grid/types.js +11 -3
  289. package/dist/src/layout/grid/types.js.map +1 -1
  290. package/dist/src/layout/index.d.ts +1 -0
  291. package/dist/src/layout/index.d.ts.map +1 -1
  292. package/dist/src/layout/index.js +1 -0
  293. package/dist/src/layout/index.js.map +1 -1
  294. package/dist/src/layout/separator/index.d.ts +7 -19
  295. package/dist/src/layout/separator/index.d.ts.map +1 -1
  296. package/dist/src/layout/separator/index.js +7 -19
  297. package/dist/src/layout/separator/index.js.map +1 -1
  298. package/dist/src/layout/splitter/index.d.ts +2948 -298
  299. package/dist/src/layout/splitter/index.d.ts.map +1 -1
  300. package/dist/src/layout/splitter/index.js +41 -74
  301. package/dist/src/layout/splitter/index.js.map +1 -1
  302. package/dist/src/layout/splitter/types.d.ts +31 -3
  303. package/dist/src/layout/splitter/types.d.ts.map +1 -1
  304. package/dist/src/layout/splitter/types.js +15 -1
  305. package/dist/src/layout/splitter/types.js.map +1 -1
  306. package/dist/src/layout/stack/index.d.ts +1469 -61
  307. package/dist/src/layout/stack/index.d.ts.map +1 -1
  308. package/dist/src/layout/stack/index.js +54 -22
  309. package/dist/src/layout/stack/index.js.map +1 -1
  310. package/dist/src/layout/stack/types.d.ts +52 -2
  311. package/dist/src/layout/stack/types.d.ts.map +1 -1
  312. package/dist/src/layout/stack/types.js +15 -1
  313. package/dist/src/layout/stack/types.js.map +1 -1
  314. package/dist/src/overlays/action-bar/index.d.ts +24 -43
  315. package/dist/src/overlays/action-bar/index.d.ts.map +1 -1
  316. package/dist/src/overlays/action-bar/index.js +19 -41
  317. package/dist/src/overlays/action-bar/index.js.map +1 -1
  318. package/dist/src/overlays/action-bar/types.d.ts +23 -2
  319. package/dist/src/overlays/action-bar/types.d.ts.map +1 -1
  320. package/dist/src/overlays/action-bar/types.js +8 -2
  321. package/dist/src/overlays/action-bar/types.js.map +1 -1
  322. package/dist/src/overlays/dialog/index.d.ts +2769 -118
  323. package/dist/src/overlays/dialog/index.d.ts.map +1 -1
  324. package/dist/src/overlays/dialog/index.js +17 -35
  325. package/dist/src/overlays/dialog/index.js.map +1 -1
  326. package/dist/src/overlays/dialog/types.d.ts +42 -1
  327. package/dist/src/overlays/dialog/types.d.ts.map +1 -1
  328. package/dist/src/overlays/dialog/types.js +13 -1
  329. package/dist/src/overlays/dialog/types.js.map +1 -1
  330. package/dist/src/overlays/drawer/index.d.ts +2763 -117
  331. package/dist/src/overlays/drawer/index.d.ts.map +1 -1
  332. package/dist/src/overlays/drawer/index.js +14 -34
  333. package/dist/src/overlays/drawer/index.js.map +1 -1
  334. package/dist/src/overlays/drawer/types.d.ts +25 -1
  335. package/dist/src/overlays/drawer/types.d.ts.map +1 -1
  336. package/dist/src/overlays/drawer/types.js +7 -1
  337. package/dist/src/overlays/drawer/types.js.map +1 -1
  338. package/dist/src/overlays/hover-card/index.d.ts +2763 -122
  339. package/dist/src/overlays/hover-card/index.d.ts.map +1 -1
  340. package/dist/src/overlays/hover-card/index.js +16 -39
  341. package/dist/src/overlays/hover-card/index.js.map +1 -1
  342. package/dist/src/overlays/hover-card/types.d.ts +17 -1
  343. package/dist/src/overlays/hover-card/types.d.ts.map +1 -1
  344. package/dist/src/overlays/hover-card/types.js +4 -1
  345. package/dist/src/overlays/hover-card/types.js.map +1 -1
  346. package/dist/src/overlays/menu/index.d.ts +1415 -86
  347. package/dist/src/overlays/menu/index.d.ts.map +1 -1
  348. package/dist/src/overlays/menu/index.js +39 -42
  349. package/dist/src/overlays/menu/index.js.map +1 -1
  350. package/dist/src/overlays/menu/types.d.ts +13 -1
  351. package/dist/src/overlays/menu/types.d.ts.map +1 -1
  352. package/dist/src/overlays/menu/types.js +7 -3
  353. package/dist/src/overlays/menu/types.js.map +1 -1
  354. package/dist/src/overlays/popover/index.d.ts +2760 -120
  355. package/dist/src/overlays/popover/index.d.ts.map +1 -1
  356. package/dist/src/overlays/popover/index.js +13 -37
  357. package/dist/src/overlays/popover/index.js.map +1 -1
  358. package/dist/src/overlays/popover/types.d.ts +22 -1
  359. package/dist/src/overlays/popover/types.d.ts.map +1 -1
  360. package/dist/src/overlays/popover/types.js +4 -1
  361. package/dist/src/overlays/popover/types.js.map +1 -1
  362. package/dist/src/overlays/toggle-tip/index.d.ts +1387 -72
  363. package/dist/src/overlays/toggle-tip/index.d.ts.map +1 -1
  364. package/dist/src/overlays/toggle-tip/index.js +11 -29
  365. package/dist/src/overlays/toggle-tip/index.js.map +1 -1
  366. package/dist/src/overlays/toggle-tip/types.d.ts +26 -13
  367. package/dist/src/overlays/toggle-tip/types.d.ts.map +1 -1
  368. package/dist/src/overlays/toggle-tip/types.js +4 -1
  369. package/dist/src/overlays/toggle-tip/types.js.map +1 -1
  370. package/dist/src/overlays/tooltip/index.d.ts +1384 -78
  371. package/dist/src/overlays/tooltip/index.d.ts.map +1 -1
  372. package/dist/src/overlays/tooltip/index.js +8 -34
  373. package/dist/src/overlays/tooltip/index.js.map +1 -1
  374. package/dist/src/overlays/tooltip/types.d.ts +12 -3
  375. package/dist/src/overlays/tooltip/types.d.ts.map +1 -1
  376. package/dist/src/overlays/tooltip/types.js +12 -3
  377. package/dist/src/overlays/tooltip/types.js.map +1 -1
  378. package/dist/src/platform/index.d.ts +217 -1
  379. package/dist/src/platform/index.d.ts.map +1 -1
  380. package/dist/src/platform/index.js +222 -1
  381. package/dist/src/platform/index.js.map +1 -1
  382. package/dist/src/platform/state.d.ts +170 -69
  383. package/dist/src/platform/state.d.ts.map +1 -1
  384. package/dist/src/platform/state.js +252 -67
  385. package/dist/src/platform/state.js.map +1 -1
  386. package/dist/src/platform/store.d.ts +172 -0
  387. package/dist/src/platform/store.d.ts.map +1 -0
  388. package/dist/src/platform/store.js +246 -0
  389. package/dist/src/platform/store.js.map +1 -0
  390. package/dist/src/reactive/index.d.ts +69 -0
  391. package/dist/src/reactive/index.d.ts.map +1 -0
  392. package/dist/src/reactive/index.js +93 -0
  393. package/dist/src/reactive/index.js.map +1 -0
  394. package/dist/src/typography/code-block/index.d.ts +2 -1
  395. package/dist/src/typography/code-block/index.d.ts.map +1 -1
  396. package/dist/src/typography/code-block/index.js +2 -1
  397. package/dist/src/typography/code-block/index.js.map +1 -1
  398. package/dist/src/typography/code-block/types.d.ts +4 -0
  399. package/dist/src/typography/code-block/types.d.ts.map +1 -1
  400. package/dist/src/typography/code-block/types.js +2 -0
  401. package/dist/src/typography/code-block/types.js.map +1 -1
  402. package/dist/src/typography/list/index.d.ts +2 -3
  403. package/dist/src/typography/list/index.d.ts.map +1 -1
  404. package/dist/src/typography/list/index.js +2 -3
  405. package/dist/src/typography/list/index.js.map +1 -1
  406. package/package.json +2 -2
  407. package/dist/src/forms/fieldset/index.d.ts +0 -112
  408. package/dist/src/forms/fieldset/index.d.ts.map +0 -1
  409. package/dist/src/forms/fieldset/index.js +0 -131
  410. package/dist/src/forms/fieldset/index.js.map +0 -1
  411. package/dist/src/forms/fieldset/types.d.ts +0 -53
  412. package/dist/src/forms/fieldset/types.d.ts.map +0 -1
  413. package/dist/src/forms/fieldset/types.js +0 -22
  414. package/dist/src/forms/fieldset/types.js.map +0 -1
package/README.md CHANGED
@@ -12,7 +12,7 @@
12
12
  - **📦 Layout Components** - Box, Stack, Grid, Splitter, Separator
13
13
  - **📝 Typography** - Text, Code, Heading, Link, Highlight, Mark, List, CodeBlock
14
14
  - **🔘 Buttons** - Button, IconButton with variants and states
15
- - **📋 Forms** - Input, Select, Checkbox, Switch, Slider, Textarea, TagsInput, FileUpload
15
+ - **📋 Forms** - Field, Input, Select, Checkbox, Switch, Slider, Textarea, TagsInput, FileUpload
16
16
  - **📊 Collections** - Table, Gantt, DataList, TreeView
17
17
  - **📈 Charts** - Area, Bar, Line, Pie, Radar, Scatter, Sparkline, BarList, BarSegment
18
18
  - **💬 Feedback** - Alert, Progress
@@ -57,7 +57,7 @@ const ir = MyComponent.toIR();
57
57
  | **Layout** | `Box`, `Stack`, `Grid`, `Splitter`, `Separator` | Container and layout components |
58
58
  | **Typography** | `Text`, `Code`, `Heading`, `Link`, `Highlight`, `Mark`, `List`, `CodeBlock` | Text and typography components |
59
59
  | **Buttons** | `Button`, `IconButton` | Interactive button components |
60
- | **Forms** | `Input`, `Select`, `Checkbox`, `Switch`, `Slider`, `Textarea`, `TagsInput`, `FileUpload`, `Field`, `Fieldset` | Form input components |
60
+ | **Forms** | `Input`, `Select`, `Checkbox`, `Switch`, `Slider`, `Textarea`, `TagsInput`, `FileUpload`, `Field` | Form input components |
61
61
  | **Collections** | `Table`, `Gantt`, `DataList`, `TreeView` | Data display components |
62
62
  | **Charts** | `Chart.Area`, `Chart.Bar`, `Chart.Line`, `Chart.Pie`, `Chart.Radar`, `Chart.Scatter`, `Chart.BarList`, `Chart.BarSegment`, `Sparkline` | Data visualization |
63
63
  | **Display** | `Badge`, `Tag`, `Avatar`, `Stat`, `Icon` | Visual display components |
@@ -2,7 +2,7 @@
2
2
  * Copyright (c) 2025 Elara AI Pty Ltd
3
3
  * Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
4
4
  */
5
- import { type ExprType, StringType, BooleanType, type SubtypeExprOrValue } from "@elaraai/east";
5
+ import { type ExprType, StringType, type SubtypeExprOrValue } from "@elaraai/east";
6
6
  import { UIComponentType } from "../../component.js";
7
7
  import { type ButtonStyle } from "./types.js";
8
8
  export { ButtonType, ButtonStyleType, ButtonVariantType, type ButtonStyle, type ButtonVariantLiteral, } from "./types.js";
@@ -124,8 +124,9 @@ export declare const Button: {
124
124
  md: import("@elaraai/east").NullType;
125
125
  lg: import("@elaraai/east").NullType;
126
126
  }>>;
127
- loading: import("@elaraai/east").OptionType<BooleanType>;
128
- disabled: import("@elaraai/east").OptionType<BooleanType>;
127
+ loading: import("@elaraai/east").OptionType<import("@elaraai/east").BooleanType>;
128
+ disabled: import("@elaraai/east").OptionType<import("@elaraai/east").BooleanType>;
129
+ onClick: import("@elaraai/east").OptionType<import("@elaraai/east").FunctionType<[], import("@elaraai/east").NullType>>;
129
130
  }>>;
130
131
  }>;
131
132
  /**
@@ -165,8 +166,9 @@ export declare const Button: {
165
166
  md: import("@elaraai/east").NullType;
166
167
  lg: import("@elaraai/east").NullType;
167
168
  }>>;
168
- loading: import("@elaraai/east").OptionType<BooleanType>;
169
- disabled: import("@elaraai/east").OptionType<BooleanType>;
169
+ loading: import("@elaraai/east").OptionType<import("@elaraai/east").BooleanType>;
170
+ disabled: import("@elaraai/east").OptionType<import("@elaraai/east").BooleanType>;
171
+ onClick: import("@elaraai/east").OptionType<import("@elaraai/east").FunctionType<[], import("@elaraai/east").NullType>>;
170
172
  }>;
171
173
  /**
172
174
  * Variant type for Button appearance styles.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/buttons/button/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACH,KAAK,QAAQ,EAEb,UAAU,EACV,WAAW,EAEX,KAAK,kBAAkB,EAC1B,MAAM,eAAe,CAAC;AAGvB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAIH,KAAK,WAAW,EACnB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACH,UAAU,EACV,eAAe,EACf,iBAAiB,EACjB,KAAK,WAAW,EAChB,KAAK,oBAAoB,GAC5B,MAAM,YAAY,CAAC;AAMpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,iBAAS,YAAY,CACjB,KAAK,EAAE,kBAAkB,CAAC,UAAU,CAAC,EACrC,KAAK,CAAC,EAAE,WAAW,GACpB,QAAQ,CAAC,eAAe,CAAC,CAkC3B;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,MAAM;IACf;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;;;QAGC;;;;;;;;WAQG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAEH;;;;;;;;;;;WAWG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAEH;;;;;;;;;;WAUG;;;;;;;;CAGD,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/buttons/button/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACH,KAAK,QAAQ,EAEb,UAAU,EAGV,KAAK,kBAAkB,EAC1B,MAAM,eAAe,CAAC;AAGvB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAIH,KAAK,WAAW,EACnB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACH,UAAU,EACV,eAAe,EACf,iBAAiB,EACjB,KAAK,WAAW,EAChB,KAAK,oBAAoB,GAC5B,MAAM,YAAY,CAAC;AAMpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,iBAAS,YAAY,CACjB,KAAK,EAAE,kBAAkB,CAAC,UAAU,CAAC,EACrC,KAAK,CAAC,EAAE,WAAW,GACpB,QAAQ,CAAC,eAAe,CAAC,CA8B3B;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,MAAM;IACf;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;;;QAGC;;;;;;;;WAQG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAEH;;;;;;;;;;;WAWG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAEH;;;;;;;;;;WAUG;;;;;;;;CAGD,CAAC"}
@@ -2,7 +2,7 @@
2
2
  * Copyright (c) 2025 Elara AI Pty Ltd
3
3
  * Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
4
4
  */
5
- import { East, StringType, BooleanType, variant, } from "@elaraai/east";
5
+ import { East, StringType, variant, some, none } from "@elaraai/east";
6
6
  import { SizeType, ColorSchemeType } from "../../style.js";
7
7
  import { UIComponentType } from "../../component.js";
8
8
  import { ButtonType, ButtonStyleType, ButtonVariantType, } from "./types.js";
@@ -63,20 +63,16 @@ function createButton(label, style) {
63
63
  ? East.value(variant(style.size, null), SizeType)
64
64
  : style.size)
65
65
  : undefined;
66
- const toBoolOption = (value) => {
67
- if (value === undefined)
68
- return variant("none", null);
69
- return variant("some", value);
70
- };
71
66
  return East.value(variant("Button", {
72
67
  label: label,
73
- style: style ? variant("some", East.value({
74
- variant: variantValue ? variant("some", variantValue) : variant("none", null),
75
- colorPalette: colorPaletteValue ? variant("some", colorPaletteValue) : variant("none", null),
76
- size: sizeValue ? variant("some", sizeValue) : variant("none", null),
77
- loading: toBoolOption(style.loading),
78
- disabled: toBoolOption(style.disabled),
79
- }, ButtonStyleType)) : variant("none", null),
68
+ style: style ? some(East.value({
69
+ variant: variantValue ? some(variantValue) : none,
70
+ colorPalette: colorPaletteValue ? some(colorPaletteValue) : none,
71
+ size: sizeValue ? some(sizeValue) : none,
72
+ loading: style.loading !== undefined ? some(style.loading) : none,
73
+ disabled: style.disabled !== undefined ? some(style.disabled) : none,
74
+ onClick: style.onClick ? some(style.onClick) : none,
75
+ }, ButtonStyleType)) : none,
80
76
  }), UIComponentType);
81
77
  }
82
78
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/buttons/button/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/buttons/button/index.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  * Copyright (c) 2025 Elara AI Pty Ltd
3
3
  * Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
4
4
  */
5
- import { type SubtypeExprOrValue, VariantType, OptionType, StructType, StringType, BooleanType, NullType } from "@elaraai/east";
5
+ import { type SubtypeExprOrValue, VariantType, OptionType, StructType, StringType, BooleanType, NullType, FunctionType } from "@elaraai/east";
6
6
  import { SizeType, ColorSchemeType } from "../../style.js";
7
7
  import type { SizeLiteral, ColorSchemeLiteral } from "../../style.js";
8
8
  /**
@@ -41,6 +41,7 @@ export type ButtonVariantLiteral = "solid" | "subtle" | "outline" | "ghost";
41
41
  * @property size - Size of the button (xs, sm, md, lg)
42
42
  * @property loading - Whether the button shows a loading state
43
43
  * @property disabled - Whether the button is disabled
44
+ * @property onClick - Callback triggered when the button is clicked
44
45
  */
45
46
  export declare const ButtonStyleType: StructType<{
46
47
  variant: OptionType<VariantType<{
@@ -69,6 +70,7 @@ export declare const ButtonStyleType: StructType<{
69
70
  }>>;
70
71
  loading: OptionType<BooleanType>;
71
72
  disabled: OptionType<BooleanType>;
73
+ onClick: OptionType<FunctionType<[], NullType>>;
72
74
  }>;
73
75
  /**
74
76
  * Type representing the Button style structure.
@@ -85,6 +87,7 @@ export type ButtonStyleType = typeof ButtonStyleType;
85
87
  * @property size - Size of the button
86
88
  * @property loading - Shows loading spinner when true
87
89
  * @property disabled - Disables button interaction when true
90
+ * @property onClick - Callback triggered when the button is clicked
88
91
  */
89
92
  export interface ButtonStyle {
90
93
  /** Button appearance variant (solid, subtle, outline, ghost) */
@@ -97,6 +100,8 @@ export interface ButtonStyle {
97
100
  loading?: SubtypeExprOrValue<BooleanType>;
98
101
  /** Disables button interaction when true */
99
102
  disabled?: SubtypeExprOrValue<BooleanType>;
103
+ /** Callback triggered when the button is clicked */
104
+ onClick?: SubtypeExprOrValue<FunctionType<[], NullType>>;
100
105
  }
101
106
  /**
102
107
  * The concrete East type for Button component data.
@@ -136,6 +141,7 @@ export declare const ButtonType: StructType<{
136
141
  }>>;
137
142
  loading: OptionType<BooleanType>;
138
143
  disabled: OptionType<BooleanType>;
144
+ onClick: OptionType<FunctionType<[], NullType>>;
139
145
  }>>;
140
146
  }>;
141
147
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/buttons/button/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACH,KAAK,kBAAkB,EACvB,WAAW,EACX,UAAU,EACV,UAAU,EACV,UAAU,EACV,WAAW,EACX,QAAQ,EACX,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAMtE;;;;;;;;;;GAUG;AACH,eAAO,MAAM,iBAAiB;;;;;EAK5B,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,OAAO,iBAAiB,CAAC;AAEzD;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,OAAO,CAAC;AAM5E;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;EAM1B,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,OAAO,eAAe,CAAC;AAErD;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,WAAW;IACxB,gEAAgE;IAChE,OAAO,CAAC,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,GAAG,oBAAoB,CAAC;IACvE,+BAA+B;IAC/B,YAAY,CAAC,EAAE,kBAAkB,CAAC,eAAe,CAAC,GAAG,kBAAkB,CAAC;IACxE,yBAAyB;IACzB,IAAI,CAAC,EAAE,kBAAkB,CAAC,QAAQ,CAAC,GAAG,WAAW,CAAC;IAClD,sCAAsC;IACtC,OAAO,CAAC,EAAE,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAC1C,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,kBAAkB,CAAC,WAAW,CAAC,CAAC;CAC9C;AAMD;;;;;;;;GAQG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGrB,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,OAAO,UAAU,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/buttons/button/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACH,KAAK,kBAAkB,EACvB,WAAW,EACX,UAAU,EACV,UAAU,EACV,UAAU,EACV,WAAW,EACX,QAAQ,EACR,YAAY,EACf,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAMtE;;;;;;;;;;GAUG;AACH,eAAO,MAAM,iBAAiB;;;;;EAK5B,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,OAAO,iBAAiB,CAAC;AAEzD;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,OAAO,CAAC;AAM5E;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAO1B,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,OAAO,eAAe,CAAC;AAErD;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,WAAW;IACxB,gEAAgE;IAChE,OAAO,CAAC,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,GAAG,oBAAoB,CAAC;IACvE,+BAA+B;IAC/B,YAAY,CAAC,EAAE,kBAAkB,CAAC,eAAe,CAAC,GAAG,kBAAkB,CAAC;IACxE,yBAAyB;IACzB,IAAI,CAAC,EAAE,kBAAkB,CAAC,QAAQ,CAAC,GAAG,WAAW,CAAC;IAClD,sCAAsC;IACtC,OAAO,CAAC,EAAE,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAC1C,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAC3C,oDAAoD;IACpD,OAAO,CAAC,EAAE,kBAAkB,CAAC,YAAY,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC;CAC5D;AAMD;;;;;;;;GAQG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGrB,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,OAAO,UAAU,CAAC"}
@@ -2,7 +2,7 @@
2
2
  * Copyright (c) 2025 Elara AI Pty Ltd
3
3
  * Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
4
4
  */
5
- import { VariantType, OptionType, StructType, StringType, BooleanType, NullType, } from "@elaraai/east";
5
+ import { VariantType, OptionType, StructType, StringType, BooleanType, NullType, FunctionType, } from "@elaraai/east";
6
6
  import { SizeType, ColorSchemeType } from "../../style.js";
7
7
  // ============================================================================
8
8
  // Button Variant Type
@@ -38,6 +38,7 @@ export const ButtonVariantType = VariantType({
38
38
  * @property size - Size of the button (xs, sm, md, lg)
39
39
  * @property loading - Whether the button shows a loading state
40
40
  * @property disabled - Whether the button is disabled
41
+ * @property onClick - Callback triggered when the button is clicked
41
42
  */
42
43
  export const ButtonStyleType = StructType({
43
44
  variant: OptionType(ButtonVariantType),
@@ -45,6 +46,7 @@ export const ButtonStyleType = StructType({
45
46
  size: OptionType(SizeType),
46
47
  loading: OptionType(BooleanType),
47
48
  disabled: OptionType(BooleanType),
49
+ onClick: OptionType(FunctionType([], NullType)),
48
50
  });
49
51
  // ============================================================================
50
52
  // Button Type
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/buttons/button/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAEH,WAAW,EACX,UAAU,EACV,UAAU,EACV,UAAU,EACV,WAAW,EACX,QAAQ,GACX,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAG3D,+EAA+E;AAC/E,sBAAsB;AACtB,+EAA+E;AAE/E;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,WAAW,CAAC;IACzC,KAAK,EAAE,QAAQ;IACf,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,QAAQ;IACjB,KAAK,EAAE,QAAQ;CAClB,CAAC,CAAC;AAYH,+EAA+E;AAC/E,oBAAoB;AACpB,+EAA+E;AAE/E;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,UAAU,CAAC;IACtC,OAAO,EAAE,UAAU,CAAC,iBAAiB,CAAC;IACtC,YAAY,EAAE,UAAU,CAAC,eAAe,CAAC;IACzC,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC;IAC1B,OAAO,EAAE,UAAU,CAAC,WAAW,CAAC;IAChC,QAAQ,EAAE,UAAU,CAAC,WAAW,CAAC;CACpC,CAAC,CAAC;AAgCH,+EAA+E;AAC/E,cAAc;AACd,+EAA+E;AAE/E;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAAC;IACjC,KAAK,EAAE,UAAU;IACjB,KAAK,EAAE,UAAU,CAAC,eAAe,CAAC;CACrC,CAAC,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/buttons/button/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAEH,WAAW,EACX,UAAU,EACV,UAAU,EACV,UAAU,EACV,WAAW,EACX,QAAQ,EACR,YAAY,GACf,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAG3D,+EAA+E;AAC/E,sBAAsB;AACtB,+EAA+E;AAE/E;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,WAAW,CAAC;IACzC,KAAK,EAAE,QAAQ;IACf,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,QAAQ;IACjB,KAAK,EAAE,QAAQ;CAClB,CAAC,CAAC;AAYH,+EAA+E;AAC/E,oBAAoB;AACpB,+EAA+E;AAE/E;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,UAAU,CAAC;IACtC,OAAO,EAAE,UAAU,CAAC,iBAAiB,CAAC;IACtC,YAAY,EAAE,UAAU,CAAC,eAAe,CAAC;IACzC,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC;IAC1B,OAAO,EAAE,UAAU,CAAC,WAAW,CAAC;IAChC,QAAQ,EAAE,UAAU,CAAC,WAAW,CAAC;IACjC,OAAO,EAAE,UAAU,CAAC,YAAY,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;CAClD,CAAC,CAAC;AAmCH,+EAA+E;AAC/E,cAAc;AACd,+EAA+E;AAE/E;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAAC;IACjC,KAAK,EAAE,UAAU;IACjB,KAAK,EAAE,UAAU,CAAC,eAAe,CAAC;CACrC,CAAC,CAAC"}
@@ -10,7 +10,8 @@ export { IconButtonStyleType, IconButtonType, type IconButtonStyle, } from "./ty
10
10
  /**
11
11
  * Creates an IconButton component with an icon and optional styling.
12
12
  *
13
- * @param icon - The icon name (Font Awesome icon name) or IconType expression
13
+ * @param prefix - The Font Awesome icon prefix (e.g., "fas", "far")
14
+ * @param name - The Font Awesome icon name (e.g., "xmark", "bars")
14
15
  * @param style - Optional styling configuration
15
16
  * @returns An East expression representing the icon button component
16
17
  *
@@ -20,26 +21,14 @@ export { IconButtonStyleType, IconButtonType, type IconButtonStyle, } from "./ty
20
21
  *
21
22
  * @example
22
23
  * ```ts
23
- * import { IconButton } from "@elaraai/east-ui";
24
+ * import { East } from "@elaraai/east";
25
+ * import { IconButton, UIComponentType } from "@elaraai/east-ui";
24
26
  *
25
- * // Simple icon button
26
- * const closeBtn = IconButton.Root("xmark");
27
- *
28
- * // Icon button with styling
29
- * const menuBtn = IconButton.Root("bars", {
30
- * variant: "ghost",
31
- * size: "lg",
32
- * });
33
- *
34
- * // Colored icon button
35
- * const deleteBtn = IconButton.Root("trash", {
36
- * variant: "solid",
37
- * colorPalette: "red",
38
- * });
39
- *
40
- * // Loading icon button
41
- * const refreshBtn = IconButton.Root("rotate", {
42
- * loading: true,
27
+ * const example = East.function([], UIComponentType, $ => {
28
+ * return IconButton.Root("fas", "xmark", {
29
+ * variant: "ghost",
30
+ * colorPalette: "red",
31
+ * });
43
32
  * });
44
33
  * ```
45
34
  */
@@ -48,18 +37,7 @@ declare function createIconButton(prefix: IconPrefix, name: IconName, style?: Ic
48
37
  * IconButton component for icon-only buttons.
49
38
  *
50
39
  * @remarks
51
- * Use `IconButton.Root(icon, style)` to create an icon button, or access `IconButton.Types` for East types.
52
- *
53
- * @example
54
- * ```ts
55
- * import { IconButton } from "@elaraai/east-ui";
56
- *
57
- * // Create an icon button
58
- * const btn = IconButton.Root("chevron-right", { variant: "ghost" });
59
- *
60
- * // Access the type
61
- * const styleType = IconButton.Types.Style;
62
- * ```
40
+ * Use `IconButton.Root(prefix, name, style)` to create an icon button, or access `IconButton.Types` for East types.
63
41
  */
64
42
  export declare const IconButton: {
65
43
  /**
@@ -133,6 +111,7 @@ export declare const IconButton: {
133
111
  }>>;
134
112
  loading: import("@elaraai/east").OptionType<import("@elaraai/east").BooleanType>;
135
113
  disabled: import("@elaraai/east").OptionType<import("@elaraai/east").BooleanType>;
114
+ onClick: import("@elaraai/east").OptionType<import("@elaraai/east").FunctionType<[], import("@elaraai/east").NullType>>;
136
115
  }>>;
137
116
  }>;
138
117
  /**
@@ -146,6 +125,7 @@ export declare const IconButton: {
146
125
  * @property size - Size of the button (xs, sm, md, lg)
147
126
  * @property loading - Whether the button shows a loading state
148
127
  * @property disabled - Whether the button is disabled
128
+ * @property onClick - Callback triggered when the button is clicked
149
129
  */
150
130
  readonly Style: import("@elaraai/east").StructType<{
151
131
  variant: import("@elaraai/east").OptionType<import("@elaraai/east").VariantType<{
@@ -174,6 +154,7 @@ export declare const IconButton: {
174
154
  }>>;
175
155
  loading: import("@elaraai/east").OptionType<import("@elaraai/east").BooleanType>;
176
156
  disabled: import("@elaraai/east").OptionType<import("@elaraai/east").BooleanType>;
157
+ onClick: import("@elaraai/east").OptionType<import("@elaraai/east").FunctionType<[], import("@elaraai/east").NullType>>;
177
158
  }>;
178
159
  /**
179
160
  * Variant type for Button appearance styles.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/buttons/icon-button/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACH,KAAK,QAAQ,EAChB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,EAIH,KAAK,eAAe,EACvB,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AAGlF,OAAO,EACH,mBAAmB,EACnB,cAAc,EACd,KAAK,eAAe,GACvB,MAAM,YAAY,CAAC;AAMpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,iBAAS,gBAAgB,CACrB,MAAM,EAAE,UAAU,EAClB,IAAI,EAAE,QAAQ,EACd,KAAK,CAAC,EAAE,eAAe,GACxB,QAAQ,CAAC,eAAe,CAAC,CAmC3B;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,UAAU;IACnB;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;;;QAGC;;;;;;;;;WASG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAEH;;;;;;;;;;;WAWG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAEH;;;;;;;;;;WAUG;;;;;;;;CAGD,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/buttons/icon-button/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACH,KAAK,QAAQ,EAChB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,EAIH,KAAK,eAAe,EACvB,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AAGlF,OAAO,EACH,mBAAmB,EACnB,cAAc,EACd,KAAK,eAAe,GACvB,MAAM,YAAY,CAAC;AAMpB;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,iBAAS,gBAAgB,CACrB,MAAM,EAAE,UAAU,EAClB,IAAI,EAAE,QAAQ,EACd,KAAK,CAAC,EAAE,eAAe,GACxB,QAAQ,CAAC,eAAe,CAAC,CAoC3B;AAED;;;;;GAKG;AACH,eAAO,MAAM,UAAU;IACnB;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;;;QAGC;;;;;;;;;WASG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAEH;;;;;;;;;;;;WAYG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAEH;;;;;;;;;;WAUG;;;;;;;;CAGD,CAAC"}
@@ -14,7 +14,8 @@ export { IconButtonStyleType, IconButtonType, } from "./types.js";
14
14
  /**
15
15
  * Creates an IconButton component with an icon and optional styling.
16
16
  *
17
- * @param icon - The icon name (Font Awesome icon name) or IconType expression
17
+ * @param prefix - The Font Awesome icon prefix (e.g., "fas", "far")
18
+ * @param name - The Font Awesome icon name (e.g., "xmark", "bars")
18
19
  * @param style - Optional styling configuration
19
20
  * @returns An East expression representing the icon button component
20
21
  *
@@ -24,26 +25,14 @@ export { IconButtonStyleType, IconButtonType, } from "./types.js";
24
25
  *
25
26
  * @example
26
27
  * ```ts
27
- * import { IconButton } from "@elaraai/east-ui";
28
+ * import { East } from "@elaraai/east";
29
+ * import { IconButton, UIComponentType } from "@elaraai/east-ui";
28
30
  *
29
- * // Simple icon button
30
- * const closeBtn = IconButton.Root("xmark");
31
- *
32
- * // Icon button with styling
33
- * const menuBtn = IconButton.Root("bars", {
34
- * variant: "ghost",
35
- * size: "lg",
36
- * });
37
- *
38
- * // Colored icon button
39
- * const deleteBtn = IconButton.Root("trash", {
40
- * variant: "solid",
41
- * colorPalette: "red",
42
- * });
43
- *
44
- * // Loading icon button
45
- * const refreshBtn = IconButton.Root("rotate", {
46
- * loading: true,
31
+ * const example = East.function([], UIComponentType, $ => {
32
+ * return IconButton.Root("fas", "xmark", {
33
+ * variant: "ghost",
34
+ * colorPalette: "red",
35
+ * });
47
36
  * });
48
37
  * ```
49
38
  */
@@ -64,7 +53,7 @@ function createIconButton(prefix, name, style) {
64
53
  : style.size)
65
54
  : undefined;
66
55
  const hasStyle = variantValue || colorPaletteValue || sizeValue ||
67
- style?.loading !== undefined || style?.disabled !== undefined;
56
+ style?.loading !== undefined || style?.disabled !== undefined || style?.onClick !== undefined;
68
57
  return East.value(variant("IconButton", {
69
58
  prefix: prefix,
70
59
  name: name,
@@ -75,6 +64,7 @@ function createIconButton(prefix, name, style) {
75
64
  size: sizeValue ? variant("some", sizeValue) : variant("none", null),
76
65
  loading: style?.loading !== undefined ? variant("some", style.loading) : variant("none", null),
77
66
  disabled: style?.disabled !== undefined ? variant("some", style.disabled) : variant("none", null),
67
+ onClick: style?.onClick !== undefined ? variant("some", style.onClick) : variant("none", null),
78
68
  }, IconButtonStyleType))
79
69
  : variant("none", null),
80
70
  }), UIComponentType);
@@ -83,18 +73,7 @@ function createIconButton(prefix, name, style) {
83
73
  * IconButton component for icon-only buttons.
84
74
  *
85
75
  * @remarks
86
- * Use `IconButton.Root(icon, style)` to create an icon button, or access `IconButton.Types` for East types.
87
- *
88
- * @example
89
- * ```ts
90
- * import { IconButton } from "@elaraai/east-ui";
91
- *
92
- * // Create an icon button
93
- * const btn = IconButton.Root("chevron-right", { variant: "ghost" });
94
- *
95
- * // Access the type
96
- * const styleType = IconButton.Types.Style;
97
- * ```
76
+ * Use `IconButton.Root(prefix, name, style)` to create an icon button, or access `IconButton.Types` for East types.
98
77
  */
99
78
  export const IconButton = {
100
79
  /**
@@ -150,6 +129,7 @@ export const IconButton = {
150
129
  * @property size - Size of the button (xs, sm, md, lg)
151
130
  * @property loading - Whether the button shows a loading state
152
131
  * @property disabled - Whether the button is disabled
132
+ * @property onClick - Callback triggered when the button is clicked
153
133
  */
154
134
  Style: IconButtonStyleType,
155
135
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/buttons/icon-button/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/buttons/icon-button/index.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  * Copyright (c) 2025 Elara AI Pty Ltd
3
3
  * Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
4
4
  */
5
- import { type SubtypeExprOrValue, OptionType, StructType, BooleanType, StringType } from "@elaraai/east";
5
+ import { type SubtypeExprOrValue, OptionType, StructType, BooleanType, StringType, FunctionType, NullType } from "@elaraai/east";
6
6
  import { SizeType, ColorSchemeType } from "../../style.js";
7
7
  import type { SizeLiteral, ColorSchemeLiteral } from "../../style.js";
8
8
  import { ButtonVariantType, type ButtonVariantLiteral } from "../button/types.js";
@@ -18,34 +18,36 @@ export { ButtonVariantType, type ButtonVariantLiteral } from "../button/types.js
18
18
  * @property size - Size of the button (xs, sm, md, lg)
19
19
  * @property loading - Whether the button shows a loading state
20
20
  * @property disabled - Whether the button is disabled
21
+ * @property onClick - Callback triggered when the button is clicked
21
22
  */
22
23
  export declare const IconButtonStyleType: StructType<{
23
24
  variant: OptionType<import("@elaraai/east").VariantType<{
24
- solid: import("@elaraai/east").NullType;
25
- subtle: import("@elaraai/east").NullType;
26
- outline: import("@elaraai/east").NullType;
27
- ghost: import("@elaraai/east").NullType;
25
+ solid: NullType;
26
+ subtle: NullType;
27
+ outline: NullType;
28
+ ghost: NullType;
28
29
  }>>;
29
30
  colorPalette: OptionType<import("@elaraai/east").VariantType<{
30
- gray: import("@elaraai/east").NullType;
31
- red: import("@elaraai/east").NullType;
32
- orange: import("@elaraai/east").NullType;
33
- yellow: import("@elaraai/east").NullType;
34
- green: import("@elaraai/east").NullType;
35
- teal: import("@elaraai/east").NullType;
36
- blue: import("@elaraai/east").NullType;
37
- cyan: import("@elaraai/east").NullType;
38
- purple: import("@elaraai/east").NullType;
39
- pink: import("@elaraai/east").NullType;
31
+ gray: NullType;
32
+ red: NullType;
33
+ orange: NullType;
34
+ yellow: NullType;
35
+ green: NullType;
36
+ teal: NullType;
37
+ blue: NullType;
38
+ cyan: NullType;
39
+ purple: NullType;
40
+ pink: NullType;
40
41
  }>>;
41
42
  size: OptionType<import("@elaraai/east").VariantType<{
42
- xs: import("@elaraai/east").NullType;
43
- sm: import("@elaraai/east").NullType;
44
- md: import("@elaraai/east").NullType;
45
- lg: import("@elaraai/east").NullType;
43
+ xs: NullType;
44
+ sm: NullType;
45
+ md: NullType;
46
+ lg: NullType;
46
47
  }>>;
47
48
  loading: OptionType<BooleanType>;
48
49
  disabled: OptionType<BooleanType>;
50
+ onClick: OptionType<FunctionType<[], NullType>>;
49
51
  }>;
50
52
  /**
51
53
  * Type representing the IconButton style structure.
@@ -62,6 +64,7 @@ export type IconButtonStyleType = typeof IconButtonStyleType;
62
64
  * @property size - Size of the button
63
65
  * @property loading - Shows loading spinner when true
64
66
  * @property disabled - Disables button interaction when true
67
+ * @property onClick - Callback triggered when the button is clicked
65
68
  */
66
69
  export interface IconButtonStyle {
67
70
  /** Button appearance variant (solid, subtle, outline, ghost) */
@@ -74,6 +77,8 @@ export interface IconButtonStyle {
74
77
  loading?: SubtypeExprOrValue<BooleanType>;
75
78
  /** Disables button interaction when true */
76
79
  disabled?: SubtypeExprOrValue<BooleanType>;
80
+ /** Callback triggered when the button is clicked */
81
+ onClick?: SubtypeExprOrValue<FunctionType<[], NullType>>;
77
82
  }
78
83
  /**
79
84
  * The concrete East type for IconButton component data.
@@ -81,7 +86,8 @@ export interface IconButtonStyle {
81
86
  * @remarks
82
87
  * This struct type represents the serializable data structure for an IconButton component.
83
88
  *
84
- * @property icon - The icon to display in the button
89
+ * @property prefix - The Font Awesome icon prefix
90
+ * @property name - The Font Awesome icon name
85
91
  * @property style - Optional styling configuration wrapped in OptionType
86
92
  */
87
93
  export declare const IconButtonType: StructType<{
@@ -89,31 +95,32 @@ export declare const IconButtonType: StructType<{
89
95
  name: StringType;
90
96
  style: OptionType<StructType<{
91
97
  variant: OptionType<import("@elaraai/east").VariantType<{
92
- solid: import("@elaraai/east").NullType;
93
- subtle: import("@elaraai/east").NullType;
94
- outline: import("@elaraai/east").NullType;
95
- ghost: import("@elaraai/east").NullType;
98
+ solid: NullType;
99
+ subtle: NullType;
100
+ outline: NullType;
101
+ ghost: NullType;
96
102
  }>>;
97
103
  colorPalette: OptionType<import("@elaraai/east").VariantType<{
98
- gray: import("@elaraai/east").NullType;
99
- red: import("@elaraai/east").NullType;
100
- orange: import("@elaraai/east").NullType;
101
- yellow: import("@elaraai/east").NullType;
102
- green: import("@elaraai/east").NullType;
103
- teal: import("@elaraai/east").NullType;
104
- blue: import("@elaraai/east").NullType;
105
- cyan: import("@elaraai/east").NullType;
106
- purple: import("@elaraai/east").NullType;
107
- pink: import("@elaraai/east").NullType;
104
+ gray: NullType;
105
+ red: NullType;
106
+ orange: NullType;
107
+ yellow: NullType;
108
+ green: NullType;
109
+ teal: NullType;
110
+ blue: NullType;
111
+ cyan: NullType;
112
+ purple: NullType;
113
+ pink: NullType;
108
114
  }>>;
109
115
  size: OptionType<import("@elaraai/east").VariantType<{
110
- xs: import("@elaraai/east").NullType;
111
- sm: import("@elaraai/east").NullType;
112
- md: import("@elaraai/east").NullType;
113
- lg: import("@elaraai/east").NullType;
116
+ xs: NullType;
117
+ sm: NullType;
118
+ md: NullType;
119
+ lg: NullType;
114
120
  }>>;
115
121
  loading: OptionType<BooleanType>;
116
122
  disabled: OptionType<BooleanType>;
123
+ onClick: OptionType<FunctionType<[], NullType>>;
117
124
  }>>;
118
125
  }>;
119
126
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/buttons/icon-button/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACH,KAAK,kBAAkB,EACvB,UAAU,EACV,UAAU,EACV,WAAW,EACX,UAAU,EACb,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,KAAK,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAGlF,OAAO,EAAE,iBAAiB,EAAE,KAAK,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAMlF;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;EAM9B,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,OAAO,mBAAmB,CAAC;AAE7D;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,eAAe;IAC5B,gEAAgE;IAChE,OAAO,CAAC,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,GAAG,oBAAoB,CAAC;IACvE,+BAA+B;IAC/B,YAAY,CAAC,EAAE,kBAAkB,CAAC,eAAe,CAAC,GAAG,kBAAkB,CAAC;IACxE,yBAAyB;IACzB,IAAI,CAAC,EAAE,kBAAkB,CAAC,QAAQ,CAAC,GAAG,WAAW,CAAC;IAClD,sCAAsC;IACtC,OAAO,CAAC,EAAE,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAC1C,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,kBAAkB,CAAC,WAAW,CAAC,CAAC;CAC9C;AAMD;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAIzB,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,OAAO,cAAc,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/buttons/icon-button/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACH,KAAK,kBAAkB,EACvB,UAAU,EACV,UAAU,EACV,WAAW,EACX,UAAU,EACV,YAAY,EACZ,QAAQ,EACX,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,KAAK,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAGlF,OAAO,EAAE,iBAAiB,EAAE,KAAK,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAMlF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAO9B,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,OAAO,mBAAmB,CAAC;AAE7D;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,eAAe;IAC5B,gEAAgE;IAChE,OAAO,CAAC,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,GAAG,oBAAoB,CAAC;IACvE,+BAA+B;IAC/B,YAAY,CAAC,EAAE,kBAAkB,CAAC,eAAe,CAAC,GAAG,kBAAkB,CAAC;IACxE,yBAAyB;IACzB,IAAI,CAAC,EAAE,kBAAkB,CAAC,QAAQ,CAAC,GAAG,WAAW,CAAC;IAClD,sCAAsC;IACtC,OAAO,CAAC,EAAE,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAC1C,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAC3C,oDAAoD;IACpD,OAAO,CAAC,EAAE,kBAAkB,CAAC,YAAY,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC;CAC5D;AAMD;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAIzB,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,OAAO,cAAc,CAAC"}
@@ -2,7 +2,7 @@
2
2
  * Copyright (c) 2025 Elara AI Pty Ltd
3
3
  * Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
4
4
  */
5
- import { OptionType, StructType, BooleanType, StringType, } from "@elaraai/east";
5
+ import { OptionType, StructType, BooleanType, StringType, FunctionType, NullType, } from "@elaraai/east";
6
6
  import { SizeType, ColorSchemeType } from "../../style.js";
7
7
  import { ButtonVariantType } from "../button/types.js";
8
8
  // Re-export ButtonVariantType for convenience
@@ -21,6 +21,7 @@ export { ButtonVariantType } from "../button/types.js";
21
21
  * @property size - Size of the button (xs, sm, md, lg)
22
22
  * @property loading - Whether the button shows a loading state
23
23
  * @property disabled - Whether the button is disabled
24
+ * @property onClick - Callback triggered when the button is clicked
24
25
  */
25
26
  export const IconButtonStyleType = StructType({
26
27
  variant: OptionType(ButtonVariantType),
@@ -28,6 +29,7 @@ export const IconButtonStyleType = StructType({
28
29
  size: OptionType(SizeType),
29
30
  loading: OptionType(BooleanType),
30
31
  disabled: OptionType(BooleanType),
32
+ onClick: OptionType(FunctionType([], NullType)),
31
33
  });
32
34
  // ============================================================================
33
35
  // IconButton Type
@@ -38,7 +40,8 @@ export const IconButtonStyleType = StructType({
38
40
  * @remarks
39
41
  * This struct type represents the serializable data structure for an IconButton component.
40
42
  *
41
- * @property icon - The icon to display in the button
43
+ * @property prefix - The Font Awesome icon prefix
44
+ * @property name - The Font Awesome icon name
42
45
  * @property style - Optional styling configuration wrapped in OptionType
43
46
  */
44
47
  export const IconButtonType = StructType({
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/buttons/icon-button/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAEH,UAAU,EACV,UAAU,EACV,WAAW,EACX,UAAU,GACb,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAE3D,OAAO,EAAE,iBAAiB,EAA6B,MAAM,oBAAoB,CAAC;AAElF,8CAA8C;AAC9C,OAAO,EAAE,iBAAiB,EAA6B,MAAM,oBAAoB,CAAC;AAElF,+EAA+E;AAC/E,wBAAwB;AACxB,+EAA+E;AAE/E;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,UAAU,CAAC;IAC1C,OAAO,EAAE,UAAU,CAAC,iBAAiB,CAAC;IACtC,YAAY,EAAE,UAAU,CAAC,eAAe,CAAC;IACzC,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC;IAC1B,OAAO,EAAE,UAAU,CAAC,WAAW,CAAC;IAChC,QAAQ,EAAE,UAAU,CAAC,WAAW,CAAC;CACpC,CAAC,CAAC;AAgCH,+EAA+E;AAC/E,kBAAkB;AAClB,+EAA+E;AAE/E;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,UAAU,CAAC;IACrC,MAAM,EAAE,UAAU;IAClB,IAAI,EAAE,UAAU;IAChB,KAAK,EAAE,UAAU,CAAC,mBAAmB,CAAC;CACzC,CAAC,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/buttons/icon-button/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAEH,UAAU,EACV,UAAU,EACV,WAAW,EACX,UAAU,EACV,YAAY,EACZ,QAAQ,GACX,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAE3D,OAAO,EAAE,iBAAiB,EAA6B,MAAM,oBAAoB,CAAC;AAElF,8CAA8C;AAC9C,OAAO,EAAE,iBAAiB,EAA6B,MAAM,oBAAoB,CAAC;AAElF,+EAA+E;AAC/E,wBAAwB;AACxB,+EAA+E;AAE/E;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,UAAU,CAAC;IAC1C,OAAO,EAAE,UAAU,CAAC,iBAAiB,CAAC;IACtC,YAAY,EAAE,UAAU,CAAC,eAAe,CAAC;IACzC,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC;IAC1B,OAAO,EAAE,UAAU,CAAC,WAAW,CAAC;IAChC,QAAQ,EAAE,UAAU,CAAC,WAAW,CAAC;IACjC,OAAO,EAAE,UAAU,CAAC,YAAY,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;CAClD,CAAC,CAAC;AAmCH,+EAA+E;AAC/E,kBAAkB;AAClB,+EAA+E;AAE/E;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,UAAU,CAAC;IACrC,MAAM,EAAE,UAAU;IAClB,IAAI,EAAE,UAAU;IAChB,KAAK,EAAE,UAAU,CAAC,mBAAmB,CAAC;CACzC,CAAC,CAAC"}