@tessera-ui/core 0.4.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 (998) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +225 -0
  3. package/dist/cjs/aria-CeYIvz3U.js +94 -0
  4. package/dist/cjs/aria-CeYIvz3U.js.map +1 -0
  5. package/dist/cjs/index-Bel_x2OU.js +2401 -0
  6. package/dist/cjs/index-Bel_x2OU.js.map +1 -0
  7. package/dist/cjs/index.cjs.js +155 -0
  8. package/dist/cjs/index.cjs.js.map +1 -0
  9. package/dist/cjs/loader.cjs.js +15 -0
  10. package/dist/cjs/loader.cjs.js.map +1 -0
  11. package/dist/cjs/lucide-B1gCqJ3G.js +28324 -0
  12. package/dist/cjs/lucide-B1gCqJ3G.js.map +1 -0
  13. package/dist/cjs/tessera-ui.cjs.js +27 -0
  14. package/dist/cjs/tessera-ui.cjs.js.map +1 -0
  15. package/dist/cjs/ts-accordion-item.cjs.entry.js +65 -0
  16. package/dist/cjs/ts-accordion-item.cjs.entry.js.map +1 -0
  17. package/dist/cjs/ts-accordion.cjs.entry.js +36 -0
  18. package/dist/cjs/ts-accordion.cjs.entry.js.map +1 -0
  19. package/dist/cjs/ts-alert.cjs.entry.js +60 -0
  20. package/dist/cjs/ts-alert.cjs.entry.js.map +1 -0
  21. package/dist/cjs/ts-avatar.cjs.entry.js +54 -0
  22. package/dist/cjs/ts-avatar.cjs.entry.js.map +1 -0
  23. package/dist/cjs/ts-badge.cjs.entry.js +38 -0
  24. package/dist/cjs/ts-badge.cjs.entry.js.map +1 -0
  25. package/dist/cjs/ts-banner.cjs.entry.js +67 -0
  26. package/dist/cjs/ts-banner.cjs.entry.js.map +1 -0
  27. package/dist/cjs/ts-breadcrumb-item.cjs.entry.js +28 -0
  28. package/dist/cjs/ts-breadcrumb-item.cjs.entry.js.map +1 -0
  29. package/dist/cjs/ts-breadcrumb.cjs.entry.js +35 -0
  30. package/dist/cjs/ts-breadcrumb.cjs.entry.js.map +1 -0
  31. package/dist/cjs/ts-button.cjs.entry.js +88 -0
  32. package/dist/cjs/ts-button.cjs.entry.js.map +1 -0
  33. package/dist/cjs/ts-card.cjs.entry.js +35 -0
  34. package/dist/cjs/ts-card.cjs.entry.js.map +1 -0
  35. package/dist/cjs/ts-checkbox.cjs.entry.js +68 -0
  36. package/dist/cjs/ts-checkbox.cjs.entry.js.map +1 -0
  37. package/dist/cjs/ts-chip.cjs.entry.js +76 -0
  38. package/dist/cjs/ts-chip.cjs.entry.js.map +1 -0
  39. package/dist/cjs/ts-container.cjs.entry.js +28 -0
  40. package/dist/cjs/ts-container.cjs.entry.js.map +1 -0
  41. package/dist/cjs/ts-date-picker.cjs.entry.js +229 -0
  42. package/dist/cjs/ts-date-picker.cjs.entry.js.map +1 -0
  43. package/dist/cjs/ts-dialog.cjs.entry.js +109 -0
  44. package/dist/cjs/ts-dialog.cjs.entry.js.map +1 -0
  45. package/dist/cjs/ts-divider.cjs.entry.js +33 -0
  46. package/dist/cjs/ts-divider.cjs.entry.js.map +1 -0
  47. package/dist/cjs/ts-drawer.cjs.entry.js +113 -0
  48. package/dist/cjs/ts-drawer.cjs.entry.js.map +1 -0
  49. package/dist/cjs/ts-empty-state.cjs.entry.js +32 -0
  50. package/dist/cjs/ts-empty-state.cjs.entry.js.map +1 -0
  51. package/dist/cjs/ts-file-upload.cjs.entry.js +122 -0
  52. package/dist/cjs/ts-file-upload.cjs.entry.js.map +1 -0
  53. package/dist/cjs/ts-grid.cjs.entry.js +37 -0
  54. package/dist/cjs/ts-grid.cjs.entry.js.map +1 -0
  55. package/dist/cjs/ts-icon-CfbhgAgr.js +161 -0
  56. package/dist/cjs/ts-icon-CfbhgAgr.js.map +1 -0
  57. package/dist/cjs/ts-icon.cjs.entry.js +11 -0
  58. package/dist/cjs/ts-icon.cjs.entry.js.map +1 -0
  59. package/dist/cjs/ts-input.cjs.entry.js +130 -0
  60. package/dist/cjs/ts-input.cjs.entry.js.map +1 -0
  61. package/dist/cjs/ts-menu-item.cjs.entry.js +65 -0
  62. package/dist/cjs/ts-menu-item.cjs.entry.js.map +1 -0
  63. package/dist/cjs/ts-menu.cjs.entry.js +155 -0
  64. package/dist/cjs/ts-menu.cjs.entry.js.map +1 -0
  65. package/dist/cjs/ts-modal.cjs.entry.js +122 -0
  66. package/dist/cjs/ts-modal.cjs.entry.js.map +1 -0
  67. package/dist/cjs/ts-nav-item.cjs.entry.js +48 -0
  68. package/dist/cjs/ts-nav-item.cjs.entry.js.map +1 -0
  69. package/dist/cjs/ts-nav.cjs.entry.js +29 -0
  70. package/dist/cjs/ts-nav.cjs.entry.js.map +1 -0
  71. package/dist/cjs/ts-pagination.cjs.entry.js +88 -0
  72. package/dist/cjs/ts-pagination.cjs.entry.js.map +1 -0
  73. package/dist/cjs/ts-popover.cjs.entry.js +133 -0
  74. package/dist/cjs/ts-popover.cjs.entry.js.map +1 -0
  75. package/dist/cjs/ts-progress.cjs.entry.js +46 -0
  76. package/dist/cjs/ts-progress.cjs.entry.js.map +1 -0
  77. package/dist/cjs/ts-radio.cjs.entry.js +60 -0
  78. package/dist/cjs/ts-radio.cjs.entry.js.map +1 -0
  79. package/dist/cjs/ts-row.cjs.entry.js +53 -0
  80. package/dist/cjs/ts-row.cjs.entry.js.map +1 -0
  81. package/dist/cjs/ts-select.cjs.entry.js +221 -0
  82. package/dist/cjs/ts-select.cjs.entry.js.map +1 -0
  83. package/dist/cjs/ts-skeleton.cjs.entry.js +55 -0
  84. package/dist/cjs/ts-skeleton.cjs.entry.js.map +1 -0
  85. package/dist/cjs/ts-slider.cjs.entry.js +132 -0
  86. package/dist/cjs/ts-slider.cjs.entry.js.map +1 -0
  87. package/dist/cjs/ts-spacer.cjs.entry.js +28 -0
  88. package/dist/cjs/ts-spacer.cjs.entry.js.map +1 -0
  89. package/dist/cjs/ts-spinner.cjs.entry.js +30 -0
  90. package/dist/cjs/ts-spinner.cjs.entry.js.map +1 -0
  91. package/dist/cjs/ts-stack.cjs.entry.js +34 -0
  92. package/dist/cjs/ts-stack.cjs.entry.js.map +1 -0
  93. package/dist/cjs/ts-step.cjs.entry.js +74 -0
  94. package/dist/cjs/ts-step.cjs.entry.js.map +1 -0
  95. package/dist/cjs/ts-stepper.cjs.entry.js +67 -0
  96. package/dist/cjs/ts-stepper.cjs.entry.js.map +1 -0
  97. package/dist/cjs/ts-switch-group.cjs.entry.js +109 -0
  98. package/dist/cjs/ts-switch-group.cjs.entry.js.map +1 -0
  99. package/dist/cjs/ts-switch-option.cjs.entry.js +42 -0
  100. package/dist/cjs/ts-switch-option.cjs.entry.js.map +1 -0
  101. package/dist/cjs/ts-tab-panel.cjs.entry.js +30 -0
  102. package/dist/cjs/ts-tab-panel.cjs.entry.js.map +1 -0
  103. package/dist/cjs/ts-table.cjs.entry.js +39 -0
  104. package/dist/cjs/ts-table.cjs.entry.js.map +1 -0
  105. package/dist/cjs/ts-tabs.cjs.entry.js +124 -0
  106. package/dist/cjs/ts-tabs.cjs.entry.js.map +1 -0
  107. package/dist/cjs/ts-textarea.cjs.entry.js +117 -0
  108. package/dist/cjs/ts-textarea.cjs.entry.js.map +1 -0
  109. package/dist/cjs/ts-toast.cjs.entry.js +107 -0
  110. package/dist/cjs/ts-toast.cjs.entry.js.map +1 -0
  111. package/dist/cjs/ts-toggle.cjs.entry.js +58 -0
  112. package/dist/cjs/ts-toggle.cjs.entry.js.map +1 -0
  113. package/dist/cjs/ts-toolbar.cjs.entry.js +29 -0
  114. package/dist/cjs/ts-toolbar.cjs.entry.js.map +1 -0
  115. package/dist/cjs/ts-tooltip.cjs.entry.js +82 -0
  116. package/dist/cjs/ts-tooltip.cjs.entry.js.map +1 -0
  117. package/dist/cjs/ts-tree-item.cjs.entry.js +94 -0
  118. package/dist/cjs/ts-tree-item.cjs.entry.js.map +1 -0
  119. package/dist/cjs/ts-tree.cjs.entry.js +81 -0
  120. package/dist/cjs/ts-tree.cjs.entry.js.map +1 -0
  121. package/dist/collection/collection-manifest.json +64 -0
  122. package/dist/collection/components/accordion/accordion-item.css +75 -0
  123. package/dist/collection/components/accordion/accordion-item.js +157 -0
  124. package/dist/collection/components/accordion/accordion-item.js.map +1 -0
  125. package/dist/collection/components/accordion/accordion-item.stories.js +4 -0
  126. package/dist/collection/components/accordion/accordion-item.stories.js.map +1 -0
  127. package/dist/collection/components/accordion/accordion.css +31 -0
  128. package/dist/collection/components/accordion/accordion.js +72 -0
  129. package/dist/collection/components/accordion/accordion.js.map +1 -0
  130. package/dist/collection/components/accordion/accordion.stories.js +90 -0
  131. package/dist/collection/components/accordion/accordion.stories.js.map +1 -0
  132. package/dist/collection/components/alert/alert.css +118 -0
  133. package/dist/collection/components/alert/alert.js +181 -0
  134. package/dist/collection/components/alert/alert.js.map +1 -0
  135. package/dist/collection/components/alert/alert.stories.js +128 -0
  136. package/dist/collection/components/alert/alert.stories.js.map +1 -0
  137. package/dist/collection/components/avatar/avatar.css +63 -0
  138. package/dist/collection/components/avatar/avatar.js +185 -0
  139. package/dist/collection/components/avatar/avatar.js.map +1 -0
  140. package/dist/collection/components/avatar/avatar.stories.js +138 -0
  141. package/dist/collection/components/avatar/avatar.stories.js.map +1 -0
  142. package/dist/collection/components/badge/badge.css +67 -0
  143. package/dist/collection/components/badge/badge.js +160 -0
  144. package/dist/collection/components/badge/badge.js.map +1 -0
  145. package/dist/collection/components/badge/badge.stories.js +193 -0
  146. package/dist/collection/components/badge/badge.stories.js.map +1 -0
  147. package/dist/collection/components/banner/banner.css +129 -0
  148. package/dist/collection/components/banner/banner.js +226 -0
  149. package/dist/collection/components/banner/banner.js.map +1 -0
  150. package/dist/collection/components/banner/banner.stories.js +92 -0
  151. package/dist/collection/components/banner/banner.stories.js.map +1 -0
  152. package/dist/collection/components/breadcrumb/breadcrumb-item.css +44 -0
  153. package/dist/collection/components/breadcrumb/breadcrumb-item.js +95 -0
  154. package/dist/collection/components/breadcrumb/breadcrumb-item.js.map +1 -0
  155. package/dist/collection/components/breadcrumb/breadcrumb-item.stories.js +4 -0
  156. package/dist/collection/components/breadcrumb/breadcrumb-item.stories.js.map +1 -0
  157. package/dist/collection/components/breadcrumb/breadcrumb.css +26 -0
  158. package/dist/collection/components/breadcrumb/breadcrumb.js +65 -0
  159. package/dist/collection/components/breadcrumb/breadcrumb.js.map +1 -0
  160. package/dist/collection/components/breadcrumb/breadcrumb.stories.js +88 -0
  161. package/dist/collection/components/breadcrumb/breadcrumb.stories.js.map +1 -0
  162. package/dist/collection/components/button/button.css +260 -0
  163. package/dist/collection/components/button/button.js +347 -0
  164. package/dist/collection/components/button/button.js.map +1 -0
  165. package/dist/collection/components/button/button.stories.js +219 -0
  166. package/dist/collection/components/button/button.stories.js.map +1 -0
  167. package/dist/collection/components/card/card.css +108 -0
  168. package/dist/collection/components/card/card.js +130 -0
  169. package/dist/collection/components/card/card.js.map +1 -0
  170. package/dist/collection/components/card/card.stories.js +221 -0
  171. package/dist/collection/components/card/card.stories.js.map +1 -0
  172. package/dist/collection/components/checkbox/checkbox.css +115 -0
  173. package/dist/collection/components/checkbox/checkbox.js +282 -0
  174. package/dist/collection/components/checkbox/checkbox.js.map +1 -0
  175. package/dist/collection/components/checkbox/checkbox.stories.js +90 -0
  176. package/dist/collection/components/checkbox/checkbox.stories.js.map +1 -0
  177. package/dist/collection/components/chip/chip.css +210 -0
  178. package/dist/collection/components/chip/chip.js +253 -0
  179. package/dist/collection/components/chip/chip.js.map +1 -0
  180. package/dist/collection/components/chip/chip.stories.js +139 -0
  181. package/dist/collection/components/chip/chip.stories.js.map +1 -0
  182. package/dist/collection/components/container/container.css +47 -0
  183. package/dist/collection/components/container/container.js +76 -0
  184. package/dist/collection/components/container/container.js.map +1 -0
  185. package/dist/collection/components/container/container.stories.js +138 -0
  186. package/dist/collection/components/container/container.stories.js.map +1 -0
  187. package/dist/collection/components/date-picker/date-picker.css +233 -0
  188. package/dist/collection/components/date-picker/date-picker.js +462 -0
  189. package/dist/collection/components/date-picker/date-picker.js.map +1 -0
  190. package/dist/collection/components/date-picker/date-picker.stories.js +119 -0
  191. package/dist/collection/components/date-picker/date-picker.stories.js.map +1 -0
  192. package/dist/collection/components/dialog/dialog.css +128 -0
  193. package/dist/collection/components/dialog/dialog.js +264 -0
  194. package/dist/collection/components/dialog/dialog.js.map +1 -0
  195. package/dist/collection/components/dialog/dialog.stories.js +147 -0
  196. package/dist/collection/components/dialog/dialog.stories.js.map +1 -0
  197. package/dist/collection/components/divider/divider.css +94 -0
  198. package/dist/collection/components/divider/divider.js +99 -0
  199. package/dist/collection/components/divider/divider.js.map +1 -0
  200. package/dist/collection/components/divider/divider.stories.js +94 -0
  201. package/dist/collection/components/divider/divider.stories.js.map +1 -0
  202. package/dist/collection/components/drawer/drawer.css +202 -0
  203. package/dist/collection/components/drawer/drawer.js +288 -0
  204. package/dist/collection/components/drawer/drawer.js.map +1 -0
  205. package/dist/collection/components/drawer/drawer.stories.js +143 -0
  206. package/dist/collection/components/drawer/drawer.stories.js.map +1 -0
  207. package/dist/collection/components/empty-state/empty-state.css +112 -0
  208. package/dist/collection/components/empty-state/empty-state.js +131 -0
  209. package/dist/collection/components/empty-state/empty-state.js.map +1 -0
  210. package/dist/collection/components/empty-state/empty-state.stories.js +113 -0
  211. package/dist/collection/components/empty-state/empty-state.stories.js.map +1 -0
  212. package/dist/collection/components/file-upload/file-upload.css +84 -0
  213. package/dist/collection/components/file-upload/file-upload.js +277 -0
  214. package/dist/collection/components/file-upload/file-upload.js.map +1 -0
  215. package/dist/collection/components/file-upload/file-upload.stories.js +107 -0
  216. package/dist/collection/components/file-upload/file-upload.stories.js.map +1 -0
  217. package/dist/collection/components/grid/grid.css +11 -0
  218. package/dist/collection/components/grid/grid.js +125 -0
  219. package/dist/collection/components/grid/grid.js.map +1 -0
  220. package/dist/collection/components/grid/grid.stories.js +134 -0
  221. package/dist/collection/components/grid/grid.stories.js.map +1 -0
  222. package/dist/collection/components/icon/icon-registry.js +39 -0
  223. package/dist/collection/components/icon/icon-registry.js.map +1 -0
  224. package/dist/collection/components/icon/icon.css +54 -0
  225. package/dist/collection/components/icon/icon.js +239 -0
  226. package/dist/collection/components/icon/icon.js.map +1 -0
  227. package/dist/collection/components/icon/icon.stories.js +119 -0
  228. package/dist/collection/components/icon/icon.stories.js.map +1 -0
  229. package/dist/collection/components/input/input.css +155 -0
  230. package/dist/collection/components/input/input.js +583 -0
  231. package/dist/collection/components/input/input.js.map +1 -0
  232. package/dist/collection/components/input/input.stories.js +151 -0
  233. package/dist/collection/components/input/input.stories.js.map +1 -0
  234. package/dist/collection/components/menu/menu-item.css +77 -0
  235. package/dist/collection/components/menu/menu-item.js +176 -0
  236. package/dist/collection/components/menu/menu-item.js.map +1 -0
  237. package/dist/collection/components/menu/menu-item.stories.js +4 -0
  238. package/dist/collection/components/menu/menu-item.stories.js.map +1 -0
  239. package/dist/collection/components/menu/menu.css +81 -0
  240. package/dist/collection/components/menu/menu.js +295 -0
  241. package/dist/collection/components/menu/menu.js.map +1 -0
  242. package/dist/collection/components/menu/menu.stories.js +126 -0
  243. package/dist/collection/components/menu/menu.stories.js.map +1 -0
  244. package/dist/collection/components/modal/modal.css +131 -0
  245. package/dist/collection/components/modal/modal.js +339 -0
  246. package/dist/collection/components/modal/modal.js.map +1 -0
  247. package/dist/collection/components/modal/modal.stories.js +233 -0
  248. package/dist/collection/components/modal/modal.stories.js.map +1 -0
  249. package/dist/collection/components/nav/nav-item.css +73 -0
  250. package/dist/collection/components/nav/nav-item.js +154 -0
  251. package/dist/collection/components/nav/nav-item.js.map +1 -0
  252. package/dist/collection/components/nav/nav-item.stories.js +4 -0
  253. package/dist/collection/components/nav/nav-item.stories.js.map +1 -0
  254. package/dist/collection/components/nav/nav.css +48 -0
  255. package/dist/collection/components/nav/nav.js +78 -0
  256. package/dist/collection/components/nav/nav.js.map +1 -0
  257. package/dist/collection/components/nav/nav.stories.js +106 -0
  258. package/dist/collection/components/nav/nav.stories.js.map +1 -0
  259. package/dist/collection/components/pagination/pagination.css +102 -0
  260. package/dist/collection/components/pagination/pagination.js +220 -0
  261. package/dist/collection/components/pagination/pagination.js.map +1 -0
  262. package/dist/collection/components/pagination/pagination.stories.js +92 -0
  263. package/dist/collection/components/pagination/pagination.stories.js.map +1 -0
  264. package/dist/collection/components/popover/popover.css +150 -0
  265. package/dist/collection/components/popover/popover.js +305 -0
  266. package/dist/collection/components/popover/popover.js.map +1 -0
  267. package/dist/collection/components/popover/popover.stories.js +112 -0
  268. package/dist/collection/components/popover/popover.stories.js.map +1 -0
  269. package/dist/collection/components/progress/progress.css +89 -0
  270. package/dist/collection/components/progress/progress.js +205 -0
  271. package/dist/collection/components/progress/progress.js.map +1 -0
  272. package/dist/collection/components/progress/progress.stories.js +132 -0
  273. package/dist/collection/components/progress/progress.stories.js.map +1 -0
  274. package/dist/collection/components/radio/radio.css +110 -0
  275. package/dist/collection/components/radio/radio.js +234 -0
  276. package/dist/collection/components/radio/radio.js.map +1 -0
  277. package/dist/collection/components/radio/radio.stories.js +77 -0
  278. package/dist/collection/components/radio/radio.stories.js.map +1 -0
  279. package/dist/collection/components/row/row.css +42 -0
  280. package/dist/collection/components/row/row.js +179 -0
  281. package/dist/collection/components/row/row.js.map +1 -0
  282. package/dist/collection/components/row/row.stories.js +172 -0
  283. package/dist/collection/components/row/row.stories.js.map +1 -0
  284. package/dist/collection/components/select/select.css +200 -0
  285. package/dist/collection/components/select/select.js +527 -0
  286. package/dist/collection/components/select/select.js.map +1 -0
  287. package/dist/collection/components/select/select.stories.js +138 -0
  288. package/dist/collection/components/select/select.stories.js.map +1 -0
  289. package/dist/collection/components/skeleton/skeleton.css +89 -0
  290. package/dist/collection/components/skeleton/skeleton.js +161 -0
  291. package/dist/collection/components/skeleton/skeleton.js.map +1 -0
  292. package/dist/collection/components/skeleton/skeleton.stories.js +140 -0
  293. package/dist/collection/components/skeleton/skeleton.stories.js.map +1 -0
  294. package/dist/collection/components/slider/slider.css +123 -0
  295. package/dist/collection/components/slider/slider.js +344 -0
  296. package/dist/collection/components/slider/slider.js.map +1 -0
  297. package/dist/collection/components/slider/slider.stories.js +100 -0
  298. package/dist/collection/components/slider/slider.stories.js.map +1 -0
  299. package/dist/collection/components/spacer/spacer.css +13 -0
  300. package/dist/collection/components/spacer/spacer.js +74 -0
  301. package/dist/collection/components/spacer/spacer.js.map +1 -0
  302. package/dist/collection/components/spacer/spacer.stories.js +90 -0
  303. package/dist/collection/components/spacer/spacer.stories.js.map +1 -0
  304. package/dist/collection/components/spinner/spinner.css +49 -0
  305. package/dist/collection/components/spinner/spinner.js +98 -0
  306. package/dist/collection/components/spinner/spinner.js.map +1 -0
  307. package/dist/collection/components/spinner/spinner.stories.js +88 -0
  308. package/dist/collection/components/spinner/spinner.stories.js.map +1 -0
  309. package/dist/collection/components/stack/stack.css +10 -0
  310. package/dist/collection/components/stack/stack.js +82 -0
  311. package/dist/collection/components/stack/stack.js.map +1 -0
  312. package/dist/collection/components/stack/stack.stories.js +121 -0
  313. package/dist/collection/components/stack/stack.stories.js.map +1 -0
  314. package/dist/collection/components/stepper/step.css +172 -0
  315. package/dist/collection/components/stepper/step.js +205 -0
  316. package/dist/collection/components/stepper/step.js.map +1 -0
  317. package/dist/collection/components/stepper/step.stories.js +4 -0
  318. package/dist/collection/components/stepper/step.stories.js.map +1 -0
  319. package/dist/collection/components/stepper/stepper.css +32 -0
  320. package/dist/collection/components/stepper/stepper.js +137 -0
  321. package/dist/collection/components/stepper/stepper.js.map +1 -0
  322. package/dist/collection/components/stepper/stepper.stories.js +130 -0
  323. package/dist/collection/components/stepper/stepper.stories.js.map +1 -0
  324. package/dist/collection/components/switch-group/switch-group.css +51 -0
  325. package/dist/collection/components/switch-group/switch-group.js +237 -0
  326. package/dist/collection/components/switch-group/switch-group.js.map +1 -0
  327. package/dist/collection/components/switch-group/switch-group.stories.js +132 -0
  328. package/dist/collection/components/switch-group/switch-group.stories.js.map +1 -0
  329. package/dist/collection/components/switch-group/switch-option.css +64 -0
  330. package/dist/collection/components/switch-group/switch-option.js +150 -0
  331. package/dist/collection/components/switch-group/switch-option.js.map +1 -0
  332. package/dist/collection/components/switch-group/switch-option.stories.js +4 -0
  333. package/dist/collection/components/switch-group/switch-option.stories.js.map +1 -0
  334. package/dist/collection/components/table/table.css +112 -0
  335. package/dist/collection/components/table/table.js +151 -0
  336. package/dist/collection/components/table/table.js.map +1 -0
  337. package/dist/collection/components/table/table.stories.js +147 -0
  338. package/dist/collection/components/table/table.stories.js.map +1 -0
  339. package/dist/collection/components/tabs/tab-panel.css +11 -0
  340. package/dist/collection/components/tabs/tab-panel.js +116 -0
  341. package/dist/collection/components/tabs/tab-panel.js.map +1 -0
  342. package/dist/collection/components/tabs/tab-panel.stories.js +4 -0
  343. package/dist/collection/components/tabs/tab-panel.stories.js.map +1 -0
  344. package/dist/collection/components/tabs/tabs.css +134 -0
  345. package/dist/collection/components/tabs/tabs.js +213 -0
  346. package/dist/collection/components/tabs/tabs.js.map +1 -0
  347. package/dist/collection/components/tabs/tabs.stories.js +187 -0
  348. package/dist/collection/components/tabs/tabs.stories.js.map +1 -0
  349. package/dist/collection/components/textarea/textarea.css +146 -0
  350. package/dist/collection/components/textarea/textarea.js +526 -0
  351. package/dist/collection/components/textarea/textarea.js.map +1 -0
  352. package/dist/collection/components/textarea/textarea.stories.js +130 -0
  353. package/dist/collection/components/textarea/textarea.stories.js.map +1 -0
  354. package/dist/collection/components/toast/toast.css +166 -0
  355. package/dist/collection/components/toast/toast.js +291 -0
  356. package/dist/collection/components/toast/toast.js.map +1 -0
  357. package/dist/collection/components/toast/toast.stories.js +91 -0
  358. package/dist/collection/components/toast/toast.stories.js.map +1 -0
  359. package/dist/collection/components/toggle/toggle.css +99 -0
  360. package/dist/collection/components/toggle/toggle.js +220 -0
  361. package/dist/collection/components/toggle/toggle.js.map +1 -0
  362. package/dist/collection/components/toggle/toggle.stories.js +145 -0
  363. package/dist/collection/components/toggle/toggle.stories.js.map +1 -0
  364. package/dist/collection/components/toolbar/toolbar.css +89 -0
  365. package/dist/collection/components/toolbar/toolbar.js +89 -0
  366. package/dist/collection/components/toolbar/toolbar.js.map +1 -0
  367. package/dist/collection/components/toolbar/toolbar.stories.js +131 -0
  368. package/dist/collection/components/toolbar/toolbar.stories.js.map +1 -0
  369. package/dist/collection/components/tooltip/tooltip.css +124 -0
  370. package/dist/collection/components/tooltip/tooltip.js +242 -0
  371. package/dist/collection/components/tooltip/tooltip.js.map +1 -0
  372. package/dist/collection/components/tooltip/tooltip.stories.js +186 -0
  373. package/dist/collection/components/tooltip/tooltip.stories.js.map +1 -0
  374. package/dist/collection/components/tree/tree-item.css +97 -0
  375. package/dist/collection/components/tree/tree-item.js +242 -0
  376. package/dist/collection/components/tree/tree-item.js.map +1 -0
  377. package/dist/collection/components/tree/tree-item.stories.js +4 -0
  378. package/dist/collection/components/tree/tree-item.stories.js.map +1 -0
  379. package/dist/collection/components/tree/tree.css +23 -0
  380. package/dist/collection/components/tree/tree.js +119 -0
  381. package/dist/collection/components/tree/tree.js.map +1 -0
  382. package/dist/collection/components/tree/tree.stories.js +121 -0
  383. package/dist/collection/components/tree/tree.stories.js.map +1 -0
  384. package/dist/collection/index.js +53 -0
  385. package/dist/collection/index.js.map +1 -0
  386. package/dist/collection/theme/tokens.js +109 -0
  387. package/dist/collection/theme/tokens.js.map +1 -0
  388. package/dist/collection/types/index.js +2 -0
  389. package/dist/collection/types/index.js.map +1 -0
  390. package/dist/collection/utils/aria.js +89 -0
  391. package/dist/collection/utils/aria.js.map +1 -0
  392. package/dist/collection/utils/dom.js +42 -0
  393. package/dist/collection/utils/dom.js.map +1 -0
  394. package/dist/collection/utils/events.js +20 -0
  395. package/dist/collection/utils/events.js.map +1 -0
  396. package/dist/components/index.d.ts +35 -0
  397. package/dist/components/index.js +2 -0
  398. package/dist/components/index.js.map +1 -0
  399. package/dist/components/p-6RDSLDuS.js +2 -0
  400. package/dist/components/p-6RDSLDuS.js.map +1 -0
  401. package/dist/components/p-B0ZXNFSa.js +2 -0
  402. package/dist/components/p-B0ZXNFSa.js.map +1 -0
  403. package/dist/components/p-BCgm2utU.js +2 -0
  404. package/dist/components/p-BCgm2utU.js.map +1 -0
  405. package/dist/components/p-BFN5hUo4.js +2 -0
  406. package/dist/components/p-BFN5hUo4.js.map +1 -0
  407. package/dist/components/p-BOxYojS-.js +9572 -0
  408. package/dist/components/p-BOxYojS-.js.map +1 -0
  409. package/dist/components/p-BP-fZfRb.js +2 -0
  410. package/dist/components/p-BP-fZfRb.js.map +1 -0
  411. package/dist/components/p-B_NL55YI.js +2 -0
  412. package/dist/components/p-B_NL55YI.js.map +1 -0
  413. package/dist/components/p-BcoU0ISN.js +2 -0
  414. package/dist/components/p-BcoU0ISN.js.map +1 -0
  415. package/dist/components/p-BdzH6wlc.js +2 -0
  416. package/dist/components/p-BdzH6wlc.js.map +1 -0
  417. package/dist/components/p-BeErYjKz.js +2 -0
  418. package/dist/components/p-BeErYjKz.js.map +1 -0
  419. package/dist/components/p-BjiDgszq.js +2 -0
  420. package/dist/components/p-BjiDgszq.js.map +1 -0
  421. package/dist/components/p-BjyTgfXe.js +2 -0
  422. package/dist/components/p-BjyTgfXe.js.map +1 -0
  423. package/dist/components/p-BlZHjan9.js +2 -0
  424. package/dist/components/p-BlZHjan9.js.map +1 -0
  425. package/dist/components/p-C7JaUlNB.js +2 -0
  426. package/dist/components/p-C7JaUlNB.js.map +1 -0
  427. package/dist/components/p-C8wd1644.js +2 -0
  428. package/dist/components/p-C8wd1644.js.map +1 -0
  429. package/dist/components/p-CEQXPxzU.js +2 -0
  430. package/dist/components/p-CEQXPxzU.js.map +1 -0
  431. package/dist/components/p-CGh7W07E.js +2 -0
  432. package/dist/components/p-CGh7W07E.js.map +1 -0
  433. package/dist/components/p-CHtE5caV.js +2 -0
  434. package/dist/components/p-CHtE5caV.js.map +1 -0
  435. package/dist/components/p-CSNeA_zh.js +2 -0
  436. package/dist/components/p-CSNeA_zh.js.map +1 -0
  437. package/dist/components/p-CbHlJvjF.js +2 -0
  438. package/dist/components/p-CbHlJvjF.js.map +1 -0
  439. package/dist/components/p-CkQOAizb.js +2 -0
  440. package/dist/components/p-CkQOAizb.js.map +1 -0
  441. package/dist/components/p-Cy_Ad-Jy.js +2 -0
  442. package/dist/components/p-Cy_Ad-Jy.js.map +1 -0
  443. package/dist/components/p-DD986daz.js +2 -0
  444. package/dist/components/p-DD986daz.js.map +1 -0
  445. package/dist/components/p-DFnNsZtI.js +2 -0
  446. package/dist/components/p-DFnNsZtI.js.map +1 -0
  447. package/dist/components/p-DMPxu5Po.js +2 -0
  448. package/dist/components/p-DMPxu5Po.js.map +1 -0
  449. package/dist/components/p-DMuI5d5r.js +2 -0
  450. package/dist/components/p-DMuI5d5r.js.map +1 -0
  451. package/dist/components/p-DPQ1o4MP.js +2 -0
  452. package/dist/components/p-DPQ1o4MP.js.map +1 -0
  453. package/dist/components/p-DTAVTqnc.js +2 -0
  454. package/dist/components/p-DTAVTqnc.js.map +1 -0
  455. package/dist/components/p-DhQ7X_TL.js +2 -0
  456. package/dist/components/p-DhQ7X_TL.js.map +1 -0
  457. package/dist/components/p-DkpyRqHf.js +2 -0
  458. package/dist/components/p-DkpyRqHf.js.map +1 -0
  459. package/dist/components/p-DlB-KfKY.js +2 -0
  460. package/dist/components/p-DlB-KfKY.js.map +1 -0
  461. package/dist/components/p-DooMF1E0.js +2 -0
  462. package/dist/components/p-DooMF1E0.js.map +1 -0
  463. package/dist/components/p-DwJ7Jt3k.js +2 -0
  464. package/dist/components/p-DwJ7Jt3k.js.map +1 -0
  465. package/dist/components/p-DwUH8YQW.js +2 -0
  466. package/dist/components/p-DwUH8YQW.js.map +1 -0
  467. package/dist/components/p-Fot2uNwg.js +2 -0
  468. package/dist/components/p-Fot2uNwg.js.map +1 -0
  469. package/dist/components/p-O8aQgWRZ.js +2 -0
  470. package/dist/components/p-O8aQgWRZ.js.map +1 -0
  471. package/dist/components/p-SopsdO_f.js +2 -0
  472. package/dist/components/p-SopsdO_f.js.map +1 -0
  473. package/dist/components/p-TFHAUMKT.js +2 -0
  474. package/dist/components/p-TFHAUMKT.js.map +1 -0
  475. package/dist/components/p-faVXXwqR.js +2 -0
  476. package/dist/components/p-faVXXwqR.js.map +1 -0
  477. package/dist/components/p-lpqZSiIf.js +2 -0
  478. package/dist/components/p-lpqZSiIf.js.map +1 -0
  479. package/dist/components/p-mfB_pP4L.js +2 -0
  480. package/dist/components/p-mfB_pP4L.js.map +1 -0
  481. package/dist/components/p-v-L32wKy.js +2 -0
  482. package/dist/components/p-v-L32wKy.js.map +1 -0
  483. package/dist/components/p-zveaarwa.js +2 -0
  484. package/dist/components/p-zveaarwa.js.map +1 -0
  485. package/dist/components/ts-accordion-item.d.ts +11 -0
  486. package/dist/components/ts-accordion-item.js +2 -0
  487. package/dist/components/ts-accordion-item.js.map +1 -0
  488. package/dist/components/ts-accordion.d.ts +11 -0
  489. package/dist/components/ts-accordion.js +2 -0
  490. package/dist/components/ts-accordion.js.map +1 -0
  491. package/dist/components/ts-alert.d.ts +11 -0
  492. package/dist/components/ts-alert.js +2 -0
  493. package/dist/components/ts-alert.js.map +1 -0
  494. package/dist/components/ts-avatar.d.ts +11 -0
  495. package/dist/components/ts-avatar.js +2 -0
  496. package/dist/components/ts-avatar.js.map +1 -0
  497. package/dist/components/ts-badge.d.ts +11 -0
  498. package/dist/components/ts-badge.js +2 -0
  499. package/dist/components/ts-badge.js.map +1 -0
  500. package/dist/components/ts-banner.d.ts +11 -0
  501. package/dist/components/ts-banner.js +2 -0
  502. package/dist/components/ts-banner.js.map +1 -0
  503. package/dist/components/ts-breadcrumb-item.d.ts +11 -0
  504. package/dist/components/ts-breadcrumb-item.js +2 -0
  505. package/dist/components/ts-breadcrumb-item.js.map +1 -0
  506. package/dist/components/ts-breadcrumb.d.ts +11 -0
  507. package/dist/components/ts-breadcrumb.js +2 -0
  508. package/dist/components/ts-breadcrumb.js.map +1 -0
  509. package/dist/components/ts-button.d.ts +11 -0
  510. package/dist/components/ts-button.js +2 -0
  511. package/dist/components/ts-button.js.map +1 -0
  512. package/dist/components/ts-card.d.ts +11 -0
  513. package/dist/components/ts-card.js +2 -0
  514. package/dist/components/ts-card.js.map +1 -0
  515. package/dist/components/ts-checkbox.d.ts +11 -0
  516. package/dist/components/ts-checkbox.js +2 -0
  517. package/dist/components/ts-checkbox.js.map +1 -0
  518. package/dist/components/ts-chip.d.ts +11 -0
  519. package/dist/components/ts-chip.js +2 -0
  520. package/dist/components/ts-chip.js.map +1 -0
  521. package/dist/components/ts-container.d.ts +11 -0
  522. package/dist/components/ts-container.js +2 -0
  523. package/dist/components/ts-container.js.map +1 -0
  524. package/dist/components/ts-date-picker.d.ts +11 -0
  525. package/dist/components/ts-date-picker.js +2 -0
  526. package/dist/components/ts-date-picker.js.map +1 -0
  527. package/dist/components/ts-dialog.d.ts +11 -0
  528. package/dist/components/ts-dialog.js +2 -0
  529. package/dist/components/ts-dialog.js.map +1 -0
  530. package/dist/components/ts-divider.d.ts +11 -0
  531. package/dist/components/ts-divider.js +2 -0
  532. package/dist/components/ts-divider.js.map +1 -0
  533. package/dist/components/ts-drawer.d.ts +11 -0
  534. package/dist/components/ts-drawer.js +2 -0
  535. package/dist/components/ts-drawer.js.map +1 -0
  536. package/dist/components/ts-empty-state.d.ts +11 -0
  537. package/dist/components/ts-empty-state.js +2 -0
  538. package/dist/components/ts-empty-state.js.map +1 -0
  539. package/dist/components/ts-file-upload.d.ts +11 -0
  540. package/dist/components/ts-file-upload.js +2 -0
  541. package/dist/components/ts-file-upload.js.map +1 -0
  542. package/dist/components/ts-grid.d.ts +11 -0
  543. package/dist/components/ts-grid.js +2 -0
  544. package/dist/components/ts-grid.js.map +1 -0
  545. package/dist/components/ts-icon.d.ts +11 -0
  546. package/dist/components/ts-icon.js +2 -0
  547. package/dist/components/ts-icon.js.map +1 -0
  548. package/dist/components/ts-input.d.ts +11 -0
  549. package/dist/components/ts-input.js +2 -0
  550. package/dist/components/ts-input.js.map +1 -0
  551. package/dist/components/ts-menu-item.d.ts +11 -0
  552. package/dist/components/ts-menu-item.js +2 -0
  553. package/dist/components/ts-menu-item.js.map +1 -0
  554. package/dist/components/ts-menu.d.ts +11 -0
  555. package/dist/components/ts-menu.js +2 -0
  556. package/dist/components/ts-menu.js.map +1 -0
  557. package/dist/components/ts-modal.d.ts +11 -0
  558. package/dist/components/ts-modal.js +2 -0
  559. package/dist/components/ts-modal.js.map +1 -0
  560. package/dist/components/ts-nav-item.d.ts +11 -0
  561. package/dist/components/ts-nav-item.js +2 -0
  562. package/dist/components/ts-nav-item.js.map +1 -0
  563. package/dist/components/ts-nav.d.ts +11 -0
  564. package/dist/components/ts-nav.js +2 -0
  565. package/dist/components/ts-nav.js.map +1 -0
  566. package/dist/components/ts-pagination.d.ts +11 -0
  567. package/dist/components/ts-pagination.js +2 -0
  568. package/dist/components/ts-pagination.js.map +1 -0
  569. package/dist/components/ts-popover.d.ts +11 -0
  570. package/dist/components/ts-popover.js +2 -0
  571. package/dist/components/ts-popover.js.map +1 -0
  572. package/dist/components/ts-progress.d.ts +11 -0
  573. package/dist/components/ts-progress.js +2 -0
  574. package/dist/components/ts-progress.js.map +1 -0
  575. package/dist/components/ts-radio.d.ts +11 -0
  576. package/dist/components/ts-radio.js +2 -0
  577. package/dist/components/ts-radio.js.map +1 -0
  578. package/dist/components/ts-row.d.ts +11 -0
  579. package/dist/components/ts-row.js +2 -0
  580. package/dist/components/ts-row.js.map +1 -0
  581. package/dist/components/ts-select.d.ts +11 -0
  582. package/dist/components/ts-select.js +2 -0
  583. package/dist/components/ts-select.js.map +1 -0
  584. package/dist/components/ts-skeleton.d.ts +11 -0
  585. package/dist/components/ts-skeleton.js +2 -0
  586. package/dist/components/ts-skeleton.js.map +1 -0
  587. package/dist/components/ts-slider.d.ts +11 -0
  588. package/dist/components/ts-slider.js +2 -0
  589. package/dist/components/ts-slider.js.map +1 -0
  590. package/dist/components/ts-spacer.d.ts +11 -0
  591. package/dist/components/ts-spacer.js +2 -0
  592. package/dist/components/ts-spacer.js.map +1 -0
  593. package/dist/components/ts-spinner.d.ts +11 -0
  594. package/dist/components/ts-spinner.js +2 -0
  595. package/dist/components/ts-spinner.js.map +1 -0
  596. package/dist/components/ts-stack.d.ts +11 -0
  597. package/dist/components/ts-stack.js +2 -0
  598. package/dist/components/ts-stack.js.map +1 -0
  599. package/dist/components/ts-step.d.ts +11 -0
  600. package/dist/components/ts-step.js +2 -0
  601. package/dist/components/ts-step.js.map +1 -0
  602. package/dist/components/ts-stepper.d.ts +11 -0
  603. package/dist/components/ts-stepper.js +2 -0
  604. package/dist/components/ts-stepper.js.map +1 -0
  605. package/dist/components/ts-switch-group.d.ts +11 -0
  606. package/dist/components/ts-switch-group.js +2 -0
  607. package/dist/components/ts-switch-group.js.map +1 -0
  608. package/dist/components/ts-switch-option.d.ts +11 -0
  609. package/dist/components/ts-switch-option.js +2 -0
  610. package/dist/components/ts-switch-option.js.map +1 -0
  611. package/dist/components/ts-tab-panel.d.ts +11 -0
  612. package/dist/components/ts-tab-panel.js +2 -0
  613. package/dist/components/ts-tab-panel.js.map +1 -0
  614. package/dist/components/ts-table.d.ts +11 -0
  615. package/dist/components/ts-table.js +2 -0
  616. package/dist/components/ts-table.js.map +1 -0
  617. package/dist/components/ts-tabs.d.ts +11 -0
  618. package/dist/components/ts-tabs.js +2 -0
  619. package/dist/components/ts-tabs.js.map +1 -0
  620. package/dist/components/ts-textarea.d.ts +11 -0
  621. package/dist/components/ts-textarea.js +2 -0
  622. package/dist/components/ts-textarea.js.map +1 -0
  623. package/dist/components/ts-toast.d.ts +11 -0
  624. package/dist/components/ts-toast.js +2 -0
  625. package/dist/components/ts-toast.js.map +1 -0
  626. package/dist/components/ts-toggle.d.ts +11 -0
  627. package/dist/components/ts-toggle.js +2 -0
  628. package/dist/components/ts-toggle.js.map +1 -0
  629. package/dist/components/ts-toolbar.d.ts +11 -0
  630. package/dist/components/ts-toolbar.js +2 -0
  631. package/dist/components/ts-toolbar.js.map +1 -0
  632. package/dist/components/ts-tooltip.d.ts +11 -0
  633. package/dist/components/ts-tooltip.js +2 -0
  634. package/dist/components/ts-tooltip.js.map +1 -0
  635. package/dist/components/ts-tree-item.d.ts +11 -0
  636. package/dist/components/ts-tree-item.js +2 -0
  637. package/dist/components/ts-tree-item.js.map +1 -0
  638. package/dist/components/ts-tree.d.ts +11 -0
  639. package/dist/components/ts-tree.js +2 -0
  640. package/dist/components/ts-tree.js.map +1 -0
  641. package/dist/components.d.ts +480 -0
  642. package/dist/components.json +12678 -0
  643. package/dist/esm/aria-lpqZSiIf.js +89 -0
  644. package/dist/esm/aria-lpqZSiIf.js.map +1 -0
  645. package/dist/esm/index-V8-ENixA.js +2373 -0
  646. package/dist/esm/index-V8-ENixA.js.map +1 -0
  647. package/dist/esm/index.js +102 -0
  648. package/dist/esm/index.js.map +1 -0
  649. package/dist/esm/loader.js +13 -0
  650. package/dist/esm/loader.js.map +1 -0
  651. package/dist/esm/lucide-BOxYojS-.js +26523 -0
  652. package/dist/esm/lucide-BOxYojS-.js.map +1 -0
  653. package/dist/esm/tessera-ui.js +23 -0
  654. package/dist/esm/tessera-ui.js.map +1 -0
  655. package/dist/esm/ts-accordion-item.entry.js +63 -0
  656. package/dist/esm/ts-accordion-item.entry.js.map +1 -0
  657. package/dist/esm/ts-accordion.entry.js +34 -0
  658. package/dist/esm/ts-accordion.entry.js.map +1 -0
  659. package/dist/esm/ts-alert.entry.js +58 -0
  660. package/dist/esm/ts-alert.entry.js.map +1 -0
  661. package/dist/esm/ts-avatar.entry.js +52 -0
  662. package/dist/esm/ts-avatar.entry.js.map +1 -0
  663. package/dist/esm/ts-badge.entry.js +36 -0
  664. package/dist/esm/ts-badge.entry.js.map +1 -0
  665. package/dist/esm/ts-banner.entry.js +65 -0
  666. package/dist/esm/ts-banner.entry.js.map +1 -0
  667. package/dist/esm/ts-breadcrumb-item.entry.js +26 -0
  668. package/dist/esm/ts-breadcrumb-item.entry.js.map +1 -0
  669. package/dist/esm/ts-breadcrumb.entry.js +33 -0
  670. package/dist/esm/ts-breadcrumb.entry.js.map +1 -0
  671. package/dist/esm/ts-button.entry.js +86 -0
  672. package/dist/esm/ts-button.entry.js.map +1 -0
  673. package/dist/esm/ts-card.entry.js +33 -0
  674. package/dist/esm/ts-card.entry.js.map +1 -0
  675. package/dist/esm/ts-checkbox.entry.js +66 -0
  676. package/dist/esm/ts-checkbox.entry.js.map +1 -0
  677. package/dist/esm/ts-chip.entry.js +74 -0
  678. package/dist/esm/ts-chip.entry.js.map +1 -0
  679. package/dist/esm/ts-container.entry.js +26 -0
  680. package/dist/esm/ts-container.entry.js.map +1 -0
  681. package/dist/esm/ts-date-picker.entry.js +227 -0
  682. package/dist/esm/ts-date-picker.entry.js.map +1 -0
  683. package/dist/esm/ts-dialog.entry.js +107 -0
  684. package/dist/esm/ts-dialog.entry.js.map +1 -0
  685. package/dist/esm/ts-divider.entry.js +31 -0
  686. package/dist/esm/ts-divider.entry.js.map +1 -0
  687. package/dist/esm/ts-drawer.entry.js +111 -0
  688. package/dist/esm/ts-drawer.entry.js.map +1 -0
  689. package/dist/esm/ts-empty-state.entry.js +30 -0
  690. package/dist/esm/ts-empty-state.entry.js.map +1 -0
  691. package/dist/esm/ts-file-upload.entry.js +120 -0
  692. package/dist/esm/ts-file-upload.entry.js.map +1 -0
  693. package/dist/esm/ts-grid.entry.js +35 -0
  694. package/dist/esm/ts-grid.entry.js.map +1 -0
  695. package/dist/esm/ts-icon-Jz9ioZag.js +155 -0
  696. package/dist/esm/ts-icon-Jz9ioZag.js.map +1 -0
  697. package/dist/esm/ts-icon.entry.js +5 -0
  698. package/dist/esm/ts-icon.entry.js.map +1 -0
  699. package/dist/esm/ts-input.entry.js +128 -0
  700. package/dist/esm/ts-input.entry.js.map +1 -0
  701. package/dist/esm/ts-menu-item.entry.js +63 -0
  702. package/dist/esm/ts-menu-item.entry.js.map +1 -0
  703. package/dist/esm/ts-menu.entry.js +153 -0
  704. package/dist/esm/ts-menu.entry.js.map +1 -0
  705. package/dist/esm/ts-modal.entry.js +120 -0
  706. package/dist/esm/ts-modal.entry.js.map +1 -0
  707. package/dist/esm/ts-nav-item.entry.js +46 -0
  708. package/dist/esm/ts-nav-item.entry.js.map +1 -0
  709. package/dist/esm/ts-nav.entry.js +27 -0
  710. package/dist/esm/ts-nav.entry.js.map +1 -0
  711. package/dist/esm/ts-pagination.entry.js +86 -0
  712. package/dist/esm/ts-pagination.entry.js.map +1 -0
  713. package/dist/esm/ts-popover.entry.js +131 -0
  714. package/dist/esm/ts-popover.entry.js.map +1 -0
  715. package/dist/esm/ts-progress.entry.js +44 -0
  716. package/dist/esm/ts-progress.entry.js.map +1 -0
  717. package/dist/esm/ts-radio.entry.js +58 -0
  718. package/dist/esm/ts-radio.entry.js.map +1 -0
  719. package/dist/esm/ts-row.entry.js +51 -0
  720. package/dist/esm/ts-row.entry.js.map +1 -0
  721. package/dist/esm/ts-select.entry.js +219 -0
  722. package/dist/esm/ts-select.entry.js.map +1 -0
  723. package/dist/esm/ts-skeleton.entry.js +53 -0
  724. package/dist/esm/ts-skeleton.entry.js.map +1 -0
  725. package/dist/esm/ts-slider.entry.js +130 -0
  726. package/dist/esm/ts-slider.entry.js.map +1 -0
  727. package/dist/esm/ts-spacer.entry.js +26 -0
  728. package/dist/esm/ts-spacer.entry.js.map +1 -0
  729. package/dist/esm/ts-spinner.entry.js +28 -0
  730. package/dist/esm/ts-spinner.entry.js.map +1 -0
  731. package/dist/esm/ts-stack.entry.js +32 -0
  732. package/dist/esm/ts-stack.entry.js.map +1 -0
  733. package/dist/esm/ts-step.entry.js +72 -0
  734. package/dist/esm/ts-step.entry.js.map +1 -0
  735. package/dist/esm/ts-stepper.entry.js +65 -0
  736. package/dist/esm/ts-stepper.entry.js.map +1 -0
  737. package/dist/esm/ts-switch-group.entry.js +107 -0
  738. package/dist/esm/ts-switch-group.entry.js.map +1 -0
  739. package/dist/esm/ts-switch-option.entry.js +40 -0
  740. package/dist/esm/ts-switch-option.entry.js.map +1 -0
  741. package/dist/esm/ts-tab-panel.entry.js +28 -0
  742. package/dist/esm/ts-tab-panel.entry.js.map +1 -0
  743. package/dist/esm/ts-table.entry.js +37 -0
  744. package/dist/esm/ts-table.entry.js.map +1 -0
  745. package/dist/esm/ts-tabs.entry.js +122 -0
  746. package/dist/esm/ts-tabs.entry.js.map +1 -0
  747. package/dist/esm/ts-textarea.entry.js +115 -0
  748. package/dist/esm/ts-textarea.entry.js.map +1 -0
  749. package/dist/esm/ts-toast.entry.js +105 -0
  750. package/dist/esm/ts-toast.entry.js.map +1 -0
  751. package/dist/esm/ts-toggle.entry.js +56 -0
  752. package/dist/esm/ts-toggle.entry.js.map +1 -0
  753. package/dist/esm/ts-toolbar.entry.js +27 -0
  754. package/dist/esm/ts-toolbar.entry.js.map +1 -0
  755. package/dist/esm/ts-tooltip.entry.js +80 -0
  756. package/dist/esm/ts-tooltip.entry.js.map +1 -0
  757. package/dist/esm/ts-tree-item.entry.js +92 -0
  758. package/dist/esm/ts-tree-item.entry.js.map +1 -0
  759. package/dist/esm/ts-tree.entry.js +79 -0
  760. package/dist/esm/ts-tree.entry.js.map +1 -0
  761. package/dist/index.cjs.js +1 -0
  762. package/dist/index.js +1 -0
  763. package/dist/tessera-ui/index.esm.js +2 -0
  764. package/dist/tessera-ui/index.esm.js.map +1 -0
  765. package/dist/tessera-ui/p-0424cd55.entry.js +2 -0
  766. package/dist/tessera-ui/p-0424cd55.entry.js.map +1 -0
  767. package/dist/tessera-ui/p-04522bf9.entry.js +2 -0
  768. package/dist/tessera-ui/p-04522bf9.entry.js.map +1 -0
  769. package/dist/tessera-ui/p-04aa8b90.entry.js +2 -0
  770. package/dist/tessera-ui/p-04aa8b90.entry.js.map +1 -0
  771. package/dist/tessera-ui/p-080eaf89.entry.js +2 -0
  772. package/dist/tessera-ui/p-080eaf89.entry.js.map +1 -0
  773. package/dist/tessera-ui/p-0ec061e5.entry.js +2 -0
  774. package/dist/tessera-ui/p-0ec061e5.entry.js.map +1 -0
  775. package/dist/tessera-ui/p-122e43b7.entry.js +2 -0
  776. package/dist/tessera-ui/p-122e43b7.entry.js.map +1 -0
  777. package/dist/tessera-ui/p-16bb8ca8.entry.js +2 -0
  778. package/dist/tessera-ui/p-16bb8ca8.entry.js.map +1 -0
  779. package/dist/tessera-ui/p-16fc632b.entry.js +2 -0
  780. package/dist/tessera-ui/p-16fc632b.entry.js.map +1 -0
  781. package/dist/tessera-ui/p-1d73f6c9.entry.js +2 -0
  782. package/dist/tessera-ui/p-1d73f6c9.entry.js.map +1 -0
  783. package/dist/tessera-ui/p-24305379.entry.js +2 -0
  784. package/dist/tessera-ui/p-24305379.entry.js.map +1 -0
  785. package/dist/tessera-ui/p-25f77cc9.entry.js +2 -0
  786. package/dist/tessera-ui/p-25f77cc9.entry.js.map +1 -0
  787. package/dist/tessera-ui/p-35eb8496.entry.js +2 -0
  788. package/dist/tessera-ui/p-35eb8496.entry.js.map +1 -0
  789. package/dist/tessera-ui/p-3aec66b4.entry.js +2 -0
  790. package/dist/tessera-ui/p-3aec66b4.entry.js.map +1 -0
  791. package/dist/tessera-ui/p-4277460b.entry.js +2 -0
  792. package/dist/tessera-ui/p-4277460b.entry.js.map +1 -0
  793. package/dist/tessera-ui/p-441310f7.entry.js +2 -0
  794. package/dist/tessera-ui/p-441310f7.entry.js.map +1 -0
  795. package/dist/tessera-ui/p-491e1a75.entry.js +2 -0
  796. package/dist/tessera-ui/p-491e1a75.entry.js.map +1 -0
  797. package/dist/tessera-ui/p-50d092ce.entry.js +2 -0
  798. package/dist/tessera-ui/p-50d092ce.entry.js.map +1 -0
  799. package/dist/tessera-ui/p-50efadf3.entry.js +2 -0
  800. package/dist/tessera-ui/p-50efadf3.entry.js.map +1 -0
  801. package/dist/tessera-ui/p-53846d59.entry.js +2 -0
  802. package/dist/tessera-ui/p-53846d59.entry.js.map +1 -0
  803. package/dist/tessera-ui/p-56f2b070.entry.js +2 -0
  804. package/dist/tessera-ui/p-56f2b070.entry.js.map +1 -0
  805. package/dist/tessera-ui/p-6760f922.entry.js +2 -0
  806. package/dist/tessera-ui/p-6760f922.entry.js.map +1 -0
  807. package/dist/tessera-ui/p-69bb11ed.entry.js +2 -0
  808. package/dist/tessera-ui/p-69bb11ed.entry.js.map +1 -0
  809. package/dist/tessera-ui/p-6d35a60c.entry.js +2 -0
  810. package/dist/tessera-ui/p-6d35a60c.entry.js.map +1 -0
  811. package/dist/tessera-ui/p-6ec285ad.entry.js +2 -0
  812. package/dist/tessera-ui/p-6ec285ad.entry.js.map +1 -0
  813. package/dist/tessera-ui/p-708d4eb5.entry.js +2 -0
  814. package/dist/tessera-ui/p-708d4eb5.entry.js.map +1 -0
  815. package/dist/tessera-ui/p-79ff8ceb.entry.js +2 -0
  816. package/dist/tessera-ui/p-79ff8ceb.entry.js.map +1 -0
  817. package/dist/tessera-ui/p-7e531195.entry.js +2 -0
  818. package/dist/tessera-ui/p-7e531195.entry.js.map +1 -0
  819. package/dist/tessera-ui/p-7fa64f00.entry.js +2 -0
  820. package/dist/tessera-ui/p-7fa64f00.entry.js.map +1 -0
  821. package/dist/tessera-ui/p-829c4307.entry.js +2 -0
  822. package/dist/tessera-ui/p-829c4307.entry.js.map +1 -0
  823. package/dist/tessera-ui/p-91ccef3f.entry.js +2 -0
  824. package/dist/tessera-ui/p-91ccef3f.entry.js.map +1 -0
  825. package/dist/tessera-ui/p-9209e603.entry.js +2 -0
  826. package/dist/tessera-ui/p-9209e603.entry.js.map +1 -0
  827. package/dist/tessera-ui/p-97a9def7.entry.js +2 -0
  828. package/dist/tessera-ui/p-97a9def7.entry.js.map +1 -0
  829. package/dist/tessera-ui/p-9b41b538.entry.js +2 -0
  830. package/dist/tessera-ui/p-9b41b538.entry.js.map +1 -0
  831. package/dist/tessera-ui/p-9c0504fd.entry.js +2 -0
  832. package/dist/tessera-ui/p-9c0504fd.entry.js.map +1 -0
  833. package/dist/tessera-ui/p-BOxYojS-.js +9572 -0
  834. package/dist/tessera-ui/p-BOxYojS-.js.map +1 -0
  835. package/dist/tessera-ui/p-StBQmS8h.js +2 -0
  836. package/dist/tessera-ui/p-StBQmS8h.js.map +1 -0
  837. package/dist/tessera-ui/p-V8-ENixA.js +3 -0
  838. package/dist/tessera-ui/p-V8-ENixA.js.map +1 -0
  839. package/dist/tessera-ui/p-a120b5d6.entry.js +2 -0
  840. package/dist/tessera-ui/p-a120b5d6.entry.js.map +1 -0
  841. package/dist/tessera-ui/p-a55a5695.entry.js +2 -0
  842. package/dist/tessera-ui/p-a55a5695.entry.js.map +1 -0
  843. package/dist/tessera-ui/p-a83d903e.entry.js +2 -0
  844. package/dist/tessera-ui/p-a83d903e.entry.js.map +1 -0
  845. package/dist/tessera-ui/p-adc807dc.entry.js +2 -0
  846. package/dist/tessera-ui/p-adc807dc.entry.js.map +1 -0
  847. package/dist/tessera-ui/p-b09f202c.entry.js +2 -0
  848. package/dist/tessera-ui/p-b09f202c.entry.js.map +1 -0
  849. package/dist/tessera-ui/p-b1182592.entry.js +2 -0
  850. package/dist/tessera-ui/p-b1182592.entry.js.map +1 -0
  851. package/dist/tessera-ui/p-b3f60955.entry.js +2 -0
  852. package/dist/tessera-ui/p-b3f60955.entry.js.map +1 -0
  853. package/dist/tessera-ui/p-bb9ebbd8.entry.js +2 -0
  854. package/dist/tessera-ui/p-bb9ebbd8.entry.js.map +1 -0
  855. package/dist/tessera-ui/p-bce40715.entry.js +2 -0
  856. package/dist/tessera-ui/p-bce40715.entry.js.map +1 -0
  857. package/dist/tessera-ui/p-c35c7049.entry.js +2 -0
  858. package/dist/tessera-ui/p-c35c7049.entry.js.map +1 -0
  859. package/dist/tessera-ui/p-c59ecffa.entry.js +2 -0
  860. package/dist/tessera-ui/p-c59ecffa.entry.js.map +1 -0
  861. package/dist/tessera-ui/p-d318774a.entry.js +2 -0
  862. package/dist/tessera-ui/p-d318774a.entry.js.map +1 -0
  863. package/dist/tessera-ui/p-d5cbadd6.entry.js +2 -0
  864. package/dist/tessera-ui/p-d5cbadd6.entry.js.map +1 -0
  865. package/dist/tessera-ui/p-e1d2b141.entry.js +2 -0
  866. package/dist/tessera-ui/p-e1d2b141.entry.js.map +1 -0
  867. package/dist/tessera-ui/p-f0bf6408.entry.js +2 -0
  868. package/dist/tessera-ui/p-f0bf6408.entry.js.map +1 -0
  869. package/dist/tessera-ui/p-f639213a.entry.js +2 -0
  870. package/dist/tessera-ui/p-f639213a.entry.js.map +1 -0
  871. package/dist/tessera-ui/p-fd2376e0.entry.js +2 -0
  872. package/dist/tessera-ui/p-fd2376e0.entry.js.map +1 -0
  873. package/dist/tessera-ui/p-fef9a993.entry.js +2 -0
  874. package/dist/tessera-ui/p-fef9a993.entry.js.map +1 -0
  875. package/dist/tessera-ui/p-lpqZSiIf.js +2 -0
  876. package/dist/tessera-ui/p-lpqZSiIf.js.map +1 -0
  877. package/dist/tessera-ui/tessera-ui.css +1 -0
  878. package/dist/tessera-ui/tessera-ui.esm.js +2 -0
  879. package/dist/tessera-ui/tessera-ui.esm.js.map +1 -0
  880. package/dist/types/components/accordion/accordion-item.d.ts +28 -0
  881. package/dist/types/components/accordion/accordion-item.stories.d.ts +5 -0
  882. package/dist/types/components/accordion/accordion.d.ts +12 -0
  883. package/dist/types/components/accordion/accordion.stories.d.ts +21 -0
  884. package/dist/types/components/alert/alert.d.ts +30 -0
  885. package/dist/types/components/alert/alert.stories.d.ts +34 -0
  886. package/dist/types/components/avatar/avatar.d.ts +26 -0
  887. package/dist/types/components/avatar/avatar.stories.d.ts +51 -0
  888. package/dist/types/components/badge/badge.d.ts +19 -0
  889. package/dist/types/components/badge/badge.stories.d.ts +50 -0
  890. package/dist/types/components/banner/banner.d.ts +33 -0
  891. package/dist/types/components/banner/banner.stories.d.ts +40 -0
  892. package/dist/types/components/breadcrumb/breadcrumb-item.d.ts +15 -0
  893. package/dist/types/components/breadcrumb/breadcrumb-item.stories.d.ts +5 -0
  894. package/dist/types/components/breadcrumb/breadcrumb.d.ts +13 -0
  895. package/dist/types/components/breadcrumb/breadcrumb.stories.d.ts +20 -0
  896. package/dist/types/components/button/button.d.ts +45 -0
  897. package/dist/types/components/button/button.stories.d.ts +73 -0
  898. package/dist/types/components/card/card.d.ts +23 -0
  899. package/dist/types/components/card/card.stories.d.ts +46 -0
  900. package/dist/types/components/checkbox/checkbox.d.ts +36 -0
  901. package/dist/types/components/checkbox/checkbox.stories.d.ts +58 -0
  902. package/dist/types/components/chip/chip.d.ts +34 -0
  903. package/dist/types/components/chip/chip.stories.d.ts +54 -0
  904. package/dist/types/components/container/container.d.ts +12 -0
  905. package/dist/types/components/container/container.stories.d.ts +21 -0
  906. package/dist/types/components/date-picker/date-picker.d.ts +67 -0
  907. package/dist/types/components/date-picker/date-picker.stories.d.ts +62 -0
  908. package/dist/types/components/dialog/dialog.d.ts +44 -0
  909. package/dist/types/components/dialog/dialog.stories.d.ts +39 -0
  910. package/dist/types/components/divider/divider.d.ts +13 -0
  911. package/dist/types/components/divider/divider.stories.d.ts +33 -0
  912. package/dist/types/components/drawer/drawer.d.ts +46 -0
  913. package/dist/types/components/drawer/drawer.stories.d.ts +43 -0
  914. package/dist/types/components/empty-state/empty-state.d.ts +24 -0
  915. package/dist/types/components/empty-state/empty-state.stories.d.ts +37 -0
  916. package/dist/types/components/file-upload/file-upload.d.ts +38 -0
  917. package/dist/types/components/file-upload/file-upload.stories.d.ts +43 -0
  918. package/dist/types/components/grid/grid.d.ts +16 -0
  919. package/dist/types/components/grid/grid.stories.d.ts +30 -0
  920. package/dist/types/components/icon/icon-registry.d.ts +27 -0
  921. package/dist/types/components/icon/icon.d.ts +30 -0
  922. package/dist/types/components/icon/icon.stories.d.ts +42 -0
  923. package/dist/types/components/input/input.d.ts +72 -0
  924. package/dist/types/components/input/input.stories.d.ts +77 -0
  925. package/dist/types/components/menu/menu-item.d.ts +31 -0
  926. package/dist/types/components/menu/menu-item.stories.d.ts +5 -0
  927. package/dist/types/components/menu/menu.d.ts +38 -0
  928. package/dist/types/components/menu/menu.stories.d.ts +36 -0
  929. package/dist/types/components/modal/modal.d.ts +52 -0
  930. package/dist/types/components/modal/modal.stories.d.ts +47 -0
  931. package/dist/types/components/nav/nav-item.d.ts +23 -0
  932. package/dist/types/components/nav/nav-item.stories.d.ts +5 -0
  933. package/dist/types/components/nav/nav.d.ts +13 -0
  934. package/dist/types/components/nav/nav.stories.d.ts +27 -0
  935. package/dist/types/components/pagination/pagination.d.ts +28 -0
  936. package/dist/types/components/pagination/pagination.stories.d.ts +42 -0
  937. package/dist/types/components/popover/popover.d.ts +44 -0
  938. package/dist/types/components/popover/popover.stories.d.ts +38 -0
  939. package/dist/types/components/progress/progress.d.ts +26 -0
  940. package/dist/types/components/progress/progress.stories.d.ts +59 -0
  941. package/dist/types/components/radio/radio.d.ts +32 -0
  942. package/dist/types/components/radio/radio.stories.d.ts +48 -0
  943. package/dist/types/components/row/row.d.ts +18 -0
  944. package/dist/types/components/row/row.stories.d.ts +52 -0
  945. package/dist/types/components/select/select.d.ts +74 -0
  946. package/dist/types/components/select/select.stories.d.ts +73 -0
  947. package/dist/types/components/skeleton/skeleton.d.ts +17 -0
  948. package/dist/types/components/skeleton/skeleton.stories.d.ts +44 -0
  949. package/dist/types/components/slider/slider.d.ts +43 -0
  950. package/dist/types/components/slider/slider.stories.d.ts +62 -0
  951. package/dist/types/components/spacer/spacer.d.ts +10 -0
  952. package/dist/types/components/spacer/spacer.stories.d.ts +28 -0
  953. package/dist/types/components/spinner/spinner.d.ts +14 -0
  954. package/dist/types/components/spinner/spinner.stories.d.ts +33 -0
  955. package/dist/types/components/stack/stack.d.ts +12 -0
  956. package/dist/types/components/stack/stack.stories.d.ts +28 -0
  957. package/dist/types/components/stepper/step.d.ts +31 -0
  958. package/dist/types/components/stepper/step.stories.d.ts +5 -0
  959. package/dist/types/components/stepper/stepper.d.ts +18 -0
  960. package/dist/types/components/stepper/stepper.stories.d.ts +36 -0
  961. package/dist/types/components/switch-group/switch-group.d.ts +33 -0
  962. package/dist/types/components/switch-group/switch-group.stories.d.ts +37 -0
  963. package/dist/types/components/switch-group/switch-option.d.ts +24 -0
  964. package/dist/types/components/switch-group/switch-option.stories.d.ts +5 -0
  965. package/dist/types/components/table/table.d.ts +23 -0
  966. package/dist/types/components/table/table.stories.d.ts +45 -0
  967. package/dist/types/components/tabs/tab-panel.d.ts +17 -0
  968. package/dist/types/components/tabs/tab-panel.stories.d.ts +5 -0
  969. package/dist/types/components/tabs/tabs.d.ts +30 -0
  970. package/dist/types/components/tabs/tabs.stories.d.ts +34 -0
  971. package/dist/types/components/textarea/textarea.d.ts +62 -0
  972. package/dist/types/components/textarea/textarea.stories.d.ts +88 -0
  973. package/dist/types/components/toast/toast.d.ts +42 -0
  974. package/dist/types/components/toast/toast.stories.d.ts +48 -0
  975. package/dist/types/components/toggle/toggle.d.ts +31 -0
  976. package/dist/types/components/toggle/toggle.stories.d.ts +46 -0
  977. package/dist/types/components/toolbar/toolbar.d.ts +18 -0
  978. package/dist/types/components/toolbar/toolbar.stories.d.ts +28 -0
  979. package/dist/types/components/tooltip/tooltip.d.ts +36 -0
  980. package/dist/types/components/tooltip/tooltip.stories.d.ts +43 -0
  981. package/dist/types/components/tree/tree-item.d.ts +42 -0
  982. package/dist/types/components/tree/tree-item.stories.d.ts +5 -0
  983. package/dist/types/components/tree/tree.d.ts +13 -0
  984. package/dist/types/components/tree/tree.stories.d.ts +21 -0
  985. package/dist/types/components.d.ts +4191 -0
  986. package/dist/types/index.d.ts +53 -0
  987. package/dist/types/stencil-public-runtime.d.ts +1860 -0
  988. package/dist/types/theme/tokens.d.ts +29 -0
  989. package/dist/types/types/index.d.ts +36 -0
  990. package/dist/types/utils/aria.d.ts +23 -0
  991. package/dist/types/utils/dom.d.ts +19 -0
  992. package/dist/types/utils/events.d.ts +17 -0
  993. package/loader/cdn.js +1 -0
  994. package/loader/index.cjs.js +1 -0
  995. package/loader/index.d.ts +24 -0
  996. package/loader/index.es2017.js +1 -0
  997. package/loader/index.js +2 -0
  998. package/package.json +79 -0
@@ -0,0 +1,128 @@
1
+ /* ==========================================================================
2
+ ts-dialog — Shadow DOM Scoped Styles
3
+
4
+ Component tokens (Tier 3):
5
+ --ts-dialog-bg Dialog background
6
+ --ts-dialog-radius Dialog border radius
7
+ --ts-dialog-shadow Dialog box-shadow
8
+ --ts-dialog-overlay-bg Overlay background
9
+ ========================================================================== */
10
+
11
+ :host {
12
+ font-family: var(--ts-font-family-base);
13
+
14
+ --ts-dialog-bg: var(--ts-color-bg-elevated);
15
+ --ts-dialog-radius: var(--ts-shape-overlay);
16
+ --ts-dialog-shadow: var(--ts-shadow-xl);
17
+ --ts-dialog-overlay-bg: var(--ts-color-bg-overlay);
18
+ }
19
+
20
+ /* ---- Overlay ---- */
21
+ .dialog__overlay {
22
+ position: fixed;
23
+ inset: 0;
24
+ z-index: var(--ts-z-modal);
25
+ display: flex;
26
+ align-items: center;
27
+ justify-content: center;
28
+ padding: var(--ts-spacing-4);
29
+ background-color: var(--ts-dialog-overlay-bg);
30
+ animation: ts-dialog-fade-in 200ms ease-out;
31
+ }
32
+
33
+ /* ---- Panel ---- */
34
+ .dialog__panel {
35
+ position: relative;
36
+ background-color: var(--ts-dialog-bg);
37
+ border-radius: var(--ts-dialog-radius);
38
+ box-shadow: var(--ts-dialog-shadow);
39
+ max-height: calc(100vh - var(--ts-spacing-16));
40
+ overflow-y: auto;
41
+ animation: ts-dialog-scale-in 250ms cubic-bezier(0.16, 1, 0.3, 1);
42
+ outline: none;
43
+ }
44
+
45
+ /* ---- Sizes ---- */
46
+ .dialog__panel--sm { width: 100%; max-width: 400px; }
47
+ .dialog__panel--md { width: 100%; max-width: 520px; }
48
+ .dialog__panel--lg { width: 100%; max-width: 680px; }
49
+
50
+ /* ---- Close Button ---- */
51
+ .dialog__close {
52
+ position: absolute;
53
+ inset-block-start: var(--ts-spacing-3);
54
+ inset-inline-end: var(--ts-spacing-3);
55
+ display: flex;
56
+ align-items: center;
57
+ justify-content: center;
58
+ width: 2rem;
59
+ height: 2rem;
60
+ border: none;
61
+ border-radius: var(--ts-radius-md);
62
+ background: transparent;
63
+ color: var(--ts-color-text-tertiary);
64
+ font-size: var(--ts-font-size-md);
65
+ cursor: pointer;
66
+ transition:
67
+ background-color var(--ts-transition-fast),
68
+ color var(--ts-transition-fast);
69
+ z-index: 1;
70
+ padding: 0;
71
+ line-height: 1;
72
+ }
73
+
74
+ .dialog__close:hover {
75
+ background-color: var(--ts-color-bg-hover);
76
+ color: var(--ts-color-text-secondary);
77
+ }
78
+
79
+ .dialog__close:focus-visible {
80
+ box-shadow: var(--ts-focus-ring);
81
+ }
82
+
83
+ /* ---- Header ---- */
84
+ .dialog__header {
85
+ padding: var(--ts-spacing-5) var(--ts-spacing-6) var(--ts-spacing-3);
86
+ font-size: var(--ts-font-size-lg);
87
+ font-weight: var(--ts-font-weight-semi);
88
+ color: var(--ts-color-text-primary);
89
+ padding-inline-end: var(--ts-spacing-10);
90
+ }
91
+
92
+ /* ---- Body ---- */
93
+ .dialog__body {
94
+ padding: var(--ts-spacing-3) var(--ts-spacing-6);
95
+ font-size: var(--ts-font-size-md);
96
+ color: var(--ts-color-text-secondary);
97
+ line-height: var(--ts-line-height-normal);
98
+ }
99
+
100
+ /* ---- Footer ---- */
101
+ .dialog__footer {
102
+ padding: var(--ts-spacing-3) var(--ts-spacing-6) var(--ts-spacing-5);
103
+ display: flex;
104
+ align-items: center;
105
+ justify-content: flex-end;
106
+ gap: var(--ts-spacing-2);
107
+ }
108
+
109
+ .dialog__footer:empty {
110
+ display: none;
111
+ }
112
+
113
+ /* ---- Animations ---- */
114
+ @keyframes ts-dialog-fade-in {
115
+ from { opacity: 0; }
116
+ to { opacity: 1; }
117
+ }
118
+
119
+ @keyframes ts-dialog-scale-in {
120
+ from {
121
+ opacity: 0;
122
+ transform: scale(0.95) translateY(8px);
123
+ }
124
+ to {
125
+ opacity: 1;
126
+ transform: scale(1) translateY(0);
127
+ }
128
+ }
@@ -0,0 +1,264 @@
1
+ import { h, Host } from "@stencil/core";
2
+ import { generateId, trapFocus } from "../../utils/aria";
3
+ /**
4
+ * @slot - Default slot for dialog body content.
5
+ * @slot footer - Footer content (e.g., action buttons).
6
+ *
7
+ * @part overlay - The backdrop overlay.
8
+ * @part dialog - The dialog container.
9
+ * @part header - The heading wrapper.
10
+ * @part body - The body content wrapper.
11
+ * @part footer - The footer wrapper.
12
+ * @part close - The close button.
13
+ */
14
+ export class TsDialog {
15
+ hostEl;
16
+ dialogEl;
17
+ removeFocusTrap;
18
+ previouslyFocused;
19
+ dialogId = generateId('ts-dialog');
20
+ /** Whether the dialog is open. */
21
+ open = false;
22
+ /** The dialog heading text. */
23
+ heading;
24
+ /** The dialog's width size preset. */
25
+ size = 'sm';
26
+ /** Whether the dialog can be dismissed via close button, Escape, or overlay click. */
27
+ dismissible = true;
28
+ /** Emitted when the dialog is closed. */
29
+ tsClose;
30
+ /** Internal animation state. */
31
+ isAnimating = false;
32
+ handleOpenChange(isOpen) {
33
+ if (isOpen) {
34
+ this.openDialog();
35
+ }
36
+ else {
37
+ this.closeDialog();
38
+ }
39
+ }
40
+ /** Programmatically open the dialog. */
41
+ async show() {
42
+ this.open = true;
43
+ }
44
+ /** Programmatically close the dialog. */
45
+ async close() {
46
+ this.open = false;
47
+ }
48
+ openDialog() {
49
+ this.previouslyFocused = document.activeElement;
50
+ this.isAnimating = true;
51
+ document.body.style.overflow = 'hidden';
52
+ requestAnimationFrame(() => {
53
+ if (this.dialogEl) {
54
+ this.removeFocusTrap = trapFocus(this.dialogEl);
55
+ this.dialogEl.focus();
56
+ }
57
+ });
58
+ }
59
+ closeDialog() {
60
+ this.isAnimating = false;
61
+ this.tsClose.emit();
62
+ document.body.style.overflow = '';
63
+ this.removeFocusTrap?.();
64
+ this.previouslyFocused?.focus();
65
+ }
66
+ disconnectedCallback() {
67
+ this.removeFocusTrap?.();
68
+ document.body.style.overflow = '';
69
+ }
70
+ handleOverlayClick = () => {
71
+ if (this.dismissible) {
72
+ this.close();
73
+ }
74
+ };
75
+ handleDialogClick = (event) => {
76
+ event.stopPropagation();
77
+ };
78
+ handleKeydown = (event) => {
79
+ if (event.key === 'Escape' && this.dismissible) {
80
+ event.stopPropagation();
81
+ this.close();
82
+ }
83
+ };
84
+ handleCloseClick = () => {
85
+ this.close();
86
+ };
87
+ // eslint-disable-next-line @typescript-eslint/explicit-function-return-type
88
+ render() {
89
+ if (!this.open)
90
+ return null;
91
+ const headingId = `${this.dialogId}-heading`;
92
+ return (h(Host, { class: {
93
+ 'ts-dialog': true,
94
+ 'ts-dialog--open': this.open,
95
+ }, onKeyDown: this.handleKeydown }, h("div", { class: "dialog__overlay", part: "overlay", onClick: this.handleOverlayClick }, h("div", { ref: (el) => (this.dialogEl = el), class: {
96
+ 'dialog__panel': true,
97
+ [`dialog__panel--${this.size}`]: true,
98
+ }, part: "dialog", role: "dialog", "aria-modal": "true", "aria-labelledby": this.heading ? headingId : undefined, tabindex: -1, onClick: this.handleDialogClick }, this.dismissible && (h("button", { class: "dialog__close", part: "close", type: "button", "aria-label": "Close dialog", onClick: this.handleCloseClick }, "\u2715")), this.heading && (h("div", { class: "dialog__header", part: "header", id: headingId }, this.heading)), h("div", { class: "dialog__body", part: "body" }, h("slot", null)), h("div", { class: "dialog__footer", part: "footer" }, h("slot", { name: "footer" }))))));
99
+ }
100
+ static get is() { return "ts-dialog"; }
101
+ static get encapsulation() { return "shadow"; }
102
+ static get originalStyleUrls() {
103
+ return {
104
+ "$": ["dialog.css"]
105
+ };
106
+ }
107
+ static get styleUrls() {
108
+ return {
109
+ "$": ["dialog.css"]
110
+ };
111
+ }
112
+ static get properties() {
113
+ return {
114
+ "open": {
115
+ "type": "boolean",
116
+ "mutable": true,
117
+ "complexType": {
118
+ "original": "boolean",
119
+ "resolved": "boolean",
120
+ "references": {}
121
+ },
122
+ "required": false,
123
+ "optional": false,
124
+ "docs": {
125
+ "tags": [],
126
+ "text": "Whether the dialog is open."
127
+ },
128
+ "getter": false,
129
+ "setter": false,
130
+ "reflect": true,
131
+ "attribute": "open",
132
+ "defaultValue": "false"
133
+ },
134
+ "heading": {
135
+ "type": "string",
136
+ "mutable": false,
137
+ "complexType": {
138
+ "original": "string",
139
+ "resolved": "string | undefined",
140
+ "references": {}
141
+ },
142
+ "required": false,
143
+ "optional": true,
144
+ "docs": {
145
+ "tags": [],
146
+ "text": "The dialog heading text."
147
+ },
148
+ "getter": false,
149
+ "setter": false,
150
+ "reflect": false,
151
+ "attribute": "heading"
152
+ },
153
+ "size": {
154
+ "type": "string",
155
+ "mutable": false,
156
+ "complexType": {
157
+ "original": "'sm' | 'md' | 'lg'",
158
+ "resolved": "\"lg\" | \"md\" | \"sm\"",
159
+ "references": {}
160
+ },
161
+ "required": false,
162
+ "optional": false,
163
+ "docs": {
164
+ "tags": [],
165
+ "text": "The dialog's width size preset."
166
+ },
167
+ "getter": false,
168
+ "setter": false,
169
+ "reflect": true,
170
+ "attribute": "size",
171
+ "defaultValue": "'sm'"
172
+ },
173
+ "dismissible": {
174
+ "type": "boolean",
175
+ "mutable": false,
176
+ "complexType": {
177
+ "original": "boolean",
178
+ "resolved": "boolean",
179
+ "references": {}
180
+ },
181
+ "required": false,
182
+ "optional": false,
183
+ "docs": {
184
+ "tags": [],
185
+ "text": "Whether the dialog can be dismissed via close button, Escape, or overlay click."
186
+ },
187
+ "getter": false,
188
+ "setter": false,
189
+ "reflect": false,
190
+ "attribute": "dismissible",
191
+ "defaultValue": "true"
192
+ }
193
+ };
194
+ }
195
+ static get states() {
196
+ return {
197
+ "isAnimating": {}
198
+ };
199
+ }
200
+ static get events() {
201
+ return [{
202
+ "method": "tsClose",
203
+ "name": "tsClose",
204
+ "bubbles": true,
205
+ "cancelable": true,
206
+ "composed": true,
207
+ "docs": {
208
+ "tags": [],
209
+ "text": "Emitted when the dialog is closed."
210
+ },
211
+ "complexType": {
212
+ "original": "void",
213
+ "resolved": "void",
214
+ "references": {}
215
+ }
216
+ }];
217
+ }
218
+ static get methods() {
219
+ return {
220
+ "show": {
221
+ "complexType": {
222
+ "signature": "() => Promise<void>",
223
+ "parameters": [],
224
+ "references": {
225
+ "Promise": {
226
+ "location": "global",
227
+ "id": "global::Promise"
228
+ }
229
+ },
230
+ "return": "Promise<void>"
231
+ },
232
+ "docs": {
233
+ "text": "Programmatically open the dialog.",
234
+ "tags": []
235
+ }
236
+ },
237
+ "close": {
238
+ "complexType": {
239
+ "signature": "() => Promise<void>",
240
+ "parameters": [],
241
+ "references": {
242
+ "Promise": {
243
+ "location": "global",
244
+ "id": "global::Promise"
245
+ }
246
+ },
247
+ "return": "Promise<void>"
248
+ },
249
+ "docs": {
250
+ "text": "Programmatically close the dialog.",
251
+ "tags": []
252
+ }
253
+ }
254
+ };
255
+ }
256
+ static get elementRef() { return "hostEl"; }
257
+ static get watchers() {
258
+ return [{
259
+ "propName": "open",
260
+ "methodName": "handleOpenChange"
261
+ }];
262
+ }
263
+ }
264
+ //# sourceMappingURL=dialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dialog.js","sourceRoot":"","sources":["../../../src/components/dialog/dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAE/F,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAEzD;;;;;;;;;;GAUG;AAMH,MAAM,OAAO,QAAQ;IACR,MAAM,CAAe;IAExB,QAAQ,CAAe;IACvB,eAAe,CAAc;IAC7B,iBAAiB,CAAe;IAChC,QAAQ,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;IAE3C,kCAAkC;IACM,IAAI,GAAG,KAAK,CAAC;IAErD,+BAA+B;IACvB,OAAO,CAAU;IAEzB,sCAAsC;IACb,IAAI,GAAuB,IAAI,CAAC;IAEzD,sFAAsF;IAC9E,WAAW,GAAG,IAAI,CAAC;IAE3B,yCAAyC;IACR,OAAO,CAAsB;IAE9D,gCAAgC;IACvB,WAAW,GAAG,KAAK,CAAC;IAG7B,gBAAgB,CAAC,MAAe;QAC9B,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC,UAAU,EAAE,CAAC;QACpB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC;IACH,CAAC;IAED,wCAAwC;IAExC,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,yCAAyC;IAEzC,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;IACpB,CAAC;IAEO,UAAU;QAChB,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAC,aAA4B,CAAC;QAC/D,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QAExB,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAExC,qBAAqB,CAAC,GAAG,EAAE;YACzB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClB,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAChD,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;YACxB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,WAAW;QACjB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAEpB,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC;QAElC,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;QACzB,IAAI,CAAC,iBAAiB,EAAE,KAAK,EAAE,CAAC;IAClC,CAAC;IAED,oBAAoB;QAClB,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;QACzB,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC;IACpC,CAAC;IAEO,kBAAkB,GAAG,GAAS,EAAE;QACtC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,CAAC;IACH,CAAC,CAAC;IAEM,iBAAiB,GAAG,CAAC,KAAiB,EAAQ,EAAE;QACtD,KAAK,CAAC,eAAe,EAAE,CAAC;IAC1B,CAAC,CAAC;IAEM,aAAa,GAAG,CAAC,KAAoB,EAAQ,EAAE;QACrD,IAAI,KAAK,CAAC,GAAG,KAAK,QAAQ,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YAC/C,KAAK,CAAC,eAAe,EAAE,CAAC;YACxB,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,CAAC;IACH,CAAC,CAAC;IAEM,gBAAgB,GAAG,GAAS,EAAE;QACpC,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC,CAAC;IAEF,4EAA4E;IAC5E,MAAM;QACJ,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QAE5B,MAAM,SAAS,GAAG,GAAG,IAAI,CAAC,QAAQ,UAAU,CAAC;QAE7C,OAAO,CACL,EAAC,IAAI,IACH,KAAK,EAAE;gBACL,WAAW,EAAE,IAAI;gBACjB,iBAAiB,EAAE,IAAI,CAAC,IAAI;aAC7B,EACD,SAAS,EAAE,IAAI,CAAC,aAAa;YAE7B,WAAK,KAAK,EAAC,iBAAiB,EAAC,IAAI,EAAC,SAAS,EAAC,OAAO,EAAE,IAAI,CAAC,kBAAkB;gBAC1E,WACE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC,EACjC,KAAK,EAAE;wBACL,eAAe,EAAE,IAAI;wBACrB,CAAC,kBAAkB,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI;qBACtC,EACD,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,QAAQ,gBACF,MAAM,qBACA,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EACrD,QAAQ,EAAE,CAAC,CAAC,EACZ,OAAO,EAAE,IAAI,CAAC,iBAAiB;oBAE9B,IAAI,CAAC,WAAW,IAAI,CACnB,cACE,KAAK,EAAC,eAAe,EACrB,IAAI,EAAC,OAAO,EACZ,IAAI,EAAC,QAAQ,gBACF,cAAc,EACzB,OAAO,EAAE,IAAI,CAAC,gBAAgB,aAGvB,CACV;oBAEA,IAAI,CAAC,OAAO,IAAI,CACf,WAAK,KAAK,EAAC,gBAAgB,EAAC,IAAI,EAAC,QAAQ,EAAC,EAAE,EAAE,SAAS,IACpD,IAAI,CAAC,OAAO,CACT,CACP;oBAED,WAAK,KAAK,EAAC,cAAc,EAAC,IAAI,EAAC,MAAM;wBACnC,eAAQ,CACJ;oBAEN,WAAK,KAAK,EAAC,gBAAgB,EAAC,IAAI,EAAC,QAAQ;wBACvC,YAAM,IAAI,EAAC,QAAQ,GAAG,CAClB,CACF,CACF,CACD,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Prop, State, Event, h, Host, Element, Watch, Method } from '@stencil/core';\nimport type { EventEmitter } from '@stencil/core';\nimport { generateId, trapFocus } from '../../utils/aria';\n\n/**\n * @slot - Default slot for dialog body content.\n * @slot footer - Footer content (e.g., action buttons).\n *\n * @part overlay - The backdrop overlay.\n * @part dialog - The dialog container.\n * @part header - The heading wrapper.\n * @part body - The body content wrapper.\n * @part footer - The footer wrapper.\n * @part close - The close button.\n */\n@Component({\n tag: 'ts-dialog',\n styleUrl: 'dialog.css',\n shadow: true,\n})\nexport class TsDialog {\n @Element() hostEl!: HTMLElement;\n\n private dialogEl?: HTMLElement;\n private removeFocusTrap?: () => void;\n private previouslyFocused?: HTMLElement;\n private dialogId = generateId('ts-dialog');\n\n /** Whether the dialog is open. */\n @Prop({ mutable: true, reflect: true }) open = false;\n\n /** The dialog heading text. */\n @Prop() heading?: string;\n\n /** The dialog's width size preset. */\n @Prop({ reflect: true }) size: 'sm' | 'md' | 'lg' = 'sm';\n\n /** Whether the dialog can be dismissed via close button, Escape, or overlay click. */\n @Prop() dismissible = true;\n\n /** Emitted when the dialog is closed. */\n @Event({ eventName: 'tsClose' }) tsClose!: EventEmitter<void>;\n\n /** Internal animation state. */\n @State() isAnimating = false;\n\n @Watch('open')\n handleOpenChange(isOpen: boolean): void {\n if (isOpen) {\n this.openDialog();\n } else {\n this.closeDialog();\n }\n }\n\n /** Programmatically open the dialog. */\n @Method()\n async show(): Promise<void> {\n this.open = true;\n }\n\n /** Programmatically close the dialog. */\n @Method()\n async close(): Promise<void> {\n this.open = false;\n }\n\n private openDialog(): void {\n this.previouslyFocused = document.activeElement as HTMLElement;\n this.isAnimating = true;\n\n document.body.style.overflow = 'hidden';\n\n requestAnimationFrame(() => {\n if (this.dialogEl) {\n this.removeFocusTrap = trapFocus(this.dialogEl);\n this.dialogEl.focus();\n }\n });\n }\n\n private closeDialog(): void {\n this.isAnimating = false;\n this.tsClose.emit();\n\n document.body.style.overflow = '';\n\n this.removeFocusTrap?.();\n this.previouslyFocused?.focus();\n }\n\n disconnectedCallback(): void {\n this.removeFocusTrap?.();\n document.body.style.overflow = '';\n }\n\n private handleOverlayClick = (): void => {\n if (this.dismissible) {\n this.close();\n }\n };\n\n private handleDialogClick = (event: MouseEvent): void => {\n event.stopPropagation();\n };\n\n private handleKeydown = (event: KeyboardEvent): void => {\n if (event.key === 'Escape' && this.dismissible) {\n event.stopPropagation();\n this.close();\n }\n };\n\n private handleCloseClick = (): void => {\n this.close();\n };\n\n // eslint-disable-next-line @typescript-eslint/explicit-function-return-type\n render() {\n if (!this.open) return null;\n\n const headingId = `${this.dialogId}-heading`;\n\n return (\n <Host\n class={{\n 'ts-dialog': true,\n 'ts-dialog--open': this.open,\n }}\n onKeyDown={this.handleKeydown}\n >\n <div class=\"dialog__overlay\" part=\"overlay\" onClick={this.handleOverlayClick}>\n <div\n ref={(el) => (this.dialogEl = el)}\n class={{\n 'dialog__panel': true,\n [`dialog__panel--${this.size}`]: true,\n }}\n part=\"dialog\"\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby={this.heading ? headingId : undefined}\n tabindex={-1}\n onClick={this.handleDialogClick}\n >\n {this.dismissible && (\n <button\n class=\"dialog__close\"\n part=\"close\"\n type=\"button\"\n aria-label=\"Close dialog\"\n onClick={this.handleCloseClick}\n >\n &#x2715;\n </button>\n )}\n\n {this.heading && (\n <div class=\"dialog__header\" part=\"header\" id={headingId}>\n {this.heading}\n </div>\n )}\n\n <div class=\"dialog__body\" part=\"body\">\n <slot />\n </div>\n\n <div class=\"dialog__footer\" part=\"footer\">\n <slot name=\"footer\" />\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -0,0 +1,147 @@
1
+ // Hand-written stories for ts-dialog
2
+ export default {
3
+ title: 'Components/Dialog',
4
+ tags: ['autodocs'],
5
+ argTypes: {
6
+ open: { control: 'boolean', description: 'Whether the dialog is open.' },
7
+ heading: { control: 'text', description: 'The dialog heading text.' },
8
+ size: {
9
+ control: 'select',
10
+ options: ['sm', 'md', 'lg'],
11
+ description: "The dialog's width size preset.",
12
+ },
13
+ dismissible: { control: 'boolean', description: 'Whether the dialog can be dismissed via close button, Escape, or overlay click.' },
14
+ },
15
+ };
16
+ const Template = (args) => {
17
+ const attrs = [];
18
+ if (args.open)
19
+ attrs.push('open');
20
+ if (args.heading !== undefined && args.heading !== null)
21
+ attrs.push(`heading="${args.heading}"`);
22
+ if (args.size !== undefined && args.size !== null)
23
+ attrs.push(`size="${args.size}"`);
24
+ if (args.dismissible === false)
25
+ attrs.push('dismissible="false"');
26
+ return `
27
+ <ts-button onclick="this.nextElementSibling.show()">Open Dialog</ts-button>
28
+ <ts-dialog ${attrs.join(' ')}>
29
+ <p style="margin: 0; font-family: sans-serif;">This is the dialog body content. You can place any content here.</p>
30
+ <div slot="footer">
31
+ <ts-row gap="2" justify="end">
32
+ <ts-button appearance="outline" onclick="this.closest('ts-dialog').close()">Cancel</ts-button>
33
+ <ts-button variant="primary" onclick="this.closest('ts-dialog').close()">Confirm</ts-button>
34
+ </ts-row>
35
+ </div>
36
+ </ts-dialog>
37
+ `;
38
+ };
39
+ export const Default = Object.assign(Template.bind({}), {
40
+ args: {
41
+ open: false,
42
+ heading: 'Dialog Title',
43
+ size: 'sm',
44
+ dismissible: true,
45
+ },
46
+ });
47
+ export const Sizes = () => `
48
+ <ts-row gap="2">
49
+ <div>
50
+ <ts-button onclick="this.nextElementSibling.show()">Small Dialog</ts-button>
51
+ <ts-dialog heading="Small Dialog" size="sm">
52
+ <p style="margin: 0; font-family: sans-serif;">This is a small dialog, suitable for simple confirmations.</p>
53
+ <div slot="footer">
54
+ <ts-row gap="2" justify="end">
55
+ <ts-button appearance="outline" onclick="this.closest('ts-dialog').close()">Close</ts-button>
56
+ </ts-row>
57
+ </div>
58
+ </ts-dialog>
59
+ </div>
60
+ <div>
61
+ <ts-button onclick="this.nextElementSibling.show()">Medium Dialog</ts-button>
62
+ <ts-dialog heading="Medium Dialog" size="md">
63
+ <p style="margin: 0; font-family: sans-serif;">This is a medium dialog with more room for content. It works well for forms and moderate amounts of information.</p>
64
+ <div slot="footer">
65
+ <ts-row gap="2" justify="end">
66
+ <ts-button appearance="outline" onclick="this.closest('ts-dialog').close()">Close</ts-button>
67
+ </ts-row>
68
+ </div>
69
+ </ts-dialog>
70
+ </div>
71
+ <div>
72
+ <ts-button onclick="this.nextElementSibling.show()">Large Dialog</ts-button>
73
+ <ts-dialog heading="Large Dialog" size="lg">
74
+ <p style="margin: 0; font-family: sans-serif;">This is a large dialog, ideal for complex content like data tables, multi-step forms, or detailed previews.</p>
75
+ <div slot="footer">
76
+ <ts-row gap="2" justify="end">
77
+ <ts-button appearance="outline" onclick="this.closest('ts-dialog').close()">Close</ts-button>
78
+ </ts-row>
79
+ </div>
80
+ </ts-dialog>
81
+ </div>
82
+ </ts-row>
83
+ `;
84
+ export const DeleteConfirmation = () => `
85
+ <ts-button variant="danger" onclick="this.nextElementSibling.show()">Delete Item</ts-button>
86
+ <ts-dialog heading="Delete this item?" size="sm">
87
+ <p style="margin: 0; font-family: sans-serif; color: #555;">
88
+ Are you sure you want to delete this item? This action cannot be undone and all associated data will be permanently removed.
89
+ </p>
90
+ <div slot="footer">
91
+ <ts-row gap="2" justify="end">
92
+ <ts-button appearance="outline" onclick="this.closest('ts-dialog').close()">Cancel</ts-button>
93
+ <ts-button variant="danger" onclick="this.closest('ts-dialog').close()">Delete</ts-button>
94
+ </ts-row>
95
+ </div>
96
+ </ts-dialog>
97
+ `;
98
+ export const UnsavedChanges = () => `
99
+ <ts-button onclick="this.nextElementSibling.show()">Leave Page</ts-button>
100
+ <ts-dialog heading="Unsaved changes" size="sm">
101
+ <p style="margin: 0; font-family: sans-serif; color: #555;">
102
+ You have unsaved changes. If you leave this page, your changes will be lost. Would you like to save before leaving?
103
+ </p>
104
+ <div slot="footer">
105
+ <ts-row gap="2" justify="end">
106
+ <ts-button appearance="outline" onclick="this.closest('ts-dialog').close()">Discard</ts-button>
107
+ <ts-button variant="primary" onclick="this.closest('ts-dialog').close()">Save Changes</ts-button>
108
+ </ts-row>
109
+ </div>
110
+ </ts-dialog>
111
+ `;
112
+ export const NonDismissible = () => `
113
+ <ts-button onclick="this.nextElementSibling.show()">Open Non-Dismissible</ts-button>
114
+ <ts-dialog heading="Terms of Service" size="md" dismissible="false">
115
+ <div style="font-family: sans-serif; color: #555;">
116
+ <p style="margin: 0 0 12px;">Please read and accept the terms of service to continue using this application.</p>
117
+ <div style="padding: 12px; background: #f9fafb; border-radius: 6px; max-height: 150px; overflow-y: auto; font-size: 14px;">
118
+ <p style="margin: 0 0 8px;">1. You agree to use this software responsibly.</p>
119
+ <p style="margin: 0 0 8px;">2. You will not share your credentials with others.</p>
120
+ <p style="margin: 0 0 8px;">3. Data uploaded remains your intellectual property.</p>
121
+ <p style="margin: 0;">4. We reserve the right to update these terms.</p>
122
+ </div>
123
+ </div>
124
+ <div slot="footer">
125
+ <ts-row gap="2" justify="end">
126
+ <ts-button variant="primary" onclick="this.closest('ts-dialog').close()">I Accept</ts-button>
127
+ </ts-row>
128
+ </div>
129
+ </ts-dialog>
130
+ `;
131
+ export const FormDialog = () => `
132
+ <ts-button onclick="this.nextElementSibling.show()">Edit Profile</ts-button>
133
+ <ts-dialog heading="Edit Profile" size="md">
134
+ <ts-stack gap="3">
135
+ <ts-input label="Full Name" placeholder="Enter your name" value="James Kennedy"></ts-input>
136
+ <ts-input label="Email" placeholder="Enter your email" value="james@example.com"></ts-input>
137
+ <ts-textarea label="Bio" placeholder="Tell us about yourself..." rows="3"></ts-textarea>
138
+ </ts-stack>
139
+ <div slot="footer">
140
+ <ts-row gap="2" justify="end">
141
+ <ts-button appearance="outline" onclick="this.closest('ts-dialog').close()">Cancel</ts-button>
142
+ <ts-button variant="primary" onclick="this.closest('ts-dialog').close()">Save</ts-button>
143
+ </ts-row>
144
+ </div>
145
+ </ts-dialog>
146
+ `;
147
+ //# sourceMappingURL=dialog.stories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dialog.stories.js","sourceRoot":"","sources":["../../../src/components/dialog/dialog.stories.ts"],"names":[],"mappings":"AAAA,qCAAqC;AAErC,eAAe;IACb,KAAK,EAAE,mBAAmB;IAC1B,IAAI,EAAE,CAAC,UAAU,CAAC;IAClB,QAAQ,EAAE;QACR,IAAI,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,6BAA6B,EAAE;QACxE,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,0BAA0B,EAAE;QACrE,IAAI,EAAE;YACJ,OAAO,EAAE,QAAQ;YACjB,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;YAC3B,WAAW,EAAE,iCAAiC;SAC/C;QACD,WAAW,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,iFAAiF,EAAE;KACpI;CACF,CAAC;AAEF,MAAM,QAAQ,GAAG,CAAC,IAA6B,EAAU,EAAE;IACzD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,IAAI,CAAC,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAClC,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,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;IACrF,IAAI,IAAI,CAAC,WAAW,KAAK,KAAK;QAAE,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IAClE,OAAO;;iBAEQ,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC;;;;;;;;;GAS7B,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,IAAI,EAAE,KAAK;QACX,OAAO,EAAE,cAAc;QACvB,IAAI,EAAE,IAAI;QACV,WAAW,EAAE,IAAI;KAClB;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,KAAK,GAAG,GAAW,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoClC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAW,EAAE,CAAC;;;;;;;;;;;;;CAa/C,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,GAAW,EAAE,CAAC;;;;;;;;;;;;;CAa3C,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,GAAW,EAAE,CAAC;;;;;;;;;;;;;;;;;;CAkB3C,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,GAAW,EAAE,CAAC;;;;;;;;;;;;;;;CAevC,CAAC","sourcesContent":["// Hand-written stories for ts-dialog\n\nexport default {\n title: 'Components/Dialog',\n tags: ['autodocs'],\n argTypes: {\n open: { control: 'boolean', description: 'Whether the dialog is open.' },\n heading: { control: 'text', description: 'The dialog heading text.' },\n size: {\n control: 'select',\n options: ['sm', 'md', 'lg'],\n description: \"The dialog's width size preset.\",\n },\n dismissible: { control: 'boolean', description: 'Whether the dialog can be dismissed via close button, Escape, or overlay click.' },\n },\n};\n\nconst Template = (args: Record<string, unknown>): string => {\n const attrs: string[] = [];\n if (args.open) attrs.push('open');\n if (args.heading !== undefined && args.heading !== null) attrs.push(`heading=\"${args.heading}\"`);\n if (args.size !== undefined && args.size !== null) attrs.push(`size=\"${args.size}\"`);\n if (args.dismissible === false) attrs.push('dismissible=\"false\"');\n return `\n <ts-button onclick=\"this.nextElementSibling.show()\">Open Dialog</ts-button>\n <ts-dialog ${attrs.join(' ')}>\n <p style=\"margin: 0; font-family: sans-serif;\">This is the dialog body content. You can place any content here.</p>\n <div slot=\"footer\">\n <ts-row gap=\"2\" justify=\"end\">\n <ts-button appearance=\"outline\" onclick=\"this.closest('ts-dialog').close()\">Cancel</ts-button>\n <ts-button variant=\"primary\" onclick=\"this.closest('ts-dialog').close()\">Confirm</ts-button>\n </ts-row>\n </div>\n </ts-dialog>\n `;\n};\n\nexport const Default = Object.assign(Template.bind({}) as typeof Template & { args: Record<string, unknown> }, {\n args: {\n open: false,\n heading: 'Dialog Title',\n size: 'sm',\n dismissible: true,\n },\n});\n\nexport const Sizes = (): string => `\n <ts-row gap=\"2\">\n <div>\n <ts-button onclick=\"this.nextElementSibling.show()\">Small Dialog</ts-button>\n <ts-dialog heading=\"Small Dialog\" size=\"sm\">\n <p style=\"margin: 0; font-family: sans-serif;\">This is a small dialog, suitable for simple confirmations.</p>\n <div slot=\"footer\">\n <ts-row gap=\"2\" justify=\"end\">\n <ts-button appearance=\"outline\" onclick=\"this.closest('ts-dialog').close()\">Close</ts-button>\n </ts-row>\n </div>\n </ts-dialog>\n </div>\n <div>\n <ts-button onclick=\"this.nextElementSibling.show()\">Medium Dialog</ts-button>\n <ts-dialog heading=\"Medium Dialog\" size=\"md\">\n <p style=\"margin: 0; font-family: sans-serif;\">This is a medium dialog with more room for content. It works well for forms and moderate amounts of information.</p>\n <div slot=\"footer\">\n <ts-row gap=\"2\" justify=\"end\">\n <ts-button appearance=\"outline\" onclick=\"this.closest('ts-dialog').close()\">Close</ts-button>\n </ts-row>\n </div>\n </ts-dialog>\n </div>\n <div>\n <ts-button onclick=\"this.nextElementSibling.show()\">Large Dialog</ts-button>\n <ts-dialog heading=\"Large Dialog\" size=\"lg\">\n <p style=\"margin: 0; font-family: sans-serif;\">This is a large dialog, ideal for complex content like data tables, multi-step forms, or detailed previews.</p>\n <div slot=\"footer\">\n <ts-row gap=\"2\" justify=\"end\">\n <ts-button appearance=\"outline\" onclick=\"this.closest('ts-dialog').close()\">Close</ts-button>\n </ts-row>\n </div>\n </ts-dialog>\n </div>\n </ts-row>\n`;\n\nexport const DeleteConfirmation = (): string => `\n <ts-button variant=\"danger\" onclick=\"this.nextElementSibling.show()\">Delete Item</ts-button>\n <ts-dialog heading=\"Delete this item?\" size=\"sm\">\n <p style=\"margin: 0; font-family: sans-serif; color: #555;\">\n Are you sure you want to delete this item? This action cannot be undone and all associated data will be permanently removed.\n </p>\n <div slot=\"footer\">\n <ts-row gap=\"2\" justify=\"end\">\n <ts-button appearance=\"outline\" onclick=\"this.closest('ts-dialog').close()\">Cancel</ts-button>\n <ts-button variant=\"danger\" onclick=\"this.closest('ts-dialog').close()\">Delete</ts-button>\n </ts-row>\n </div>\n </ts-dialog>\n`;\n\nexport const UnsavedChanges = (): string => `\n <ts-button onclick=\"this.nextElementSibling.show()\">Leave Page</ts-button>\n <ts-dialog heading=\"Unsaved changes\" size=\"sm\">\n <p style=\"margin: 0; font-family: sans-serif; color: #555;\">\n You have unsaved changes. If you leave this page, your changes will be lost. Would you like to save before leaving?\n </p>\n <div slot=\"footer\">\n <ts-row gap=\"2\" justify=\"end\">\n <ts-button appearance=\"outline\" onclick=\"this.closest('ts-dialog').close()\">Discard</ts-button>\n <ts-button variant=\"primary\" onclick=\"this.closest('ts-dialog').close()\">Save Changes</ts-button>\n </ts-row>\n </div>\n </ts-dialog>\n`;\n\nexport const NonDismissible = (): string => `\n <ts-button onclick=\"this.nextElementSibling.show()\">Open Non-Dismissible</ts-button>\n <ts-dialog heading=\"Terms of Service\" size=\"md\" dismissible=\"false\">\n <div style=\"font-family: sans-serif; color: #555;\">\n <p style=\"margin: 0 0 12px;\">Please read and accept the terms of service to continue using this application.</p>\n <div style=\"padding: 12px; background: #f9fafb; border-radius: 6px; max-height: 150px; overflow-y: auto; font-size: 14px;\">\n <p style=\"margin: 0 0 8px;\">1. You agree to use this software responsibly.</p>\n <p style=\"margin: 0 0 8px;\">2. You will not share your credentials with others.</p>\n <p style=\"margin: 0 0 8px;\">3. Data uploaded remains your intellectual property.</p>\n <p style=\"margin: 0;\">4. We reserve the right to update these terms.</p>\n </div>\n </div>\n <div slot=\"footer\">\n <ts-row gap=\"2\" justify=\"end\">\n <ts-button variant=\"primary\" onclick=\"this.closest('ts-dialog').close()\">I Accept</ts-button>\n </ts-row>\n </div>\n </ts-dialog>\n`;\n\nexport const FormDialog = (): string => `\n <ts-button onclick=\"this.nextElementSibling.show()\">Edit Profile</ts-button>\n <ts-dialog heading=\"Edit Profile\" size=\"md\">\n <ts-stack gap=\"3\">\n <ts-input label=\"Full Name\" placeholder=\"Enter your name\" value=\"James Kennedy\"></ts-input>\n <ts-input label=\"Email\" placeholder=\"Enter your email\" value=\"james@example.com\"></ts-input>\n <ts-textarea label=\"Bio\" placeholder=\"Tell us about yourself...\" rows=\"3\"></ts-textarea>\n </ts-stack>\n <div slot=\"footer\">\n <ts-row gap=\"2\" justify=\"end\">\n <ts-button appearance=\"outline\" onclick=\"this.closest('ts-dialog').close()\">Cancel</ts-button>\n <ts-button variant=\"primary\" onclick=\"this.closest('ts-dialog').close()\">Save</ts-button>\n </ts-row>\n </div>\n </ts-dialog>\n`;\n"]}
@@ -0,0 +1,94 @@
1
+ /* ==========================================================================
2
+ ts-divider — Shadow DOM Scoped Styles
3
+
4
+ Component tokens (Tier 3):
5
+ --ts-divider-color Line color
6
+ --ts-divider-spacing Spacing above/below (or left/right for vertical)
7
+ ========================================================================== */
8
+
9
+ :host {
10
+ display: block;
11
+ font-family: var(--ts-font-family-base);
12
+
13
+ --ts-divider-color: var(--ts-color-border-subtle);
14
+ --ts-divider-spacing: var(--ts-spacing-3);
15
+ }
16
+
17
+ /* ---- Horizontal ---- */
18
+ :host([orientation="horizontal"]) {
19
+ inline-size: 100%;
20
+ padding-block: var(--ts-divider-spacing);
21
+ }
22
+
23
+ :host([orientation="horizontal"]) .divider__base {
24
+ display: flex;
25
+ align-items: center;
26
+ inline-size: 100%;
27
+ }
28
+
29
+ :host([orientation="horizontal"]:not([class*="has-label"])) .divider__line {
30
+ flex: 1;
31
+ block-size: 0;
32
+ border-block-start: 1px solid var(--ts-divider-color);
33
+ }
34
+
35
+ :host([orientation="horizontal"]) .divider__line--start,
36
+ :host([orientation="horizontal"]) .divider__line--end {
37
+ flex: 1;
38
+ block-size: 0;
39
+ border-block-start: 1px solid var(--ts-divider-color);
40
+ }
41
+
42
+ /* ---- Dashed ---- */
43
+ :host([variant="dashed"]) .divider__line,
44
+ :host([variant="dashed"]) .divider__line--start,
45
+ :host([variant="dashed"]) .divider__line--end {
46
+ border-block-start-style: dashed;
47
+ }
48
+
49
+ /* ---- Dotted ---- */
50
+ :host([variant="dotted"]) .divider__line,
51
+ :host([variant="dotted"]) .divider__line--start,
52
+ :host([variant="dotted"]) .divider__line--end {
53
+ border-block-start-style: dotted;
54
+ }
55
+
56
+ /* ---- Label ---- */
57
+ .divider__label {
58
+ padding-inline: var(--ts-spacing-3);
59
+ font-size: var(--ts-font-size-xs);
60
+ color: var(--ts-color-text-secondary);
61
+ white-space: nowrap;
62
+ line-height: 1;
63
+ }
64
+
65
+ /* ---- Vertical ---- */
66
+ :host([orientation="vertical"]) {
67
+ display: inline-block;
68
+ block-size: 100%;
69
+ padding-inline: var(--ts-divider-spacing);
70
+ }
71
+
72
+ :host([orientation="vertical"]) .divider__base {
73
+ display: flex;
74
+ block-size: 100%;
75
+ }
76
+
77
+ :host([orientation="vertical"]) .divider__line {
78
+ inline-size: 0;
79
+ block-size: 100%;
80
+ border-inline-start: 1px solid var(--ts-divider-color);
81
+ }
82
+
83
+ :host([orientation="vertical"][variant="dashed"]) .divider__line {
84
+ border-inline-start-style: dashed;
85
+ }
86
+
87
+ :host([orientation="vertical"][variant="dotted"]) .divider__line {
88
+ border-inline-start-style: dotted;
89
+ }
90
+
91
+ /* ---- Has-label class (for horizontal with text) ---- */
92
+ .ts-divider--has-label .divider__line {
93
+ /* overridden by --start/--end when label present */
94
+ }