@tessera-ui/core 0.4.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (600) hide show
  1. package/README.md +21 -12
  2. package/dist/components/index.js +1 -1
  3. package/dist/components/{p-O8aQgWRZ.js → p-2ydrBbXU.js} +2 -2
  4. package/dist/components/p-A0saON5E.js +2 -0
  5. package/dist/components/p-B046Q9mB.js +2 -0
  6. package/dist/components/{p-C7JaUlNB.js → p-B4_cDa1A.js} +2 -2
  7. package/dist/components/{p-BdzH6wlc.js → p-BCv5H01l.js} +2 -2
  8. package/dist/components/p-BGnwokOT.js +2 -0
  9. package/dist/components/p-BMu62WKn.js +2 -0
  10. package/dist/components/p-BT1uIgln.js +2 -0
  11. package/dist/components/p-BUWioFPq.js +2 -0
  12. package/dist/components/{p-v-L32wKy.js → p-BdeYJARM.js} +2 -2
  13. package/dist/components/{p-DhQ7X_TL.js → p-BnX1KON4.js} +2 -2
  14. package/dist/components/{p-DwJ7Jt3k.js → p-BsX7YKf7.js} +2 -2
  15. package/dist/components/p-BzSptDZ8.js +2 -0
  16. package/dist/components/p-C4C_ntgI.js +2 -0
  17. package/dist/components/p-C4jvuley.js +2 -0
  18. package/dist/components/{p-BP-fZfRb.js → p-CGcBFblJ.js} +2 -2
  19. package/dist/components/p-CJvp9tpd.js +2 -0
  20. package/dist/components/{p-DD986daz.js → p-COpYtD-7.js} +2 -2
  21. package/dist/components/{p-C8wd1644.js → p-CV-_3uEV.js} +2 -2
  22. package/dist/components/p-CXpxj5LF.js +2 -0
  23. package/dist/components/{p-CEQXPxzU.js → p-Ccf23RDb.js} +2 -2
  24. package/dist/components/{p-SopsdO_f.js → p-Ccpbt1Ou.js} +2 -2
  25. package/dist/components/{p-DMPxu5Po.js → p-CgLMjfKE.js} +2 -2
  26. package/dist/components/p-D2rKVDAH.js +2 -0
  27. package/dist/components/{p-zveaarwa.js → p-D33ZtGZF.js} +2 -2
  28. package/dist/components/{p-Fot2uNwg.js → p-DHBR8Qn_.js} +2 -2
  29. package/dist/components/{p-faVXXwqR.js → p-DOtFbUdh.js} +2 -2
  30. package/dist/components/{p-BjiDgszq.js → p-DelBi-6m.js} +2 -2
  31. package/dist/components/{p-Cy_Ad-Jy.js → p-DgbNUE6a.js} +2 -2
  32. package/dist/components/{p-DTAVTqnc.js → p-I5_iFNxb.js} +2 -2
  33. package/dist/components/p-IZ8R1wr2.js +2 -0
  34. package/dist/components/{p-B_NL55YI.js → p-LcG5Mdyq.js} +2 -2
  35. package/dist/components/{p-BcoU0ISN.js → p-XuOQBHK0.js} +2 -2
  36. package/dist/components/p-_EbBBIv1.js +2 -0
  37. package/dist/components/p-_vCbug8y.js +2 -0
  38. package/dist/components/{p-B0ZXNFSa.js → p-b-zWbmXM.js} +2 -2
  39. package/dist/components/{p-DwUH8YQW.js → p-e-hrdd0t.js} +2 -2
  40. package/dist/components/p-gtluIo4p.js +2 -0
  41. package/dist/components/p-o-GUod2W.js +2 -0
  42. package/dist/components/{p-DooMF1E0.js → p-w9y5VC-3.js} +2 -2
  43. package/dist/components/ts-accordion-item.js +1 -1
  44. package/dist/components/ts-accordion.js +1 -1
  45. package/dist/components/ts-alert.js +1 -1
  46. package/dist/components/ts-avatar.js +1 -1
  47. package/dist/components/ts-badge.js +1 -1
  48. package/dist/components/ts-banner.js +1 -1
  49. package/dist/components/ts-breadcrumb-item.js +1 -1
  50. package/dist/components/ts-breadcrumb.js +1 -1
  51. package/dist/components/ts-button.js +1 -1
  52. package/dist/components/ts-card.js +1 -1
  53. package/dist/components/ts-checkbox.js +1 -1
  54. package/dist/components/ts-chip.js +1 -1
  55. package/dist/components/ts-container.js +1 -1
  56. package/dist/components/ts-date-picker.js +1 -1
  57. package/dist/components/ts-dialog.js +1 -1
  58. package/dist/components/ts-divider.js +1 -1
  59. package/dist/components/ts-drawer.js +1 -1
  60. package/dist/components/ts-empty-state.js +1 -1
  61. package/dist/components/ts-file-upload.js +1 -1
  62. package/dist/components/ts-grid.js +1 -1
  63. package/dist/components/ts-icon.js +1 -1
  64. package/dist/components/ts-input.js +1 -1
  65. package/dist/components/ts-menu-item.js +1 -1
  66. package/dist/components/ts-menu.js +1 -1
  67. package/dist/components/ts-modal.js +1 -1
  68. package/dist/components/ts-nav-item.js +1 -1
  69. package/dist/components/ts-nav.js +1 -1
  70. package/dist/components/ts-pagination.js +1 -1
  71. package/dist/components/ts-popover.js +1 -1
  72. package/dist/components/ts-progress.js +1 -1
  73. package/dist/components/ts-radio.js +1 -1
  74. package/dist/components/ts-row.js +1 -1
  75. package/dist/components/ts-select.js +1 -1
  76. package/dist/components/ts-skeleton.js +1 -1
  77. package/dist/components/ts-slider.js +1 -1
  78. package/dist/components/ts-spacer.js +1 -1
  79. package/dist/components/ts-spinner.js +1 -1
  80. package/dist/components/ts-stack.js +1 -1
  81. package/dist/components/ts-step.js +1 -1
  82. package/dist/components/ts-stepper.js +1 -1
  83. package/dist/components/ts-switch-group.js +1 -1
  84. package/dist/components/ts-switch-option.js +1 -1
  85. package/dist/components/ts-tab-panel.js +1 -1
  86. package/dist/components/ts-table.js +1 -1
  87. package/dist/components/ts-tabs.js +1 -1
  88. package/dist/components/ts-textarea.js +1 -1
  89. package/dist/components/ts-toast.js +1 -1
  90. package/dist/components/ts-toggle.js +1 -1
  91. package/dist/components/ts-toolbar.js +1 -1
  92. package/dist/components/ts-tooltip.js +1 -1
  93. package/dist/components/ts-tree-item.js +1 -1
  94. package/dist/components/ts-tree.js +1 -1
  95. package/package.json +24 -3
  96. package/dist/cjs/aria-CeYIvz3U.js.map +0 -1
  97. package/dist/cjs/index-Bel_x2OU.js.map +0 -1
  98. package/dist/cjs/index.cjs.js.map +0 -1
  99. package/dist/cjs/loader.cjs.js.map +0 -1
  100. package/dist/cjs/lucide-B1gCqJ3G.js.map +0 -1
  101. package/dist/cjs/tessera-ui.cjs.js.map +0 -1
  102. package/dist/cjs/ts-accordion-item.cjs.entry.js.map +0 -1
  103. package/dist/cjs/ts-accordion.cjs.entry.js.map +0 -1
  104. package/dist/cjs/ts-alert.cjs.entry.js.map +0 -1
  105. package/dist/cjs/ts-avatar.cjs.entry.js.map +0 -1
  106. package/dist/cjs/ts-badge.cjs.entry.js.map +0 -1
  107. package/dist/cjs/ts-banner.cjs.entry.js.map +0 -1
  108. package/dist/cjs/ts-breadcrumb-item.cjs.entry.js.map +0 -1
  109. package/dist/cjs/ts-breadcrumb.cjs.entry.js.map +0 -1
  110. package/dist/cjs/ts-button.cjs.entry.js.map +0 -1
  111. package/dist/cjs/ts-card.cjs.entry.js.map +0 -1
  112. package/dist/cjs/ts-checkbox.cjs.entry.js.map +0 -1
  113. package/dist/cjs/ts-chip.cjs.entry.js.map +0 -1
  114. package/dist/cjs/ts-container.cjs.entry.js.map +0 -1
  115. package/dist/cjs/ts-date-picker.cjs.entry.js.map +0 -1
  116. package/dist/cjs/ts-dialog.cjs.entry.js.map +0 -1
  117. package/dist/cjs/ts-divider.cjs.entry.js.map +0 -1
  118. package/dist/cjs/ts-drawer.cjs.entry.js.map +0 -1
  119. package/dist/cjs/ts-empty-state.cjs.entry.js.map +0 -1
  120. package/dist/cjs/ts-file-upload.cjs.entry.js.map +0 -1
  121. package/dist/cjs/ts-grid.cjs.entry.js.map +0 -1
  122. package/dist/cjs/ts-icon-CfbhgAgr.js.map +0 -1
  123. package/dist/cjs/ts-icon.cjs.entry.js.map +0 -1
  124. package/dist/cjs/ts-input.cjs.entry.js.map +0 -1
  125. package/dist/cjs/ts-menu-item.cjs.entry.js.map +0 -1
  126. package/dist/cjs/ts-menu.cjs.entry.js.map +0 -1
  127. package/dist/cjs/ts-modal.cjs.entry.js.map +0 -1
  128. package/dist/cjs/ts-nav-item.cjs.entry.js.map +0 -1
  129. package/dist/cjs/ts-nav.cjs.entry.js.map +0 -1
  130. package/dist/cjs/ts-pagination.cjs.entry.js.map +0 -1
  131. package/dist/cjs/ts-popover.cjs.entry.js.map +0 -1
  132. package/dist/cjs/ts-progress.cjs.entry.js.map +0 -1
  133. package/dist/cjs/ts-radio.cjs.entry.js.map +0 -1
  134. package/dist/cjs/ts-row.cjs.entry.js.map +0 -1
  135. package/dist/cjs/ts-select.cjs.entry.js.map +0 -1
  136. package/dist/cjs/ts-skeleton.cjs.entry.js.map +0 -1
  137. package/dist/cjs/ts-slider.cjs.entry.js.map +0 -1
  138. package/dist/cjs/ts-spacer.cjs.entry.js.map +0 -1
  139. package/dist/cjs/ts-spinner.cjs.entry.js.map +0 -1
  140. package/dist/cjs/ts-stack.cjs.entry.js.map +0 -1
  141. package/dist/cjs/ts-step.cjs.entry.js.map +0 -1
  142. package/dist/cjs/ts-stepper.cjs.entry.js.map +0 -1
  143. package/dist/cjs/ts-switch-group.cjs.entry.js.map +0 -1
  144. package/dist/cjs/ts-switch-option.cjs.entry.js.map +0 -1
  145. package/dist/cjs/ts-tab-panel.cjs.entry.js.map +0 -1
  146. package/dist/cjs/ts-table.cjs.entry.js.map +0 -1
  147. package/dist/cjs/ts-tabs.cjs.entry.js.map +0 -1
  148. package/dist/cjs/ts-textarea.cjs.entry.js.map +0 -1
  149. package/dist/cjs/ts-toast.cjs.entry.js.map +0 -1
  150. package/dist/cjs/ts-toggle.cjs.entry.js.map +0 -1
  151. package/dist/cjs/ts-toolbar.cjs.entry.js.map +0 -1
  152. package/dist/cjs/ts-tooltip.cjs.entry.js.map +0 -1
  153. package/dist/cjs/ts-tree-item.cjs.entry.js.map +0 -1
  154. package/dist/cjs/ts-tree.cjs.entry.js.map +0 -1
  155. package/dist/collection/components/accordion/accordion-item.js.map +0 -1
  156. package/dist/collection/components/accordion/accordion-item.stories.js +0 -4
  157. package/dist/collection/components/accordion/accordion-item.stories.js.map +0 -1
  158. package/dist/collection/components/accordion/accordion.js.map +0 -1
  159. package/dist/collection/components/accordion/accordion.stories.js +0 -90
  160. package/dist/collection/components/accordion/accordion.stories.js.map +0 -1
  161. package/dist/collection/components/alert/alert.js.map +0 -1
  162. package/dist/collection/components/alert/alert.stories.js +0 -128
  163. package/dist/collection/components/alert/alert.stories.js.map +0 -1
  164. package/dist/collection/components/avatar/avatar.js.map +0 -1
  165. package/dist/collection/components/avatar/avatar.stories.js +0 -138
  166. package/dist/collection/components/avatar/avatar.stories.js.map +0 -1
  167. package/dist/collection/components/badge/badge.js.map +0 -1
  168. package/dist/collection/components/badge/badge.stories.js +0 -193
  169. package/dist/collection/components/badge/badge.stories.js.map +0 -1
  170. package/dist/collection/components/banner/banner.js.map +0 -1
  171. package/dist/collection/components/banner/banner.stories.js +0 -92
  172. package/dist/collection/components/banner/banner.stories.js.map +0 -1
  173. package/dist/collection/components/breadcrumb/breadcrumb-item.js.map +0 -1
  174. package/dist/collection/components/breadcrumb/breadcrumb-item.stories.js +0 -4
  175. package/dist/collection/components/breadcrumb/breadcrumb-item.stories.js.map +0 -1
  176. package/dist/collection/components/breadcrumb/breadcrumb.js.map +0 -1
  177. package/dist/collection/components/breadcrumb/breadcrumb.stories.js +0 -88
  178. package/dist/collection/components/breadcrumb/breadcrumb.stories.js.map +0 -1
  179. package/dist/collection/components/button/button.js.map +0 -1
  180. package/dist/collection/components/button/button.stories.js +0 -219
  181. package/dist/collection/components/button/button.stories.js.map +0 -1
  182. package/dist/collection/components/card/card.js.map +0 -1
  183. package/dist/collection/components/card/card.stories.js +0 -221
  184. package/dist/collection/components/card/card.stories.js.map +0 -1
  185. package/dist/collection/components/checkbox/checkbox.js.map +0 -1
  186. package/dist/collection/components/checkbox/checkbox.stories.js +0 -90
  187. package/dist/collection/components/checkbox/checkbox.stories.js.map +0 -1
  188. package/dist/collection/components/chip/chip.js.map +0 -1
  189. package/dist/collection/components/chip/chip.stories.js +0 -139
  190. package/dist/collection/components/chip/chip.stories.js.map +0 -1
  191. package/dist/collection/components/container/container.js.map +0 -1
  192. package/dist/collection/components/container/container.stories.js +0 -138
  193. package/dist/collection/components/container/container.stories.js.map +0 -1
  194. package/dist/collection/components/date-picker/date-picker.js.map +0 -1
  195. package/dist/collection/components/date-picker/date-picker.stories.js +0 -119
  196. package/dist/collection/components/date-picker/date-picker.stories.js.map +0 -1
  197. package/dist/collection/components/dialog/dialog.js.map +0 -1
  198. package/dist/collection/components/dialog/dialog.stories.js +0 -147
  199. package/dist/collection/components/dialog/dialog.stories.js.map +0 -1
  200. package/dist/collection/components/divider/divider.js.map +0 -1
  201. package/dist/collection/components/divider/divider.stories.js +0 -94
  202. package/dist/collection/components/divider/divider.stories.js.map +0 -1
  203. package/dist/collection/components/drawer/drawer.js.map +0 -1
  204. package/dist/collection/components/drawer/drawer.stories.js +0 -143
  205. package/dist/collection/components/drawer/drawer.stories.js.map +0 -1
  206. package/dist/collection/components/empty-state/empty-state.js.map +0 -1
  207. package/dist/collection/components/empty-state/empty-state.stories.js +0 -113
  208. package/dist/collection/components/empty-state/empty-state.stories.js.map +0 -1
  209. package/dist/collection/components/file-upload/file-upload.js.map +0 -1
  210. package/dist/collection/components/file-upload/file-upload.stories.js +0 -107
  211. package/dist/collection/components/file-upload/file-upload.stories.js.map +0 -1
  212. package/dist/collection/components/grid/grid.js.map +0 -1
  213. package/dist/collection/components/grid/grid.stories.js +0 -134
  214. package/dist/collection/components/grid/grid.stories.js.map +0 -1
  215. package/dist/collection/components/icon/icon-registry.js.map +0 -1
  216. package/dist/collection/components/icon/icon.js.map +0 -1
  217. package/dist/collection/components/icon/icon.stories.js +0 -119
  218. package/dist/collection/components/icon/icon.stories.js.map +0 -1
  219. package/dist/collection/components/input/input.js.map +0 -1
  220. package/dist/collection/components/input/input.stories.js +0 -151
  221. package/dist/collection/components/input/input.stories.js.map +0 -1
  222. package/dist/collection/components/menu/menu-item.js.map +0 -1
  223. package/dist/collection/components/menu/menu-item.stories.js +0 -4
  224. package/dist/collection/components/menu/menu-item.stories.js.map +0 -1
  225. package/dist/collection/components/menu/menu.js.map +0 -1
  226. package/dist/collection/components/menu/menu.stories.js +0 -126
  227. package/dist/collection/components/menu/menu.stories.js.map +0 -1
  228. package/dist/collection/components/modal/modal.js.map +0 -1
  229. package/dist/collection/components/modal/modal.stories.js +0 -233
  230. package/dist/collection/components/modal/modal.stories.js.map +0 -1
  231. package/dist/collection/components/nav/nav-item.js.map +0 -1
  232. package/dist/collection/components/nav/nav-item.stories.js +0 -4
  233. package/dist/collection/components/nav/nav-item.stories.js.map +0 -1
  234. package/dist/collection/components/nav/nav.js.map +0 -1
  235. package/dist/collection/components/nav/nav.stories.js +0 -106
  236. package/dist/collection/components/nav/nav.stories.js.map +0 -1
  237. package/dist/collection/components/pagination/pagination.js.map +0 -1
  238. package/dist/collection/components/pagination/pagination.stories.js +0 -92
  239. package/dist/collection/components/pagination/pagination.stories.js.map +0 -1
  240. package/dist/collection/components/popover/popover.js.map +0 -1
  241. package/dist/collection/components/popover/popover.stories.js +0 -112
  242. package/dist/collection/components/popover/popover.stories.js.map +0 -1
  243. package/dist/collection/components/progress/progress.js.map +0 -1
  244. package/dist/collection/components/progress/progress.stories.js +0 -132
  245. package/dist/collection/components/progress/progress.stories.js.map +0 -1
  246. package/dist/collection/components/radio/radio.js.map +0 -1
  247. package/dist/collection/components/radio/radio.stories.js +0 -77
  248. package/dist/collection/components/radio/radio.stories.js.map +0 -1
  249. package/dist/collection/components/row/row.js.map +0 -1
  250. package/dist/collection/components/row/row.stories.js +0 -172
  251. package/dist/collection/components/row/row.stories.js.map +0 -1
  252. package/dist/collection/components/select/select.js.map +0 -1
  253. package/dist/collection/components/select/select.stories.js +0 -138
  254. package/dist/collection/components/select/select.stories.js.map +0 -1
  255. package/dist/collection/components/skeleton/skeleton.js.map +0 -1
  256. package/dist/collection/components/skeleton/skeleton.stories.js +0 -140
  257. package/dist/collection/components/skeleton/skeleton.stories.js.map +0 -1
  258. package/dist/collection/components/slider/slider.js.map +0 -1
  259. package/dist/collection/components/slider/slider.stories.js +0 -100
  260. package/dist/collection/components/slider/slider.stories.js.map +0 -1
  261. package/dist/collection/components/spacer/spacer.js.map +0 -1
  262. package/dist/collection/components/spacer/spacer.stories.js +0 -90
  263. package/dist/collection/components/spacer/spacer.stories.js.map +0 -1
  264. package/dist/collection/components/spinner/spinner.js.map +0 -1
  265. package/dist/collection/components/spinner/spinner.stories.js +0 -88
  266. package/dist/collection/components/spinner/spinner.stories.js.map +0 -1
  267. package/dist/collection/components/stack/stack.js.map +0 -1
  268. package/dist/collection/components/stack/stack.stories.js +0 -121
  269. package/dist/collection/components/stack/stack.stories.js.map +0 -1
  270. package/dist/collection/components/stepper/step.js.map +0 -1
  271. package/dist/collection/components/stepper/step.stories.js +0 -4
  272. package/dist/collection/components/stepper/step.stories.js.map +0 -1
  273. package/dist/collection/components/stepper/stepper.js.map +0 -1
  274. package/dist/collection/components/stepper/stepper.stories.js +0 -130
  275. package/dist/collection/components/stepper/stepper.stories.js.map +0 -1
  276. package/dist/collection/components/switch-group/switch-group.js.map +0 -1
  277. package/dist/collection/components/switch-group/switch-group.stories.js +0 -132
  278. package/dist/collection/components/switch-group/switch-group.stories.js.map +0 -1
  279. package/dist/collection/components/switch-group/switch-option.js.map +0 -1
  280. package/dist/collection/components/switch-group/switch-option.stories.js +0 -4
  281. package/dist/collection/components/switch-group/switch-option.stories.js.map +0 -1
  282. package/dist/collection/components/table/table.js.map +0 -1
  283. package/dist/collection/components/table/table.stories.js +0 -147
  284. package/dist/collection/components/table/table.stories.js.map +0 -1
  285. package/dist/collection/components/tabs/tab-panel.js.map +0 -1
  286. package/dist/collection/components/tabs/tab-panel.stories.js +0 -4
  287. package/dist/collection/components/tabs/tab-panel.stories.js.map +0 -1
  288. package/dist/collection/components/tabs/tabs.js.map +0 -1
  289. package/dist/collection/components/tabs/tabs.stories.js +0 -187
  290. package/dist/collection/components/tabs/tabs.stories.js.map +0 -1
  291. package/dist/collection/components/textarea/textarea.js.map +0 -1
  292. package/dist/collection/components/textarea/textarea.stories.js +0 -130
  293. package/dist/collection/components/textarea/textarea.stories.js.map +0 -1
  294. package/dist/collection/components/toast/toast.js.map +0 -1
  295. package/dist/collection/components/toast/toast.stories.js +0 -91
  296. package/dist/collection/components/toast/toast.stories.js.map +0 -1
  297. package/dist/collection/components/toggle/toggle.js.map +0 -1
  298. package/dist/collection/components/toggle/toggle.stories.js +0 -145
  299. package/dist/collection/components/toggle/toggle.stories.js.map +0 -1
  300. package/dist/collection/components/toolbar/toolbar.js.map +0 -1
  301. package/dist/collection/components/toolbar/toolbar.stories.js +0 -131
  302. package/dist/collection/components/toolbar/toolbar.stories.js.map +0 -1
  303. package/dist/collection/components/tooltip/tooltip.js.map +0 -1
  304. package/dist/collection/components/tooltip/tooltip.stories.js +0 -186
  305. package/dist/collection/components/tooltip/tooltip.stories.js.map +0 -1
  306. package/dist/collection/components/tree/tree-item.js.map +0 -1
  307. package/dist/collection/components/tree/tree-item.stories.js +0 -4
  308. package/dist/collection/components/tree/tree-item.stories.js.map +0 -1
  309. package/dist/collection/components/tree/tree.js.map +0 -1
  310. package/dist/collection/components/tree/tree.stories.js +0 -121
  311. package/dist/collection/components/tree/tree.stories.js.map +0 -1
  312. package/dist/collection/index.js.map +0 -1
  313. package/dist/collection/theme/tokens.js.map +0 -1
  314. package/dist/collection/types/index.js.map +0 -1
  315. package/dist/collection/utils/aria.js.map +0 -1
  316. package/dist/collection/utils/dom.js.map +0 -1
  317. package/dist/collection/utils/events.js.map +0 -1
  318. package/dist/components/index.js.map +0 -1
  319. package/dist/components/p-6RDSLDuS.js +0 -2
  320. package/dist/components/p-6RDSLDuS.js.map +0 -1
  321. package/dist/components/p-B0ZXNFSa.js.map +0 -1
  322. package/dist/components/p-BCgm2utU.js +0 -2
  323. package/dist/components/p-BCgm2utU.js.map +0 -1
  324. package/dist/components/p-BFN5hUo4.js +0 -2
  325. package/dist/components/p-BFN5hUo4.js.map +0 -1
  326. package/dist/components/p-BOxYojS-.js.map +0 -1
  327. package/dist/components/p-BP-fZfRb.js.map +0 -1
  328. package/dist/components/p-B_NL55YI.js.map +0 -1
  329. package/dist/components/p-BcoU0ISN.js.map +0 -1
  330. package/dist/components/p-BdzH6wlc.js.map +0 -1
  331. package/dist/components/p-BeErYjKz.js +0 -2
  332. package/dist/components/p-BeErYjKz.js.map +0 -1
  333. package/dist/components/p-BjiDgszq.js.map +0 -1
  334. package/dist/components/p-BjyTgfXe.js +0 -2
  335. package/dist/components/p-BjyTgfXe.js.map +0 -1
  336. package/dist/components/p-BlZHjan9.js +0 -2
  337. package/dist/components/p-BlZHjan9.js.map +0 -1
  338. package/dist/components/p-C7JaUlNB.js.map +0 -1
  339. package/dist/components/p-C8wd1644.js.map +0 -1
  340. package/dist/components/p-CEQXPxzU.js.map +0 -1
  341. package/dist/components/p-CGh7W07E.js +0 -2
  342. package/dist/components/p-CGh7W07E.js.map +0 -1
  343. package/dist/components/p-CHtE5caV.js +0 -2
  344. package/dist/components/p-CHtE5caV.js.map +0 -1
  345. package/dist/components/p-CSNeA_zh.js +0 -2
  346. package/dist/components/p-CSNeA_zh.js.map +0 -1
  347. package/dist/components/p-CbHlJvjF.js +0 -2
  348. package/dist/components/p-CbHlJvjF.js.map +0 -1
  349. package/dist/components/p-CkQOAizb.js +0 -2
  350. package/dist/components/p-CkQOAizb.js.map +0 -1
  351. package/dist/components/p-Cy_Ad-Jy.js.map +0 -1
  352. package/dist/components/p-DD986daz.js.map +0 -1
  353. package/dist/components/p-DFnNsZtI.js +0 -2
  354. package/dist/components/p-DFnNsZtI.js.map +0 -1
  355. package/dist/components/p-DMPxu5Po.js.map +0 -1
  356. package/dist/components/p-DMuI5d5r.js +0 -2
  357. package/dist/components/p-DMuI5d5r.js.map +0 -1
  358. package/dist/components/p-DPQ1o4MP.js +0 -2
  359. package/dist/components/p-DPQ1o4MP.js.map +0 -1
  360. package/dist/components/p-DTAVTqnc.js.map +0 -1
  361. package/dist/components/p-DhQ7X_TL.js.map +0 -1
  362. package/dist/components/p-DkpyRqHf.js.map +0 -1
  363. package/dist/components/p-DlB-KfKY.js +0 -2
  364. package/dist/components/p-DlB-KfKY.js.map +0 -1
  365. package/dist/components/p-DooMF1E0.js.map +0 -1
  366. package/dist/components/p-DwJ7Jt3k.js.map +0 -1
  367. package/dist/components/p-DwUH8YQW.js.map +0 -1
  368. package/dist/components/p-Fot2uNwg.js.map +0 -1
  369. package/dist/components/p-O8aQgWRZ.js.map +0 -1
  370. package/dist/components/p-SopsdO_f.js.map +0 -1
  371. package/dist/components/p-TFHAUMKT.js +0 -2
  372. package/dist/components/p-TFHAUMKT.js.map +0 -1
  373. package/dist/components/p-faVXXwqR.js.map +0 -1
  374. package/dist/components/p-lpqZSiIf.js.map +0 -1
  375. package/dist/components/p-mfB_pP4L.js +0 -2
  376. package/dist/components/p-mfB_pP4L.js.map +0 -1
  377. package/dist/components/p-v-L32wKy.js.map +0 -1
  378. package/dist/components/p-zveaarwa.js.map +0 -1
  379. package/dist/components/ts-accordion-item.js.map +0 -1
  380. package/dist/components/ts-accordion.js.map +0 -1
  381. package/dist/components/ts-alert.js.map +0 -1
  382. package/dist/components/ts-avatar.js.map +0 -1
  383. package/dist/components/ts-badge.js.map +0 -1
  384. package/dist/components/ts-banner.js.map +0 -1
  385. package/dist/components/ts-breadcrumb-item.js.map +0 -1
  386. package/dist/components/ts-breadcrumb.js.map +0 -1
  387. package/dist/components/ts-button.js.map +0 -1
  388. package/dist/components/ts-card.js.map +0 -1
  389. package/dist/components/ts-checkbox.js.map +0 -1
  390. package/dist/components/ts-chip.js.map +0 -1
  391. package/dist/components/ts-container.js.map +0 -1
  392. package/dist/components/ts-date-picker.js.map +0 -1
  393. package/dist/components/ts-dialog.js.map +0 -1
  394. package/dist/components/ts-divider.js.map +0 -1
  395. package/dist/components/ts-drawer.js.map +0 -1
  396. package/dist/components/ts-empty-state.js.map +0 -1
  397. package/dist/components/ts-file-upload.js.map +0 -1
  398. package/dist/components/ts-grid.js.map +0 -1
  399. package/dist/components/ts-icon.js.map +0 -1
  400. package/dist/components/ts-input.js.map +0 -1
  401. package/dist/components/ts-menu-item.js.map +0 -1
  402. package/dist/components/ts-menu.js.map +0 -1
  403. package/dist/components/ts-modal.js.map +0 -1
  404. package/dist/components/ts-nav-item.js.map +0 -1
  405. package/dist/components/ts-nav.js.map +0 -1
  406. package/dist/components/ts-pagination.js.map +0 -1
  407. package/dist/components/ts-popover.js.map +0 -1
  408. package/dist/components/ts-progress.js.map +0 -1
  409. package/dist/components/ts-radio.js.map +0 -1
  410. package/dist/components/ts-row.js.map +0 -1
  411. package/dist/components/ts-select.js.map +0 -1
  412. package/dist/components/ts-skeleton.js.map +0 -1
  413. package/dist/components/ts-slider.js.map +0 -1
  414. package/dist/components/ts-spacer.js.map +0 -1
  415. package/dist/components/ts-spinner.js.map +0 -1
  416. package/dist/components/ts-stack.js.map +0 -1
  417. package/dist/components/ts-step.js.map +0 -1
  418. package/dist/components/ts-stepper.js.map +0 -1
  419. package/dist/components/ts-switch-group.js.map +0 -1
  420. package/dist/components/ts-switch-option.js.map +0 -1
  421. package/dist/components/ts-tab-panel.js.map +0 -1
  422. package/dist/components/ts-table.js.map +0 -1
  423. package/dist/components/ts-tabs.js.map +0 -1
  424. package/dist/components/ts-textarea.js.map +0 -1
  425. package/dist/components/ts-toast.js.map +0 -1
  426. package/dist/components/ts-toggle.js.map +0 -1
  427. package/dist/components/ts-toolbar.js.map +0 -1
  428. package/dist/components/ts-tooltip.js.map +0 -1
  429. package/dist/components/ts-tree-item.js.map +0 -1
  430. package/dist/components/ts-tree.js.map +0 -1
  431. package/dist/components.json +0 -12678
  432. package/dist/esm/aria-lpqZSiIf.js.map +0 -1
  433. package/dist/esm/index-V8-ENixA.js.map +0 -1
  434. package/dist/esm/index.js.map +0 -1
  435. package/dist/esm/loader.js.map +0 -1
  436. package/dist/esm/lucide-BOxYojS-.js.map +0 -1
  437. package/dist/esm/tessera-ui.js.map +0 -1
  438. package/dist/esm/ts-accordion-item.entry.js.map +0 -1
  439. package/dist/esm/ts-accordion.entry.js.map +0 -1
  440. package/dist/esm/ts-alert.entry.js.map +0 -1
  441. package/dist/esm/ts-avatar.entry.js.map +0 -1
  442. package/dist/esm/ts-badge.entry.js.map +0 -1
  443. package/dist/esm/ts-banner.entry.js.map +0 -1
  444. package/dist/esm/ts-breadcrumb-item.entry.js.map +0 -1
  445. package/dist/esm/ts-breadcrumb.entry.js.map +0 -1
  446. package/dist/esm/ts-button.entry.js.map +0 -1
  447. package/dist/esm/ts-card.entry.js.map +0 -1
  448. package/dist/esm/ts-checkbox.entry.js.map +0 -1
  449. package/dist/esm/ts-chip.entry.js.map +0 -1
  450. package/dist/esm/ts-container.entry.js.map +0 -1
  451. package/dist/esm/ts-date-picker.entry.js.map +0 -1
  452. package/dist/esm/ts-dialog.entry.js.map +0 -1
  453. package/dist/esm/ts-divider.entry.js.map +0 -1
  454. package/dist/esm/ts-drawer.entry.js.map +0 -1
  455. package/dist/esm/ts-empty-state.entry.js.map +0 -1
  456. package/dist/esm/ts-file-upload.entry.js.map +0 -1
  457. package/dist/esm/ts-grid.entry.js.map +0 -1
  458. package/dist/esm/ts-icon-Jz9ioZag.js.map +0 -1
  459. package/dist/esm/ts-icon.entry.js.map +0 -1
  460. package/dist/esm/ts-input.entry.js.map +0 -1
  461. package/dist/esm/ts-menu-item.entry.js.map +0 -1
  462. package/dist/esm/ts-menu.entry.js.map +0 -1
  463. package/dist/esm/ts-modal.entry.js.map +0 -1
  464. package/dist/esm/ts-nav-item.entry.js.map +0 -1
  465. package/dist/esm/ts-nav.entry.js.map +0 -1
  466. package/dist/esm/ts-pagination.entry.js.map +0 -1
  467. package/dist/esm/ts-popover.entry.js.map +0 -1
  468. package/dist/esm/ts-progress.entry.js.map +0 -1
  469. package/dist/esm/ts-radio.entry.js.map +0 -1
  470. package/dist/esm/ts-row.entry.js.map +0 -1
  471. package/dist/esm/ts-select.entry.js.map +0 -1
  472. package/dist/esm/ts-skeleton.entry.js.map +0 -1
  473. package/dist/esm/ts-slider.entry.js.map +0 -1
  474. package/dist/esm/ts-spacer.entry.js.map +0 -1
  475. package/dist/esm/ts-spinner.entry.js.map +0 -1
  476. package/dist/esm/ts-stack.entry.js.map +0 -1
  477. package/dist/esm/ts-step.entry.js.map +0 -1
  478. package/dist/esm/ts-stepper.entry.js.map +0 -1
  479. package/dist/esm/ts-switch-group.entry.js.map +0 -1
  480. package/dist/esm/ts-switch-option.entry.js.map +0 -1
  481. package/dist/esm/ts-tab-panel.entry.js.map +0 -1
  482. package/dist/esm/ts-table.entry.js.map +0 -1
  483. package/dist/esm/ts-tabs.entry.js.map +0 -1
  484. package/dist/esm/ts-textarea.entry.js.map +0 -1
  485. package/dist/esm/ts-toast.entry.js.map +0 -1
  486. package/dist/esm/ts-toggle.entry.js.map +0 -1
  487. package/dist/esm/ts-toolbar.entry.js.map +0 -1
  488. package/dist/esm/ts-tooltip.entry.js.map +0 -1
  489. package/dist/esm/ts-tree-item.entry.js.map +0 -1
  490. package/dist/esm/ts-tree.entry.js.map +0 -1
  491. package/dist/tessera-ui/index.esm.js.map +0 -1
  492. package/dist/tessera-ui/p-0424cd55.entry.js.map +0 -1
  493. package/dist/tessera-ui/p-04522bf9.entry.js.map +0 -1
  494. package/dist/tessera-ui/p-04aa8b90.entry.js.map +0 -1
  495. package/dist/tessera-ui/p-080eaf89.entry.js.map +0 -1
  496. package/dist/tessera-ui/p-0ec061e5.entry.js.map +0 -1
  497. package/dist/tessera-ui/p-122e43b7.entry.js.map +0 -1
  498. package/dist/tessera-ui/p-16bb8ca8.entry.js.map +0 -1
  499. package/dist/tessera-ui/p-16fc632b.entry.js.map +0 -1
  500. package/dist/tessera-ui/p-1d73f6c9.entry.js.map +0 -1
  501. package/dist/tessera-ui/p-24305379.entry.js.map +0 -1
  502. package/dist/tessera-ui/p-25f77cc9.entry.js.map +0 -1
  503. package/dist/tessera-ui/p-35eb8496.entry.js.map +0 -1
  504. package/dist/tessera-ui/p-3aec66b4.entry.js.map +0 -1
  505. package/dist/tessera-ui/p-4277460b.entry.js.map +0 -1
  506. package/dist/tessera-ui/p-441310f7.entry.js.map +0 -1
  507. package/dist/tessera-ui/p-491e1a75.entry.js.map +0 -1
  508. package/dist/tessera-ui/p-50d092ce.entry.js.map +0 -1
  509. package/dist/tessera-ui/p-50efadf3.entry.js.map +0 -1
  510. package/dist/tessera-ui/p-53846d59.entry.js.map +0 -1
  511. package/dist/tessera-ui/p-56f2b070.entry.js.map +0 -1
  512. package/dist/tessera-ui/p-6760f922.entry.js.map +0 -1
  513. package/dist/tessera-ui/p-69bb11ed.entry.js.map +0 -1
  514. package/dist/tessera-ui/p-6d35a60c.entry.js.map +0 -1
  515. package/dist/tessera-ui/p-6ec285ad.entry.js.map +0 -1
  516. package/dist/tessera-ui/p-708d4eb5.entry.js.map +0 -1
  517. package/dist/tessera-ui/p-79ff8ceb.entry.js.map +0 -1
  518. package/dist/tessera-ui/p-7e531195.entry.js.map +0 -1
  519. package/dist/tessera-ui/p-7fa64f00.entry.js.map +0 -1
  520. package/dist/tessera-ui/p-829c4307.entry.js.map +0 -1
  521. package/dist/tessera-ui/p-91ccef3f.entry.js.map +0 -1
  522. package/dist/tessera-ui/p-9209e603.entry.js.map +0 -1
  523. package/dist/tessera-ui/p-97a9def7.entry.js.map +0 -1
  524. package/dist/tessera-ui/p-9b41b538.entry.js.map +0 -1
  525. package/dist/tessera-ui/p-9c0504fd.entry.js.map +0 -1
  526. package/dist/tessera-ui/p-BOxYojS-.js.map +0 -1
  527. package/dist/tessera-ui/p-StBQmS8h.js.map +0 -1
  528. package/dist/tessera-ui/p-V8-ENixA.js.map +0 -1
  529. package/dist/tessera-ui/p-a120b5d6.entry.js.map +0 -1
  530. package/dist/tessera-ui/p-a55a5695.entry.js.map +0 -1
  531. package/dist/tessera-ui/p-a83d903e.entry.js.map +0 -1
  532. package/dist/tessera-ui/p-adc807dc.entry.js.map +0 -1
  533. package/dist/tessera-ui/p-b09f202c.entry.js.map +0 -1
  534. package/dist/tessera-ui/p-b1182592.entry.js.map +0 -1
  535. package/dist/tessera-ui/p-b3f60955.entry.js.map +0 -1
  536. package/dist/tessera-ui/p-bb9ebbd8.entry.js.map +0 -1
  537. package/dist/tessera-ui/p-bce40715.entry.js.map +0 -1
  538. package/dist/tessera-ui/p-c35c7049.entry.js.map +0 -1
  539. package/dist/tessera-ui/p-c59ecffa.entry.js.map +0 -1
  540. package/dist/tessera-ui/p-d318774a.entry.js.map +0 -1
  541. package/dist/tessera-ui/p-d5cbadd6.entry.js.map +0 -1
  542. package/dist/tessera-ui/p-e1d2b141.entry.js.map +0 -1
  543. package/dist/tessera-ui/p-f0bf6408.entry.js.map +0 -1
  544. package/dist/tessera-ui/p-f639213a.entry.js.map +0 -1
  545. package/dist/tessera-ui/p-fd2376e0.entry.js.map +0 -1
  546. package/dist/tessera-ui/p-fef9a993.entry.js.map +0 -1
  547. package/dist/tessera-ui/p-lpqZSiIf.js.map +0 -1
  548. package/dist/tessera-ui/tessera-ui.esm.js.map +0 -1
  549. package/dist/types/components/accordion/accordion-item.stories.d.ts +0 -5
  550. package/dist/types/components/accordion/accordion.stories.d.ts +0 -21
  551. package/dist/types/components/alert/alert.stories.d.ts +0 -34
  552. package/dist/types/components/avatar/avatar.stories.d.ts +0 -51
  553. package/dist/types/components/badge/badge.stories.d.ts +0 -50
  554. package/dist/types/components/banner/banner.stories.d.ts +0 -40
  555. package/dist/types/components/breadcrumb/breadcrumb-item.stories.d.ts +0 -5
  556. package/dist/types/components/breadcrumb/breadcrumb.stories.d.ts +0 -20
  557. package/dist/types/components/button/button.stories.d.ts +0 -73
  558. package/dist/types/components/card/card.stories.d.ts +0 -46
  559. package/dist/types/components/checkbox/checkbox.stories.d.ts +0 -58
  560. package/dist/types/components/chip/chip.stories.d.ts +0 -54
  561. package/dist/types/components/container/container.stories.d.ts +0 -21
  562. package/dist/types/components/date-picker/date-picker.stories.d.ts +0 -62
  563. package/dist/types/components/dialog/dialog.stories.d.ts +0 -39
  564. package/dist/types/components/divider/divider.stories.d.ts +0 -33
  565. package/dist/types/components/drawer/drawer.stories.d.ts +0 -43
  566. package/dist/types/components/empty-state/empty-state.stories.d.ts +0 -37
  567. package/dist/types/components/file-upload/file-upload.stories.d.ts +0 -43
  568. package/dist/types/components/grid/grid.stories.d.ts +0 -30
  569. package/dist/types/components/icon/icon.stories.d.ts +0 -42
  570. package/dist/types/components/input/input.stories.d.ts +0 -77
  571. package/dist/types/components/menu/menu-item.stories.d.ts +0 -5
  572. package/dist/types/components/menu/menu.stories.d.ts +0 -36
  573. package/dist/types/components/modal/modal.stories.d.ts +0 -47
  574. package/dist/types/components/nav/nav-item.stories.d.ts +0 -5
  575. package/dist/types/components/nav/nav.stories.d.ts +0 -27
  576. package/dist/types/components/pagination/pagination.stories.d.ts +0 -42
  577. package/dist/types/components/popover/popover.stories.d.ts +0 -38
  578. package/dist/types/components/progress/progress.stories.d.ts +0 -59
  579. package/dist/types/components/radio/radio.stories.d.ts +0 -48
  580. package/dist/types/components/row/row.stories.d.ts +0 -52
  581. package/dist/types/components/select/select.stories.d.ts +0 -73
  582. package/dist/types/components/skeleton/skeleton.stories.d.ts +0 -44
  583. package/dist/types/components/slider/slider.stories.d.ts +0 -62
  584. package/dist/types/components/spacer/spacer.stories.d.ts +0 -28
  585. package/dist/types/components/spinner/spinner.stories.d.ts +0 -33
  586. package/dist/types/components/stack/stack.stories.d.ts +0 -28
  587. package/dist/types/components/stepper/step.stories.d.ts +0 -5
  588. package/dist/types/components/stepper/stepper.stories.d.ts +0 -36
  589. package/dist/types/components/switch-group/switch-group.stories.d.ts +0 -37
  590. package/dist/types/components/switch-group/switch-option.stories.d.ts +0 -5
  591. package/dist/types/components/table/table.stories.d.ts +0 -45
  592. package/dist/types/components/tabs/tab-panel.stories.d.ts +0 -5
  593. package/dist/types/components/tabs/tabs.stories.d.ts +0 -34
  594. package/dist/types/components/textarea/textarea.stories.d.ts +0 -88
  595. package/dist/types/components/toast/toast.stories.d.ts +0 -48
  596. package/dist/types/components/toggle/toggle.stories.d.ts +0 -46
  597. package/dist/types/components/toolbar/toolbar.stories.d.ts +0 -28
  598. package/dist/types/components/tooltip/tooltip.stories.d.ts +0 -43
  599. package/dist/types/components/tree/tree-item.stories.d.ts +0 -5
  600. package/dist/types/components/tree/tree.stories.d.ts +0 -21
@@ -1,131 +0,0 @@
1
- // Hand-written stories for ts-toolbar
2
- export default {
3
- title: 'Components/Toolbar',
4
- tags: ['autodocs'],
5
- argTypes: {
6
- variant: {
7
- control: 'select',
8
- options: ['default', 'bordered', 'elevated'],
9
- description: 'The toolbar variant style.',
10
- },
11
- size: {
12
- control: 'select',
13
- options: ['sm', 'md', 'lg'],
14
- description: 'The toolbar size.',
15
- },
16
- },
17
- };
18
- const Template = (args) => {
19
- const attrs = [];
20
- if (args.variant !== undefined)
21
- attrs.push(`variant="${args.variant}"`);
22
- if (args.size !== undefined)
23
- attrs.push(`size="${args.size}"`);
24
- return `
25
- <ts-toolbar ${attrs.join(' ')}>
26
- <div slot="start">
27
- <ts-button size="sm" appearance="ghost">Bold</ts-button>
28
- <ts-button size="sm" appearance="ghost">Italic</ts-button>
29
- <ts-button size="sm" appearance="ghost">Underline</ts-button>
30
- </div>
31
- <div slot="end">
32
- <ts-button size="sm" appearance="outline">Preview</ts-button>
33
- </div>
34
- </ts-toolbar>
35
- `;
36
- };
37
- export const Default = Object.assign(Template.bind({}), {
38
- args: {
39
- variant: 'bordered',
40
- size: 'md',
41
- },
42
- });
43
- export const Variants = () => `
44
- <div style="display: flex; flex-direction: column; gap: 24px;">
45
- <div>
46
- <p style="margin: 0 0 8px; font-family: sans-serif; font-size: 14px; color: #666;">Default</p>
47
- <ts-toolbar variant="default">
48
- <div slot="start">
49
- <ts-button size="sm" appearance="ghost">Bold</ts-button>
50
- <ts-button size="sm" appearance="ghost">Italic</ts-button>
51
- </div>
52
- </ts-toolbar>
53
- </div>
54
- <div>
55
- <p style="margin: 0 0 8px; font-family: sans-serif; font-size: 14px; color: #666;">Bordered</p>
56
- <ts-toolbar variant="bordered">
57
- <div slot="start">
58
- <ts-button size="sm" appearance="ghost">Bold</ts-button>
59
- <ts-button size="sm" appearance="ghost">Italic</ts-button>
60
- </div>
61
- </ts-toolbar>
62
- </div>
63
- <div>
64
- <p style="margin: 0 0 8px; font-family: sans-serif; font-size: 14px; color: #666;">Elevated</p>
65
- <ts-toolbar variant="elevated">
66
- <div slot="start">
67
- <ts-button size="sm" appearance="ghost">Bold</ts-button>
68
- <ts-button size="sm" appearance="ghost">Italic</ts-button>
69
- </div>
70
- </ts-toolbar>
71
- </div>
72
- </div>
73
- `;
74
- export const Sizes = () => `
75
- <div style="display: flex; flex-direction: column; gap: 24px;">
76
- <div>
77
- <p style="margin: 0 0 8px; font-family: sans-serif; font-size: 14px; color: #666;">Small</p>
78
- <ts-toolbar variant="bordered" size="sm">
79
- <div slot="start">
80
- <ts-button size="sm" appearance="ghost">B</ts-button>
81
- <ts-button size="sm" appearance="ghost">I</ts-button>
82
- <ts-button size="sm" appearance="ghost">U</ts-button>
83
- </div>
84
- </ts-toolbar>
85
- </div>
86
- <div>
87
- <p style="margin: 0 0 8px; font-family: sans-serif; font-size: 14px; color: #666;">Medium</p>
88
- <ts-toolbar variant="bordered" size="md">
89
- <div slot="start">
90
- <ts-button size="sm" appearance="ghost">B</ts-button>
91
- <ts-button size="sm" appearance="ghost">I</ts-button>
92
- <ts-button size="sm" appearance="ghost">U</ts-button>
93
- </div>
94
- </ts-toolbar>
95
- </div>
96
- <div>
97
- <p style="margin: 0 0 8px; font-family: sans-serif; font-size: 14px; color: #666;">Large</p>
98
- <ts-toolbar variant="bordered" size="lg">
99
- <div slot="start">
100
- <ts-button size="sm" appearance="ghost">B</ts-button>
101
- <ts-button size="sm" appearance="ghost">I</ts-button>
102
- <ts-button size="sm" appearance="ghost">U</ts-button>
103
- </div>
104
- </ts-toolbar>
105
- </div>
106
- </div>
107
- `;
108
- export const Composition = () => `
109
- <div style="max-width: 600px; font-family: sans-serif;">
110
- <div style="border: 1px solid #e2e8f0; border-radius: 8px; overflow: hidden;">
111
- <ts-toolbar variant="bordered">
112
- <div slot="start" style="display: flex; gap: 4px;">
113
- <ts-button size="sm" appearance="ghost">Bold</ts-button>
114
- <ts-button size="sm" appearance="ghost">Italic</ts-button>
115
- <ts-button size="sm" appearance="ghost">Underline</ts-button>
116
- <ts-divider orientation="vertical" style="height: 24px; margin: 0 4px;"></ts-divider>
117
- <ts-button size="sm" appearance="ghost">Link</ts-button>
118
- <ts-button size="sm" appearance="ghost">Image</ts-button>
119
- </div>
120
- <div slot="end" style="display: flex; gap: 4px;">
121
- <ts-button size="sm" appearance="ghost">Undo</ts-button>
122
- <ts-button size="sm" appearance="ghost">Redo</ts-button>
123
- </div>
124
- </ts-toolbar>
125
- <div style="padding: 16px; min-height: 200px;">
126
- <p style="color: #94a3b8; margin: 0;">Start typing here...</p>
127
- </div>
128
- </div>
129
- </div>
130
- `;
131
- //# sourceMappingURL=toolbar.stories.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"toolbar.stories.js","sourceRoot":"","sources":["../../../src/components/toolbar/toolbar.stories.ts"],"names":[],"mappings":"AAAA,sCAAsC;AAEtC,eAAe;IACb,KAAK,EAAE,oBAAoB;IAC3B,IAAI,EAAE,CAAC,UAAU,CAAC;IAClB,QAAQ,EAAE;QACR,OAAO,EAAE;YACP,OAAO,EAAE,QAAQ;YACjB,OAAO,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC;YAC5C,WAAW,EAAE,4BAA4B;SAC1C;QACD,IAAI,EAAE;YACJ,OAAO,EAAE,QAAQ;YACjB,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;YAC3B,WAAW,EAAE,mBAAmB;SACjC;KACF;CACF,CAAC;AAEF,MAAM,QAAQ,GAAG,CAAC,IAA6B,EAAU,EAAE;IACzD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;QAAE,KAAK,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;IACxE,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS;QAAE,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;IAC/D,OAAO;kBACS,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC;;;;;;;;;;GAU9B,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAwD,EAAE;IAC7G,IAAI,EAAE;QACJ,OAAO,EAAE,UAAU;QACnB,IAAI,EAAE,IAAI;KACX;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAW,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8BrC,CAAC;AAEF,MAAM,CAAC,MAAM,KAAK,GAAG,GAAW,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiClC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,GAAW,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;CAsBxC,CAAC","sourcesContent":["// Hand-written stories for ts-toolbar\n\nexport default {\n title: 'Components/Toolbar',\n tags: ['autodocs'],\n argTypes: {\n variant: {\n control: 'select',\n options: ['default', 'bordered', 'elevated'],\n description: 'The toolbar variant style.',\n },\n size: {\n control: 'select',\n options: ['sm', 'md', 'lg'],\n description: 'The toolbar size.',\n },\n },\n};\n\nconst Template = (args: Record<string, unknown>): string => {\n const attrs: string[] = [];\n if (args.variant !== undefined) attrs.push(`variant=\"${args.variant}\"`);\n if (args.size !== undefined) attrs.push(`size=\"${args.size}\"`);\n return `\n <ts-toolbar ${attrs.join(' ')}>\n <div slot=\"start\">\n <ts-button size=\"sm\" appearance=\"ghost\">Bold</ts-button>\n <ts-button size=\"sm\" appearance=\"ghost\">Italic</ts-button>\n <ts-button size=\"sm\" appearance=\"ghost\">Underline</ts-button>\n </div>\n <div slot=\"end\">\n <ts-button size=\"sm\" appearance=\"outline\">Preview</ts-button>\n </div>\n </ts-toolbar>\n `;\n};\n\nexport const Default = Object.assign(Template.bind({}) as typeof Template & { args: Record<string, unknown> }, {\n args: {\n variant: 'bordered',\n size: 'md',\n },\n});\n\nexport const Variants = (): string => `\n <div style=\"display: flex; flex-direction: column; gap: 24px;\">\n <div>\n <p style=\"margin: 0 0 8px; font-family: sans-serif; font-size: 14px; color: #666;\">Default</p>\n <ts-toolbar variant=\"default\">\n <div slot=\"start\">\n <ts-button size=\"sm\" appearance=\"ghost\">Bold</ts-button>\n <ts-button size=\"sm\" appearance=\"ghost\">Italic</ts-button>\n </div>\n </ts-toolbar>\n </div>\n <div>\n <p style=\"margin: 0 0 8px; font-family: sans-serif; font-size: 14px; color: #666;\">Bordered</p>\n <ts-toolbar variant=\"bordered\">\n <div slot=\"start\">\n <ts-button size=\"sm\" appearance=\"ghost\">Bold</ts-button>\n <ts-button size=\"sm\" appearance=\"ghost\">Italic</ts-button>\n </div>\n </ts-toolbar>\n </div>\n <div>\n <p style=\"margin: 0 0 8px; font-family: sans-serif; font-size: 14px; color: #666;\">Elevated</p>\n <ts-toolbar variant=\"elevated\">\n <div slot=\"start\">\n <ts-button size=\"sm\" appearance=\"ghost\">Bold</ts-button>\n <ts-button size=\"sm\" appearance=\"ghost\">Italic</ts-button>\n </div>\n </ts-toolbar>\n </div>\n </div>\n`;\n\nexport const Sizes = (): string => `\n <div style=\"display: flex; flex-direction: column; gap: 24px;\">\n <div>\n <p style=\"margin: 0 0 8px; font-family: sans-serif; font-size: 14px; color: #666;\">Small</p>\n <ts-toolbar variant=\"bordered\" size=\"sm\">\n <div slot=\"start\">\n <ts-button size=\"sm\" appearance=\"ghost\">B</ts-button>\n <ts-button size=\"sm\" appearance=\"ghost\">I</ts-button>\n <ts-button size=\"sm\" appearance=\"ghost\">U</ts-button>\n </div>\n </ts-toolbar>\n </div>\n <div>\n <p style=\"margin: 0 0 8px; font-family: sans-serif; font-size: 14px; color: #666;\">Medium</p>\n <ts-toolbar variant=\"bordered\" size=\"md\">\n <div slot=\"start\">\n <ts-button size=\"sm\" appearance=\"ghost\">B</ts-button>\n <ts-button size=\"sm\" appearance=\"ghost\">I</ts-button>\n <ts-button size=\"sm\" appearance=\"ghost\">U</ts-button>\n </div>\n </ts-toolbar>\n </div>\n <div>\n <p style=\"margin: 0 0 8px; font-family: sans-serif; font-size: 14px; color: #666;\">Large</p>\n <ts-toolbar variant=\"bordered\" size=\"lg\">\n <div slot=\"start\">\n <ts-button size=\"sm\" appearance=\"ghost\">B</ts-button>\n <ts-button size=\"sm\" appearance=\"ghost\">I</ts-button>\n <ts-button size=\"sm\" appearance=\"ghost\">U</ts-button>\n </div>\n </ts-toolbar>\n </div>\n </div>\n`;\n\nexport const Composition = (): string => `\n <div style=\"max-width: 600px; font-family: sans-serif;\">\n <div style=\"border: 1px solid #e2e8f0; border-radius: 8px; overflow: hidden;\">\n <ts-toolbar variant=\"bordered\">\n <div slot=\"start\" style=\"display: flex; gap: 4px;\">\n <ts-button size=\"sm\" appearance=\"ghost\">Bold</ts-button>\n <ts-button size=\"sm\" appearance=\"ghost\">Italic</ts-button>\n <ts-button size=\"sm\" appearance=\"ghost\">Underline</ts-button>\n <ts-divider orientation=\"vertical\" style=\"height: 24px; margin: 0 4px;\"></ts-divider>\n <ts-button size=\"sm\" appearance=\"ghost\">Link</ts-button>\n <ts-button size=\"sm\" appearance=\"ghost\">Image</ts-button>\n </div>\n <div slot=\"end\" style=\"display: flex; gap: 4px;\">\n <ts-button size=\"sm\" appearance=\"ghost\">Undo</ts-button>\n <ts-button size=\"sm\" appearance=\"ghost\">Redo</ts-button>\n </div>\n </ts-toolbar>\n <div style=\"padding: 16px; min-height: 200px;\">\n <p style=\"color: #94a3b8; margin: 0;\">Start typing here...</p>\n </div>\n </div>\n </div>\n`;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"tooltip.js","sourceRoot":"","sources":["../../../src/components/tooltip/tooltip.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Prop, State, h, Host, Element, Method } from '@stencil/core';\nimport type { TsPlacement } from '../../types';\nimport { generateId } from '../../utils/aria';\n\n/**\n * @slot - Default slot for the trigger element.\n *\n * @part base - The tooltip popup container.\n * @part arrow - The tooltip arrow element.\n */\n@Component({\n tag: 'ts-tooltip',\n styleUrl: 'tooltip.css',\n shadow: true,\n})\nexport class TsTooltip {\n @Element() hostEl!: HTMLElement;\n\n private tooltipId = generateId('ts-tooltip');\n\n /** The tooltip text content. */\n @Prop() content = '';\n\n /** Placement of the tooltip relative to the trigger. */\n @Prop({ reflect: true }) placement: TsPlacement = 'top';\n\n /** Delay in ms before showing the tooltip. */\n @Prop() showDelay = 200;\n\n /** Delay in ms before hiding the tooltip. */\n @Prop() hideDelay = 0;\n\n /** Disables the tooltip. */\n @Prop({ reflect: true }) disabled = false;\n\n /** Whether the tooltip is currently visible. */\n @State() isVisible = false;\n\n private showTimeout?: ReturnType<typeof setTimeout>;\n private hideTimeout?: ReturnType<typeof setTimeout>;\n\n /** Programmatically show the tooltip. */\n @Method()\n async show(): Promise<void> {\n if (this.disabled) return;\n clearTimeout(this.hideTimeout);\n this.showTimeout = setTimeout(() => {\n this.isVisible = true;\n }, this.showDelay);\n }\n\n /** Programmatically hide the tooltip. */\n @Method()\n async hide(): Promise<void> {\n clearTimeout(this.showTimeout);\n this.hideTimeout = setTimeout(() => {\n this.isVisible = false;\n }, this.hideDelay);\n }\n\n disconnectedCallback(): void {\n clearTimeout(this.showTimeout);\n clearTimeout(this.hideTimeout);\n }\n\n private handleMouseEnter = (): void => {\n this.show();\n };\n\n private handleMouseLeave = (): void => {\n this.hide();\n };\n\n private handleFocusIn = (): void => {\n this.show();\n };\n\n private handleFocusOut = (): void => {\n this.hide();\n };\n\n private handleKeydown = (event: KeyboardEvent): void => {\n if (event.key === 'Escape' && this.isVisible) {\n this.hide();\n }\n };\n\n // eslint-disable-next-line @typescript-eslint/explicit-function-return-type\n render() {\n return (\n <Host\n class={{\n 'ts-tooltip': true,\n 'ts-tooltip--visible': this.isVisible,\n }}\n onMouseEnter={this.handleMouseEnter}\n onMouseLeave={this.handleMouseLeave}\n onFocusin={this.handleFocusIn}\n onFocusout={this.handleFocusOut}\n onKeyDown={this.handleKeydown}\n >\n <span class=\"tooltip__trigger\" aria-describedby={this.isVisible ? this.tooltipId : undefined}>\n <slot />\n </span>\n\n <div\n class={{\n 'tooltip__popup': true,\n [`tooltip__popup--${this.placement}`]: true,\n 'tooltip__popup--visible': this.isVisible,\n }}\n part=\"base\"\n id={this.tooltipId}\n role=\"tooltip\"\n aria-hidden={!this.isVisible ? 'true' : undefined}\n >\n {this.content}\n <div class=\"tooltip__arrow\" part=\"arrow\" />\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -1,186 +0,0 @@
1
- // Hand-written stories for ts-tooltip
2
- export default {
3
- title: 'Components/Tooltip',
4
- tags: ['autodocs'],
5
- argTypes: {
6
- content: { control: 'text', description: 'The tooltip text content.' },
7
- placement: {
8
- control: 'select',
9
- options: ['top', 'top-start', 'top-end', 'bottom', 'bottom-start', 'bottom-end', 'left', 'left-start', 'left-end', 'right', 'right-start', 'right-end'],
10
- description: 'Placement of the tooltip relative to the trigger.',
11
- },
12
- showDelay: { control: 'number', description: 'Delay in ms before showing the tooltip.' },
13
- hideDelay: { control: 'number', description: 'Delay in ms before hiding the tooltip.' },
14
- disabled: { control: 'boolean', description: 'Disables the tooltip.' },
15
- },
16
- };
17
- const Template = (args) => {
18
- const attrs = [];
19
- if (args.content !== undefined && args.content !== null)
20
- attrs.push(`content="${args.content}"`);
21
- if (args.placement !== undefined && args.placement !== null)
22
- attrs.push(`placement="${args.placement}"`);
23
- if (args.showDelay !== undefined && args.showDelay !== null)
24
- attrs.push(`show-delay="${args.showDelay}"`);
25
- if (args.hideDelay !== undefined && args.hideDelay !== null)
26
- attrs.push(`hide-delay="${args.hideDelay}"`);
27
- if (args.disabled)
28
- attrs.push('disabled');
29
- return `<div style="padding: 60px; display: flex; justify-content: center;">
30
- <ts-tooltip ${attrs.join(' ')}>
31
- <ts-button variant="primary">Hover Me</ts-button>
32
- </ts-tooltip>
33
- </div>`;
34
- };
35
- export const Default = Object.assign(Template.bind({}), {
36
- args: {
37
- content: 'Save your current changes',
38
- placement: 'top',
39
- showDelay: 200,
40
- hideDelay: 0,
41
- disabled: false,
42
- },
43
- });
44
- export const Placements = () => `
45
- <div style="display: flex; flex-direction: column; gap: 16px; align-items: center; padding: 80px 40px;">
46
- <div style="display: flex; gap: 16px; justify-content: center;">
47
- <ts-tooltip content="Top Start" placement="top-start">
48
- <ts-button size="sm" appearance="outline" variant="neutral">Top Start</ts-button>
49
- </ts-tooltip>
50
- <ts-tooltip content="Top" placement="top">
51
- <ts-button size="sm" appearance="outline" variant="neutral">Top</ts-button>
52
- </ts-tooltip>
53
- <ts-tooltip content="Top End" placement="top-end">
54
- <ts-button size="sm" appearance="outline" variant="neutral">Top End</ts-button>
55
- </ts-tooltip>
56
- </div>
57
-
58
- <div style="display: flex; gap: 200px; justify-content: center;">
59
- <div style="display: flex; flex-direction: column; gap: 16px;">
60
- <ts-tooltip content="Left Start" placement="left-start">
61
- <ts-button size="sm" appearance="outline" variant="neutral">Left Start</ts-button>
62
- </ts-tooltip>
63
- <ts-tooltip content="Left" placement="left">
64
- <ts-button size="sm" appearance="outline" variant="neutral">Left</ts-button>
65
- </ts-tooltip>
66
- <ts-tooltip content="Left End" placement="left-end">
67
- <ts-button size="sm" appearance="outline" variant="neutral">Left End</ts-button>
68
- </ts-tooltip>
69
- </div>
70
- <div style="display: flex; flex-direction: column; gap: 16px;">
71
- <ts-tooltip content="Right Start" placement="right-start">
72
- <ts-button size="sm" appearance="outline" variant="neutral">Right Start</ts-button>
73
- </ts-tooltip>
74
- <ts-tooltip content="Right" placement="right">
75
- <ts-button size="sm" appearance="outline" variant="neutral">Right</ts-button>
76
- </ts-tooltip>
77
- <ts-tooltip content="Right End" placement="right-end">
78
- <ts-button size="sm" appearance="outline" variant="neutral">Right End</ts-button>
79
- </ts-tooltip>
80
- </div>
81
- </div>
82
-
83
- <div style="display: flex; gap: 16px; justify-content: center;">
84
- <ts-tooltip content="Bottom Start" placement="bottom-start">
85
- <ts-button size="sm" appearance="outline" variant="neutral">Bottom Start</ts-button>
86
- </ts-tooltip>
87
- <ts-tooltip content="Bottom" placement="bottom">
88
- <ts-button size="sm" appearance="outline" variant="neutral">Bottom</ts-button>
89
- </ts-tooltip>
90
- <ts-tooltip content="Bottom End" placement="bottom-end">
91
- <ts-button size="sm" appearance="outline" variant="neutral">Bottom End</ts-button>
92
- </ts-tooltip>
93
- </div>
94
- </div>
95
- `;
96
- export const States = () => `
97
- <div style="display: flex; gap: 24px; align-items: center; flex-wrap: wrap; padding: 60px 40px;">
98
- <ts-tooltip content="This tooltip is active" placement="top">
99
- <ts-button variant="primary">Active Tooltip</ts-button>
100
- </ts-tooltip>
101
- <ts-tooltip content="This tooltip is disabled" placement="top" disabled>
102
- <ts-button appearance="outline" variant="neutral">Disabled Tooltip</ts-button>
103
- </ts-tooltip>
104
- <ts-tooltip content="Shows after 500ms" placement="top" show-delay="500">
105
- <ts-button appearance="outline" variant="neutral">Slow Show (500ms)</ts-button>
106
- </ts-tooltip>
107
- <ts-tooltip content="Hides after 300ms" placement="top" hide-delay="300">
108
- <ts-button appearance="outline" variant="neutral">Slow Hide (300ms)</ts-button>
109
- </ts-tooltip>
110
- </div>
111
- `;
112
- export const WithIcons = () => `
113
- <div style="display: flex; gap: 16px; align-items: center; flex-wrap: wrap; padding: 60px 40px;">
114
- <ts-tooltip content="Create a new document" placement="top">
115
- <ts-button appearance="ghost" variant="neutral">
116
- <ts-icon slot="prefix" name="file-plus" size="sm"></ts-icon>
117
- </ts-button>
118
- </ts-tooltip>
119
- <ts-tooltip content="Edit this item" placement="top">
120
- <ts-button appearance="ghost" variant="neutral">
121
- <ts-icon slot="prefix" name="pencil" size="sm"></ts-icon>
122
- </ts-button>
123
- </ts-tooltip>
124
- <ts-tooltip content="Copy to clipboard" placement="top">
125
- <ts-button appearance="ghost" variant="neutral">
126
- <ts-icon slot="prefix" name="copy" size="sm"></ts-icon>
127
- </ts-button>
128
- </ts-tooltip>
129
- <ts-tooltip content="Delete permanently" placement="top">
130
- <ts-button appearance="ghost" variant="danger">
131
- <ts-icon slot="prefix" name="trash-2" size="sm"></ts-icon>
132
- </ts-button>
133
- </ts-tooltip>
134
- <ts-tooltip content="Share with team" placement="top">
135
- <ts-button appearance="ghost" variant="primary">
136
- <ts-icon slot="prefix" name="share-2" size="sm"></ts-icon>
137
- </ts-button>
138
- </ts-tooltip>
139
- </div>
140
- `;
141
- export const Composition = () => `
142
- <div style="display: flex; flex-direction: column; gap: 24px; max-width: 500px; padding: 40px;">
143
- <ts-card bordered padding="lg">
144
- <span slot="header">
145
- <div style="display: flex; justify-content: space-between; align-items: center;">
146
- <h3 style="margin: 0;">Quick Actions</h3>
147
- <ts-tooltip content="Keyboard shortcuts available" placement="left">
148
- <ts-icon name="keyboard" size="sm" color="var(--ts-color-text-secondary)"></ts-icon>
149
- </ts-tooltip>
150
- </div>
151
- </span>
152
- <div style="display: flex; gap: 8px; flex-wrap: wrap;">
153
- <ts-tooltip content="Create new project (Ctrl+N)" placement="bottom">
154
- <ts-button size="sm" variant="primary">
155
- <ts-icon slot="prefix" name="plus" size="sm"></ts-icon>
156
- New Project
157
- </ts-button>
158
- </ts-tooltip>
159
- <ts-tooltip content="Import from file (Ctrl+I)" placement="bottom">
160
- <ts-button size="sm" appearance="outline" variant="neutral">
161
- <ts-icon slot="prefix" name="upload" size="sm"></ts-icon>
162
- Import
163
- </ts-button>
164
- </ts-tooltip>
165
- <ts-tooltip content="Export as PDF (Ctrl+E)" placement="bottom">
166
- <ts-button size="sm" appearance="outline" variant="neutral">
167
- <ts-icon slot="prefix" name="download" size="sm"></ts-icon>
168
- Export
169
- </ts-button>
170
- </ts-tooltip>
171
- </div>
172
- </ts-card>
173
-
174
- <div style="display: flex; align-items: center; gap: 12px;">
175
- <ts-input placeholder="Enter your API key" label="API Key" style="flex: 1;">
176
- <ts-icon slot="prefix" name="key" size="sm"></ts-icon>
177
- </ts-input>
178
- <div style="align-self: flex-end; padding-bottom: 2px;">
179
- <ts-tooltip content="Your API key can be found in Settings > Developer" placement="right">
180
- <ts-icon name="help-circle" size="sm" color="var(--ts-color-text-secondary)"></ts-icon>
181
- </ts-tooltip>
182
- </div>
183
- </div>
184
- </div>
185
- `;
186
- //# sourceMappingURL=tooltip.stories.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tooltip.stories.js","sourceRoot":"","sources":["../../../src/components/tooltip/tooltip.stories.ts"],"names":[],"mappings":"AAAA,sCAAsC;AAEtC,eAAe;IACb,KAAK,EAAE,oBAAoB;IAC3B,IAAI,EAAE,CAAC,UAAU,CAAC;IAClB,QAAQ,EAAE;QACR,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,2BAA2B,EAAE;QACtE,SAAS,EAAE;YACT,OAAO,EAAE,QAAQ;YACjB,OAAO,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,WAAW,CAAC;YACvJ,WAAW,EAAE,mDAAmD;SACjE;QACD,SAAS,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,yCAAyC,EAAE;QACxF,SAAS,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,wCAAwC,EAAE;QACvF,QAAQ,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,uBAAuB,EAAE;KACvE;CACF,CAAC;AAEF,MAAM,QAAQ,GAAG,CAAC,IAA6B,EAAU,EAAE;IACzD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;IACjG,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;IACzG,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;IAC1G,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;IAC1G,IAAI,IAAI,CAAC,QAAQ;QAAE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC1C,OAAO;kBACS,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC;;;SAGxB,CAAC;AACV,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAwD,EAAE;IAC7G,IAAI,EAAE;QACJ,OAAO,EAAE,2BAA2B;QACpC,SAAS,EAAE,KAAK;QAChB,SAAS,EAAE,GAAG;QACd,SAAS,EAAE,CAAC;QACZ,QAAQ,EAAE,KAAK;KAChB;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,UAAU,GAAG,GAAW,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmDvC,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,GAAW,EAAE,CAAC;;;;;;;;;;;;;;;CAenC,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG,GAAW,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4BtC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,GAAW,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4CxC,CAAC","sourcesContent":["// Hand-written stories for ts-tooltip\n\nexport default {\n title: 'Components/Tooltip',\n tags: ['autodocs'],\n argTypes: {\n content: { control: 'text', description: 'The tooltip text content.' },\n placement: {\n control: 'select',\n options: ['top', 'top-start', 'top-end', 'bottom', 'bottom-start', 'bottom-end', 'left', 'left-start', 'left-end', 'right', 'right-start', 'right-end'],\n description: 'Placement of the tooltip relative to the trigger.',\n },\n showDelay: { control: 'number', description: 'Delay in ms before showing the tooltip.' },\n hideDelay: { control: 'number', description: 'Delay in ms before hiding the tooltip.' },\n disabled: { control: 'boolean', description: 'Disables the tooltip.' },\n },\n};\n\nconst Template = (args: Record<string, unknown>): string => {\n const attrs: string[] = [];\n if (args.content !== undefined && args.content !== null) attrs.push(`content=\"${args.content}\"`);\n if (args.placement !== undefined && args.placement !== null) attrs.push(`placement=\"${args.placement}\"`);\n if (args.showDelay !== undefined && args.showDelay !== null) attrs.push(`show-delay=\"${args.showDelay}\"`);\n if (args.hideDelay !== undefined && args.hideDelay !== null) attrs.push(`hide-delay=\"${args.hideDelay}\"`);\n if (args.disabled) attrs.push('disabled');\n return `<div style=\"padding: 60px; display: flex; justify-content: center;\">\n <ts-tooltip ${attrs.join(' ')}>\n <ts-button variant=\"primary\">Hover Me</ts-button>\n </ts-tooltip>\n </div>`;\n};\n\nexport const Default = Object.assign(Template.bind({}) as typeof Template & { args: Record<string, unknown> }, {\n args: {\n content: 'Save your current changes',\n placement: 'top',\n showDelay: 200,\n hideDelay: 0,\n disabled: false,\n },\n});\n\nexport const Placements = (): string => `\n <div style=\"display: flex; flex-direction: column; gap: 16px; align-items: center; padding: 80px 40px;\">\n <div style=\"display: flex; gap: 16px; justify-content: center;\">\n <ts-tooltip content=\"Top Start\" placement=\"top-start\">\n <ts-button size=\"sm\" appearance=\"outline\" variant=\"neutral\">Top Start</ts-button>\n </ts-tooltip>\n <ts-tooltip content=\"Top\" placement=\"top\">\n <ts-button size=\"sm\" appearance=\"outline\" variant=\"neutral\">Top</ts-button>\n </ts-tooltip>\n <ts-tooltip content=\"Top End\" placement=\"top-end\">\n <ts-button size=\"sm\" appearance=\"outline\" variant=\"neutral\">Top End</ts-button>\n </ts-tooltip>\n </div>\n\n <div style=\"display: flex; gap: 200px; justify-content: center;\">\n <div style=\"display: flex; flex-direction: column; gap: 16px;\">\n <ts-tooltip content=\"Left Start\" placement=\"left-start\">\n <ts-button size=\"sm\" appearance=\"outline\" variant=\"neutral\">Left Start</ts-button>\n </ts-tooltip>\n <ts-tooltip content=\"Left\" placement=\"left\">\n <ts-button size=\"sm\" appearance=\"outline\" variant=\"neutral\">Left</ts-button>\n </ts-tooltip>\n <ts-tooltip content=\"Left End\" placement=\"left-end\">\n <ts-button size=\"sm\" appearance=\"outline\" variant=\"neutral\">Left End</ts-button>\n </ts-tooltip>\n </div>\n <div style=\"display: flex; flex-direction: column; gap: 16px;\">\n <ts-tooltip content=\"Right Start\" placement=\"right-start\">\n <ts-button size=\"sm\" appearance=\"outline\" variant=\"neutral\">Right Start</ts-button>\n </ts-tooltip>\n <ts-tooltip content=\"Right\" placement=\"right\">\n <ts-button size=\"sm\" appearance=\"outline\" variant=\"neutral\">Right</ts-button>\n </ts-tooltip>\n <ts-tooltip content=\"Right End\" placement=\"right-end\">\n <ts-button size=\"sm\" appearance=\"outline\" variant=\"neutral\">Right End</ts-button>\n </ts-tooltip>\n </div>\n </div>\n\n <div style=\"display: flex; gap: 16px; justify-content: center;\">\n <ts-tooltip content=\"Bottom Start\" placement=\"bottom-start\">\n <ts-button size=\"sm\" appearance=\"outline\" variant=\"neutral\">Bottom Start</ts-button>\n </ts-tooltip>\n <ts-tooltip content=\"Bottom\" placement=\"bottom\">\n <ts-button size=\"sm\" appearance=\"outline\" variant=\"neutral\">Bottom</ts-button>\n </ts-tooltip>\n <ts-tooltip content=\"Bottom End\" placement=\"bottom-end\">\n <ts-button size=\"sm\" appearance=\"outline\" variant=\"neutral\">Bottom End</ts-button>\n </ts-tooltip>\n </div>\n </div>\n`;\n\nexport const States = (): string => `\n <div style=\"display: flex; gap: 24px; align-items: center; flex-wrap: wrap; padding: 60px 40px;\">\n <ts-tooltip content=\"This tooltip is active\" placement=\"top\">\n <ts-button variant=\"primary\">Active Tooltip</ts-button>\n </ts-tooltip>\n <ts-tooltip content=\"This tooltip is disabled\" placement=\"top\" disabled>\n <ts-button appearance=\"outline\" variant=\"neutral\">Disabled Tooltip</ts-button>\n </ts-tooltip>\n <ts-tooltip content=\"Shows after 500ms\" placement=\"top\" show-delay=\"500\">\n <ts-button appearance=\"outline\" variant=\"neutral\">Slow Show (500ms)</ts-button>\n </ts-tooltip>\n <ts-tooltip content=\"Hides after 300ms\" placement=\"top\" hide-delay=\"300\">\n <ts-button appearance=\"outline\" variant=\"neutral\">Slow Hide (300ms)</ts-button>\n </ts-tooltip>\n </div>\n`;\n\nexport const WithIcons = (): string => `\n <div style=\"display: flex; gap: 16px; align-items: center; flex-wrap: wrap; padding: 60px 40px;\">\n <ts-tooltip content=\"Create a new document\" placement=\"top\">\n <ts-button appearance=\"ghost\" variant=\"neutral\">\n <ts-icon slot=\"prefix\" name=\"file-plus\" size=\"sm\"></ts-icon>\n </ts-button>\n </ts-tooltip>\n <ts-tooltip content=\"Edit this item\" placement=\"top\">\n <ts-button appearance=\"ghost\" variant=\"neutral\">\n <ts-icon slot=\"prefix\" name=\"pencil\" size=\"sm\"></ts-icon>\n </ts-button>\n </ts-tooltip>\n <ts-tooltip content=\"Copy to clipboard\" placement=\"top\">\n <ts-button appearance=\"ghost\" variant=\"neutral\">\n <ts-icon slot=\"prefix\" name=\"copy\" size=\"sm\"></ts-icon>\n </ts-button>\n </ts-tooltip>\n <ts-tooltip content=\"Delete permanently\" placement=\"top\">\n <ts-button appearance=\"ghost\" variant=\"danger\">\n <ts-icon slot=\"prefix\" name=\"trash-2\" size=\"sm\"></ts-icon>\n </ts-button>\n </ts-tooltip>\n <ts-tooltip content=\"Share with team\" placement=\"top\">\n <ts-button appearance=\"ghost\" variant=\"primary\">\n <ts-icon slot=\"prefix\" name=\"share-2\" size=\"sm\"></ts-icon>\n </ts-button>\n </ts-tooltip>\n </div>\n`;\n\nexport const Composition = (): string => `\n <div style=\"display: flex; flex-direction: column; gap: 24px; max-width: 500px; padding: 40px;\">\n <ts-card bordered padding=\"lg\">\n <span slot=\"header\">\n <div style=\"display: flex; justify-content: space-between; align-items: center;\">\n <h3 style=\"margin: 0;\">Quick Actions</h3>\n <ts-tooltip content=\"Keyboard shortcuts available\" placement=\"left\">\n <ts-icon name=\"keyboard\" size=\"sm\" color=\"var(--ts-color-text-secondary)\"></ts-icon>\n </ts-tooltip>\n </div>\n </span>\n <div style=\"display: flex; gap: 8px; flex-wrap: wrap;\">\n <ts-tooltip content=\"Create new project (Ctrl+N)\" placement=\"bottom\">\n <ts-button size=\"sm\" variant=\"primary\">\n <ts-icon slot=\"prefix\" name=\"plus\" size=\"sm\"></ts-icon>\n New Project\n </ts-button>\n </ts-tooltip>\n <ts-tooltip content=\"Import from file (Ctrl+I)\" placement=\"bottom\">\n <ts-button size=\"sm\" appearance=\"outline\" variant=\"neutral\">\n <ts-icon slot=\"prefix\" name=\"upload\" size=\"sm\"></ts-icon>\n Import\n </ts-button>\n </ts-tooltip>\n <ts-tooltip content=\"Export as PDF (Ctrl+E)\" placement=\"bottom\">\n <ts-button size=\"sm\" appearance=\"outline\" variant=\"neutral\">\n <ts-icon slot=\"prefix\" name=\"download\" size=\"sm\"></ts-icon>\n Export\n </ts-button>\n </ts-tooltip>\n </div>\n </ts-card>\n\n <div style=\"display: flex; align-items: center; gap: 12px;\">\n <ts-input placeholder=\"Enter your API key\" label=\"API Key\" style=\"flex: 1;\">\n <ts-icon slot=\"prefix\" name=\"key\" size=\"sm\"></ts-icon>\n </ts-input>\n <div style=\"align-self: flex-end; padding-bottom: 2px;\">\n <ts-tooltip content=\"Your API key can be found in Settings > Developer\" placement=\"right\">\n <ts-icon name=\"help-circle\" size=\"sm\" color=\"var(--ts-color-text-secondary)\"></ts-icon>\n </ts-tooltip>\n </div>\n </div>\n </div>\n`;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"tree-item.js","sourceRoot":"","sources":["../../../src/components/tree/tree-item.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Prop, Event, State, h, Host, Element, Watch } from '@stencil/core';\nimport type { EventEmitter } from '@stencil/core';\n\n/**\n * @slot - Default slot for nested ts-tree-item children.\n * @slot label - Custom label content.\n *\n * @part base - The tree item container.\n * @part label - The label wrapper.\n * @part chevron - The expand/collapse chevron.\n * @part icon - The icon wrapper.\n */\n@Component({\n tag: 'ts-tree-item',\n styleUrl: 'tree-item.css',\n shadow: true,\n})\nexport class TsTreeItem {\n @Element() hostEl!: HTMLElement;\n\n /** The item label. */\n @Prop() label?: string;\n\n /** Whether the item is expanded (has children). */\n @Prop({ reflect: true, mutable: true }) expanded = false;\n\n /** Whether the item is selected. */\n @Prop({ reflect: true, mutable: true }) selected = false;\n\n /** Whether the item is disabled. */\n @Prop({ reflect: true }) disabled = false;\n\n /** Optional Lucide icon name. */\n @Prop() icon?: string;\n\n /** Whether this item has slotted children (expandable). */\n @State() hasChildren = false;\n\n /** Emitted when expand/collapse is toggled. */\n @Event({ eventName: 'tsToggle' }) tsToggle!: EventEmitter<{ expanded: boolean }>;\n\n /** Emitted when the item is selected. */\n @Event({ eventName: 'tsSelect' }) tsSelect!: EventEmitter<{ selected: boolean; value: string }>;\n\n @Watch('expanded')\n onExpandedChange(): void {\n this.tsToggle.emit({ expanded: this.expanded });\n }\n\n componentDidLoad(): void {\n this.checkForChildren();\n }\n\n private checkForChildren(): void {\n const slot = this.hostEl.shadowRoot?.querySelector('slot:not([name])') as HTMLSlotElement;\n if (slot) {\n const assigned = slot.assignedElements();\n this.hasChildren = assigned.some(el => el.tagName === 'TS-TREE-ITEM');\n }\n }\n\n private handleToggle = (event: MouseEvent): void => {\n event.stopPropagation();\n if (this.disabled) return;\n this.expanded = !this.expanded;\n };\n\n private handleSelect = (): void => {\n if (this.disabled) return;\n const tree = this.hostEl.closest('ts-tree');\n if (tree && (tree as unknown as { selectable: boolean }).selectable) {\n this.selected = !this.selected;\n this.tsSelect.emit({ selected: this.selected, value: this.label || '' });\n }\n };\n\n private handleKeyDown = (event: KeyboardEvent): void => {\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n this.handleSelect();\n }\n };\n\n private handleSlotChange = (): void => {\n this.checkForChildren();\n };\n\n // eslint-disable-next-line @typescript-eslint/explicit-function-return-type\n render() {\n return (\n <Host\n class={{\n 'ts-tree-item': true,\n 'ts-tree-item--expanded': this.expanded,\n 'ts-tree-item--selected': this.selected,\n 'ts-tree-item--disabled': this.disabled,\n 'ts-tree-item--has-children': this.hasChildren,\n }}\n role=\"treeitem\"\n tabindex={this.disabled ? -1 : 0}\n aria-expanded={this.hasChildren ? String(this.expanded) : undefined}\n aria-selected={String(this.selected)}\n aria-disabled={this.disabled ? 'true' : undefined}\n onKeyDown={this.handleKeyDown}\n >\n <div class=\"tree-item__base\" part=\"base\" onClick={this.handleSelect}>\n <span\n class={{\n 'tree-item__chevron': true,\n 'tree-item__chevron--hidden': !this.hasChildren,\n }}\n part=\"chevron\"\n onClick={this.handleToggle}\n aria-hidden=\"true\"\n >\n <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\n <polyline points=\"9 18 15 12 9 6\" />\n </svg>\n </span>\n\n {this.icon && (\n <span class=\"tree-item__icon\" part=\"icon\" aria-hidden=\"true\">\n <ts-icon name={this.icon} size=\"sm\" />\n </span>\n )}\n\n <span class=\"tree-item__label\" part=\"label\">\n <slot name=\"label\">{this.label}</slot>\n </span>\n </div>\n\n <div\n class={{\n 'tree-item__children': true,\n 'tree-item__children--collapsed': !this.expanded,\n }}\n role=\"group\"\n >\n <slot onSlotchange={this.handleSlotChange} />\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -1,4 +0,0 @@
1
- // Stories for ts-tree-item are in the parent component's stories file
2
- // This file exists only to prevent auto-generation
3
- export default { title: 'Internal/tree-item', tags: ['!autodocs'] };
4
- //# sourceMappingURL=tree-item.stories.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tree-item.stories.js","sourceRoot":"","sources":["../../../src/components/tree/tree-item.stories.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,mDAAmD;AAEnD,eAAe,EAAE,KAAK,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC","sourcesContent":["// Stories for ts-tree-item are in the parent component's stories file\n// This file exists only to prevent auto-generation\n\nexport default { title: 'Internal/tree-item', tags: ['!autodocs'] };\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"tree.js","sourceRoot":"","sources":["../../../src/components/tree/tree.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Prop, h, Host, Element, Listen } from '@stencil/core';\n\n/**\n * @slot - Default slot for ts-tree-item children.\n *\n * @part base - The tree container.\n */\n@Component({\n tag: 'ts-tree',\n styleUrl: 'tree.css',\n shadow: true,\n})\nexport class TsTree {\n @Element() hostEl!: HTMLElement;\n\n /** Enable item selection mode. */\n @Prop({ reflect: true }) selectable = false;\n\n @Listen('keydown')\n handleKeyDown(event: KeyboardEvent): void {\n const items = this.getVisibleItems();\n if (items.length === 0) return;\n\n const focused = document.activeElement as HTMLElement;\n const currentIndex = items.indexOf(focused);\n if (currentIndex === -1) return;\n\n const currentItem = items[currentIndex] as HTMLTsTreeItemElement;\n\n switch (event.key) {\n case 'ArrowDown':\n event.preventDefault();\n if (currentIndex < items.length - 1) {\n items[currentIndex + 1].focus();\n }\n break;\n case 'ArrowUp':\n event.preventDefault();\n if (currentIndex > 0) {\n items[currentIndex - 1].focus();\n }\n break;\n case 'ArrowRight':\n event.preventDefault();\n if (currentItem && !currentItem.expanded) {\n currentItem.expanded = true;\n }\n break;\n case 'ArrowLeft':\n event.preventDefault();\n if (currentItem && currentItem.expanded) {\n currentItem.expanded = false;\n }\n break;\n case 'Home':\n event.preventDefault();\n items[0].focus();\n break;\n case 'End':\n event.preventDefault();\n items[items.length - 1].focus();\n break;\n }\n }\n\n private getVisibleItems(): HTMLElement[] {\n const allItems = Array.from(this.hostEl.querySelectorAll('ts-tree-item'));\n return allItems.filter(item => {\n let parent = item.parentElement;\n while (parent && parent !== this.hostEl) {\n if (parent.tagName === 'TS-TREE-ITEM' && !(parent as HTMLTsTreeItemElement).expanded) {\n return false;\n }\n parent = parent.parentElement;\n }\n return true;\n }) as HTMLElement[];\n }\n\n // eslint-disable-next-line @typescript-eslint/explicit-function-return-type\n render() {\n return (\n <Host\n class={{ 'ts-tree': true }}\n role=\"tree\"\n >\n <div class=\"tree__base\" part=\"base\">\n <slot />\n </div>\n </Host>\n );\n }\n}\n\ninterface HTMLTsTreeItemElement extends HTMLElement {\n expanded: boolean;\n}\n"]}
@@ -1,121 +0,0 @@
1
- // Hand-written stories for ts-tree
2
- export default {
3
- title: 'Components/Tree',
4
- tags: ['autodocs'],
5
- argTypes: {
6
- selectable: {
7
- control: 'boolean',
8
- description: 'Enable item selection mode.',
9
- },
10
- },
11
- };
12
- const Template = (args) => {
13
- const attrs = [];
14
- if (args.selectable)
15
- attrs.push('selectable');
16
- return `
17
- <ts-tree ${attrs.join(' ')}>
18
- <ts-tree-item label="Documents" icon="folder" expanded>
19
- <ts-tree-item label="Reports" icon="folder">
20
- <ts-tree-item label="Q4-2025.pdf" icon="file-text"></ts-tree-item>
21
- <ts-tree-item label="Q3-2025.pdf" icon="file-text"></ts-tree-item>
22
- <ts-tree-item label="Annual-Summary.pdf" icon="file-text"></ts-tree-item>
23
- </ts-tree-item>
24
- <ts-tree-item label="Invoices" icon="folder">
25
- <ts-tree-item label="INV-001.pdf" icon="file-text"></ts-tree-item>
26
- <ts-tree-item label="INV-002.pdf" icon="file-text"></ts-tree-item>
27
- </ts-tree-item>
28
- </ts-tree-item>
29
- <ts-tree-item label="Images" icon="folder">
30
- <ts-tree-item label="logo.png" icon="image"></ts-tree-item>
31
- <ts-tree-item label="banner.jpg" icon="image"></ts-tree-item>
32
- </ts-tree-item>
33
- <ts-tree-item label="README.md" icon="file-text"></ts-tree-item>
34
- </ts-tree>
35
- `;
36
- };
37
- export const Default = Object.assign(Template.bind({}), {
38
- args: {
39
- selectable: false,
40
- },
41
- });
42
- export const States = () => `
43
- <div style="display: flex; gap: 48px; flex-wrap: wrap;">
44
- <div>
45
- <p style="margin: 0 0 12px; font-family: sans-serif; font-size: 14px; color: #666;">Expanded and collapsed</p>
46
- <ts-tree>
47
- <ts-tree-item label="src" icon="folder" expanded>
48
- <ts-tree-item label="components" icon="folder" expanded>
49
- <ts-tree-item label="Button.tsx" icon="file-text"></ts-tree-item>
50
- <ts-tree-item label="Input.tsx" icon="file-text"></ts-tree-item>
51
- </ts-tree-item>
52
- <ts-tree-item label="utils" icon="folder">
53
- <ts-tree-item label="helpers.ts" icon="file-text"></ts-tree-item>
54
- </ts-tree-item>
55
- </ts-tree-item>
56
- <ts-tree-item label="package.json" icon="file-text"></ts-tree-item>
57
- </ts-tree>
58
- </div>
59
- <div>
60
- <p style="margin: 0 0 12px; font-family: sans-serif; font-size: 14px; color: #666;">With disabled items</p>
61
- <ts-tree>
62
- <ts-tree-item label="Public" icon="folder" expanded>
63
- <ts-tree-item label="index.html" icon="file-text"></ts-tree-item>
64
- <ts-tree-item label="restricted.html" icon="file-text" disabled></ts-tree-item>
65
- </ts-tree-item>
66
- <ts-tree-item label="Private" icon="folder" disabled>
67
- <ts-tree-item label="secrets.json" icon="file-text"></ts-tree-item>
68
- </ts-tree-item>
69
- </ts-tree>
70
- </div>
71
- </div>
72
- `;
73
- export const Variants = () => `
74
- <div>
75
- <p style="margin: 0 0 12px; font-family: sans-serif; font-size: 14px; color: #666;">Selectable tree</p>
76
- <ts-tree selectable>
77
- <ts-tree-item label="Frontend" icon="folder" expanded>
78
- <ts-tree-item label="React" icon="file-text" selected></ts-tree-item>
79
- <ts-tree-item label="Vue" icon="file-text"></ts-tree-item>
80
- <ts-tree-item label="Angular" icon="file-text"></ts-tree-item>
81
- </ts-tree-item>
82
- <ts-tree-item label="Backend" icon="folder" expanded>
83
- <ts-tree-item label="Node.js" icon="file-text" selected></ts-tree-item>
84
- <ts-tree-item label="Python" icon="file-text"></ts-tree-item>
85
- <ts-tree-item label="Go" icon="file-text"></ts-tree-item>
86
- </ts-tree-item>
87
- </ts-tree>
88
- </div>
89
- `;
90
- export const Composition = () => `
91
- <div style="max-width: 320px; font-family: sans-serif;">
92
- <div style="border: 1px solid #e2e8f0; border-radius: 8px; overflow: hidden;">
93
- <div style="padding: 12px 16px; background: #f8fafc; border-bottom: 1px solid #e2e8f0; font-weight: 600; font-size: 14px;">
94
- File Browser
95
- </div>
96
- <div style="padding: 12px;">
97
- <ts-tree>
98
- <ts-tree-item label="Documents" icon="folder" expanded>
99
- <ts-tree-item label="Reports" icon="folder" expanded>
100
- <ts-tree-item label="Q4-2025.pdf" icon="file-text"></ts-tree-item>
101
- <ts-tree-item label="Q3-2025.pdf" icon="file-text"></ts-tree-item>
102
- </ts-tree-item>
103
- <ts-tree-item label="Contracts" icon="folder">
104
- <ts-tree-item label="NDA-signed.pdf" icon="file-text"></ts-tree-item>
105
- </ts-tree-item>
106
- </ts-tree-item>
107
- <ts-tree-item label="Media" icon="folder">
108
- <ts-tree-item label="Photos" icon="folder">
109
- <ts-tree-item label="team-photo.jpg" icon="image"></ts-tree-item>
110
- </ts-tree-item>
111
- <ts-tree-item label="Videos" icon="folder">
112
- <ts-tree-item label="demo.mp4" icon="film"></ts-tree-item>
113
- </ts-tree-item>
114
- </ts-tree-item>
115
- <ts-tree-item label="config.json" icon="file-text"></ts-tree-item>
116
- </ts-tree>
117
- </div>
118
- </div>
119
- </div>
120
- `;
121
- //# sourceMappingURL=tree.stories.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tree.stories.js","sourceRoot":"","sources":["../../../src/components/tree/tree.stories.ts"],"names":[],"mappings":"AAAA,mCAAmC;AAEnC,eAAe;IACb,KAAK,EAAE,iBAAiB;IACxB,IAAI,EAAE,CAAC,UAAU,CAAC;IAClB,QAAQ,EAAE;QACR,UAAU,EAAE;YACV,OAAO,EAAE,SAAS;YAClB,WAAW,EAAE,6BAA6B;SAC3C;KACF;CACF,CAAC;AAEF,MAAM,QAAQ,GAAG,CAAC,IAA6B,EAAU,EAAE;IACzD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,IAAI,CAAC,UAAU;QAAE,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC9C,OAAO;eACM,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;;;GAkB3B,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAwD,EAAE;IAC7G,IAAI,EAAE;QACJ,UAAU,EAAE,KAAK;KAClB;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAW,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8BnC,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAW,EAAE,CAAC;;;;;;;;;;;;;;;;CAgBrC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,GAAW,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8BxC,CAAC","sourcesContent":["// Hand-written stories for ts-tree\n\nexport default {\n title: 'Components/Tree',\n tags: ['autodocs'],\n argTypes: {\n selectable: {\n control: 'boolean',\n description: 'Enable item selection mode.',\n },\n },\n};\n\nconst Template = (args: Record<string, unknown>): string => {\n const attrs: string[] = [];\n if (args.selectable) attrs.push('selectable');\n return `\n <ts-tree ${attrs.join(' ')}>\n <ts-tree-item label=\"Documents\" icon=\"folder\" expanded>\n <ts-tree-item label=\"Reports\" icon=\"folder\">\n <ts-tree-item label=\"Q4-2025.pdf\" icon=\"file-text\"></ts-tree-item>\n <ts-tree-item label=\"Q3-2025.pdf\" icon=\"file-text\"></ts-tree-item>\n <ts-tree-item label=\"Annual-Summary.pdf\" icon=\"file-text\"></ts-tree-item>\n </ts-tree-item>\n <ts-tree-item label=\"Invoices\" icon=\"folder\">\n <ts-tree-item label=\"INV-001.pdf\" icon=\"file-text\"></ts-tree-item>\n <ts-tree-item label=\"INV-002.pdf\" icon=\"file-text\"></ts-tree-item>\n </ts-tree-item>\n </ts-tree-item>\n <ts-tree-item label=\"Images\" icon=\"folder\">\n <ts-tree-item label=\"logo.png\" icon=\"image\"></ts-tree-item>\n <ts-tree-item label=\"banner.jpg\" icon=\"image\"></ts-tree-item>\n </ts-tree-item>\n <ts-tree-item label=\"README.md\" icon=\"file-text\"></ts-tree-item>\n </ts-tree>\n `;\n};\n\nexport const Default = Object.assign(Template.bind({}) as typeof Template & { args: Record<string, unknown> }, {\n args: {\n selectable: false,\n },\n});\n\nexport const States = (): string => `\n <div style=\"display: flex; gap: 48px; flex-wrap: wrap;\">\n <div>\n <p style=\"margin: 0 0 12px; font-family: sans-serif; font-size: 14px; color: #666;\">Expanded and collapsed</p>\n <ts-tree>\n <ts-tree-item label=\"src\" icon=\"folder\" expanded>\n <ts-tree-item label=\"components\" icon=\"folder\" expanded>\n <ts-tree-item label=\"Button.tsx\" icon=\"file-text\"></ts-tree-item>\n <ts-tree-item label=\"Input.tsx\" icon=\"file-text\"></ts-tree-item>\n </ts-tree-item>\n <ts-tree-item label=\"utils\" icon=\"folder\">\n <ts-tree-item label=\"helpers.ts\" icon=\"file-text\"></ts-tree-item>\n </ts-tree-item>\n </ts-tree-item>\n <ts-tree-item label=\"package.json\" icon=\"file-text\"></ts-tree-item>\n </ts-tree>\n </div>\n <div>\n <p style=\"margin: 0 0 12px; font-family: sans-serif; font-size: 14px; color: #666;\">With disabled items</p>\n <ts-tree>\n <ts-tree-item label=\"Public\" icon=\"folder\" expanded>\n <ts-tree-item label=\"index.html\" icon=\"file-text\"></ts-tree-item>\n <ts-tree-item label=\"restricted.html\" icon=\"file-text\" disabled></ts-tree-item>\n </ts-tree-item>\n <ts-tree-item label=\"Private\" icon=\"folder\" disabled>\n <ts-tree-item label=\"secrets.json\" icon=\"file-text\"></ts-tree-item>\n </ts-tree-item>\n </ts-tree>\n </div>\n </div>\n`;\n\nexport const Variants = (): string => `\n <div>\n <p style=\"margin: 0 0 12px; font-family: sans-serif; font-size: 14px; color: #666;\">Selectable tree</p>\n <ts-tree selectable>\n <ts-tree-item label=\"Frontend\" icon=\"folder\" expanded>\n <ts-tree-item label=\"React\" icon=\"file-text\" selected></ts-tree-item>\n <ts-tree-item label=\"Vue\" icon=\"file-text\"></ts-tree-item>\n <ts-tree-item label=\"Angular\" icon=\"file-text\"></ts-tree-item>\n </ts-tree-item>\n <ts-tree-item label=\"Backend\" icon=\"folder\" expanded>\n <ts-tree-item label=\"Node.js\" icon=\"file-text\" selected></ts-tree-item>\n <ts-tree-item label=\"Python\" icon=\"file-text\"></ts-tree-item>\n <ts-tree-item label=\"Go\" icon=\"file-text\"></ts-tree-item>\n </ts-tree-item>\n </ts-tree>\n </div>\n`;\n\nexport const Composition = (): string => `\n <div style=\"max-width: 320px; font-family: sans-serif;\">\n <div style=\"border: 1px solid #e2e8f0; border-radius: 8px; overflow: hidden;\">\n <div style=\"padding: 12px 16px; background: #f8fafc; border-bottom: 1px solid #e2e8f0; font-weight: 600; font-size: 14px;\">\n File Browser\n </div>\n <div style=\"padding: 12px;\">\n <ts-tree>\n <ts-tree-item label=\"Documents\" icon=\"folder\" expanded>\n <ts-tree-item label=\"Reports\" icon=\"folder\" expanded>\n <ts-tree-item label=\"Q4-2025.pdf\" icon=\"file-text\"></ts-tree-item>\n <ts-tree-item label=\"Q3-2025.pdf\" icon=\"file-text\"></ts-tree-item>\n </ts-tree-item>\n <ts-tree-item label=\"Contracts\" icon=\"folder\">\n <ts-tree-item label=\"NDA-signed.pdf\" icon=\"file-text\"></ts-tree-item>\n </ts-tree-item>\n </ts-tree-item>\n <ts-tree-item label=\"Media\" icon=\"folder\">\n <ts-tree-item label=\"Photos\" icon=\"folder\">\n <ts-tree-item label=\"team-photo.jpg\" icon=\"image\"></ts-tree-item>\n </ts-tree-item>\n <ts-tree-item label=\"Videos\" icon=\"folder\">\n <ts-tree-item label=\"demo.mp4\" icon=\"film\"></ts-tree-item>\n </ts-tree-item>\n </ts-tree-item>\n <ts-tree-item label=\"config.json\" icon=\"file-text\"></ts-tree-item>\n </ts-tree>\n </div>\n </div>\n </div>\n`;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Tessera UI — Library Entry Point\n *\n * Re-exports all public components, types, and utilities.\n */\n\n// Types\nexport type {\n TsSize,\n TsVariant,\n TsAppearance,\n TsOrientation,\n TsPlacement,\n TsChangeEventDetail,\n TsToggleEventDetail,\n TsCheckboxChangeEventDetail,\n TsSelectChangeEventDetail,\n TsValidationEventDetail,\n} from './types';\n\n// Utilities\nexport { generateId, announce, prefersReducedMotion, trapFocus } from './utils/aria';\nexport { debounce, clamp, hasSlotContent } from './utils/dom';\nexport { emitEvent } from './utils/events';\n\n// Icon Registry\nexport { registerIcons, registerIcon, getIcon, getRegisteredIconNames } from './components/icon/icon-registry';\n\n// Components\nexport { TsIcon } from './components/icon/icon';\nexport { TsTabs } from './components/tabs/tabs';\nexport { TsTabPanel } from './components/tabs/tab-panel';\nexport { TsSpinner } from './components/spinner/spinner';\nexport { TsAvatar } from './components/avatar/avatar';\nexport { TsDialog } from './components/dialog/dialog';\nexport { TsMenu } from './components/menu/menu';\nexport type { TsMenuPlacement, TsMenuTrigger } from './components/menu/menu';\nexport { TsMenuItem } from './components/menu/menu-item';\nexport { TsTable } from './components/table/table';\nexport { TsAccordion } from './components/accordion/accordion';\nexport { TsAccordionItem } from './components/accordion/accordion-item';\nexport { TsBreadcrumb } from './components/breadcrumb/breadcrumb';\nexport { TsBreadcrumbItem } from './components/breadcrumb/breadcrumb-item';\nexport { TsPagination } from './components/pagination/pagination';\nexport { TsProgress } from './components/progress/progress';\nexport { TsSlider } from './components/slider/slider';\nexport { TsSkeleton } from './components/skeleton/skeleton';\nexport { TsToast } from './components/toast/toast';\nexport { TsChip } from './components/chip/chip';\nexport { TsDivider } from './components/divider/divider';\nexport { TsPopover } from './components/popover/popover';\nexport { TsTree } from './components/tree/tree';\nexport { TsTreeItem } from './components/tree/tree-item';\nexport { TsSwitchGroup } from './components/switch-group/switch-group';\nexport { TsSwitchOption } from './components/switch-group/switch-option';\nexport { TsToolbar } from './components/toolbar/toolbar';\nexport { TsEmptyState } from './components/empty-state/empty-state';\nexport { TsBanner } from './components/banner/banner';\nexport { TsDrawer } from './components/drawer/drawer';\nexport { TsNav } from './components/nav/nav';\nexport { TsNavItem } from './components/nav/nav-item';\nexport { TsDatePicker } from './components/date-picker/date-picker';\nexport { TsFileUpload } from './components/file-upload/file-upload';\nexport { TsStepper } from './components/stepper/stepper';\nexport { TsStep } from './components/stepper/step';\nexport { TsGrid } from './components/grid/grid';\nexport { TsContainer } from './components/container/container';\nexport { TsStack } from './components/stack/stack';\nexport { TsRow } from './components/row/row';\nexport { TsSpacer } from './components/spacer/spacer';\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../../src/theme/tokens.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAwBH,MAAM,CAAC,MAAM,MAAM,GAAkB;IACnC,KAAK,EAAE;QACL,OAAO,EAAE;YACP,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,SAAS;SACjB;QACD,OAAO,EAAE;YACP,GAAG,EAAE,SAAS;YACd,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,SAAS;SACjB;QACD,OAAO,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE;QAC/C,OAAO,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE;QAC/C,MAAM,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE;QAC9C,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE;KAC7C;IACD,OAAO,EAAE;QACP,GAAG,EAAE,GAAG;QACR,GAAG,EAAE,SAAS;QACd,GAAG,EAAE,QAAQ;QACb,GAAG,EAAE,SAAS;QACd,GAAG,EAAE,MAAM;QACX,GAAG,EAAE,SAAS;QACd,GAAG,EAAE,QAAQ;QACb,GAAG,EAAE,MAAM;QACX,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,MAAM;KACb;IACD,MAAM,EAAE;QACN,IAAI,EAAE,GAAG;QACT,EAAE,EAAE,SAAS;QACb,EAAE,EAAE,QAAQ;QACZ,EAAE,EAAE,SAAS;QACb,EAAE,EAAE,MAAM;QACV,IAAI,EAAE,QAAQ;KACf;IACD,MAAM,EAAE;QACN,EAAE,EAAE,iCAAiC;QACrC,EAAE,EAAE,mEAAmE;QACvE,EAAE,EAAE,sEAAsE;QAC1E,EAAE,EAAE,wEAAwE;QAC5E,EAAE,EAAE,yEAAyE;KAC9E;IACD,IAAI,EAAE;QACJ,MAAM,EAAE;YACN,IAAI,EAAE,oEAAoE;YAC1E,IAAI,EAAE,sDAAsD;SAC7D;QACD,IAAI,EAAE;YACJ,EAAE,EAAE,SAAS;YACb,EAAE,EAAE,UAAU;YACd,EAAE,EAAE,MAAM;YACV,EAAE,EAAE,UAAU;YACd,EAAE,EAAE,SAAS;YACb,KAAK,EAAE,QAAQ;YACf,KAAK,EAAE,UAAU;SAClB;QACD,MAAM,EAAE;YACN,OAAO,EAAE,GAAG;YACZ,MAAM,EAAE,GAAG;YACX,IAAI,EAAE,GAAG;YACT,IAAI,EAAE,GAAG;SACV;QACD,UAAU,EAAE;YACV,KAAK,EAAE,IAAI;YACX,MAAM,EAAE,GAAG;YACX,KAAK,EAAE,IAAI;SACZ;KACF;IACD,UAAU,EAAE;QACV,IAAI,EAAE,oCAAoC;QAC1C,MAAM,EAAE,oCAAoC;QAC5C,IAAI,EAAE,oCAAoC;KAC3C;IACD,MAAM,EAAE;QACN,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,IAAI;QACZ,KAAK,EAAE,IAAI;QACX,OAAO,EAAE,IAAI;QACb,KAAK,EAAE,IAAI;QACX,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,IAAI;KACd;CACF,CAAC","sourcesContent":["/**\n * Tessera UI — Design Token Definitions\n *\n * These are the source-of-truth token definitions.\n * They feed into Style Dictionary to generate platform-specific outputs\n * (CSS custom properties, iOS, Android, etc.)\n */\n\nexport interface TesseraTokens {\n color: {\n primary: Record<string, string>;\n neutral: Record<string, string>;\n success: Record<string, string>;\n warning: Record<string, string>;\n danger: Record<string, string>;\n info: Record<string, string>;\n };\n spacing: Record<string, string>;\n radius: Record<string, string>;\n shadow: Record<string, string>;\n font: {\n family: Record<string, string>;\n size: Record<string, string>;\n weight: Record<string, number>;\n lineHeight: Record<string, number>;\n };\n transition: Record<string, string>;\n zIndex: Record<string, number>;\n}\n\nexport const tokens: TesseraTokens = {\n color: {\n primary: {\n '50': '#eef2ff',\n '100': '#dbe4ff',\n '200': '#bac8ff',\n '300': '#91a7ff',\n '400': '#748ffc',\n '500': '#5c7cfa',\n '600': '#4c6ef5',\n '700': '#4263eb',\n '800': '#3b5bdb',\n '900': '#364fc7',\n },\n neutral: {\n '0': '#ffffff',\n '50': '#f8f9fa',\n '100': '#f1f3f5',\n '200': '#e9ecef',\n '300': '#dee2e6',\n '400': '#ced4da',\n '500': '#adb5bd',\n '600': '#868e96',\n '700': '#495057',\n '800': '#343a40',\n '900': '#212529',\n },\n success: { '500': '#40c057', '600': '#2f9e44' },\n warning: { '500': '#fab005', '600': '#f08c00' },\n danger: { '500': '#fa5252', '600': '#e03131' },\n info: { '500': '#339af0', '600': '#1c7ed6' },\n },\n spacing: {\n '0': '0',\n '1': '0.25rem',\n '2': '0.5rem',\n '3': '0.75rem',\n '4': '1rem',\n '5': '1.25rem',\n '6': '1.5rem',\n '8': '2rem',\n '10': '2.5rem',\n '12': '3rem',\n '16': '4rem',\n },\n radius: {\n none: '0',\n sm: '0.25rem',\n md: '0.5rem',\n lg: '0.75rem',\n xl: '1rem',\n full: '9999px',\n },\n shadow: {\n xs: '0 1px 2px 0 rgba(0, 0, 0, 0.05)',\n sm: '0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1)',\n md: '0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1)',\n lg: '0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1)',\n xl: '0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1)',\n },\n font: {\n family: {\n base: \"'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif\",\n mono: \"'JetBrains Mono', 'Fira Code', 'Consolas', monospace\",\n },\n size: {\n xs: '0.75rem',\n sm: '0.875rem',\n md: '1rem',\n lg: '1.125rem',\n xl: '1.25rem',\n '2xl': '1.5rem',\n '3xl': '1.875rem',\n },\n weight: {\n regular: 400,\n medium: 500,\n semi: 600,\n bold: 700,\n },\n lineHeight: {\n tight: 1.25,\n normal: 1.5,\n loose: 1.75,\n },\n },\n transition: {\n fast: '150ms cubic-bezier(0.4, 0, 0.2, 1)',\n normal: '250ms cubic-bezier(0.4, 0, 0.2, 1)',\n slow: '350ms cubic-bezier(0.4, 0, 0.2, 1)',\n },\n zIndex: {\n dropdown: 1000,\n sticky: 1020,\n fixed: 1030,\n overlay: 1040,\n modal: 1050,\n popover: 1060,\n tooltip: 1070,\n },\n};\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG","sourcesContent":["/**\n * Tessera UI — Shared Types\n */\n\n/** Standard component sizes used across the library */\nexport type TsSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';\n\n/** Semantic color variants */\nexport type TsVariant = 'primary' | 'secondary' | 'success' | 'warning' | 'danger' | 'info' | 'neutral';\n\n/** Button-style visual weight */\nexport type TsAppearance = 'solid' | 'outline' | 'ghost' | 'link';\n\n/** Standard orientation */\nexport type TsOrientation = 'horizontal' | 'vertical';\n\n/** Placement positions (for tooltips, popovers, etc.) */\nexport type TsPlacement =\n | 'top'\n | 'top-start'\n | 'top-end'\n | 'bottom'\n | 'bottom-start'\n | 'bottom-end'\n | 'left'\n | 'left-start'\n | 'left-end'\n | 'right'\n | 'right-start'\n | 'right-end';\n\n/** Shared event detail for value-change events */\nexport interface TsChangeEventDetail<T = unknown> {\n value: T;\n previousValue: T;\n}\n\n/** Shared event detail for toggle events */\nexport interface TsToggleEventDetail {\n checked: boolean;\n}\n\n/** Shared event detail for checkbox/radio change events */\nexport interface TsCheckboxChangeEventDetail {\n checked: boolean;\n value: string;\n}\n\n/** Shared event detail for select change events */\nexport interface TsSelectChangeEventDetail {\n value: string;\n}\n\n/** Shared event detail for form validation */\nexport interface TsValidationEventDetail {\n valid: boolean;\n message: string;\n}\n"]}