@logicplanes/kaeso-ui 0.4.3 → 0.4.5

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 (490) hide show
  1. package/ai/component-guides.md +279 -98
  2. package/ai/component-registry.json +352 -236
  3. package/ai/component-registry.md +241 -219
  4. package/ai/icons.md +2 -2
  5. package/ai/tokens.md +18 -14
  6. package/dist/blocks/delete-resource.js +3 -3
  7. package/dist/blocks/delete-resource.js.map +1 -1
  8. package/dist/blocks/pages.js +47 -42
  9. package/dist/blocks/pages.js.map +1 -1
  10. package/dist/blocks/resource-list.js +68 -55
  11. package/dist/blocks/resource-list.js.map +1 -1
  12. package/dist/chunks/agent-avatar-DHieggHK.js +188 -0
  13. package/dist/chunks/agent-avatar-DHieggHK.js.map +1 -0
  14. package/dist/chunks/app-frame-DysOel2X.js +232 -0
  15. package/dist/chunks/app-frame-DysOel2X.js.map +1 -0
  16. package/dist/chunks/arrow-focus-B0KdRFX8.js +20 -0
  17. package/dist/chunks/arrow-focus-B0KdRFX8.js.map +1 -0
  18. package/dist/chunks/avatar-CYNMK7uY.js +110 -0
  19. package/dist/chunks/avatar-CYNMK7uY.js.map +1 -0
  20. package/dist/chunks/badge-C0GC3B9X.js +27 -0
  21. package/dist/chunks/badge-C0GC3B9X.js.map +1 -0
  22. package/dist/chunks/banner-B3DGLTBu.js +88 -0
  23. package/dist/chunks/banner-B3DGLTBu.js.map +1 -0
  24. package/dist/chunks/button-IblhXUyZ.js +202 -0
  25. package/dist/chunks/button-IblhXUyZ.js.map +1 -0
  26. package/dist/chunks/{calendar-BWaf2MXc.js → calendar-Dc6_dl0f.js} +4 -4
  27. package/dist/chunks/calendar-Dc6_dl0f.js.map +1 -0
  28. package/dist/chunks/checkbox-9tbimmF3.js +141 -0
  29. package/dist/chunks/checkbox-9tbimmF3.js.map +1 -0
  30. package/dist/chunks/{cn-Dj6sRgkF.js → cn-BjnOAUrA.js} +45 -4
  31. package/dist/chunks/cn-BjnOAUrA.js.map +1 -0
  32. package/dist/chunks/code-block-64e-Cy1S.js +346 -0
  33. package/dist/chunks/code-block-64e-Cy1S.js.map +1 -0
  34. package/dist/chunks/code-block-KIvuE8jg.js +352 -0
  35. package/dist/chunks/code-block-KIvuE8jg.js.map +1 -0
  36. package/dist/chunks/{code-tqj0uhBL.js → code-xqjww4Pv.js} +5 -6
  37. package/dist/chunks/code-xqjww4Pv.js.map +1 -0
  38. package/dist/chunks/combobox-DkcjkWc6.js +352 -0
  39. package/dist/chunks/combobox-DkcjkWc6.js.map +1 -0
  40. package/dist/chunks/command-list-CypqsC4T.js +456 -0
  41. package/dist/chunks/command-list-CypqsC4T.js.map +1 -0
  42. package/dist/chunks/{copy-button-FJvPJn72.js → copy-button-CwU8t_9_.js} +22 -15
  43. package/dist/chunks/copy-button-CwU8t_9_.js.map +1 -0
  44. package/dist/chunks/core-CmK-8ObW.js +505 -0
  45. package/dist/chunks/core-CmK-8ObW.js.map +1 -0
  46. package/dist/chunks/data-table-CqY8_6IS.js +581 -0
  47. package/dist/chunks/data-table-CqY8_6IS.js.map +1 -0
  48. package/dist/chunks/date-popup-DAnjptFt.js +58 -0
  49. package/dist/chunks/date-popup-DAnjptFt.js.map +1 -0
  50. package/dist/chunks/{de-CPXJh9cq.js → de-CqC4aSIV.js} +81 -40
  51. package/dist/chunks/de-CqC4aSIV.js.map +1 -0
  52. package/dist/chunks/{dialog-Cg9A_6SF.js → dialog-2zb6ClNR.js} +156 -134
  53. package/dist/chunks/dialog-2zb6ClNR.js.map +1 -0
  54. package/dist/chunks/disclosure-BtYRTDO3.js +22 -0
  55. package/dist/chunks/disclosure-BtYRTDO3.js.map +1 -0
  56. package/dist/chunks/domain-obd_w9xk.js +28 -0
  57. package/dist/chunks/domain-obd_w9xk.js.map +1 -0
  58. package/dist/chunks/{empty-DvhyMXQq.js → empty-BpiUgGzm.js} +2 -2
  59. package/dist/chunks/{empty-DvhyMXQq.js.map → empty-BpiUgGzm.js.map} +1 -1
  60. package/dist/chunks/{field-TviMvYa2.js → field-D7m-yl-D.js} +37 -34
  61. package/dist/chunks/field-D7m-yl-D.js.map +1 -0
  62. package/dist/chunks/{icon-D7ja-_Yk.js → icon-CBzOwqrX.js} +7 -6
  63. package/dist/chunks/{icon-D7ja-_Yk.js.map → icon-CBzOwqrX.js.map} +1 -1
  64. package/dist/chunks/icon-CPJWE2N-.js +95 -0
  65. package/dist/chunks/{icon-DVooQfk4.js.map → icon-CPJWE2N-.js.map} +1 -1
  66. package/dist/chunks/{icon-button-CrdF_eMG.js → icon-button-Dfwpvmav.js} +7 -6
  67. package/dist/chunks/icon-button-Dfwpvmav.js.map +1 -0
  68. package/dist/chunks/{identity-BmhQ6BQ-.js → identity-3Foi5F8w.js} +7 -7
  69. package/dist/chunks/{identity-BmhQ6BQ-.js.map → identity-3Foi5F8w.js.map} +1 -1
  70. package/dist/chunks/{input-2VJuj_M4.js → input-Bo5-UZg2.js} +15 -9
  71. package/dist/chunks/input-Bo5-UZg2.js.map +1 -0
  72. package/dist/chunks/{input-group-DQ_4DoXg.js → input-group-jPcK9T_a.js} +42 -29
  73. package/dist/chunks/input-group-jPcK9T_a.js.map +1 -0
  74. package/dist/chunks/iso-field-DoqHBg8n.js +52 -0
  75. package/dist/chunks/iso-field-DoqHBg8n.js.map +1 -0
  76. package/dist/chunks/json-view-DZ2nL2Ir.js +253 -0
  77. package/dist/chunks/json-view-DZ2nL2Ir.js.map +1 -0
  78. package/dist/chunks/{kbd-BF1vKXJf.js → kbd-8A0ML_up.js} +30 -28
  79. package/dist/chunks/kbd-8A0ML_up.js.map +1 -0
  80. package/dist/chunks/label-DW24Aj0Z.js +26 -0
  81. package/dist/chunks/label-DW24Aj0Z.js.map +1 -0
  82. package/dist/chunks/{link-KWI7PevW.js → link-CMjkcLQK.js} +14 -14
  83. package/dist/chunks/link-CMjkcLQK.js.map +1 -0
  84. package/dist/chunks/list-B4G-sWwV.js +540 -0
  85. package/dist/chunks/list-B4G-sWwV.js.map +1 -0
  86. package/dist/chunks/{loader-DCfPndXa.js → loader-zo8CCIGJ.js} +2 -2
  87. package/dist/chunks/{loader-DCfPndXa.js.map → loader-zo8CCIGJ.js.map} +1 -1
  88. package/dist/chunks/markdown-C565aBR7.js +338 -0
  89. package/dist/chunks/markdown-C565aBR7.js.map +1 -0
  90. package/dist/chunks/menu-Clvv6ftq.js +485 -0
  91. package/dist/chunks/menu-Clvv6ftq.js.map +1 -0
  92. package/dist/chunks/merge-refs-BN1FyQt9.js +20 -0
  93. package/dist/chunks/merge-refs-BN1FyQt9.js.map +1 -0
  94. package/dist/chunks/meter-CASMHlxl.js +100 -0
  95. package/dist/chunks/meter-CASMHlxl.js.map +1 -0
  96. package/dist/chunks/nav-sheet-Dt6JSvzX.js +67 -0
  97. package/dist/chunks/nav-sheet-Dt6JSvzX.js.map +1 -0
  98. package/dist/chunks/{nav-wordmark-_pjheAsZ.js → nav-wordmark-J4pB_vjr.js} +4 -8
  99. package/dist/chunks/nav-wordmark-J4pB_vjr.js.map +1 -0
  100. package/dist/chunks/page-header-kS5tdmvb.js +45 -0
  101. package/dist/chunks/page-header-kS5tdmvb.js.map +1 -0
  102. package/dist/chunks/pagination-D7fAm8qg.js +147 -0
  103. package/dist/chunks/pagination-D7fAm8qg.js.map +1 -0
  104. package/dist/chunks/picker-popover-1FHb1LQG.js +119 -0
  105. package/dist/chunks/picker-popover-1FHb1LQG.js.map +1 -0
  106. package/dist/chunks/popover-Bl5QYqnh.js +51 -0
  107. package/dist/chunks/popover-Bl5QYqnh.js.map +1 -0
  108. package/dist/chunks/{portal-context-BBbzDKmY.js → portal-context-CTatR2Z8.js} +14 -4
  109. package/dist/chunks/portal-context-CTatR2Z8.js.map +1 -0
  110. package/dist/chunks/{radio-CDDFpdtL.js → radio-C6GtzF_t.js} +38 -23
  111. package/dist/chunks/radio-C6GtzF_t.js.map +1 -0
  112. package/dist/chunks/range-popup-lGiZsG3s.js +160 -0
  113. package/dist/chunks/range-popup-lGiZsG3s.js.map +1 -0
  114. package/dist/chunks/reasoning-frame-C3HdQRRS.js +51 -0
  115. package/dist/chunks/reasoning-frame-C3HdQRRS.js.map +1 -0
  116. package/dist/chunks/release-art-ChiT4T2S.js +582 -0
  117. package/dist/chunks/release-art-ChiT4T2S.js.map +1 -0
  118. package/dist/chunks/rights-B68ocZuq.js +312 -0
  119. package/dist/chunks/rights-B68ocZuq.js.map +1 -0
  120. package/dist/chunks/{scroll-area-D8MD7Vpo.js → scroll-area-_Ljh4-bG.js} +11 -6
  121. package/dist/chunks/scroll-area-_Ljh4-bG.js.map +1 -0
  122. package/dist/chunks/section-CFBYhsUi.js +77 -0
  123. package/dist/chunks/section-CFBYhsUi.js.map +1 -0
  124. package/dist/chunks/section-header-DU1Q4Tdf.js +28 -0
  125. package/dist/chunks/section-header-DU1Q4Tdf.js.map +1 -0
  126. package/dist/chunks/segmented-D9i1avik.js +119 -0
  127. package/dist/chunks/segmented-D9i1avik.js.map +1 -0
  128. package/dist/chunks/select-BqjmQOqx.js +222 -0
  129. package/dist/chunks/select-BqjmQOqx.js.map +1 -0
  130. package/dist/chunks/{separator-D7TzNHmX.js → separator-BNWf6BBj.js} +13 -8
  131. package/dist/chunks/separator-BNWf6BBj.js.map +1 -0
  132. package/dist/chunks/sidebar-Dq7oGOje.js +664 -0
  133. package/dist/chunks/sidebar-Dq7oGOje.js.map +1 -0
  134. package/dist/chunks/{sidebar-menu-BN3jkTlK.js → sidebar-menu-QSSNu1jJ.js} +2 -2
  135. package/dist/chunks/{sidebar-menu-BN3jkTlK.js.map → sidebar-menu-QSSNu1jJ.js.map} +1 -1
  136. package/dist/chunks/{skeleton-Dcz57Zyp.js → skeleton-D-qk3mes.js} +3 -3
  137. package/dist/chunks/skeleton-D-qk3mes.js.map +1 -0
  138. package/dist/chunks/slider-CcE8GtuV.js +58 -0
  139. package/dist/chunks/slider-CcE8GtuV.js.map +1 -0
  140. package/dist/chunks/{status-dot-QJTF0Yv4.js → status-dot-CP6runiC.js} +4 -4
  141. package/dist/chunks/{status-dot-QJTF0Yv4.js.map → status-dot-CP6runiC.js.map} +1 -1
  142. package/dist/chunks/{styles-CVJU9t9v.js → styles-hkFkoBbi.js} +2 -2
  143. package/dist/chunks/{styles-CVJU9t9v.js.map → styles-hkFkoBbi.js.map} +1 -1
  144. package/dist/chunks/{swap-text-Dr0Irxz6.js → swap-text-SlUjrTlG.js} +3 -3
  145. package/dist/chunks/swap-text-SlUjrTlG.js.map +1 -0
  146. package/dist/chunks/switch-ngywMQdl.js +76 -0
  147. package/dist/chunks/switch-ngywMQdl.js.map +1 -0
  148. package/dist/chunks/table-CTK5E0J7.js +102 -0
  149. package/dist/chunks/table-CTK5E0J7.js.map +1 -0
  150. package/dist/chunks/tag-BGr6lTSV.js +100 -0
  151. package/dist/chunks/tag-BGr6lTSV.js.map +1 -0
  152. package/dist/chunks/{text-CIXH8rmT.js → text-DkKdTVUf.js} +9 -9
  153. package/dist/chunks/text-DkKdTVUf.js.map +1 -0
  154. package/dist/chunks/{textarea--4FRL3Pb.js → textarea-CO0HP6fK.js} +47 -36
  155. package/dist/chunks/textarea-CO0HP6fK.js.map +1 -0
  156. package/dist/chunks/timeseries-Ck-q0wWn.js +381 -0
  157. package/dist/chunks/timeseries-Ck-q0wWn.js.map +1 -0
  158. package/dist/chunks/toolbar-u0Gm7Q7-.js +61 -0
  159. package/dist/chunks/toolbar-u0Gm7Q7-.js.map +1 -0
  160. package/dist/chunks/tooltip-Tkm-urbi.js +202 -0
  161. package/dist/chunks/tooltip-Tkm-urbi.js.map +1 -0
  162. package/dist/chunks/tooltip-root-BC_RNNiP.js +70 -0
  163. package/dist/chunks/tooltip-root-BC_RNNiP.js.map +1 -0
  164. package/dist/chunks/truncated-d1afmUJT.js +33 -0
  165. package/dist/chunks/truncated-d1afmUJT.js.map +1 -0
  166. package/dist/chunks/use-coarse-pointer-Ml5oE6oX.js +28 -0
  167. package/dist/chunks/use-coarse-pointer-Ml5oE6oX.js.map +1 -0
  168. package/dist/chunks/use-hydrating-COtYVRo4.js +8 -0
  169. package/dist/chunks/use-hydrating-COtYVRo4.js.map +1 -0
  170. package/dist/chunks/use-scroll-fade-uc8mWSDX.js +30 -0
  171. package/dist/chunks/use-scroll-fade-uc8mWSDX.js.map +1 -0
  172. package/dist/chunks/{zh-CN-29X4CDLE.js → zh-CN-BlpsT6d_.js} +80 -39
  173. package/dist/chunks/zh-CN-BlpsT6d_.js.map +1 -0
  174. package/dist/components/agent-avatar.js +1 -1
  175. package/dist/components/app-frame.js +2 -2
  176. package/dist/components/avatar.js +1 -1
  177. package/dist/components/badge.js +1 -1
  178. package/dist/components/banner.js +1 -1
  179. package/dist/components/button-group.js +22 -22
  180. package/dist/components/button-group.js.map +1 -1
  181. package/dist/components/button.js +1 -1
  182. package/dist/components/calendar.js +1 -1
  183. package/dist/components/charts/bar.js +235 -160
  184. package/dist/components/charts/bar.js.map +1 -1
  185. package/dist/components/charts/donut.js +144 -99
  186. package/dist/components/charts/donut.js.map +1 -1
  187. package/dist/components/charts/gauge.js +61 -49
  188. package/dist/components/charts/gauge.js.map +1 -1
  189. package/dist/components/charts/heatmap.js +179 -70
  190. package/dist/components/charts/heatmap.js.map +1 -1
  191. package/dist/components/charts/sankey.js +144 -77
  192. package/dist/components/charts/sankey.js.map +1 -1
  193. package/dist/components/charts/sparkline.js +54 -38
  194. package/dist/components/charts/sparkline.js.map +1 -1
  195. package/dist/components/charts/timeseries.js +1 -1
  196. package/dist/components/charts.js +2 -2
  197. package/dist/components/checkbox.js +1 -1
  198. package/dist/components/code-block.js +4 -3
  199. package/dist/components/code.js +1 -1
  200. package/dist/components/collapsible.js +77 -1
  201. package/dist/components/collapsible.js.map +1 -0
  202. package/dist/components/combobox.js +1 -1
  203. package/dist/components/command-list.js +2 -2
  204. package/dist/components/command-palette.js +89 -66
  205. package/dist/components/command-palette.js.map +1 -1
  206. package/dist/components/copy-button.js +1 -1
  207. package/dist/components/data-table.js +1 -459
  208. package/dist/components/date-picker.js +162 -151
  209. package/dist/components/date-picker.js.map +1 -1
  210. package/dist/components/dialog.js +74 -63
  211. package/dist/components/dialog.js.map +1 -1
  212. package/dist/components/display-options.js +76 -64
  213. package/dist/components/display-options.js.map +1 -1
  214. package/dist/components/empty.js +1 -1
  215. package/dist/components/field.js +1 -1
  216. package/dist/components/figure.js +2 -2
  217. package/dist/components/filter-chip.js +36 -27
  218. package/dist/components/filter-chip.js.map +1 -1
  219. package/dist/components/filter-row.js +4 -4
  220. package/dist/components/filter-row.js.map +1 -1
  221. package/dist/components/flow.js +94 -63
  222. package/dist/components/flow.js.map +1 -1
  223. package/dist/components/heading.js +1 -1
  224. package/dist/components/icon-button.js +1 -1
  225. package/dist/components/icon.js +2 -2
  226. package/dist/components/input.js +176 -98
  227. package/dist/components/input.js.map +1 -1
  228. package/dist/components/kaeso/conversation.js +51 -46
  229. package/dist/components/kaeso/conversation.js.map +1 -1
  230. package/dist/components/kaeso/identity.js +1 -1
  231. package/dist/components/kaeso/moments.js +23 -20
  232. package/dist/components/kaeso/moments.js.map +1 -1
  233. package/dist/components/kaeso/rights.js +1 -1
  234. package/dist/components/kaeso/usage.js +90 -74
  235. package/dist/components/kaeso/usage.js.map +1 -1
  236. package/dist/components/kaeso.js +200 -187
  237. package/dist/components/kaeso.js.map +1 -1
  238. package/dist/components/kbd.js +1 -1
  239. package/dist/components/key-value.js +32 -47
  240. package/dist/components/key-value.js.map +1 -1
  241. package/dist/components/label.js +1 -25
  242. package/dist/components/layout.js +2 -2
  243. package/dist/components/layout.js.map +1 -1
  244. package/dist/components/link.js +1 -1
  245. package/dist/components/list.js +1 -1
  246. package/dist/components/loader.js +11 -10
  247. package/dist/components/loader.js.map +1 -1
  248. package/dist/components/logo.js +2 -2
  249. package/dist/components/markdown.js +1 -1
  250. package/dist/components/menu.js +2 -2
  251. package/dist/components/meter.js +1 -1
  252. package/dist/components/page-header.js +1 -1
  253. package/dist/components/pagination.js +1 -1
  254. package/dist/components/playground.js +644 -529
  255. package/dist/components/playground.js.map +1 -1
  256. package/dist/components/popover.js +4 -4
  257. package/dist/components/popover.js.map +1 -1
  258. package/dist/components/portal.js +1 -1
  259. package/dist/components/qr-code.js +2 -2
  260. package/dist/components/qr-code.js.map +1 -1
  261. package/dist/components/radio.js +1 -1
  262. package/dist/components/release-art.js +1 -1
  263. package/dist/components/scroll-area.js +1 -1
  264. package/dist/components/section.js +1 -1
  265. package/dist/components/segmented.js +1 -1
  266. package/dist/components/select.js +1 -1
  267. package/dist/components/separator.js +1 -1
  268. package/dist/components/settings.js +39 -46
  269. package/dist/components/settings.js.map +1 -1
  270. package/dist/components/sheet.js +10 -9
  271. package/dist/components/sheet.js.map +1 -1
  272. package/dist/components/sidebar.js +1 -1
  273. package/dist/components/skeleton.js +1 -1
  274. package/dist/components/slider.js +1 -1
  275. package/dist/components/stat.js +98 -84
  276. package/dist/components/stat.js.map +1 -1
  277. package/dist/components/status-dot.js +1 -1
  278. package/dist/components/surface.js +1 -1
  279. package/dist/components/swap-text.js +1 -1
  280. package/dist/components/switch.js +1 -1
  281. package/dist/components/table.js +1 -1
  282. package/dist/components/tabs.js +73 -55
  283. package/dist/components/tabs.js.map +1 -1
  284. package/dist/components/tag.js +1 -1
  285. package/dist/components/text.js +1 -1
  286. package/dist/components/theme-image.js +1 -1
  287. package/dist/components/theme-menu.js +5 -2
  288. package/dist/components/theme-menu.js.map +1 -1
  289. package/dist/components/theme-select.js +1 -1
  290. package/dist/components/thumbnail.js +35 -24
  291. package/dist/components/thumbnail.js.map +1 -1
  292. package/dist/components/timeline.js +51 -35
  293. package/dist/components/timeline.js.map +1 -1
  294. package/dist/components/toast.js +76 -66
  295. package/dist/components/toast.js.map +1 -1
  296. package/dist/components/toc.js +14 -8
  297. package/dist/components/toc.js.map +1 -1
  298. package/dist/components/toolbar.js +1 -1
  299. package/dist/components/tooltip.js +1 -1
  300. package/dist/components/visually-hidden.js +1 -1
  301. package/dist/i18n-provider.js +1 -1
  302. package/dist/index.js +101 -101
  303. package/dist/kaeso.css +605 -67
  304. package/dist/styles.css +1 -1
  305. package/dist/tailwind.css +1 -1
  306. package/dist/types/blocks/delete-resource/delete-resource.d.ts +2 -2
  307. package/dist/types/components/agent-avatar/agent-avatar.d.ts +24 -19
  308. package/dist/types/components/badge/badge.d.ts +3 -3
  309. package/dist/types/components/banner/banner.d.ts +3 -3
  310. package/dist/types/components/button/button.d.ts +2 -2
  311. package/dist/types/components/button-group/button-group.d.ts +1 -1
  312. package/dist/types/components/charts/domain.d.ts +11 -0
  313. package/dist/types/components/charts/marks.d.ts +1 -0
  314. package/dist/types/components/code/code.d.ts +3 -3
  315. package/dist/types/components/code-block/diff-view.d.ts +30 -0
  316. package/dist/types/components/code-block/diff.d.ts +26 -0
  317. package/dist/types/components/code-block/docs.d.ts +14 -0
  318. package/dist/types/components/code-block/index.d.ts +1 -0
  319. package/dist/types/components/code-block/json-view.d.ts +2 -1
  320. package/dist/types/components/code-block/numbers.d.ts +1 -0
  321. package/dist/types/components/collapsible/collapsible.d.ts +2 -2
  322. package/dist/types/components/collapsible/disclosure.d.ts +2 -0
  323. package/dist/types/components/data-table/data-table.d.ts +6 -5
  324. package/dist/types/components/data-table/docs.d.ts +1 -0
  325. package/dist/types/components/data-table/time-columns.d.ts +1 -0
  326. package/dist/types/components/date-picker/focus-day.d.ts +1 -0
  327. package/dist/types/components/date-picker/iso-field.d.ts +8 -1
  328. package/dist/types/components/dialog/dialog.d.ts +7 -7
  329. package/dist/types/components/field/field.d.ts +1 -1
  330. package/dist/types/components/flow/flow.d.ts +1 -1
  331. package/dist/types/components/icon-button/icon-button.d.ts +1 -1
  332. package/dist/types/components/input/input-group.d.ts +2 -0
  333. package/dist/types/components/input/number-input.d.ts +4 -4
  334. package/dist/types/components/input/otp-input.d.ts +3 -3
  335. package/dist/types/components/kaeso/client-button.d.ts +2 -1
  336. package/dist/types/components/kaeso/provider-picker.d.ts +1 -0
  337. package/dist/types/components/kaeso/rights.d.ts +1 -1
  338. package/dist/types/components/kaeso/role-picker.d.ts +1 -0
  339. package/dist/types/components/key-value/key-value.d.ts +2 -2
  340. package/dist/types/components/layout/layout.d.ts +2 -2
  341. package/dist/types/components/link/link.d.ts +4 -4
  342. package/dist/types/components/list/list.d.ts +2 -2
  343. package/dist/types/components/menu/menu.d.ts +2 -1
  344. package/dist/types/components/menu/styles.d.ts +3 -3
  345. package/dist/types/components/meter/meter.d.ts +3 -3
  346. package/dist/types/components/page-header/page-header.d.ts +1 -1
  347. package/dist/types/components/pagination/pagination.d.ts +2 -2
  348. package/dist/types/components/playground/prompt-suggestions.d.ts +1 -0
  349. package/dist/types/components/playground/reasoning-frame.d.ts +14 -0
  350. package/dist/types/components/playground/reasoning.d.ts +1 -0
  351. package/dist/types/components/popover/popover.d.ts +1 -1
  352. package/dist/types/components/scroll-area/scroll-area.d.ts +2 -2
  353. package/dist/types/components/section/section-header.d.ts +6 -0
  354. package/dist/types/components/segmented/segmented.d.ts +1 -0
  355. package/dist/types/components/select/select.d.ts +1 -1
  356. package/dist/types/components/sheet/sheet.d.ts +3 -3
  357. package/dist/types/components/sidebar/sidebar.d.ts +1 -0
  358. package/dist/types/components/slider/slider.d.ts +2 -2
  359. package/dist/types/components/stat/stat.d.ts +1 -1
  360. package/dist/types/components/tabs/tabs.d.ts +6 -4
  361. package/dist/types/components/text/truncated.d.ts +7 -0
  362. package/dist/types/components/timeline/timeline.d.ts +5 -5
  363. package/dist/types/components/toc/toc.d.ts +1 -1
  364. package/dist/types/components/toolbar/toolbar.d.ts +1 -1
  365. package/dist/types/components/tooltip/tooltip.d.ts +2 -2
  366. package/dist/types/components/tooltip/trigger-props.d.ts +1 -0
  367. package/dist/types/hooks/use-coarse-pointer.d.ts +1 -0
  368. package/dist/types/hooks/use-hydrating.d.ts +1 -0
  369. package/dist/types/icons/groups.d.ts +1 -1
  370. package/dist/types/icons/vocabulary.d.ts +5 -0
  371. package/dist/types/utils/arrow-focus.d.ts +4 -1
  372. package/dist/types/utils/cn.d.ts +33 -0
  373. package/dist/types/utils/portal-context.d.ts +7 -1
  374. package/dist/utils.js +2 -2
  375. package/foundations/accessibility.md +3 -2
  376. package/foundations/color.md +5 -1
  377. package/foundations/elevation.md +1 -0
  378. package/foundations/motion.md +1 -1
  379. package/foundations/shape.md +2 -2
  380. package/foundations/typography.md +12 -12
  381. package/package.json +2 -2
  382. package/dist/chunks/agent-avatar-0pdBTWkR.js +0 -171
  383. package/dist/chunks/agent-avatar-0pdBTWkR.js.map +0 -1
  384. package/dist/chunks/app-frame-DogGRmsu.js +0 -221
  385. package/dist/chunks/app-frame-DogGRmsu.js.map +0 -1
  386. package/dist/chunks/arrow-focus-BcySmwwU.js +0 -11
  387. package/dist/chunks/arrow-focus-BcySmwwU.js.map +0 -1
  388. package/dist/chunks/avatar-CWbdwbJv.js +0 -83
  389. package/dist/chunks/avatar-CWbdwbJv.js.map +0 -1
  390. package/dist/chunks/badge-C2KtxCLB.js +0 -26
  391. package/dist/chunks/badge-C2KtxCLB.js.map +0 -1
  392. package/dist/chunks/banner-BA2ALw9M.js +0 -85
  393. package/dist/chunks/banner-BA2ALw9M.js.map +0 -1
  394. package/dist/chunks/button-CzuxqawA.js +0 -164
  395. package/dist/chunks/button-CzuxqawA.js.map +0 -1
  396. package/dist/chunks/calendar-BWaf2MXc.js.map +0 -1
  397. package/dist/chunks/checkbox-CQjwCPkc.js +0 -126
  398. package/dist/chunks/checkbox-CQjwCPkc.js.map +0 -1
  399. package/dist/chunks/cn-Dj6sRgkF.js.map +0 -1
  400. package/dist/chunks/code-block-D5A-CGXG.js +0 -330
  401. package/dist/chunks/code-block-D5A-CGXG.js.map +0 -1
  402. package/dist/chunks/code-tqj0uhBL.js.map +0 -1
  403. package/dist/chunks/collapsible-CKrCX_T9.js +0 -87
  404. package/dist/chunks/collapsible-CKrCX_T9.js.map +0 -1
  405. package/dist/chunks/combobox-DjDI7SUC.js +0 -319
  406. package/dist/chunks/combobox-DjDI7SUC.js.map +0 -1
  407. package/dist/chunks/command-list-C2Y7V_lt.js +0 -418
  408. package/dist/chunks/command-list-C2Y7V_lt.js.map +0 -1
  409. package/dist/chunks/copy-button-FJvPJn72.js.map +0 -1
  410. package/dist/chunks/core-BYns5ytV.js +0 -472
  411. package/dist/chunks/core-BYns5ytV.js.map +0 -1
  412. package/dist/chunks/date-popup-CPA_zt6o.js +0 -35
  413. package/dist/chunks/date-popup-CPA_zt6o.js.map +0 -1
  414. package/dist/chunks/de-CPXJh9cq.js.map +0 -1
  415. package/dist/chunks/dialog-Cg9A_6SF.js.map +0 -1
  416. package/dist/chunks/field-TviMvYa2.js.map +0 -1
  417. package/dist/chunks/hidden-description-B2zSmLcn.js +0 -23
  418. package/dist/chunks/hidden-description-B2zSmLcn.js.map +0 -1
  419. package/dist/chunks/icon-DVooQfk4.js +0 -94
  420. package/dist/chunks/icon-button-CrdF_eMG.js.map +0 -1
  421. package/dist/chunks/input-2VJuj_M4.js.map +0 -1
  422. package/dist/chunks/input-group-DQ_4DoXg.js.map +0 -1
  423. package/dist/chunks/iso-field-B2rTwiBo.js +0 -33
  424. package/dist/chunks/iso-field-B2rTwiBo.js.map +0 -1
  425. package/dist/chunks/json-view-Dqd2TDkc.js +0 -175
  426. package/dist/chunks/json-view-Dqd2TDkc.js.map +0 -1
  427. package/dist/chunks/kbd-BF1vKXJf.js.map +0 -1
  428. package/dist/chunks/link-KWI7PevW.js.map +0 -1
  429. package/dist/chunks/list-M1csq-d4.js +0 -494
  430. package/dist/chunks/list-M1csq-d4.js.map +0 -1
  431. package/dist/chunks/markdown-DULktoTK.js +0 -313
  432. package/dist/chunks/markdown-DULktoTK.js.map +0 -1
  433. package/dist/chunks/menu-DEmBfdPm.js +0 -450
  434. package/dist/chunks/menu-DEmBfdPm.js.map +0 -1
  435. package/dist/chunks/meter-Bj4N3Xuh.js +0 -84
  436. package/dist/chunks/meter-Bj4N3Xuh.js.map +0 -1
  437. package/dist/chunks/nav-sheet-CzgIwgAm.js +0 -60
  438. package/dist/chunks/nav-sheet-CzgIwgAm.js.map +0 -1
  439. package/dist/chunks/nav-wordmark-_pjheAsZ.js.map +0 -1
  440. package/dist/chunks/page-header-DL2y2iZp.js +0 -41
  441. package/dist/chunks/page-header-DL2y2iZp.js.map +0 -1
  442. package/dist/chunks/pagination-Cn_qF4cg.js +0 -86
  443. package/dist/chunks/pagination-Cn_qF4cg.js.map +0 -1
  444. package/dist/chunks/picker-popover-BxyU1U9F.js +0 -106
  445. package/dist/chunks/picker-popover-BxyU1U9F.js.map +0 -1
  446. package/dist/chunks/popover-DNN4S47w.js +0 -50
  447. package/dist/chunks/popover-DNN4S47w.js.map +0 -1
  448. package/dist/chunks/portal-context-BBbzDKmY.js.map +0 -1
  449. package/dist/chunks/radio-CDDFpdtL.js.map +0 -1
  450. package/dist/chunks/range-popup-CRyWYUB1.js +0 -128
  451. package/dist/chunks/range-popup-CRyWYUB1.js.map +0 -1
  452. package/dist/chunks/release-art-ZwfFQImt.js +0 -561
  453. package/dist/chunks/release-art-ZwfFQImt.js.map +0 -1
  454. package/dist/chunks/rights-Cyp0Pzp-.js +0 -279
  455. package/dist/chunks/rights-Cyp0Pzp-.js.map +0 -1
  456. package/dist/chunks/scroll-area-D8MD7Vpo.js.map +0 -1
  457. package/dist/chunks/scroll-parent-WXvzQcUo.js +0 -14
  458. package/dist/chunks/scroll-parent-WXvzQcUo.js.map +0 -1
  459. package/dist/chunks/section-Ce1efbsP.js +0 -87
  460. package/dist/chunks/section-Ce1efbsP.js.map +0 -1
  461. package/dist/chunks/segmented-CErcoxwi.js +0 -114
  462. package/dist/chunks/segmented-CErcoxwi.js.map +0 -1
  463. package/dist/chunks/select-x4XVsdCI.js +0 -210
  464. package/dist/chunks/select-x4XVsdCI.js.map +0 -1
  465. package/dist/chunks/separator-D7TzNHmX.js.map +0 -1
  466. package/dist/chunks/sidebar-3r1ZRXlN.js +0 -621
  467. package/dist/chunks/sidebar-3r1ZRXlN.js.map +0 -1
  468. package/dist/chunks/skeleton-Dcz57Zyp.js.map +0 -1
  469. package/dist/chunks/slider-Ci83PGtj.js +0 -57
  470. package/dist/chunks/slider-Ci83PGtj.js.map +0 -1
  471. package/dist/chunks/swap-text-Dr0Irxz6.js.map +0 -1
  472. package/dist/chunks/switch-BNMq_kGt.js +0 -59
  473. package/dist/chunks/switch-BNMq_kGt.js.map +0 -1
  474. package/dist/chunks/table-BeOSKl_3.js +0 -84
  475. package/dist/chunks/table-BeOSKl_3.js.map +0 -1
  476. package/dist/chunks/tag-D_M1s2qS.js +0 -87
  477. package/dist/chunks/tag-D_M1s2qS.js.map +0 -1
  478. package/dist/chunks/text-CIXH8rmT.js.map +0 -1
  479. package/dist/chunks/textarea--4FRL3Pb.js.map +0 -1
  480. package/dist/chunks/timeseries-D1xjRXfk.js +0 -339
  481. package/dist/chunks/timeseries-D1xjRXfk.js.map +0 -1
  482. package/dist/chunks/toolbar-WA_oZgu-.js +0 -37
  483. package/dist/chunks/toolbar-WA_oZgu-.js.map +0 -1
  484. package/dist/chunks/tooltip-OcwO0VUT.js +0 -154
  485. package/dist/chunks/tooltip-OcwO0VUT.js.map +0 -1
  486. package/dist/chunks/tooltip-root-DzahJDVj.js +0 -60
  487. package/dist/chunks/tooltip-root-DzahJDVj.js.map +0 -1
  488. package/dist/chunks/zh-CN-29X4CDLE.js.map +0 -1
  489. package/dist/components/data-table.js.map +0 -1
  490. package/dist/components/label.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.js","names":["BaseTabs","_Fragment","cn","Fragment$1","Tabs$1","KAESO_TABS_VARIANTS","KAESO_TABS_DEFAULT_VARIANTS","KAESO_PILL_TABS_VARIANTS","KAESO_PILL_TABS_DEFAULT_VARIANTS","Ctx","makeRoot","Root","defaultVariant","variant","value","defaultValue","onValueChange","v","className","name","List","props","useContext","children","Tab","force","disabled","icon","Icon","count","Panel","keepMounted","Tabs","PillTabs"],"sources":["../../src/components/tabs/tabs.tsx"],"sourcesContent":["import { createContext, forwardRef, useContext, type ReactNode } from \"react\";\nimport { Tabs as BaseTabs } from \"@base-ui/react/tabs\";\nimport { cn } from \"../../utils/cn.js\";\nimport { Icon, type IconData } from \"../icon/icon.js\";\n\nexport const KAESO_TABS_VARIANTS = {\n variant: {\n underline: { classes: \"\" },\n pill: { classes: \"\" },\n },\n} as const;\nexport const KAESO_TABS_DEFAULT_VARIANTS = { variant: \"underline\" } as const;\nexport const KAESO_PILL_TABS_VARIANTS = { variant: KAESO_TABS_VARIANTS.variant } as const;\nexport const KAESO_PILL_TABS_DEFAULT_VARIANTS = { variant: \"pill\" } as const;\ntype Variant = keyof typeof KAESO_TABS_VARIANTS.variant;\n\nconst Ctx = /* @__PURE__ */ createContext<Variant>(\"underline\");\n\nexport interface TabsProps {\n value?: string | undefined;\n defaultValue?: string | undefined;\n onValueChange?: ((value: string) => void) | undefined;\n variant?: Variant | undefined;\n className?: string | undefined;\n children: ReactNode;\n}\n\nfunction makeRoot(defaultVariant: Variant, name: string) {\n const Root = /* @__PURE__ */ forwardRef<HTMLDivElement, TabsProps>(function TabsRoot(\n { value, defaultValue, onValueChange, variant = defaultVariant, className, children },\n ref,\n ) {\n return (\n <Ctx.Provider value={variant}>\n <BaseTabs.Root\n ref={ref}\n {...(value !== undefined ? { value } : {})}\n {...(defaultValue !== undefined ? { defaultValue } : {})}\n {...(onValueChange ? { onValueChange: (v: unknown) => onValueChange(String(v)) } : {})}\n className={cn(\"flex min-w-0 flex-col\", className)}\n >\n {children}\n </BaseTabs.Root>\n </Ctx.Provider>\n );\n });\n Root.displayName = name;\n return Root;\n}\n\nexport interface TabsListProps {\n className?: string | undefined;\n children: ReactNode;\n \"aria-label\"?: string | undefined;\n}\n\nconst List = /* @__PURE__ */ forwardRef<HTMLDivElement, TabsListProps>(function TabsList({ className, children, ...props }, ref) {\n const variant = useContext(Ctx);\n return (\n <BaseTabs.List\n ref={ref}\n className={cn(\n \"relative flex min-w-0 items-center overflow-x-auto scrollbar-none\",\n variant === \"underline\" ? \"-mx-12 gap-20 px-12 hairline-b-inset-12\" : \"-m-4 gap-4 p-4\",\n className,\n )}\n {...props}\n >\n {children}\n {variant === \"underline\" && (\n <BaseTabs.Indicator className=\"absolute bottom-0 left-0 h-2 w-(--active-tab-width) translate-x-(--active-tab-left) rounded-pill bg-ink indicator-motion\" />\n )}\n </BaseTabs.List>\n );\n});\nif (process.env.NODE_ENV !== \"production\") List.displayName = \"Tabs.List\";\n\nexport interface TabProps {\n value: string;\n children: ReactNode;\n icon?: IconData | undefined;\n count?: number | undefined;\n disabled?: boolean | undefined;\n className?: string | undefined;\n \"data-force\"?: string | undefined;\n}\n\nconst Tab = /* @__PURE__ */ forwardRef<HTMLButtonElement, TabProps>(function TabsTab({ value, children, icon, count, disabled, className, \"data-force\": force }, ref) {\n const variant = useContext(Ctx);\n return (\n <BaseTabs.Tab\n ref={ref}\n value={value}\n {...(disabled ? { disabled: true } : {})}\n {...(force ? { \"data-force\": force } : {})}\n className={cn(\n \"relative inline-flex shrink-0 cursor-pointer items-center gap-6 text-body font-medium whitespace-nowrap transition-control tap-target disabled:cursor-not-allowed disabled:text-fg-disabled\",\n variant === \"underline\"\n ? \"group/tab h-40 text-fg-secondary outline-none hover:text-fg selected:text-fg\"\n : \"h-32 rounded-pill px-12 text-fg-secondary hover:bg-fill-1 hover:text-fg active:bg-fill-2 selected:bg-fill-2 selected:text-fg focus-ring\",\n className,\n )}\n >\n {variant === \"underline\" ? (\n <span className=\"-mx-8 inline-flex h-28 items-center gap-6 rounded-pill px-8 outline-2 outline-transparent group-focus-visible/tab:outline-focus\">\n {icon && <Icon icon={icon} size=\"sm\" />}\n {children}\n {count !== undefined && <span className=\"text-body font-regular text-fg-secondary tabular\">{count}</span>}\n </span>\n ) : (\n <>\n {icon && <Icon icon={icon} size=\"sm\" />}\n {children}\n {count !== undefined && <span className=\"text-body font-regular text-fg-secondary tabular\">{count}</span>}\n </>\n )}\n </BaseTabs.Tab>\n );\n});\nif (process.env.NODE_ENV !== \"production\") Tab.displayName = \"Tabs.Tab\";\n\nconst Panel = /* @__PURE__ */ forwardRef<HTMLDivElement, { value: string; className?: string | undefined; children: ReactNode; keepMounted?: boolean | undefined }>(\n function TabsPanel({ value, className, children, keepMounted }, ref) {\n return (\n <BaseTabs.Panel ref={ref} value={value} {...(keepMounted ? { keepMounted } : {})} className={cn(\"outline-none focus-ring-inset\", className)}>\n {children}\n </BaseTabs.Panel>\n );\n },\n);\nif (process.env.NODE_ENV !== \"production\") Panel.displayName = \"Tabs.Panel\";\n\nexport const Tabs = /* @__PURE__ */ Object.assign(/* @__PURE__ */ makeRoot(KAESO_TABS_DEFAULT_VARIANTS.variant, \"Tabs\"), { List, Tab, Panel });\nexport const PillTabs = /* @__PURE__ */ Object.assign(/* @__PURE__ */ makeRoot(KAESO_PILL_TABS_DEFAULT_VARIANTS.variant, \"PillTabs\"), { List, Tab, Panel });\n"],"mappings":"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"}
1
+ {"version":3,"file":"tabs.js","names":["BaseTabs","_Fragment","cn","mergeRefs","observeResize","Fragment$1","Tabs$1","KAESO_TABS_VARIANTS","KAESO_TABS_DEFAULT_VARIANTS","KAESO_PILL_TABS_VARIANTS","KAESO_PILL_TABS_DEFAULT_VARIANTS","Ctx","makeRoot","Root","defaultVariant","variant","value","defaultValue","onValueChange","v","className","name","List","props","useContext","own","useRef","refs","useMemo","ref","useEffect","el","mark","end","stop","children","Tab","force","disabled","icon","Icon","count","Panel","keepMounted","Tabs","PillTabs"],"sources":["../../src/components/tabs/tabs.tsx"],"sourcesContent":["import { createContext, forwardRef, useContext, useEffect, useMemo, useRef, type ReactNode } from \"react\";\nimport { Tabs as BaseTabs } from \"@base-ui/react/tabs\";\nimport { cn } from \"../../utils/cn.js\";\nimport { mergeRefs } from \"../../utils/merge-refs.js\";\nimport { observeResize } from \"../../utils/observe-resize.js\";\nimport { Icon, type IconData } from \"../icon/icon.js\";\n\nexport const KAESO_TABS_VARIANTS = {\n variant: {\n underline: {\n classes: \"\",\n },\n pill: { classes: \"\" },\n },\n} as const;\nexport const KAESO_TABS_DEFAULT_VARIANTS = { variant: \"underline\" } as const;\nexport const KAESO_PILL_TABS_VARIANTS = { variant: KAESO_TABS_VARIANTS.variant } as const;\nexport const KAESO_PILL_TABS_DEFAULT_VARIANTS = { variant: \"pill\" } as const;\ntype Variant = keyof typeof KAESO_TABS_VARIANTS.variant;\n\nconst Ctx = /* @__PURE__ */ createContext<Variant>(\"underline\");\n\nexport interface TabsProps {\n value?: string | undefined;\n defaultValue?: string | undefined;\n onValueChange?: ((value: string) => void) | undefined;\n variant?: Variant | undefined;\n className?: string | undefined;\n children: ReactNode;\n}\n\nfunction makeRoot(defaultVariant: Variant, name: string) {\n const Root = /* @__PURE__ */ forwardRef<HTMLDivElement, TabsProps>(function TabsRoot(\n { value, defaultValue, onValueChange, variant = defaultVariant, className, children },\n ref,\n ) {\n return (\n <Ctx.Provider value={variant}>\n <BaseTabs.Root\n ref={ref}\n {...(value !== undefined ? { value } : {})}\n {...(defaultValue !== undefined ? { defaultValue } : {})}\n {...(onValueChange ? { onValueChange: (v: unknown) => onValueChange(String(v)) } : {})}\n className={cn(\"flex min-w-0 flex-col\", className)}\n >\n {children}\n </BaseTabs.Root>\n </Ctx.Provider>\n );\n });\n Root.displayName = name;\n return Root;\n}\n\nexport interface TabsListProps {\n className?: string | undefined;\n children: ReactNode;\n \"aria-label\"?: string | undefined;\n}\n\nconst List = /* @__PURE__ */ forwardRef<HTMLDivElement, TabsListProps>(function TabsList({ className, children, ...props }, ref) {\n const variant = useContext(Ctx);\n const own = useRef<HTMLDivElement | null>(null);\n const refs = useMemo(() => mergeRefs(own, ref), [ref]);\n useEffect(() => {\n const el = own.current;\n if (!el) return;\n const mark = () => {\n const end = el.scrollWidth - el.clientWidth - Math.abs(el.scrollLeft);\n el.style.setProperty(\"--scroll-area-overflow-x-start\", `${Math.max(0, Math.abs(el.scrollLeft))}px`);\n el.style.setProperty(\"--scroll-area-overflow-x-end\", `${Math.max(0, end)}px`);\n };\n mark();\n el.addEventListener(\"scroll\", mark, { passive: true });\n const stop = observeResize([el, ...el.children], mark);\n return () => {\n el.removeEventListener(\"scroll\", mark);\n stop();\n };\n }, []);\n return (\n <BaseTabs.List\n ref={refs}\n className={cn(\n \"relative flex min-w-0 items-center overflow-x-auto scroll-px-16 scrollbar-none scroll-fade-x\",\n variant === \"underline\" ? \"hairline-b-strong\" : \"gap-4\",\n className,\n )}\n {...props}\n >\n {children}\n {variant === \"underline\" && (\n <BaseTabs.Indicator className=\"absolute bottom-0 left-0 flex h-2 w-(--active-tab-width) translate-x-(--active-tab-left) px-12 indicator-motion\">\n <span className=\"h-2 flex-1 rounded-pill bg-ink forced-line\" />\n </BaseTabs.Indicator>\n )}\n </BaseTabs.List>\n );\n});\nif (process.env.NODE_ENV !== \"production\") List.displayName = \"Tabs.List\";\n\nexport interface TabProps {\n value: string;\n children: ReactNode;\n icon?: IconData | undefined;\n count?: number | undefined;\n disabled?: boolean | undefined;\n className?: string | undefined;\n \"data-force\"?: string | undefined;\n}\n\nconst Tab = /* @__PURE__ */ forwardRef<HTMLButtonElement, TabProps>(function TabsTab({ value, children, icon, count, disabled, className, \"data-force\": force }, ref) {\n const variant = useContext(Ctx);\n return (\n <BaseTabs.Tab\n ref={ref}\n value={value}\n {...(disabled ? { disabled: true } : {})}\n {...(force ? { \"data-force\": force } : {})}\n className={cn(\n \"relative inline-flex shrink-0 cursor-pointer items-center gap-6 text-body font-medium whitespace-nowrap text-fg-secondary transition-control tap-target hover:text-fg selected:text-fg disabled:cursor-not-allowed disabled:text-fg-disabled selected:disabled:text-fg-disabled\",\n variant === \"underline\"\n ? \"group/tab h-40 outline-none\"\n : \"h-32 rounded-pill px-12 hover:bg-fill-1 active:bg-fill-2 selected:bg-fill-2 selected:hover:bg-fill-3 selected:active:bg-fill-3 focus-ring-inset\",\n className,\n )}\n >\n {variant === \"underline\" ? (\n <span className=\"inline-flex h-28 items-center gap-6 rounded-pill px-12 transition-control focus-ring-inset group-hover/tab:bg-fill-1 group-active/tab:bg-fill-2 group-disabled/tab:bg-transparent group-focus-visible/tab:outline-focus group-focus-visible/tab:outline-solid\">\n {icon && <Icon icon={icon} size=\"sm\" />}\n {children}\n {count !== undefined && <span className=\"text-body font-regular text-fg-secondary tabular\">{count}</span>}\n </span>\n ) : (\n <>\n {icon && <Icon icon={icon} size=\"sm\" />}\n {children}\n {count !== undefined && <span className=\"text-body font-regular text-fg-secondary tabular\">{count}</span>}\n </>\n )}\n </BaseTabs.Tab>\n );\n});\nif (process.env.NODE_ENV !== \"production\") Tab.displayName = \"Tabs.Tab\";\n\nconst Panel = /* @__PURE__ */ forwardRef<\n HTMLDivElement,\n { value: string; className?: string | undefined; children: ReactNode; keepMounted?: boolean | undefined; \"data-force\"?: string | undefined }\n>(function TabsPanel({ value, className, children, keepMounted, \"data-force\": force }, ref) {\n return (\n <BaseTabs.Panel\n ref={ref}\n value={value}\n {...(keepMounted ? { keepMounted } : {})}\n {...(force ? { \"data-force\": force } : {})}\n className={cn(\"outline-none focus-ring-inset\", className)}\n >\n {children}\n </BaseTabs.Panel>\n );\n});\nif (process.env.NODE_ENV !== \"production\") Panel.displayName = \"Tabs.Panel\";\n\nexport const Tabs = /* @__PURE__ */ Object.assign(/* @__PURE__ */ makeRoot(KAESO_TABS_DEFAULT_VARIANTS.variant, \"Tabs\"), { List, Tab, Panel });\nexport const PillTabs = /* @__PURE__ */ Object.assign(/* @__PURE__ */ makeRoot(KAESO_PILL_TABS_DEFAULT_VARIANTS.variant, \"PillTabs\"), { List, Tab, Panel });\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- export { t as KAESO_TAG_DEFAULT_VARIANTS, n as KAESO_TAG_VARIANTS, r as Pill, i as TAG_DOT, a as Tag } from "../chunks/tag-D_M1s2qS.js";
2
+ export { t as KAESO_TAG_DEFAULT_VARIANTS, n as KAESO_TAG_VARIANTS, r as Pill, i as TAG_DOT, a as Tag } from "../chunks/tag-BGr6lTSV.js";
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- export { t as KAESO_TEXT_DEFAULT_VARIANTS, n as KAESO_TEXT_VARIANTS, r as Text } from "../chunks/text-CIXH8rmT.js";
2
+ export { t as KAESO_TEXT_DEFAULT_VARIANTS, n as KAESO_TEXT_VARIANTS, r as Text } from "../chunks/text-DkKdTVUf.js";
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import { t as e } from "../chunks/cn-Dj6sRgkF.js";
2
+ import { t as e } from "../chunks/cn-BjnOAUrA.js";
3
3
  import { forwardRef as t } from "react";
4
4
  import { jsx as n, jsxs as r } from "react/jsx-runtime";
5
5
  //#region src/components/theme-image/theme-image.tsx
@@ -1,8 +1,8 @@
1
1
  "use client";
2
2
  import { i as e } from "../chunks/context-BELWW79w.js";
3
3
  import { a as t } from "../chunks/theme-provider-DJhORMlc.js";
4
- import { t as n } from "../chunks/icon-button-CrdF_eMG.js";
5
- import { c as r } from "../chunks/menu-DEmBfdPm.js";
4
+ import { t as n } from "../chunks/icon-button-Dfwpvmav.js";
5
+ import { c as r } from "../chunks/menu-Clvv6ftq.js";
6
6
  import { forwardRef as i } from "react";
7
7
  import { jsx as a, jsxs as o } from "react/jsx-runtime";
8
8
  import { ComputerIcon as s, Moon02Icon as c, Sun03Icon as l } from "@hugeicons/core-free-icons";
@@ -29,16 +29,19 @@ var u = { variant: {
29
29
  children: [
30
30
  /* @__PURE__ */ a(r.RadioItem, {
31
31
  value: "system",
32
+ closeOnClick: !0,
32
33
  icon: s,
33
34
  children: v("themeMenu.system", "System")
34
35
  }),
35
36
  /* @__PURE__ */ a(r.RadioItem, {
36
37
  value: "light",
38
+ closeOnClick: !0,
37
39
  icon: l,
38
40
  children: v("themeMenu.light", "Light")
39
41
  }),
40
42
  /* @__PURE__ */ a(r.RadioItem, {
41
43
  value: "dark",
44
+ closeOnClick: !0,
42
45
  icon: c,
43
46
  children: v("themeMenu.dark", "Dark")
44
47
  })
@@ -1 +1 @@
1
- {"version":3,"file":"theme-menu.js","names":["__icon_Moon02Icon","__icon_Sun03Icon","__icon_ComputerIcon","useUiText","useTheme","IconButton","Menu","KAESO_THEME_MENU_VARIANTS","KAESO_THEME_MENU_DEFAULT_VARIANTS","ThemeMenu","force","t","resolvedTheme","Moon02Icon","Sun03Icon","theme","setTheme","v","ComputerIcon"],"sources":["../../src/components/theme-menu/theme-menu.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\nimport { Moon02Icon as __icon_Moon02Icon, Sun03Icon as __icon_Sun03Icon, ComputerIcon as __icon_ComputerIcon } from \"@hugeicons/core-free-icons\";\nimport { useTheme, type ThemePreference } from \"../../theme/theme-provider.js\";\nimport { IconButton } from \"../icon-button/icon-button.js\";\nimport { Menu } from \"../menu/menu.js\";\nimport { useUiText } from \"../../i18n/context.js\";\n\nexport const KAESO_THEME_MENU_VARIANTS = {\n variant: {\n ghost: { classes: \"\" },\n secondary: { classes: \"\" },\n },\n} as const;\nexport const KAESO_THEME_MENU_DEFAULT_VARIANTS = { variant: \"ghost\" } as const;\n\nexport interface ThemeMenuProps {\n variant?: keyof typeof KAESO_THEME_MENU_VARIANTS.variant | undefined;\n size?: \"sm\" | \"md\" | undefined;\n side?: \"top\" | \"bottom\" | undefined;\n align?: \"start\" | \"end\" | undefined;\n \"data-force\"?: string | undefined;\n}\n\nexport const ThemeMenu = /* @__PURE__ */ forwardRef<HTMLButtonElement, ThemeMenuProps>(function ThemeMenu(\n { variant = \"ghost\", size = \"sm\", side = \"bottom\", align = \"end\", \"data-force\": force },\n ref,\n) {\n const { theme, resolvedTheme, setTheme } = useTheme();\n const t = useUiText();\n return (\n <Menu>\n <Menu.Trigger>\n <IconButton\n ref={ref}\n icon={resolvedTheme === \"dark\" ? __icon_Moon02Icon : __icon_Sun03Icon}\n aria-label={t(\"themeMenu.theme\", \"Theme\")}\n variant={variant}\n size={size}\n data-force={force}\n />\n </Menu.Trigger>\n <Menu.Content side={side} align={align} className=\"min-w-180\">\n <Menu.RadioGroup value={theme} onValueChange={(v) => setTheme(v as ThemePreference)}>\n <Menu.RadioItem value=\"system\" icon={__icon_ComputerIcon}>\n {t(\"themeMenu.system\", \"System\")}\n </Menu.RadioItem>\n <Menu.RadioItem value=\"light\" icon={__icon_Sun03Icon}>\n {t(\"themeMenu.light\", \"Light\")}\n </Menu.RadioItem>\n <Menu.RadioItem value=\"dark\" icon={__icon_Moon02Icon}>\n {t(\"themeMenu.dark\", \"Dark\")}\n </Menu.RadioItem>\n </Menu.RadioGroup>\n </Menu.Content>\n </Menu>\n );\n});\nif (process.env.NODE_ENV !== \"production\") ThemeMenu.displayName = \"ThemeMenu\";\n"],"mappings":";;;;;;;;;AAOA,IAAaO,IAA4B,EACvC,SAAS;CACP,OAAO,EAAE,SAAS,GAAG;CACrB,WAAW,EAAE,SAAS,GAAG;AAC3B,EACF,GACaC,IAAoC,EAAE,SAAS,QAAQ,GAUvDC,IAA4B,kBAA8C,SACrF,EAAE,aAAU,SAAS,UAAO,MAAM,UAAO,UAAU,WAAQ,OAAO,cAAcC,KAChF,GACA;CACA,IAAM,EAAE,UAAO,kBAAe,gBAAaN,EAAS,GAC9CO,IAAIR,EAAU;CACpB,OACE,kBAACG,GAAD,EAAA,UAAA,CACE,kBAACA,EAAK,SAAN,EAAA,UACE,kBAACD,GAAD;EACO;EACL,MAAMO,MAAkB,SAASZ,IAAoBC;EACrD,cAAYU,EAAE,mBAAmB,OAAO;EAC/B;EACH;EACN,cAAYD;CACb,CAAA,EACW,CAAA,GACd,kBAACJ,EAAK,SAAN;EAAoB;EAAa;EAAO,WAAU;EAChD,UAAA,kBAACA,EAAK,YAAN;GAAiB,OAAOS;GAAO,gBAAgB,MAAMC,EAASC,CAAoB;GAAlF,UAAA;IACE,kBAACX,EAAK,WAAN;KAAgB,OAAM;KAAS,MAAMJ;KAClC,UAAAS,EAAE,oBAAoB,QAAQ;IACjB,CAAA;IAChB,kBAACL,EAAK,WAAN;KAAgB,OAAM;KAAQ,MAAML;KACjC,UAAAU,EAAE,mBAAmB,OAAO;IACf,CAAA;IAChB,kBAACL,EAAK,WAAN;KAAgB,OAAM;KAAO,MAAMN;KAChC,UAAAW,EAAE,kBAAkB,MAAM;IACb,CAAA;GACD;;CACL,CAAA,CACV,EAAA,CAAA;AAEV,CAAC;AACD,QAAA,IAAA,aAA6B,iBAAc,EAAU,cAAc"}
1
+ {"version":3,"file":"theme-menu.js","names":["__icon_Moon02Icon","__icon_Sun03Icon","__icon_ComputerIcon","useUiText","useTheme","IconButton","Menu","KAESO_THEME_MENU_VARIANTS","KAESO_THEME_MENU_DEFAULT_VARIANTS","ThemeMenu","force","t","resolvedTheme","Moon02Icon","Sun03Icon","theme","setTheme","v","ComputerIcon"],"sources":["../../src/components/theme-menu/theme-menu.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\nimport { Moon02Icon as __icon_Moon02Icon, Sun03Icon as __icon_Sun03Icon, ComputerIcon as __icon_ComputerIcon } from \"@hugeicons/core-free-icons\";\nimport { useTheme, type ThemePreference } from \"../../theme/theme-provider.js\";\nimport { IconButton } from \"../icon-button/icon-button.js\";\nimport { Menu } from \"../menu/menu.js\";\nimport { useUiText } from \"../../i18n/context.js\";\n\nexport const KAESO_THEME_MENU_VARIANTS = {\n variant: {\n ghost: { classes: \"\" },\n secondary: { classes: \"\" },\n },\n} as const;\nexport const KAESO_THEME_MENU_DEFAULT_VARIANTS = { variant: \"ghost\" } as const;\n\nexport interface ThemeMenuProps {\n variant?: keyof typeof KAESO_THEME_MENU_VARIANTS.variant | undefined;\n size?: \"sm\" | \"md\" | undefined;\n side?: \"top\" | \"bottom\" | undefined;\n align?: \"start\" | \"end\" | undefined;\n \"data-force\"?: string | undefined;\n}\n\nexport const ThemeMenu = /* @__PURE__ */ forwardRef<HTMLButtonElement, ThemeMenuProps>(function ThemeMenu(\n { variant = \"ghost\", size = \"sm\", side = \"bottom\", align = \"end\", \"data-force\": force },\n ref,\n) {\n const { theme, resolvedTheme, setTheme } = useTheme();\n const t = useUiText();\n return (\n <Menu>\n <Menu.Trigger>\n <IconButton\n ref={ref}\n icon={resolvedTheme === \"dark\" ? __icon_Moon02Icon : __icon_Sun03Icon}\n aria-label={t(\"themeMenu.theme\", \"Theme\")}\n variant={variant}\n size={size}\n data-force={force}\n />\n </Menu.Trigger>\n <Menu.Content side={side} align={align} className=\"min-w-180\">\n <Menu.RadioGroup value={theme} onValueChange={(v) => setTheme(v as ThemePreference)}>\n <Menu.RadioItem value=\"system\" closeOnClick icon={__icon_ComputerIcon}>\n {t(\"themeMenu.system\", \"System\")}\n </Menu.RadioItem>\n <Menu.RadioItem value=\"light\" closeOnClick icon={__icon_Sun03Icon}>\n {t(\"themeMenu.light\", \"Light\")}\n </Menu.RadioItem>\n <Menu.RadioItem value=\"dark\" closeOnClick icon={__icon_Moon02Icon}>\n {t(\"themeMenu.dark\", \"Dark\")}\n </Menu.RadioItem>\n </Menu.RadioGroup>\n </Menu.Content>\n </Menu>\n );\n});\nif (process.env.NODE_ENV !== \"production\") ThemeMenu.displayName = \"ThemeMenu\";\n"],"mappings":";;;;;;;;;AAOA,IAAaO,IAA4B,EACvC,SAAS;CACP,OAAO,EAAE,SAAS,GAAG;CACrB,WAAW,EAAE,SAAS,GAAG;AAC3B,EACF,GACaC,IAAoC,EAAE,SAAS,QAAQ,GAUvDC,IAA4B,kBAA8C,SACrF,EAAE,aAAU,SAAS,UAAO,MAAM,UAAO,UAAU,WAAQ,OAAO,cAAcC,KAChF,GACA;CACA,IAAM,EAAE,UAAO,kBAAe,gBAAaN,EAAS,GAC9CO,IAAIR,EAAU;CACpB,OACE,kBAACG,GAAD,EAAA,UAAA,CACE,kBAACA,EAAK,SAAN,EAAA,UACE,kBAACD,GAAD;EACO;EACL,MAAMO,MAAkB,SAASZ,IAAoBC;EACrD,cAAYU,EAAE,mBAAmB,OAAO;EAC/B;EACH;EACN,cAAYD;CACb,CAAA,EACW,CAAA,GACd,kBAACJ,EAAK,SAAN;EAAoB;EAAa;EAAO,WAAU;EAChD,UAAA,kBAACA,EAAK,YAAN;GAAiB,OAAOS;GAAO,gBAAgB,MAAMC,EAASC,CAAoB;GAAlF,UAAA;IACE,kBAACX,EAAK,WAAN;KAAgB,OAAM;KAAS,cAAA;KAAa,MAAMJ;KAC/C,UAAAS,EAAE,oBAAoB,QAAQ;IACjB,CAAA;IAChB,kBAACL,EAAK,WAAN;KAAgB,OAAM;KAAQ,cAAA;KAAa,MAAML;KAC9C,UAAAU,EAAE,mBAAmB,OAAO;IACf,CAAA;IAChB,kBAACL,EAAK,WAAN;KAAgB,OAAM;KAAO,cAAA;KAAa,MAAMN;KAC7C,UAAAW,EAAE,kBAAkB,MAAM;IACb,CAAA;GACD;;CACL,CAAA,CACV,EAAA,CAAA;AAEV,CAAC;AACD,QAAA,IAAA,aAA6B,iBAAc,EAAU,cAAc"}
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import { i as e } from "../chunks/context-BELWW79w.js";
3
3
  import { a as t } from "../chunks/theme-provider-DJhORMlc.js";
4
- import { r as n } from "../chunks/select-x4XVsdCI.js";
4
+ import { r as n } from "../chunks/select-BqjmQOqx.js";
5
5
  import { forwardRef as r } from "react";
6
6
  import { jsx as i } from "react/jsx-runtime";
7
7
  //#region src/components/theme-select/theme-select.tsx
@@ -1,41 +1,52 @@
1
1
  "use client";
2
- import { t as e } from "../chunks/cn-Dj6sRgkF.js";
3
- import { forwardRef as t, useState as n } from "react";
4
- import { jsx as r } from "react/jsx-runtime";
2
+ import { t as e } from "../chunks/cn-BjnOAUrA.js";
3
+ import { t } from "../chunks/use-hydrating-COtYVRo4.js";
4
+ import { forwardRef as n, useState as r } from "react";
5
+ import { jsx as i, jsxs as a } from "react/jsx-runtime";
5
6
  //#region src/components/thumbnail/thumbnail.tsx
6
- var i = { size: {
7
+ var o = { size: {
7
8
  sm: { classes: "size-64" },
8
9
  md: { classes: "size-120" },
9
10
  lg: { classes: "size-160" }
10
- } }, a = { size: "md" }, o = {
11
- sm: "p-4 text-micro",
11
+ } }, s = { size: "md" }, c = {
12
+ sm: "p-4 text-caption",
12
13
  md: "p-8 text-caption",
13
14
  lg: "p-12 text-caption"
14
- }, s = /* @__PURE__ */ t(function({ src: t, alt: a, size: s = "md", className: c }, l) {
15
- let [u, d] = n(void 0);
16
- return /* @__PURE__ */ r("span", {
17
- ref: l,
18
- className: e("relative inline-flex shrink-0 overflow-hidden rounded-well bg-fill-1", i.size[s].classes, c),
19
- children: t === u ? /* @__PURE__ */ r("span", {
15
+ }, l = {
16
+ sm: "line-clamp-2",
17
+ md: "line-clamp-3",
18
+ lg: "line-clamp-3"
19
+ }, u = /* @__PURE__ */ n(function({ src: n, alt: s, size: u = "md", className: d }, f) {
20
+ let [p, m] = r(void 0), h = t();
21
+ return /* @__PURE__ */ a("span", {
22
+ ref: f,
23
+ className: e("relative inline-flex shrink-0 overflow-hidden rounded-well bg-fill-1", o.size[u].classes, d),
24
+ children: [n === p ? /* @__PURE__ */ i("span", {
20
25
  role: "img",
21
- "aria-label": a,
22
- className: e("flex size-full items-center justify-center overflow-hidden text-center text-fg-tertiary wrap-anywhere", o[s]),
23
- children: /* @__PURE__ */ r("span", {
24
- className: "line-clamp-3",
25
- children: a
26
+ "aria-label": s,
27
+ className: e("flex size-full items-center justify-center overflow-hidden text-center text-fg-tertiary wrap-anywhere", c[u]),
28
+ children: /* @__PURE__ */ i("span", {
29
+ className: l[u],
30
+ children: s
26
31
  })
27
- }) : /* @__PURE__ */ r("img", {
28
- src: t,
29
- alt: a,
32
+ }) : /* @__PURE__ */ i("img", {
33
+ ref: (e) => {
34
+ h && e?.complete && e.naturalWidth === 0 && m(n);
35
+ },
36
+ src: n,
37
+ alt: s,
30
38
  loading: "lazy",
31
39
  decoding: "async",
32
40
  className: "size-full object-cover",
33
- onError: () => d(t)
34
- })
41
+ onError: () => m(n)
42
+ }), /* @__PURE__ */ i("span", {
43
+ "aria-hidden": !0,
44
+ className: "pointer-events-none absolute inset-0 rounded-well shadow-ring"
45
+ })]
35
46
  });
36
47
  });
37
- process.env.NODE_ENV !== "production" && (s.displayName = "Thumbnail");
48
+ process.env.NODE_ENV !== "production" && (u.displayName = "Thumbnail");
38
49
  //#endregion
39
- export { a as KAESO_THUMBNAIL_DEFAULT_VARIANTS, i as KAESO_THUMBNAIL_VARIANTS, s as Thumbnail };
50
+ export { s as KAESO_THUMBNAIL_DEFAULT_VARIANTS, o as KAESO_THUMBNAIL_VARIANTS, u as Thumbnail };
40
51
 
41
52
  //# sourceMappingURL=thumbnail.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"thumbnail.js","names":["cn","KAESO_THUMBNAIL_VARIANTS","KAESO_THUMBNAIL_DEFAULT_VARIANTS","FALLBACK","Thumbnail","failedSrc","setFailedSrc","useState","size","className","src","alt"],"sources":["../../src/components/thumbnail/thumbnail.tsx"],"sourcesContent":["import { forwardRef, useState } from \"react\";\nimport { cn } from \"../../utils/cn.js\";\n\nexport const KAESO_THUMBNAIL_VARIANTS = {\n size: {\n sm: { classes: \"size-64\" },\n md: { classes: \"size-120\" },\n lg: { classes: \"size-160\" },\n },\n} as const;\nexport const KAESO_THUMBNAIL_DEFAULT_VARIANTS = { size: \"md\" } as const;\n\nconst FALLBACK = { sm: \"p-4 text-micro\", md: \"p-8 text-caption\", lg: \"p-12 text-caption\" } as const;\n\nexport interface ThumbnailProps {\n src: string;\n alt: string;\n size?: keyof typeof KAESO_THUMBNAIL_VARIANTS.size | undefined;\n className?: string | undefined;\n}\n\nexport const Thumbnail = /* @__PURE__ */ forwardRef<HTMLSpanElement, ThumbnailProps>(function Thumbnail({ src, alt, size = \"md\", className }, ref) {\n const [failedSrc, setFailedSrc] = useState<string | undefined>(undefined);\n return (\n <span\n ref={ref}\n className={cn(\"relative inline-flex shrink-0 overflow-hidden rounded-well bg-fill-1\", KAESO_THUMBNAIL_VARIANTS.size[size].classes, className)}\n >\n {src !== failedSrc ? (\n <img src={src} alt={alt} loading=\"lazy\" decoding=\"async\" className=\"size-full object-cover\" onError={() => setFailedSrc(src)} />\n ) : (\n <span\n role=\"img\"\n aria-label={alt}\n className={cn(\"flex size-full items-center justify-center overflow-hidden text-center text-fg-tertiary wrap-anywhere\", FALLBACK[size])}\n >\n <span className=\"line-clamp-3\">{alt}</span>\n </span>\n )}\n </span>\n );\n});\nif (process.env.NODE_ENV !== \"production\") Thumbnail.displayName = \"Thumbnail\";\n"],"mappings":";;;;;AAGA,IAAaC,IAA2B,EACtC,MAAM;CACJ,IAAI,EAAE,SAAS,UAAU;CACzB,IAAI,EAAE,SAAS,WAAW;CAC1B,IAAI,EAAE,SAAS,WAAW;AAC5B,EACF,GACaC,IAAmC,EAAE,MAAM,KAAK,GAEvDC,IAAW;CAAE,IAAI;CAAkB,IAAI;CAAoB,IAAI;AAAoB,GAS5EC,IAA4B,kBAA4C,SAAmB,EAAE,QAAK,QAAK,UAAO,MAAM,gBAAa,GAAK;CACjJ,IAAM,CAACC,GAAWC,KAAgBC,EAA6B,KAAA,CAAS;CACxE,OACE,kBAAC,QAAD;EACO;EACL,WAAWP,EAAG,wEAAwEC,EAAyB,KAAKO,EAAK,CAAC,SAASC,CAAS;EAE3I,UAAAC,MAAQL,IAGP,kBAAC,QAAD;GACE,MAAK;GACL,cAAYM;GACZ,WAAWX,EAAG,yGAAyGG,EAASK,EAAK;GAErI,UAAA,kBAAC,QAAD;IAAM,WAAU;IAAgB,UAAAG;GAAU,CAAA;EACtC,CAAA,IARN,kBAAC,OAAD;GAAU;GAAU;GAAK,SAAQ;GAAO,UAAS;GAAQ,WAAU;GAAyB,eAAeL,EAAaI,CAAG;EAAI,CAAA;CAU7H,CAAA;AAEV,CAAC;AACD,QAAA,IAAA,aAA6B,iBAAc,EAAU,cAAc"}
1
+ {"version":3,"file":"thumbnail.js","names":["cn","KAESO_THUMBNAIL_VARIANTS","KAESO_THUMBNAIL_DEFAULT_VARIANTS","FALLBACK","LINES","Thumbnail","failedSrc","setFailedSrc","useState","hydrating","useHydrating","size","className","src","alt","img"],"sources":["../../src/components/thumbnail/thumbnail.tsx"],"sourcesContent":["import { forwardRef, useState } from \"react\";\nimport { useHydrating } from \"../../hooks/use-hydrating.js\";\nimport { cn } from \"../../utils/cn.js\";\n\nexport const KAESO_THUMBNAIL_VARIANTS = {\n size: {\n sm: { classes: \"size-64\" },\n md: { classes: \"size-120\" },\n lg: { classes: \"size-160\" },\n },\n} as const;\nexport const KAESO_THUMBNAIL_DEFAULT_VARIANTS = { size: \"md\" } as const;\n\nconst FALLBACK = { sm: \"p-4 text-caption\", md: \"p-8 text-caption\", lg: \"p-12 text-caption\" } as const;\nconst LINES = { sm: \"line-clamp-2\", md: \"line-clamp-3\", lg: \"line-clamp-3\" } as const;\n\nexport interface ThumbnailProps {\n src: string;\n alt: string;\n size?: keyof typeof KAESO_THUMBNAIL_VARIANTS.size | undefined;\n className?: string | undefined;\n}\n\nexport const Thumbnail = /* @__PURE__ */ forwardRef<HTMLSpanElement, ThumbnailProps>(function Thumbnail({ src, alt, size = \"md\", className }, ref) {\n const [failedSrc, setFailedSrc] = useState<string | undefined>(undefined);\n const hydrating = useHydrating();\n return (\n <span\n ref={ref}\n className={cn(\"relative inline-flex shrink-0 overflow-hidden rounded-well bg-fill-1\", KAESO_THUMBNAIL_VARIANTS.size[size].classes, className)}\n >\n {src !== failedSrc ? (\n <img\n ref={(img) => {\n // A server-rendered image that failed before hydration fired its error event before React listened for it.\n if (hydrating && img?.complete && img.naturalWidth === 0) setFailedSrc(src);\n }}\n src={src}\n alt={alt}\n loading=\"lazy\"\n decoding=\"async\"\n className=\"size-full object-cover\"\n onError={() => setFailedSrc(src)}\n />\n ) : (\n <span\n role=\"img\"\n aria-label={alt}\n className={cn(\"flex size-full items-center justify-center overflow-hidden text-center text-fg-tertiary wrap-anywhere\", FALLBACK[size])}\n >\n <span className={LINES[size]}>{alt}</span>\n </span>\n )}\n <span aria-hidden className=\"pointer-events-none absolute inset-0 rounded-well shadow-ring\" />\n </span>\n );\n});\nif (process.env.NODE_ENV !== \"production\") Thumbnail.displayName = \"Thumbnail\";\n"],"mappings":";;;;;;AAIA,IAAaC,IAA2B,EACtC,MAAM;CACJ,IAAI,EAAE,SAAS,UAAU;CACzB,IAAI,EAAE,SAAS,WAAW;CAC1B,IAAI,EAAE,SAAS,WAAW;AAC5B,EACF,GACaC,IAAmC,EAAE,MAAM,KAAK,GAEvDC,IAAW;CAAE,IAAI;CAAoB,IAAI;CAAoB,IAAI;AAAoB,GACrFC,IAAQ;CAAE,IAAI;CAAgB,IAAI;CAAgB,IAAI;AAAe,GAS9DC,IAA4B,kBAA4C,SAAmB,EAAE,QAAK,QAAK,UAAO,MAAM,gBAAa,GAAK;CACjJ,IAAM,CAACC,GAAWC,KAAgBC,EAA6B,KAAA,CAAS,GAClEC,IAAYC,EAAa;CAC/B,OACE,kBAAC,QAAD;EACO;EACL,WAAWV,EAAG,wEAAwEC,EAAyB,KAAKU,EAAK,CAAC,SAASC,CAAS;EAF9I,UAAA,CAIGC,MAAQP,IAcP,kBAAC,QAAD;GACE,MAAK;GACL,cAAYQ;GACZ,WAAWd,EAAG,yGAAyGG,EAASQ,EAAK;GAErI,UAAA,kBAAC,QAAD;IAAM,WAAWP,EAAMO;IAAQ,UAAAG;GAAU,CAAA;EACrC,CAAA,IAnBN,kBAAC,OAAD;GACE,MAAM,MAAQ;IAEZ,AAAIL,KAAaM,GAAK,YAAYA,EAAI,iBAAiB,KAAGR,EAAaM,CAAG;GAC5E;GACK;GACA;GACL,SAAQ;GACR,UAAS;GACT,WAAU;GACV,eAAeN,EAAaM,CAAG;EAChC,CAAA,GAUH,kBAAC,QAAD;GAAM,eAAA;GAAY,WAAU;EAAiE,CAAA,CACzF;;AAEV,CAAC;AACD,QAAA,IAAA,aAA6B,iBAAc,EAAU,cAAc"}
@@ -1,58 +1,74 @@
1
1
  "use client";
2
- import { t as e } from "../chunks/cn-Dj6sRgkF.js";
3
- import { forwardRef as t } from "react";
4
- import { jsx as n, jsxs as r } from "react/jsx-runtime";
2
+ import { t as e } from "../chunks/cn-BjnOAUrA.js";
3
+ import { i as t } from "../chunks/context-BELWW79w.js";
4
+ import { formatDate as n } from "../format.js";
5
+ import { r } from "../chunks/tooltip-Tkm-urbi.js";
6
+ import { forwardRef as i } from "react";
7
+ import { jsx as a, jsxs as o } from "react/jsx-runtime";
5
8
  //#region src/components/timeline/timeline.tsx
6
- var i = { tone: {
7
- neutral: { classes: "bg-line-strong" },
8
- success: { classes: "bg-success" },
9
- warning: { classes: "bg-warning" },
10
- danger: { classes: "bg-danger" },
11
- info: { classes: "bg-info" }
12
- } }, a = { tone: "neutral" }, o = /* @__PURE__ */ t(function({ events: t, className: a }, o) {
13
- return /* @__PURE__ */ n("ol", {
14
- ref: o,
15
- className: e("flex flex-col", a),
16
- children: t.map((a, o) => /* @__PURE__ */ r("li", {
9
+ var s = { tone: {
10
+ neutral: { classes: "bg-line-strong forced-line" },
11
+ success: { classes: "bg-success data-mark" },
12
+ warning: { classes: "bg-warning data-mark" },
13
+ danger: { classes: "bg-danger data-mark" },
14
+ info: { classes: "bg-info data-mark" }
15
+ } }, c = { tone: "neutral" }, l = /* @__PURE__ */ i(function({ events: i, className: c }, l) {
16
+ let u = t(), d = {
17
+ neutral: "",
18
+ success: u("timeline.success", "Success"),
19
+ warning: u("timeline.warning", "Warning"),
20
+ danger: u("timeline.danger", "Critical"),
21
+ info: u("timeline.info", "Info")
22
+ };
23
+ return /* @__PURE__ */ a("ol", {
24
+ ref: l,
25
+ className: e("flex flex-col", c),
26
+ children: i.map((t, c) => /* @__PURE__ */ o("li", {
17
27
  className: "relative flex gap-16 pb-20 last:pb-0",
18
28
  children: [
19
- o < t.length - 1 && /* @__PURE__ */ n("span", {
29
+ c < i.length - 1 && /* @__PURE__ */ a("span", {
20
30
  "aria-hidden": !0,
21
- className: "absolute top-20 bottom-0 left-12 w-1 bg-line-subtle"
31
+ className: "absolute top-20 bottom-0 left-12 w-1 bg-line forced-line"
22
32
  }),
23
- /* @__PURE__ */ n("span", {
33
+ /* @__PURE__ */ a("span", {
24
34
  className: "relative flex h-20 w-24 shrink-0 items-center justify-center",
25
- children: a.marker ?? /* @__PURE__ */ n("span", {
35
+ children: t.marker ?? /* @__PURE__ */ a("span", {
26
36
  "aria-hidden": !0,
27
- className: e("h-14 w-3 rounded-pill", i.tone[a.tone ?? "neutral"].classes)
37
+ className: e("h-14 w-3 rounded-pill", s.tone[t.tone ?? "neutral"].classes)
28
38
  })
29
39
  }),
30
- /* @__PURE__ */ r("div", {
40
+ /* @__PURE__ */ o("div", {
31
41
  className: "flex min-w-0 flex-1 flex-col gap-2",
32
- children: [/* @__PURE__ */ r("div", {
42
+ children: [/* @__PURE__ */ o("div", {
33
43
  className: "flex items-baseline justify-between gap-16",
34
- children: [/* @__PURE__ */ n("span", {
44
+ children: [/* @__PURE__ */ o("span", {
35
45
  className: "min-w-0 text-body text-fg",
36
- children: a.title
37
- }), /* @__PURE__ */ n("time", {
38
- ...a.datetime ? {
39
- dateTime: a.datetime,
40
- title: a.datetime
41
- } : {},
42
- className: "shrink-0 text-small text-fg-tertiary tabular",
43
- children: a.time
46
+ children: [t.tone && t.tone !== "neutral" && /* @__PURE__ */ o("span", {
47
+ className: "sr-only",
48
+ children: [d[t.tone], ": "]
49
+ }), t.title]
50
+ }), t.datetime ? /* @__PURE__ */ a(r, {
51
+ content: n(t.datetime, { time: !0 }),
52
+ children: /* @__PURE__ */ a("time", {
53
+ dateTime: t.datetime,
54
+ className: "shrink-0 text-small text-fg-secondary tabular",
55
+ children: t.time
56
+ })
57
+ }) : /* @__PURE__ */ a("time", {
58
+ className: "shrink-0 text-small text-fg-secondary tabular",
59
+ children: t.time
44
60
  })]
45
- }), a.description && /* @__PURE__ */ n("div", {
61
+ }), t.description && /* @__PURE__ */ a("div", {
46
62
  className: "text-small text-fg-secondary",
47
- children: a.description
63
+ children: t.description
48
64
  })]
49
65
  })
50
66
  ]
51
- }, a.id))
67
+ }, t.id))
52
68
  });
53
69
  });
54
- process.env.NODE_ENV !== "production" && (o.displayName = "Timeline");
70
+ process.env.NODE_ENV !== "production" && (l.displayName = "Timeline");
55
71
  //#endregion
56
- export { a as KAESO_TIMELINE_DEFAULT_VARIANTS, i as KAESO_TIMELINE_VARIANTS, o as Timeline };
72
+ export { c as KAESO_TIMELINE_DEFAULT_VARIANTS, s as KAESO_TIMELINE_VARIANTS, l as Timeline };
57
73
 
58
74
  //# sourceMappingURL=timeline.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"timeline.js","names":["cn","KAESO_TIMELINE_VARIANTS","KAESO_TIMELINE_DEFAULT_VARIANTS","Timeline","className","events","i","e"],"sources":["../../src/components/timeline/timeline.tsx"],"sourcesContent":["import { forwardRef, type ReactNode } from \"react\";\nimport { cn } from \"../../utils/cn.js\";\n\nexport const KAESO_TIMELINE_VARIANTS = {\n tone: {\n neutral: { classes: \"bg-line-strong\" },\n success: { classes: \"bg-success\" },\n warning: { classes: \"bg-warning\" },\n danger: { classes: \"bg-danger\" },\n info: { classes: \"bg-info\" },\n },\n} as const;\nexport const KAESO_TIMELINE_DEFAULT_VARIANTS = { tone: \"neutral\" } as const;\n\nexport interface TimelineEvent {\n id: string;\n title: ReactNode;\n description?: ReactNode | undefined;\n time: ReactNode;\n datetime?: string | undefined;\n tone?: keyof typeof KAESO_TIMELINE_VARIANTS.tone | undefined;\n marker?: ReactNode | undefined;\n}\n\nexport const Timeline = /* @__PURE__ */ forwardRef<HTMLOListElement, { events: TimelineEvent[]; className?: string | undefined }>(function Timeline(\n { events, className },\n ref,\n) {\n return (\n <ol ref={ref} className={cn(\"flex flex-col\", className)}>\n {events.map((e, i) => (\n <li key={e.id} className=\"relative flex gap-16 pb-20 last:pb-0\">\n {i < events.length - 1 && <span aria-hidden className=\"absolute top-20 bottom-0 left-12 w-1 bg-line-subtle\" />}\n <span className=\"relative flex h-20 w-24 shrink-0 items-center justify-center\">\n {e.marker ?? <span aria-hidden className={cn(\"h-14 w-3 rounded-pill\", KAESO_TIMELINE_VARIANTS.tone[e.tone ?? \"neutral\"].classes)} />}\n </span>\n <div className=\"flex min-w-0 flex-1 flex-col gap-2\">\n <div className=\"flex items-baseline justify-between gap-16\">\n <span className=\"min-w-0 text-body text-fg\">{e.title}</span>\n <time {...(e.datetime ? { dateTime: e.datetime, title: e.datetime } : {})} className=\"shrink-0 text-small text-fg-tertiary tabular\">\n {e.time}\n </time>\n </div>\n {e.description && <div className=\"text-small text-fg-secondary\">{e.description}</div>}\n </div>\n </li>\n ))}\n </ol>\n );\n});\nif (process.env.NODE_ENV !== \"production\") Timeline.displayName = \"Timeline\";\n"],"mappings":";;;;;AAGA,IAAaC,IAA0B,EACrC,MAAM;CACJ,SAAS,EAAE,SAAS,iBAAiB;CACrC,SAAS,EAAE,SAAS,aAAa;CACjC,SAAS,EAAE,SAAS,aAAa;CACjC,QAAQ,EAAE,SAAS,YAAY;CAC/B,MAAM,EAAE,SAAS,UAAU;AAC7B,EACF,GACaC,IAAkC,EAAE,MAAM,UAAU,GAYpDC,IAA2B,kBAA0F,SAChI,EAAE,WAAQ,gBACV,GACA;CACA,OACE,kBAAC,MAAD;EAAS;EAAK,WAAWH,EAAG,iBAAiBI,CAAS;EACnD,UAAAC,EAAO,KAAK,GAAG,MACd,kBAAC,MAAD;GAAe,WAAU;GAAzB,UAAA;IACGC,IAAID,EAAO,SAAS,KAAK,kBAAC,QAAD;KAAM,eAAA;KAAY,WAAU;IAAuD,CAAA;IAC7G,kBAAC,QAAD;KAAM,WAAU;KACb,UAAAE,EAAE,UAAU,kBAAC,QAAD;MAAM,eAAA;MAAY,WAAWP,EAAG,yBAAyBC,EAAwB,KAAKM,EAAE,QAAQ,UAAU,CAAC,OAAO;KAAI,CAAA;IAC/H,CAAA;IACN,kBAAC,OAAD;KAAK,WAAU;KAAf,UAAA,CACE,kBAAC,OAAD;MAAK,WAAU;MAAf,UAAA,CACE,kBAAC,QAAD;OAAM,WAAU;OAA6B,UAAAA,EAAE;MAAY,CAAA,GAC3D,kBAAC,QAAD;OAAM,GAAKA,EAAE,WAAW;QAAE,UAAUA,EAAE;QAAU,OAAOA,EAAE;OAAS,IAAI,CAAC;OAAI,WAAU;OAClF,UAAAA,EAAE;MACC,CAAA,CACH;KACJ,CAAA,GAAAA,EAAE,eAAe,kBAAC,OAAD;MAAK,WAAU;MAAgC,UAAAA,EAAE;KAAiB,CAAA,CACjF;;GACH;EAdK,GAAAA,EAAE,EAcP,CACL;CACC,CAAA;AAER,CAAC;AACD,QAAA,IAAA,aAA6B,iBAAc,EAAS,cAAc"}
1
+ {"version":3,"file":"timeline.js","names":["cn","useUiText","KAESO_TIMELINE_VARIANTS","KAESO_TIMELINE_DEFAULT_VARIANTS","Timeline","t","toneWord","className","events","i","e","Tooltip","formatDate"],"sources":["../../src/components/timeline/timeline.tsx"],"sourcesContent":["import { forwardRef, type ReactNode } from \"react\";\nimport { cn } from \"../../utils/cn.js\";\nimport { formatDate } from \"../../format/index.js\";\nimport { useUiText } from \"../../i18n/context.js\";\nimport { Tooltip } from \"../tooltip/tooltip.js\";\n\nexport const KAESO_TIMELINE_VARIANTS = {\n tone: {\n neutral: { classes: \"bg-line-strong forced-line\" },\n success: { classes: \"bg-success data-mark\" },\n warning: { classes: \"bg-warning data-mark\" },\n danger: { classes: \"bg-danger data-mark\" },\n info: { classes: \"bg-info data-mark\" },\n },\n} as const;\nexport const KAESO_TIMELINE_DEFAULT_VARIANTS = { tone: \"neutral\" } as const;\n\nexport interface TimelineEvent {\n id: string;\n title: ReactNode;\n description?: ReactNode | undefined;\n time: ReactNode;\n datetime?: string | undefined;\n tone?: keyof typeof KAESO_TIMELINE_VARIANTS.tone | undefined;\n marker?: ReactNode | undefined;\n}\n\nexport const Timeline = /* @__PURE__ */ forwardRef<HTMLOListElement, { events: TimelineEvent[]; className?: string | undefined }>(function Timeline(\n { events, className },\n ref,\n) {\n const t = useUiText();\n const toneWord = {\n neutral: \"\",\n success: t(\"timeline.success\", \"Success\"),\n warning: t(\"timeline.warning\", \"Warning\"),\n danger: t(\"timeline.danger\", \"Critical\"),\n info: t(\"timeline.info\", \"Info\"),\n };\n return (\n <ol ref={ref} className={cn(\"flex flex-col\", className)}>\n {events.map((e, i) => (\n <li key={e.id} className=\"relative flex gap-16 pb-20 last:pb-0\">\n {i < events.length - 1 && <span aria-hidden className=\"absolute top-20 bottom-0 left-12 w-1 bg-line forced-line\" />}\n <span className=\"relative flex h-20 w-24 shrink-0 items-center justify-center\">\n {e.marker ?? <span aria-hidden className={cn(\"h-14 w-3 rounded-pill\", KAESO_TIMELINE_VARIANTS.tone[e.tone ?? \"neutral\"].classes)} />}\n </span>\n <div className=\"flex min-w-0 flex-1 flex-col gap-2\">\n <div className=\"flex items-baseline justify-between gap-16\">\n <span className=\"min-w-0 text-body text-fg\">\n {e.tone && e.tone !== \"neutral\" && <span className=\"sr-only\">{toneWord[e.tone]}: </span>}\n {e.title}\n </span>\n {e.datetime ? (\n <Tooltip content={formatDate(e.datetime, { time: true })}>\n <time dateTime={e.datetime} className=\"shrink-0 text-small text-fg-secondary tabular\">\n {e.time}\n </time>\n </Tooltip>\n ) : (\n <time className=\"shrink-0 text-small text-fg-secondary tabular\">{e.time}</time>\n )}\n </div>\n {e.description && <div className=\"text-small text-fg-secondary\">{e.description}</div>}\n </div>\n </li>\n ))}\n </ol>\n );\n});\nif (process.env.NODE_ENV !== \"production\") Timeline.displayName = \"Timeline\";\n"],"mappings":";;;;;;;;AAMA,IAAaE,IAA0B,EACrC,MAAM;CACJ,SAAS,EAAE,SAAS,6BAA6B;CACjD,SAAS,EAAE,SAAS,uBAAuB;CAC3C,SAAS,EAAE,SAAS,uBAAuB;CAC3C,QAAQ,EAAE,SAAS,sBAAsB;CACzC,MAAM,EAAE,SAAS,oBAAoB;AACvC,EACF,GACaC,IAAkC,EAAE,MAAM,UAAU,GAYpDC,IAA2B,kBAA0F,SAChI,EAAE,WAAQ,gBACV,GACA;CACA,IAAMC,IAAIJ,EAAU,GACdK,IAAW;EACf,SAAS;EACT,SAASD,EAAE,oBAAoB,SAAS;EACxC,SAASA,EAAE,oBAAoB,SAAS;EACxC,QAAQA,EAAE,mBAAmB,UAAU;EACvC,MAAMA,EAAE,iBAAiB,MAAM;CACjC;CACA,OACE,kBAAC,MAAD;EAAS;EAAK,WAAWL,EAAG,iBAAiBO,CAAS;EACnD,UAAAC,EAAO,KAAK,GAAG,MACd,kBAAC,MAAD;GAAe,WAAU;GAAzB,UAAA;IACGC,IAAID,EAAO,SAAS,KAAK,kBAAC,QAAD;KAAM,eAAA;KAAY,WAAU;IAA4D,CAAA;IAClH,kBAAC,QAAD;KAAM,WAAU;KACb,UAAAE,EAAE,UAAU,kBAAC,QAAD;MAAM,eAAA;MAAY,WAAWV,EAAG,yBAAyBE,EAAwB,KAAKQ,EAAE,QAAQ,UAAU,CAAC,OAAO;KAAI,CAAA;IAC/H,CAAA;IACN,kBAAC,OAAD;KAAK,WAAU;KAAf,UAAA,CACE,kBAAC,OAAD;MAAK,WAAU;MAAf,UAAA,CACE,kBAAC,QAAD;OAAM,WAAU;OAAhB,UAAA,CACGA,EAAE,QAAQA,EAAE,SAAS,aAAa,kBAAC,QAAD;QAAM,WAAU;QAAhB,UAAA,CAA2BJ,EAASI,EAAE,OAAM,IAAQ;OACtF,CAAA,GAAAA,EAAE,KACC;MACL,CAAA,GAAAA,EAAE,WACD,kBAACC,GAAD;OAAS,SAASC,EAAWF,EAAE,UAAU,EAAE,MAAM,GAAK,CAAC;OACrD,UAAA,kBAAC,QAAD;QAAM,UAAUA,EAAE;QAAU,WAAU;QACnC,UAAAA,EAAE;OACC,CAAA;MACC,CAAA,IAET,kBAAC,QAAD;OAAM,WAAU;OAAiD,UAAAA,EAAE;MAAW,CAAA,CAE7E;KACJ,CAAA,GAAAA,EAAE,eAAe,kBAAC,OAAD;MAAK,WAAU;MAAgC,UAAAA,EAAE;KAAiB,CAAA,CACjF;;GACH;EAvBK,GAAAA,EAAE,EAuBP,CACL;CACC,CAAA;AAER,CAAC;AACD,QAAA,IAAA,aAA6B,iBAAc,EAAS,cAAc"}