@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
@@ -0,0 +1,27 @@
1
+ "use client";
2
+ import { t as e } from "./cn-BjnOAUrA.js";
3
+ import { t } from "./truncated-d1afmUJT.js";
4
+ import { forwardRef as n } from "react";
5
+ import { jsx as r } from "react/jsx-runtime";
6
+ //#region src/components/badge/badge.tsx
7
+ var i = { tone: {
8
+ neutral: { classes: "bg-fill-2 mark-fill text-fg-secondary" },
9
+ success: { classes: "bg-success-tint text-success-text" },
10
+ warning: { classes: "bg-warning-tint text-warning-text" },
11
+ danger: { classes: "bg-danger-tint text-danger-text" },
12
+ info: { classes: "bg-info-tint text-info-text" },
13
+ outline: { classes: "bg-transparent text-fg-secondary shadow-ring" },
14
+ ink: { classes: "bg-ink text-on-ink" }
15
+ } }, a = { tone: "neutral" }, o = /* @__PURE__ */ n(function({ tone: n = "neutral", className: a, children: o, ...s }, c) {
16
+ return /* @__PURE__ */ r(t, {
17
+ ref: c,
18
+ className: e("inline-block h-22 max-w-full min-w-0 shrink-0 rounded-pill px-8 py-3 align-middle text-caption font-medium tabular", "forced-colors:outline forced-colors:-outline-offset-1", i.tone[n].classes, a),
19
+ ...s,
20
+ children: o
21
+ });
22
+ });
23
+ process.env.NODE_ENV !== "production" && (o.displayName = "Badge");
24
+ //#endregion
25
+ export { a as n, i as r, o as t };
26
+
27
+ //# sourceMappingURL=badge-C0GC3B9X.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"badge-C0GC3B9X.js","names":["cn","KAESO_BADGE_VARIANTS","KAESO_BADGE_DEFAULT_VARIANTS","Badge","props","TruncatedText","tone","className"],"sources":["../../src/components/badge/badge.tsx"],"sourcesContent":["import { forwardRef, type HTMLAttributes, type ReactNode } from \"react\";\nimport { cn } from \"../../utils/cn.js\";\nimport { TruncatedText } from \"../text/truncated.js\";\n\nexport const KAESO_BADGE_VARIANTS = {\n tone: {\n neutral: { classes: \"bg-fill-2 mark-fill text-fg-secondary\" },\n success: { classes: \"bg-success-tint text-success-text\" },\n warning: { classes: \"bg-warning-tint text-warning-text\" },\n danger: { classes: \"bg-danger-tint text-danger-text\" },\n info: { classes: \"bg-info-tint text-info-text\" },\n outline: { classes: \"bg-transparent text-fg-secondary shadow-ring\" },\n ink: { classes: \"bg-ink text-on-ink\" },\n },\n} as const;\nexport const KAESO_BADGE_DEFAULT_VARIANTS = { tone: \"neutral\" } as const;\n\nexport interface BadgeProps extends HTMLAttributes<HTMLSpanElement> {\n tone?: keyof typeof KAESO_BADGE_VARIANTS.tone | undefined;\n children: ReactNode;\n}\n\nexport const Badge = /* @__PURE__ */ forwardRef<HTMLSpanElement, BadgeProps>(function Badge({ tone = \"neutral\", className, children, ...props }, ref) {\n return (\n <TruncatedText\n ref={ref}\n className={cn(\n \"inline-block h-22 max-w-full min-w-0 shrink-0 rounded-pill px-8 py-3 align-middle text-caption font-medium tabular\",\n \"forced-colors:outline forced-colors:-outline-offset-1\",\n KAESO_BADGE_VARIANTS.tone[tone].classes,\n className,\n )}\n {...props}\n >\n {children}\n </TruncatedText>\n );\n});\nif (process.env.NODE_ENV !== \"production\") Badge.displayName = \"Badge\";\n"],"mappings":";;;;;;AAIA,IAAaC,IAAuB,EAClC,MAAM;CACJ,SAAS,EAAE,SAAS,wCAAwC;CAC5D,SAAS,EAAE,SAAS,oCAAoC;CACxD,SAAS,EAAE,SAAS,oCAAoC;CACxD,QAAQ,EAAE,SAAS,kCAAkC;CACrD,MAAM,EAAE,SAAS,8BAA8B;CAC/C,SAAS,EAAE,SAAS,+CAA+C;CACnE,KAAK,EAAE,SAAS,qBAAqB;AACvC,EACF,GACaC,IAA+B,EAAE,MAAM,UAAU,GAOjDC,IAAwB,kBAAwC,SAAe,EAAE,UAAO,WAAW,cAAW,aAAU,GAAGC,KAAS,GAAK;CACpJ,OACE,kBAACC,GAAD;EACO;EACL,WAAWL,EACT,sHACA,yDACAC,EAAqB,KAAKK,EAAK,CAAC,SAChCC,CACF;EACA,GAAIH;EAEH;CACY,CAAA;AAEnB,CAAC;AACD,QAAA,IAAA,aAA6B,iBAAc,EAAM,cAAc"}
@@ -0,0 +1,88 @@
1
+ "use client";
2
+ import { t as e } from "./cn-BjnOAUrA.js";
3
+ import { t } from "./dev-CR1p7gCm.js";
4
+ import { i as n } from "./context-BELWW79w.js";
5
+ import { t as r } from "./icon-CBzOwqrX.js";
6
+ import { t as i } from "./icon-button-Dfwpvmav.js";
7
+ import { forwardRef as a, useState as o } from "react";
8
+ import { jsx as s, jsxs as c } from "react/jsx-runtime";
9
+ import { Alert02Icon as l, AlertCircleIcon as u, Cancel01Icon as d, CheckmarkCircle02Icon as f, InformationCircleIcon as p } from "@hugeicons/core-free-icons";
10
+ //#region src/components/banner/banner.tsx
11
+ var m = {
12
+ tone: {
13
+ neutral: { classes: "bg-fill-1 text-fg" },
14
+ info: { classes: "bg-info-tint text-fg" },
15
+ success: { classes: "bg-success-tint text-fg" },
16
+ warning: { classes: "bg-warning-tint text-fg" },
17
+ danger: { classes: "bg-danger-tint text-fg" }
18
+ },
19
+ layout: {
20
+ inline: { classes: "flex min-h-56 flex-col justify-center rounded-well px-12 py-12" },
21
+ full: { classes: "rounded-none px-24 py-10" }
22
+ }
23
+ }, h = {
24
+ tone: "neutral",
25
+ layout: "inline"
26
+ }, g = {
27
+ neutral: void 0,
28
+ info: p,
29
+ success: f,
30
+ warning: l,
31
+ danger: u
32
+ }, _ = {
33
+ neutral: "text-fg-secondary",
34
+ info: "text-info-text",
35
+ success: "text-success-text",
36
+ warning: "text-warning-text",
37
+ danger: "text-danger-text"
38
+ }, v = /* @__PURE__ */ a(function({ tone: a = "neutral", layout: l = "inline", title: u, children: f, icon: p, actions: h, onDismiss: v, className: y }, b) {
39
+ let [x, S] = o(!1), C = n();
40
+ if (x) return null;
41
+ let w = v && (a === "neutral" || a === "info");
42
+ v && !w && t(`Banner: a ${a} banner can't be dismissed; it stays until its cause is fixed, so onDismiss is ignored.`);
43
+ let T = p ?? g[a];
44
+ return /* @__PURE__ */ s("div", {
45
+ ref: b,
46
+ role: a === "danger" ? "alert" : "status",
47
+ className: e("@container w-full forced-colors:outline forced-colors:-outline-offset-1", m.tone[a].classes, m.layout[l].classes, y),
48
+ children: /* @__PURE__ */ c("div", {
49
+ className: e("flex items-start gap-8", h && "@banner:items-center"),
50
+ children: [/* @__PURE__ */ c("div", {
51
+ className: "flex min-w-0 flex-1 flex-col gap-12 @banner:flex-row @banner:items-center @banner:gap-24",
52
+ children: [/* @__PURE__ */ c("div", {
53
+ className: "flex min-w-0 flex-1 items-start gap-8",
54
+ children: [T && /* @__PURE__ */ s(r, {
55
+ icon: T,
56
+ size: "sm",
57
+ className: e("mt-2", _[a])
58
+ }), /* @__PURE__ */ c("div", {
59
+ className: "flex min-w-0 flex-1 flex-col gap-2 text-body",
60
+ children: [u && /* @__PURE__ */ s("span", {
61
+ className: "font-semibold text-fg",
62
+ children: u
63
+ }), f && /* @__PURE__ */ s("div", {
64
+ className: "text-fg text-pretty",
65
+ children: f
66
+ })]
67
+ })]
68
+ }), h && /* @__PURE__ */ s("div", {
69
+ className: e("flex shrink-0 flex-wrap items-center gap-8 @banner:ml-0", T && "ml-24"),
70
+ children: h
71
+ })]
72
+ }), w && /* @__PURE__ */ s(i, {
73
+ icon: d,
74
+ "aria-label": C("banner.dismiss", "Dismiss"),
75
+ size: "xs",
76
+ className: "-my-2 -mr-6 hover:bg-fill-2 active:bg-fill-3",
77
+ onClick: () => {
78
+ S(!0), v?.();
79
+ }
80
+ })]
81
+ })
82
+ });
83
+ });
84
+ process.env.NODE_ENV !== "production" && (v.displayName = "Banner");
85
+ //#endregion
86
+ export { h as n, m as r, v as t };
87
+
88
+ //# sourceMappingURL=banner-B3DGLTBu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"banner-B3DGLTBu.js","names":["__icon_InformationCircleIcon","__icon_CheckmarkCircle02Icon","__icon_Alert02Icon","__icon_AlertCircleIcon","__icon_Cancel01Icon","cn","useUiText","Icon","IconButton","KAESO_BANNER_VARIANTS","KAESO_BANNER_DEFAULT_VARIANTS","ICON","InformationCircleIcon","CheckmarkCircle02Icon","Alert02Icon","AlertCircleIcon","ICON_TONE","Banner","hidden","setHidden","useState","t","dismissible","onDismiss","tone","devWarn","mark","icon","layout","className","actions","title","children","Cancel01Icon"],"sources":["../../src/components/banner/banner.tsx"],"sourcesContent":["import { forwardRef, useState, type ReactNode } from \"react\";\nimport { cn } from \"../../utils/cn.js\";\nimport { InformationCircleIcon as __icon_InformationCircleIcon, CheckmarkCircle02Icon as __icon_CheckmarkCircle02Icon, Alert02Icon as __icon_Alert02Icon, AlertCircleIcon as __icon_AlertCircleIcon, Cancel01Icon as __icon_Cancel01Icon } from \"@hugeicons/core-free-icons\";\nimport { Icon, type IconData } from \"../icon/icon.js\";\nimport { IconButton } from \"../icon-button/icon-button.js\";\nimport { useUiText } from \"../../i18n/context.js\";\nimport { devWarn } from \"../../utils/dev.js\";\n\nexport const KAESO_BANNER_VARIANTS = {\n tone: {\n neutral: { classes: \"bg-fill-1 text-fg\" },\n info: { classes: \"bg-info-tint text-fg\" },\n success: { classes: \"bg-success-tint text-fg\" },\n warning: { classes: \"bg-warning-tint text-fg\" },\n danger: { classes: \"bg-danger-tint text-fg\" },\n },\n layout: {\n inline: {\n classes: \"flex min-h-56 flex-col justify-center rounded-well px-12 py-12\",\n },\n full: { classes: \"rounded-none px-24 py-10\" },\n },\n} as const;\nexport const KAESO_BANNER_DEFAULT_VARIANTS = { tone: \"neutral\", layout: \"inline\" } as const;\n\nconst ICON: Record<keyof typeof KAESO_BANNER_VARIANTS.tone, IconData | undefined> = {\n neutral: undefined,\n info: __icon_InformationCircleIcon,\n success: __icon_CheckmarkCircle02Icon,\n warning: __icon_Alert02Icon,\n danger: __icon_AlertCircleIcon,\n};\nconst ICON_TONE = {\n neutral: \"text-fg-secondary\",\n info: \"text-info-text\",\n success: \"text-success-text\",\n warning: \"text-warning-text\",\n danger: \"text-danger-text\",\n} as const;\n\nexport interface BannerProps {\n tone?: keyof typeof KAESO_BANNER_VARIANTS.tone | undefined;\n layout?: keyof typeof KAESO_BANNER_VARIANTS.layout | undefined;\n title?: ReactNode | undefined;\n children?: ReactNode | undefined;\n icon?: IconData | undefined;\n actions?: ReactNode | undefined;\n onDismiss?: (() => void) | undefined;\n className?: string | undefined;\n}\n\nexport const Banner = /* @__PURE__ */ forwardRef<HTMLDivElement, BannerProps>(function Banner(\n { tone = \"neutral\", layout = \"inline\", title, children, icon, actions, onDismiss, className },\n ref,\n) {\n const [hidden, setHidden] = useState(false);\n const t = useUiText();\n if (hidden) return null;\n const dismissible = onDismiss && (tone === \"neutral\" || tone === \"info\");\n if (onDismiss && !dismissible) devWarn(`Banner: a ${tone} banner can't be dismissed; it stays until its cause is fixed, so onDismiss is ignored.`);\n const mark = icon ?? ICON[tone];\n return (\n <div\n ref={ref}\n role={tone === \"danger\" ? \"alert\" : \"status\"}\n className={cn(\n \"@container w-full forced-colors:outline forced-colors:-outline-offset-1\",\n KAESO_BANNER_VARIANTS.tone[tone].classes,\n KAESO_BANNER_VARIANTS.layout[layout].classes,\n className,\n )}\n >\n <div className={cn(\"flex items-start gap-8\", actions && \"@banner:items-center\")}>\n <div className=\"flex min-w-0 flex-1 flex-col gap-12 @banner:flex-row @banner:items-center @banner:gap-24\">\n <div className=\"flex min-w-0 flex-1 items-start gap-8\">\n {mark && <Icon icon={mark} size=\"sm\" className={cn(\"mt-2\", ICON_TONE[tone])} />}\n <div className=\"flex min-w-0 flex-1 flex-col gap-2 text-body\">\n {title && <span className=\"font-semibold text-fg\">{title}</span>}\n {children && <div className=\"text-fg text-pretty\">{children}</div>}\n </div>\n </div>\n {actions && <div className={cn(\"flex shrink-0 flex-wrap items-center gap-8 @banner:ml-0\", mark && \"ml-24\")}>{actions}</div>}\n </div>\n {dismissible && (\n <IconButton\n icon={__icon_Cancel01Icon}\n aria-label={t(\"banner.dismiss\", \"Dismiss\")}\n size=\"xs\"\n className=\"-my-2 -mr-6 hover:bg-fill-2 active:bg-fill-3\"\n onClick={() => {\n setHidden(true);\n onDismiss?.();\n }}\n />\n )}\n </div>\n </div>\n );\n});\nif (process.env.NODE_ENV !== \"production\") Banner.displayName = \"Banner\";\n"],"mappings":";;;;;;;;;;AAQA,IAAaS,IAAwB;CACnC,MAAM;EACJ,SAAS,EAAE,SAAS,oBAAoB;EACxC,MAAM,EAAE,SAAS,uBAAuB;EACxC,SAAS,EAAE,SAAS,0BAA0B;EAC9C,SAAS,EAAE,SAAS,0BAA0B;EAC9C,QAAQ,EAAE,SAAS,yBAAyB;CAC9C;CACA,QAAQ;EACN,QAAQ,EACN,SAAS,iEACX;EACA,MAAM,EAAE,SAAS,2BAA2B;CAC9C;AACF,GACaC,IAAgC;CAAE,MAAM;CAAW,QAAQ;AAAS,GAE3EC,IAA8E;CAClF,SAAS,KAAA;CACT,MAAMX;CACN,SAASC;CACT,SAASC;CACT,QAAQC;AACV,GACMa,IAAY;CAChB,SAAS;CACT,MAAM;CACN,SAAS;CACT,SAAS;CACT,QAAQ;AACV,GAaaC,IAAyB,kBAAwC,SAC5E,EAAE,UAAO,WAAW,YAAS,UAAU,UAAO,aAAU,SAAM,YAAS,cAAW,gBAClF,GACA;CACA,IAAM,CAACC,GAAQC,KAAaC,EAAS,EAAK,GACpCC,IAAIf,EAAU;CACpB,IAAIY,GAAQ,OAAO;CACnB,IAAMI,IAAcC,MAAcC,MAAS,aAAaA,MAAS;CACjE,AAAID,KAAa,CAACD,KAAaG,EAAQ,aAAaD,EAAK,wFAAwF;CACjJ,IAAME,IAAOC,KAAQhB,EAAKa;CAC1B,OACE,kBAAC,OAAD;EACO;EACL,MAAMA,MAAS,WAAW,UAAU;EACpC,WAAWnB,EACT,2EACAI,EAAsB,KAAKe,EAAK,CAAC,SACjCf,EAAsB,OAAOmB,EAAO,CAAC,SACrCC,CACF;EAEA,UAAA,kBAAC,OAAD;GAAK,WAAWxB,EAAG,0BAA0ByB,KAAW,sBAAsB;GAA9E,UAAA,CACE,kBAAC,OAAD;IAAK,WAAU;IAAf,UAAA,CACE,kBAAC,OAAD;KAAK,WAAU;KAAf,UAAA,CACGJ,KAAQ,kBAACnB,GAAD;MAAM,MAAMmB;MAAM,MAAK;MAAK,WAAWrB,EAAG,QAAQW,EAAUQ,EAAK;KAAI,CAAA,GAC9E,kBAAC,OAAD;MAAK,WAAU;MAAf,UAAA,CACGO,KAAS,kBAAC,QAAD;OAAM,WAAU;OAAyB,UAAAA;MAAY,CAAA,GAC9DC,KAAY,kBAAC,OAAD;OAAK,WAAU;OAAuB;MAAc,CAAA,CAC9D;KACF,CAAA,CAAA;IACJ,CAAA,GAAAF,KAAW,kBAAC,OAAD;KAAK,WAAWzB,EAAG,2DAA2DqB,KAAQ,OAAO;KAAI,UAAAI;IAAa,CAAA,CACvH;GACJ,CAAA,GAAAR,KACC,kBAACd,GAAD;IACE,MAAMJ;IACN,cAAYiB,EAAE,kBAAkB,SAAS;IACzC,MAAK;IACL,WAAU;IACV,eAAe;KAEb,AADAF,EAAU,EAAI,GACdI,IAAY;IACd;GACD,CAAA,CAEA;;CACF,CAAA;AAET,CAAC;AACD,QAAA,IAAA,aAA6B,iBAAc,EAAO,cAAc"}
@@ -0,0 +1,202 @@
1
+ "use client";
2
+ import { t as e } from "./cn-BjnOAUrA.js";
3
+ import { i as t, r as n } from "./dev-CR1p7gCm.js";
4
+ import { n as r, r as i } from "./link-provider-cvl8lSTT.js";
5
+ import { t as a } from "./icon-CBzOwqrX.js";
6
+ import { i as o } from "./kbd-8A0ML_up.js";
7
+ import { r as s } from "./tooltip-Tkm-urbi.js";
8
+ import { t as ee } from "./use-truncated-CW0hByYt.js";
9
+ import { i as te, r as c } from "./loader-zo8CCIGJ.js";
10
+ import { r as ne } from "./swap-text-SlUjrTlG.js";
11
+ import { forwardRef as l, useRef as u, useState as d } from "react";
12
+ import { Fragment as f, jsx as p, jsxs as re } from "react/jsx-runtime";
13
+ //#region src/components/button/button.tsx
14
+ var m = {
15
+ variant: {
16
+ primary: { classes: "material-primary" },
17
+ secondary: { classes: "material-secondary" },
18
+ ghost: { classes: "material-ghost" },
19
+ quiet: { classes: "material-ghost text-fg-secondary hover:text-fg active:text-fg open:text-fg" },
20
+ soft: { classes: "material-soft" },
21
+ danger: { classes: "material-danger" },
22
+ "danger-secondary": { classes: "material-danger-secondary" },
23
+ link: { classes: "bg-transparent text-fg underline decoration-fg-tertiary decoration-1 underline-offset-3 hover:decoration-current active:decoration-current open:decoration-current disabled:text-fg-disabled" }
24
+ },
25
+ size: {
26
+ xs: { classes: "h-24 px-10 gap-4 text-caption font-medium ghost-end:-mr-10 ghost-start:-ml-10" },
27
+ sm: { classes: "h-32 px-12 gap-6 text-body font-medium ghost-end:-mr-12 ghost-start:-ml-12" },
28
+ md: { classes: "h-36 px-16 gap-6 text-body font-medium ghost-end:-mr-16 ghost-start:-ml-16" },
29
+ lg: { classes: "h-40 px-18 gap-8 text-body font-medium ghost-end:-mr-18 ghost-start:-ml-18" },
30
+ xl: { classes: "h-48 px-22 gap-8 text-body-lg font-medium ghost-end:-mr-22 ghost-start:-ml-22" }
31
+ },
32
+ shape: {
33
+ pill: { classes: "rounded-pill" },
34
+ circle: { classes: "rounded-pill p-0 justify-center ghost-end:mr-0 ghost-start:ml-0" }
35
+ }
36
+ }, h = {
37
+ variant: "secondary",
38
+ size: "md",
39
+ shape: "pill"
40
+ }, g = {
41
+ xs: "pl-8",
42
+ sm: "pl-10",
43
+ md: "pl-14",
44
+ lg: "pl-16",
45
+ xl: "pl-20"
46
+ }, _ = {
47
+ xs: "pr-8",
48
+ sm: "pr-10",
49
+ md: "pr-14",
50
+ lg: "pr-16",
51
+ xl: "pr-20"
52
+ }, v = {
53
+ xs: "size-24",
54
+ sm: "size-32",
55
+ md: "size-36",
56
+ lg: "size-40",
57
+ xl: "size-48"
58
+ }, y = {
59
+ xs: "xs",
60
+ sm: "sm",
61
+ md: "sm",
62
+ lg: "md",
63
+ xl: "lg"
64
+ }, b = {
65
+ cmd: "Meta",
66
+ ctrl: "Control",
67
+ alt: "Alt",
68
+ option: "Alt",
69
+ shift: "Shift",
70
+ enter: "Enter",
71
+ esc: "Escape",
72
+ backspace: "Backspace",
73
+ tab: "Tab",
74
+ up: "ArrowUp",
75
+ down: "ArrowDown",
76
+ left: "ArrowLeft",
77
+ right: "ArrowRight"
78
+ };
79
+ function x(e) {
80
+ let t = Array.isArray(e[0]) ? e.length === 1 ? e[0] : [] : e;
81
+ if (!t.length) return;
82
+ let n = (e) => t.map((t) => t.toLowerCase() === "mod" ? e : b[t.toLowerCase()] ?? (t.length === 1 ? t.toUpperCase() : t)).join("+");
83
+ return t.some((e) => e.toLowerCase() === "mod") ? `${n("Meta")} ${n("Control")}` : n("");
84
+ }
85
+ function S({ variant: t = h.variant, size: n = h.size, shape: r = h.shape, leading: i = !1, trailing: a = !1, fullWidth: o = !1 } = {}) {
86
+ return e("relative inline-flex max-w-full shrink-0 select-none items-center justify-center whitespace-nowrap no-underline", "cursor-pointer transition-control focus-ring tap-target disabled:cursor-not-allowed", m.size[n].classes, m.shape[r].classes, r === "circle" && v[n], r === "pill" && i && t !== "link" && g[n], r === "pill" && a && t !== "link" && _[n], t === "link" && "-mx-2 h-auto rounded-code px-2 align-baseline outline-offset-0", m.variant[t].classes, o && "w-full");
87
+ }
88
+ var C = /* @__PURE__ */ l(function(l, m) {
89
+ let { variant: g = h.variant, size: _ = h.size, loading: v = !1, disabled: b = !1, disabledReason: C, href: w, target: T, rel: E, fullWidth: ie, className: D, type: ae, onClick: oe, onFocus: O, onBlur: k, ...A } = l, j = i(), [se, M] = d(!1), N = u(null);
90
+ t("Button", D);
91
+ let P = te(v), F = v || P, I = l.shape === "circle", L = y[_], R = L === "xs" ? "xs" : L === "sm" ? "sm" : "md", z = I ? void 0 : l.leadingIcon, B = I ? void 0 : l.trailingIcon, V = I ? void 0 : l.shortcut, H = I ? void 0 : l.count, U = I ? void 0 : l.reserveLabels;
92
+ I && n("Button", !!l["aria-label"]);
93
+ let W = { ...A };
94
+ for (let e of [
95
+ "shape",
96
+ "icon",
97
+ "leadingIcon",
98
+ "trailingIcon",
99
+ "shortcut",
100
+ "count",
101
+ "children",
102
+ "reserveLabels"
103
+ ]) delete W[e];
104
+ let G = (!!C || se) && b, K = ee(N, !I), ce = !!C && b && C !== l["aria-label"], le = F || G, q = e(S({
105
+ variant: g,
106
+ size: _,
107
+ shape: I ? "circle" : "pill",
108
+ leading: !!z,
109
+ trailing: !!B || !!V || H !== void 0,
110
+ fullWidth: !!ie
111
+ }), F && "cursor-progress", _ === "xs" && H !== void 0 && !B && !V && "pr-2", D), J = I ? P ? /* @__PURE__ */ p(c, { size: R }) : /* @__PURE__ */ p(a, {
112
+ icon: l.icon,
113
+ size: L
114
+ }) : /* @__PURE__ */ re(f, { children: [
115
+ P && z ? /* @__PURE__ */ p(c, { size: R }) : z ? /* @__PURE__ */ p(a, {
116
+ icon: z,
117
+ size: L
118
+ }) : null,
119
+ /* @__PURE__ */ p("span", {
120
+ ref: N,
121
+ className: e("min-w-0 truncate", P && !z && "opacity-0"),
122
+ children: U ? /* @__PURE__ */ p(ne, {
123
+ reserve: U,
124
+ children: l.children
125
+ }) : l.children
126
+ }),
127
+ H !== void 0 && /* @__PURE__ */ p("span", {
128
+ className: e("inline-flex h-20 min-w-20 items-center justify-center rounded-pill px-6 text-caption font-medium tabular", g === "primary" ? "bg-on-ink/15 text-on-ink" : g === "danger" ? "bg-on-danger/20 text-on-danger" : "bg-fill-2 text-fg-secondary"),
129
+ children: H
130
+ }),
131
+ V && /* @__PURE__ */ p(o, {
132
+ "aria-hidden": !0,
133
+ "data-shortcut": "",
134
+ keys: V,
135
+ tone: g === "primary" || g === "danger" ? "onInk" : "default",
136
+ className: e(g === "danger" && "kbd-on-danger")
137
+ }),
138
+ B && /* @__PURE__ */ p(a, {
139
+ icon: B,
140
+ size: L
141
+ }),
142
+ P && !z && /* @__PURE__ */ p(c, {
143
+ size: R,
144
+ className: "absolute inset-0 m-auto"
145
+ })
146
+ ] }), Y = (e) => {
147
+ le ? e.preventDefault() : oe?.(e);
148
+ }, X = (e) => {
149
+ M(!0), O?.(e);
150
+ }, Z = (e) => {
151
+ M(!1), k?.(e);
152
+ }, Q;
153
+ if (w && !b) {
154
+ let e = r(w);
155
+ Q = /* @__PURE__ */ p(j, {
156
+ ref: m,
157
+ href: w,
158
+ className: q,
159
+ ...T ? { target: T } : e ? { target: "_blank" } : {},
160
+ ...E ? { rel: E } : e ? { rel: "noopener noreferrer" } : {},
161
+ ...W,
162
+ ...V ? { "aria-keyshortcuts": x(V) } : {},
163
+ ...F ? {
164
+ "aria-busy": !0,
165
+ "data-loading": ""
166
+ } : {},
167
+ onClick: Y,
168
+ onFocus: X,
169
+ onBlur: Z,
170
+ children: J
171
+ });
172
+ } else Q = /* @__PURE__ */ p("button", {
173
+ ref: m,
174
+ type: ae ?? "button",
175
+ className: q,
176
+ disabled: b && !G,
177
+ ...W,
178
+ ...V ? { "aria-keyshortcuts": x(V) } : {},
179
+ ...G ? { "aria-disabled": !0 } : {},
180
+ ...F ? {
181
+ "aria-busy": !0,
182
+ "data-loading": ""
183
+ } : {},
184
+ ...G ? { "data-disabled": "" } : {},
185
+ ...ce ? { "aria-description": C } : {},
186
+ onClick: Y,
187
+ onFocus: X,
188
+ onBlur: Z,
189
+ children: J
190
+ });
191
+ let $ = !!C && !!b;
192
+ return /* @__PURE__ */ p(s, {
193
+ content: $ ? C : K ? l.children : "",
194
+ disabled: !$ && !K,
195
+ children: Q
196
+ });
197
+ });
198
+ process.env.NODE_ENV !== "production" && (C.displayName = "Button");
199
+ //#endregion
200
+ export { S as a, m as i, C as n, h as r, y as t };
201
+
202
+ //# sourceMappingURL=button-IblhXUyZ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button-IblhXUyZ.js","names":["_Fragment","cn","warnStylingClassName","warnMissingName","isExternalHref","useLinkComponent","Icon","KbdSequence","Tooltip","useTruncated","useDelayedLoading","Spinner","SwapText","Fragment$1","KAESO_BUTTON_VARIANTS","KAESO_BUTTON_DEFAULT_VARIANTS","LEADING_ICON_PADDING","TRAILING_ICON_PADDING","CIRCLE","BUTTON_ICON_SIZE","ARIA_KEY","ariaKeyShortcuts","chord","keys","join","k","mod","buttonClasses","size","shape","leading","variant","trailing","fullWidth","Button","rest","props","LinkComp","focused","setFocused","useState","labelRef","useRef","className","spinning","loading","busy","isCircle","iconSize","spinnerSize","leadingIcon","trailingIcon","shortcut","count","reserveLabels","domProps","softDisabled","disabledReason","disabled","cut","describe","inert","classes","content","handleClick","onClick","handleFocus","onFocus","handleBlur","onBlur","el","href","external","target","rel","type","reasonShown"],"sources":["../../src/components/button/button.tsx"],"sourcesContent":["import { forwardRef, useRef, useState, type ButtonHTMLAttributes, type FocusEvent, type MouseEvent, type ReactElement, type ReactNode, type Ref } from \"react\";\nimport { cn } from \"../../utils/cn.js\";\nimport { useLinkComponent, isExternalHref } from \"../../utils/link-provider.js\";\nimport { warnMissingName, warnStylingClassName } from \"../../utils/dev.js\";\nimport { Icon, type IconData, type IconSize } from \"../icon/icon.js\";\nimport { Spinner, useDelayedLoading } from \"../loader/loader.js\";\nimport { KbdSequence } from \"../kbd/kbd.js\";\nimport { Tooltip } from \"../tooltip/tooltip.js\";\nimport { SwapText } from \"../swap-text/swap-text.js\";\nimport { useTruncated } from \"../../hooks/use-truncated.js\";\n\nexport const KAESO_BUTTON_VARIANTS = {\n variant: {\n primary: { classes: \"material-primary\" },\n secondary: { classes: \"material-secondary\" },\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 soft: { classes: \"material-soft\" },\n danger: { classes: \"material-danger\" },\n \"danger-secondary\": { classes: \"material-danger-secondary\" },\n link: {\n classes:\n \"bg-transparent text-fg underline decoration-fg-tertiary decoration-1 underline-offset-3 hover:decoration-current active:decoration-current open:decoration-current disabled:text-fg-disabled\",\n },\n },\n size: {\n xs: { classes: \"h-24 px-10 gap-4 text-caption font-medium ghost-end:-mr-10 ghost-start:-ml-10\" },\n sm: { classes: \"h-32 px-12 gap-6 text-body font-medium ghost-end:-mr-12 ghost-start:-ml-12\" },\n md: { classes: \"h-36 px-16 gap-6 text-body font-medium ghost-end:-mr-16 ghost-start:-ml-16\" },\n lg: { classes: \"h-40 px-18 gap-8 text-body font-medium ghost-end:-mr-18 ghost-start:-ml-18\" },\n xl: {\n classes: \"h-48 px-22 gap-8 text-body-lg font-medium ghost-end:-mr-22 ghost-start:-ml-22\",\n },\n },\n shape: {\n pill: { classes: \"rounded-pill\" },\n circle: { classes: \"rounded-pill p-0 justify-center ghost-end:mr-0 ghost-start:ml-0\" },\n },\n} as const;\nexport const KAESO_BUTTON_DEFAULT_VARIANTS = { variant: \"secondary\", size: \"md\", shape: \"pill\" } as const;\n\nexport type ButtonVariant = keyof typeof KAESO_BUTTON_VARIANTS.variant;\nexport type ButtonSize = keyof typeof KAESO_BUTTON_VARIANTS.size;\nexport type ButtonShape = keyof typeof KAESO_BUTTON_VARIANTS.shape;\n\nconst LEADING_ICON_PADDING: Record<ButtonSize, string> = { xs: \"pl-8\", sm: \"pl-10\", md: \"pl-14\", lg: \"pl-16\", xl: \"pl-20\" };\nconst TRAILING_ICON_PADDING: Record<ButtonSize, string> = { xs: \"pr-8\", sm: \"pr-10\", md: \"pr-14\", lg: \"pr-16\", xl: \"pr-20\" };\nconst CIRCLE: Record<ButtonSize, string> = { xs: \"size-24\", sm: \"size-32\", md: \"size-36\", lg: \"size-40\", xl: \"size-48\" };\nexport const BUTTON_ICON_SIZE: Record<ButtonSize, IconSize> = { xs: \"xs\", sm: \"sm\", md: \"sm\", lg: \"md\", xl: \"lg\" };\n\nconst ARIA_KEY: Record<string, string> = {\n cmd: \"Meta\",\n ctrl: \"Control\",\n alt: \"Alt\",\n option: \"Alt\",\n shift: \"Shift\",\n enter: \"Enter\",\n esc: \"Escape\",\n backspace: \"Backspace\",\n tab: \"Tab\",\n up: \"ArrowUp\",\n down: \"ArrowDown\",\n left: \"ArrowLeft\",\n right: \"ArrowRight\",\n};\n\n// aria-keyshortcuts lists chords only, so a sequence (\"G then L\") gets none; \"mod\" is offered as both platforms' chord.\nfunction ariaKeyShortcuts(keys: string[] | string[][]): string | undefined {\n const chord = (Array.isArray(keys[0]) ? (keys.length === 1 ? keys[0] : []) : keys) as string[];\n if (!chord.length) return undefined;\n const join = (mod: string) =>\n chord.map((k) => (k.toLowerCase() === \"mod\" ? mod : (ARIA_KEY[k.toLowerCase()] ?? (k.length === 1 ? k.toUpperCase() : k)))).join(\"+\");\n return chord.some((k) => k.toLowerCase() === \"mod\") ? `${join(\"Meta\")} ${join(\"Control\")}` : join(\"\");\n}\n\nexport function buttonClasses({\n variant = KAESO_BUTTON_DEFAULT_VARIANTS.variant,\n size = KAESO_BUTTON_DEFAULT_VARIANTS.size,\n shape = KAESO_BUTTON_DEFAULT_VARIANTS.shape,\n leading = false,\n trailing = false,\n fullWidth = false,\n}: {\n variant?: ButtonVariant | undefined;\n size?: ButtonSize | undefined;\n shape?: ButtonShape | undefined;\n leading?: boolean | undefined;\n trailing?: boolean | undefined;\n fullWidth?: boolean | undefined;\n} = {}) {\n return cn(\n \"relative inline-flex max-w-full shrink-0 select-none items-center justify-center whitespace-nowrap no-underline\",\n \"cursor-pointer transition-control focus-ring tap-target disabled:cursor-not-allowed\",\n KAESO_BUTTON_VARIANTS.size[size].classes,\n KAESO_BUTTON_VARIANTS.shape[shape].classes,\n shape === \"circle\" && CIRCLE[size],\n shape === \"pill\" && leading && variant !== \"link\" && LEADING_ICON_PADDING[size],\n shape === \"pill\" && trailing && variant !== \"link\" && TRAILING_ICON_PADDING[size],\n variant === \"link\" && \"-mx-2 h-auto rounded-code px-2 align-baseline outline-offset-0\",\n KAESO_BUTTON_VARIANTS.variant[variant].classes,\n fullWidth && \"w-full\",\n );\n}\n\ninterface CommonProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, \"children\"> {\n variant?: ButtonVariant | undefined;\n size?: ButtonSize | undefined;\n loading?: boolean | undefined;\n disabledReason?: string | undefined;\n href?: string | undefined;\n target?: string | undefined;\n rel?: string | undefined;\n fullWidth?: boolean | undefined;\n \"data-force\"?: string | undefined;\n}\n\nexport interface PillButtonProps extends CommonProps {\n shape?: \"pill\" | undefined;\n children: ReactNode;\n leadingIcon?: IconData | undefined;\n trailingIcon?: IconData | undefined;\n shortcut?: string[] | string[][] | undefined;\n count?: number | undefined;\n reserveLabels?: ReactNode[] | undefined;\n}\n\nexport interface CircleButtonProps extends CommonProps {\n shape: \"circle\";\n icon: IconData;\n \"aria-label\": string;\n children?: never | undefined;\n}\n\nexport type ButtonProps = PillButtonProps | CircleButtonProps;\n\nexport const Button = /* @__PURE__ */ forwardRef<HTMLButtonElement | HTMLAnchorElement, ButtonProps>(function Button(props, ref) {\n const {\n variant = KAESO_BUTTON_DEFAULT_VARIANTS.variant,\n size = KAESO_BUTTON_DEFAULT_VARIANTS.size,\n loading = false,\n disabled = false,\n disabledReason,\n href,\n target,\n rel,\n fullWidth,\n className,\n type,\n onClick,\n onFocus,\n onBlur,\n ...rest\n } = props;\n const LinkComp = useLinkComponent();\n const [focused, setFocused] = useState(false);\n const labelRef = useRef<HTMLSpanElement>(null);\n warnStylingClassName(\"Button\", className);\n\n const spinning = useDelayedLoading(loading);\n const busy = loading || spinning;\n const isCircle = props.shape === \"circle\";\n const iconSize = BUTTON_ICON_SIZE[size];\n const spinnerSize = iconSize === \"xs\" ? \"xs\" : iconSize === \"sm\" ? \"sm\" : \"md\";\n const leadingIcon = !isCircle ? (props as PillButtonProps).leadingIcon : undefined;\n const trailingIcon = !isCircle ? (props as PillButtonProps).trailingIcon : undefined;\n const shortcut = !isCircle ? (props as PillButtonProps).shortcut : undefined;\n const count = !isCircle ? (props as PillButtonProps).count : undefined;\n const reserveLabels = !isCircle ? (props as PillButtonProps).reserveLabels : undefined;\n if (isCircle) warnMissingName(\"Button\", !!(props as CircleButtonProps)[\"aria-label\"]);\n\n const domProps = { ...rest } as Record<string, unknown>;\n for (const k of [\"shape\", \"icon\", \"leadingIcon\", \"trailingIcon\", \"shortcut\", \"count\", \"children\", \"reserveLabels\"]) delete domProps[k];\n\n // A natively disabled button that holds focus drops it to <body>; stay focusable until it blurs.\n const softDisabled = (!!disabledReason || focused) && disabled;\n const cut = useTruncated(labelRef, !isCircle);\n const describe = !!disabledReason && disabled && disabledReason !== (props as { \"aria-label\"?: string | undefined })[\"aria-label\"];\n const inert = busy || softDisabled;\n const classes = cn(\n buttonClasses({\n variant,\n size,\n shape: isCircle ? \"circle\" : \"pill\",\n leading: !!leadingIcon,\n trailing: !!trailingIcon || !!shortcut || count !== undefined,\n fullWidth: !!fullWidth,\n }),\n busy && \"cursor-progress\",\n size === \"xs\" && count !== undefined && !trailingIcon && !shortcut && \"pr-2\",\n className,\n );\n\n const content = isCircle ? (\n spinning ? (\n <Spinner size={spinnerSize} />\n ) : (\n <Icon icon={(props as CircleButtonProps).icon} size={iconSize} />\n )\n ) : (\n <>\n {spinning && leadingIcon ? <Spinner size={spinnerSize} /> : leadingIcon ? <Icon icon={leadingIcon} size={iconSize} /> : null}\n <span ref={labelRef} className={cn(\"min-w-0 truncate\", spinning && !leadingIcon && \"opacity-0\")}>\n {reserveLabels ? <SwapText reserve={reserveLabels}>{(props as PillButtonProps).children}</SwapText> : (props as PillButtonProps).children}\n </span>\n {count !== undefined && (\n <span\n className={cn(\n \"inline-flex h-20 min-w-20 items-center justify-center rounded-pill px-6 text-caption font-medium tabular\",\n variant === \"primary\" ? \"bg-on-ink/15 text-on-ink\" : variant === \"danger\" ? \"bg-on-danger/20 text-on-danger\" : \"bg-fill-2 text-fg-secondary\",\n )}\n >\n {count}\n </span>\n )}\n {shortcut && (\n <KbdSequence\n aria-hidden\n data-shortcut=\"\"\n keys={shortcut}\n tone={variant === \"primary\" || variant === \"danger\" ? \"onInk\" : \"default\"}\n className={cn(variant === \"danger\" && \"kbd-on-danger\")}\n />\n )}\n {trailingIcon && <Icon icon={trailingIcon} size={iconSize} />}\n {spinning && !leadingIcon && <Spinner size={spinnerSize} className=\"absolute inset-0 m-auto\" />}\n </>\n );\n\n const handleClick = (e: MouseEvent<HTMLButtonElement & HTMLAnchorElement>) => {\n if (inert) {\n e.preventDefault();\n return;\n }\n onClick?.(e as MouseEvent<HTMLButtonElement>);\n };\n\n const handleFocus = (e: FocusEvent<HTMLButtonElement & HTMLAnchorElement>) => {\n setFocused(true);\n onFocus?.(e as FocusEvent<HTMLButtonElement>);\n };\n const handleBlur = (e: FocusEvent<HTMLButtonElement & HTMLAnchorElement>) => {\n setFocused(false);\n onBlur?.(e as FocusEvent<HTMLButtonElement>);\n };\n\n let el: ReactNode;\n if (href && !disabled) {\n const external = isExternalHref(href);\n el = (\n <LinkComp\n ref={ref as Ref<HTMLAnchorElement>}\n href={href}\n className={classes}\n {...(target ? { target } : external ? { target: \"_blank\" } : {})}\n {...(rel ? { rel } : external ? { rel: \"noopener noreferrer\" } : {})}\n {...(domProps as object)}\n {...(shortcut ? { \"aria-keyshortcuts\": ariaKeyShortcuts(shortcut) } : {})}\n {...(busy ? { \"aria-busy\": true, \"data-loading\": \"\" } : {})}\n onClick={handleClick}\n onFocus={handleFocus}\n onBlur={handleBlur}\n >\n {content}\n </LinkComp>\n );\n } else {\n el = (\n <button\n ref={ref as Ref<HTMLButtonElement>}\n type={type ?? \"button\"}\n className={classes}\n disabled={disabled && !softDisabled}\n {...(domProps as object)}\n {...(shortcut ? { \"aria-keyshortcuts\": ariaKeyShortcuts(shortcut) } : {})}\n {...(softDisabled ? { \"aria-disabled\": true } : {})}\n {...(busy ? { \"aria-busy\": true, \"data-loading\": \"\" } : {})}\n {...(softDisabled ? { \"data-disabled\": \"\" } : {})}\n {...(describe ? { \"aria-description\": disabledReason } : {})}\n onClick={handleClick}\n onFocus={handleFocus}\n onBlur={handleBlur}\n >\n {content}\n </button>\n );\n }\n\n const reasonShown = !!disabledReason && !!disabled;\n // The Tooltip stays mounted when it has nothing to say: unwrapping would remount the button and drop its focus.\n return (\n <Tooltip content={reasonShown ? disabledReason : cut ? (props as PillButtonProps).children : \"\"} disabled={!reasonShown && !cut}>\n {el as ReactElement}\n </Tooltip>\n );\n});\nif (process.env.NODE_ENV !== \"production\") Button.displayName = \"Button\";\n"],"mappings":";;;;;;;;;;;;;AAWA,IAAac,IAAwB;CACnC,SAAS;EACP,SAAS,EAAE,SAAS,mBAAmB;EACvC,WAAW,EAAE,SAAS,qBAAqB;EAC3C,OAAO,EAAE,SAAS,iBAAiB;EACnC,OAAO,EACL,SAAS,6EACX;EACA,MAAM,EAAE,SAAS,gBAAgB;EACjC,QAAQ,EAAE,SAAS,kBAAkB;EACrC,oBAAoB,EAAE,SAAS,4BAA4B;EAC3D,MAAM,EACJ,SACE,+LACJ;CACF;CACA,MAAM;EACJ,IAAI,EAAE,SAAS,gFAAgF;EAC/F,IAAI,EAAE,SAAS,6EAA6E;EAC5F,IAAI,EAAE,SAAS,6EAA6E;EAC5F,IAAI,EAAE,SAAS,6EAA6E;EAC5F,IAAI,EACF,SAAS,gFACX;CACF;CACA,OAAO;EACL,MAAM,EAAE,SAAS,eAAe;EAChC,QAAQ,EAAE,SAAS,kEAAkE;CACvF;AACF,GACaC,IAAgC;CAAE,SAAS;CAAa,MAAM;CAAM,OAAO;AAAO,GAMzFC,IAAmD;CAAE,IAAI;CAAQ,IAAI;CAAS,IAAI;CAAS,IAAI;CAAS,IAAI;AAAQ,GACpHC,IAAoD;CAAE,IAAI;CAAQ,IAAI;CAAS,IAAI;CAAS,IAAI;CAAS,IAAI;AAAQ,GACrHC,IAAqC;CAAE,IAAI;CAAW,IAAI;CAAW,IAAI;CAAW,IAAI;CAAW,IAAI;AAAU,GAC1GC,IAAiD;CAAE,IAAI;CAAM,IAAI;CAAM,IAAI;CAAM,IAAI;CAAM,IAAI;AAAK,GAE3GC,IAAmC;CACvC,KAAK;CACL,MAAM;CACN,KAAK;CACL,QAAQ;CACR,OAAO;CACP,OAAO;CACP,KAAK;CACL,WAAW;CACX,KAAK;CACL,IAAI;CACJ,MAAM;CACN,MAAM;CACN,OAAO;AACT;AAGA,SAASC,EAAiB,GAAiD;CACzE,IAAMC,IAAS,MAAM,QAAQC,EAAK,EAAE,IAAKA,EAAK,WAAW,IAAIA,EAAK,KAAK,CAAC,IAAKA;CAC7E,IAAI,CAACD,EAAM,QAAQ;CACnB,IAAME,KAAQ,MACZF,EAAM,KAAK,MAAOG,EAAE,YAAY,MAAM,QAAQC,IAAON,EAASK,EAAE,YAAY,OAAOA,EAAE,WAAW,IAAIA,EAAE,YAAY,IAAIA,EAAI,CAAC,CAAC,KAAK,GAAG;CACtI,OAAOH,EAAM,MAAM,MAAMG,EAAE,YAAY,MAAM,KAAK,IAAI,GAAGD,EAAK,MAAM,EAAE,GAAGA,EAAK,SAAS,MAAMA,EAAK,EAAE;AACtG;AAEA,SAAgBG,EAAc,EAC5B,aAAUZ,EAA8B,SACxC,UAAOA,EAA8B,MACrC,WAAQA,EAA8B,OACtC,aAAU,IACV,cAAW,IACX,eAAY,OAQV,CAAC,GAAG;CACN,OAAOd,EACL,mHACA,uFACAa,EAAsB,KAAKc,EAAK,CAAC,SACjCd,EAAsB,MAAMe,EAAM,CAAC,SACnCA,MAAU,YAAYX,EAAOU,IAC7BC,MAAU,UAAUC,KAAWC,MAAY,UAAUf,EAAqBY,IAC1EC,MAAU,UAAUG,KAAYD,MAAY,UAAUd,EAAsBW,IAC5EG,MAAY,UAAU,kEACtBjB,EAAsB,QAAQiB,EAAQ,CAAC,SACvCE,KAAa,QACf;AACF;AAiCA,IAAaC,IAAyB,kBAA+D,SAAgB,GAAO,GAAK;CAC/H,IAAM,EACJ,aAAUnB,EAA8B,SACxC,UAAOA,EAA8B,MACrC,aAAU,IACV,cAAW,IACX,mBACA,SACA,WACA,QACA,eACA,cACA,UACA,aACA,YACA,WACA,GAAGoB,MACDC,GACEC,IAAWhC,EAAiB,GAC5B,CAACiC,IAASC,KAAcC,EAAS,EAAK,GACtCC,IAAWC,EAAwB,IAAI;CAC7C,EAAqB,UAAUC,CAAS;CAExC,IAAMC,IAAWlC,GAAkBmC,CAAO,GACpCC,IAAOD,KAAWD,GAClBG,IAAWX,EAAM,UAAU,UAC3BY,IAAW7B,EAAiBS,IAC5BqB,IAAcD,MAAa,OAAO,OAAOA,MAAa,OAAO,OAAO,MACpEE,IAAeH,IAAoD,KAAA,IAAxCX,EAA0B,aACrDe,IAAgBJ,IAAqD,KAAA,IAAzCX,EAA0B,cACtDgB,IAAYL,IAAiD,KAAA,IAArCX,EAA0B,UAClDiB,IAASN,IAA8C,KAAA,IAAlCX,EAA0B,OAC/CkB,IAAiBP,IAAsD,KAAA,IAA1CX,EAA0B;CAC7D,AAAIW,KAAU5C,EAAgB,UAAU,CAAC,CAAEiC,EAA4B,aAAa;CAEpF,IAAMmB,IAAW,EAAE,GAAGpB,EAAK;CAC3B,KAAK,IAAMV,KAAK;EAAC;EAAS;EAAQ;EAAe;EAAgB;EAAY;EAAS;EAAY;CAAe,GAAG,OAAO8B,EAAS9B;CAGpI,IAAM+B,KAAgB,CAAC,CAACC,KAAkBnB,OAAYoB,GAChDC,IAAMlD,GAAagC,GAAU,CAACM,CAAQ,GACtCa,KAAW,CAAC,CAACH,KAAkBC,KAAYD,MAAoBrB,EAAgD,eAC/GyB,KAAQf,KAAQU,GAChBM,IAAU7D,EACd0B,EAAc;EACZ;EACA;EACA,OAAOoB,IAAW,WAAW;EAC7B,SAAS,CAAC,CAACG;EACX,UAAU,CAAC,CAACC,KAAgB,CAAC,CAACC,KAAYC,MAAU,KAAA;EACpD,WAAW,CAAC,CAACpB;CACf,CAAC,GACDa,KAAQ,mBACRlB,MAAS,QAAQyB,MAAU,KAAA,KAAa,CAACF,KAAgB,CAACC,KAAY,QACtET,CACF,GAEMoB,IAAUhB,IACdH,IACE,kBAACjC,GAAD,EAAS,MAAMsC,EAAc,CAAA,IAE7B,kBAAC3C,GAAD;EAAM,MAAO8B,EAA4B;EAAM,MAAMY;CAAW,CAAA,IAGlE,mBAAAhD,GAAA,EAAA,UAAA;EACG4C,KAAYM,IAAc,kBAACvC,GAAD,EAAS,MAAMsC,EAAc,CAAA,IAAIC,IAAc,kBAAC5C,GAAD;GAAM,MAAM4C;GAAa,MAAMF;EAAW,CAAA,IAAI;EACxH,kBAAC,QAAD;GAAM,KAAKP;GAAU,WAAWxC,EAAG,oBAAoB2C,KAAY,CAACM,KAAe,WAAW;GAC3F,UAAAI,IAAgB,kBAAC1C,IAAD;IAAU,SAAS0C;IAAiB,UAAAlB,EAA0B;GAAmB,CAAA,IAAKA,EAA0B;EAC7H,CAAA;EACLiB,MAAU,KAAA,KACT,kBAAC,QAAD;GACE,WAAWpD,EACT,4GACA8B,MAAY,YAAY,6BAA6BA,MAAY,WAAW,mCAAmC,6BACjH;GAEC,UAAAsB;EACG,CAAA;EAEPD,KACC,kBAAC7C,GAAD;GACE,eAAA;GACA,iBAAc;GACd,MAAM6C;GACN,MAAMrB,MAAY,aAAaA,MAAY,WAAW,UAAU;GAChE,WAAW9B,EAAG8B,MAAY,YAAY,eAAe;EACtD,CAAA;EAEFoB,KAAgB,kBAAC7C,GAAD;GAAM,MAAM6C;GAAc,MAAMH;EAAW,CAAA;EAC3DJ,KAAY,CAACM,KAAe,kBAACvC,GAAD;GAAS,MAAMsC;GAAa,WAAU;EAA2B,CAAA;CAC9F,EAAA,CAAA,GAGEe,KAAe,MAAyD;EAC5E,AAAIH,KACF,EAAE,eAAe,IAGnBI,KAAU,CAAkC;CAC9C,GAEMC,KAAe,MAAyD;EAE5E,AADA3B,EAAW,EAAI,GACf4B,IAAU,CAAkC;CAC9C,GACMC,KAAc,MAAyD;EAE3E,AADA7B,EAAW,EAAK,GAChB8B,IAAS,CAAkC;CAC7C,GAEIC;CACJ,IAAIC,KAAQ,CAACb,GAAU;EACrB,IAAMc,IAAWpE,EAAemE,CAAI;EACpC,IACE,kBAAClC,GAAD;GACO;GACC;GACN,WAAWyB;GACX,GAAKW,IAAS,EAAE,UAAO,IAAID,IAAW,EAAE,QAAQ,SAAS,IAAI,CAAC;GAC9D,GAAKE,IAAM,EAAE,OAAI,IAAIF,IAAW,EAAE,KAAK,sBAAsB,IAAI,CAAC;GAClE,GAAKjB;GACL,GAAKH,IAAW,EAAE,qBAAqB/B,EAAiB+B,CAAQ,EAAE,IAAI,CAAC;GACvE,GAAKN,IAAO;IAAE,aAAa;IAAM,gBAAgB;GAAG,IAAI,CAAC;GACzD,SAASkB;GACT,SAASE;GACT,QAAQE;GAEP,UAAAL;EACO,CAAA;CAEd,OACE,IACE,kBAAC,UAAD;EACO;EACL,MAAMY,MAAQ;EACd,WAAWb;EACX,UAAUJ,KAAY,CAACF;EACvB,GAAKD;EACL,GAAKH,IAAW,EAAE,qBAAqB/B,EAAiB+B,CAAQ,EAAE,IAAI,CAAC;EACvE,GAAKI,IAAe,EAAE,iBAAiB,GAAK,IAAI,CAAC;EACjD,GAAKV,IAAO;GAAE,aAAa;GAAM,gBAAgB;EAAG,IAAI,CAAC;EACzD,GAAKU,IAAe,EAAE,iBAAiB,GAAG,IAAI,CAAC;EAC/C,GAAKI,KAAW,EAAE,oBAAoBH,EAAe,IAAI,CAAC;EAC1D,SAASO;EACT,SAASE;EACT,QAAQE;EAEP,UAAAL;CACK,CAAA;CAIZ,IAAMa,IAAc,CAAC,CAACnB,KAAkB,CAAC,CAACC;CAE1C,OACE,kBAAClD,GAAD;EAAS,SAASoE,IAAcnB,IAAiBE,IAAOvB,EAA0B,WAAW;EAAI,UAAU,CAACwC,KAAe,CAACjB;EACzH,UAAAW;CACM,CAAA;AAEb,CAAC;AACD,QAAA,IAAA,aAA6B,iBAAc,EAAO,cAAc"}
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
  import { i as e, r as t } from "./context-BELWW79w.js";
3
- import { t as n } from "./icon-D7ja-_Yk.js";
3
+ import { t as n } from "./icon-CBzOwqrX.js";
4
4
  import { createContext as r, forwardRef as i, use as a, useCallback as o, useMemo as s } from "react";
5
5
  import { jsx as c } from "react/jsx-runtime";
6
6
  import { ArrowDown01Icon as l, ArrowLeft01Icon as u, ArrowRight01Icon as d } from "@hugeicons/core-free-icons";
@@ -16,8 +16,8 @@ var p = { mode: {
16
16
  month_caption: "flex h-32 items-center px-8 text-body font-semibold text-fg",
17
17
  caption_label: "",
18
18
  nav: "absolute top-0 right-0 flex items-center gap-2",
19
- button_previous: "inline-flex size-32 items-center justify-center rounded-pill text-fg-secondary transition-control hover:bg-fill-1 hover:text-fg focus-ring disabled:opacity-40",
20
- button_next: "inline-flex size-32 items-center justify-center rounded-pill text-fg-secondary transition-control hover:bg-fill-1 hover:text-fg focus-ring disabled:opacity-40",
19
+ button_previous: "inline-flex size-32 items-center justify-center rounded-pill text-fg-secondary transition-control hover:bg-item-hover hover:text-fg focus-ring disabled:opacity-40",
20
+ button_next: "inline-flex size-32 items-center justify-center rounded-pill text-fg-secondary transition-control hover:bg-item-hover hover:text-fg focus-ring disabled:opacity-40",
21
21
  month_grid: "border-collapse",
22
22
  weekdays: "",
23
23
  weekday: "h-32 w-36 text-caption font-medium text-fg-tertiary",
@@ -120,4 +120,4 @@ process.env.NODE_ENV !== "production" && (b.displayName = "Calendar");
120
120
  //#endregion
121
121
  export { m as n, p as r, b as t };
122
122
 
123
- //# sourceMappingURL=calendar-BWaf2MXc.js.map
123
+ //# sourceMappingURL=calendar-Dc6_dl0f.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"calendar-Dc6_dl0f.js","names":["__icon_ArrowLeft01Icon","__icon_ArrowRight01Icon","__icon_ArrowDown01Icon","useUiText","useLocale","Icon","KAESO_CALENDAR_VARIANTS","KAESO_CALENDAR_DEFAULT_VARIANTS","CAL_CLASSES","Chevron","orientation","ArrowLeft01Icon","ArrowRight01Icon","ArrowDown01Icon","RootRef","Root","props","ref","use","setRefs","useCallback","rootRef","el","localized","monthYear","locale","weekdayShort","weekdayLong","full","month","weekday","label","date","modifiers","Calendar","t","common","useMemo","own","numberOfMonths","defaultMonth","onMonthChange","disabled","className","mode","DayPicker","onSelect","r","d"],"sources":["../../src/components/calendar/calendar.tsx"],"sourcesContent":["import { createContext, forwardRef, use, useCallback, useMemo, type Ref } from \"react\";\nimport { DayPicker, type DateRange, type Formatters, type Labels, type RootProps } from \"react-day-picker\";\nimport { Icon } from \"../icon/icon.js\";\nimport { ArrowLeft01Icon as __icon_ArrowLeft01Icon, ArrowRight01Icon as __icon_ArrowRight01Icon, ArrowDown01Icon as __icon_ArrowDown01Icon } from \"@hugeicons/core-free-icons\";\nimport { useLocale, useUiText, type UiText } from \"../../i18n/context.js\";\n\nexport const KAESO_CALENDAR_VARIANTS = {\n mode: {\n single: { classes: \"\" },\n range: { classes: \"\" },\n },\n} as const;\nexport const KAESO_CALENDAR_DEFAULT_VARIANTS = { mode: \"single\" } as const;\n\nconst CAL_CLASSES = {\n root: \"k-cal relative select-none\",\n months: \"flex gap-24\",\n month: \"flex flex-col gap-8\",\n month_caption: \"flex h-32 items-center px-8 text-body font-semibold text-fg\",\n caption_label: \"\",\n nav: \"absolute top-0 right-0 flex items-center gap-2\",\n button_previous:\n \"inline-flex size-32 items-center justify-center rounded-pill text-fg-secondary transition-control hover:bg-item-hover hover:text-fg focus-ring disabled:opacity-40\",\n button_next:\n \"inline-flex size-32 items-center justify-center rounded-pill text-fg-secondary transition-control hover:bg-item-hover hover:text-fg focus-ring disabled:opacity-40\",\n month_grid: \"border-collapse\",\n weekdays: \"\",\n weekday: \"h-32 w-36 text-caption font-medium text-fg-tertiary\",\n weeks: \"\",\n week: \"\",\n day: \"k-day\",\n day_button: \"\",\n selected: \"k-selected\",\n today: \"k-today\",\n outside: \"k-outside\",\n disabled: \"k-disabled\",\n range_start: \"k-range-start\",\n range_middle: \"k-range-middle\",\n range_end: \"k-range-end\",\n hidden: \"invisible\",\n focused: \"\",\n chevron: \"\",\n footer: \"\",\n};\n\nfunction Chevron({ orientation }: { orientation?: \"left\" | \"right\" | \"up\" | \"down\" | undefined }) {\n return <Icon icon={orientation === \"left\" ? __icon_ArrowLeft01Icon : orientation === \"right\" ? __icon_ArrowRight01Icon : __icon_ArrowDown01Icon} size=\"sm\" />;\n}\n\nconst RootRef = /* @__PURE__ */ createContext<Ref<HTMLDivElement> | null>(null);\n\nfunction Root({ rootRef, ...props }: RootProps) {\n const ref = use(RootRef);\n const setRefs = useCallback(\n (el: HTMLDivElement | null) => {\n for (const r of [rootRef, ref]) {\n if (typeof r === \"function\") r(el);\n else if (r) r.current = el;\n }\n },\n [rootRef, ref],\n );\n return <div {...props} ref={setRefs} />;\n}\n\nfunction localized(locale: string, t: UiText): { formatters: Partial<Formatters>; labels: Partial<Labels>; lang: string } {\n const monthYear = new Intl.DateTimeFormat(locale, { month: \"long\", year: \"numeric\" });\n const weekdayShort = new Intl.DateTimeFormat(locale, { weekday: \"short\" });\n const weekdayLong = new Intl.DateTimeFormat(locale, { weekday: \"long\" });\n const full = new Intl.DateTimeFormat(locale, { dateStyle: \"full\" });\n return {\n lang: locale,\n formatters: {\n formatCaption: (month) => monthYear.format(month),\n formatWeekdayName: (weekday) => weekdayShort.format(weekday).replace(/\\.$/, \"\"),\n },\n labels: {\n labelPrevious: () => t(\"calendar.previousMonth\", \"Go to the previous month\"),\n labelNext: () => t(\"calendar.nextMonth\", \"Go to the next month\"),\n labelNav: () => t(\"calendar.navigation\", \"Navigation bar\"),\n labelGrid: (month) => monthYear.format(month),\n labelWeekday: (weekday) => weekdayLong.format(weekday),\n labelDayButton: (date, modifiers) => {\n let label = full.format(date);\n if (modifiers.today) label = t(\"calendar.today\", \"Today, {date}\", { date: label });\n if (modifiers.selected) label = t(\"calendar.selected\", \"{date}, selected\", { date: label });\n return label;\n },\n },\n };\n}\n\nexport interface CalendarProps {\n mode?: keyof typeof KAESO_CALENDAR_VARIANTS.mode | undefined;\n selected?: Date | DateRange | undefined;\n onSelect?: ((value: Date | DateRange | undefined) => void) | undefined;\n month?: Date | undefined;\n defaultMonth?: Date | undefined;\n onMonthChange?: ((month: Date) => void) | undefined;\n numberOfMonths?: number | undefined;\n weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6 | undefined;\n disabled?: ((date: Date) => boolean) | undefined;\n className?: string | undefined;\n}\n\nexport const Calendar = /* @__PURE__ */ forwardRef<HTMLDivElement, CalendarProps>(function Calendar(\n { mode = \"single\", selected, onSelect, month, defaultMonth, onMonthChange, numberOfMonths = 1, weekStartsOn = 1, disabled, className },\n ref,\n) {\n const locale = useLocale();\n const t = useUiText();\n const language = useMemo(() => {\n const own = localized(locale, t);\n return locale === \"en\" ? { labels: own.labels } : own;\n }, [locale, t]);\n const common = {\n ...language,\n classNames: numberOfMonths > 1 ? { ...CAL_CLASSES, outside: \"k-outside invisible\" } : CAL_CLASSES,\n components: { Chevron, Root },\n weekStartsOn,\n numberOfMonths,\n showOutsideDays: true,\n fixedWeeks: true,\n ...(month ? { month } : {}),\n ...(defaultMonth ? { defaultMonth } : {}),\n ...(onMonthChange ? { onMonthChange } : {}),\n ...(disabled ? { disabled } : {}),\n ...(className ? { className } : {}),\n };\n return (\n <RootRef value={ref}>\n {mode === \"range\" ? (\n <DayPicker mode=\"range\" selected={selected as DateRange | undefined} onSelect={(r) => onSelect?.(r)} {...common} />\n ) : (\n <DayPicker mode=\"single\" selected={selected as Date | undefined} onSelect={(d) => onSelect?.(d)} {...common} />\n )}\n </RootRef>\n );\n});\nif (process.env.NODE_ENV !== \"production\") Calendar.displayName = \"Calendar\";\n"],"mappings":"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"}
@@ -0,0 +1,141 @@
1
+ "use client";
2
+ import { l as e } from "./styles-hkFkoBbi.js";
3
+ import { t } from "./cn-BjnOAUrA.js";
4
+ import { a as n } from "./field-D7m-yl-D.js";
5
+ import { t as r } from "./labelled-D5udSPUI.js";
6
+ import { createContext as i, forwardRef as a, useContext as o, useId as s } from "react";
7
+ import { jsx as c, jsxs as l } from "react/jsx-runtime";
8
+ import { Checkbox as u } from "@base-ui/react/checkbox";
9
+ import { CheckboxGroup as d } from "@base-ui/react/checkbox-group";
10
+ //#region src/components/checkbox/checkbox.tsx
11
+ var f = /* @__PURE__ */ e({
12
+ Checkbox: () => x,
13
+ CheckboxBox: () => g,
14
+ CheckboxGroup: () => S,
15
+ KAESO_CHECKBOX_DEFAULT_VARIANTS: () => m,
16
+ KAESO_CHECKBOX_GROUP_DEFAULT_VARIANTS: () => y,
17
+ KAESO_CHECKBOX_GROUP_VARIANTS: () => v,
18
+ KAESO_CHECKBOX_VARIANTS: () => p
19
+ }), p = { size: { md: { classes: "size-18 rounded-checkbox" } } }, m = { size: "md" }, h = /* @__PURE__ */ i(!1), g = /* @__PURE__ */ a(function({ checked: e, defaultChecked: n, onCheckedChange: r, indeterminate: i, disabled: a, readOnly: o, required: s, invalid: d, name: f, value: m, id: h, className: g, parent: _, "aria-label": v, "aria-describedby": y, "aria-labelledby": b, "data-force": x }, S) {
20
+ return /* @__PURE__ */ c(u.Root, {
21
+ ref: S,
22
+ ...e === void 0 ? {} : { checked: e },
23
+ ...n === void 0 ? {} : { defaultChecked: n },
24
+ ...r ? { onCheckedChange: (e) => r(e) } : {},
25
+ ...i === void 0 ? {} : { indeterminate: i },
26
+ ...a === void 0 ? {} : { disabled: a },
27
+ ...o === void 0 ? {} : { readOnly: o },
28
+ ...s === void 0 ? {} : { required: s },
29
+ ...f ? { name: f } : {},
30
+ ...m ? { value: m } : {},
31
+ ...h ? { id: h } : {},
32
+ ..._ ? { parent: _ } : {},
33
+ ...v ? { "aria-label": v } : {},
34
+ ...y ? { "aria-describedby": y } : {},
35
+ ...b ? { "aria-labelledby": b } : {},
36
+ ...d ? { "aria-invalid": !0 } : {},
37
+ ...x ? { "data-force": x } : {},
38
+ "data-choice": "",
39
+ className: t("group/cb relative -m-3 inline-flex size-24 shrink-0 cursor-pointer items-center justify-center rounded-checkbox outline-none tap-target disabled:cursor-not-allowed", g),
40
+ children: /* @__PURE__ */ c("span", {
41
+ "aria-hidden": !0,
42
+ className: t("flex items-center justify-center choice-mark", p.size.md.classes),
43
+ children: /* @__PURE__ */ c(u.Indicator, {
44
+ keepMounted: !0,
45
+ className: "flex items-center justify-center",
46
+ children: /* @__PURE__ */ l("svg", {
47
+ viewBox: "0 0 12 12",
48
+ className: "size-12",
49
+ fill: "none",
50
+ "aria-hidden": !0,
51
+ children: [/* @__PURE__ */ c("path", {
52
+ d: "M2.5 6.25 4.9 8.5 9.5 3.75",
53
+ stroke: "currentColor",
54
+ strokeWidth: "1.75",
55
+ strokeLinecap: "round",
56
+ strokeLinejoin: "round",
57
+ pathLength: 1,
58
+ className: "check-draw"
59
+ }), /* @__PURE__ */ c("path", {
60
+ d: "M3 6h6",
61
+ stroke: "currentColor",
62
+ strokeWidth: "1.75",
63
+ strokeLinecap: "round",
64
+ className: "hidden group-data-indeterminate/cb:block"
65
+ })]
66
+ })
67
+ })
68
+ })
69
+ });
70
+ });
71
+ process.env.NODE_ENV !== "production" && (g.displayName = "Checkbox.Box");
72
+ var _ = /* @__PURE__ */ a(function({ label: e, description: i, id: a, className: u, ...d }, f) {
73
+ let p = s(), m = a ?? `k-cb-${p}`, _ = n(), v = o(h), y = [
74
+ d["aria-describedby"],
75
+ _?.descriptionId,
76
+ _?.errorId
77
+ ].filter(Boolean).join(" "), b = {
78
+ ...d,
79
+ ..._?.invalid && d.invalid === void 0 ? { invalid: !0 } : {},
80
+ ...(_?.disabled || v) && d.disabled === void 0 ? { disabled: !0 } : {},
81
+ ...y ? { "aria-describedby": y } : {}
82
+ };
83
+ if (!e) return /* @__PURE__ */ c(g, {
84
+ ref: f,
85
+ id: m,
86
+ className: u,
87
+ ...b
88
+ });
89
+ let x = r(m, e, i, b);
90
+ return /* @__PURE__ */ l("label", {
91
+ htmlFor: m,
92
+ "data-choice-row": "",
93
+ className: t("inline-flex min-h-32 cursor-pointer items-start gap-10 py-6 select-none coarse:min-h-44 coarse:py-12", b.disabled && "cursor-not-allowed", u),
94
+ children: [/* @__PURE__ */ c("span", {
95
+ className: "flex h-20 items-center",
96
+ children: /* @__PURE__ */ c(g, {
97
+ ref: f,
98
+ id: m,
99
+ ...b,
100
+ ...x.aria
101
+ })
102
+ }), /* @__PURE__ */ l("span", {
103
+ className: "flex flex-col",
104
+ children: [/* @__PURE__ */ c("span", {
105
+ id: x.labelId,
106
+ className: t("text-body text-fg", b.disabled && "text-fg-disabled"),
107
+ children: e
108
+ }), i && /* @__PURE__ */ c("span", {
109
+ id: x.descriptionId,
110
+ className: t("text-small text-pretty", b.disabled ? "text-fg-disabled" : "text-fg-secondary"),
111
+ children: i
112
+ })]
113
+ })]
114
+ });
115
+ });
116
+ process.env.NODE_ENV !== "production" && (_.displayName = "Checkbox");
117
+ var v = {}, y = {}, b = /* @__PURE__ */ a(function({ value: e, defaultValue: n, onValueChange: r, allValues: i, disabled: a, className: o, children: s, ...l }, u) {
118
+ return /* @__PURE__ */ c(h.Provider, {
119
+ value: !!a,
120
+ children: /* @__PURE__ */ c(d, {
121
+ ref: u,
122
+ ...e === void 0 ? {} : { value: e },
123
+ ...n === void 0 ? {} : { defaultValue: n },
124
+ ...r ? { onValueChange: (e) => r(e) } : {},
125
+ ...i ? { allValues: i } : {},
126
+ ...a === void 0 ? {} : { disabled: a },
127
+ className: t("flex flex-col", o),
128
+ ...l,
129
+ children: s
130
+ })
131
+ });
132
+ });
133
+ process.env.NODE_ENV !== "production" && (b.displayName = "CheckboxGroup");
134
+ var x = /* @__PURE__ */ Object.assign(_, {
135
+ Box: g,
136
+ Group: b
137
+ }), S = b;
138
+ //#endregion
139
+ export { y as a, f as c, m as i, g as n, v as o, S as r, p as s, x as t };
140
+
141
+ //# sourceMappingURL=checkbox-9tbimmF3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkbox-9tbimmF3.js","names":["BaseCheckbox","CheckboxGroup","BaseCheckboxGroup","Checkbox","__exportAll","useField","labelled","checkbox_exports","Checkbox$1","CheckboxBox","CheckboxGroup$1","KAESO_CHECKBOX_DEFAULT_VARIANTS","KAESO_CHECKBOX_GROUP_DEFAULT_VARIANTS","KAESO_CHECKBOX_GROUP_VARIANTS","KAESO_CHECKBOX_VARIANTS","GroupDisabled","ariaLabel","describedBy","labelledBy","force","Checkbox","checked","defaultChecked","onCheckedChange","c","indeterminate","disabled","readOnly","required","name","value","id","parent","invalid","cn","className","Root","own","auto","useId","boxId","field","groupDisabled","useContext","fieldDescribedBy","props","label","named","description","Group","CheckboxGroup","defaultValue","onValueChange","v","allValues"],"sources":["../../src/components/checkbox/checkbox.tsx"],"sourcesContent":["import { createContext, forwardRef, useContext, useId, type ReactNode } from \"react\";\nimport { Checkbox as BaseCheckbox } from \"@base-ui/react/checkbox\";\nimport { CheckboxGroup as BaseCheckboxGroup } from \"@base-ui/react/checkbox-group\";\nimport { cn } from \"../../utils/cn.js\";\nimport { labelled } from \"../radio/labelled.js\";\nimport { useField } from \"../field/field.js\";\n\nexport const KAESO_CHECKBOX_VARIANTS = {\n size: {\n md: { classes: \"size-18 rounded-checkbox\" },\n },\n} as const;\nexport const KAESO_CHECKBOX_DEFAULT_VARIANTS = { size: \"md\" } as const;\n\nexport interface CheckboxProps {\n checked?: boolean | undefined;\n defaultChecked?: boolean | undefined;\n onCheckedChange?: ((checked: boolean) => void) | undefined;\n indeterminate?: boolean | undefined;\n disabled?: boolean | undefined;\n readOnly?: boolean | undefined;\n required?: boolean | undefined;\n invalid?: boolean | undefined;\n name?: string | undefined;\n value?: string | undefined;\n label?: ReactNode | undefined;\n description?: ReactNode | undefined;\n id?: string | undefined;\n \"aria-label\"?: string | undefined;\n \"aria-describedby\"?: string | undefined;\n \"aria-labelledby\"?: string | undefined;\n className?: string | undefined;\n \"data-force\"?: string | undefined;\n}\n\nconst GroupDisabled = /* @__PURE__ */ createContext(false);\n\nexport const CheckboxBox = /* @__PURE__ */ forwardRef<HTMLButtonElement, CheckboxProps & { parent?: boolean | undefined }>(function CheckboxBox(\n {\n checked,\n defaultChecked,\n onCheckedChange,\n indeterminate,\n disabled,\n readOnly,\n required,\n invalid,\n name,\n value,\n id,\n className,\n parent,\n \"aria-label\": ariaLabel,\n \"aria-describedby\": describedBy,\n \"aria-labelledby\": labelledBy,\n \"data-force\": force,\n },\n ref,\n) {\n return (\n <BaseCheckbox.Root\n ref={ref}\n {...(checked !== undefined ? { checked } : {})}\n {...(defaultChecked !== undefined ? { defaultChecked } : {})}\n {...(onCheckedChange ? { onCheckedChange: (c: boolean) => onCheckedChange(c) } : {})}\n {...(indeterminate !== undefined ? { indeterminate } : {})}\n {...(disabled !== undefined ? { disabled } : {})}\n {...(readOnly !== undefined ? { readOnly } : {})}\n {...(required !== undefined ? { required } : {})}\n {...(name ? { name } : {})}\n {...(value ? { value } : {})}\n {...(id ? { id } : {})}\n {...(parent ? { parent } : {})}\n {...(ariaLabel ? { \"aria-label\": ariaLabel } : {})}\n {...(describedBy ? { \"aria-describedby\": describedBy } : {})}\n {...(labelledBy ? { \"aria-labelledby\": labelledBy } : {})}\n {...(invalid ? { \"aria-invalid\": true } : {})}\n {...(force ? { \"data-force\": force } : {})}\n data-choice=\"\"\n className={cn(\n \"group/cb relative -m-3 inline-flex size-24 shrink-0 cursor-pointer items-center justify-center rounded-checkbox outline-none tap-target disabled:cursor-not-allowed\",\n className,\n )}\n >\n <span aria-hidden className={cn(\"flex items-center justify-center choice-mark\", KAESO_CHECKBOX_VARIANTS.size.md.classes)}>\n <BaseCheckbox.Indicator keepMounted className=\"flex items-center justify-center\">\n <svg viewBox=\"0 0 12 12\" className=\"size-12\" fill=\"none\" aria-hidden>\n <path\n d=\"M2.5 6.25 4.9 8.5 9.5 3.75\"\n stroke=\"currentColor\"\n strokeWidth=\"1.75\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n pathLength={1}\n className=\"check-draw\"\n />\n <path d=\"M3 6h6\" stroke=\"currentColor\" strokeWidth=\"1.75\" strokeLinecap=\"round\" className=\"hidden group-data-indeterminate/cb:block\" />\n </svg>\n </BaseCheckbox.Indicator>\n </span>\n </BaseCheckbox.Root>\n );\n});\nif (process.env.NODE_ENV !== \"production\") CheckboxBox.displayName = \"Checkbox.Box\";\n\nconst Root = /* @__PURE__ */ forwardRef<HTMLButtonElement, CheckboxProps>(function Checkbox({ label, description, id, className, ...own }, ref) {\n const auto = useId();\n const boxId = id ?? `k-cb-${auto}`;\n const field = useField();\n const groupDisabled = useContext(GroupDisabled);\n const fieldDescribedBy = [own[\"aria-describedby\"], field?.descriptionId, field?.errorId].filter(Boolean).join(\" \");\n const props = {\n ...own,\n ...(field?.invalid && own.invalid === undefined ? { invalid: true } : {}),\n ...((field?.disabled || groupDisabled) && own.disabled === undefined ? { disabled: true } : {}),\n ...(fieldDescribedBy ? { \"aria-describedby\": fieldDescribedBy } : {}),\n };\n if (!label) return <CheckboxBox ref={ref} id={boxId} className={className} {...props} />;\n const named = labelled(boxId, label, description, props);\n return (\n <label\n htmlFor={boxId}\n data-choice-row=\"\"\n className={cn(\n \"inline-flex min-h-32 cursor-pointer items-start gap-10 py-6 select-none coarse:min-h-44 coarse:py-12\",\n props.disabled && \"cursor-not-allowed\",\n className,\n )}\n >\n <span className=\"flex h-20 items-center\">\n <CheckboxBox ref={ref} id={boxId} {...props} {...named.aria} />\n </span>\n <span className=\"flex flex-col\">\n <span id={named.labelId} className={cn(\"text-body text-fg\", props.disabled && \"text-fg-disabled\")}>\n {label}\n </span>\n {description && (\n <span id={named.descriptionId} className={cn(\"text-small text-pretty\", props.disabled ? \"text-fg-disabled\" : \"text-fg-secondary\")}>\n {description}\n </span>\n )}\n </span>\n </label>\n );\n});\nif (process.env.NODE_ENV !== \"production\") Root.displayName = \"Checkbox\";\n\nexport const KAESO_CHECKBOX_GROUP_VARIANTS = {} as const;\nexport const KAESO_CHECKBOX_GROUP_DEFAULT_VARIANTS = {} as const;\n\nexport interface CheckboxGroupProps {\n value?: string[] | undefined;\n defaultValue?: string[] | undefined;\n onValueChange?: ((value: string[]) => void) | undefined;\n allValues?: string[] | undefined;\n disabled?: boolean | undefined;\n \"aria-label\"?: string | undefined;\n \"aria-labelledby\"?: string | undefined;\n className?: string | undefined;\n children: ReactNode;\n}\n\nconst Group = /* @__PURE__ */ forwardRef<HTMLDivElement, CheckboxGroupProps>(function CheckboxGroup(\n { value, defaultValue, onValueChange, allValues, disabled, className, children, ...props },\n ref,\n) {\n return (\n <GroupDisabled.Provider value={!!disabled}>\n <BaseCheckboxGroup\n ref={ref}\n {...(value !== undefined ? { value } : {})}\n {...(defaultValue !== undefined ? { defaultValue } : {})}\n {...(onValueChange ? { onValueChange: (v: string[]) => onValueChange(v) } : {})}\n {...(allValues ? { allValues } : {})}\n {...(disabled !== undefined ? { disabled } : {})}\n className={cn(\"flex flex-col\", className)}\n {...props}\n >\n {children}\n </BaseCheckboxGroup>\n </GroupDisabled.Provider>\n );\n});\nif (process.env.NODE_ENV !== \"production\") Group.displayName = \"CheckboxGroup\";\n\nexport const Checkbox = /* @__PURE__ */ Object.assign(Root, { Box: CheckboxBox, Group });\nexport const CheckboxGroup = Group;\n"],"mappings":"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"}