@logicplanes/kaeso-ui 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (660) hide show
  1. package/AGENTS.md +124 -0
  2. package/CLAUDE.md +3 -0
  3. package/LICENSE +21 -0
  4. package/NOTICE.md +5 -0
  5. package/README.md +43 -0
  6. package/ai/component-guides.md +4760 -0
  7. package/ai/component-registry.json +12626 -0
  8. package/ai/component-registry.md +2950 -0
  9. package/ai/icons.md +28 -0
  10. package/ai/tokens.md +207 -0
  11. package/dist/blocks/delete-resource.js +35 -0
  12. package/dist/blocks/delete-resource.js.map +1 -0
  13. package/dist/blocks/pages.js +70 -0
  14. package/dist/blocks/pages.js.map +1 -0
  15. package/dist/blocks/resource-list.js +68 -0
  16. package/dist/blocks/resource-list.js.map +1 -0
  17. package/dist/chunks/app-frame-BBIMch8X.js +224 -0
  18. package/dist/chunks/app-frame-BBIMch8X.js.map +1 -0
  19. package/dist/chunks/arrow-focus-BcySmwwU.js +11 -0
  20. package/dist/chunks/arrow-focus-BcySmwwU.js.map +1 -0
  21. package/dist/chunks/avatar-D2nJNbtC.js +83 -0
  22. package/dist/chunks/avatar-D2nJNbtC.js.map +1 -0
  23. package/dist/chunks/badge-Dkyhs0_j.js +26 -0
  24. package/dist/chunks/badge-Dkyhs0_j.js.map +1 -0
  25. package/dist/chunks/banner-BiziJuBZ.js +85 -0
  26. package/dist/chunks/banner-BiziJuBZ.js.map +1 -0
  27. package/dist/chunks/button-BHKAE6ui.js +164 -0
  28. package/dist/chunks/button-BHKAE6ui.js.map +1 -0
  29. package/dist/chunks/calendar-B5SSTE56.js +104 -0
  30. package/dist/chunks/calendar-B5SSTE56.js.map +1 -0
  31. package/dist/chunks/checkbox-BgRdbfCE.js +124 -0
  32. package/dist/chunks/checkbox-BgRdbfCE.js.map +1 -0
  33. package/dist/chunks/cn-CidVUKMm.js +669 -0
  34. package/dist/chunks/cn-CidVUKMm.js.map +1 -0
  35. package/dist/chunks/code-DDyOlIFO.js +23 -0
  36. package/dist/chunks/code-DDyOlIFO.js.map +1 -0
  37. package/dist/chunks/code-block-BbK6E4Eo.js +273 -0
  38. package/dist/chunks/code-block-BbK6E4Eo.js.map +1 -0
  39. package/dist/chunks/collapsible-Cw_1aem5.js +87 -0
  40. package/dist/chunks/collapsible-Cw_1aem5.js.map +1 -0
  41. package/dist/chunks/combobox-D8pQk22r.js +291 -0
  42. package/dist/chunks/combobox-D8pQk22r.js.map +1 -0
  43. package/dist/chunks/context-BELWW79w.js +20 -0
  44. package/dist/chunks/context-BELWW79w.js.map +1 -0
  45. package/dist/chunks/copy-button-mAzHjYXq.js +109 -0
  46. package/dist/chunks/copy-button-mAzHjYXq.js.map +1 -0
  47. package/dist/chunks/core-Bgefcs3z.js +467 -0
  48. package/dist/chunks/core-Bgefcs3z.js.map +1 -0
  49. package/dist/chunks/date-popup-Er1oQwtU.js +35 -0
  50. package/dist/chunks/date-popup-Er1oQwtU.js.map +1 -0
  51. package/dist/chunks/de-BCg1eRVd.js +384 -0
  52. package/dist/chunks/de-BCg1eRVd.js.map +1 -0
  53. package/dist/chunks/dev-CR1p7gCm.js +30 -0
  54. package/dist/chunks/dev-CR1p7gCm.js.map +1 -0
  55. package/dist/chunks/dialog-CVqSVk3T.js +283 -0
  56. package/dist/chunks/dialog-CVqSVk3T.js.map +1 -0
  57. package/dist/chunks/empty-DIbBpytW.js +38 -0
  58. package/dist/chunks/empty-DIbBpytW.js.map +1 -0
  59. package/dist/chunks/field-d8V94bvZ.js +119 -0
  60. package/dist/chunks/field-d8V94bvZ.js.map +1 -0
  61. package/dist/chunks/field-press-DwzBFafd.js +10 -0
  62. package/dist/chunks/field-press-DwzBFafd.js.map +1 -0
  63. package/dist/chunks/i18n-0RW0IAf3.js +10 -0
  64. package/dist/chunks/i18n-0RW0IAf3.js.map +1 -0
  65. package/dist/chunks/icon-Bha63LaN.js +90 -0
  66. package/dist/chunks/icon-Bha63LaN.js.map +1 -0
  67. package/dist/chunks/icon-CeNQtobn.js +47 -0
  68. package/dist/chunks/icon-CeNQtobn.js.map +1 -0
  69. package/dist/chunks/icon-button-Bw67oKtx.js +50 -0
  70. package/dist/chunks/icon-button-Bw67oKtx.js.map +1 -0
  71. package/dist/chunks/identity-DQinp-Ep.js +342 -0
  72. package/dist/chunks/identity-DQinp-Ep.js.map +1 -0
  73. package/dist/chunks/input-Biakz6GB.js +114 -0
  74. package/dist/chunks/input-Biakz6GB.js.map +1 -0
  75. package/dist/chunks/input-group-DQqEPFj_.js +87 -0
  76. package/dist/chunks/input-group-DQqEPFj_.js.map +1 -0
  77. package/dist/chunks/inset-BLMdxX4I.js +18 -0
  78. package/dist/chunks/inset-BLMdxX4I.js.map +1 -0
  79. package/dist/chunks/iso-field-CznqNVrH.js +31 -0
  80. package/dist/chunks/iso-field-CznqNVrH.js.map +1 -0
  81. package/dist/chunks/json-view-B6KHIWzh.js +174 -0
  82. package/dist/chunks/json-view-B6KHIWzh.js.map +1 -0
  83. package/dist/chunks/kbd-CBcBDvqU.js +132 -0
  84. package/dist/chunks/kbd-CBcBDvqU.js.map +1 -0
  85. package/dist/chunks/labelled-D5udSPUI.js +16 -0
  86. package/dist/chunks/labelled-D5udSPUI.js.map +1 -0
  87. package/dist/chunks/link-provider---9JdxTg.js +27 -0
  88. package/dist/chunks/link-provider---9JdxTg.js.map +1 -0
  89. package/dist/chunks/link-tTapNTpM.js +47 -0
  90. package/dist/chunks/link-tTapNTpM.js.map +1 -0
  91. package/dist/chunks/list-CN8pO8lv.js +475 -0
  92. package/dist/chunks/list-CN8pO8lv.js.map +1 -0
  93. package/dist/chunks/loader-CUehxvSZ.js +57 -0
  94. package/dist/chunks/loader-CUehxvSZ.js.map +1 -0
  95. package/dist/chunks/logo-VmXYhIJL.js +149 -0
  96. package/dist/chunks/logo-VmXYhIJL.js.map +1 -0
  97. package/dist/chunks/markdown-C-iJsYnd.js +313 -0
  98. package/dist/chunks/markdown-C-iJsYnd.js.map +1 -0
  99. package/dist/chunks/menu-OURWt_hD.js +447 -0
  100. package/dist/chunks/menu-OURWt_hD.js.map +1 -0
  101. package/dist/chunks/message-BxTkh1oA.js +49 -0
  102. package/dist/chunks/message-BxTkh1oA.js.map +1 -0
  103. package/dist/chunks/meter-DWhyzFGQ.js +84 -0
  104. package/dist/chunks/meter-DWhyzFGQ.js.map +1 -0
  105. package/dist/chunks/page-header-BIRswR73.js +41 -0
  106. package/dist/chunks/page-header-BIRswR73.js.map +1 -0
  107. package/dist/chunks/pagination-DYdLm18-.js +85 -0
  108. package/dist/chunks/pagination-DYdLm18-.js.map +1 -0
  109. package/dist/chunks/popover-BE7VO-a4.js +50 -0
  110. package/dist/chunks/popover-BE7VO-a4.js.map +1 -0
  111. package/dist/chunks/popover-root-D3q89WNF.js +26 -0
  112. package/dist/chunks/popover-root-D3q89WNF.js.map +1 -0
  113. package/dist/chunks/portal-context-BBbzDKmY.js +33 -0
  114. package/dist/chunks/portal-context-BBbzDKmY.js.map +1 -0
  115. package/dist/chunks/radio-CUxbLCvD.js +110 -0
  116. package/dist/chunks/radio-CUxbLCvD.js.map +1 -0
  117. package/dist/chunks/range-popup-AbRzgHtY.js +111 -0
  118. package/dist/chunks/range-popup-AbRzgHtY.js.map +1 -0
  119. package/dist/chunks/restore-focus-Cap1Q-R3.js +19 -0
  120. package/dist/chunks/restore-focus-Cap1Q-R3.js.map +1 -0
  121. package/dist/chunks/rights-CXo7zEf6.js +279 -0
  122. package/dist/chunks/rights-CXo7zEf6.js.map +1 -0
  123. package/dist/chunks/safe-href-G5DBNVwm.js +13 -0
  124. package/dist/chunks/safe-href-G5DBNVwm.js.map +1 -0
  125. package/dist/chunks/scroll-parent-WXvzQcUo.js +14 -0
  126. package/dist/chunks/scroll-parent-WXvzQcUo.js.map +1 -0
  127. package/dist/chunks/section-XStLtXKa.js +87 -0
  128. package/dist/chunks/section-XStLtXKa.js.map +1 -0
  129. package/dist/chunks/segmented-CDTx2n29.js +113 -0
  130. package/dist/chunks/segmented-CDTx2n29.js.map +1 -0
  131. package/dist/chunks/select-Ca3HGsN1.js +223 -0
  132. package/dist/chunks/select-Ca3HGsN1.js.map +1 -0
  133. package/dist/chunks/separator-D5AzVFTS.js +45 -0
  134. package/dist/chunks/separator-D5AzVFTS.js.map +1 -0
  135. package/dist/chunks/sidebar-C4fL_KMm.js +599 -0
  136. package/dist/chunks/sidebar-C4fL_KMm.js.map +1 -0
  137. package/dist/chunks/sidebar-menu-sd9vCpDy.js +33 -0
  138. package/dist/chunks/sidebar-menu-sd9vCpDy.js.map +1 -0
  139. package/dist/chunks/skeleton-kfuqdl1a.js +36 -0
  140. package/dist/chunks/skeleton-kfuqdl1a.js.map +1 -0
  141. package/dist/chunks/slider-DbhjJ3ML.js +57 -0
  142. package/dist/chunks/slider-DbhjJ3ML.js.map +1 -0
  143. package/dist/chunks/status-dot-CBoQpyL4.js +25 -0
  144. package/dist/chunks/status-dot-CBoQpyL4.js.map +1 -0
  145. package/dist/chunks/styles-Btvg2DCf.js +21 -0
  146. package/dist/chunks/styles-Btvg2DCf.js.map +1 -0
  147. package/dist/chunks/swap-text-BhPI8DOf.js +28 -0
  148. package/dist/chunks/swap-text-BhPI8DOf.js.map +1 -0
  149. package/dist/chunks/switch-CztLhA8F.js +59 -0
  150. package/dist/chunks/switch-CztLhA8F.js.map +1 -0
  151. package/dist/chunks/table-DYKa86af.js +67 -0
  152. package/dist/chunks/table-DYKa86af.js.map +1 -0
  153. package/dist/chunks/tag-BsmQ1xPj.js +87 -0
  154. package/dist/chunks/tag-BsmQ1xPj.js.map +1 -0
  155. package/dist/chunks/text-BPglS3vq.js +63 -0
  156. package/dist/chunks/text-BPglS3vq.js.map +1 -0
  157. package/dist/chunks/textarea-Bvk7N2bh.js +156 -0
  158. package/dist/chunks/textarea-Bvk7N2bh.js.map +1 -0
  159. package/dist/chunks/theme-provider-mgUaQK7L.js +69 -0
  160. package/dist/chunks/theme-provider-mgUaQK7L.js.map +1 -0
  161. package/dist/chunks/tone-CWpsHPb6.js +11 -0
  162. package/dist/chunks/tone-CWpsHPb6.js.map +1 -0
  163. package/dist/chunks/toolbar-Dw3uxpsE.js +36 -0
  164. package/dist/chunks/toolbar-Dw3uxpsE.js.map +1 -0
  165. package/dist/chunks/tooltip-CDu00nzg.js +124 -0
  166. package/dist/chunks/tooltip-CDu00nzg.js.map +1 -0
  167. package/dist/chunks/tooltip-root-DWhtAtFb.js +60 -0
  168. package/dist/chunks/tooltip-root-DWhtAtFb.js.map +1 -0
  169. package/dist/chunks/use-controllable-B5Fd12Bx.js +13 -0
  170. package/dist/chunks/use-controllable-B5Fd12Bx.js.map +1 -0
  171. package/dist/chunks/use-copy-Dm2ncvMX.js +24 -0
  172. package/dist/chunks/use-copy-Dm2ncvMX.js.map +1 -0
  173. package/dist/chunks/use-layout-width-DZaLOQMT.js +27 -0
  174. package/dist/chunks/use-layout-width-DZaLOQMT.js.map +1 -0
  175. package/dist/chunks/use-scroll-margin-DWcfIXac.js +25 -0
  176. package/dist/chunks/use-scroll-margin-DWcfIXac.js.map +1 -0
  177. package/dist/chunks/use-truncated-DmQoePvG.js +25 -0
  178. package/dist/chunks/use-truncated-DmQoePvG.js.map +1 -0
  179. package/dist/chunks/utils-CdH72WEp.js +8 -0
  180. package/dist/chunks/utils-CdH72WEp.js.map +1 -0
  181. package/dist/chunks/virtual-rows-BgMdVelU.js +37 -0
  182. package/dist/chunks/virtual-rows-BgMdVelU.js.map +1 -0
  183. package/dist/chunks/when-idle-Cy3pinqO.js +12 -0
  184. package/dist/chunks/when-idle-Cy3pinqO.js.map +1 -0
  185. package/dist/chunks/zh-CN-cPjO1OOo.js +384 -0
  186. package/dist/chunks/zh-CN-cPjO1OOo.js.map +1 -0
  187. package/dist/components/app-frame.js +2 -0
  188. package/dist/components/avatar.js +2 -0
  189. package/dist/components/badge.js +2 -0
  190. package/dist/components/banner.js +2 -0
  191. package/dist/components/button-group.js +69 -0
  192. package/dist/components/button-group.js.map +1 -0
  193. package/dist/components/button.js +2 -0
  194. package/dist/components/calendar.js +2 -0
  195. package/dist/components/charts/bar.js +231 -0
  196. package/dist/components/charts/bar.js.map +1 -0
  197. package/dist/components/charts/donut.js +179 -0
  198. package/dist/components/charts/donut.js.map +1 -0
  199. package/dist/components/charts/gauge.js +70 -0
  200. package/dist/components/charts/gauge.js.map +1 -0
  201. package/dist/components/charts/heatmap.js +83 -0
  202. package/dist/components/charts/heatmap.js.map +1 -0
  203. package/dist/components/charts/sankey.js +110 -0
  204. package/dist/components/charts/sankey.js.map +1 -0
  205. package/dist/components/charts/sparkline.js +72 -0
  206. package/dist/components/charts/sparkline.js.map +1 -0
  207. package/dist/components/charts/timeseries.js +253 -0
  208. package/dist/components/charts/timeseries.js.map +1 -0
  209. package/dist/components/charts.js +10 -0
  210. package/dist/components/checkbox.js +2 -0
  211. package/dist/components/code-block.js +4 -0
  212. package/dist/components/code.js +2 -0
  213. package/dist/components/collapsible.js +2 -0
  214. package/dist/components/combobox.js +2 -0
  215. package/dist/components/command-palette.js +216 -0
  216. package/dist/components/command-palette.js.map +1 -0
  217. package/dist/components/copy-button.js +2 -0
  218. package/dist/components/data-table.js +399 -0
  219. package/dist/components/data-table.js.map +1 -0
  220. package/dist/components/date-picker.js +327 -0
  221. package/dist/components/date-picker.js.map +1 -0
  222. package/dist/components/dialog.js +178 -0
  223. package/dist/components/dialog.js.map +1 -0
  224. package/dist/components/display-options.js +112 -0
  225. package/dist/components/display-options.js.map +1 -0
  226. package/dist/components/empty.js +2 -0
  227. package/dist/components/field.js +2 -0
  228. package/dist/components/filter-chip.js +120 -0
  229. package/dist/components/filter-chip.js.map +1 -0
  230. package/dist/components/filter-row.js +35 -0
  231. package/dist/components/filter-row.js.map +1 -0
  232. package/dist/components/flow.js +111 -0
  233. package/dist/components/flow.js.map +1 -0
  234. package/dist/components/heading.js +28 -0
  235. package/dist/components/heading.js.map +1 -0
  236. package/dist/components/icon-button.js +2 -0
  237. package/dist/components/icon.js +4 -0
  238. package/dist/components/input.js +181 -0
  239. package/dist/components/input.js.map +1 -0
  240. package/dist/components/kaeso/conversation.js +204 -0
  241. package/dist/components/kaeso/conversation.js.map +1 -0
  242. package/dist/components/kaeso/identity.js +2 -0
  243. package/dist/components/kaeso/moments.js +122 -0
  244. package/dist/components/kaeso/moments.js.map +1 -0
  245. package/dist/components/kaeso/rights.js +2 -0
  246. package/dist/components/kaeso/usage.js +101 -0
  247. package/dist/components/kaeso/usage.js.map +1 -0
  248. package/dist/components/kaeso.js +186 -0
  249. package/dist/components/kaeso.js.map +1 -0
  250. package/dist/components/kbd.js +2 -0
  251. package/dist/components/key-value.js +73 -0
  252. package/dist/components/key-value.js.map +1 -0
  253. package/dist/components/label.js +26 -0
  254. package/dist/components/label.js.map +1 -0
  255. package/dist/components/layout.js +72 -0
  256. package/dist/components/layout.js.map +1 -0
  257. package/dist/components/link.js +2 -0
  258. package/dist/components/list.js +2 -0
  259. package/dist/components/loader.js +38 -0
  260. package/dist/components/loader.js.map +1 -0
  261. package/dist/components/logo.js +2 -0
  262. package/dist/components/markdown.js +4 -0
  263. package/dist/components/menu.js +4 -0
  264. package/dist/components/meter.js +2 -0
  265. package/dist/components/page-header.js +2 -0
  266. package/dist/components/pagination.js +2 -0
  267. package/dist/components/playground.js +813 -0
  268. package/dist/components/playground.js.map +1 -0
  269. package/dist/components/popover.js +53 -0
  270. package/dist/components/popover.js.map +1 -0
  271. package/dist/components/portal.js +15 -0
  272. package/dist/components/portal.js.map +1 -0
  273. package/dist/components/qr-code.js +38 -0
  274. package/dist/components/qr-code.js.map +1 -0
  275. package/dist/components/radio.js +2 -0
  276. package/dist/components/scroll-area.js +35 -0
  277. package/dist/components/scroll-area.js.map +1 -0
  278. package/dist/components/section.js +2 -0
  279. package/dist/components/segmented.js +2 -0
  280. package/dist/components/select.js +2 -0
  281. package/dist/components/separator.js +2 -0
  282. package/dist/components/settings.js +99 -0
  283. package/dist/components/settings.js.map +1 -0
  284. package/dist/components/sheet.js +94 -0
  285. package/dist/components/sheet.js.map +1 -0
  286. package/dist/components/sidebar.js +2 -0
  287. package/dist/components/skeleton.js +2 -0
  288. package/dist/components/slider.js +2 -0
  289. package/dist/components/stat.js +195 -0
  290. package/dist/components/stat.js.map +1 -0
  291. package/dist/components/status-dot.js +2 -0
  292. package/dist/components/surface.js +26 -0
  293. package/dist/components/surface.js.map +1 -0
  294. package/dist/components/swap-text.js +2 -0
  295. package/dist/components/switch.js +2 -0
  296. package/dist/components/table.js +2 -0
  297. package/dist/components/tabs.js +96 -0
  298. package/dist/components/tabs.js.map +1 -0
  299. package/dist/components/tag.js +2 -0
  300. package/dist/components/text.js +2 -0
  301. package/dist/components/theme-menu.js +50 -0
  302. package/dist/components/theme-menu.js.map +1 -0
  303. package/dist/components/timeline.js +58 -0
  304. package/dist/components/timeline.js.map +1 -0
  305. package/dist/components/toast.js +214 -0
  306. package/dist/components/toast.js.map +1 -0
  307. package/dist/components/toc.js +48 -0
  308. package/dist/components/toc.js.map +1 -0
  309. package/dist/components/toolbar.js +2 -0
  310. package/dist/components/tooltip.js +18 -0
  311. package/dist/components/tooltip.js.map +1 -0
  312. package/dist/components/visually-hidden.js +17 -0
  313. package/dist/components/visually-hidden.js.map +1 -0
  314. package/dist/fonts/LICENSE-GeistMono.txt +93 -0
  315. package/dist/fonts/LICENSE-Inter.txt +93 -0
  316. package/dist/fonts/geist-mono-latin-ext-wght-normal.woff2 +0 -0
  317. package/dist/fonts/geist-mono-latin-wght-normal.woff2 +0 -0
  318. package/dist/fonts/inter-latin-ext-opsz-normal.woff2 +0 -0
  319. package/dist/fonts/inter-latin-opsz-normal.woff2 +0 -0
  320. package/dist/fonts.css +40 -0
  321. package/dist/format.js +178 -0
  322. package/dist/format.js.map +1 -0
  323. package/dist/i18n-locales.js +23 -0
  324. package/dist/i18n-locales.js.map +1 -0
  325. package/dist/i18n-provider.js +30 -0
  326. package/dist/i18n-provider.js.map +1 -0
  327. package/dist/i18n.js +7 -0
  328. package/dist/index.js +153 -0
  329. package/dist/kaeso.css +1099 -0
  330. package/dist/styles.css +2 -0
  331. package/dist/tailwind.css +10 -0
  332. package/dist/theme.js +2 -0
  333. package/dist/types/blocks/delete-resource/delete-resource.d.ts +32 -0
  334. package/dist/types/blocks/delete-resource/docs.d.ts +17 -0
  335. package/dist/types/blocks/delete-resource/index.d.ts +1 -0
  336. package/dist/types/blocks/pages/docs.d.ts +42 -0
  337. package/dist/types/blocks/pages/index.d.ts +1 -0
  338. package/dist/types/blocks/pages/pages.d.ts +65 -0
  339. package/dist/types/blocks/resource-list/docs.d.ts +15 -0
  340. package/dist/types/blocks/resource-list/index.d.ts +1 -0
  341. package/dist/types/blocks/resource-list/resource-list.d.ts +36 -0
  342. package/dist/types/component-docs.d.ts +7 -0
  343. package/dist/types/components/app-frame/app-frame.d.ts +79 -0
  344. package/dist/types/components/app-frame/docs.d.ts +23 -0
  345. package/dist/types/components/app-frame/index.d.ts +1 -0
  346. package/dist/types/components/avatar/avatar.d.ts +60 -0
  347. package/dist/types/components/avatar/docs.d.ts +21 -0
  348. package/dist/types/components/avatar/index.d.ts +1 -0
  349. package/dist/types/components/badge/badge.d.ts +41 -0
  350. package/dist/types/components/badge/docs.d.ts +9 -0
  351. package/dist/types/components/badge/index.d.ts +1 -0
  352. package/dist/types/components/banner/banner.d.ts +51 -0
  353. package/dist/types/components/banner/docs.d.ts +14 -0
  354. package/dist/types/components/banner/index.d.ts +1 -0
  355. package/dist/types/components/button/button.d.ts +116 -0
  356. package/dist/types/components/button/docs.d.ts +23 -0
  357. package/dist/types/components/button/index.d.ts +1 -0
  358. package/dist/types/components/button-group/button-group.d.ts +55 -0
  359. package/dist/types/components/button-group/docs.d.ts +11 -0
  360. package/dist/types/components/button-group/index.d.ts +1 -0
  361. package/dist/types/components/calendar/calendar.d.ts +32 -0
  362. package/dist/types/components/calendar/docs.d.ts +16 -0
  363. package/dist/types/components/calendar/index.d.ts +1 -0
  364. package/dist/types/components/charts/bar.d.ts +39 -0
  365. package/dist/types/components/charts/core.d.ts +167 -0
  366. package/dist/types/components/charts/docs.d.ts +174 -0
  367. package/dist/types/components/charts/donut.d.ts +67 -0
  368. package/dist/types/components/charts/gauge.d.ts +20 -0
  369. package/dist/types/components/charts/heatmap.d.ts +24 -0
  370. package/dist/types/components/charts/index.d.ts +8 -0
  371. package/dist/types/components/charts/sankey.d.ts +29 -0
  372. package/dist/types/components/charts/sparkline.d.ts +18 -0
  373. package/dist/types/components/charts/timeseries.d.ts +47 -0
  374. package/dist/types/components/checkbox/checkbox.d.ts +53 -0
  375. package/dist/types/components/checkbox/docs.d.ts +58 -0
  376. package/dist/types/components/checkbox/index.d.ts +1 -0
  377. package/dist/types/components/code/code.d.ts +24 -0
  378. package/dist/types/components/code/docs.d.ts +8 -0
  379. package/dist/types/components/code/index.d.ts +1 -0
  380. package/dist/types/components/code-block/code-block.d.ts +37 -0
  381. package/dist/types/components/code-block/docs.d.ts +41 -0
  382. package/dist/types/components/code-block/highlighter.d.ts +23 -0
  383. package/dist/types/components/code-block/index.d.ts +4 -0
  384. package/dist/types/components/code-block/json-view.d.ts +23 -0
  385. package/dist/types/components/code-block/kaeso-theme.d.ts +66 -0
  386. package/dist/types/components/collapsible/collapsible.d.ts +39 -0
  387. package/dist/types/components/collapsible/docs.d.ts +21 -0
  388. package/dist/types/components/collapsible/index.d.ts +1 -0
  389. package/dist/types/components/combobox/combobox.d.ts +86 -0
  390. package/dist/types/components/combobox/docs.d.ts +62 -0
  391. package/dist/types/components/combobox/index.d.ts +1 -0
  392. package/dist/types/components/command-palette/command-palette.d.ts +44 -0
  393. package/dist/types/components/command-palette/docs.d.ts +17 -0
  394. package/dist/types/components/command-palette/index.d.ts +1 -0
  395. package/dist/types/components/copy-button/copy-button.d.ts +85 -0
  396. package/dist/types/components/copy-button/docs.d.ts +30 -0
  397. package/dist/types/components/copy-button/index.d.ts +1 -0
  398. package/dist/types/components/data-table/columns.d.ts +47 -0
  399. package/dist/types/components/data-table/data-table.d.ts +80 -0
  400. package/dist/types/components/data-table/docs.d.ts +32 -0
  401. package/dist/types/components/data-table/index.d.ts +3 -0
  402. package/dist/types/components/date-picker/date-picker.d.ts +55 -0
  403. package/dist/types/components/date-picker/date-popup.d.ts +9 -0
  404. package/dist/types/components/date-picker/docs.d.ts +73 -0
  405. package/dist/types/components/date-picker/index.d.ts +2 -0
  406. package/dist/types/components/date-picker/iso-field.d.ts +5 -0
  407. package/dist/types/components/date-picker/range-popup.d.ts +13 -0
  408. package/dist/types/components/date-picker/time-input.d.ts +39 -0
  409. package/dist/types/components/dialog/dialog.d.ts +118 -0
  410. package/dist/types/components/dialog/docs.d.ts +70 -0
  411. package/dist/types/components/dialog/focus.d.ts +2 -0
  412. package/dist/types/components/dialog/index.d.ts +2 -0
  413. package/dist/types/components/dialog/step-dialog.d.ts +26 -0
  414. package/dist/types/components/display-options/display-options.d.ts +55 -0
  415. package/dist/types/components/display-options/docs.d.ts +14 -0
  416. package/dist/types/components/display-options/index.d.ts +1 -0
  417. package/dist/types/components/empty/docs.d.ts +12 -0
  418. package/dist/types/components/empty/empty.d.ts +29 -0
  419. package/dist/types/components/empty/index.d.ts +1 -0
  420. package/dist/types/components/field/docs.d.ts +20 -0
  421. package/dist/types/components/field/field.d.ts +78 -0
  422. package/dist/types/components/field/index.d.ts +1 -0
  423. package/dist/types/components/filter-chip/docs.d.ts +19 -0
  424. package/dist/types/components/filter-chip/filter-chip.d.ts +37 -0
  425. package/dist/types/components/filter-chip/index.d.ts +1 -0
  426. package/dist/types/components/filter-row/docs.d.ts +11 -0
  427. package/dist/types/components/filter-row/filter-row.d.ts +23 -0
  428. package/dist/types/components/filter-row/index.d.ts +1 -0
  429. package/dist/types/components/flow/docs.d.ts +12 -0
  430. package/dist/types/components/flow/flow.d.ts +34 -0
  431. package/dist/types/components/flow/index.d.ts +1 -0
  432. package/dist/types/components/heading/docs.d.ts +10 -0
  433. package/dist/types/components/heading/heading.d.ts +30 -0
  434. package/dist/types/components/heading/index.d.ts +1 -0
  435. package/dist/types/components/icon/docs.d.ts +10 -0
  436. package/dist/types/components/icon/icon.d.ts +37 -0
  437. package/dist/types/components/icon/index.d.ts +2 -0
  438. package/dist/types/components/icon-button/docs.d.ts +17 -0
  439. package/dist/types/components/icon-button/icon-button.d.ts +75 -0
  440. package/dist/types/components/icon-button/index.d.ts +1 -0
  441. package/dist/types/components/input/decimal.d.ts +11 -0
  442. package/dist/types/components/input/docs.d.ts +149 -0
  443. package/dist/types/components/input/index.d.ts +8 -0
  444. package/dist/types/components/input/input-group.d.ts +55 -0
  445. package/dist/types/components/input/input.d.ts +45 -0
  446. package/dist/types/components/input/number-input.d.ts +28 -0
  447. package/dist/types/components/input/otp-input.d.ts +27 -0
  448. package/dist/types/components/input/sensitive-input.d.ts +21 -0
  449. package/dist/types/components/input/tag-input.d.ts +27 -0
  450. package/dist/types/components/input/textarea.d.ts +25 -0
  451. package/dist/types/components/kaeso/conversation.d.ts +58 -0
  452. package/dist/types/components/kaeso/docs.d.ts +139 -0
  453. package/dist/types/components/kaeso/effective-access.d.ts +21 -0
  454. package/dist/types/components/kaeso/identity.d.ts +70 -0
  455. package/dist/types/components/kaeso/index.d.ts +8 -0
  456. package/dist/types/components/kaeso/moments.d.ts +30 -0
  457. package/dist/types/components/kaeso/provider-marks.d.ts +1 -0
  458. package/dist/types/components/kaeso/rights-logic.d.ts +13 -0
  459. package/dist/types/components/kaeso/rights.d.ts +69 -0
  460. package/dist/types/components/kaeso/role-picker.d.ts +38 -0
  461. package/dist/types/components/kaeso/usage.d.ts +35 -0
  462. package/dist/types/components/kbd/docs.d.ts +16 -0
  463. package/dist/types/components/kbd/index.d.ts +1 -0
  464. package/dist/types/components/kbd/kbd.d.ts +31 -0
  465. package/dist/types/components/key-value/docs.d.ts +10 -0
  466. package/dist/types/components/key-value/index.d.ts +1 -0
  467. package/dist/types/components/key-value/key-value.d.ts +50 -0
  468. package/dist/types/components/label/docs.d.ts +10 -0
  469. package/dist/types/components/label/index.d.ts +1 -0
  470. package/dist/types/components/label/label.d.ts +22 -0
  471. package/dist/types/components/layout/docs.d.ts +30 -0
  472. package/dist/types/components/layout/index.d.ts +1 -0
  473. package/dist/types/components/layout/layout.d.ts +100 -0
  474. package/dist/types/components/link/docs.d.ts +11 -0
  475. package/dist/types/components/link/index.d.ts +1 -0
  476. package/dist/types/components/link/link.d.ts +27 -0
  477. package/dist/types/components/list/docs.d.ts +75 -0
  478. package/dist/types/components/list/index.d.ts +1 -0
  479. package/dist/types/components/list/list.d.ts +119 -0
  480. package/dist/types/components/list/row-checkbox.d.ts +5 -0
  481. package/dist/types/components/list/virtual-rows.d.ts +10 -0
  482. package/dist/types/components/loader/docs.d.ts +21 -0
  483. package/dist/types/components/loader/index.d.ts +2 -0
  484. package/dist/types/components/loader/loader.d.ts +35 -0
  485. package/dist/types/components/loader/status.d.ts +55 -0
  486. package/dist/types/components/logo/docs.d.ts +10 -0
  487. package/dist/types/components/logo/index.d.ts +1 -0
  488. package/dist/types/components/logo/logo.d.ts +59 -0
  489. package/dist/types/components/logo/paths.d.ts +16 -0
  490. package/dist/types/components/markdown/docs.d.ts +15 -0
  491. package/dist/types/components/markdown/index.d.ts +1 -0
  492. package/dist/types/components/markdown/markdown.d.ts +54 -0
  493. package/dist/types/components/menu/docs.d.ts +19 -0
  494. package/dist/types/components/menu/index.d.ts +2 -0
  495. package/dist/types/components/menu/menu.d.ts +213 -0
  496. package/dist/types/components/menu/styles.d.ts +7 -0
  497. package/dist/types/components/meter/docs.d.ts +23 -0
  498. package/dist/types/components/meter/index.d.ts +1 -0
  499. package/dist/types/components/meter/meter.d.ts +51 -0
  500. package/dist/types/components/page-header/docs.d.ts +12 -0
  501. package/dist/types/components/page-header/index.d.ts +1 -0
  502. package/dist/types/components/page-header/page-header.d.ts +22 -0
  503. package/dist/types/components/pagination/docs.d.ts +17 -0
  504. package/dist/types/components/pagination/index.d.ts +1 -0
  505. package/dist/types/components/pagination/pagination.d.ts +33 -0
  506. package/dist/types/components/playground/compare-grid.d.ts +41 -0
  507. package/dist/types/components/playground/composer.d.ts +40 -0
  508. package/dist/types/components/playground/docs.d.ts +141 -0
  509. package/dist/types/components/playground/index.d.ts +7 -0
  510. package/dist/types/components/playground/model-picker.d.ts +37 -0
  511. package/dist/types/components/playground/parameter-panel.d.ts +52 -0
  512. package/dist/types/components/playground/prompt-suggestions.d.ts +23 -0
  513. package/dist/types/components/playground/response-metrics.d.ts +30 -0
  514. package/dist/types/components/playground/response-view.d.ts +55 -0
  515. package/dist/types/components/popover/docs.d.ts +21 -0
  516. package/dist/types/components/popover/hover-card.d.ts +24 -0
  517. package/dist/types/components/popover/index.d.ts +2 -0
  518. package/dist/types/components/popover/popover-root.d.ts +24 -0
  519. package/dist/types/components/popover/popover.d.ts +40 -0
  520. package/dist/types/components/portal/docs.d.ts +9 -0
  521. package/dist/types/components/portal/index.d.ts +1 -0
  522. package/dist/types/components/portal/portal.d.ts +11 -0
  523. package/dist/types/components/qr-code/docs.d.ts +10 -0
  524. package/dist/types/components/qr-code/index.d.ts +1 -0
  525. package/dist/types/components/qr-code/qr-code.d.ts +22 -0
  526. package/dist/types/components/radio/docs.d.ts +42 -0
  527. package/dist/types/components/radio/index.d.ts +1 -0
  528. package/dist/types/components/radio/labelled.d.ts +13 -0
  529. package/dist/types/components/radio/radio.d.ts +51 -0
  530. package/dist/types/components/scroll-area/docs.d.ts +11 -0
  531. package/dist/types/components/scroll-area/index.d.ts +1 -0
  532. package/dist/types/components/scroll-area/scroll-area.d.ts +28 -0
  533. package/dist/types/components/section/docs.d.ts +28 -0
  534. package/dist/types/components/section/index.d.ts +1 -0
  535. package/dist/types/components/section/section.d.ts +37 -0
  536. package/dist/types/components/segmented/docs.d.ts +15 -0
  537. package/dist/types/components/segmented/index.d.ts +1 -0
  538. package/dist/types/components/segmented/segmented.d.ts +37 -0
  539. package/dist/types/components/select/docs.d.ts +32 -0
  540. package/dist/types/components/select/index.d.ts +1 -0
  541. package/dist/types/components/select/select.d.ts +82 -0
  542. package/dist/types/components/separator/docs.d.ts +10 -0
  543. package/dist/types/components/separator/index.d.ts +1 -0
  544. package/dist/types/components/separator/separator.d.ts +33 -0
  545. package/dist/types/components/settings/docs.d.ts +32 -0
  546. package/dist/types/components/settings/index.d.ts +1 -0
  547. package/dist/types/components/settings/settings.d.ts +45 -0
  548. package/dist/types/components/sheet/docs.d.ts +20 -0
  549. package/dist/types/components/sheet/index.d.ts +1 -0
  550. package/dist/types/components/sheet/sheet.d.ts +51 -0
  551. package/dist/types/components/sidebar/docs.d.ts +20 -0
  552. package/dist/types/components/sidebar/index.d.ts +1 -0
  553. package/dist/types/components/sidebar/sidebar-menu.d.ts +16 -0
  554. package/dist/types/components/sidebar/sidebar.d.ts +178 -0
  555. package/dist/types/components/skeleton/docs.d.ts +14 -0
  556. package/dist/types/components/skeleton/index.d.ts +1 -0
  557. package/dist/types/components/skeleton/skeleton.d.ts +31 -0
  558. package/dist/types/components/slider/docs.d.ts +20 -0
  559. package/dist/types/components/slider/index.d.ts +1 -0
  560. package/dist/types/components/slider/slider.d.ts +29 -0
  561. package/dist/types/components/stat/docs.d.ts +35 -0
  562. package/dist/types/components/stat/index.d.ts +1 -0
  563. package/dist/types/components/stat/stat.d.ts +68 -0
  564. package/dist/types/components/status-dot/docs.d.ts +18 -0
  565. package/dist/types/components/status-dot/index.d.ts +1 -0
  566. package/dist/types/components/status-dot/status-dot.d.ts +36 -0
  567. package/dist/types/components/surface/docs.d.ts +8 -0
  568. package/dist/types/components/surface/index.d.ts +1 -0
  569. package/dist/types/components/surface/surface.d.ts +44 -0
  570. package/dist/types/components/swap-text/docs.d.ts +10 -0
  571. package/dist/types/components/swap-text/index.d.ts +1 -0
  572. package/dist/types/components/swap-text/swap-text.d.ts +22 -0
  573. package/dist/types/components/switch/docs.d.ts +21 -0
  574. package/dist/types/components/switch/index.d.ts +1 -0
  575. package/dist/types/components/switch/switch.d.ts +39 -0
  576. package/dist/types/components/table/docs.d.ts +6 -0
  577. package/dist/types/components/table/index.d.ts +1 -0
  578. package/dist/types/components/table/table.d.ts +30 -0
  579. package/dist/types/components/tabs/docs.d.ts +22 -0
  580. package/dist/types/components/tabs/index.d.ts +1 -0
  581. package/dist/types/components/tabs/tabs.d.ts +61 -0
  582. package/dist/types/components/tag/docs.d.ts +30 -0
  583. package/dist/types/components/tag/index.d.ts +1 -0
  584. package/dist/types/components/tag/tag.d.ts +63 -0
  585. package/dist/types/components/text/docs.d.ts +15 -0
  586. package/dist/types/components/text/index.d.ts +1 -0
  587. package/dist/types/components/text/text.d.ts +111 -0
  588. package/dist/types/components/theme-menu/docs.d.ts +9 -0
  589. package/dist/types/components/theme-menu/index.d.ts +1 -0
  590. package/dist/types/components/theme-menu/theme-menu.d.ts +22 -0
  591. package/dist/types/components/timeline/docs.d.ts +8 -0
  592. package/dist/types/components/timeline/index.d.ts +1 -0
  593. package/dist/types/components/timeline/timeline.d.ts +41 -0
  594. package/dist/types/components/toast/docs.d.ts +26 -0
  595. package/dist/types/components/toast/index.d.ts +1 -0
  596. package/dist/types/components/toast/toast.d.ts +91 -0
  597. package/dist/types/components/toc/docs.d.ts +10 -0
  598. package/dist/types/components/toc/index.d.ts +1 -0
  599. package/dist/types/components/toc/toc.d.ts +27 -0
  600. package/dist/types/components/toolbar/docs.d.ts +9 -0
  601. package/dist/types/components/toolbar/index.d.ts +1 -0
  602. package/dist/types/components/toolbar/toolbar.d.ts +28 -0
  603. package/dist/types/components/tooltip/docs.d.ts +33 -0
  604. package/dist/types/components/tooltip/index.d.ts +2 -0
  605. package/dist/types/components/tooltip/tooltip-provider.d.ts +8 -0
  606. package/dist/types/components/tooltip/tooltip-root.d.ts +9 -0
  607. package/dist/types/components/tooltip/tooltip.d.ts +60 -0
  608. package/dist/types/components/tooltip/trigger-props.d.ts +23 -0
  609. package/dist/types/components/visually-hidden/docs.d.ts +6 -0
  610. package/dist/types/components/visually-hidden/index.d.ts +1 -0
  611. package/dist/types/components/visually-hidden/visually-hidden.d.ts +4 -0
  612. package/dist/types/format/index.d.ts +26 -0
  613. package/dist/types/hooks/scroll-parent.d.ts +1 -0
  614. package/dist/types/hooks/use-copy.d.ts +4 -0
  615. package/dist/types/hooks/use-indicator.d.ts +9 -0
  616. package/dist/types/hooks/use-layout-width.d.ts +3 -0
  617. package/dist/types/hooks/use-scroll-margin.d.ts +2 -0
  618. package/dist/types/hooks/use-stored-state.d.ts +1 -0
  619. package/dist/types/hooks/use-truncated.d.ts +2 -0
  620. package/dist/types/i18n/context.d.ts +11 -0
  621. package/dist/types/i18n/index.d.ts +5 -0
  622. package/dist/types/i18n/locale-names.d.ts +2 -0
  623. package/dist/types/i18n/locale-tags.d.ts +4 -0
  624. package/dist/types/i18n/locales/de.d.ts +2 -0
  625. package/dist/types/i18n/locales/en.d.ts +2 -0
  626. package/dist/types/i18n/locales/zh-CN.d.ts +2 -0
  627. package/dist/types/i18n/message.d.ts +2 -0
  628. package/dist/types/i18n/provider.d.ts +10 -0
  629. package/dist/types/icons/groups.d.ts +8 -0
  630. package/dist/types/icons/vocabulary.d.ts +413 -0
  631. package/dist/types/index.d.ts +79 -0
  632. package/dist/types/theme/index.d.ts +1 -0
  633. package/dist/types/theme/theme-provider.d.ts +22 -0
  634. package/dist/types/utils/arrow-focus.d.ts +2 -0
  635. package/dist/types/utils/cn.d.ts +370 -0
  636. package/dist/types/utils/dev.d.ts +4 -0
  637. package/dist/types/utils/field-press.d.ts +2 -0
  638. package/dist/types/utils/index.d.ts +8 -0
  639. package/dist/types/utils/inset.d.ts +6 -0
  640. package/dist/types/utils/lazy-module.d.ts +8 -0
  641. package/dist/types/utils/link-provider.d.ts +15 -0
  642. package/dist/types/utils/portal-context.d.ts +10 -0
  643. package/dist/types/utils/restore-focus.d.ts +4 -0
  644. package/dist/types/utils/safe-href.d.ts +1 -0
  645. package/dist/types/utils/tone.d.ts +2 -0
  646. package/dist/types/utils/use-controllable.d.ts +1 -0
  647. package/dist/types/utils/variants.d.ts +5 -0
  648. package/dist/types/utils/when-idle.d.ts +1 -0
  649. package/dist/utils.js +9 -0
  650. package/foundations/accessibility.md +41 -0
  651. package/foundations/color.md +40 -0
  652. package/foundations/elevation.md +23 -0
  653. package/foundations/icons.md +14 -0
  654. package/foundations/motion.md +39 -0
  655. package/foundations/psychology.md +36 -0
  656. package/foundations/shape.md +41 -0
  657. package/foundations/tokens.md +24 -0
  658. package/foundations/typography.md +35 -0
  659. package/foundations/writing.md +39 -0
  660. package/package.json +144 -0
package/ai/icons.md ADDED
@@ -0,0 +1,28 @@
1
+ # Icon vocabulary
2
+
3
+ Version 0.1.0. Generated from `src/icons/vocabulary.ts`; do not edit. Use the name, never an icon picked by look: `icons.key` always means a key. Hugeicons, Stroke Rounded. Rules: `foundations/icons.md`.
4
+
5
+ ## Kaeso objects
6
+
7
+ `key`, `providerKey`, `project`, `organization`, `model`, `playground`, `alias`, `limit`, `budget`, `requestLog`, `usage`, `member`, `members`, `serviceAccount`, `settings`, `audit`, `instance`, `provider`, `route`, `gateway`, `database`, `security`, `session`, `overview`, `chart`, `home`
8
+
9
+ ## Capabilities
10
+
11
+ `tools`, `reasoning`, `vision`, `pdf`, `structuredOutput`
12
+
13
+ ## Actions
14
+
15
+ `signOut`, `copy`, `externalLink`, `openExternal`, `add`, `close`, `edit`, `delete`, `download`, `upload`, `refresh`, `retry`, `search`, `filter`, `displayOptions`, `more`, `menu`, `sort`, `switcher`, `expand`, `collapse`, `show`, `hide`, `reveal`, `sidebar`, `sidePanel`, `list`, `board`, `stack`
16
+
17
+ ## Status
18
+
19
+ `check`, `success`, `warning`, `error`, `info`, `minus`, `notification`
20
+
21
+ ## Navigation
22
+
23
+ `chevronDown`, `chevronUp`, `chevronLeft`, `chevronRight`, `arrowRight`
24
+
25
+ ## Misc
26
+
27
+ `calendar`, `time`, `code`, `mail`, `keyboard`, `help`, `github`, `themeLight`, `themeDark`, `themeSystem`
28
+
package/ai/tokens.md ADDED
@@ -0,0 +1,207 @@
1
+ # @logicplanes/kaeso-ui tokens
2
+
3
+ Version 0.1.0. Generated from `@logicplanes/kaeso-tokens`; do not edit. Components use these through role names (`bg-panel`, `text-fg-secondary`, `h-36`, `rounded-pill`); a raw value never appears in a component. How to use them: `foundations/*.md`.
4
+
5
+ ## Neutrals
6
+
7
+ | Variable | Light | Dark |
8
+ |---|---|---|
9
+ | `--k-bg-panel` | #ffffff | #000000 |
10
+ | `--k-bg-chrome` | #f5f5f5 | #0a0a0a |
11
+ | `--k-bg-raised` | #ffffff | #111111 |
12
+ | `--k-fill-1` | #f5f5f5 | #141414 |
13
+ | `--k-fill-2` | #ebebeb | #1c1c1c |
14
+ | `--k-fill-3` | #e0e0e0 | #262626 |
15
+ | `--k-line-subtle` | #f0f0f0 | #171717 |
16
+ | `--k-line` | #e5e5e5 | #222222 |
17
+ | `--k-line-strong` | #d4d4d4 | #333333 |
18
+ | `--k-text` | #0a0a0a | #fafafa |
19
+ | `--k-text-secondary` | #666666 | #a3a3a3 |
20
+ | `--k-text-tertiary` | #707070 | #858585 |
21
+ | `--k-text-disabled` | #b8b8b8 | #4d4d4d |
22
+ | `--k-ink` | #0a0a0a | #fafafa |
23
+ | `--k-on-ink` | #ffffff | #000000 |
24
+ | `--k-focus` | #0a0a0a | #fafafa |
25
+ | `--k-overlay` | rgb(0 0 0 / 0.24) | rgb(0 0 0 / 0.72) |
26
+ | `--k-panel-ring` | #e5e5e5 | #1a1a1a |
27
+ | `--k-toast-bg` | #0a0a0a | #1c1c1c |
28
+ | `--k-scan` | #ffffff | #ffffff |
29
+ | `--k-on-scan` | #0a0a0a | #0a0a0a |
30
+ | `--k-toast-fg` | #fafafa | #fafafa |
31
+ | `--k-toast-fg-secondary` | #a3a3a3 | #a3a3a3 |
32
+ | `--k-toast-ring` | rgb(255 255 255 / 0.06) | rgb(255 255 255 / 0.09) |
33
+ | `--k-toast-action` | rgb(255 255 255 / 0.12) | rgb(255 255 255 / 0.1) |
34
+ | `--k-toast-action-hover` | rgb(255 255 255 / 0.2) | rgb(255 255 255 / 0.16) |
35
+ | `--k-toast-danger` | #f87171 | #f87171 |
36
+ | `--k-item-hover` | #f5f5f5 | #222222 |
37
+ | `--k-item-pressed` | #ebebeb | #2b2b2b |
38
+ | `--k-control-on-fill` | #ffffff | #222222 |
39
+ | `--k-control-on-fill-hover` | #fafafa | #2b2b2b |
40
+ | `--k-bg-tooltip` | #ffffff | #1c1c1c |
41
+
42
+ ## Status
43
+
44
+ | Variable | Light | Dark |
45
+ |---|---|---|
46
+ | `--k-success` | #22c55e | #22c55e |
47
+ | `--k-success-text` | #166534 | #4ade80 |
48
+ | `--k-success-tint` | #f0fdf4 | color-mix(in oklab, #22c55e 20%, #000) |
49
+ | `--k-warning` | #f59e0b | #f59e0b |
50
+ | `--k-warning-text` | #92400e | #fbbf24 |
51
+ | `--k-warning-tint` | #fffbeb | color-mix(in oklab, #f59e0b 20%, #000) |
52
+ | `--k-danger` | #ef4444 | #ef4444 |
53
+ | `--k-danger-text` | #b91c1c | #f87171 |
54
+ | `--k-danger-tint` | #fef2f2 | color-mix(in oklab, #ef4444 22%, #000) |
55
+ | `--k-info` | #3b82f6 | #3b82f6 |
56
+ | `--k-info-text` | #1d4ed8 | #60a5fa |
57
+ | `--k-info-tint` | #eff6ff | color-mix(in oklab, #3b82f6 22%, #000) |
58
+
59
+ ## Data
60
+
61
+ | Variable | Series | Light | Dark |
62
+ |---|---|---|---|
63
+ | `--k-viz-1` | blue | #3b82f6 | #60a5fa |
64
+ | `--k-viz-2` | amber | #f59e0b | #fbbf24 |
65
+ | `--k-viz-3` | emerald | #10b981 | #34d399 |
66
+ | `--k-viz-4` | rose | #f43f5e | #fb7185 |
67
+ | `--k-viz-5` | violet | #8b5cf6 | #a78bfa |
68
+ | `--k-viz-6` | teal | #14b8a6 | #2dd4bf |
69
+ | `--k-viz-7` | orange | #f97316 | #fb923c |
70
+ | `--k-viz-8` | fuchsia | #d946ef | #e879f9 |
71
+
72
+ ## Type
73
+
74
+ | Utility | Size / line height | Weight | Tracking |
75
+ |---|---|---|---|
76
+ | `text-micro` | 11/14px | 500 | 0.01em |
77
+ | `text-caption` | 12/16px | 500 | |
78
+ | `text-small` | 13/18px | 400 | |
79
+ | `text-body` | 14/20px | 400 | |
80
+ | `text-body-lg` | 15/22px | 500 | -0.005em |
81
+ | `text-title-sm` | 17/24px | 600 | -0.01em |
82
+ | `text-title` | 20/28px | 600 | -0.015em |
83
+ | `text-title-lg` | 28/34px | 600 | -0.022em |
84
+ | `text-display` | 40/44px | 600 | -0.03em |
85
+ | `text-metric` | 28/32px | 600 | -0.02em |
86
+
87
+ ## Controls
88
+
89
+ | Variable | Height | Padding | Icon | Gap |
90
+ |---|---|---|---|---|
91
+ | `--k-control-xs` | 24px | 10 | 14 | 4 |
92
+ | `--k-control-sm` | 32px | 12 | 16 | 6 |
93
+ | `--k-control-md` | 36px | 16 | 16 | 6 |
94
+ | `--k-control-lg` | 40px | 18 | 18 | 8 |
95
+ | `--k-control-xl` | 48px | 22 | 20 | 8 |
96
+
97
+ ## Rows
98
+
99
+ | Variable | Height |
100
+ |---|---|
101
+ | `--k-row-list` | 44px |
102
+ | `--k-row-table` | 40px |
103
+ | `--k-row-table-compact` | 36px |
104
+ | `--k-row-table-comfortable` | 48px |
105
+ | `--k-row-menu` | 34px |
106
+ | `--k-row-menu-coarse` | 44px |
107
+ | `--k-row-sidebar` | 32px |
108
+ | `--k-row-option` | 34px |
109
+ | `--k-row-settings` | 64px |
110
+ | `--k-row-settings-single` | 56px |
111
+ | `--k-row-group-header` | 36px |
112
+ | `--k-row-palette` | 40px |
113
+
114
+ ## Radii
115
+
116
+ | Utility | Value |
117
+ |---|---|
118
+ | `rounded-pill` | pill |
119
+ | `rounded-panel` | 12px |
120
+ | `rounded-menu` | 16px |
121
+ | `rounded-item` | 10px |
122
+ | `rounded-popover` | 16px |
123
+ | `rounded-dialog` | 20px |
124
+ | `rounded-sheet` | 16px |
125
+ | `rounded-group` | 14px |
126
+ | `rounded-well` | 14px |
127
+ | `rounded-tooltip` | 12px |
128
+ | `rounded-palette` | 20px |
129
+ | `rounded-palette-item` | 12px |
130
+ | `rounded-checkbox` | 5px |
131
+ | `rounded-org` | 8px |
132
+ | `rounded-kbd` | 6px |
133
+ | `rounded-code` | 6px |
134
+ | `rounded-bar` | 3px |
135
+ | `rounded-cell` | 3px |
136
+ | `rounded-avatar` | 6px |
137
+ | `rounded-field` | 18px |
138
+ | `rounded-textarea` | 14px |
139
+ | `rounded-cell-lg` | 14px |
140
+ | `rounded-tooltip-lg` | 20px |
141
+ | `rounded-frame` | 24px |
142
+ | `rounded-toast` | 22px |
143
+
144
+ ## Elevation
145
+
146
+ | Utility | Light | Dark |
147
+ |---|---|---|
148
+ | `shadow-ring` | `inset 0 0 0 1px var(--k-line)` | `inset 0 0 0 1px var(--k-line)` |
149
+ | `shadow-control` | `inset 0 0 0 1px var(--k-line), 0 1px 2px rgb(0 0 0 / 0.05)` | `inset 0 0 0 1px var(--k-line)` |
150
+ | `shadow-control-hover` | `inset 0 0 0 1px var(--k-line-strong), 0 1px 2px rgb(0 0 0 / 0.05)` | `inset 0 0 0 1px var(--k-line-strong)` |
151
+ | `shadow-control-on-fill` | `inset 0 0 0 1px var(--k-line-strong)` | `inset 0 0 0 1px var(--k-line-strong)` |
152
+ | `shadow-selector` | `inset 0 0 0 1px var(--k-line-strong), 0 1px 2px rgb(0 0 0 / 0.05)` | `inset 0 0 0 1px var(--k-line-strong)` |
153
+ | `shadow-selector-hover` | `inset 0 0 0 1px var(--k-text-disabled), 0 1px 2px rgb(0 0 0 / 0.05)` | `inset 0 0 0 1px var(--k-text-disabled)` |
154
+ | `shadow-frame` | `0 0 0 1px var(--k-line)` | `0 0 0 1px var(--k-line)` |
155
+ | `shadow-xs` | `0 0 0 1px var(--k-line), 0 1px 2px rgb(0 0 0 / 0.03)` | `0 0 0 1px var(--k-line)` |
156
+ | `shadow-raised` | `0 0 0 1px var(--k-line), 0 4px 8px -2px rgb(0 0 0 / 0.06), 0 16px 32px -8px rgb(0 0 0 / 0.14)` | `0 0 0 1px #262626, 0 16px 40px rgb(0 0 0 / 0.8)` |
157
+ | `shadow-dialog` | `0 0 0 1px var(--k-line), 0 24px 64px -16px rgb(0 0 0 / 0.24)` | `0 0 0 1px #2a2a2a, 0 32px 80px rgb(0 0 0 / 0.9)` |
158
+ | `shadow-panel` | `0 0 0 1px var(--k-panel-ring), 0 1px 2px rgb(0 0 0 / 0.03)` | `0 0 0 1px var(--k-panel-ring)` |
159
+ | `shadow-segment` | `inset 0 0 0 1px var(--k-line), 0 1px 2px rgb(0 0 0 / 0.06)` | `inset 0 0 0 1px var(--k-line-strong)` |
160
+ | `shadow-toast` | `inset 0 0 0 1px var(--k-toast-ring), 0 2px 6px rgb(0 0 0 / 0.12), 0 12px 32px -8px rgb(0 0 0 / 0.35)` | `inset 0 0 0 1px var(--k-toast-ring), 0 2px 6px rgb(0 0 0 / 0.6), 0 16px 40px rgb(0 0 0 / 0.8)` |
161
+ | `shadow-thumb` | `0 1px 2px rgb(0 0 0 / 0.16), 0 0 0 1px rgb(0 0 0 / 0.04)` | `0 1px 2px rgb(0 0 0 / 0.5)` |
162
+
163
+ ## Motion
164
+
165
+ | Variable | Value |
166
+ |---|---|
167
+ | `--k-duration-fast` | 120ms |
168
+ | `--k-duration-close-overlay` | 110ms |
169
+ | `--k-duration-overlay` | 160ms |
170
+ | `--k-duration-close-dialog` | 140ms |
171
+ | `--k-duration-dialog` | 200ms |
172
+ | `--k-duration-close-sheet` | 180ms |
173
+ | `--k-duration-sheet` | 240ms |
174
+ | `--k-duration-toast-in` | 220ms |
175
+ | `--k-duration-toast-out` | 160ms |
176
+ | `--k-duration-indicator` | 180ms |
177
+ | `--k-duration-disclosure` | 200ms |
178
+ | `--k-duration-chart` | 240ms |
179
+ | `--k-duration-check` | 140ms |
180
+ | `--k-duration-radio` | 160ms |
181
+ | `--k-duration-copied` | 1200ms |
182
+ | `--k-duration-fresh` | 1000ms |
183
+ | `--k-ease-standard` | cubic-bezier(0.2, 0, 0, 1) |
184
+ | `--k-ease-overlay` | cubic-bezier(0.16, 1, 0.3, 1) |
185
+ | `--k-ease-exit` | cubic-bezier(0.4, 0, 1, 1) |
186
+ | `--k-ease-pulse` | cubic-bezier(0.4, 0, 0.6, 1) |
187
+ | `--k-spinner-turn` | 2400ms |
188
+ | `--k-skeleton-duration` | 1600ms |
189
+ | spinner delay (before it shows) | 300ms |
190
+ | spinner minimum (once shown) | 400ms |
191
+
192
+ ## Layers
193
+
194
+ | Variable | Value |
195
+ |---|---|
196
+ | `--k-z-sticky` | 10 |
197
+ | `--k-z-sheet` | 40 |
198
+ | `--k-z-overlay` | 50 |
199
+ | `--k-z-toast` | 60 |
200
+ | `--k-z-tooltip` | 70 |
201
+
202
+ ## Lengths
203
+
204
+ Every length a component may use. The class suffix is the pixel value: `h-36` is 36px. Spacing scale: 2, 4, 6, 8, 12, 16, 20, 24, 32, 40, 48, 64, 80, 96.
205
+
206
+ 0, 1, 2, 3, 4, 5, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 28, 32, 34, 36, 40, 44, 48, 52, 56, 60, 64, 72, 80, 96, 112, 120, 140, 160, 180, 200, 220, 240, 248, 260, 280, 320, 360, 400, 440, 480, 560, 640, 720, 760, 800
207
+
@@ -0,0 +1,35 @@
1
+ "use client";
2
+ import { i as e } from "../chunks/context-BELWW79w.js";
3
+ import { t } from "../chunks/dialog-CVqSVk3T.js";
4
+ import { jsx as n } from "react/jsx-runtime";
5
+ //#region src/blocks/delete-resource/delete-resource.tsx
6
+ var r = { confirm: {
7
+ typed: { classes: "" },
8
+ simple: { classes: "" }
9
+ } }, i = { confirm: "typed" };
10
+ function a({ kind: r, name: i, consequence: a, verb: o, confirm: s = "typed", onConfirm: c, trigger: l, open: u, onOpenChange: d, inline: f }) {
11
+ let p = e();
12
+ return /* @__PURE__ */ n(t, {
13
+ title: o === void 0 ? p("deleteResource.deleteTitle", "Delete this {kind}?", { kind: r }) : p("deleteResource.title", "{verb} this {kind}?", {
14
+ verb: o,
15
+ kind: r
16
+ }),
17
+ description: a,
18
+ confirmLabel: o === void 0 ? p("deleteResource.deleteConfirm", "Delete {kind}", { kind: r }) : p("deleteResource.confirm", "{verb} {kind}", {
19
+ verb: o,
20
+ kind: r
21
+ }),
22
+ onConfirm: c,
23
+ tone: "danger",
24
+ ...s === "typed" ? { confirmText: i } : {},
25
+ ...l ? { trigger: l } : {},
26
+ ...u === void 0 ? {} : { open: u },
27
+ ...d ? { onOpenChange: d } : {},
28
+ ...f ? { inline: f } : {}
29
+ });
30
+ }
31
+ process.env.NODE_ENV !== "production" && (a.displayName = "DeleteResource");
32
+ //#endregion
33
+ export { a as DeleteResource, i as KAESO_DELETE_RESOURCE_DEFAULT_VARIANTS, r as KAESO_DELETE_RESOURCE_VARIANTS };
34
+
35
+ //# sourceMappingURL=delete-resource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-resource.js","names":["useUiText","KAESO_DELETE_RESOURCE_VARIANTS","KAESO_DELETE_RESOURCE_DEFAULT_VARIANTS","DeleteResource","t","AlertDialog","verb","consequence","confirm","name","trigger","open","onOpenChange","inline"],"sources":["../../src/blocks/delete-resource/delete-resource.tsx"],"sourcesContent":["import type { ReactElement, ReactNode } from \"react\";\nimport { AlertDialog } from \"../../components/dialog/dialog.js\";\nimport { useUiText } from \"../../i18n/context.js\";\n\nexport const KAESO_DELETE_RESOURCE_VARIANTS = {\n confirm: {\n typed: { classes: \"\" },\n simple: { classes: \"\" },\n },\n} as const;\nexport const KAESO_DELETE_RESOURCE_DEFAULT_VARIANTS = { confirm: \"typed\" } as const;\n\nexport interface DeleteResourceProps {\n kind: string;\n name: string;\n consequence: ReactNode;\n verb?: string | undefined;\n confirm?: keyof typeof KAESO_DELETE_RESOURCE_VARIANTS.confirm | undefined;\n onConfirm: () => void | Promise<void>;\n trigger?: ReactElement | undefined;\n open?: boolean | undefined;\n onOpenChange?: ((open: boolean) => void) | undefined;\n inline?: boolean | undefined;\n}\n\nexport function DeleteResource({ kind, name, consequence, verb, confirm = \"typed\", onConfirm, trigger, open, onOpenChange, inline }: DeleteResourceProps) {\n const t = useUiText();\n return (\n <AlertDialog\n title={\n verb === undefined ? t(\"deleteResource.deleteTitle\", \"Delete this {kind}?\", { kind }) : t(\"deleteResource.title\", \"{verb} this {kind}?\", { verb, kind })\n }\n description={consequence}\n confirmLabel={\n verb === undefined ? t(\"deleteResource.deleteConfirm\", \"Delete {kind}\", { kind }) : t(\"deleteResource.confirm\", \"{verb} {kind}\", { verb, kind })\n }\n onConfirm={onConfirm}\n tone=\"danger\"\n {...(confirm === \"typed\" ? { confirmText: name } : {})}\n {...(trigger ? { trigger } : {})}\n {...(open !== undefined ? { open } : {})}\n {...(onOpenChange ? { onOpenChange } : {})}\n {...(inline ? { inline } : {})}\n />\n );\n}\nif (process.env.NODE_ENV !== \"production\") DeleteResource.displayName = \"DeleteResource\";\n"],"mappings":";;;;;AAIA,IAAaC,IAAiC,EAC5C,SAAS;CACP,OAAO,EAAE,SAAS,GAAG;CACrB,QAAQ,EAAE,SAAS,GAAG;AACxB,EACF,GACaC,IAAyC,EAAE,SAAS,QAAQ;AAezE,SAAgBC,EAAe,EAAE,SAAM,SAAM,gBAAa,SAAM,aAAU,SAAS,cAAW,YAAS,SAAM,iBAAc,aAA+B;CACxJ,IAAMC,IAAIJ,EAAU;CACpB,OACE,kBAACK,GAAD;EACE,OACEC,MAAS,KAAA,IAAYF,EAAE,8BAA8B,uBAAuB,EAAE,QAAK,CAAC,IAAIA,EAAE,wBAAwB,uBAAuB;GAAE;GAAM;EAAK,CAAC;EAEzJ,aAAaG;EACb,cACED,MAAS,KAAA,IAAYF,EAAE,gCAAgC,iBAAiB,EAAE,QAAK,CAAC,IAAIA,EAAE,0BAA0B,iBAAiB;GAAE;GAAM;EAAK,CAAC;EAEtI;EACX,MAAK;EACL,GAAKI,MAAY,UAAU,EAAE,aAAaC,EAAK,IAAI,CAAC;EACpD,GAAKC,IAAU,EAAE,WAAQ,IAAI,CAAC;EAC9B,GAAKC,MAAS,KAAA,IAAuB,CAAC,IAAZ,EAAE,QAAK;EACjC,GAAKC,IAAe,EAAE,gBAAa,IAAI,CAAC;EACxC,GAAKC,IAAS,EAAE,UAAO,IAAI,CAAC;CAC7B,CAAA;AAEL;AACA,QAAA,IAAA,aAA6B,iBAAc,EAAe,cAAc"}
@@ -0,0 +1,70 @@
1
+ "use client";
2
+ import { t as e } from "../chunks/cn-CidVUKMm.js";
3
+ import { t } from "../chunks/app-frame-BBIMch8X.js";
4
+ import { r as n } from "../chunks/page-header-BIRswR73.js";
5
+ import { t as r } from "../chunks/empty-DIbBpytW.js";
6
+ import { a as i, t as a } from "../chunks/section-XStLtXKa.js";
7
+ import { Fragment as o, jsx as s, jsxs as c } from "react/jsx-runtime";
8
+ //#region src/blocks/pages/pages.tsx
9
+ var l = { page: {
10
+ list: { classes: "" },
11
+ table: { classes: "" },
12
+ overview: { classes: "" },
13
+ empty: { classes: "" },
14
+ auth: { classes: "" }
15
+ } }, u = { page: "list" };
16
+ function d({ header: e, toolbar: r, children: i, sheet: a }) {
17
+ return /* @__PURE__ */ c(o, { children: [
18
+ /* @__PURE__ */ s(n, {
19
+ start: /* @__PURE__ */ s(t.MenuButton, {}),
20
+ ...e
21
+ }),
22
+ r,
23
+ /* @__PURE__ */ s(t.Body, { children: i }),
24
+ a
25
+ ] });
26
+ }
27
+ process.env.NODE_ENV !== "production" && (d.displayName = "ListPage");
28
+ var f = d;
29
+ function p({ header: e, metrics: r, controls: a, chart: l, children: u, aside: d }) {
30
+ let f = /* @__PURE__ */ c("div", {
31
+ className: "flex flex-col gap-40",
32
+ children: [
33
+ /* @__PURE__ */ c("div", {
34
+ className: "flex flex-wrap items-end justify-between gap-16",
35
+ children: [r, a && /* @__PURE__ */ s("div", {
36
+ className: "flex items-center gap-8",
37
+ children: a
38
+ })]
39
+ }),
40
+ l,
41
+ u
42
+ ]
43
+ });
44
+ return /* @__PURE__ */ c(o, { children: [/* @__PURE__ */ s(n, {
45
+ start: /* @__PURE__ */ s(t.MenuButton, {}),
46
+ ...e
47
+ }), /* @__PURE__ */ s(t.Body, { children: /* @__PURE__ */ s("div", {
48
+ className: "px-24 pt-24 pb-64",
49
+ children: d ? /* @__PURE__ */ s(i, {
50
+ aside: d,
51
+ children: f
52
+ }) : f
53
+ }) })] });
54
+ }
55
+ process.env.NODE_ENV !== "production" && (p.displayName = "OverviewPage");
56
+ function m({ header: i, ...a }) {
57
+ return /* @__PURE__ */ c(o, { children: [i && /* @__PURE__ */ s(n, {
58
+ start: /* @__PURE__ */ s(t.MenuButton, {}),
59
+ ...i
60
+ }), /* @__PURE__ */ s(t.Body, { children: /* @__PURE__ */ s("div", {
61
+ className: e("flex min-h-full items-center justify-center px-24"),
62
+ children: /* @__PURE__ */ s(r, { ...a })
63
+ }) })] });
64
+ }
65
+ process.env.NODE_ENV !== "production" && (m.displayName = "EmptyPage");
66
+ var h = a;
67
+ //#endregion
68
+ export { h as AuthPage, m as EmptyPage, u as KAESO_PAGES_DEFAULT_VARIANTS, l as KAESO_PAGES_VARIANTS, d as ListPage, p as OverviewPage, f as TablePage };
69
+
70
+ //# sourceMappingURL=pages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pages.js","names":["_Fragment","cn","PageHeader","Empty","SplitView","AuthLayout","KAESO_PAGES_VARIANTS","KAESO_PAGES_DEFAULT_VARIANTS","ListPage","Fragment","AppFrame","header","toolbar","sheet","TablePage","OverviewPage","main","metrics","controls","chart","children","aside","EmptyPage","empty","AuthPage"],"sources":["../../src/blocks/pages/pages.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { cn } from \"../../utils/cn.js\";\nimport { AppFrame } from \"../../components/app-frame/app-frame.js\";\nimport { PageHeader, type PageHeaderProps } from \"../../components/page-header/page-header.js\";\nimport { Empty, type EmptyProps } from \"../../components/empty/empty.js\";\nimport { AuthLayout } from \"../../components/section/section.js\";\nimport { SplitView } from \"../../components/section/section.js\";\n\nexport const KAESO_PAGES_VARIANTS = {\n page: {\n list: { classes: \"\" },\n table: { classes: \"\" },\n overview: { classes: \"\" },\n empty: { classes: \"\" },\n auth: { classes: \"\" },\n },\n} as const;\nexport const KAESO_PAGES_DEFAULT_VARIANTS = { page: \"list\" } as const;\n\nexport interface ListPageProps {\n header: PageHeaderProps;\n toolbar?: ReactNode | undefined;\n children: ReactNode;\n sheet?: ReactNode | undefined;\n}\n\nexport function ListPage({ header, toolbar, children, sheet }: ListPageProps) {\n return (\n <>\n <PageHeader start={<AppFrame.MenuButton />} {...header} />\n {toolbar}\n <AppFrame.Body>{children}</AppFrame.Body>\n {sheet}\n </>\n );\n}\nif (process.env.NODE_ENV !== \"production\") ListPage.displayName = \"ListPage\";\n\nexport const TablePage = ListPage;\n\nexport function OverviewPage({\n header,\n metrics,\n controls,\n chart,\n children,\n aside,\n}: {\n header: PageHeaderProps;\n metrics: ReactNode;\n controls?: ReactNode | undefined;\n chart?: ReactNode | undefined;\n children?: ReactNode | undefined;\n aside?: ReactNode | undefined;\n}) {\n const main = (\n <div className=\"flex flex-col gap-40\">\n <div className=\"flex flex-wrap items-end justify-between gap-16\">\n {metrics}\n {controls && <div className=\"flex items-center gap-8\">{controls}</div>}\n </div>\n {chart}\n {children}\n </div>\n );\n return (\n <>\n <PageHeader start={<AppFrame.MenuButton />} {...header} />\n <AppFrame.Body>\n <div className=\"px-24 pt-24 pb-64\">{aside ? <SplitView aside={aside}>{main}</SplitView> : main}</div>\n </AppFrame.Body>\n </>\n );\n}\nif (process.env.NODE_ENV !== \"production\") OverviewPage.displayName = \"OverviewPage\";\n\nexport function EmptyPage({ header, ...empty }: { header?: PageHeaderProps | undefined } & EmptyProps) {\n return (\n <>\n {header && <PageHeader start={<AppFrame.MenuButton />} {...header} />}\n <AppFrame.Body>\n <div className={cn(\"flex min-h-full items-center justify-center px-24\")}>\n <Empty {...empty} />\n </div>\n </AppFrame.Body>\n </>\n );\n}\nif (process.env.NODE_ENV !== \"production\") EmptyPage.displayName = \"EmptyPage\";\n\nexport const AuthPage = AuthLayout;\n"],"mappings":";;;;;;;;AAQA,IAAaM,IAAuB,EAClC,MAAM;CACJ,MAAM,EAAE,SAAS,GAAG;CACpB,OAAO,EAAE,SAAS,GAAG;CACrB,UAAU,EAAE,SAAS,GAAG;CACxB,OAAO,EAAE,SAAS,GAAG;CACrB,MAAM,EAAE,SAAS,GAAG;AACtB,EACF,GACaC,IAA+B,EAAE,MAAM,OAAO;AAS3D,SAAgBC,EAAS,EAAE,WAAQ,YAAS,aAAU,YAAwB;CAC5E,OACE,kBAAAR,GAAA,EAAA,UAAA;EACE,kBAACE,GAAD;GAAY,OAAO,kBAACQ,EAAS,YAAV,CAAsB,CAAA;GAAG,GAAIC;EAAS,CAAA;EACxDC;EACD,kBAACF,EAAS,MAAV,EAAgB,YAAwB,CAAA;EACvCG;CACD,EAAA,CAAA;AAEN;AACA,QAAA,IAAA,aAA6B,iBAAc,EAAS,cAAc;AAElE,IAAaC,IAAYN;AAEzB,SAAgBO,EAAa,EAC3B,WACA,YACA,aACA,UACA,aACA,YAQC;CACD,IAAMC,IACJ,kBAAC,OAAD;EAAK,WAAU;EAAf,UAAA;GACE,kBAAC,OAAD;IAAK,WAAU;IAAf,UAAA,CACGC,GACAC,KAAY,kBAAC,OAAD;KAAK,WAAU;KAA2B,UAAAA;IAAc,CAAA,CAClE;;GACJC;GACAC;EACE;;CAEP,OACE,kBAAApB,GAAA,EAAA,UAAA,CACE,kBAACE,GAAD;EAAY,OAAO,kBAACQ,EAAS,YAAV,CAAsB,CAAA;EAAG,GAAIC;CAAS,CAAA,GACzD,kBAACD,EAAS,MAAV,EAAA,UACE,kBAAC,OAAD;EAAK,WAAU;EAAqB,UAAAW,IAAQ,kBAACjB,GAAD;GAAkB;GAAQ,UAAAY;EAAgB,CAAA,IAAIA;CAAU,CAAA,EACvF,CAAA,CACf,EAAA,CAAA;AAEN;AACA,QAAA,IAAA,aAA6B,iBAAc,EAAa,cAAc;AAEtE,SAAgBM,EAAU,EAAE,WAAQ,GAAGC,KAAgE;CACrG,OACE,kBAAAvB,GAAA,EAAA,UAAA,CACGW,KAAU,kBAACT,GAAD;EAAY,OAAO,kBAACQ,EAAS,YAAV,CAAsB,CAAA;EAAG,GAAIC;CAAS,CAAA,GACpE,kBAACD,EAAS,MAAV,EAAA,UACE,kBAAC,OAAD;EAAK,WAAWT,EAAG,mDAAmD;EACpE,UAAA,kBAACE,GAAD,EAAO,GAAIoB,EAAQ,CAAA;CAChB,CAAA,EACQ,CAAA,CACf,EAAA,CAAA;AAEN;AACA,QAAA,IAAA,aAA6B,iBAAc,EAAU,cAAc;AAEnE,IAAaC,IAAWnB"}
@@ -0,0 +1,68 @@
1
+ "use client";
2
+ import { i as e } from "../chunks/context-BELWW79w.js";
3
+ import { i as t } from "../chunks/input-Biakz6GB.js";
4
+ import { r as n } from "../chunks/toolbar-Dw3uxpsE.js";
5
+ import { t as r } from "../chunks/empty-DIbBpytW.js";
6
+ import { i, o as a } from "../chunks/list-CN8pO8lv.js";
7
+ import { useMemo as o, useState as s } from "react";
8
+ import { jsx as c, jsxs as l } from "react/jsx-runtime";
9
+ //#region src/blocks/resource-list/resource-list.tsx
10
+ var u = { grouping: {
11
+ grouped: { classes: "" },
12
+ flat: { classes: "" }
13
+ } }, d = { grouping: "grouped" };
14
+ function f(e) {
15
+ return `${e.textValue ?? (typeof e.title == "string" ? e.title : "")} ${e.displayId ?? ""}`.toLowerCase();
16
+ }
17
+ function p({ groups: u, onOpen: d, bulkActions: p = [], toolbar: m, emptyTitle: h, emptyDescription: g, emptyAction: _, "aria-label": v }) {
18
+ let y = e(), [b, x] = s(""), [S, C] = s(/* @__PURE__ */ new Set()), w = b.trim().toLowerCase(), T = o(() => u.map((e) => ({
19
+ ...e,
20
+ items: e.items.filter((e) => !w || f(e).includes(w))
21
+ })).filter((e) => e.items.length > 0), [u, w]), E = o(() => {
22
+ let e = new Set(T.flatMap((e) => e.items.map((e) => e.id)));
23
+ return new Set([...S].filter((t) => e.has(t)));
24
+ }, [T, S]);
25
+ return /* @__PURE__ */ l("div", {
26
+ className: "flex flex-col",
27
+ children: [/* @__PURE__ */ l(n, {
28
+ "aria-label": y("resourceList.filters", "Filters"),
29
+ children: [
30
+ m,
31
+ /* @__PURE__ */ c(n.Spacer, {}),
32
+ /* @__PURE__ */ c("div", {
33
+ className: "w-240",
34
+ children: /* @__PURE__ */ c(t, {
35
+ "aria-label": y("resourceList.search", "Search"),
36
+ placeholder: y("resourceList.search", "Search"),
37
+ value: b,
38
+ onChange: (e) => x(e.target.value),
39
+ onClear: () => x(""),
40
+ shortcut: ["/"]
41
+ })
42
+ })
43
+ ]
44
+ }), T.length === 0 ? /* @__PURE__ */ c(r, {
45
+ size: "md",
46
+ title: w ? y("resourceList.noMatches", "No matches") : h ?? y("resourceList.nothingHereYet", "Nothing here yet"),
47
+ ...w ? { description: y("resourceList.tryShorterSearch", "Try a shorter search.") } : g ? { description: g } : {},
48
+ ...!w && _ ? { actions: _ } : {}
49
+ }) : /* @__PURE__ */ c(i, {
50
+ "aria-label": v,
51
+ groups: T,
52
+ selectable: p.length > 0,
53
+ selected: E,
54
+ onSelectedChange: C,
55
+ ...d ? { onOpen: d } : {},
56
+ selectionActions: p.map((e) => /* @__PURE__ */ c(a, {
57
+ ...e.icon ? { icon: e.icon } : {},
58
+ onClick: () => e.onClick([...E]),
59
+ children: e.label
60
+ }, e.label))
61
+ })]
62
+ });
63
+ }
64
+ process.env.NODE_ENV !== "production" && (p.displayName = "ResourceList");
65
+ //#endregion
66
+ export { d as KAESO_RESOURCE_LIST_DEFAULT_VARIANTS, u as KAESO_RESOURCE_LIST_VARIANTS, p as ResourceList };
67
+
68
+ //# sourceMappingURL=resource-list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource-list.js","names":["useUiText","SearchInput","Toolbar","Empty","SelectionAction","KAESO_RESOURCE_LIST_VARIANTS","KAESO_RESOURCE_LIST_DEFAULT_VARIANTS","searchText","i","ResourceList","ariaLabel","t","query","setQuery","useState","selected","setSelected","q","filtered","useMemo","groups","g","visibleSelection","shown","id","toolbar","emptyTitle","emptyDescription","emptyAction","List","bulkActions","onOpen","a"],"sources":["../../src/blocks/resource-list/resource-list.tsx"],"sourcesContent":["import { useMemo, useState, type ReactNode } from \"react\";\nimport { List, SelectionAction, type ListGroup, type ListItemData } from \"../../components/list/list.js\";\nimport { Toolbar } from \"../../components/toolbar/toolbar.js\";\nimport { SearchInput } from \"../../components/input/input.js\";\nimport { Empty } from \"../../components/empty/empty.js\";\nimport type { IconData } from \"../../components/icon/icon.js\";\nimport { useUiText } from \"../../i18n/context.js\";\n\nexport const KAESO_RESOURCE_LIST_VARIANTS = {\n grouping: {\n grouped: { classes: \"\" },\n flat: { classes: \"\" },\n },\n} as const;\nexport const KAESO_RESOURCE_LIST_DEFAULT_VARIANTS = { grouping: \"grouped\" } as const;\n\nexport interface ResourceListProps {\n groups: ListGroup[];\n \"aria-label\": string;\n onOpen?: ((item: ListItemData) => void) | undefined;\n bulkActions?: { label: string; icon?: IconData | undefined; onClick: (ids: string[]) => void }[] | undefined;\n toolbar?: ReactNode | undefined;\n emptyTitle?: string | undefined;\n emptyDescription?: string | undefined;\n emptyAction?: ReactNode | undefined;\n}\n\nfunction searchText(i: ListItemData) {\n return `${i.textValue ?? (typeof i.title === \"string\" ? i.title : \"\")} ${i.displayId ?? \"\"}`.toLowerCase();\n}\n\nexport function ResourceList({\n groups,\n onOpen,\n bulkActions = [],\n toolbar,\n emptyTitle,\n emptyDescription,\n emptyAction,\n \"aria-label\": ariaLabel,\n}: ResourceListProps) {\n const t = useUiText();\n const [query, setQuery] = useState(\"\");\n const [selected, setSelected] = useState<Set<string>>(new Set());\n const q = query.trim().toLowerCase();\n const filtered = useMemo(\n () => groups.map((g) => ({ ...g, items: g.items.filter((i) => !q || searchText(i).includes(q)) })).filter((g) => g.items.length > 0),\n [groups, q],\n );\n const visibleSelection = useMemo(() => {\n const shown = new Set(filtered.flatMap((g) => g.items.map((i) => i.id)));\n return new Set([...selected].filter((id) => shown.has(id)));\n }, [filtered, selected]);\n return (\n <div className=\"flex flex-col\">\n <Toolbar aria-label={t(\"resourceList.filters\", \"Filters\")}>\n {toolbar}\n <Toolbar.Spacer />\n <div className=\"w-240\">\n <SearchInput\n aria-label={t(\"resourceList.search\", \"Search\")}\n placeholder={t(\"resourceList.search\", \"Search\")}\n value={query}\n onChange={(e) => setQuery(e.target.value)}\n onClear={() => setQuery(\"\")}\n shortcut={[\"/\"]}\n />\n </div>\n </Toolbar>\n {filtered.length === 0 ? (\n <Empty\n size=\"md\"\n title={q ? t(\"resourceList.noMatches\", \"No matches\") : (emptyTitle ?? t(\"resourceList.nothingHereYet\", \"Nothing here yet\"))}\n {...(q ? { description: t(\"resourceList.tryShorterSearch\", \"Try a shorter search.\") } : emptyDescription ? { description: emptyDescription } : {})}\n {...(!q && emptyAction ? { actions: emptyAction } : {})}\n />\n ) : (\n <List\n aria-label={ariaLabel}\n groups={filtered}\n selectable={bulkActions.length > 0}\n selected={visibleSelection}\n onSelectedChange={setSelected}\n {...(onOpen ? { onOpen } : {})}\n selectionActions={bulkActions.map((a) => (\n <SelectionAction key={a.label} {...(a.icon ? { icon: a.icon } : {})} onClick={() => a.onClick([...visibleSelection])}>\n {a.label}\n </SelectionAction>\n ))}\n />\n )}\n </div>\n );\n}\nif (process.env.NODE_ENV !== \"production\") ResourceList.displayName = \"ResourceList\";\n"],"mappings":";;;;;;;;;AAQA,IAAaK,IAA+B,EAC1C,UAAU;CACR,SAAS,EAAE,SAAS,GAAG;CACvB,MAAM,EAAE,SAAS,GAAG;AACtB,EACF,GACaC,IAAuC,EAAE,UAAU,UAAU;AAa1E,SAASC,EAAW,GAAiB;CACnC,OAAO,GAAGC,EAAE,cAAc,OAAOA,EAAE,SAAU,WAAWA,EAAE,QAAQ,IAAI,GAAGA,EAAE,aAAa,KAAK,YAAY;AAC3G;AAEA,SAAgBC,EAAa,EAC3B,WACA,WACA,iBAAc,CAAC,GACf,YACA,eACA,qBACA,gBACA,cAAcC,KACM;CACpB,IAAMC,IAAIX,EAAU,GACd,CAACY,GAAOC,KAAYC,EAAS,EAAE,GAC/B,CAACC,GAAUC,KAAeF,kBAAsB,IAAI,IAAI,CAAC,GACzDG,IAAIL,EAAM,KAAK,CAAC,CAAC,YAAY,GAC7BM,IAAWC,QACTC,EAAO,KAAK,OAAO;EAAE,GAAGC;EAAG,OAAOA,EAAE,MAAM,QAAQ,MAAM,CAACJ,KAAKV,EAAWC,CAAC,CAAC,CAAC,SAASS,CAAC,CAAC;CAAE,EAAE,CAAC,CAAC,QAAQ,MAAMI,EAAE,MAAM,SAAS,CAAC,GACnI,CAACD,GAAQH,CAAC,CACZ,GACMK,IAAmBH,QAAc;EACrC,IAAMI,IAAQ,IAAI,IAAIL,EAAS,SAAS,MAAMG,EAAE,MAAM,KAAK,MAAMb,EAAE,EAAE,CAAC,CAAC;EACvE,OAAO,IAAI,IAAI,CAAC,GAAGO,CAAQ,CAAC,CAAC,QAAQ,MAAOQ,EAAM,IAAIC,CAAE,CAAC,CAAC;CAC5D,GAAG,CAACN,GAAUH,CAAQ,CAAC;CACvB,OACE,kBAAC,OAAD;EAAK,WAAU;EAAf,UAAA,CACE,kBAACb,GAAD;GAAS,cAAYS,EAAE,wBAAwB,SAAS;GAAxD,UAAA;IACGc;IACD,kBAACvB,EAAQ,QAAT,CAAiB,CAAA;IACjB,kBAAC,OAAD;KAAK,WAAU;KACb,UAAA,kBAACD,GAAD;MACE,cAAYU,EAAE,uBAAuB,QAAQ;MAC7C,aAAaA,EAAE,uBAAuB,QAAQ;MAC9C,OAAOC;MACP,WAAW,MAAMC,EAAS,EAAE,OAAO,KAAK;MACxC,eAAeA,EAAS,EAAE;MAC1B,UAAU,CAAC,GAAG;KACf,CAAA;IACE,CAAA;GACE;EACR,CAAA,GAAAK,EAAS,WAAW,IACnB,kBAACf,GAAD;GACE,MAAK;GACL,OAAOc,IAAIN,EAAE,0BAA0B,YAAY,IAAKe,KAAcf,EAAE,+BAA+B,kBAAkB;GACzH,GAAKM,IAAI,EAAE,aAAaN,EAAE,iCAAiC,uBAAuB,EAAE,IAAIgB,IAAmB,EAAE,aAAaA,EAAiB,IAAI,CAAC;GAChJ,GAAK,CAACV,KAAKW,IAAc,EAAE,SAASA,EAAY,IAAI,CAAC;EACtD,CAAA,IAED,kBAACC,GAAD;GACE,cAAYnB;GACZ,QAAQQ;GACR,YAAYY,EAAY,SAAS;GACjC,UAAUR;GACV,kBAAkBN;GAClB,GAAKe,IAAS,EAAE,UAAO,IAAI,CAAC;GAC5B,kBAAkBD,EAAY,KAAK,MACjC,kBAAC1B,GAAD;IAA+B,GAAK4B,EAAE,OAAO,EAAE,MAAMA,EAAE,KAAK,IAAI,CAAC;IAAI,eAAeA,EAAE,QAAQ,CAAC,GAAGV,CAAgB,CAAC;IAChH,UAAAU,EAAE;GACY,GAFKA,EAAE,KAEP,CAClB;EACF,CAAA,CAEA;;AAET;AACA,QAAA,IAAA,aAA6B,iBAAc,EAAa,cAAc"}
@@ -0,0 +1,224 @@
1
+ "use client";
2
+ import { t as e } from "./cn-CidVUKMm.js";
3
+ import { r as t } from "./portal-context-BBbzDKmY.js";
4
+ import { t as n } from "./inset-BLMdxX4I.js";
5
+ import { i as r } from "./context-BELWW79w.js";
6
+ import { a as i } from "./button-BHKAE6ui.js";
7
+ import { t as a } from "./icon-button-Bw67oKtx.js";
8
+ import { c as o, l as s, s as c, t as l } from "./sidebar-C4fL_KMm.js";
9
+ import { createContext as u, forwardRef as d, useContext as f, useEffect as p, useId as m, useRef as h, useState as g } from "react";
10
+ import { jsx as _, jsxs as v } from "react/jsx-runtime";
11
+ import { SidebarLeftIcon as y } from "@hugeicons/core-free-icons";
12
+ import { Dialog as b } from "@base-ui/react/dialog";
13
+ //#region src/components/app-frame/app-frame.tsx
14
+ var x = { fill: {
15
+ screen: { classes: "h-dvh" },
16
+ parent: { classes: "h-full" }
17
+ } }, S = { fill: "screen" }, C = /* @__PURE__ */ u({
18
+ openNav: () => void 0,
19
+ embedded: !1
20
+ }), w = () => f(C), T = /* @__PURE__ */ d(function({ sidebar: t, children: n, corner: r, fill: i = "screen", brandHref: a, brandLabel: o, className: s }, c) {
21
+ let [l, u] = g(!1), d = h(null), f = `k-main-${m().replace(/[^\w-]/g, "")}`, p = i === "screen" ? "main" : "div";
22
+ return /* @__PURE__ */ v(C.Provider, {
23
+ value: {
24
+ openNav: () => u(!0),
25
+ embedded: i === "parent"
26
+ },
27
+ children: [/* @__PURE__ */ v("div", {
28
+ ref: c,
29
+ className: e("relative isolate flex w-full flex-col overflow-hidden bg-chrome text-fg lg:flex-row", x.fill[i].classes, s),
30
+ children: [
31
+ /* @__PURE__ */ _(E, { target: f }),
32
+ /* @__PURE__ */ _("div", {
33
+ className: "hidden h-full lg:flex",
34
+ children: t
35
+ }),
36
+ /* @__PURE__ */ _(D, {
37
+ banner: i === "screen",
38
+ href: a,
39
+ label: o,
40
+ open: l,
41
+ onOpen: () => u(!0),
42
+ toggleRef: d
43
+ }),
44
+ /* @__PURE__ */ _(p, {
45
+ id: f,
46
+ className: "relative flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden bg-panel outline-none safe-area-panel lg:my-8 lg:mr-8 lg:rounded-panel lg:shadow-panel",
47
+ children: n
48
+ }),
49
+ r && /* @__PURE__ */ _("div", {
50
+ className: "fixed right-16 bottom-16 z-10 flex items-center gap-8",
51
+ children: r
52
+ })
53
+ ]
54
+ }), /* @__PURE__ */ _(A, {
55
+ navOpen: l,
56
+ setNavOpen: u,
57
+ returnFocus: d,
58
+ children: t
59
+ })]
60
+ });
61
+ });
62
+ process.env.NODE_ENV !== "production" && (T.displayName = "AppFrame");
63
+ function E({ target: t }) {
64
+ let n = r();
65
+ return /* @__PURE__ */ _("a", {
66
+ href: `#${t}`,
67
+ onClick: (e) => {
68
+ let n = document.getElementById(t);
69
+ n && (e.preventDefault(), n.setAttribute("tabindex", "-1"), n.addEventListener("blur", () => n.removeAttribute("tabindex"), { once: !0 }), n.focus());
70
+ },
71
+ className: e(i({ size: "sm" }), "absolute top-8 left-8 z-50 not-focus:sr-only"),
72
+ children: n("appFrame.skipToContent", "Skip to content")
73
+ });
74
+ }
75
+ process.env.NODE_ENV !== "production" && (E.displayName = "AppFrame.SkipLink");
76
+ function D({ banner: e, href: t, label: n, open: i, onOpen: o, toggleRef: s }) {
77
+ let c = e ? "header" : "div", u = r();
78
+ return /* @__PURE__ */ _(c, {
79
+ "data-phone-bar": "",
80
+ className: "shrink-0 bg-panel safe-area-bar lg:hidden",
81
+ children: /* @__PURE__ */ v("div", {
82
+ className: "mt-8 flex h-52 items-center justify-between pr-20 pl-28",
83
+ children: [/* @__PURE__ */ _(l, {
84
+ href: t,
85
+ label: n
86
+ }), /* @__PURE__ */ _(a, {
87
+ ref: s,
88
+ icon: y,
89
+ "aria-label": u("appFrame.openNavigation", "Open navigation"),
90
+ "aria-haspopup": "dialog",
91
+ "aria-expanded": i,
92
+ tooltip: !1,
93
+ onClick: o
94
+ })]
95
+ })
96
+ });
97
+ }
98
+ process.env.NODE_ENV !== "production" && (D.displayName = "AppFrame.PhoneBar");
99
+ function O({ open: e, onOpenChange: n, peek: i = !1, returnFocus: a, children: s }) {
100
+ let l = h(void 0), u = r();
101
+ return p(() => {
102
+ if (!e || i || typeof window > "u") return;
103
+ let t = window.matchMedia("(min-width: 1024px)"), r = () => t.matches && n(!1);
104
+ return r(), t.addEventListener("change", r), () => t.removeEventListener("change", r);
105
+ }, [
106
+ e,
107
+ i,
108
+ n
109
+ ]), /* @__PURE__ */ _(b.Root, {
110
+ open: e,
111
+ onOpenChange: (e) => n(e),
112
+ modal: !i,
113
+ children: /* @__PURE__ */ v(b.Portal, {
114
+ container: t(),
115
+ children: [/* @__PURE__ */ _(b.Backdrop, { className: "fixed inset-0 z-40 bg-overlay opacity-60 backdrop-motion" }), /* @__PURE__ */ _(b.Popup, {
116
+ "aria-label": u("appFrame.navigation", "Navigation"),
117
+ "data-side": "left",
118
+ initialFocus: !i,
119
+ ...a ? { finalFocus: a } : {},
120
+ className: "fixed top-0 bottom-0 left-0 z-40 flex overflow-hidden rounded-r-sheet bg-chrome shadow-dialog outline-none safe-area-sheet sheet-motion",
121
+ onClick: (e) => {
122
+ e.target.closest("a[href]") && n(!1);
123
+ },
124
+ onPointerEnter: () => clearTimeout(l.current),
125
+ onPointerLeave: () => {
126
+ i && (l.current = setTimeout(() => n(!1), 160));
127
+ },
128
+ children: /* @__PURE__ */ _(c.Provider, {
129
+ value: !0,
130
+ children: /* @__PURE__ */ _(o.Provider, {
131
+ value: {
132
+ close: () => n(!1),
133
+ peek: i
134
+ },
135
+ children: s
136
+ })
137
+ })
138
+ })]
139
+ })
140
+ });
141
+ }
142
+ process.env.NODE_ENV !== "production" && (O.displayName = "NavSheet");
143
+ var k = 750;
144
+ function A({ navOpen: e, setNavOpen: t, returnFocus: n, children: r }) {
145
+ let { peeking: i, setPeeking: a } = s();
146
+ return /* @__PURE__ */ _(O, {
147
+ open: e || i,
148
+ peek: i && !e,
149
+ ...e ? { returnFocus: n } : {},
150
+ onOpenChange: (e) => {
151
+ e || (t(!1), a(!1));
152
+ },
153
+ children: r
154
+ });
155
+ }
156
+ function j({ className: t }) {
157
+ let { openNav: n } = w(), { collapsed: i, setCollapsed: o, setPeeking: c } = s(), l = h(void 0), u = r(), d = () => typeof window < "u" && window.matchMedia("(min-width: 1024px)").matches;
158
+ return /* @__PURE__ */ _(a, {
159
+ onPointerEnter: () => {
160
+ i && d() && (l.current = setTimeout(() => c(!0), 750));
161
+ },
162
+ onPointerLeave: () => clearTimeout(l.current),
163
+ icon: y,
164
+ "data-sidebar-expand": "",
165
+ "aria-label": i ? u("appFrame.expandSidebar", "Expand sidebar") : u("appFrame.openNavigation", "Open navigation"),
166
+ shortcut: i ? ["["] : void 0,
167
+ onClick: () => {
168
+ clearTimeout(l.current), i && d() ? o(!1) : n();
169
+ },
170
+ className: e("hidden", i && "lg:inline-flex", t)
171
+ });
172
+ }
173
+ process.env.NODE_ENV !== "production" && (j.displayName = "AppFrame.MenuButton");
174
+ var M = { padding: {
175
+ none: { classes: "" },
176
+ list: { classes: "pt-8 pb-24" },
177
+ page: { classes: "px-24 pt-16 pb-48" }
178
+ } }, N = { padding: "none" }, P = /* @__PURE__ */ d(function({ className: t, padding: n = "none", ...r }, i) {
179
+ return /* @__PURE__ */ _("div", {
180
+ ref: i,
181
+ className: e("min-h-0 flex-1 overflow-y-auto overscroll-contain scrollbar-quiet", M.padding[n].classes, t),
182
+ ...r
183
+ });
184
+ });
185
+ process.env.NODE_ENV !== "production" && (P.displayName = "AppFrame.Body");
186
+ var F = /* @__PURE__ */ d(function({ title: t, description: r, actions: i, className: a, children: o, ...s }, c) {
187
+ return /* @__PURE__ */ v(P, {
188
+ ref: c,
189
+ className: "relative",
190
+ children: [/* @__PURE__ */ _(j, { className: "absolute top-10 left-12 z-10" }), /* @__PURE__ */ v("div", {
191
+ className: e("mx-auto w-full max-w-settings px-24 pt-64 pb-96", a),
192
+ ...s,
193
+ children: [/* @__PURE__ */ v("header", {
194
+ className: "flex flex-col gap-8",
195
+ children: [/* @__PURE__ */ v("div", {
196
+ className: "flex items-start justify-between gap-16",
197
+ children: [/* @__PURE__ */ _("h1", {
198
+ className: "min-w-0 text-title-lg font-semibold text-fg text-balance",
199
+ children: t
200
+ }), i && /* @__PURE__ */ _("div", {
201
+ className: "flex h-34 shrink-0 items-center gap-8",
202
+ children: i
203
+ })]
204
+ }), r && /* @__PURE__ */ _("p", {
205
+ className: "text-body-lg font-regular text-fg-secondary",
206
+ children: r
207
+ })]
208
+ }), /* @__PURE__ */ _("div", {
209
+ className: "mt-8",
210
+ children: /* @__PURE__ */ _(n, { children: o })
211
+ })]
212
+ })]
213
+ });
214
+ });
215
+ process.env.NODE_ENV !== "production" && (F.displayName = "AppFrame.Settings");
216
+ var I = /* @__PURE__ */ Object.assign(T, {
217
+ MenuButton: j,
218
+ Body: P,
219
+ Settings: F
220
+ });
221
+ //#endregion
222
+ export { x as a, w as c, S as i, N as n, O as o, M as r, k as s, I as t };
223
+
224
+ //# sourceMappingURL=app-frame-BBIMch8X.js.map