@logicplanes/kaeso-ui 0.4.4 → 0.4.6

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 (482) hide show
  1. package/ai/component-guides.md +250 -98
  2. package/ai/component-registry.json +264 -236
  3. package/ai/component-registry.md +222 -218
  4. package/ai/icons.md +1 -1
  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-DdNPHEzI.js → code-block-KIvuE8jg.js} +122 -114
  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-D_0mmG-k.js → de-CqC4aSIV.js} +74 -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-button-CrdF_eMG.js → icon-button-Dfwpvmav.js} +7 -6
  65. package/dist/chunks/icon-button-Dfwpvmav.js.map +1 -0
  66. package/dist/chunks/{identity-BmhQ6BQ-.js → identity-3Foi5F8w.js} +7 -7
  67. package/dist/chunks/{identity-BmhQ6BQ-.js.map → identity-3Foi5F8w.js.map} +1 -1
  68. package/dist/chunks/{input-2VJuj_M4.js → input-Bo5-UZg2.js} +15 -9
  69. package/dist/chunks/input-Bo5-UZg2.js.map +1 -0
  70. package/dist/chunks/{input-group-DQ_4DoXg.js → input-group-jPcK9T_a.js} +42 -29
  71. package/dist/chunks/input-group-jPcK9T_a.js.map +1 -0
  72. package/dist/chunks/iso-field-DoqHBg8n.js +52 -0
  73. package/dist/chunks/iso-field-DoqHBg8n.js.map +1 -0
  74. package/dist/chunks/json-view-DZ2nL2Ir.js +253 -0
  75. package/dist/chunks/json-view-DZ2nL2Ir.js.map +1 -0
  76. package/dist/chunks/{kbd-BF1vKXJf.js → kbd-8A0ML_up.js} +30 -28
  77. package/dist/chunks/kbd-8A0ML_up.js.map +1 -0
  78. package/dist/chunks/label-DW24Aj0Z.js +26 -0
  79. package/dist/chunks/label-DW24Aj0Z.js.map +1 -0
  80. package/dist/chunks/{link-KWI7PevW.js → link-CMjkcLQK.js} +14 -14
  81. package/dist/chunks/link-CMjkcLQK.js.map +1 -0
  82. package/dist/chunks/list-B4G-sWwV.js +540 -0
  83. package/dist/chunks/list-B4G-sWwV.js.map +1 -0
  84. package/dist/chunks/{loader-DCfPndXa.js → loader-zo8CCIGJ.js} +2 -2
  85. package/dist/chunks/{loader-DCfPndXa.js.map → loader-zo8CCIGJ.js.map} +1 -1
  86. package/dist/chunks/markdown-C565aBR7.js +338 -0
  87. package/dist/chunks/markdown-C565aBR7.js.map +1 -0
  88. package/dist/chunks/menu-Clvv6ftq.js +485 -0
  89. package/dist/chunks/menu-Clvv6ftq.js.map +1 -0
  90. package/dist/chunks/merge-refs-BN1FyQt9.js +20 -0
  91. package/dist/chunks/merge-refs-BN1FyQt9.js.map +1 -0
  92. package/dist/chunks/meter-CASMHlxl.js +100 -0
  93. package/dist/chunks/meter-CASMHlxl.js.map +1 -0
  94. package/dist/chunks/nav-sheet-Dt6JSvzX.js +67 -0
  95. package/dist/chunks/nav-sheet-Dt6JSvzX.js.map +1 -0
  96. package/dist/chunks/{nav-wordmark-_pjheAsZ.js → nav-wordmark-J4pB_vjr.js} +4 -8
  97. package/dist/chunks/nav-wordmark-J4pB_vjr.js.map +1 -0
  98. package/dist/chunks/page-header-kS5tdmvb.js +45 -0
  99. package/dist/chunks/page-header-kS5tdmvb.js.map +1 -0
  100. package/dist/chunks/pagination-D7fAm8qg.js +147 -0
  101. package/dist/chunks/pagination-D7fAm8qg.js.map +1 -0
  102. package/dist/chunks/picker-popover-1FHb1LQG.js +119 -0
  103. package/dist/chunks/picker-popover-1FHb1LQG.js.map +1 -0
  104. package/dist/chunks/popover-Bl5QYqnh.js +51 -0
  105. package/dist/chunks/popover-Bl5QYqnh.js.map +1 -0
  106. package/dist/chunks/{portal-context-BBbzDKmY.js → portal-context-CTatR2Z8.js} +14 -4
  107. package/dist/chunks/portal-context-CTatR2Z8.js.map +1 -0
  108. package/dist/chunks/{radio-CDDFpdtL.js → radio-C6GtzF_t.js} +38 -23
  109. package/dist/chunks/radio-C6GtzF_t.js.map +1 -0
  110. package/dist/chunks/range-popup-lGiZsG3s.js +160 -0
  111. package/dist/chunks/range-popup-lGiZsG3s.js.map +1 -0
  112. package/dist/chunks/reasoning-frame-C3HdQRRS.js +51 -0
  113. package/dist/chunks/reasoning-frame-C3HdQRRS.js.map +1 -0
  114. package/dist/chunks/release-art-ChiT4T2S.js +582 -0
  115. package/dist/chunks/release-art-ChiT4T2S.js.map +1 -0
  116. package/dist/chunks/rights-B68ocZuq.js +312 -0
  117. package/dist/chunks/rights-B68ocZuq.js.map +1 -0
  118. package/dist/chunks/{scroll-area-D8MD7Vpo.js → scroll-area-_Ljh4-bG.js} +11 -6
  119. package/dist/chunks/scroll-area-_Ljh4-bG.js.map +1 -0
  120. package/dist/chunks/section-CFBYhsUi.js +77 -0
  121. package/dist/chunks/section-CFBYhsUi.js.map +1 -0
  122. package/dist/chunks/section-header-DU1Q4Tdf.js +28 -0
  123. package/dist/chunks/section-header-DU1Q4Tdf.js.map +1 -0
  124. package/dist/chunks/segmented-D9i1avik.js +119 -0
  125. package/dist/chunks/segmented-D9i1avik.js.map +1 -0
  126. package/dist/chunks/select-BqjmQOqx.js +222 -0
  127. package/dist/chunks/select-BqjmQOqx.js.map +1 -0
  128. package/dist/chunks/{separator-D7TzNHmX.js → separator-BNWf6BBj.js} +13 -8
  129. package/dist/chunks/separator-BNWf6BBj.js.map +1 -0
  130. package/dist/chunks/sidebar-Dq7oGOje.js +664 -0
  131. package/dist/chunks/sidebar-Dq7oGOje.js.map +1 -0
  132. package/dist/chunks/{sidebar-menu-BN3jkTlK.js → sidebar-menu-QSSNu1jJ.js} +2 -2
  133. package/dist/chunks/{sidebar-menu-BN3jkTlK.js.map → sidebar-menu-QSSNu1jJ.js.map} +1 -1
  134. package/dist/chunks/{skeleton-Dcz57Zyp.js → skeleton-D-qk3mes.js} +3 -3
  135. package/dist/chunks/skeleton-D-qk3mes.js.map +1 -0
  136. package/dist/chunks/slider-CcE8GtuV.js +58 -0
  137. package/dist/chunks/slider-CcE8GtuV.js.map +1 -0
  138. package/dist/chunks/{status-dot-QJTF0Yv4.js → status-dot-CP6runiC.js} +4 -4
  139. package/dist/chunks/{status-dot-QJTF0Yv4.js.map → status-dot-CP6runiC.js.map} +1 -1
  140. package/dist/chunks/{styles-CVJU9t9v.js → styles-hkFkoBbi.js} +2 -2
  141. package/dist/chunks/{styles-CVJU9t9v.js.map → styles-hkFkoBbi.js.map} +1 -1
  142. package/dist/chunks/{swap-text-Dr0Irxz6.js → swap-text-SlUjrTlG.js} +3 -3
  143. package/dist/chunks/swap-text-SlUjrTlG.js.map +1 -0
  144. package/dist/chunks/switch-ngywMQdl.js +76 -0
  145. package/dist/chunks/switch-ngywMQdl.js.map +1 -0
  146. package/dist/chunks/table-CTK5E0J7.js +102 -0
  147. package/dist/chunks/table-CTK5E0J7.js.map +1 -0
  148. package/dist/chunks/tag-BGr6lTSV.js +100 -0
  149. package/dist/chunks/tag-BGr6lTSV.js.map +1 -0
  150. package/dist/chunks/{text-CIXH8rmT.js → text-DkKdTVUf.js} +9 -9
  151. package/dist/chunks/text-DkKdTVUf.js.map +1 -0
  152. package/dist/chunks/{textarea--4FRL3Pb.js → textarea-CO0HP6fK.js} +47 -36
  153. package/dist/chunks/textarea-CO0HP6fK.js.map +1 -0
  154. package/dist/chunks/timeseries-Ck-q0wWn.js +381 -0
  155. package/dist/chunks/timeseries-Ck-q0wWn.js.map +1 -0
  156. package/dist/chunks/toolbar-u0Gm7Q7-.js +61 -0
  157. package/dist/chunks/toolbar-u0Gm7Q7-.js.map +1 -0
  158. package/dist/chunks/tooltip-Tkm-urbi.js +202 -0
  159. package/dist/chunks/tooltip-Tkm-urbi.js.map +1 -0
  160. package/dist/chunks/tooltip-root-BC_RNNiP.js +70 -0
  161. package/dist/chunks/tooltip-root-BC_RNNiP.js.map +1 -0
  162. package/dist/chunks/truncated-d1afmUJT.js +33 -0
  163. package/dist/chunks/truncated-d1afmUJT.js.map +1 -0
  164. package/dist/chunks/use-coarse-pointer-Ml5oE6oX.js +28 -0
  165. package/dist/chunks/use-coarse-pointer-Ml5oE6oX.js.map +1 -0
  166. package/dist/chunks/use-hydrating-COtYVRo4.js +8 -0
  167. package/dist/chunks/use-hydrating-COtYVRo4.js.map +1 -0
  168. package/dist/chunks/use-scroll-fade-uc8mWSDX.js +30 -0
  169. package/dist/chunks/use-scroll-fade-uc8mWSDX.js.map +1 -0
  170. package/dist/chunks/{zh-CN-Bm6UPIbW.js → zh-CN-BlpsT6d_.js} +73 -39
  171. package/dist/chunks/zh-CN-BlpsT6d_.js.map +1 -0
  172. package/dist/components/agent-avatar.js +1 -1
  173. package/dist/components/app-frame.js +2 -2
  174. package/dist/components/avatar.js +1 -1
  175. package/dist/components/badge.js +1 -1
  176. package/dist/components/banner.js +1 -1
  177. package/dist/components/button-group.js +22 -22
  178. package/dist/components/button-group.js.map +1 -1
  179. package/dist/components/button.js +1 -1
  180. package/dist/components/calendar.js +1 -1
  181. package/dist/components/charts/bar.js +235 -160
  182. package/dist/components/charts/bar.js.map +1 -1
  183. package/dist/components/charts/donut.js +144 -99
  184. package/dist/components/charts/donut.js.map +1 -1
  185. package/dist/components/charts/gauge.js +61 -49
  186. package/dist/components/charts/gauge.js.map +1 -1
  187. package/dist/components/charts/heatmap.js +179 -70
  188. package/dist/components/charts/heatmap.js.map +1 -1
  189. package/dist/components/charts/sankey.js +144 -77
  190. package/dist/components/charts/sankey.js.map +1 -1
  191. package/dist/components/charts/sparkline.js +54 -38
  192. package/dist/components/charts/sparkline.js.map +1 -1
  193. package/dist/components/charts/timeseries.js +1 -1
  194. package/dist/components/charts.js +2 -2
  195. package/dist/components/checkbox.js +1 -1
  196. package/dist/components/code-block.js +3 -3
  197. package/dist/components/code.js +1 -1
  198. package/dist/components/collapsible.js +77 -1
  199. package/dist/components/collapsible.js.map +1 -0
  200. package/dist/components/combobox.js +1 -1
  201. package/dist/components/command-list.js +2 -2
  202. package/dist/components/command-palette.js +89 -66
  203. package/dist/components/command-palette.js.map +1 -1
  204. package/dist/components/copy-button.js +1 -1
  205. package/dist/components/data-table.js +1 -459
  206. package/dist/components/date-picker.js +162 -151
  207. package/dist/components/date-picker.js.map +1 -1
  208. package/dist/components/dialog.js +74 -63
  209. package/dist/components/dialog.js.map +1 -1
  210. package/dist/components/display-options.js +76 -64
  211. package/dist/components/display-options.js.map +1 -1
  212. package/dist/components/empty.js +1 -1
  213. package/dist/components/field.js +1 -1
  214. package/dist/components/figure.js +2 -2
  215. package/dist/components/filter-chip.js +36 -27
  216. package/dist/components/filter-chip.js.map +1 -1
  217. package/dist/components/filter-row.js +4 -4
  218. package/dist/components/filter-row.js.map +1 -1
  219. package/dist/components/flow.js +94 -63
  220. package/dist/components/flow.js.map +1 -1
  221. package/dist/components/heading.js +1 -1
  222. package/dist/components/icon-button.js +1 -1
  223. package/dist/components/icon.js +1 -1
  224. package/dist/components/input.js +176 -98
  225. package/dist/components/input.js.map +1 -1
  226. package/dist/components/kaeso/conversation.js +51 -46
  227. package/dist/components/kaeso/conversation.js.map +1 -1
  228. package/dist/components/kaeso/identity.js +1 -1
  229. package/dist/components/kaeso/moments.js +23 -20
  230. package/dist/components/kaeso/moments.js.map +1 -1
  231. package/dist/components/kaeso/rights.js +1 -1
  232. package/dist/components/kaeso/usage.js +90 -74
  233. package/dist/components/kaeso/usage.js.map +1 -1
  234. package/dist/components/kaeso.js +200 -187
  235. package/dist/components/kaeso.js.map +1 -1
  236. package/dist/components/kbd.js +1 -1
  237. package/dist/components/key-value.js +32 -47
  238. package/dist/components/key-value.js.map +1 -1
  239. package/dist/components/label.js +1 -25
  240. package/dist/components/layout.js +2 -2
  241. package/dist/components/layout.js.map +1 -1
  242. package/dist/components/link.js +1 -1
  243. package/dist/components/list.js +1 -1
  244. package/dist/components/loader.js +11 -10
  245. package/dist/components/loader.js.map +1 -1
  246. package/dist/components/logo.js +2 -2
  247. package/dist/components/markdown.js +1 -1
  248. package/dist/components/menu.js +2 -2
  249. package/dist/components/meter.js +1 -1
  250. package/dist/components/page-header.js +1 -1
  251. package/dist/components/pagination.js +1 -1
  252. package/dist/components/playground.js +644 -529
  253. package/dist/components/playground.js.map +1 -1
  254. package/dist/components/popover.js +4 -4
  255. package/dist/components/popover.js.map +1 -1
  256. package/dist/components/portal.js +1 -1
  257. package/dist/components/qr-code.js +2 -2
  258. package/dist/components/qr-code.js.map +1 -1
  259. package/dist/components/radio.js +1 -1
  260. package/dist/components/release-art.js +1 -1
  261. package/dist/components/scroll-area.js +1 -1
  262. package/dist/components/section.js +1 -1
  263. package/dist/components/segmented.js +1 -1
  264. package/dist/components/select.js +1 -1
  265. package/dist/components/separator.js +1 -1
  266. package/dist/components/settings.js +39 -46
  267. package/dist/components/settings.js.map +1 -1
  268. package/dist/components/sheet.js +10 -9
  269. package/dist/components/sheet.js.map +1 -1
  270. package/dist/components/sidebar.js +1 -1
  271. package/dist/components/skeleton.js +1 -1
  272. package/dist/components/slider.js +1 -1
  273. package/dist/components/stat.js +98 -84
  274. package/dist/components/stat.js.map +1 -1
  275. package/dist/components/status-dot.js +1 -1
  276. package/dist/components/surface.js +1 -1
  277. package/dist/components/swap-text.js +1 -1
  278. package/dist/components/switch.js +1 -1
  279. package/dist/components/table.js +1 -1
  280. package/dist/components/tabs.js +73 -55
  281. package/dist/components/tabs.js.map +1 -1
  282. package/dist/components/tag.js +1 -1
  283. package/dist/components/text.js +1 -1
  284. package/dist/components/theme-image.js +1 -1
  285. package/dist/components/theme-menu.js +5 -2
  286. package/dist/components/theme-menu.js.map +1 -1
  287. package/dist/components/theme-select.js +1 -1
  288. package/dist/components/thumbnail.js +35 -24
  289. package/dist/components/thumbnail.js.map +1 -1
  290. package/dist/components/timeline.js +51 -35
  291. package/dist/components/timeline.js.map +1 -1
  292. package/dist/components/toast.js +76 -66
  293. package/dist/components/toast.js.map +1 -1
  294. package/dist/components/toc.js +14 -8
  295. package/dist/components/toc.js.map +1 -1
  296. package/dist/components/toolbar.js +1 -1
  297. package/dist/components/tooltip.js +1 -1
  298. package/dist/components/visually-hidden.js +1 -1
  299. package/dist/i18n-provider.js +1 -1
  300. package/dist/index.js +100 -100
  301. package/dist/kaeso.css +605 -67
  302. package/dist/styles.css +1 -1
  303. package/dist/tailwind.css +1 -1
  304. package/dist/types/blocks/delete-resource/delete-resource.d.ts +2 -2
  305. package/dist/types/components/agent-avatar/agent-avatar.d.ts +24 -19
  306. package/dist/types/components/badge/badge.d.ts +3 -3
  307. package/dist/types/components/banner/banner.d.ts +3 -3
  308. package/dist/types/components/button/button.d.ts +2 -2
  309. package/dist/types/components/button-group/button-group.d.ts +1 -1
  310. package/dist/types/components/charts/domain.d.ts +11 -0
  311. package/dist/types/components/charts/marks.d.ts +1 -0
  312. package/dist/types/components/code/code.d.ts +3 -3
  313. package/dist/types/components/code-block/json-view.d.ts +2 -1
  314. package/dist/types/components/code-block/numbers.d.ts +1 -0
  315. package/dist/types/components/collapsible/collapsible.d.ts +2 -2
  316. package/dist/types/components/collapsible/disclosure.d.ts +2 -0
  317. package/dist/types/components/data-table/data-table.d.ts +6 -5
  318. package/dist/types/components/data-table/docs.d.ts +1 -0
  319. package/dist/types/components/data-table/time-columns.d.ts +1 -0
  320. package/dist/types/components/date-picker/focus-day.d.ts +1 -0
  321. package/dist/types/components/date-picker/iso-field.d.ts +8 -1
  322. package/dist/types/components/dialog/dialog.d.ts +7 -7
  323. package/dist/types/components/field/field.d.ts +1 -1
  324. package/dist/types/components/flow/flow.d.ts +1 -1
  325. package/dist/types/components/icon-button/icon-button.d.ts +1 -1
  326. package/dist/types/components/input/input-group.d.ts +2 -0
  327. package/dist/types/components/input/number-input.d.ts +4 -4
  328. package/dist/types/components/input/otp-input.d.ts +3 -3
  329. package/dist/types/components/kaeso/client-button.d.ts +2 -1
  330. package/dist/types/components/kaeso/provider-picker.d.ts +1 -0
  331. package/dist/types/components/kaeso/rights.d.ts +1 -1
  332. package/dist/types/components/kaeso/role-picker.d.ts +1 -0
  333. package/dist/types/components/key-value/key-value.d.ts +2 -2
  334. package/dist/types/components/layout/layout.d.ts +2 -2
  335. package/dist/types/components/link/link.d.ts +4 -4
  336. package/dist/types/components/list/list.d.ts +2 -2
  337. package/dist/types/components/menu/menu.d.ts +2 -1
  338. package/dist/types/components/menu/styles.d.ts +3 -3
  339. package/dist/types/components/meter/meter.d.ts +3 -3
  340. package/dist/types/components/page-header/page-header.d.ts +1 -1
  341. package/dist/types/components/pagination/pagination.d.ts +2 -2
  342. package/dist/types/components/playground/prompt-suggestions.d.ts +1 -0
  343. package/dist/types/components/playground/reasoning-frame.d.ts +14 -0
  344. package/dist/types/components/playground/reasoning.d.ts +1 -0
  345. package/dist/types/components/popover/popover.d.ts +1 -1
  346. package/dist/types/components/scroll-area/scroll-area.d.ts +2 -2
  347. package/dist/types/components/section/section-header.d.ts +6 -0
  348. package/dist/types/components/segmented/segmented.d.ts +1 -0
  349. package/dist/types/components/select/select.d.ts +1 -1
  350. package/dist/types/components/sheet/sheet.d.ts +3 -3
  351. package/dist/types/components/sidebar/sidebar.d.ts +1 -0
  352. package/dist/types/components/slider/slider.d.ts +2 -2
  353. package/dist/types/components/stat/stat.d.ts +1 -1
  354. package/dist/types/components/tabs/tabs.d.ts +6 -4
  355. package/dist/types/components/text/truncated.d.ts +7 -0
  356. package/dist/types/components/timeline/timeline.d.ts +5 -5
  357. package/dist/types/components/toc/toc.d.ts +1 -1
  358. package/dist/types/components/toolbar/toolbar.d.ts +1 -1
  359. package/dist/types/components/tooltip/tooltip.d.ts +2 -2
  360. package/dist/types/components/tooltip/trigger-props.d.ts +1 -0
  361. package/dist/types/hooks/use-coarse-pointer.d.ts +1 -0
  362. package/dist/types/hooks/use-hydrating.d.ts +1 -0
  363. package/dist/types/utils/arrow-focus.d.ts +4 -1
  364. package/dist/types/utils/cn.d.ts +33 -0
  365. package/dist/types/utils/portal-context.d.ts +7 -1
  366. package/dist/utils.js +2 -2
  367. package/foundations/accessibility.md +3 -2
  368. package/foundations/color.md +5 -1
  369. package/foundations/elevation.md +1 -0
  370. package/foundations/motion.md +1 -1
  371. package/foundations/shape.md +2 -2
  372. package/foundations/typography.md +12 -12
  373. package/package.json +2 -2
  374. package/dist/chunks/agent-avatar-0pdBTWkR.js +0 -171
  375. package/dist/chunks/agent-avatar-0pdBTWkR.js.map +0 -1
  376. package/dist/chunks/app-frame-DogGRmsu.js +0 -221
  377. package/dist/chunks/app-frame-DogGRmsu.js.map +0 -1
  378. package/dist/chunks/arrow-focus-BcySmwwU.js +0 -11
  379. package/dist/chunks/arrow-focus-BcySmwwU.js.map +0 -1
  380. package/dist/chunks/avatar-CWbdwbJv.js +0 -83
  381. package/dist/chunks/avatar-CWbdwbJv.js.map +0 -1
  382. package/dist/chunks/badge-C2KtxCLB.js +0 -26
  383. package/dist/chunks/badge-C2KtxCLB.js.map +0 -1
  384. package/dist/chunks/banner-BA2ALw9M.js +0 -85
  385. package/dist/chunks/banner-BA2ALw9M.js.map +0 -1
  386. package/dist/chunks/button-CzuxqawA.js +0 -164
  387. package/dist/chunks/button-CzuxqawA.js.map +0 -1
  388. package/dist/chunks/calendar-BWaf2MXc.js.map +0 -1
  389. package/dist/chunks/checkbox-CQjwCPkc.js +0 -126
  390. package/dist/chunks/checkbox-CQjwCPkc.js.map +0 -1
  391. package/dist/chunks/cn-Dj6sRgkF.js.map +0 -1
  392. package/dist/chunks/code-block-BZIe_B9l.js +0 -334
  393. package/dist/chunks/code-block-BZIe_B9l.js.map +0 -1
  394. package/dist/chunks/code-block-DdNPHEzI.js.map +0 -1
  395. package/dist/chunks/code-tqj0uhBL.js.map +0 -1
  396. package/dist/chunks/collapsible-CKrCX_T9.js +0 -87
  397. package/dist/chunks/collapsible-CKrCX_T9.js.map +0 -1
  398. package/dist/chunks/combobox-DjDI7SUC.js +0 -319
  399. package/dist/chunks/combobox-DjDI7SUC.js.map +0 -1
  400. package/dist/chunks/command-list-C2Y7V_lt.js +0 -418
  401. package/dist/chunks/command-list-C2Y7V_lt.js.map +0 -1
  402. package/dist/chunks/copy-button-FJvPJn72.js.map +0 -1
  403. package/dist/chunks/core-BYns5ytV.js +0 -472
  404. package/dist/chunks/core-BYns5ytV.js.map +0 -1
  405. package/dist/chunks/date-popup-CPA_zt6o.js +0 -35
  406. package/dist/chunks/date-popup-CPA_zt6o.js.map +0 -1
  407. package/dist/chunks/de-D_0mmG-k.js.map +0 -1
  408. package/dist/chunks/dialog-Cg9A_6SF.js.map +0 -1
  409. package/dist/chunks/field-TviMvYa2.js.map +0 -1
  410. package/dist/chunks/hidden-description-B2zSmLcn.js +0 -23
  411. package/dist/chunks/hidden-description-B2zSmLcn.js.map +0 -1
  412. package/dist/chunks/icon-button-CrdF_eMG.js.map +0 -1
  413. package/dist/chunks/input-2VJuj_M4.js.map +0 -1
  414. package/dist/chunks/input-group-DQ_4DoXg.js.map +0 -1
  415. package/dist/chunks/iso-field-B2rTwiBo.js +0 -33
  416. package/dist/chunks/iso-field-B2rTwiBo.js.map +0 -1
  417. package/dist/chunks/json-view-Dqd2TDkc.js +0 -175
  418. package/dist/chunks/json-view-Dqd2TDkc.js.map +0 -1
  419. package/dist/chunks/kbd-BF1vKXJf.js.map +0 -1
  420. package/dist/chunks/link-KWI7PevW.js.map +0 -1
  421. package/dist/chunks/list-M1csq-d4.js +0 -494
  422. package/dist/chunks/list-M1csq-d4.js.map +0 -1
  423. package/dist/chunks/markdown-BupwFOae.js +0 -313
  424. package/dist/chunks/markdown-BupwFOae.js.map +0 -1
  425. package/dist/chunks/menu-DEmBfdPm.js +0 -450
  426. package/dist/chunks/menu-DEmBfdPm.js.map +0 -1
  427. package/dist/chunks/meter-Bj4N3Xuh.js +0 -84
  428. package/dist/chunks/meter-Bj4N3Xuh.js.map +0 -1
  429. package/dist/chunks/nav-sheet-CzgIwgAm.js +0 -60
  430. package/dist/chunks/nav-sheet-CzgIwgAm.js.map +0 -1
  431. package/dist/chunks/nav-wordmark-_pjheAsZ.js.map +0 -1
  432. package/dist/chunks/page-header-DL2y2iZp.js +0 -41
  433. package/dist/chunks/page-header-DL2y2iZp.js.map +0 -1
  434. package/dist/chunks/pagination-Cn_qF4cg.js +0 -86
  435. package/dist/chunks/pagination-Cn_qF4cg.js.map +0 -1
  436. package/dist/chunks/picker-popover-BxyU1U9F.js +0 -106
  437. package/dist/chunks/picker-popover-BxyU1U9F.js.map +0 -1
  438. package/dist/chunks/popover-DNN4S47w.js +0 -50
  439. package/dist/chunks/popover-DNN4S47w.js.map +0 -1
  440. package/dist/chunks/portal-context-BBbzDKmY.js.map +0 -1
  441. package/dist/chunks/radio-CDDFpdtL.js.map +0 -1
  442. package/dist/chunks/range-popup-CRyWYUB1.js +0 -128
  443. package/dist/chunks/range-popup-CRyWYUB1.js.map +0 -1
  444. package/dist/chunks/release-art-ZwfFQImt.js +0 -561
  445. package/dist/chunks/release-art-ZwfFQImt.js.map +0 -1
  446. package/dist/chunks/rights-Cyp0Pzp-.js +0 -279
  447. package/dist/chunks/rights-Cyp0Pzp-.js.map +0 -1
  448. package/dist/chunks/scroll-area-D8MD7Vpo.js.map +0 -1
  449. package/dist/chunks/scroll-parent-WXvzQcUo.js +0 -14
  450. package/dist/chunks/scroll-parent-WXvzQcUo.js.map +0 -1
  451. package/dist/chunks/section-Ce1efbsP.js +0 -87
  452. package/dist/chunks/section-Ce1efbsP.js.map +0 -1
  453. package/dist/chunks/segmented-CErcoxwi.js +0 -114
  454. package/dist/chunks/segmented-CErcoxwi.js.map +0 -1
  455. package/dist/chunks/select-x4XVsdCI.js +0 -210
  456. package/dist/chunks/select-x4XVsdCI.js.map +0 -1
  457. package/dist/chunks/separator-D7TzNHmX.js.map +0 -1
  458. package/dist/chunks/sidebar-3r1ZRXlN.js +0 -621
  459. package/dist/chunks/sidebar-3r1ZRXlN.js.map +0 -1
  460. package/dist/chunks/skeleton-Dcz57Zyp.js.map +0 -1
  461. package/dist/chunks/slider-Ci83PGtj.js +0 -57
  462. package/dist/chunks/slider-Ci83PGtj.js.map +0 -1
  463. package/dist/chunks/swap-text-Dr0Irxz6.js.map +0 -1
  464. package/dist/chunks/switch-BNMq_kGt.js +0 -59
  465. package/dist/chunks/switch-BNMq_kGt.js.map +0 -1
  466. package/dist/chunks/table-BeOSKl_3.js +0 -84
  467. package/dist/chunks/table-BeOSKl_3.js.map +0 -1
  468. package/dist/chunks/tag-D_M1s2qS.js +0 -87
  469. package/dist/chunks/tag-D_M1s2qS.js.map +0 -1
  470. package/dist/chunks/text-CIXH8rmT.js.map +0 -1
  471. package/dist/chunks/textarea--4FRL3Pb.js.map +0 -1
  472. package/dist/chunks/timeseries-D1xjRXfk.js +0 -339
  473. package/dist/chunks/timeseries-D1xjRXfk.js.map +0 -1
  474. package/dist/chunks/toolbar-WA_oZgu-.js +0 -37
  475. package/dist/chunks/toolbar-WA_oZgu-.js.map +0 -1
  476. package/dist/chunks/tooltip-OcwO0VUT.js +0 -154
  477. package/dist/chunks/tooltip-OcwO0VUT.js.map +0 -1
  478. package/dist/chunks/tooltip-root-DzahJDVj.js +0 -60
  479. package/dist/chunks/tooltip-root-DzahJDVj.js.map +0 -1
  480. package/dist/chunks/zh-CN-Bm6UPIbW.js.map +0 -1
  481. package/dist/components/data-table.js.map +0 -1
  482. package/dist/components/label.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dialog-2zb6ClNR.js","names":["BaseDialog","__icon_Cancel01Icon","Dialog","BaseAlertDialog","AlertDialog","__icon_ArrowLeft01Icon","cn","usePortalContainer","GutterContent","useUiText","mergeRefs","KAESO_BUTTON_VARIANTS","Button","IconButton","Input","useRestoreFocus","useScopedDialog","useResizeMotion","OverNonModalSheet","DIALOG_FIELD","FOCUSABLE","usable","el","firstUsable","scope","selector","initialDialogControl","content","frame","toolbar","footer","actions","dangerSecondary","safe","a","danger","primary","focusDialogSection","section","previous","KAESO_DIALOG_VARIANTS","KAESO_DIALOG_DEFAULT_VARIANTS","BACKDROP","DIALOG_VIEWPORT","DIALOG_POPUP","DialogBusy","LayerSlots","isComposing","keepFocusOnBackdrop","useScrolledUnder","ref","useRef","under","setUnder","useState","scrolled","setScrolled","check","useCallback","useEffect","useKeepFocus","rendered","first","active","inline","box","SINGLE_LINE","submitsOnEnter","target","useBox","setBox","DialogFrame","slots","use","boxRef","frameRef","useMemo","rootRef","t","Title","Dialog","closeButton","Cancel01Icon","busy","close","hideClose","Description","bar","headerStart","anchor","size","className","onSubmit","title","description","children","footerStart","RaisedContent","focusFirstControl","open","Root","props","focus","container","overSheet","settled","defaultOpen","o","details","persistent","trigger","InsetContent","Close","cloneElement","Dialog$1","KAESO_ALERT_DIALOG_VARIANTS","KAESO_ALERT_DIALOG_DEFAULT_VARIANTS","AlertFrame","cancelProp","typed","setTyped","pending","cancelLabel","typeBefore","typeAfter","AlertDialog","ok","confirmText","confirm","loading","r","onConfirm","setBusy","done","confirmRef","tone","confirmLabel","AlertDialog$1","inner","setInner","isOpen","setOpen","onOpenChange","KAESO_LAYER_DIALOG_VARIANTS","KAESO_LAYER_DIALOG_DEFAULT_VARIANTS","bodyOf","LayerDialog","wanted","layer","index","layers","sections","focused","tops","left","shown","useLayoutEffect","from","back","body","go","i","onLayerChange","stack","current","remember","e","l","ArrowLeft01Icon"],"sources":["../../src/components/dialog/focus.ts","../../src/components/dialog/dialog.tsx"],"sourcesContent":["import { KAESO_BUTTON_VARIANTS } from \"../button/button.js\";\n\nconst DIALOG_FIELD =\n 'input:not([type=hidden]):not([tabindex=\"-1\"]):not([aria-hidden=\"true\"]), textarea, select, [role=combobox]:not([tabindex=\"-1\"]), [role=radio][tabindex=\"0\"], [role=checkbox]:not([tabindex=\"-1\"]), [role=switch]:not([tabindex=\"-1\"]), [role=listbox]:not([tabindex=\"-1\"]), [role=grid] [data-index][tabindex=\"0\"], button[data-picker]';\nconst FOCUSABLE = 'a[href], button, input:not([type=hidden]), select, textarea, [tabindex]:not([tabindex=\"-1\"])';\n\nconst usable = (el: HTMLElement) => !el.closest(\"[hidden], [inert]\") && !el.matches(\":disabled, [aria-disabled=true]\");\nconst firstUsable = (scope: ParentNode, selector: string) => [...scope.querySelectorAll<HTMLElement>(selector)].find(usable) ?? null;\n\nexport function initialDialogControl(frame: HTMLElement, scope?: HTMLElement | undefined): HTMLElement | null {\n const content = scope ?? frame.querySelector<HTMLElement>(\"[data-dialog-body]\");\n const toolbar = frame.querySelector<HTMLElement>(\"[data-dialog-toolbar]\");\n const footer = frame.querySelector<HTMLElement>(\"[data-dialog-footer]\");\n const actions = footer ? [...footer.querySelectorAll<HTMLElement>(\"button, a[href]\")].filter(usable) : [];\n const { primary, danger, \"danger-secondary\": dangerSecondary } = KAESO_BUTTON_VARIANTS.variant;\n const safe = actions.filter((a) => !a.classList.contains(danger.classes) && !a.classList.contains(dangerSecondary.classes));\n return (\n (toolbar && firstUsable(toolbar, \"[data-autofocus]\")) ??\n (content && (firstUsable(content, \"[data-autofocus]\") ?? firstUsable(content, DIALOG_FIELD))) ??\n (toolbar && firstUsable(toolbar, DIALOG_FIELD)) ??\n safe.find((a) => a.classList.contains(primary.classes)) ??\n safe[0] ??\n (content && firstUsable(content, FOCUSABLE)) ??\n firstUsable(frame, FOCUSABLE)\n );\n}\n\nexport function focusDialogSection(section: HTMLElement | null | undefined, previous?: HTMLElement | null | undefined) {\n const frame = section?.closest<HTMLElement>(\"[data-dialog-frame]\");\n if (!section || !frame || frame.closest(\"[data-closed]\")) return;\n const back = previous?.isConnected && frame.contains(previous) && usable(previous) ? previous : null;\n (back ?? initialDialogControl(frame, section))?.focus({ preventScroll: true });\n}\n","import { GutterContent, InsetContent, RaisedContent } from \"../../utils/inset.js\";\nimport { usePortalContainer } from \"../../utils/portal-context.js\";\nimport {\n cloneElement,\n createContext,\n forwardRef,\n use,\n useCallback,\n useEffect,\n useLayoutEffect,\n useMemo,\n useRef,\n useState,\n type FocusEvent,\n type KeyboardEvent,\n type MouseEvent,\n type ReactElement,\n type ReactNode,\n type Ref,\n} from \"react\";\nimport { Dialog as BaseDialog } from \"@base-ui/react/dialog\";\nimport { AlertDialog as BaseAlertDialog } from \"@base-ui/react/alert-dialog\";\nimport { cn } from \"../../utils/cn.js\";\nimport { useRestoreFocus } from \"../../utils/restore-focus.js\";\nimport { useScopedDialog } from \"../../utils/dialog-scope.js\";\nimport { OverNonModalSheet } from \"../../utils/over-sheet.js\";\nimport { Cancel01Icon as __icon_Cancel01Icon, ArrowLeft01Icon as __icon_ArrowLeft01Icon } from \"@hugeicons/core-free-icons\";\nimport { useUiText } from \"../../i18n/context.js\";\nimport { IconButton } from \"../icon-button/icon-button.js\";\nimport { Button } from \"../button/button.js\";\nimport { Input } from \"../input/input.js\";\nimport { focusDialogSection, initialDialogControl } from \"./focus.js\";\nimport { useResizeMotion } from \"../../utils/resize-motion.js\";\nimport { mergeRefs } from \"../../utils/merge-refs.js\";\n\nexport const KAESO_DIALOG_VARIANTS = {\n size: {\n sm: { classes: \"w-440\" },\n md: { classes: \"w-560\" },\n lg: { classes: \"w-720\" },\n },\n anchor: {\n center: { classes: \"items-center\" },\n top: { classes: \"items-start pt-dialog-top\" },\n },\n} as const;\nexport const KAESO_DIALOG_DEFAULT_VARIANTS = { size: \"md\", anchor: \"center\" } as const;\n\nconst BACKDROP = \"fixed inset-0 z-50 bg-overlay backdrop-motion\";\nconst DIALOG_VIEWPORT = \"fixed inset-0 z-50 flex justify-center p-16\";\nconst DIALOG_POPUP = \"relative flex dialog-limits flex-col overflow-hidden rounded-dialog bg-raised text-fg shadow-dialog outline-none dialog-motion\";\n\nconst DialogBusy = /* @__PURE__ */ createContext(false);\nconst LayerSlots = /* @__PURE__ */ createContext({ toolbar: true, footerStart: true });\n\nfunction isComposing(e: KeyboardEvent): boolean {\n // Safari ends composition before the Enter that confirms it, leaving only keyCode 229: https://bugs.webkit.org/show_bug.cgi?id=165004\n return e.nativeEvent.isComposing || e.keyCode === 229;\n}\n\nfunction keepFocusOnBackdrop(e: MouseEvent<HTMLElement>) {\n if (e.target === e.currentTarget) e.preventDefault();\n}\n\nfunction useScrolledUnder<T extends HTMLElement>() {\n const ref = useRef<T | null>(null);\n const [under, setUnder] = useState(false);\n const [scrolled, setScrolled] = useState(false);\n const check = useCallback(() => {\n const el = ref.current;\n if (!el || el.closest(\"[data-resizing]\")) return;\n setUnder(el.scrollHeight - el.scrollTop - el.clientHeight > 1);\n setScrolled(el.scrollTop > 0);\n }, []);\n useEffect(() => {\n const el = ref.current;\n if (!el) return;\n check();\n el.addEventListener(\"scroll\", check, { passive: true });\n window.addEventListener(\"resize\", check);\n return () => {\n el.removeEventListener(\"scroll\", check);\n window.removeEventListener(\"resize\", check);\n };\n }, [check]);\n return { ref, under, scrolled, check };\n}\n\nfunction useKeepFocus(box: HTMLElement | null, inline: boolean | undefined) {\n const rendered = useRef(false);\n useEffect(() => {\n const first = !rendered.current;\n rendered.current = true;\n const active = document.activeElement;\n if (first || inline || !box || (active && active !== document.body) || box.matches(\"[data-ending-style], [data-closed]\")) return;\n const frame = box.querySelector<HTMLElement>(\"[data-dialog-frame]\");\n if (frame) initialDialogControl(frame)?.focus({ preventScroll: true });\n });\n}\n\nconst SINGLE_LINE = new Set([\"text\", \"email\", \"password\", \"tel\", \"url\", \"number\"]);\n\nfunction submitsOnEnter(e: KeyboardEvent): boolean {\n if (e.key !== \"Enter\" || e.altKey || isComposing(e)) return false;\n if (e.metaKey || e.ctrlKey) return true;\n const target = e.target as HTMLElement;\n return !e.defaultPrevented && !e.shiftKey && target instanceof HTMLInputElement && SINGLE_LINE.has(target.type) && target.getAttribute(\"role\") !== \"combobox\";\n}\n\nfunction useBox(inline: boolean | undefined) {\n const [box, setBox] = useState<HTMLElement | null>(null);\n const ref = useCallback((el: HTMLElement | null) => setBox(inline ? el : (el?.parentElement ?? null)), [inline]);\n return [box, ref] as const;\n}\n\nexport interface DialogProps {\n open?: boolean | undefined;\n defaultOpen?: boolean | undefined;\n onOpenChange?: ((open: boolean) => void) | undefined;\n trigger?: ReactElement | undefined;\n title: ReactNode;\n description?: ReactNode | undefined;\n busy?: boolean | undefined;\n size?: keyof typeof KAESO_DIALOG_VARIANTS.size | undefined;\n anchor?: keyof typeof KAESO_DIALOG_VARIANTS.anchor | undefined;\n children?: ReactNode | undefined;\n toolbar?: ReactNode | undefined;\n footer?: ReactNode | undefined;\n footerStart?: ReactNode | undefined;\n onSubmit?: (() => void) | undefined;\n hideClose?: boolean | undefined;\n headerStart?: ReactNode | undefined;\n className?: string | undefined;\n inline?: boolean | undefined;\n persistent?: boolean | undefined;\n}\n\nfunction DialogFrame({\n title,\n description,\n children,\n toolbar,\n footer,\n footerStart,\n onSubmit,\n hideClose,\n headerStart,\n size = \"md\",\n anchor = \"center\",\n className,\n inline,\n busy,\n rootRef,\n}: DialogProps & { rootRef?: Ref<HTMLDivElement> | undefined }) {\n const { ref, under, scrolled, check } = useScrolledUnder<HTMLDivElement>();\n const slots = use(LayerSlots);\n const [box, boxRef] = useBox(inline);\n const frameRef = useMemo(() => mergeRefs(boxRef, rootRef), [boxRef, rootRef]);\n useResizeMotion(box, check);\n useKeepFocus(box, inline);\n const t = useUiText();\n const Title = inline ? \"h2\" : BaseDialog.Title;\n const closeButton = <IconButton icon={__icon_Cancel01Icon} aria-label={t(\"dialog.close\", \"Close\")} tooltip={false} disabled={!!busy} />;\n const close = hideClose ? null : inline ? closeButton : <BaseDialog.Close render={closeButton} />;\n const Description = inline ? \"p\" : BaseDialog.Description;\n const bar = headerStart !== undefined;\n return (\n <DialogBusy value={!!busy}>\n <div\n ref={frameRef}\n data-dialog-frame=\"\"\n className={cn(\n \"@container flex min-h-0 flex-col\",\n inline ? \"rounded-dialog bg-raised shadow-dialog\" : cn(\"flex-1 self-center\", anchor === \"top\" ? \"dialog-limits-top\" : \"dialog-limits\"),\n KAESO_DIALOG_VARIANTS.size[size].classes,\n className,\n )}\n onKeyDown={(e: KeyboardEvent) => {\n if (onSubmit && !busy && submitsOnEnter(e)) {\n e.preventDefault();\n onSubmit();\n }\n }}\n >\n <div\n data-dialog-header=\"\"\n {...(bar ? { \"data-bar\": \"\" } : {})}\n className={cn(\"flex flex-wrap items-start gap-x-12 px-24 pb-4\", bar ? \"pt-16\" : \"pt-20\")}\n >\n {bar && (\n <span data-dialog-start=\"\" className=\"flex h-32 min-w-0 items-center\">\n {headerStart}\n </span>\n )}\n <div data-dialog-titles=\"\" className={cn(\"flex min-w-0 flex-col gap-4\", bar ? \"order-last basis-full pt-8\" : \"flex-1 pt-4\")}>\n <Title className=\"text-title-sm font-semibold text-fg text-balance wrap-anywhere\">{title}</Title>\n {description && <Description className=\"text-body text-fg-secondary text-pretty wrap-anywhere\">{description}</Description>}\n </div>\n {close && (\n <span data-dialog-close=\"\" className={cn(\"flex\", bar && \"ml-auto\")}>\n {close}\n </span>\n )}\n </div>\n {toolbar && (\n <div\n data-dialog-toolbar=\"\"\n hidden={!slots.toolbar}\n className={cn(\"flex shrink-0 flex-wrap items-center gap-8 px-24 pt-16 pb-12 transition-control\", scrolled && \"hairline-b\")}\n >\n {toolbar}\n </div>\n )}\n {children && (\n <div\n ref={ref}\n data-dialog-body=\"\"\n className={cn(\n \"min-h-0 flex-1 overflow-y-auto overscroll-contain px-24 scrollbar-quiet\",\n toolbar ? \"pt-0\" : \"pt-16\",\n footer || footerStart ? \"pb-8\" : \"pb-24\",\n )}\n >\n <GutterContent>\n <RaisedContent>{children}</RaisedContent>\n </GutterContent>\n </div>\n )}\n {(footer || footerStart) && (\n <div\n data-dialog-footer=\"\"\n className={cn(\n \"flex shrink-0 flex-wrap items-center justify-end gap-8 px-24 pt-16 pb-24 dialog-narrow:*:flex-auto dialog-narrow:**:data-shortcut:hidden transition-control\",\n under && \"hairline-t\",\n )}\n >\n {footerStart && (\n <div hidden={!slots.footerStart} className=\"mr-auto flex min-w-0 items-center gap-8\">\n {footerStart}\n </div>\n )}\n {footer}\n </div>\n )}\n </div>\n </DialogBusy>\n );\n}\n\nfunction focusFirstControl(): HTMLElement | true {\n const open = [...document.querySelectorAll<HTMLElement>(\"[role=dialog], [role=alertdialog]\")].pop();\n const frame = open?.querySelector<HTMLElement>(\"[data-dialog-frame]\");\n return (frame && initialDialogControl(frame)) ?? open ?? true;\n}\n\nconst Root = /* @__PURE__ */ forwardRef<HTMLDivElement, DialogProps>(function Dialog(props, ref) {\n const { open, defaultOpen, onOpenChange, trigger, size = \"md\", anchor = \"center\", inline, busy, persistent } = props;\n const focus = useRestoreFocus(open, focusFirstControl);\n const container = usePortalContainer();\n const overSheet = use(OverNonModalSheet);\n const settled = useScopedDialog(inline ? false : open);\n if (inline) return <DialogFrame {...props} rootRef={ref} />;\n return (\n <BaseDialog.Root\n {...(open !== undefined ? { open } : {})}\n {...(defaultOpen !== undefined ? { defaultOpen } : {})}\n onOpenChange={(o: boolean, details: BaseDialog.Root.ChangeEventDetails) => {\n if (!o && busy) return details.cancel();\n onOpenChange?.(o);\n }}\n onOpenChangeComplete={settled}\n {...(persistent ? { disablePointerDismissal: true } : {})}\n >\n {trigger && <BaseDialog.Trigger render={trigger} />}\n <BaseDialog.Portal container={container}>\n <BaseDialog.Backdrop className={BACKDROP} forceRender={overSheet} />\n <BaseDialog.Viewport className={cn(DIALOG_VIEWPORT, KAESO_DIALOG_VARIANTS.anchor[anchor].classes)} onMouseDown={keepFocusOnBackdrop}>\n <BaseDialog.Popup\n ref={ref}\n initialFocus={focus.initialFocus}\n finalFocus={focus.finalFocus}\n className={cn(DIALOG_POPUP, KAESO_DIALOG_VARIANTS.size[size].classes, anchor === \"top\" && \"dialog-limits-top\")}\n >\n <InsetContent inset={false}>\n <OverNonModalSheet value={false}>\n <DialogFrame {...props} />\n </OverNonModalSheet>\n </InsetContent>\n </BaseDialog.Popup>\n </BaseDialog.Viewport>\n </BaseDialog.Portal>\n </BaseDialog.Root>\n );\n});\nif (process.env.NODE_ENV !== \"production\") Root.displayName = \"Dialog\";\n\nfunction Close({ children }: { children: ReactElement<{ disabled?: boolean | undefined }> }) {\n const busy = use(DialogBusy);\n return <BaseDialog.Close render={busy ? cloneElement(children, { disabled: true }) : children} />;\n}\nif (process.env.NODE_ENV !== \"production\") Close.displayName = \"Dialog.Close\";\n\nexport const Dialog = /* @__PURE__ */ Object.assign(Root, { Close });\n\nexport const KAESO_ALERT_DIALOG_VARIANTS = {\n tone: {\n danger: { classes: \"\" },\n warning: { classes: \"\" },\n info: { classes: \"\" },\n },\n} as const;\nexport const KAESO_ALERT_DIALOG_DEFAULT_VARIANTS = { tone: \"danger\" } as const;\n\nexport interface AlertDialogProps {\n open?: boolean | undefined;\n defaultOpen?: boolean | undefined;\n onOpenChange?: ((open: boolean) => void) | undefined;\n trigger?: ReactElement | undefined;\n title: ReactNode;\n description: ReactNode;\n confirmLabel: string;\n cancelLabel?: string | undefined;\n onConfirm: () => void | Promise<unknown>;\n tone?: keyof typeof KAESO_ALERT_DIALOG_VARIANTS.tone | undefined;\n confirmText?: string | undefined;\n loading?: boolean | undefined;\n inline?: boolean | undefined;\n}\n\nfunction AlertFrame({\n title,\n description,\n confirmLabel,\n cancelLabel: cancelProp,\n onConfirm,\n tone = \"danger\",\n confirmText,\n loading,\n inline,\n close,\n busy,\n setBusy,\n rootRef,\n confirmRef,\n}: AlertDialogProps & {\n close: () => void;\n busy: boolean;\n setBusy: (busy: boolean) => void;\n rootRef?: Ref<HTMLDivElement> | undefined;\n confirmRef?: Ref<HTMLButtonElement> | undefined;\n}) {\n const [typed, setTyped] = useState(\"\");\n const pending = useRef(false);\n const t = useUiText();\n const [box, boxRef] = useBox(inline);\n const frameRef = useMemo(() => mergeRefs(boxRef, rootRef), [boxRef, rootRef]);\n useResizeMotion(box);\n const cancelLabel = cancelProp ?? t(\"alertDialog.cancel\", \"Cancel\");\n const [typeBefore, typeAfter = \"\"] = t(\"alertDialog.typeToConfirm\", \"Type {text} to confirm\").split(\"{text}\");\n const Title = inline ? \"h2\" : BaseAlertDialog.Title;\n const Description = inline ? \"p\" : BaseAlertDialog.Description;\n const ok = !confirmText || typed === confirmText;\n const confirm = async () => {\n if (!ok || loading || pending.current) return;\n const r = onConfirm();\n if (!(r instanceof Promise)) return close();\n pending.current = true;\n setBusy(true);\n const done = await r.then(\n () => true,\n () => false,\n );\n pending.current = false;\n setBusy(false);\n if (done) close();\n };\n return (\n <div\n ref={frameRef}\n className={cn(\"@container flex min-h-0 w-440 flex-col\", inline ? \"rounded-dialog bg-raised shadow-dialog\" : \"self-center dialog-limits\")}\n >\n <div data-dialog-body=\"\" className=\"flex min-h-0 flex-col gap-20 overflow-y-auto overscroll-contain px-24 pt-24 pb-4 scrollbar-quiet\">\n <div className=\"flex flex-col gap-6\">\n <Title className=\"text-title-sm font-semibold text-fg text-balance wrap-anywhere\">{title}</Title>\n <Description className=\"text-body text-fg-secondary text-pretty wrap-anywhere\">{description}</Description>\n </div>\n {confirmText && (\n <Input\n label={\n <span className=\"font-regular text-fg-secondary\">\n {typeBefore}\n <span className=\"mono font-medium text-fg\">{confirmText}</span>\n {typeAfter}\n </span>\n }\n value={typed}\n onChange={(e) => setTyped(e.target.value)}\n autoComplete=\"off\"\n spellCheck={false}\n onKeyDown={(e) => {\n if (e.key === \"Enter\" && !isComposing(e)) void confirm();\n }}\n />\n )}\n </div>\n <div\n data-dialog-footer=\"\"\n className=\"flex shrink-0 flex-wrap items-center justify-end gap-8 px-24 pt-16 pb-24 dialog-narrow:*:flex-auto dialog-narrow:**:data-shortcut:hidden\"\n >\n {inline ? <Button>{cancelLabel}</Button> : <BaseAlertDialog.Close render={<Button disabled={busy || !!loading}>{cancelLabel}</Button>} />}\n <Button ref={confirmRef} variant={tone === \"danger\" ? \"danger\" : \"primary\"} onClick={confirm} disabled={!ok} loading={busy || loading}>\n {confirmLabel}\n </Button>\n </div>\n </div>\n );\n}\n\nexport const AlertDialog = /* @__PURE__ */ forwardRef<HTMLDivElement, AlertDialogProps>(function AlertDialog(props, ref) {\n const { open, defaultOpen, onOpenChange, trigger, inline } = props;\n const [inner, setInner] = useState(defaultOpen ?? false);\n const isOpen = open ?? inner;\n const setOpen = (o: boolean) => {\n if (open === undefined) setInner(o);\n onOpenChange?.(o);\n };\n const [busy, setBusy] = useState(false);\n const confirmRef = useRef<HTMLButtonElement>(null);\n const focus = useRestoreFocus(isOpen, () => (props.tone === \"info\" && !props.confirmText && confirmRef.current) || true);\n const container = usePortalContainer();\n const overSheet = use(OverNonModalSheet);\n const settled = useScopedDialog(inline ? false : isOpen);\n if (inline) return <AlertFrame {...props} close={() => undefined} busy={busy} setBusy={setBusy} rootRef={ref} />;\n return (\n <BaseAlertDialog.Root\n open={isOpen}\n onOpenChange={(o: boolean, details: BaseAlertDialog.Root.ChangeEventDetails) => {\n if (!o && (busy || props.loading)) return details.cancel();\n setOpen(o);\n }}\n onOpenChangeComplete={settled}\n >\n {trigger && <BaseAlertDialog.Trigger render={trigger} />}\n <BaseAlertDialog.Portal container={container}>\n <BaseAlertDialog.Backdrop className={BACKDROP} forceRender={overSheet} />\n <BaseAlertDialog.Viewport className={cn(DIALOG_VIEWPORT, KAESO_DIALOG_VARIANTS.anchor.center.classes)} onMouseDown={keepFocusOnBackdrop}>\n <BaseAlertDialog.Popup ref={ref} initialFocus={focus.initialFocus} finalFocus={focus.finalFocus} className={cn(DIALOG_POPUP, \"w-440\")}>\n <InsetContent inset={false}>\n <AlertFrame {...props} close={() => setOpen(false)} busy={busy} setBusy={setBusy} confirmRef={confirmRef} />\n </InsetContent>\n </BaseAlertDialog.Popup>\n </BaseAlertDialog.Viewport>\n </BaseAlertDialog.Portal>\n </BaseAlertDialog.Root>\n );\n});\nif (process.env.NODE_ENV !== \"production\") AlertDialog.displayName = \"AlertDialog\";\n\nexport const KAESO_LAYER_DIALOG_VARIANTS = KAESO_DIALOG_VARIANTS;\nexport const KAESO_LAYER_DIALOG_DEFAULT_VARIANTS = { size: \"md\", anchor: \"top\" } as const;\n\nexport interface DialogLayer {\n title: ReactNode;\n description?: ReactNode | undefined;\n toolbar?: ReactNode | undefined;\n content: ReactNode;\n footer?: ReactNode | undefined;\n footerStart?: ReactNode | undefined;\n}\n\nexport interface LayerDialogProps extends Omit<DialogProps, \"title\" | \"description\" | \"children\" | \"toolbar\" | \"footer\" | \"footerStart\" | \"headerStart\"> {\n layers: DialogLayer[];\n layer?: number | undefined;\n onLayerChange?: ((layer: number) => void) | undefined;\n}\n\nconst bodyOf = (el: HTMLElement | null | undefined) => el?.closest<HTMLElement>(\"[data-dialog-body]\") ?? null;\n\nexport const LayerDialog = /* @__PURE__ */ forwardRef<HTMLDivElement, LayerDialogProps>(function LayerDialog(\n { layers, layer, onLayerChange, anchor = KAESO_LAYER_DIALOG_DEFAULT_VARIANTS.anchor, ...props },\n ref,\n) {\n const [inner, setInner] = useState(0);\n const t = useUiText();\n const wanted = layer ?? inner;\n const index = wanted > 0 && wanted < layers.length ? wanted : 0;\n const sections = useRef<(HTMLDivElement | null)[]>([]);\n const focused = useRef<(HTMLElement | null)[]>([]);\n const tops = useRef<number[]>([]);\n const left = useRef(index);\n const shown = useRef(index);\n if (left.current !== index) {\n tops.current[left.current] = bodyOf(sections.current[left.current])?.scrollTop ?? 0;\n left.current = index;\n }\n useLayoutEffect(() => {\n const from = shown.current;\n shown.current = index;\n if (from === index) return;\n const back = index < from;\n if (!back) focused.current[index] = null;\n focused.current.length = index + 1;\n const section = sections.current[index];\n const body = bodyOf(section);\n if (body) body.scrollTop = back ? (tops.current[index] ?? 0) : 0;\n focusDialogSection(section, back ? focused.current[index] : null);\n }, [index]);\n const go = (i: number) => {\n if (props.busy) return;\n if (layer === undefined) setInner(i);\n onLayerChange?.(i);\n };\n const stack = layers.slice(0, index + 1);\n const current = stack[index];\n if (!current) return null;\n const remember = (i: number) => (e: FocusEvent<HTMLElement>) => {\n if (e.target instanceof HTMLElement) focused.current[i] = e.target;\n };\n return (\n <LayerSlots value={{ toolbar: !!current.toolbar, footerStart: !!current.footerStart }}>\n <Dialog\n ref={ref}\n {...props}\n anchor={anchor}\n title={current.title}\n description={current.description}\n toolbar={\n stack.some((l) => l.toolbar)\n ? stack.map((l, i) =>\n l.toolbar ? (\n <div key={i} hidden={i !== index} className=\"contents\" onFocus={remember(i)}>\n {l.toolbar}\n </div>\n ) : null,\n )\n : undefined\n }\n footerStart={\n stack.some((l) => l.footerStart)\n ? stack.map((l, i) =>\n l.footerStart ? (\n <div key={i} hidden={i !== index} className=\"contents\" onFocus={remember(i)}>\n {l.footerStart}\n </div>\n ) : null,\n )\n : undefined\n }\n footer={\n current.footer\n ? stack.map((l, i) =>\n l.footer ? (\n <div key={i} hidden={i !== index} className=\"contents dialog-narrow:*:flex-auto dialog-narrow:**:data-shortcut:hidden\" onFocus={remember(i)}>\n {l.footer}\n </div>\n ) : null,\n )\n : undefined\n }\n headerStart={\n index > 0 ? (\n <IconButton\n key=\"back\"\n icon={__icon_ArrowLeft01Icon}\n aria-label={t(\"dialog.back\", \"Back\")}\n onClick={() => go(index - 1)}\n disabled={!!props.busy}\n className=\"animate-layer-in\"\n />\n ) : null\n }\n >\n {stack.map((l, i) => (\n <div\n key={i}\n ref={(el) => {\n sections.current[i] = el;\n }}\n hidden={i !== index}\n className=\"animate-layer-in\"\n onFocus={remember(i)}\n >\n {l.content}\n </div>\n ))}\n </Dialog>\n </LayerSlots>\n );\n});\nif (process.env.NODE_ENV !== \"production\") LayerDialog.displayName = \"LayerDialog\";\n"],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ "use client";
2
+ import { t as e } from "./icon-CBzOwqrX.js";
3
+ import { forwardRef as t } from "react";
4
+ import { jsx as n } from "react/jsx-runtime";
5
+ import { ArrowRight01Icon as r } from "@hugeicons/core-free-icons";
6
+ //#region src/components/collapsible/disclosure.tsx
7
+ var i = "group/dt relative flex w-full cursor-pointer items-center gap-8 rounded-pill px-12 text-left transition-control focus-ring-inset", a = /* @__PURE__ */ t(function(t, i) {
8
+ return /* @__PURE__ */ n("span", {
9
+ ref: i,
10
+ className: "flex shrink-0 text-fg-tertiary transition-control group-hover/dt:text-fg-secondary",
11
+ children: /* @__PURE__ */ n(e, {
12
+ icon: r,
13
+ size: "sm",
14
+ className: "transition-transform duration-200 ease-overlay group-data-panel-open/dt:rotate-90"
15
+ })
16
+ });
17
+ });
18
+ process.env.NODE_ENV !== "production" && (a.displayName = "DisclosureChevron");
19
+ //#endregion
20
+ export { a as n, i as t };
21
+
22
+ //# sourceMappingURL=disclosure-BtYRTDO3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"disclosure-BtYRTDO3.js","names":["__icon_ArrowRight01Icon","Icon","DISCLOSURE_TRIGGER","DisclosureChevron","ArrowRight01Icon"],"sources":["../../src/components/collapsible/disclosure.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\nimport { ArrowRight01Icon as __icon_ArrowRight01Icon } from \"@hugeicons/core-free-icons\";\nimport { Icon } from \"../icon/icon.js\";\n\nexport const DISCLOSURE_TRIGGER =\n \"group/dt relative flex w-full cursor-pointer items-center gap-8 rounded-pill px-12 text-left transition-control focus-ring-inset\";\n\nexport const DisclosureChevron = /* @__PURE__ */ forwardRef<HTMLSpanElement>(function DisclosureChevron(_props, ref) {\n return (\n <span ref={ref} className=\"flex shrink-0 text-fg-tertiary transition-control group-hover/dt:text-fg-secondary\">\n <Icon icon={__icon_ArrowRight01Icon} size=\"sm\" className=\"transition-transform duration-200 ease-overlay group-data-panel-open/dt:rotate-90\" />\n </span>\n );\n});\nif (process.env.NODE_ENV !== \"production\") DisclosureChevron.displayName = \"DisclosureChevron\";\n"],"mappings":";;;;;;AAIA,IAAaE,IACX,oIAEWC,IAAoC,kBAA4B,SAA2B,GAAQ,GAAK;CACnH,OACE,kBAAC,QAAD;EAAW;EAAK,WAAU;EACxB,UAAA,kBAACF,GAAD;GAAM,MAAMD;GAAyB,MAAK;GAAK,WAAU;EAAqF,CAAA;CAC1I,CAAA;AAEV,CAAC;AACD,QAAA,IAAA,aAA6B,iBAAc,EAAkB,cAAc"}
@@ -0,0 +1,28 @@
1
+ "use client";
2
+ import { formatTokens as e } from "../format.js";
3
+ import { h as t, t as n } from "./core-CmK-8ObW.js";
4
+ //#region src/components/charts/domain.ts
5
+ var r = (e) => e.filter(Number.isFinite), i = (e) => e.some(Number.isFinite), a = (e) => i(e) && r(e).every((e) => e === 0);
6
+ function o(e, t = []) {
7
+ let n = r([...e, ...t]), i = Math.min(0, ...n), a = Math.max(0, ...n);
8
+ return i === 0 && a === 0 ? [0, 1] : [i * 1.08, a * 1.08];
9
+ }
10
+ var s = (t) => e(t);
11
+ function c(e, { gap: n = 12, min: r = 52, max: i = Infinity } = {}) {
12
+ let a = Math.max(0, ...e.map(t));
13
+ return Math.round(Math.min(i, Math.max(r, n + a + 4)));
14
+ }
15
+ function l(e, r, i = n.label.fontSize) {
16
+ let a = i / n.label.fontSize;
17
+ if (t(e) * a <= r) return e;
18
+ let o = [...e], s = "";
19
+ for (let e of o) {
20
+ if (t(`${s}${e}…`) * a > r) break;
21
+ s += e;
22
+ }
23
+ return `${s.trimEnd()}…`;
24
+ }
25
+ //#endregion
26
+ export { i as a, l as i, s as n, a as o, r, o as s, c as t };
27
+
28
+ //# sourceMappingURL=domain-obd_w9xk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"domain-obd_w9xk.js","names":["labelWidth","AXIS","finite","values","hasPoints","onlyZero","v","valueExtent","all","also","lo","hi","compactAxis","formatTokens","axisRoom","widest","labels","max","min","gap","fitLabel","scale","fontSize","label","room","chars","out","ch"],"sources":["../../src/components/charts/domain.ts"],"sourcesContent":["import { formatTokens } from \"../../format/index.js\";\nimport { AXIS, labelWidth } from \"./core.js\";\n\nexport const finite = (values: readonly number[]): number[] => values.filter(Number.isFinite);\n\nexport const hasPoints = (values: readonly number[]): boolean => values.some(Number.isFinite);\n\nexport const onlyZero = (values: readonly number[]): boolean => hasPoints(values) && finite(values).every((v) => v === 0);\n\nexport function valueExtent(values: readonly number[], also: readonly number[] = []): [number, number] {\n const all = finite([...values, ...also]);\n const lo = Math.min(0, ...all);\n const hi = Math.max(0, ...all);\n if (lo === 0 && hi === 0) return [0, 1];\n return [lo * 1.08, hi * 1.08];\n}\n\nexport const compactAxis = (v: number): string => formatTokens(v);\n\nexport function axisRoom(\n labels: readonly string[],\n { gap = 12, min = 52, max = Infinity }: { gap?: number | undefined; min?: number | undefined; max?: number | undefined } = {},\n): number {\n const widest = Math.max(0, ...labels.map(labelWidth));\n return Math.round(Math.min(max, Math.max(min, gap + widest + 4)));\n}\n\nexport function fitLabel(label: string, room: number, fontSize: number = AXIS.label.fontSize): string {\n const scale = fontSize / AXIS.label.fontSize;\n if (labelWidth(label) * scale <= room) return label;\n const chars = [...label];\n let out = \"\";\n for (const ch of chars) {\n if (labelWidth(`${out}${ch}…`) * scale > room) break;\n out += ch;\n }\n return `${out.trimEnd()}…`;\n}\n"],"mappings":";;;;AAGA,IAAaE,KAAU,MAAwCC,EAAO,OAAO,OAAO,QAAQ,GAE/EC,KAAa,MAAuCD,EAAO,KAAK,OAAO,QAAQ,GAE/EE,KAAY,MAAuCD,EAAUD,CAAM,KAAKD,EAAOC,CAAM,CAAC,CAAC,OAAO,MAAMG,MAAM,CAAC;AAExH,SAAgBC,EAAY,GAA2B,IAA0B,CAAC,GAAqB;CACrG,IAAMC,IAAMN,EAAO,CAAC,GAAGC,GAAQ,GAAGM,CAAI,CAAC,GACjCC,IAAK,KAAK,IAAI,GAAG,GAAGF,CAAG,GACvBG,IAAK,KAAK,IAAI,GAAG,GAAGH,CAAG;CAE7B,OADIE,MAAO,KAAKC,MAAO,IAAU,CAAC,GAAG,CAAC,IAC/B,CAACD,IAAK,MAAMC,IAAK,IAAI;AAC9B;AAEA,IAAaC,KAAe,MAAsBC,EAAaP,CAAC;AAEhE,SAAgBQ,EACd,GACA,EAAE,SAAM,IAAI,SAAM,IAAI,SAAM,aAA+F,CAAC,GACpH;CACR,IAAMC,IAAS,KAAK,IAAI,GAAG,GAAGC,EAAO,IAAIhB,CAAU,CAAC;CACpD,OAAO,KAAK,MAAM,KAAK,IAAIiB,GAAK,KAAK,IAAIC,GAAKC,IAAMJ,IAAS,CAAC,CAAC,CAAC;AAClE;AAEA,SAAgBK,EAAS,GAAe,GAAc,IAAmBnB,EAAK,MAAM,UAAkB;CACpG,IAAMoB,IAAQC,IAAWrB,EAAK,MAAM;CACpC,IAAID,EAAWuB,CAAK,IAAIF,KAASG,GAAM,OAAOD;CAC9C,IAAME,IAAQ,CAAC,GAAGF,CAAK,GACnBG,IAAM;CACV,KAAK,IAAMC,KAAMF,GAAO;EACtB,IAAIzB,EAAW,GAAG0B,IAAMC,EAAG,EAAE,IAAIN,IAAQG,GAAM;EAC/C,KAAOG;CACT;CACA,OAAO,GAAGD,EAAI,QAAQ,EAAE;AAC1B"}
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import { t as e } from "./cn-Dj6sRgkF.js";
2
+ import { t as e } from "./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/empty/empty.tsx
@@ -35,4 +35,4 @@ process.env.NODE_ENV !== "production" && (o.displayName = "Empty");
35
35
  //#endregion
36
36
  export { a as n, i as r, o as t };
37
37
 
38
- //# sourceMappingURL=empty-DvhyMXQq.js.map
38
+ //# sourceMappingURL=empty-BpiUgGzm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"empty-DvhyMXQq.js","names":["cn","KAESO_EMPTY_VARIANTS","KAESO_EMPTY_DEFAULT_VARIANTS","Empty","compact","size","className","title","description","actions","children"],"sources":["../../src/components/empty/empty.tsx"],"sourcesContent":["import { forwardRef, type ReactNode } from \"react\";\nimport { cn } from \"../../utils/cn.js\";\n\nexport const KAESO_EMPTY_VARIANTS = {\n size: {\n lg: { classes: \"py-80 gap-16\" },\n md: { classes: \"py-48 gap-12\" },\n compact: { classes: \"py-32 gap-8\" },\n },\n} as const;\nexport const KAESO_EMPTY_DEFAULT_VARIANTS = { size: \"lg\" } as const;\n\nexport interface EmptyProps {\n title: ReactNode;\n description?: ReactNode | undefined;\n actions?: ReactNode | undefined;\n size?: keyof typeof KAESO_EMPTY_VARIANTS.size | undefined;\n children?: ReactNode | undefined;\n className?: string | undefined;\n}\n\nexport const Empty = /* @__PURE__ */ forwardRef<HTMLDivElement, EmptyProps>(function Empty({ title, description, actions, size = \"lg\", children, className }, ref) {\n const compact = size === \"compact\";\n return (\n <div ref={ref} className={cn(\"flex flex-col items-center text-center\", KAESO_EMPTY_VARIANTS.size[size].classes, className)}>\n <div className={cn(\"flex flex-col items-center\", compact ? \"gap-2\" : \"gap-6\")}>\n <h2 className={cn(\"font-semibold text-fg text-balance\", compact ? \"text-body\" : \"text-title\")}>{title}</h2>\n {description && <p className={cn(\"max-w-44ch text-fg-secondary text-pretty\", compact ? \"text-small\" : \"text-body\")}>{description}</p>}\n </div>\n {actions && <div className={cn(\"flex flex-wrap items-center justify-center gap-8\", !compact && \"mt-8\")}>{actions}</div>}\n {children}\n </div>\n );\n});\nif (process.env.NODE_ENV !== \"production\") Empty.displayName = \"Empty\";\n"],"mappings":";;;;;AAGA,IAAaC,IAAuB,EAClC,MAAM;CACJ,IAAI,EAAE,SAAS,eAAe;CAC9B,IAAI,EAAE,SAAS,eAAe;CAC9B,SAAS,EAAE,SAAS,cAAc;AACpC,EACF,GACaC,IAA+B,EAAE,MAAM,KAAK,GAW5CC,IAAwB,kBAAuC,SAAe,EAAE,UAAO,gBAAa,YAAS,UAAO,MAAM,aAAU,gBAAa,GAAK;CACjK,IAAMC,IAAUC,MAAS;CACzB,OACE,kBAAC,OAAD;EAAU;EAAK,WAAWL,EAAG,0CAA0CC,EAAqB,KAAKI,EAAK,CAAC,SAASC,CAAS;EAAzH,UAAA;GACE,kBAAC,OAAD;IAAK,WAAWN,EAAG,8BAA8BI,IAAU,UAAU,OAAO;IAA5E,UAAA,CACE,kBAAC,MAAD;KAAI,WAAWJ,EAAG,sCAAsCI,IAAU,cAAc,YAAY;KAAI,UAAAG;IAAU,CAAA,GACzGC,KAAe,kBAAC,KAAD;KAAG,WAAWR,EAAG,4CAA4CI,IAAU,eAAe,WAAW;KAAI,UAAAI;IAAe,CAAA,CACjI;;GACJC,KAAW,kBAAC,OAAD;IAAK,WAAWT,EAAG,oDAAoD,CAACI,KAAW,MAAM;IAAI,UAAAK;GAAa,CAAA;GACrHC;EACE;;AAET,CAAC;AACD,QAAA,IAAA,aAA6B,iBAAc,EAAM,cAAc"}
1
+ {"version":3,"file":"empty-BpiUgGzm.js","names":["cn","KAESO_EMPTY_VARIANTS","KAESO_EMPTY_DEFAULT_VARIANTS","Empty","compact","size","className","title","description","actions","children"],"sources":["../../src/components/empty/empty.tsx"],"sourcesContent":["import { forwardRef, type ReactNode } from \"react\";\nimport { cn } from \"../../utils/cn.js\";\n\nexport const KAESO_EMPTY_VARIANTS = {\n size: {\n lg: { classes: \"py-80 gap-16\" },\n md: { classes: \"py-48 gap-12\" },\n compact: { classes: \"py-32 gap-8\" },\n },\n} as const;\nexport const KAESO_EMPTY_DEFAULT_VARIANTS = { size: \"lg\" } as const;\n\nexport interface EmptyProps {\n title: ReactNode;\n description?: ReactNode | undefined;\n actions?: ReactNode | undefined;\n size?: keyof typeof KAESO_EMPTY_VARIANTS.size | undefined;\n children?: ReactNode | undefined;\n className?: string | undefined;\n}\n\nexport const Empty = /* @__PURE__ */ forwardRef<HTMLDivElement, EmptyProps>(function Empty({ title, description, actions, size = \"lg\", children, className }, ref) {\n const compact = size === \"compact\";\n return (\n <div ref={ref} className={cn(\"flex flex-col items-center text-center\", KAESO_EMPTY_VARIANTS.size[size].classes, className)}>\n <div className={cn(\"flex flex-col items-center\", compact ? \"gap-2\" : \"gap-6\")}>\n <h2 className={cn(\"font-semibold text-fg text-balance\", compact ? \"text-body\" : \"text-title\")}>{title}</h2>\n {description && <p className={cn(\"max-w-44ch text-fg-secondary text-pretty\", compact ? \"text-small\" : \"text-body\")}>{description}</p>}\n </div>\n {actions && <div className={cn(\"flex flex-wrap items-center justify-center gap-8\", !compact && \"mt-8\")}>{actions}</div>}\n {children}\n </div>\n );\n});\nif (process.env.NODE_ENV !== \"production\") Empty.displayName = \"Empty\";\n"],"mappings":";;;;;AAGA,IAAaC,IAAuB,EAClC,MAAM;CACJ,IAAI,EAAE,SAAS,eAAe;CAC9B,IAAI,EAAE,SAAS,eAAe;CAC9B,SAAS,EAAE,SAAS,cAAc;AACpC,EACF,GACaC,IAA+B,EAAE,MAAM,KAAK,GAW5CC,IAAwB,kBAAuC,SAAe,EAAE,UAAO,gBAAa,YAAS,UAAO,MAAM,aAAU,gBAAa,GAAK;CACjK,IAAMC,IAAUC,MAAS;CACzB,OACE,kBAAC,OAAD;EAAU;EAAK,WAAWL,EAAG,0CAA0CC,EAAqB,KAAKI,EAAK,CAAC,SAASC,CAAS;EAAzH,UAAA;GACE,kBAAC,OAAD;IAAK,WAAWN,EAAG,8BAA8BI,IAAU,UAAU,OAAO;IAA5E,UAAA,CACE,kBAAC,MAAD;KAAI,WAAWJ,EAAG,sCAAsCI,IAAU,cAAc,YAAY;KAAI,UAAAG;IAAU,CAAA,GACzGC,KAAe,kBAAC,KAAD;KAAG,WAAWR,EAAG,4CAA4CI,IAAU,eAAe,WAAW;KAAI,UAAAI;IAAe,CAAA,CACjI;;GACJC,KAAW,kBAAC,OAAD;IAAK,WAAWT,EAAG,oDAAoD,CAACI,KAAW,MAAM;IAAI,UAAAK;GAAa,CAAA;GACrHC;EACE;;AAET,CAAC;AACD,QAAA,IAAA,aAA6B,iBAAc,EAAM,cAAc"}
@@ -1,54 +1,53 @@
1
1
  "use client";
2
- import { t as e } from "./cn-Dj6sRgkF.js";
3
- import { i as t } from "./context-BELWW79w.js";
2
+ import { t as e } from "./cn-BjnOAUrA.js";
3
+ import { r as t } from "./label-DW24Aj0Z.js";
4
4
  import { createContext as n, forwardRef as r, useContext as i, useId as a } from "react";
5
5
  import { jsx as o, jsxs as s } from "react/jsx-runtime";
6
6
  //#region src/components/field/field.tsx
7
7
  var c = { layout: {
8
8
  vertical: { classes: "flex flex-col gap-8" },
9
- horizontal: { classes: "grid grid-cols-1 gap-8 md:grid-cols-label md:gap-x-24" }
9
+ horizontal: { classes: "grid grid-cols-1 gap-8 md:grid-cols-label md:items-baseline md:gap-x-24" }
10
10
  } }, l = { layout: "vertical" }, u = /* @__PURE__ */ n(null), d = () => i(u), f = /* @__PURE__ */ r(function({ label: n, description: r, invalid: i, error: l, optional: d, required: f = !1, disabled: p = !1, layout: m = "vertical", id: h, className: g, children: _, ...v }, y) {
11
- let b = a(), x = t(), S = h ?? `k-field-${b}`, C = n ? `${S}-label` : void 0, w = r ? `${S}-description` : void 0, T = l ? `${S}-error` : void 0, E = !!i || !!l, D = [w, T].filter(Boolean).join(" ") || void 0, O = {
12
- controlId: S,
13
- labelId: C,
14
- descriptionId: w,
15
- errorId: T,
16
- invalid: E,
11
+ let b = a(), x = h ?? `k-field-${b}`, S = n ? `${x}-label` : void 0, C = r ? `${x}-description` : void 0, w = l ? `${x}-error` : void 0, T = !!i || !!l, E = [C, w].filter(Boolean).join(" ") || void 0, D = {
12
+ controlId: x,
13
+ labelId: S,
14
+ descriptionId: C,
15
+ errorId: w,
16
+ invalid: T,
17
17
  disabled: p,
18
18
  required: f,
19
19
  controlProps: {
20
- id: S,
21
- ...D ? { "aria-describedby": D } : {},
22
- ...E ? { "aria-invalid": !0 } : {},
20
+ id: x,
21
+ ...E ? { "aria-describedby": E } : {},
22
+ ...T ? { "aria-invalid": !0 } : {},
23
23
  ...f ? { "aria-required": !0 } : {}
24
24
  }
25
25
  };
26
26
  return /* @__PURE__ */ o(u.Provider, {
27
- value: O,
27
+ value: D,
28
28
  children: /* @__PURE__ */ s("div", {
29
29
  ref: y,
30
30
  className: e(c.layout[m].classes, g),
31
31
  "data-disabled": p || void 0,
32
32
  ...v,
33
- children: [n && /* @__PURE__ */ s("label", {
34
- id: C,
35
- htmlFor: S,
36
- className: e("flex items-baseline gap-6 text-body font-medium text-fg", m === "horizontal" && "md:pt-8", p && "text-fg-disabled"),
37
- children: [n, d && /* @__PURE__ */ o("span", {
38
- className: "text-small font-regular text-fg-tertiary",
39
- children: x("field.optional", "Optional")
40
- })]
33
+ children: [n && /* @__PURE__ */ o(t, {
34
+ id: S,
35
+ htmlFor: x,
36
+ optional: d,
37
+ className: "flex",
38
+ ...p ? { "data-disabled": "" } : {},
39
+ children: n
41
40
  }), /* @__PURE__ */ s("div", {
42
41
  className: "flex min-w-0 flex-col gap-6",
43
42
  children: [
44
43
  _,
45
44
  r && /* @__PURE__ */ o("p", {
46
- id: w,
45
+ id: C,
47
46
  className: "text-small text-fg-secondary",
48
47
  children: r
49
48
  }),
50
49
  l && /* @__PURE__ */ o("p", {
51
- id: T,
50
+ id: w,
52
51
  className: "text-small text-danger-text",
53
52
  children: l
54
53
  })
@@ -58,21 +57,25 @@ var c = { layout: {
58
57
  });
59
58
  });
60
59
  process.env.NODE_ENV !== "production" && (f.displayName = "Field");
61
- var p = /* @__PURE__ */ r(function({ legend: t, description: n, className: r, children: i, ...a }, c) {
60
+ var p = /* @__PURE__ */ r(function({ legend: t, description: n, className: r, children: i, ...c }, l) {
61
+ let u = `k-fieldset-${a()}`;
62
62
  return /* @__PURE__ */ s("fieldset", {
63
- ref: c,
63
+ ref: l,
64
64
  className: e("flex min-w-0 flex-col gap-16", r),
65
- ...a,
66
- children: [/* @__PURE__ */ s("div", {
67
- className: "flex flex-col gap-4",
68
- children: [/* @__PURE__ */ o("legend", {
69
- className: "text-body-lg font-semibold text-fg",
65
+ ...c,
66
+ ...n ? { "aria-describedby": [c["aria-describedby"], u].filter(Boolean).join(" ") } : {},
67
+ children: [
68
+ /* @__PURE__ */ o("legend", {
69
+ className: e("float-none w-full p-0 text-body-lg font-semibold text-fg", n ? "mb-4" : "mb-16"),
70
70
  children: t
71
- }), n && /* @__PURE__ */ o("p", {
71
+ }),
72
+ n && /* @__PURE__ */ o("p", {
73
+ id: u,
72
74
  className: "text-small text-fg-secondary",
73
75
  children: n
74
- })]
75
- }), i]
76
+ }),
77
+ i
78
+ ]
76
79
  });
77
80
  });
78
81
  process.env.NODE_ENV !== "production" && (p.displayName = "Fieldset");
@@ -116,4 +119,4 @@ function h(e, t) {
116
119
  //#endregion
117
120
  export { d as a, c as i, p as n, m as o, l as r, h as s, f as t };
118
121
 
119
- //# sourceMappingURL=field-TviMvYa2.js.map
122
+ //# sourceMappingURL=field-D7m-yl-D.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"field-D7m-yl-D.js","names":["cn","Label","KAESO_FIELD_VARIANTS","KAESO_FIELD_DEFAULT_VARIANTS","FieldContext","useField","useContext","Field","invalidProp","props","auto","useId","controlId","id","labelId","label","descriptionId","description","errorId","error","invalid","describedBy","value","required","layout","className","disabled","children","Fieldset","legend","useFieldControl","field","withField","control"],"sources":["../../src/components/field/field.tsx"],"sourcesContent":["import { createContext, forwardRef, useContext, useId, type FieldsetHTMLAttributes, type HTMLAttributes, type ReactNode } from \"react\";\nimport { cn } from \"../../utils/cn.js\";\nimport { Label } from \"../label/label.js\";\n\nexport const KAESO_FIELD_VARIANTS = {\n layout: {\n vertical: { classes: \"flex flex-col gap-8\" },\n horizontal: {\n classes: \"grid grid-cols-1 gap-8 md:grid-cols-label md:items-baseline md:gap-x-24\",\n },\n },\n} as const;\nexport const KAESO_FIELD_DEFAULT_VARIANTS = { layout: \"vertical\" } as const;\n\nexport interface FieldContextValue {\n controlId: string;\n labelId: string | undefined;\n descriptionId: string | undefined;\n errorId: string | undefined;\n invalid: boolean;\n disabled: boolean;\n required: boolean;\n controlProps: { id: string; \"aria-describedby\"?: string | undefined; \"aria-invalid\"?: true | undefined; \"aria-required\"?: true | undefined };\n}\n\nconst FieldContext = /* @__PURE__ */ createContext<FieldContextValue | null>(null);\nexport const useField = () => useContext(FieldContext);\n\nexport interface FieldProps extends Omit<HTMLAttributes<HTMLDivElement>, \"children\"> {\n label?: ReactNode | undefined;\n description?: ReactNode | undefined;\n invalid?: boolean | undefined;\n error?: ReactNode | undefined;\n optional?: boolean | undefined;\n required?: boolean | undefined;\n disabled?: boolean | undefined;\n layout?: keyof typeof KAESO_FIELD_VARIANTS.layout | undefined;\n id?: string | undefined;\n children: ReactNode;\n}\n\nexport const Field = /* @__PURE__ */ forwardRef<HTMLDivElement, FieldProps>(function Field(\n { label, description, invalid: invalidProp, error, optional, required = false, disabled = false, layout = \"vertical\", id, className, children, ...props },\n ref,\n) {\n const auto = useId();\n const controlId = id ?? `k-field-${auto}`;\n const labelId = label ? `${controlId}-label` : undefined;\n const descriptionId = description ? `${controlId}-description` : undefined;\n const errorId = error ? `${controlId}-error` : undefined;\n const invalid = !!invalidProp || !!error;\n const describedBy = [descriptionId, errorId].filter(Boolean).join(\" \") || undefined;\n const value: FieldContextValue = {\n controlId,\n labelId,\n descriptionId,\n errorId,\n invalid,\n disabled,\n required,\n controlProps: {\n id: controlId,\n ...(describedBy ? { \"aria-describedby\": describedBy } : {}),\n ...(invalid ? { \"aria-invalid\": true as const } : {}),\n ...(required ? { \"aria-required\": true as const } : {}),\n },\n };\n return (\n <FieldContext.Provider value={value}>\n <div ref={ref} className={cn(KAESO_FIELD_VARIANTS.layout[layout].classes, className)} data-disabled={disabled || undefined} {...props}>\n {label && (\n <Label id={labelId} htmlFor={controlId} optional={optional} className=\"flex\" {...(disabled ? { \"data-disabled\": \"\" } : {})}>\n {label}\n </Label>\n )}\n <div className=\"flex min-w-0 flex-col gap-6\">\n {children}\n {description && (\n <p id={descriptionId} className=\"text-small text-fg-secondary\">\n {description}\n </p>\n )}\n {error && (\n <p id={errorId} className=\"text-small text-danger-text\">\n {error}\n </p>\n )}\n </div>\n </div>\n </FieldContext.Provider>\n );\n});\nif (process.env.NODE_ENV !== \"production\") Field.displayName = \"Field\";\n\nexport interface FieldsetProps extends FieldsetHTMLAttributes<HTMLFieldSetElement> {\n legend: ReactNode;\n description?: ReactNode | undefined;\n}\n\nexport const Fieldset = /* @__PURE__ */ forwardRef<HTMLFieldSetElement, FieldsetProps>(function Fieldset({ legend, description, className, children, ...props }, ref) {\n const descriptionId = `k-fieldset-${useId()}`;\n return (\n <fieldset\n ref={ref}\n className={cn(\"flex min-w-0 flex-col gap-16\", className)}\n {...props}\n {...(description ? { \"aria-describedby\": [props[\"aria-describedby\"], descriptionId].filter(Boolean).join(\" \") } : {})}\n >\n <legend className={cn(\"float-none w-full p-0 text-body-lg font-semibold text-fg\", description ? \"mb-4\" : \"mb-16\")}>{legend}</legend>\n {description && (\n <p id={descriptionId} className=\"text-small text-fg-secondary\">\n {description}\n </p>\n )}\n {children}\n </fieldset>\n );\n});\nif (process.env.NODE_ENV !== \"production\") Fieldset.displayName = \"Fieldset\";\n\nexport function useFieldControl(props: {\n label?: ReactNode | undefined;\n description?: ReactNode | undefined;\n error?: ReactNode | undefined;\n invalid?: boolean | undefined;\n required?: boolean | undefined;\n id?: string | undefined;\n}) {\n const field = useField();\n const auto = useId();\n if (field) return { controlProps: field.controlProps as Record<string, unknown>, wrapId: undefined };\n const wraps = props.label !== undefined || props.description !== undefined || props.error !== undefined;\n if (!wraps) return { controlProps: (props.invalid ? { \"aria-invalid\": true } : {}) as Record<string, unknown>, wrapId: undefined };\n const controlId = props.id ?? `k-field-${auto}`;\n const describedBy = [props.description ? `${controlId}-description` : \"\", props.error ? `${controlId}-error` : \"\"].filter(Boolean).join(\" \");\n return {\n controlProps: {\n id: controlId,\n ...(describedBy ? { \"aria-describedby\": describedBy } : {}),\n ...(props.error || props.invalid ? { \"aria-invalid\": true } : {}),\n ...(props.required ? { \"aria-required\": true } : {}),\n } as Record<string, unknown>,\n wrapId: controlId,\n };\n}\n\nexport interface FieldWrapProps {\n label?: ReactNode | undefined;\n description?: ReactNode | undefined;\n error?: ReactNode | undefined;\n optional?: boolean | undefined;\n required?: boolean | undefined;\n layout?: keyof typeof KAESO_FIELD_VARIANTS.layout | undefined;\n}\n\nexport function withField(\n props: FieldWrapProps & { id?: string | undefined; disabled?: boolean | undefined; invalid?: boolean | undefined; className?: string | undefined },\n control: ReactNode,\n) {\n const { label, description, error, optional, required, layout } = props;\n if (label === undefined && description === undefined && error === undefined) return control;\n return (\n <Field\n label={label}\n description={description}\n error={error}\n invalid={props.invalid}\n optional={optional}\n required={required}\n layout={layout}\n id={props.id}\n disabled={props.disabled}\n className={props.className}\n >\n {control}\n </Field>\n );\n}\n"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import { t as e } from "./cn-Dj6sRgkF.js";
2
+ import { t as e } from "./cn-BjnOAUrA.js";
3
3
  import { forwardRef as t } from "react";
4
4
  import { jsx as n } from "react/jsx-runtime";
5
5
  import { HugeiconsIcon as r } from "@hugeicons/react";
@@ -29,19 +29,20 @@ var i = { size: {
29
29
  size: o[c],
30
30
  strokeWidth: s[c],
31
31
  color: "currentColor",
32
+ ...d,
32
33
  className: e("shrink-0", i.size[c].classes, u),
33
34
  ...l ? {
34
35
  role: "img",
35
- "aria-label": l
36
+ "aria-label": l,
37
+ "aria-hidden": void 0
36
38
  } : {
37
- "aria-hidden": !0,
39
+ "aria-hidden": d["aria-hidden"] ?? !0,
38
40
  focusable: !1
39
- },
40
- ...d
41
+ }
41
42
  });
42
43
  });
43
44
  process.env.NODE_ENV !== "production" && (c.displayName = "Icon");
44
45
  //#endregion
45
46
  export { a as n, i as r, c as t };
46
47
 
47
- //# sourceMappingURL=icon-D7ja-_Yk.js.map
48
+ //# sourceMappingURL=icon-CBzOwqrX.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"icon-D7ja-_Yk.js","names":["cn","KAESO_ICON_VARIANTS","KAESO_ICON_DEFAULT_VARIANTS","PX","STROKE","Icon","props","HugeiconsIcon","size","className","label"],"sources":["../../src/components/icon/icon.tsx"],"sourcesContent":["import { forwardRef, type SVGAttributes } from \"react\";\nimport { HugeiconsIcon, type IconSvgElement } from \"@hugeicons/react\";\nimport { cn } from \"../../utils/cn.js\";\n\nexport type IconData = IconSvgElement;\n\nexport const KAESO_ICON_VARIANTS = {\n size: {\n xs: { classes: \"size-14\" },\n sm: { classes: \"size-16\" },\n md: { classes: \"size-18\" },\n lg: { classes: \"size-20\" },\n xl: { classes: \"size-24\" },\n },\n} as const;\nexport const KAESO_ICON_DEFAULT_VARIANTS = { size: \"sm\" } as const;\nexport type IconSize = keyof typeof KAESO_ICON_VARIANTS.size;\n\nconst PX: Record<IconSize, number> = { xs: 14, sm: 16, md: 18, lg: 20, xl: 24 };\nconst STROKE: Record<IconSize, number> = { xs: 1.75, sm: 1.5, md: 1.5, lg: 1.5, xl: 1.5 };\n\nexport interface IconProps extends Omit<SVGAttributes<SVGSVGElement>, \"children\" | \"strokeWidth\" | \"color\"> {\n icon: IconData;\n size?: IconSize | undefined;\n label?: string | undefined;\n}\n\nexport const Icon = /* @__PURE__ */ forwardRef<SVGSVGElement, IconProps>(function Icon({ icon, size = KAESO_ICON_DEFAULT_VARIANTS.size, label, className, ...props }, ref) {\n return (\n <HugeiconsIcon\n ref={ref}\n icon={icon}\n size={PX[size]}\n strokeWidth={STROKE[size]}\n color=\"currentColor\"\n className={cn(\"shrink-0\", KAESO_ICON_VARIANTS.size[size].classes, className)}\n {...(label ? { role: \"img\", \"aria-label\": label } : { \"aria-hidden\": true, focusable: false })}\n {...props}\n />\n );\n});\nif (process.env.NODE_ENV !== \"production\") Icon.displayName = \"Icon\";\n"],"mappings":";;;;;;AAMA,IAAaC,IAAsB,EACjC,MAAM;CACJ,IAAI,EAAE,SAAS,UAAU;CACzB,IAAI,EAAE,SAAS,UAAU;CACzB,IAAI,EAAE,SAAS,UAAU;CACzB,IAAI,EAAE,SAAS,UAAU;CACzB,IAAI,EAAE,SAAS,UAAU;AAC3B,EACF,GACaC,IAA8B,EAAE,MAAM,KAAK,GAGlDC,IAA+B;CAAE,IAAI;CAAI,IAAI;CAAI,IAAI;CAAI,IAAI;CAAI,IAAI;AAAG,GACxEC,IAAmC;CAAE,IAAI;CAAM,IAAI;CAAK,IAAI;CAAK,IAAI;CAAK,IAAI;AAAI,GAQ3EC,IAAuB,kBAAqC,SAAc,EAAE,SAAM,UAAOH,EAA4B,MAAM,UAAO,cAAW,GAAGI,KAAS,GAAK;CACzK,OACE,kBAACC,GAAD;EACO;EACC;EACN,MAAMJ,EAAGK;EACT,aAAaJ,EAAOI;EACpB,OAAM;EACN,WAAWR,EAAG,YAAYC,EAAoB,KAAKO,EAAK,CAAC,SAASC,CAAS;EAC3E,GAAKC,IAAQ;GAAE,MAAM;GAAO,cAAcA;EAAM,IAAI;GAAE,eAAe;GAAM,WAAW;EAAM;EAC5F,GAAIJ;CACL,CAAA;AAEL,CAAC;AACD,QAAA,IAAA,aAA6B,iBAAc,EAAK,cAAc"}
1
+ {"version":3,"file":"icon-CBzOwqrX.js","names":["cn","KAESO_ICON_VARIANTS","KAESO_ICON_DEFAULT_VARIANTS","PX","STROKE","Icon","props","HugeiconsIcon","size","className","label"],"sources":["../../src/components/icon/icon.tsx"],"sourcesContent":["import { forwardRef, type SVGAttributes } from \"react\";\nimport { HugeiconsIcon, type IconSvgElement } from \"@hugeicons/react\";\nimport { cn } from \"../../utils/cn.js\";\n\nexport type IconData = IconSvgElement;\n\nexport const KAESO_ICON_VARIANTS = {\n size: {\n xs: { classes: \"size-14\" },\n sm: { classes: \"size-16\" },\n md: { classes: \"size-18\" },\n lg: { classes: \"size-20\" },\n xl: { classes: \"size-24\" },\n },\n} as const;\nexport const KAESO_ICON_DEFAULT_VARIANTS = { size: \"sm\" } as const;\nexport type IconSize = keyof typeof KAESO_ICON_VARIANTS.size;\n\nconst PX: Record<IconSize, number> = { xs: 14, sm: 16, md: 18, lg: 20, xl: 24 };\nconst STROKE: Record<IconSize, number> = { xs: 1.75, sm: 1.5, md: 1.5, lg: 1.5, xl: 1.5 };\n\nexport interface IconProps extends Omit<SVGAttributes<SVGSVGElement>, \"children\" | \"strokeWidth\" | \"color\"> {\n icon: IconData;\n size?: IconSize | undefined;\n label?: string | undefined;\n}\n\nexport const Icon = /* @__PURE__ */ forwardRef<SVGSVGElement, IconProps>(function Icon({ icon, size = KAESO_ICON_DEFAULT_VARIANTS.size, label, className, ...props }, ref) {\n return (\n <HugeiconsIcon\n ref={ref}\n icon={icon}\n size={PX[size]}\n strokeWidth={STROKE[size]}\n color=\"currentColor\"\n {...props}\n className={cn(\"shrink-0\", KAESO_ICON_VARIANTS.size[size].classes, className)}\n {...(label ? { role: \"img\", \"aria-label\": label, \"aria-hidden\": undefined } : { \"aria-hidden\": props[\"aria-hidden\"] ?? true, focusable: false })}\n />\n );\n});\nif (process.env.NODE_ENV !== \"production\") Icon.displayName = \"Icon\";\n"],"mappings":";;;;;;AAMA,IAAaC,IAAsB,EACjC,MAAM;CACJ,IAAI,EAAE,SAAS,UAAU;CACzB,IAAI,EAAE,SAAS,UAAU;CACzB,IAAI,EAAE,SAAS,UAAU;CACzB,IAAI,EAAE,SAAS,UAAU;CACzB,IAAI,EAAE,SAAS,UAAU;AAC3B,EACF,GACaC,IAA8B,EAAE,MAAM,KAAK,GAGlDC,IAA+B;CAAE,IAAI;CAAI,IAAI;CAAI,IAAI;CAAI,IAAI;CAAI,IAAI;AAAG,GACxEC,IAAmC;CAAE,IAAI;CAAM,IAAI;CAAK,IAAI;CAAK,IAAI;CAAK,IAAI;AAAI,GAQ3EC,IAAuB,kBAAqC,SAAc,EAAE,SAAM,UAAOH,EAA4B,MAAM,UAAO,cAAW,GAAGI,KAAS,GAAK;CACzK,OACE,kBAACC,GAAD;EACO;EACC;EACN,MAAMJ,EAAGK;EACT,aAAaJ,EAAOI;EACpB,OAAM;EACN,GAAIF;EACJ,WAAWN,EAAG,YAAYC,EAAoB,KAAKO,EAAK,CAAC,SAASC,CAAS;EAC3E,GAAKC,IAAQ;GAAE,MAAM;GAAO,cAAcA;GAAO,eAAe,KAAA;EAAU,IAAI;GAAE,eAAeJ,EAAM,kBAAkB;GAAM,WAAW;EAAM;CAC/I,CAAA;AAEL,CAAC;AACD,QAAA,IAAA,aAA6B,iBAAc,EAAK,cAAc"}
@@ -1,13 +1,13 @@
1
1
  "use client";
2
- import { r as e } from "./tooltip-OcwO0VUT.js";
3
- import { n as t } from "./button-CzuxqawA.js";
2
+ import { r as e } from "./tooltip-Tkm-urbi.js";
3
+ import { n as t } from "./button-IblhXUyZ.js";
4
4
  import { forwardRef as n } from "react";
5
5
  import { jsx as r } from "react/jsx-runtime";
6
6
  //#region src/components/icon-button/icon-button.tsx
7
7
  var i = {
8
8
  variant: {
9
9
  ghost: { classes: "material-ghost" },
10
- quiet: { classes: "material-ghost text-fg-secondary hover:text-fg" },
10
+ quiet: { classes: "material-ghost text-fg-secondary hover:text-fg active:text-fg open:text-fg" },
11
11
  secondary: { classes: "material-secondary" },
12
12
  soft: { classes: "material-soft" },
13
13
  primary: { classes: "material-primary" },
@@ -36,15 +36,16 @@ var i = {
36
36
  ...u === void 0 ? {} : { disabledReason: u },
37
37
  ...f
38
38
  });
39
- return !s || d ? m : /* @__PURE__ */ r(e, {
39
+ return s ? /* @__PURE__ */ r(e, {
40
40
  content: l,
41
41
  side: c,
42
+ disabled: !!d,
42
43
  ...o ? { shortcut: o } : {},
43
44
  children: m
44
- });
45
+ }) : m;
45
46
  });
46
47
  process.env.NODE_ENV !== "production" && (o.displayName = "IconButton");
47
48
  //#endregion
48
49
  export { a as n, i as r, o as t };
49
50
 
50
- //# sourceMappingURL=icon-button-CrdF_eMG.js.map
51
+ //# sourceMappingURL=icon-button-Dfwpvmav.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icon-button-Dfwpvmav.js","names":["Tooltip","Button","KAESO_ICON_BUTTON_VARIANTS","KAESO_ICON_BUTTON_DEFAULT_VARIANTS","IconButton","label","props","btn","disabled","disabledReason","tooltip","tooltipSide","shortcut"],"sources":["../../src/components/icon-button/icon-button.tsx"],"sourcesContent":["import type * as React from \"react\";\nimport { forwardRef } from \"react\";\nimport { Button, type ButtonSize, type ButtonVariant } from \"../button/button.js\";\nimport { Tooltip } from \"../tooltip/tooltip.js\";\nimport type { IconData } from \"../icon/icon.js\";\n\nexport const KAESO_ICON_BUTTON_VARIANTS = {\n variant: {\n ghost: { classes: \"material-ghost\" },\n quiet: {\n classes: \"material-ghost text-fg-secondary hover:text-fg active:text-fg open:text-fg\",\n },\n secondary: { classes: \"material-secondary\" },\n soft: { classes: \"material-soft\" },\n primary: { classes: \"material-primary\" },\n danger: { classes: \"material-danger\" },\n \"danger-secondary\": { classes: \"material-danger-secondary\" },\n },\n size: {\n xs: { classes: \"size-24\" },\n sm: { classes: \"size-32\" },\n md: { classes: \"size-36\" },\n lg: { classes: \"size-40\" },\n xl: { classes: \"size-48\" },\n },\n} as const;\nexport const KAESO_ICON_BUTTON_DEFAULT_VARIANTS = { variant: \"ghost\", size: \"sm\" } as const;\n\nexport interface IconButtonProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, \"children\"> {\n icon: IconData;\n \"aria-label\": string;\n variant?: Exclude<ButtonVariant, \"link\"> | undefined;\n size?: ButtonSize | undefined;\n shortcut?: string[] | string[][] | undefined;\n tooltip?: boolean | undefined;\n tooltipSide?: \"top\" | \"bottom\" | \"left\" | \"right\" | undefined;\n loading?: boolean | undefined;\n disabledReason?: string | undefined;\n href?: string | undefined;\n \"data-force\"?: string | undefined;\n}\n\nexport const IconButton = /* @__PURE__ */ forwardRef<HTMLButtonElement, IconButtonProps>(function IconButton(\n { icon, variant = \"ghost\", size = \"sm\", shortcut, tooltip = true, tooltipSide = \"top\", \"aria-label\": label, disabledReason, disabled, ...props },\n ref,\n) {\n const btn = (\n <Button\n ref={ref as React.Ref<HTMLButtonElement & HTMLAnchorElement>}\n shape=\"circle\"\n icon={icon}\n aria-label={label}\n variant={variant}\n size={size}\n {...(disabled !== undefined ? { disabled } : {})}\n {...(disabledReason !== undefined ? { disabledReason } : {})}\n {...props}\n />\n );\n if (!tooltip) return btn;\n // The Tooltip stays mounted while disabled: unwrapping would remount the button and drop its focus.\n return (\n <Tooltip content={label} side={tooltipSide} disabled={!!disabled} {...(shortcut ? { shortcut } : {})}>\n {btn}\n </Tooltip>\n );\n});\nif (process.env.NODE_ENV !== \"production\") IconButton.displayName = \"IconButton\";\n"],"mappings":";;;;;;AAMA,IAAaE,IAA6B;CACxC,SAAS;EACP,OAAO,EAAE,SAAS,iBAAiB;EACnC,OAAO,EACL,SAAS,6EACX;EACA,WAAW,EAAE,SAAS,qBAAqB;EAC3C,MAAM,EAAE,SAAS,gBAAgB;EACjC,SAAS,EAAE,SAAS,mBAAmB;EACvC,QAAQ,EAAE,SAAS,kBAAkB;EACrC,oBAAoB,EAAE,SAAS,4BAA4B;CAC7D;CACA,MAAM;EACJ,IAAI,EAAE,SAAS,UAAU;EACzB,IAAI,EAAE,SAAS,UAAU;EACzB,IAAI,EAAE,SAAS,UAAU;EACzB,IAAI,EAAE,SAAS,UAAU;EACzB,IAAI,EAAE,SAAS,UAAU;CAC3B;AACF,GACaC,IAAqC;CAAE,SAAS;CAAS,MAAM;AAAK,GAgBpEC,IAA6B,kBAA+C,SACvF,EAAE,SAAM,aAAU,SAAS,UAAO,MAAM,aAAU,aAAU,IAAM,iBAAc,OAAO,cAAcC,GAAO,mBAAgB,aAAU,GAAGC,KACzI,GACA;CACA,IAAMC,IACJ,kBAACN,GAAD;EACO;EACL,OAAM;EACA;EACN,cAAYI;EACH;EACH;EACN,GAAKG,MAAa,KAAA,IAA2B,CAAC,IAAhB,EAAE,YAAS;EACzC,GAAKC,MAAmB,KAAA,IAAiC,CAAC,IAAtB,EAAE,kBAAe;EACrD,GAAIH;CACL,CAAA;CAIH,OAFKI,IAGH,kBAACV,GAAD;EAAS,SAASK;EAAO,MAAMM;EAAa,UAAU,CAAC,CAACH;EAAU,GAAKI,IAAW,EAAE,YAAS,IAAI,CAAC;EAC/F,UAAAL;CACM,CAAA,IALUA;AAOvB,CAAC;AACD,QAAA,IAAA,aAA6B,iBAAc,EAAW,cAAc"}
@@ -1,11 +1,11 @@
1
1
  "use client";
2
- import { t as e } from "./cn-Dj6sRgkF.js";
2
+ import { t as e } from "./cn-BjnOAUrA.js";
3
3
  import { i as t } from "./context-BELWW79w.js";
4
4
  import { formatNumber as n } from "../format.js";
5
- import { t as r } from "./icon-D7ja-_Yk.js";
6
- import { r as i } from "./tooltip-OcwO0VUT.js";
7
- import { n as a } from "./copy-button-FJvPJn72.js";
8
- import { t as o } from "./badge-C2KtxCLB.js";
5
+ import { t as r } from "./icon-CBzOwqrX.js";
6
+ import { r as i } from "./tooltip-Tkm-urbi.js";
7
+ import { n as a } from "./copy-button-CwU8t_9_.js";
8
+ import { t as o } from "./badge-C0GC3B9X.js";
9
9
  import { forwardRef as s } from "react";
10
10
  import { Fragment as c, jsx as l, jsxs as u } from "react/jsx-runtime";
11
11
  import { CpuIcon as d, Image01Icon as f, Pdf01Icon as p, SourceCodeIcon as m, ToolsIcon as h } from "@hugeicons/core-free-icons";
@@ -190,7 +190,7 @@ var j = {}, M = {}, N = /* @__PURE__ */ s(function({ redacted: n, state: r = "ac
190
190
  children: A(p)[r]
191
191
  }),
192
192
  s && /* @__PURE__ */ l(o, {
193
- tone: s === "inference" ? "neutral" : "outline",
193
+ tone: "outline",
194
194
  children: k(p)[s]
195
195
  }),
196
196
  c && /* @__PURE__ */ l("span", {
@@ -358,4 +358,4 @@ process.env.NODE_ENV !== "production" && (R.displayName = "ProviderCard");
358
358
  //#endregion
359
359
  export { j as a, S as c, I as d, y as f, M as i, R as l, v as n, N as o, _ as r, E as s, D as t, L as u };
360
360
 
361
- //# sourceMappingURL=identity-BmhQ6BQ-.js.map
361
+ //# sourceMappingURL=identity-3Foi5F8w.js.map