@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.
- package/AGENTS.md +124 -0
- package/CLAUDE.md +3 -0
- package/LICENSE +21 -0
- package/NOTICE.md +5 -0
- package/README.md +43 -0
- package/ai/component-guides.md +4760 -0
- package/ai/component-registry.json +12626 -0
- package/ai/component-registry.md +2950 -0
- package/ai/icons.md +28 -0
- package/ai/tokens.md +207 -0
- package/dist/blocks/delete-resource.js +35 -0
- package/dist/blocks/delete-resource.js.map +1 -0
- package/dist/blocks/pages.js +70 -0
- package/dist/blocks/pages.js.map +1 -0
- package/dist/blocks/resource-list.js +68 -0
- package/dist/blocks/resource-list.js.map +1 -0
- package/dist/chunks/app-frame-BBIMch8X.js +224 -0
- package/dist/chunks/app-frame-BBIMch8X.js.map +1 -0
- package/dist/chunks/arrow-focus-BcySmwwU.js +11 -0
- package/dist/chunks/arrow-focus-BcySmwwU.js.map +1 -0
- package/dist/chunks/avatar-D2nJNbtC.js +83 -0
- package/dist/chunks/avatar-D2nJNbtC.js.map +1 -0
- package/dist/chunks/badge-Dkyhs0_j.js +26 -0
- package/dist/chunks/badge-Dkyhs0_j.js.map +1 -0
- package/dist/chunks/banner-BiziJuBZ.js +85 -0
- package/dist/chunks/banner-BiziJuBZ.js.map +1 -0
- package/dist/chunks/button-BHKAE6ui.js +164 -0
- package/dist/chunks/button-BHKAE6ui.js.map +1 -0
- package/dist/chunks/calendar-B5SSTE56.js +104 -0
- package/dist/chunks/calendar-B5SSTE56.js.map +1 -0
- package/dist/chunks/checkbox-BgRdbfCE.js +124 -0
- package/dist/chunks/checkbox-BgRdbfCE.js.map +1 -0
- package/dist/chunks/cn-CidVUKMm.js +669 -0
- package/dist/chunks/cn-CidVUKMm.js.map +1 -0
- package/dist/chunks/code-DDyOlIFO.js +23 -0
- package/dist/chunks/code-DDyOlIFO.js.map +1 -0
- package/dist/chunks/code-block-BbK6E4Eo.js +273 -0
- package/dist/chunks/code-block-BbK6E4Eo.js.map +1 -0
- package/dist/chunks/collapsible-Cw_1aem5.js +87 -0
- package/dist/chunks/collapsible-Cw_1aem5.js.map +1 -0
- package/dist/chunks/combobox-D8pQk22r.js +291 -0
- package/dist/chunks/combobox-D8pQk22r.js.map +1 -0
- package/dist/chunks/context-BELWW79w.js +20 -0
- package/dist/chunks/context-BELWW79w.js.map +1 -0
- package/dist/chunks/copy-button-mAzHjYXq.js +109 -0
- package/dist/chunks/copy-button-mAzHjYXq.js.map +1 -0
- package/dist/chunks/core-Bgefcs3z.js +467 -0
- package/dist/chunks/core-Bgefcs3z.js.map +1 -0
- package/dist/chunks/date-popup-Er1oQwtU.js +35 -0
- package/dist/chunks/date-popup-Er1oQwtU.js.map +1 -0
- package/dist/chunks/de-BCg1eRVd.js +384 -0
- package/dist/chunks/de-BCg1eRVd.js.map +1 -0
- package/dist/chunks/dev-CR1p7gCm.js +30 -0
- package/dist/chunks/dev-CR1p7gCm.js.map +1 -0
- package/dist/chunks/dialog-CVqSVk3T.js +283 -0
- package/dist/chunks/dialog-CVqSVk3T.js.map +1 -0
- package/dist/chunks/empty-DIbBpytW.js +38 -0
- package/dist/chunks/empty-DIbBpytW.js.map +1 -0
- package/dist/chunks/field-d8V94bvZ.js +119 -0
- package/dist/chunks/field-d8V94bvZ.js.map +1 -0
- package/dist/chunks/field-press-DwzBFafd.js +10 -0
- package/dist/chunks/field-press-DwzBFafd.js.map +1 -0
- package/dist/chunks/i18n-0RW0IAf3.js +10 -0
- package/dist/chunks/i18n-0RW0IAf3.js.map +1 -0
- package/dist/chunks/icon-Bha63LaN.js +90 -0
- package/dist/chunks/icon-Bha63LaN.js.map +1 -0
- package/dist/chunks/icon-CeNQtobn.js +47 -0
- package/dist/chunks/icon-CeNQtobn.js.map +1 -0
- package/dist/chunks/icon-button-Bw67oKtx.js +50 -0
- package/dist/chunks/icon-button-Bw67oKtx.js.map +1 -0
- package/dist/chunks/identity-DQinp-Ep.js +342 -0
- package/dist/chunks/identity-DQinp-Ep.js.map +1 -0
- package/dist/chunks/input-Biakz6GB.js +114 -0
- package/dist/chunks/input-Biakz6GB.js.map +1 -0
- package/dist/chunks/input-group-DQqEPFj_.js +87 -0
- package/dist/chunks/input-group-DQqEPFj_.js.map +1 -0
- package/dist/chunks/inset-BLMdxX4I.js +18 -0
- package/dist/chunks/inset-BLMdxX4I.js.map +1 -0
- package/dist/chunks/iso-field-CznqNVrH.js +31 -0
- package/dist/chunks/iso-field-CznqNVrH.js.map +1 -0
- package/dist/chunks/json-view-B6KHIWzh.js +174 -0
- package/dist/chunks/json-view-B6KHIWzh.js.map +1 -0
- package/dist/chunks/kbd-CBcBDvqU.js +132 -0
- package/dist/chunks/kbd-CBcBDvqU.js.map +1 -0
- package/dist/chunks/labelled-D5udSPUI.js +16 -0
- package/dist/chunks/labelled-D5udSPUI.js.map +1 -0
- package/dist/chunks/link-provider---9JdxTg.js +27 -0
- package/dist/chunks/link-provider---9JdxTg.js.map +1 -0
- package/dist/chunks/link-tTapNTpM.js +47 -0
- package/dist/chunks/link-tTapNTpM.js.map +1 -0
- package/dist/chunks/list-CN8pO8lv.js +475 -0
- package/dist/chunks/list-CN8pO8lv.js.map +1 -0
- package/dist/chunks/loader-CUehxvSZ.js +57 -0
- package/dist/chunks/loader-CUehxvSZ.js.map +1 -0
- package/dist/chunks/logo-VmXYhIJL.js +149 -0
- package/dist/chunks/logo-VmXYhIJL.js.map +1 -0
- package/dist/chunks/markdown-C-iJsYnd.js +313 -0
- package/dist/chunks/markdown-C-iJsYnd.js.map +1 -0
- package/dist/chunks/menu-OURWt_hD.js +447 -0
- package/dist/chunks/menu-OURWt_hD.js.map +1 -0
- package/dist/chunks/message-BxTkh1oA.js +49 -0
- package/dist/chunks/message-BxTkh1oA.js.map +1 -0
- package/dist/chunks/meter-DWhyzFGQ.js +84 -0
- package/dist/chunks/meter-DWhyzFGQ.js.map +1 -0
- package/dist/chunks/page-header-BIRswR73.js +41 -0
- package/dist/chunks/page-header-BIRswR73.js.map +1 -0
- package/dist/chunks/pagination-DYdLm18-.js +85 -0
- package/dist/chunks/pagination-DYdLm18-.js.map +1 -0
- package/dist/chunks/popover-BE7VO-a4.js +50 -0
- package/dist/chunks/popover-BE7VO-a4.js.map +1 -0
- package/dist/chunks/popover-root-D3q89WNF.js +26 -0
- package/dist/chunks/popover-root-D3q89WNF.js.map +1 -0
- package/dist/chunks/portal-context-BBbzDKmY.js +33 -0
- package/dist/chunks/portal-context-BBbzDKmY.js.map +1 -0
- package/dist/chunks/radio-CUxbLCvD.js +110 -0
- package/dist/chunks/radio-CUxbLCvD.js.map +1 -0
- package/dist/chunks/range-popup-AbRzgHtY.js +111 -0
- package/dist/chunks/range-popup-AbRzgHtY.js.map +1 -0
- package/dist/chunks/restore-focus-Cap1Q-R3.js +19 -0
- package/dist/chunks/restore-focus-Cap1Q-R3.js.map +1 -0
- package/dist/chunks/rights-CXo7zEf6.js +279 -0
- package/dist/chunks/rights-CXo7zEf6.js.map +1 -0
- package/dist/chunks/safe-href-G5DBNVwm.js +13 -0
- package/dist/chunks/safe-href-G5DBNVwm.js.map +1 -0
- package/dist/chunks/scroll-parent-WXvzQcUo.js +14 -0
- package/dist/chunks/scroll-parent-WXvzQcUo.js.map +1 -0
- package/dist/chunks/section-XStLtXKa.js +87 -0
- package/dist/chunks/section-XStLtXKa.js.map +1 -0
- package/dist/chunks/segmented-CDTx2n29.js +113 -0
- package/dist/chunks/segmented-CDTx2n29.js.map +1 -0
- package/dist/chunks/select-Ca3HGsN1.js +223 -0
- package/dist/chunks/select-Ca3HGsN1.js.map +1 -0
- package/dist/chunks/separator-D5AzVFTS.js +45 -0
- package/dist/chunks/separator-D5AzVFTS.js.map +1 -0
- package/dist/chunks/sidebar-C4fL_KMm.js +599 -0
- package/dist/chunks/sidebar-C4fL_KMm.js.map +1 -0
- package/dist/chunks/sidebar-menu-sd9vCpDy.js +33 -0
- package/dist/chunks/sidebar-menu-sd9vCpDy.js.map +1 -0
- package/dist/chunks/skeleton-kfuqdl1a.js +36 -0
- package/dist/chunks/skeleton-kfuqdl1a.js.map +1 -0
- package/dist/chunks/slider-DbhjJ3ML.js +57 -0
- package/dist/chunks/slider-DbhjJ3ML.js.map +1 -0
- package/dist/chunks/status-dot-CBoQpyL4.js +25 -0
- package/dist/chunks/status-dot-CBoQpyL4.js.map +1 -0
- package/dist/chunks/styles-Btvg2DCf.js +21 -0
- package/dist/chunks/styles-Btvg2DCf.js.map +1 -0
- package/dist/chunks/swap-text-BhPI8DOf.js +28 -0
- package/dist/chunks/swap-text-BhPI8DOf.js.map +1 -0
- package/dist/chunks/switch-CztLhA8F.js +59 -0
- package/dist/chunks/switch-CztLhA8F.js.map +1 -0
- package/dist/chunks/table-DYKa86af.js +67 -0
- package/dist/chunks/table-DYKa86af.js.map +1 -0
- package/dist/chunks/tag-BsmQ1xPj.js +87 -0
- package/dist/chunks/tag-BsmQ1xPj.js.map +1 -0
- package/dist/chunks/text-BPglS3vq.js +63 -0
- package/dist/chunks/text-BPglS3vq.js.map +1 -0
- package/dist/chunks/textarea-Bvk7N2bh.js +156 -0
- package/dist/chunks/textarea-Bvk7N2bh.js.map +1 -0
- package/dist/chunks/theme-provider-mgUaQK7L.js +69 -0
- package/dist/chunks/theme-provider-mgUaQK7L.js.map +1 -0
- package/dist/chunks/tone-CWpsHPb6.js +11 -0
- package/dist/chunks/tone-CWpsHPb6.js.map +1 -0
- package/dist/chunks/toolbar-Dw3uxpsE.js +36 -0
- package/dist/chunks/toolbar-Dw3uxpsE.js.map +1 -0
- package/dist/chunks/tooltip-CDu00nzg.js +124 -0
- package/dist/chunks/tooltip-CDu00nzg.js.map +1 -0
- package/dist/chunks/tooltip-root-DWhtAtFb.js +60 -0
- package/dist/chunks/tooltip-root-DWhtAtFb.js.map +1 -0
- package/dist/chunks/use-controllable-B5Fd12Bx.js +13 -0
- package/dist/chunks/use-controllable-B5Fd12Bx.js.map +1 -0
- package/dist/chunks/use-copy-Dm2ncvMX.js +24 -0
- package/dist/chunks/use-copy-Dm2ncvMX.js.map +1 -0
- package/dist/chunks/use-layout-width-DZaLOQMT.js +27 -0
- package/dist/chunks/use-layout-width-DZaLOQMT.js.map +1 -0
- package/dist/chunks/use-scroll-margin-DWcfIXac.js +25 -0
- package/dist/chunks/use-scroll-margin-DWcfIXac.js.map +1 -0
- package/dist/chunks/use-truncated-DmQoePvG.js +25 -0
- package/dist/chunks/use-truncated-DmQoePvG.js.map +1 -0
- package/dist/chunks/utils-CdH72WEp.js +8 -0
- package/dist/chunks/utils-CdH72WEp.js.map +1 -0
- package/dist/chunks/virtual-rows-BgMdVelU.js +37 -0
- package/dist/chunks/virtual-rows-BgMdVelU.js.map +1 -0
- package/dist/chunks/when-idle-Cy3pinqO.js +12 -0
- package/dist/chunks/when-idle-Cy3pinqO.js.map +1 -0
- package/dist/chunks/zh-CN-cPjO1OOo.js +384 -0
- package/dist/chunks/zh-CN-cPjO1OOo.js.map +1 -0
- package/dist/components/app-frame.js +2 -0
- package/dist/components/avatar.js +2 -0
- package/dist/components/badge.js +2 -0
- package/dist/components/banner.js +2 -0
- package/dist/components/button-group.js +69 -0
- package/dist/components/button-group.js.map +1 -0
- package/dist/components/button.js +2 -0
- package/dist/components/calendar.js +2 -0
- package/dist/components/charts/bar.js +231 -0
- package/dist/components/charts/bar.js.map +1 -0
- package/dist/components/charts/donut.js +179 -0
- package/dist/components/charts/donut.js.map +1 -0
- package/dist/components/charts/gauge.js +70 -0
- package/dist/components/charts/gauge.js.map +1 -0
- package/dist/components/charts/heatmap.js +83 -0
- package/dist/components/charts/heatmap.js.map +1 -0
- package/dist/components/charts/sankey.js +110 -0
- package/dist/components/charts/sankey.js.map +1 -0
- package/dist/components/charts/sparkline.js +72 -0
- package/dist/components/charts/sparkline.js.map +1 -0
- package/dist/components/charts/timeseries.js +253 -0
- package/dist/components/charts/timeseries.js.map +1 -0
- package/dist/components/charts.js +10 -0
- package/dist/components/checkbox.js +2 -0
- package/dist/components/code-block.js +4 -0
- package/dist/components/code.js +2 -0
- package/dist/components/collapsible.js +2 -0
- package/dist/components/combobox.js +2 -0
- package/dist/components/command-palette.js +216 -0
- package/dist/components/command-palette.js.map +1 -0
- package/dist/components/copy-button.js +2 -0
- package/dist/components/data-table.js +399 -0
- package/dist/components/data-table.js.map +1 -0
- package/dist/components/date-picker.js +327 -0
- package/dist/components/date-picker.js.map +1 -0
- package/dist/components/dialog.js +178 -0
- package/dist/components/dialog.js.map +1 -0
- package/dist/components/display-options.js +112 -0
- package/dist/components/display-options.js.map +1 -0
- package/dist/components/empty.js +2 -0
- package/dist/components/field.js +2 -0
- package/dist/components/filter-chip.js +120 -0
- package/dist/components/filter-chip.js.map +1 -0
- package/dist/components/filter-row.js +35 -0
- package/dist/components/filter-row.js.map +1 -0
- package/dist/components/flow.js +111 -0
- package/dist/components/flow.js.map +1 -0
- package/dist/components/heading.js +28 -0
- package/dist/components/heading.js.map +1 -0
- package/dist/components/icon-button.js +2 -0
- package/dist/components/icon.js +4 -0
- package/dist/components/input.js +181 -0
- package/dist/components/input.js.map +1 -0
- package/dist/components/kaeso/conversation.js +204 -0
- package/dist/components/kaeso/conversation.js.map +1 -0
- package/dist/components/kaeso/identity.js +2 -0
- package/dist/components/kaeso/moments.js +122 -0
- package/dist/components/kaeso/moments.js.map +1 -0
- package/dist/components/kaeso/rights.js +2 -0
- package/dist/components/kaeso/usage.js +101 -0
- package/dist/components/kaeso/usage.js.map +1 -0
- package/dist/components/kaeso.js +186 -0
- package/dist/components/kaeso.js.map +1 -0
- package/dist/components/kbd.js +2 -0
- package/dist/components/key-value.js +73 -0
- package/dist/components/key-value.js.map +1 -0
- package/dist/components/label.js +26 -0
- package/dist/components/label.js.map +1 -0
- package/dist/components/layout.js +72 -0
- package/dist/components/layout.js.map +1 -0
- package/dist/components/link.js +2 -0
- package/dist/components/list.js +2 -0
- package/dist/components/loader.js +38 -0
- package/dist/components/loader.js.map +1 -0
- package/dist/components/logo.js +2 -0
- package/dist/components/markdown.js +4 -0
- package/dist/components/menu.js +4 -0
- package/dist/components/meter.js +2 -0
- package/dist/components/page-header.js +2 -0
- package/dist/components/pagination.js +2 -0
- package/dist/components/playground.js +813 -0
- package/dist/components/playground.js.map +1 -0
- package/dist/components/popover.js +53 -0
- package/dist/components/popover.js.map +1 -0
- package/dist/components/portal.js +15 -0
- package/dist/components/portal.js.map +1 -0
- package/dist/components/qr-code.js +38 -0
- package/dist/components/qr-code.js.map +1 -0
- package/dist/components/radio.js +2 -0
- package/dist/components/scroll-area.js +35 -0
- package/dist/components/scroll-area.js.map +1 -0
- package/dist/components/section.js +2 -0
- package/dist/components/segmented.js +2 -0
- package/dist/components/select.js +2 -0
- package/dist/components/separator.js +2 -0
- package/dist/components/settings.js +99 -0
- package/dist/components/settings.js.map +1 -0
- package/dist/components/sheet.js +94 -0
- package/dist/components/sheet.js.map +1 -0
- package/dist/components/sidebar.js +2 -0
- package/dist/components/skeleton.js +2 -0
- package/dist/components/slider.js +2 -0
- package/dist/components/stat.js +195 -0
- package/dist/components/stat.js.map +1 -0
- package/dist/components/status-dot.js +2 -0
- package/dist/components/surface.js +26 -0
- package/dist/components/surface.js.map +1 -0
- package/dist/components/swap-text.js +2 -0
- package/dist/components/switch.js +2 -0
- package/dist/components/table.js +2 -0
- package/dist/components/tabs.js +96 -0
- package/dist/components/tabs.js.map +1 -0
- package/dist/components/tag.js +2 -0
- package/dist/components/text.js +2 -0
- package/dist/components/theme-menu.js +50 -0
- package/dist/components/theme-menu.js.map +1 -0
- package/dist/components/timeline.js +58 -0
- package/dist/components/timeline.js.map +1 -0
- package/dist/components/toast.js +214 -0
- package/dist/components/toast.js.map +1 -0
- package/dist/components/toc.js +48 -0
- package/dist/components/toc.js.map +1 -0
- package/dist/components/toolbar.js +2 -0
- package/dist/components/tooltip.js +18 -0
- package/dist/components/tooltip.js.map +1 -0
- package/dist/components/visually-hidden.js +17 -0
- package/dist/components/visually-hidden.js.map +1 -0
- package/dist/fonts/LICENSE-GeistMono.txt +93 -0
- package/dist/fonts/LICENSE-Inter.txt +93 -0
- package/dist/fonts/geist-mono-latin-ext-wght-normal.woff2 +0 -0
- package/dist/fonts/geist-mono-latin-wght-normal.woff2 +0 -0
- package/dist/fonts/inter-latin-ext-opsz-normal.woff2 +0 -0
- package/dist/fonts/inter-latin-opsz-normal.woff2 +0 -0
- package/dist/fonts.css +40 -0
- package/dist/format.js +178 -0
- package/dist/format.js.map +1 -0
- package/dist/i18n-locales.js +23 -0
- package/dist/i18n-locales.js.map +1 -0
- package/dist/i18n-provider.js +30 -0
- package/dist/i18n-provider.js.map +1 -0
- package/dist/i18n.js +7 -0
- package/dist/index.js +153 -0
- package/dist/kaeso.css +1099 -0
- package/dist/styles.css +2 -0
- package/dist/tailwind.css +10 -0
- package/dist/theme.js +2 -0
- package/dist/types/blocks/delete-resource/delete-resource.d.ts +32 -0
- package/dist/types/blocks/delete-resource/docs.d.ts +17 -0
- package/dist/types/blocks/delete-resource/index.d.ts +1 -0
- package/dist/types/blocks/pages/docs.d.ts +42 -0
- package/dist/types/blocks/pages/index.d.ts +1 -0
- package/dist/types/blocks/pages/pages.d.ts +65 -0
- package/dist/types/blocks/resource-list/docs.d.ts +15 -0
- package/dist/types/blocks/resource-list/index.d.ts +1 -0
- package/dist/types/blocks/resource-list/resource-list.d.ts +36 -0
- package/dist/types/component-docs.d.ts +7 -0
- package/dist/types/components/app-frame/app-frame.d.ts +79 -0
- package/dist/types/components/app-frame/docs.d.ts +23 -0
- package/dist/types/components/app-frame/index.d.ts +1 -0
- package/dist/types/components/avatar/avatar.d.ts +60 -0
- package/dist/types/components/avatar/docs.d.ts +21 -0
- package/dist/types/components/avatar/index.d.ts +1 -0
- package/dist/types/components/badge/badge.d.ts +41 -0
- package/dist/types/components/badge/docs.d.ts +9 -0
- package/dist/types/components/badge/index.d.ts +1 -0
- package/dist/types/components/banner/banner.d.ts +51 -0
- package/dist/types/components/banner/docs.d.ts +14 -0
- package/dist/types/components/banner/index.d.ts +1 -0
- package/dist/types/components/button/button.d.ts +116 -0
- package/dist/types/components/button/docs.d.ts +23 -0
- package/dist/types/components/button/index.d.ts +1 -0
- package/dist/types/components/button-group/button-group.d.ts +55 -0
- package/dist/types/components/button-group/docs.d.ts +11 -0
- package/dist/types/components/button-group/index.d.ts +1 -0
- package/dist/types/components/calendar/calendar.d.ts +32 -0
- package/dist/types/components/calendar/docs.d.ts +16 -0
- package/dist/types/components/calendar/index.d.ts +1 -0
- package/dist/types/components/charts/bar.d.ts +39 -0
- package/dist/types/components/charts/core.d.ts +167 -0
- package/dist/types/components/charts/docs.d.ts +174 -0
- package/dist/types/components/charts/donut.d.ts +67 -0
- package/dist/types/components/charts/gauge.d.ts +20 -0
- package/dist/types/components/charts/heatmap.d.ts +24 -0
- package/dist/types/components/charts/index.d.ts +8 -0
- package/dist/types/components/charts/sankey.d.ts +29 -0
- package/dist/types/components/charts/sparkline.d.ts +18 -0
- package/dist/types/components/charts/timeseries.d.ts +47 -0
- package/dist/types/components/checkbox/checkbox.d.ts +53 -0
- package/dist/types/components/checkbox/docs.d.ts +58 -0
- package/dist/types/components/checkbox/index.d.ts +1 -0
- package/dist/types/components/code/code.d.ts +24 -0
- package/dist/types/components/code/docs.d.ts +8 -0
- package/dist/types/components/code/index.d.ts +1 -0
- package/dist/types/components/code-block/code-block.d.ts +37 -0
- package/dist/types/components/code-block/docs.d.ts +41 -0
- package/dist/types/components/code-block/highlighter.d.ts +23 -0
- package/dist/types/components/code-block/index.d.ts +4 -0
- package/dist/types/components/code-block/json-view.d.ts +23 -0
- package/dist/types/components/code-block/kaeso-theme.d.ts +66 -0
- package/dist/types/components/collapsible/collapsible.d.ts +39 -0
- package/dist/types/components/collapsible/docs.d.ts +21 -0
- package/dist/types/components/collapsible/index.d.ts +1 -0
- package/dist/types/components/combobox/combobox.d.ts +86 -0
- package/dist/types/components/combobox/docs.d.ts +62 -0
- package/dist/types/components/combobox/index.d.ts +1 -0
- package/dist/types/components/command-palette/command-palette.d.ts +44 -0
- package/dist/types/components/command-palette/docs.d.ts +17 -0
- package/dist/types/components/command-palette/index.d.ts +1 -0
- package/dist/types/components/copy-button/copy-button.d.ts +85 -0
- package/dist/types/components/copy-button/docs.d.ts +30 -0
- package/dist/types/components/copy-button/index.d.ts +1 -0
- package/dist/types/components/data-table/columns.d.ts +47 -0
- package/dist/types/components/data-table/data-table.d.ts +80 -0
- package/dist/types/components/data-table/docs.d.ts +32 -0
- package/dist/types/components/data-table/index.d.ts +3 -0
- package/dist/types/components/date-picker/date-picker.d.ts +55 -0
- package/dist/types/components/date-picker/date-popup.d.ts +9 -0
- package/dist/types/components/date-picker/docs.d.ts +73 -0
- package/dist/types/components/date-picker/index.d.ts +2 -0
- package/dist/types/components/date-picker/iso-field.d.ts +5 -0
- package/dist/types/components/date-picker/range-popup.d.ts +13 -0
- package/dist/types/components/date-picker/time-input.d.ts +39 -0
- package/dist/types/components/dialog/dialog.d.ts +118 -0
- package/dist/types/components/dialog/docs.d.ts +70 -0
- package/dist/types/components/dialog/focus.d.ts +2 -0
- package/dist/types/components/dialog/index.d.ts +2 -0
- package/dist/types/components/dialog/step-dialog.d.ts +26 -0
- package/dist/types/components/display-options/display-options.d.ts +55 -0
- package/dist/types/components/display-options/docs.d.ts +14 -0
- package/dist/types/components/display-options/index.d.ts +1 -0
- package/dist/types/components/empty/docs.d.ts +12 -0
- package/dist/types/components/empty/empty.d.ts +29 -0
- package/dist/types/components/empty/index.d.ts +1 -0
- package/dist/types/components/field/docs.d.ts +20 -0
- package/dist/types/components/field/field.d.ts +78 -0
- package/dist/types/components/field/index.d.ts +1 -0
- package/dist/types/components/filter-chip/docs.d.ts +19 -0
- package/dist/types/components/filter-chip/filter-chip.d.ts +37 -0
- package/dist/types/components/filter-chip/index.d.ts +1 -0
- package/dist/types/components/filter-row/docs.d.ts +11 -0
- package/dist/types/components/filter-row/filter-row.d.ts +23 -0
- package/dist/types/components/filter-row/index.d.ts +1 -0
- package/dist/types/components/flow/docs.d.ts +12 -0
- package/dist/types/components/flow/flow.d.ts +34 -0
- package/dist/types/components/flow/index.d.ts +1 -0
- package/dist/types/components/heading/docs.d.ts +10 -0
- package/dist/types/components/heading/heading.d.ts +30 -0
- package/dist/types/components/heading/index.d.ts +1 -0
- package/dist/types/components/icon/docs.d.ts +10 -0
- package/dist/types/components/icon/icon.d.ts +37 -0
- package/dist/types/components/icon/index.d.ts +2 -0
- package/dist/types/components/icon-button/docs.d.ts +17 -0
- package/dist/types/components/icon-button/icon-button.d.ts +75 -0
- package/dist/types/components/icon-button/index.d.ts +1 -0
- package/dist/types/components/input/decimal.d.ts +11 -0
- package/dist/types/components/input/docs.d.ts +149 -0
- package/dist/types/components/input/index.d.ts +8 -0
- package/dist/types/components/input/input-group.d.ts +55 -0
- package/dist/types/components/input/input.d.ts +45 -0
- package/dist/types/components/input/number-input.d.ts +28 -0
- package/dist/types/components/input/otp-input.d.ts +27 -0
- package/dist/types/components/input/sensitive-input.d.ts +21 -0
- package/dist/types/components/input/tag-input.d.ts +27 -0
- package/dist/types/components/input/textarea.d.ts +25 -0
- package/dist/types/components/kaeso/conversation.d.ts +58 -0
- package/dist/types/components/kaeso/docs.d.ts +139 -0
- package/dist/types/components/kaeso/effective-access.d.ts +21 -0
- package/dist/types/components/kaeso/identity.d.ts +70 -0
- package/dist/types/components/kaeso/index.d.ts +8 -0
- package/dist/types/components/kaeso/moments.d.ts +30 -0
- package/dist/types/components/kaeso/provider-marks.d.ts +1 -0
- package/dist/types/components/kaeso/rights-logic.d.ts +13 -0
- package/dist/types/components/kaeso/rights.d.ts +69 -0
- package/dist/types/components/kaeso/role-picker.d.ts +38 -0
- package/dist/types/components/kaeso/usage.d.ts +35 -0
- package/dist/types/components/kbd/docs.d.ts +16 -0
- package/dist/types/components/kbd/index.d.ts +1 -0
- package/dist/types/components/kbd/kbd.d.ts +31 -0
- package/dist/types/components/key-value/docs.d.ts +10 -0
- package/dist/types/components/key-value/index.d.ts +1 -0
- package/dist/types/components/key-value/key-value.d.ts +50 -0
- package/dist/types/components/label/docs.d.ts +10 -0
- package/dist/types/components/label/index.d.ts +1 -0
- package/dist/types/components/label/label.d.ts +22 -0
- package/dist/types/components/layout/docs.d.ts +30 -0
- package/dist/types/components/layout/index.d.ts +1 -0
- package/dist/types/components/layout/layout.d.ts +100 -0
- package/dist/types/components/link/docs.d.ts +11 -0
- package/dist/types/components/link/index.d.ts +1 -0
- package/dist/types/components/link/link.d.ts +27 -0
- package/dist/types/components/list/docs.d.ts +75 -0
- package/dist/types/components/list/index.d.ts +1 -0
- package/dist/types/components/list/list.d.ts +119 -0
- package/dist/types/components/list/row-checkbox.d.ts +5 -0
- package/dist/types/components/list/virtual-rows.d.ts +10 -0
- package/dist/types/components/loader/docs.d.ts +21 -0
- package/dist/types/components/loader/index.d.ts +2 -0
- package/dist/types/components/loader/loader.d.ts +35 -0
- package/dist/types/components/loader/status.d.ts +55 -0
- package/dist/types/components/logo/docs.d.ts +10 -0
- package/dist/types/components/logo/index.d.ts +1 -0
- package/dist/types/components/logo/logo.d.ts +59 -0
- package/dist/types/components/logo/paths.d.ts +16 -0
- package/dist/types/components/markdown/docs.d.ts +15 -0
- package/dist/types/components/markdown/index.d.ts +1 -0
- package/dist/types/components/markdown/markdown.d.ts +54 -0
- package/dist/types/components/menu/docs.d.ts +19 -0
- package/dist/types/components/menu/index.d.ts +2 -0
- package/dist/types/components/menu/menu.d.ts +213 -0
- package/dist/types/components/menu/styles.d.ts +7 -0
- package/dist/types/components/meter/docs.d.ts +23 -0
- package/dist/types/components/meter/index.d.ts +1 -0
- package/dist/types/components/meter/meter.d.ts +51 -0
- package/dist/types/components/page-header/docs.d.ts +12 -0
- package/dist/types/components/page-header/index.d.ts +1 -0
- package/dist/types/components/page-header/page-header.d.ts +22 -0
- package/dist/types/components/pagination/docs.d.ts +17 -0
- package/dist/types/components/pagination/index.d.ts +1 -0
- package/dist/types/components/pagination/pagination.d.ts +33 -0
- package/dist/types/components/playground/compare-grid.d.ts +41 -0
- package/dist/types/components/playground/composer.d.ts +40 -0
- package/dist/types/components/playground/docs.d.ts +141 -0
- package/dist/types/components/playground/index.d.ts +7 -0
- package/dist/types/components/playground/model-picker.d.ts +37 -0
- package/dist/types/components/playground/parameter-panel.d.ts +52 -0
- package/dist/types/components/playground/prompt-suggestions.d.ts +23 -0
- package/dist/types/components/playground/response-metrics.d.ts +30 -0
- package/dist/types/components/playground/response-view.d.ts +55 -0
- package/dist/types/components/popover/docs.d.ts +21 -0
- package/dist/types/components/popover/hover-card.d.ts +24 -0
- package/dist/types/components/popover/index.d.ts +2 -0
- package/dist/types/components/popover/popover-root.d.ts +24 -0
- package/dist/types/components/popover/popover.d.ts +40 -0
- package/dist/types/components/portal/docs.d.ts +9 -0
- package/dist/types/components/portal/index.d.ts +1 -0
- package/dist/types/components/portal/portal.d.ts +11 -0
- package/dist/types/components/qr-code/docs.d.ts +10 -0
- package/dist/types/components/qr-code/index.d.ts +1 -0
- package/dist/types/components/qr-code/qr-code.d.ts +22 -0
- package/dist/types/components/radio/docs.d.ts +42 -0
- package/dist/types/components/radio/index.d.ts +1 -0
- package/dist/types/components/radio/labelled.d.ts +13 -0
- package/dist/types/components/radio/radio.d.ts +51 -0
- package/dist/types/components/scroll-area/docs.d.ts +11 -0
- package/dist/types/components/scroll-area/index.d.ts +1 -0
- package/dist/types/components/scroll-area/scroll-area.d.ts +28 -0
- package/dist/types/components/section/docs.d.ts +28 -0
- package/dist/types/components/section/index.d.ts +1 -0
- package/dist/types/components/section/section.d.ts +37 -0
- package/dist/types/components/segmented/docs.d.ts +15 -0
- package/dist/types/components/segmented/index.d.ts +1 -0
- package/dist/types/components/segmented/segmented.d.ts +37 -0
- package/dist/types/components/select/docs.d.ts +32 -0
- package/dist/types/components/select/index.d.ts +1 -0
- package/dist/types/components/select/select.d.ts +82 -0
- package/dist/types/components/separator/docs.d.ts +10 -0
- package/dist/types/components/separator/index.d.ts +1 -0
- package/dist/types/components/separator/separator.d.ts +33 -0
- package/dist/types/components/settings/docs.d.ts +32 -0
- package/dist/types/components/settings/index.d.ts +1 -0
- package/dist/types/components/settings/settings.d.ts +45 -0
- package/dist/types/components/sheet/docs.d.ts +20 -0
- package/dist/types/components/sheet/index.d.ts +1 -0
- package/dist/types/components/sheet/sheet.d.ts +51 -0
- package/dist/types/components/sidebar/docs.d.ts +20 -0
- package/dist/types/components/sidebar/index.d.ts +1 -0
- package/dist/types/components/sidebar/sidebar-menu.d.ts +16 -0
- package/dist/types/components/sidebar/sidebar.d.ts +178 -0
- package/dist/types/components/skeleton/docs.d.ts +14 -0
- package/dist/types/components/skeleton/index.d.ts +1 -0
- package/dist/types/components/skeleton/skeleton.d.ts +31 -0
- package/dist/types/components/slider/docs.d.ts +20 -0
- package/dist/types/components/slider/index.d.ts +1 -0
- package/dist/types/components/slider/slider.d.ts +29 -0
- package/dist/types/components/stat/docs.d.ts +35 -0
- package/dist/types/components/stat/index.d.ts +1 -0
- package/dist/types/components/stat/stat.d.ts +68 -0
- package/dist/types/components/status-dot/docs.d.ts +18 -0
- package/dist/types/components/status-dot/index.d.ts +1 -0
- package/dist/types/components/status-dot/status-dot.d.ts +36 -0
- package/dist/types/components/surface/docs.d.ts +8 -0
- package/dist/types/components/surface/index.d.ts +1 -0
- package/dist/types/components/surface/surface.d.ts +44 -0
- package/dist/types/components/swap-text/docs.d.ts +10 -0
- package/dist/types/components/swap-text/index.d.ts +1 -0
- package/dist/types/components/swap-text/swap-text.d.ts +22 -0
- package/dist/types/components/switch/docs.d.ts +21 -0
- package/dist/types/components/switch/index.d.ts +1 -0
- package/dist/types/components/switch/switch.d.ts +39 -0
- package/dist/types/components/table/docs.d.ts +6 -0
- package/dist/types/components/table/index.d.ts +1 -0
- package/dist/types/components/table/table.d.ts +30 -0
- package/dist/types/components/tabs/docs.d.ts +22 -0
- package/dist/types/components/tabs/index.d.ts +1 -0
- package/dist/types/components/tabs/tabs.d.ts +61 -0
- package/dist/types/components/tag/docs.d.ts +30 -0
- package/dist/types/components/tag/index.d.ts +1 -0
- package/dist/types/components/tag/tag.d.ts +63 -0
- package/dist/types/components/text/docs.d.ts +15 -0
- package/dist/types/components/text/index.d.ts +1 -0
- package/dist/types/components/text/text.d.ts +111 -0
- package/dist/types/components/theme-menu/docs.d.ts +9 -0
- package/dist/types/components/theme-menu/index.d.ts +1 -0
- package/dist/types/components/theme-menu/theme-menu.d.ts +22 -0
- package/dist/types/components/timeline/docs.d.ts +8 -0
- package/dist/types/components/timeline/index.d.ts +1 -0
- package/dist/types/components/timeline/timeline.d.ts +41 -0
- package/dist/types/components/toast/docs.d.ts +26 -0
- package/dist/types/components/toast/index.d.ts +1 -0
- package/dist/types/components/toast/toast.d.ts +91 -0
- package/dist/types/components/toc/docs.d.ts +10 -0
- package/dist/types/components/toc/index.d.ts +1 -0
- package/dist/types/components/toc/toc.d.ts +27 -0
- package/dist/types/components/toolbar/docs.d.ts +9 -0
- package/dist/types/components/toolbar/index.d.ts +1 -0
- package/dist/types/components/toolbar/toolbar.d.ts +28 -0
- package/dist/types/components/tooltip/docs.d.ts +33 -0
- package/dist/types/components/tooltip/index.d.ts +2 -0
- package/dist/types/components/tooltip/tooltip-provider.d.ts +8 -0
- package/dist/types/components/tooltip/tooltip-root.d.ts +9 -0
- package/dist/types/components/tooltip/tooltip.d.ts +60 -0
- package/dist/types/components/tooltip/trigger-props.d.ts +23 -0
- package/dist/types/components/visually-hidden/docs.d.ts +6 -0
- package/dist/types/components/visually-hidden/index.d.ts +1 -0
- package/dist/types/components/visually-hidden/visually-hidden.d.ts +4 -0
- package/dist/types/format/index.d.ts +26 -0
- package/dist/types/hooks/scroll-parent.d.ts +1 -0
- package/dist/types/hooks/use-copy.d.ts +4 -0
- package/dist/types/hooks/use-indicator.d.ts +9 -0
- package/dist/types/hooks/use-layout-width.d.ts +3 -0
- package/dist/types/hooks/use-scroll-margin.d.ts +2 -0
- package/dist/types/hooks/use-stored-state.d.ts +1 -0
- package/dist/types/hooks/use-truncated.d.ts +2 -0
- package/dist/types/i18n/context.d.ts +11 -0
- package/dist/types/i18n/index.d.ts +5 -0
- package/dist/types/i18n/locale-names.d.ts +2 -0
- package/dist/types/i18n/locale-tags.d.ts +4 -0
- package/dist/types/i18n/locales/de.d.ts +2 -0
- package/dist/types/i18n/locales/en.d.ts +2 -0
- package/dist/types/i18n/locales/zh-CN.d.ts +2 -0
- package/dist/types/i18n/message.d.ts +2 -0
- package/dist/types/i18n/provider.d.ts +10 -0
- package/dist/types/icons/groups.d.ts +8 -0
- package/dist/types/icons/vocabulary.d.ts +413 -0
- package/dist/types/index.d.ts +79 -0
- package/dist/types/theme/index.d.ts +1 -0
- package/dist/types/theme/theme-provider.d.ts +22 -0
- package/dist/types/utils/arrow-focus.d.ts +2 -0
- package/dist/types/utils/cn.d.ts +370 -0
- package/dist/types/utils/dev.d.ts +4 -0
- package/dist/types/utils/field-press.d.ts +2 -0
- package/dist/types/utils/index.d.ts +8 -0
- package/dist/types/utils/inset.d.ts +6 -0
- package/dist/types/utils/lazy-module.d.ts +8 -0
- package/dist/types/utils/link-provider.d.ts +15 -0
- package/dist/types/utils/portal-context.d.ts +10 -0
- package/dist/types/utils/restore-focus.d.ts +4 -0
- package/dist/types/utils/safe-href.d.ts +1 -0
- package/dist/types/utils/tone.d.ts +2 -0
- package/dist/types/utils/use-controllable.d.ts +1 -0
- package/dist/types/utils/variants.d.ts +5 -0
- package/dist/types/utils/when-idle.d.ts +1 -0
- package/dist/utils.js +9 -0
- package/foundations/accessibility.md +41 -0
- package/foundations/color.md +40 -0
- package/foundations/elevation.md +23 -0
- package/foundations/icons.md +14 -0
- package/foundations/motion.md +39 -0
- package/foundations/psychology.md +36 -0
- package/foundations/shape.md +41 -0
- package/foundations/tokens.md +24 -0
- package/foundations/typography.md +35 -0
- package/foundations/writing.md +39 -0
- package/package.json +144 -0
|
@@ -0,0 +1,283 @@
|
|
|
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 { i, n as a } from "./button-BHKAE6ui.js";
|
|
7
|
+
import { t as o } from "./icon-button-Bw67oKtx.js";
|
|
8
|
+
import { t as s } from "./input-Biakz6GB.js";
|
|
9
|
+
import { t as c } from "./restore-focus-Cap1Q-R3.js";
|
|
10
|
+
import { forwardRef as l, useEffect as u, useLayoutEffect as d, useRef as f, useState as p } from "react";
|
|
11
|
+
import { Fragment as m, jsx as h, jsxs as g } from "react/jsx-runtime";
|
|
12
|
+
import { ArrowLeft01Icon as _, Cancel01Icon as v } from "@hugeicons/core-free-icons";
|
|
13
|
+
import { Dialog as y } from "@base-ui/react/dialog";
|
|
14
|
+
import { AlertDialog as b } from "@base-ui/react/alert-dialog";
|
|
15
|
+
//#region src/components/dialog/focus.ts
|
|
16
|
+
var x = "input:not([type=hidden]):not([tabindex=\"-1\"]):not([aria-hidden=\"true\"]), textarea, select, [role=combobox]:not([tabindex=\"-1\"]), [role=radio][tabindex=\"0\"], [role=checkbox]:not([tabindex=\"-1\"]), [role=switch]:not([tabindex=\"-1\"]), [role=listbox]:not([tabindex=\"-1\"]), [role=grid] [data-index][tabindex=\"0\"]", S = "a[href], button, input:not([type=hidden]), select, textarea, [tabindex]:not([tabindex=\"-1\"])", C = (e) => !e.closest("[hidden], [inert]") && !e.matches(":disabled, [aria-disabled=true]"), w = (e, t) => [...e.querySelectorAll(t)].find(C) ?? null;
|
|
17
|
+
function T(e, t) {
|
|
18
|
+
let n = t ?? e.querySelector("[data-dialog-body]"), r = e.querySelector("[data-dialog-footer]"), a = r ? [...r.querySelectorAll("button, a[href]")].filter(C) : [], { primary: o, danger: s, "danger-secondary": c } = i.variant, l = a.filter((e) => !e.classList.contains(s.classes) && !e.classList.contains(c.classes));
|
|
19
|
+
return (n && (w(n, "[data-autofocus]") ?? w(n, x))) ?? l.find((e) => e.classList.contains(o.classes)) ?? l[0] ?? (n && w(n, S)) ?? w(e, S);
|
|
20
|
+
}
|
|
21
|
+
function E(e, t) {
|
|
22
|
+
let n = e?.closest("[data-dialog-frame]");
|
|
23
|
+
e && n && !n.closest("[data-closed]") && ((t?.isConnected && n.contains(t) && C(t) ? t : null) ?? T(n, e))?.focus({ preventScroll: !0 });
|
|
24
|
+
}
|
|
25
|
+
//#endregion
|
|
26
|
+
//#region src/components/dialog/dialog.tsx
|
|
27
|
+
var D = { size: {
|
|
28
|
+
sm: { classes: "w-440" },
|
|
29
|
+
md: { classes: "w-560" },
|
|
30
|
+
lg: { classes: "w-720" }
|
|
31
|
+
} }, O = { size: "md" }, k = "fixed inset-0 z-50 bg-overlay backdrop-motion", A = "fixed inset-0 z-50 flex items-center justify-center p-16", j = "relative flex dialog-limits flex-col overflow-hidden rounded-dialog bg-raised text-fg shadow-dialog outline-none dialog-motion";
|
|
32
|
+
function M() {
|
|
33
|
+
let e = f(null), [t, n] = p(!1);
|
|
34
|
+
return u(() => {
|
|
35
|
+
let t = e.current;
|
|
36
|
+
if (!t) return;
|
|
37
|
+
let r = () => n(t.scrollHeight - t.scrollTop - t.clientHeight > 1);
|
|
38
|
+
r(), t.addEventListener("scroll", r, { passive: !0 });
|
|
39
|
+
let i = typeof ResizeObserver < "u" ? new ResizeObserver(r) : null, a = () => {
|
|
40
|
+
for (let e of t.children) i?.observe(e);
|
|
41
|
+
};
|
|
42
|
+
i?.observe(t), a();
|
|
43
|
+
let o = new MutationObserver(() => {
|
|
44
|
+
a(), r();
|
|
45
|
+
});
|
|
46
|
+
return o.observe(t, { childList: !0 }), () => {
|
|
47
|
+
t.removeEventListener("scroll", r), i?.disconnect(), o.disconnect();
|
|
48
|
+
};
|
|
49
|
+
}, []), {
|
|
50
|
+
ref: e,
|
|
51
|
+
under: t
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
function N({ title: t, description: n, children: i, footer: a, onSubmit: s, hideClose: c, headerStart: l, size: u = "md", className: d, inline: f }) {
|
|
55
|
+
let { ref: p, under: _ } = M(), b = r(), x = f ? "h2" : y.Title, S = /* @__PURE__ */ h(o, {
|
|
56
|
+
icon: v,
|
|
57
|
+
"aria-label": b("dialog.close", "Close"),
|
|
58
|
+
tooltip: !1
|
|
59
|
+
}), C = c ? null : f ? S : /* @__PURE__ */ h(y.Close, { render: S }), w = f ? "p" : y.Description;
|
|
60
|
+
return /* @__PURE__ */ g("div", {
|
|
61
|
+
"data-dialog-frame": "",
|
|
62
|
+
className: e("flex min-h-0 flex-col", f && "rounded-dialog bg-raised shadow-dialog", f && D.size[u].classes, d),
|
|
63
|
+
onKeyDown: (e) => {
|
|
64
|
+
s && e.key === "Enter" && (e.metaKey || e.ctrlKey) && (e.preventDefault(), s());
|
|
65
|
+
},
|
|
66
|
+
children: [
|
|
67
|
+
l === void 0 ? /* @__PURE__ */ g("div", {
|
|
68
|
+
className: "flex items-start gap-12 px-24 pt-20 pb-4",
|
|
69
|
+
children: [/* @__PURE__ */ g("div", {
|
|
70
|
+
className: "flex min-w-0 flex-1 flex-col gap-4 pt-4",
|
|
71
|
+
children: [/* @__PURE__ */ h(x, {
|
|
72
|
+
className: "text-title-sm font-semibold text-fg text-balance",
|
|
73
|
+
children: t
|
|
74
|
+
}), n && /* @__PURE__ */ h(w, {
|
|
75
|
+
className: "text-body text-fg-secondary text-pretty",
|
|
76
|
+
children: n
|
|
77
|
+
})]
|
|
78
|
+
}), C && /* @__PURE__ */ h("span", {
|
|
79
|
+
className: "-mr-8 flex",
|
|
80
|
+
children: C
|
|
81
|
+
})]
|
|
82
|
+
}) : /* @__PURE__ */ g(m, { children: [/* @__PURE__ */ g("div", {
|
|
83
|
+
className: "flex h-32 items-center justify-between px-16 pt-16 box-content",
|
|
84
|
+
children: [/* @__PURE__ */ h("span", {
|
|
85
|
+
className: "flex items-center",
|
|
86
|
+
children: l
|
|
87
|
+
}), C]
|
|
88
|
+
}), /* @__PURE__ */ g("div", {
|
|
89
|
+
className: "flex flex-col gap-4 px-24 pt-8 pb-4",
|
|
90
|
+
children: [/* @__PURE__ */ h(x, {
|
|
91
|
+
className: "text-title-sm font-semibold text-fg text-balance",
|
|
92
|
+
children: t
|
|
93
|
+
}), n && /* @__PURE__ */ h(w, {
|
|
94
|
+
className: "text-body text-fg-secondary text-pretty",
|
|
95
|
+
children: n
|
|
96
|
+
})]
|
|
97
|
+
})] }),
|
|
98
|
+
i && /* @__PURE__ */ h("div", {
|
|
99
|
+
ref: p,
|
|
100
|
+
"data-dialog-body": "",
|
|
101
|
+
className: e("min-h-0 flex-1 overflow-y-auto px-24 pt-16 scrollbar-quiet", a ? "pb-8" : "pb-24"),
|
|
102
|
+
children: i
|
|
103
|
+
}),
|
|
104
|
+
a && /* @__PURE__ */ h("div", {
|
|
105
|
+
"data-dialog-footer": "",
|
|
106
|
+
className: e("flex shrink-0 flex-wrap items-center justify-end gap-8 px-24 pt-16 pb-20 transition-control", _ && "hairline-t"),
|
|
107
|
+
children: a
|
|
108
|
+
})
|
|
109
|
+
]
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
function P() {
|
|
113
|
+
let e = [...document.querySelectorAll("[role=dialog], [role=alertdialog]")].pop(), t = e?.querySelector("[data-dialog-frame]");
|
|
114
|
+
return (t && T(t)) ?? e ?? !0;
|
|
115
|
+
}
|
|
116
|
+
var F = /* @__PURE__ */ l(function(r, i) {
|
|
117
|
+
let { open: a, defaultOpen: o, onOpenChange: s, trigger: l, size: u = "md", inline: d } = r, f = c(a, P), p = t();
|
|
118
|
+
return d ? /* @__PURE__ */ h(N, { ...r }) : /* @__PURE__ */ g(y.Root, {
|
|
119
|
+
...a === void 0 ? {} : { open: a },
|
|
120
|
+
...o === void 0 ? {} : { defaultOpen: o },
|
|
121
|
+
...s ? { onOpenChange: (e) => s(e) } : {},
|
|
122
|
+
children: [l && /* @__PURE__ */ h(y.Trigger, { render: l }), /* @__PURE__ */ g(y.Portal, {
|
|
123
|
+
container: p,
|
|
124
|
+
children: [/* @__PURE__ */ h(y.Backdrop, { className: k }), /* @__PURE__ */ h(y.Viewport, {
|
|
125
|
+
className: A,
|
|
126
|
+
children: /* @__PURE__ */ h(y.Popup, {
|
|
127
|
+
ref: i,
|
|
128
|
+
initialFocus: f.initialFocus,
|
|
129
|
+
finalFocus: f.finalFocus,
|
|
130
|
+
className: e(j, D.size[u].classes),
|
|
131
|
+
children: /* @__PURE__ */ h(n, {
|
|
132
|
+
inset: !1,
|
|
133
|
+
children: /* @__PURE__ */ h(N, { ...r })
|
|
134
|
+
})
|
|
135
|
+
})
|
|
136
|
+
})]
|
|
137
|
+
})]
|
|
138
|
+
});
|
|
139
|
+
});
|
|
140
|
+
process.env.NODE_ENV !== "production" && (F.displayName = "Dialog");
|
|
141
|
+
function I({ children: e }) {
|
|
142
|
+
return /* @__PURE__ */ h(y.Close, { render: e });
|
|
143
|
+
}
|
|
144
|
+
process.env.NODE_ENV !== "production" && (I.displayName = "Dialog.Close");
|
|
145
|
+
var L = /* @__PURE__ */ Object.assign(F, { Close: I }), R = { tone: {
|
|
146
|
+
danger: { classes: "bg-danger-tint text-danger-text" },
|
|
147
|
+
warning: { classes: "bg-warning-tint text-warning-text" },
|
|
148
|
+
info: { classes: "bg-info-tint text-info-text" }
|
|
149
|
+
} }, z = { tone: "danger" };
|
|
150
|
+
function B({ title: t, description: n, confirmLabel: i, cancelLabel: o, onConfirm: c, tone: l = "danger", confirmText: u, loading: d, inline: m, close: _ }) {
|
|
151
|
+
let [v, y] = p(""), [x, S] = p(!1), C = f(!1), w = r(), T = o ?? w("alertDialog.cancel", "Cancel"), [E, D = ""] = w("alertDialog.typeToConfirm", "Type {text} to confirm").split("{text}"), O = m ? "h2" : b.Title, k = m ? "p" : b.Description, A = !u || v === u, j = async () => {
|
|
152
|
+
if (!A || d || C.current) return;
|
|
153
|
+
let e = c();
|
|
154
|
+
if (!(e instanceof Promise)) return _();
|
|
155
|
+
C.current = !0, S(!0);
|
|
156
|
+
let t = await e.then(() => !0, () => !1);
|
|
157
|
+
C.current = !1, S(!1), t && _();
|
|
158
|
+
};
|
|
159
|
+
return /* @__PURE__ */ g("div", {
|
|
160
|
+
className: e("flex flex-col gap-20 p-24", m && "w-440 rounded-dialog bg-raised shadow-dialog"),
|
|
161
|
+
children: [
|
|
162
|
+
/* @__PURE__ */ g("div", {
|
|
163
|
+
className: "flex flex-col gap-6",
|
|
164
|
+
children: [/* @__PURE__ */ h(O, {
|
|
165
|
+
className: "text-title-sm font-semibold text-fg text-balance",
|
|
166
|
+
children: t
|
|
167
|
+
}), /* @__PURE__ */ h(k, {
|
|
168
|
+
className: "text-body text-fg-secondary text-pretty",
|
|
169
|
+
children: n
|
|
170
|
+
})]
|
|
171
|
+
}),
|
|
172
|
+
u && /* @__PURE__ */ h(s, {
|
|
173
|
+
label: /* @__PURE__ */ g("span", {
|
|
174
|
+
className: "font-regular text-fg-secondary",
|
|
175
|
+
children: [
|
|
176
|
+
E,
|
|
177
|
+
/* @__PURE__ */ h("span", {
|
|
178
|
+
className: "mono font-medium text-fg",
|
|
179
|
+
children: u
|
|
180
|
+
}),
|
|
181
|
+
D
|
|
182
|
+
]
|
|
183
|
+
}),
|
|
184
|
+
value: v,
|
|
185
|
+
onChange: (e) => y(e.target.value),
|
|
186
|
+
autoComplete: "off",
|
|
187
|
+
spellCheck: !1,
|
|
188
|
+
onKeyDown: (e) => e.key === "Enter" && j()
|
|
189
|
+
}),
|
|
190
|
+
/* @__PURE__ */ g("div", {
|
|
191
|
+
className: "flex flex-wrap justify-end gap-8",
|
|
192
|
+
children: [m ? /* @__PURE__ */ h(a, { children: T }) : /* @__PURE__ */ h(b.Close, { render: /* @__PURE__ */ h(a, { children: T }) }), /* @__PURE__ */ h(a, {
|
|
193
|
+
variant: l === "danger" ? "danger" : "primary",
|
|
194
|
+
onClick: j,
|
|
195
|
+
disabled: !A,
|
|
196
|
+
loading: x || d,
|
|
197
|
+
children: i
|
|
198
|
+
})]
|
|
199
|
+
})
|
|
200
|
+
]
|
|
201
|
+
});
|
|
202
|
+
}
|
|
203
|
+
function V(r) {
|
|
204
|
+
let { open: i, defaultOpen: a, onOpenChange: o, trigger: s, inline: l } = r, [u, d] = p(a ?? !1), f = i ?? u, m = (e) => {
|
|
205
|
+
i === void 0 && d(e), o?.(e);
|
|
206
|
+
}, _ = c(f), v = t();
|
|
207
|
+
return l ? /* @__PURE__ */ h(B, {
|
|
208
|
+
...r,
|
|
209
|
+
close: () => void 0
|
|
210
|
+
}) : /* @__PURE__ */ g(b.Root, {
|
|
211
|
+
open: f,
|
|
212
|
+
onOpenChange: (e) => m(e),
|
|
213
|
+
children: [s && /* @__PURE__ */ h(b.Trigger, { render: s }), /* @__PURE__ */ g(b.Portal, {
|
|
214
|
+
container: v,
|
|
215
|
+
children: [/* @__PURE__ */ h(b.Backdrop, { className: k }), /* @__PURE__ */ h(b.Viewport, {
|
|
216
|
+
className: A,
|
|
217
|
+
children: /* @__PURE__ */ h(b.Popup, {
|
|
218
|
+
initialFocus: _.initialFocus,
|
|
219
|
+
finalFocus: _.finalFocus,
|
|
220
|
+
className: e(j, "w-440"),
|
|
221
|
+
children: /* @__PURE__ */ h(n, {
|
|
222
|
+
inset: !1,
|
|
223
|
+
children: /* @__PURE__ */ h(B, {
|
|
224
|
+
...r,
|
|
225
|
+
close: () => m(!1)
|
|
226
|
+
})
|
|
227
|
+
})
|
|
228
|
+
})
|
|
229
|
+
})]
|
|
230
|
+
})]
|
|
231
|
+
});
|
|
232
|
+
}
|
|
233
|
+
process.env.NODE_ENV !== "production" && (V.displayName = "AlertDialog");
|
|
234
|
+
var H = D, U = O, W = (e) => e?.closest("[data-dialog-body]") ?? null;
|
|
235
|
+
function G({ layers: e, layer: t, onLayerChange: n, ...i }) {
|
|
236
|
+
let [a, s] = p(0), c = r(), l = t ?? a, u = l > 0 && l < e.length ? l : 0, m = f([]), g = f([]), v = f([]), y = f(u), b = f(u);
|
|
237
|
+
y.current !== u && (v.current[y.current] = W(m.current[y.current])?.scrollTop ?? 0, y.current = u), d(() => {
|
|
238
|
+
let e = b.current;
|
|
239
|
+
if (b.current = u, e === u) return;
|
|
240
|
+
let t = u < e;
|
|
241
|
+
t || (g.current[u] = null), g.current.length = u + 1;
|
|
242
|
+
let n = m.current[u], r = W(n);
|
|
243
|
+
r && (r.scrollTop = t ? v.current[u] ?? 0 : 0), E(n, t ? g.current[u] : null);
|
|
244
|
+
}, [u]);
|
|
245
|
+
let x = (e) => {
|
|
246
|
+
t === void 0 && s(e), n?.(e);
|
|
247
|
+
}, S = e.slice(0, u + 1), C = S[u];
|
|
248
|
+
if (!C) return null;
|
|
249
|
+
let w = (e) => (t) => {
|
|
250
|
+
t.target instanceof HTMLElement && (g.current[e] = t.target);
|
|
251
|
+
};
|
|
252
|
+
return /* @__PURE__ */ h(L, {
|
|
253
|
+
...i,
|
|
254
|
+
title: C.title,
|
|
255
|
+
description: C.description,
|
|
256
|
+
footer: C.footer ? S.map((e, t) => e.footer ? /* @__PURE__ */ h("div", {
|
|
257
|
+
hidden: t !== u,
|
|
258
|
+
className: "contents",
|
|
259
|
+
onFocus: w(t),
|
|
260
|
+
children: e.footer
|
|
261
|
+
}, t) : null) : void 0,
|
|
262
|
+
headerStart: u > 0 ? /* @__PURE__ */ h(o, {
|
|
263
|
+
icon: _,
|
|
264
|
+
"aria-label": c("dialog.back", "Back"),
|
|
265
|
+
onClick: () => x(u - 1),
|
|
266
|
+
className: "animate-layer-in"
|
|
267
|
+
}, "back") : null,
|
|
268
|
+
children: S.map((e, t) => /* @__PURE__ */ h("div", {
|
|
269
|
+
ref: (e) => {
|
|
270
|
+
m.current[t] = e;
|
|
271
|
+
},
|
|
272
|
+
hidden: t !== u,
|
|
273
|
+
className: "animate-layer-in",
|
|
274
|
+
onFocus: w(t),
|
|
275
|
+
children: e.content
|
|
276
|
+
}, t))
|
|
277
|
+
});
|
|
278
|
+
}
|
|
279
|
+
process.env.NODE_ENV !== "production" && (G.displayName = "LayerDialog");
|
|
280
|
+
//#endregion
|
|
281
|
+
export { O as a, H as c, R as i, G as l, L as n, D as o, z as r, U as s, V as t, E as u };
|
|
282
|
+
|
|
283
|
+
//# sourceMappingURL=dialog-CVqSVk3T.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dialog-CVqSVk3T.js","names":["BaseDialog","__icon_Cancel01Icon","_Fragment","Dialog","BaseAlertDialog","AlertDialog","__icon_ArrowLeft01Icon","cn","usePortalContainer","InsetContent","useUiText","Button","IconButton","Input","useRestoreFocus","Fragment$1","DIALOG_FIELD","FOCUSABLE","usable","el","firstUsable","scope","selector","initialDialogControl","content","frame","footer","actions","dangerSecondary","KAESO_BUTTON_VARIANTS","safe","a","danger","primary","focusDialogSection","section","previous","KAESO_DIALOG_VARIANTS","KAESO_DIALOG_DEFAULT_VARIANTS","BACKDROP","DIALOG_VIEWPORT","DIALOG_POPUP","useScrolledUnder","ref","useRef","under","setUnder","useState","useEffect","check","ro","observe","child","mo","DialogFrame","t","Title","inline","Dialog","closeButton","Cancel01Icon","close","hideClose","Description","size","className","onSubmit","headerStart","title","description","children","focusFirstControl","open","Root","props","focus","container","defaultOpen","onOpenChange","o","trigger","Close","Dialog$1","KAESO_ALERT_DIALOG_VARIANTS","KAESO_ALERT_DIALOG_DEFAULT_VARIANTS","AlertFrame","cancelProp","typed","setTyped","busy","setBusy","pending","cancelLabel","typeBefore","typeAfter","AlertDialog","ok","confirmText","confirm","loading","r","onConfirm","done","tone","confirmLabel","AlertDialog$1","inner","setInner","isOpen","setOpen","KAESO_LAYER_DIALOG_VARIANTS","KAESO_LAYER_DIALOG_DEFAULT_VARIANTS","bodyOf","LayerDialog","wanted","layer","index","layers","sections","focused","tops","left","shown","useLayoutEffect","from","back","body","go","i","onLayerChange","stack","current","remember","e","l","ArrowLeft01Icon"],"sources":["../../src/components/dialog/focus.ts","../../src/components/dialog/dialog.tsx"],"sourcesContent":["import { KAESO_BUTTON_VARIANTS } from \"../button/button.js\";\n\nconst DIALOG_FIELD =\n 'input:not([type=hidden]):not([tabindex=\"-1\"]):not([aria-hidden=\"true\"]), textarea, select, [role=combobox]:not([tabindex=\"-1\"]), [role=radio][tabindex=\"0\"], [role=checkbox]:not([tabindex=\"-1\"]), [role=switch]:not([tabindex=\"-1\"]), [role=listbox]:not([tabindex=\"-1\"]), [role=grid] [data-index][tabindex=\"0\"]';\nconst FOCUSABLE = 'a[href], button, input:not([type=hidden]), select, textarea, [tabindex]:not([tabindex=\"-1\"])';\n\nconst usable = (el: HTMLElement) => !el.closest(\"[hidden], [inert]\") && !el.matches(\":disabled, [aria-disabled=true]\");\nconst firstUsable = (scope: ParentNode, selector: string) => [...scope.querySelectorAll<HTMLElement>(selector)].find(usable) ?? null;\n\nexport function initialDialogControl(frame: HTMLElement, scope?: HTMLElement | undefined): HTMLElement | null {\n const content = scope ?? frame.querySelector<HTMLElement>(\"[data-dialog-body]\");\n const footer = frame.querySelector<HTMLElement>(\"[data-dialog-footer]\");\n const actions = footer ? [...footer.querySelectorAll<HTMLElement>(\"button, a[href]\")].filter(usable) : [];\n const { primary, danger, \"danger-secondary\": dangerSecondary } = KAESO_BUTTON_VARIANTS.variant;\n const safe = actions.filter((a) => !a.classList.contains(danger.classes) && !a.classList.contains(dangerSecondary.classes));\n return (\n (content && (firstUsable(content, \"[data-autofocus]\") ?? firstUsable(content, DIALOG_FIELD))) ??\n safe.find((a) => a.classList.contains(primary.classes)) ??\n safe[0] ??\n (content && firstUsable(content, FOCUSABLE)) ??\n firstUsable(frame, FOCUSABLE)\n );\n}\n\nexport function focusDialogSection(section: HTMLElement | null | undefined, previous?: HTMLElement | null | undefined) {\n const frame = section?.closest<HTMLElement>(\"[data-dialog-frame]\");\n if (!section || !frame || frame.closest(\"[data-closed]\")) return;\n const back = previous?.isConnected && frame.contains(previous) && usable(previous) ? previous : null;\n (back ?? initialDialogControl(frame, section))?.focus({ preventScroll: true });\n}\n","import { InsetContent } from \"../../utils/inset.js\";\nimport { usePortalContainer } from \"../../utils/portal-context.js\";\nimport { forwardRef, useEffect, useLayoutEffect, useRef, useState, type FocusEvent, type KeyboardEvent, type ReactElement, type ReactNode } from \"react\";\nimport { Dialog as BaseDialog } from \"@base-ui/react/dialog\";\nimport { AlertDialog as BaseAlertDialog } from \"@base-ui/react/alert-dialog\";\nimport { cn } from \"../../utils/cn.js\";\nimport { useRestoreFocus } from \"../../utils/restore-focus.js\";\nimport { Cancel01Icon as __icon_Cancel01Icon, ArrowLeft01Icon as __icon_ArrowLeft01Icon } from \"@hugeicons/core-free-icons\";\nimport { useUiText } from \"../../i18n/context.js\";\nimport { IconButton } from \"../icon-button/icon-button.js\";\nimport { Button } from \"../button/button.js\";\nimport { Input } from \"../input/input.js\";\nimport { focusDialogSection, initialDialogControl } from \"./focus.js\";\n\nexport const KAESO_DIALOG_VARIANTS = {\n size: {\n sm: { classes: \"w-440\" },\n md: { classes: \"w-560\" },\n lg: { classes: \"w-720\" },\n },\n} as const;\nexport const KAESO_DIALOG_DEFAULT_VARIANTS = { size: \"md\" } as const;\n\nconst BACKDROP = \"fixed inset-0 z-50 bg-overlay backdrop-motion\";\nconst DIALOG_VIEWPORT = \"fixed inset-0 z-50 flex items-center justify-center p-16\";\nconst DIALOG_POPUP = \"relative flex dialog-limits flex-col overflow-hidden rounded-dialog bg-raised text-fg shadow-dialog outline-none dialog-motion\";\n\nfunction useScrolledUnder<T extends HTMLElement>() {\n const ref = useRef<T | null>(null);\n const [under, setUnder] = useState(false);\n useEffect(() => {\n const el = ref.current;\n if (!el) return;\n const check = () => setUnder(el.scrollHeight - el.scrollTop - el.clientHeight > 1);\n check();\n el.addEventListener(\"scroll\", check, { passive: true });\n const ro = typeof ResizeObserver !== \"undefined\" ? new ResizeObserver(check) : null;\n const observe = () => {\n for (const child of el.children) ro?.observe(child);\n };\n ro?.observe(el);\n observe();\n const mo = new MutationObserver(() => {\n observe();\n check();\n });\n mo.observe(el, { childList: true });\n return () => {\n el.removeEventListener(\"scroll\", check);\n ro?.disconnect();\n mo.disconnect();\n };\n }, []);\n return { ref, under };\n}\n\nexport interface DialogProps {\n open?: boolean | undefined;\n defaultOpen?: boolean | undefined;\n onOpenChange?: ((open: boolean) => void) | undefined;\n trigger?: ReactElement | undefined;\n title: ReactNode;\n description?: ReactNode | undefined;\n size?: keyof typeof KAESO_DIALOG_VARIANTS.size | undefined;\n children?: ReactNode | undefined;\n footer?: ReactNode | undefined;\n onSubmit?: (() => void) | undefined;\n hideClose?: boolean | undefined;\n headerStart?: ReactNode | undefined;\n className?: string | undefined;\n inline?: boolean | undefined;\n}\n\nfunction DialogFrame({ title, description, children, footer, onSubmit, hideClose, headerStart, size = \"md\", className, inline }: DialogProps) {\n const { ref, under } = useScrolledUnder<HTMLDivElement>();\n const t = useUiText();\n const Title = inline ? \"h2\" : BaseDialog.Title;\n const closeButton = <IconButton icon={__icon_Cancel01Icon} aria-label={t(\"dialog.close\", \"Close\")} tooltip={false} />;\n const close = hideClose ? null : inline ? closeButton : <BaseDialog.Close render={closeButton} />;\n const Description = inline ? \"p\" : BaseDialog.Description;\n return (\n <div\n data-dialog-frame=\"\"\n className={cn(\"flex min-h-0 flex-col\", inline && \"rounded-dialog bg-raised shadow-dialog\", inline && KAESO_DIALOG_VARIANTS.size[size].classes, className)}\n onKeyDown={(e: KeyboardEvent) => {\n if (onSubmit && e.key === \"Enter\" && (e.metaKey || e.ctrlKey)) {\n e.preventDefault();\n onSubmit();\n }\n }}\n >\n {headerStart !== undefined ? (\n <>\n <div className=\"flex h-32 items-center justify-between px-16 pt-16 box-content\">\n <span className=\"flex items-center\">{headerStart}</span>\n {close}\n </div>\n <div className=\"flex flex-col gap-4 px-24 pt-8 pb-4\">\n <Title className=\"text-title-sm font-semibold text-fg text-balance\">{title}</Title>\n {description && <Description className=\"text-body text-fg-secondary text-pretty\">{description}</Description>}\n </div>\n </>\n ) : (\n <div className=\"flex items-start gap-12 px-24 pt-20 pb-4\">\n <div className=\"flex min-w-0 flex-1 flex-col gap-4 pt-4\">\n <Title className=\"text-title-sm font-semibold text-fg text-balance\">{title}</Title>\n {description && <Description className=\"text-body text-fg-secondary text-pretty\">{description}</Description>}\n </div>\n {close && <span className=\"-mr-8 flex\">{close}</span>}\n </div>\n )}\n {children && (\n <div ref={ref} data-dialog-body=\"\" className={cn(\"min-h-0 flex-1 overflow-y-auto px-24 pt-16 scrollbar-quiet\", footer ? \"pb-8\" : \"pb-24\")}>\n {children}\n </div>\n )}\n {footer && (\n <div\n data-dialog-footer=\"\"\n className={cn(\"flex shrink-0 flex-wrap items-center justify-end gap-8 px-24 pt-16 pb-20 transition-control\", under && \"hairline-t\")}\n >\n {footer}\n </div>\n )}\n </div>\n );\n}\n\nfunction focusFirstControl(): HTMLElement | true {\n const open = [...document.querySelectorAll<HTMLElement>(\"[role=dialog], [role=alertdialog]\")].pop();\n const frame = open?.querySelector<HTMLElement>(\"[data-dialog-frame]\");\n return (frame && initialDialogControl(frame)) ?? open ?? true;\n}\n\nconst Root = /* @__PURE__ */ forwardRef<HTMLDivElement, DialogProps>(function Dialog(props, ref) {\n const { open, defaultOpen, onOpenChange, trigger, size = \"md\", inline } = props;\n const focus = useRestoreFocus(open, focusFirstControl);\n const container = usePortalContainer();\n if (inline) return <DialogFrame {...props} />;\n return (\n <BaseDialog.Root\n {...(open !== undefined ? { open } : {})}\n {...(defaultOpen !== undefined ? { defaultOpen } : {})}\n {...(onOpenChange ? { onOpenChange: (o: boolean) => onOpenChange(o) } : {})}\n >\n {trigger && <BaseDialog.Trigger render={trigger} />}\n <BaseDialog.Portal container={container}>\n <BaseDialog.Backdrop className={BACKDROP} />\n <BaseDialog.Viewport className={DIALOG_VIEWPORT}>\n <BaseDialog.Popup\n ref={ref}\n initialFocus={focus.initialFocus}\n finalFocus={focus.finalFocus}\n className={cn(DIALOG_POPUP, KAESO_DIALOG_VARIANTS.size[size].classes)}\n >\n <InsetContent inset={false}>\n <DialogFrame {...props} />\n </InsetContent>\n </BaseDialog.Popup>\n </BaseDialog.Viewport>\n </BaseDialog.Portal>\n </BaseDialog.Root>\n );\n});\nif (process.env.NODE_ENV !== \"production\") Root.displayName = \"Dialog\";\n\nfunction Close({ children }: { children: ReactElement }) {\n return <BaseDialog.Close render={children} />;\n}\nif (process.env.NODE_ENV !== \"production\") Close.displayName = \"Dialog.Close\";\n\nexport const Dialog = /* @__PURE__ */ Object.assign(Root, { Close });\n\nexport const KAESO_ALERT_DIALOG_VARIANTS = {\n tone: {\n danger: { classes: \"bg-danger-tint text-danger-text\" },\n warning: { classes: \"bg-warning-tint text-warning-text\" },\n info: { classes: \"bg-info-tint text-info-text\" },\n },\n} as const;\nexport const KAESO_ALERT_DIALOG_DEFAULT_VARIANTS = { tone: \"danger\" } as const;\n\nexport interface AlertDialogProps {\n open?: boolean | undefined;\n defaultOpen?: boolean | undefined;\n onOpenChange?: ((open: boolean) => void) | undefined;\n trigger?: ReactElement | undefined;\n title: ReactNode;\n description: ReactNode;\n confirmLabel: string;\n cancelLabel?: string | undefined;\n onConfirm: () => void | Promise<void>;\n tone?: keyof typeof KAESO_ALERT_DIALOG_VARIANTS.tone | undefined;\n confirmText?: string | undefined;\n loading?: boolean | undefined;\n inline?: boolean | undefined;\n}\n\nfunction AlertFrame({\n title,\n description,\n confirmLabel,\n cancelLabel: cancelProp,\n onConfirm,\n tone = \"danger\",\n confirmText,\n loading,\n inline,\n close,\n}: AlertDialogProps & { close: () => void }) {\n const [typed, setTyped] = useState(\"\");\n const [busy, setBusy] = useState(false);\n const pending = useRef(false);\n const t = useUiText();\n const cancelLabel = cancelProp ?? t(\"alertDialog.cancel\", \"Cancel\");\n const [typeBefore, typeAfter = \"\"] = t(\"alertDialog.typeToConfirm\", \"Type {text} to confirm\").split(\"{text}\");\n const Title = inline ? \"h2\" : BaseAlertDialog.Title;\n const Description = inline ? \"p\" : BaseAlertDialog.Description;\n const ok = !confirmText || typed === confirmText;\n const confirm = async () => {\n if (!ok || loading || pending.current) return;\n const r = onConfirm();\n if (!(r instanceof Promise)) return close();\n pending.current = true;\n setBusy(true);\n const done = await r.then(\n () => true,\n () => false,\n );\n pending.current = false;\n setBusy(false);\n if (done) close();\n };\n return (\n <div className={cn(\"flex flex-col gap-20 p-24\", inline && \"w-440 rounded-dialog bg-raised shadow-dialog\")}>\n <div className=\"flex flex-col gap-6\">\n <Title className=\"text-title-sm font-semibold text-fg text-balance\">{title}</Title>\n <Description className=\"text-body text-fg-secondary text-pretty\">{description}</Description>\n </div>\n {confirmText && (\n <Input\n label={\n <span className=\"font-regular text-fg-secondary\">\n {typeBefore}\n <span className=\"mono font-medium text-fg\">{confirmText}</span>\n {typeAfter}\n </span>\n }\n value={typed}\n onChange={(e) => setTyped(e.target.value)}\n autoComplete=\"off\"\n spellCheck={false}\n onKeyDown={(e) => e.key === \"Enter\" && confirm()}\n />\n )}\n <div className=\"flex flex-wrap justify-end gap-8\">\n {inline ? <Button>{cancelLabel}</Button> : <BaseAlertDialog.Close render={<Button>{cancelLabel}</Button>} />}\n <Button variant={tone === \"danger\" ? \"danger\" : \"primary\"} onClick={confirm} disabled={!ok} loading={busy || loading}>\n {confirmLabel}\n </Button>\n </div>\n </div>\n );\n}\n\nexport function AlertDialog(props: AlertDialogProps) {\n const { open, defaultOpen, onOpenChange, trigger, inline } = props;\n const [inner, setInner] = useState(defaultOpen ?? false);\n const isOpen = open ?? inner;\n const setOpen = (o: boolean) => {\n if (open === undefined) setInner(o);\n onOpenChange?.(o);\n };\n const focus = useRestoreFocus(isOpen);\n const container = usePortalContainer();\n if (inline) return <AlertFrame {...props} close={() => undefined} />;\n return (\n <BaseAlertDialog.Root open={isOpen} onOpenChange={(o: boolean) => setOpen(o)}>\n {trigger && <BaseAlertDialog.Trigger render={trigger} />}\n <BaseAlertDialog.Portal container={container}>\n <BaseAlertDialog.Backdrop className={BACKDROP} />\n <BaseAlertDialog.Viewport className={DIALOG_VIEWPORT}>\n <BaseAlertDialog.Popup initialFocus={focus.initialFocus} finalFocus={focus.finalFocus} className={cn(DIALOG_POPUP, \"w-440\")}>\n <InsetContent inset={false}>\n <AlertFrame {...props} close={() => setOpen(false)} />\n </InsetContent>\n </BaseAlertDialog.Popup>\n </BaseAlertDialog.Viewport>\n </BaseAlertDialog.Portal>\n </BaseAlertDialog.Root>\n );\n}\nif (process.env.NODE_ENV !== \"production\") AlertDialog.displayName = \"AlertDialog\";\n\nexport const KAESO_LAYER_DIALOG_VARIANTS = KAESO_DIALOG_VARIANTS;\nexport const KAESO_LAYER_DIALOG_DEFAULT_VARIANTS = KAESO_DIALOG_DEFAULT_VARIANTS;\n\nexport interface DialogLayer {\n title: ReactNode;\n description?: ReactNode | undefined;\n content: ReactNode;\n footer?: ReactNode | undefined;\n}\n\nexport interface LayerDialogProps extends Omit<DialogProps, \"title\" | \"description\" | \"children\" | \"footer\" | \"headerStart\"> {\n layers: DialogLayer[];\n layer?: number | undefined;\n onLayerChange?: ((layer: number) => void) | undefined;\n}\n\nconst bodyOf = (el: HTMLElement | null | undefined) => el?.closest<HTMLElement>(\"[data-dialog-body]\") ?? null;\n\nexport function LayerDialog({ layers, layer, onLayerChange, ...props }: LayerDialogProps) {\n const [inner, setInner] = useState(0);\n const t = useUiText();\n const wanted = layer ?? inner;\n const index = wanted > 0 && wanted < layers.length ? wanted : 0;\n const sections = useRef<(HTMLDivElement | null)[]>([]);\n const focused = useRef<(HTMLElement | null)[]>([]);\n const tops = useRef<number[]>([]);\n const left = useRef(index);\n const shown = useRef(index);\n if (left.current !== index) {\n tops.current[left.current] = bodyOf(sections.current[left.current])?.scrollTop ?? 0;\n left.current = index;\n }\n useLayoutEffect(() => {\n const from = shown.current;\n shown.current = index;\n if (from === index) return;\n const back = index < from;\n if (!back) focused.current[index] = null;\n focused.current.length = index + 1;\n const section = sections.current[index];\n const body = bodyOf(section);\n if (body) body.scrollTop = back ? (tops.current[index] ?? 0) : 0;\n focusDialogSection(section, back ? focused.current[index] : null);\n }, [index]);\n const go = (i: number) => {\n if (layer === undefined) setInner(i);\n onLayerChange?.(i);\n };\n const stack = layers.slice(0, index + 1);\n const current = stack[index];\n if (!current) return null;\n const remember = (i: number) => (e: FocusEvent<HTMLElement>) => {\n if (e.target instanceof HTMLElement) focused.current[i] = e.target;\n };\n return (\n <Dialog\n {...props}\n title={current.title}\n description={current.description}\n footer={\n current.footer\n ? stack.map((l, i) =>\n l.footer ? (\n <div key={i} hidden={i !== index} className=\"contents\" onFocus={remember(i)}>\n {l.footer}\n </div>\n ) : null,\n )\n : undefined\n }\n headerStart={\n index > 0 ? (\n <IconButton key=\"back\" icon={__icon_ArrowLeft01Icon} aria-label={t(\"dialog.back\", \"Back\")} onClick={() => go(index - 1)} className=\"animate-layer-in\" />\n ) : null\n }\n >\n {stack.map((l, i) => (\n <div\n key={i}\n ref={(el) => {\n sections.current[i] = el;\n }}\n hidden={i !== index}\n className=\"animate-layer-in\"\n onFocus={remember(i)}\n >\n {l.content}\n </div>\n ))}\n </Dialog>\n );\n}\nif (process.env.NODE_ENV !== \"production\") LayerDialog.displayName = \"LayerDialog\";\n"],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { t as e } from "./cn-CidVUKMm.js";
|
|
3
|
+
import { forwardRef as t } from "react";
|
|
4
|
+
import { jsx as n, jsxs as r } from "react/jsx-runtime";
|
|
5
|
+
//#region src/components/empty/empty.tsx
|
|
6
|
+
var i = { size: {
|
|
7
|
+
lg: { classes: "py-80 gap-16" },
|
|
8
|
+
md: { classes: "py-48 gap-12" },
|
|
9
|
+
compact: { classes: "py-32 gap-8" }
|
|
10
|
+
} }, a = { size: "lg" }, o = /* @__PURE__ */ t(function({ title: t, description: a, actions: o, size: s = "lg", children: c, className: l }, u) {
|
|
11
|
+
let d = s === "compact";
|
|
12
|
+
return /* @__PURE__ */ r("div", {
|
|
13
|
+
ref: u,
|
|
14
|
+
className: e("flex flex-col items-center text-center", i.size[s].classes, l),
|
|
15
|
+
children: [
|
|
16
|
+
/* @__PURE__ */ r("div", {
|
|
17
|
+
className: e("flex flex-col items-center", d ? "gap-2" : "gap-6"),
|
|
18
|
+
children: [/* @__PURE__ */ n("h2", {
|
|
19
|
+
className: e("font-semibold text-fg text-balance", d ? "text-body" : "text-title"),
|
|
20
|
+
children: t
|
|
21
|
+
}), a && /* @__PURE__ */ n("p", {
|
|
22
|
+
className: e("max-w-44ch text-fg-secondary text-pretty", d ? "text-small" : "text-body"),
|
|
23
|
+
children: a
|
|
24
|
+
})]
|
|
25
|
+
}),
|
|
26
|
+
o && /* @__PURE__ */ n("div", {
|
|
27
|
+
className: e("flex flex-wrap items-center justify-center gap-8", !d && "mt-8"),
|
|
28
|
+
children: o
|
|
29
|
+
}),
|
|
30
|
+
c
|
|
31
|
+
]
|
|
32
|
+
});
|
|
33
|
+
});
|
|
34
|
+
process.env.NODE_ENV !== "production" && (o.displayName = "Empty");
|
|
35
|
+
//#endregion
|
|
36
|
+
export { a as n, i as r, o as t };
|
|
37
|
+
|
|
38
|
+
//# sourceMappingURL=empty-DIbBpytW.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"empty-DIbBpytW.js","names":["cn","KAESO_EMPTY_VARIANTS","KAESO_EMPTY_DEFAULT_VARIANTS","Empty","compact","size","className","title","description","actions","children"],"sources":["../../src/components/empty/empty.tsx"],"sourcesContent":["import { forwardRef, type ReactNode } from \"react\";\nimport { cn } from \"../../utils/cn.js\";\n\nexport const KAESO_EMPTY_VARIANTS = {\n size: {\n lg: { classes: \"py-80 gap-16\" },\n md: { classes: \"py-48 gap-12\" },\n compact: { classes: \"py-32 gap-8\" },\n },\n} as const;\nexport const KAESO_EMPTY_DEFAULT_VARIANTS = { size: \"lg\" } as const;\n\nexport interface EmptyProps {\n title: ReactNode;\n description?: ReactNode | undefined;\n actions?: ReactNode | undefined;\n size?: keyof typeof KAESO_EMPTY_VARIANTS.size | undefined;\n children?: ReactNode | undefined;\n className?: string | undefined;\n}\n\nexport const Empty = /* @__PURE__ */ forwardRef<HTMLDivElement, EmptyProps>(function Empty({ title, description, actions, size = \"lg\", children, className }, ref) {\n const compact = size === \"compact\";\n return (\n <div ref={ref} className={cn(\"flex flex-col items-center text-center\", KAESO_EMPTY_VARIANTS.size[size].classes, className)}>\n <div className={cn(\"flex flex-col items-center\", compact ? \"gap-2\" : \"gap-6\")}>\n <h2 className={cn(\"font-semibold text-fg text-balance\", compact ? \"text-body\" : \"text-title\")}>{title}</h2>\n {description && <p className={cn(\"max-w-44ch text-fg-secondary text-pretty\", compact ? \"text-small\" : \"text-body\")}>{description}</p>}\n </div>\n {actions && <div className={cn(\"flex flex-wrap items-center justify-center gap-8\", !compact && \"mt-8\")}>{actions}</div>}\n {children}\n </div>\n );\n});\nif (process.env.NODE_ENV !== \"production\") Empty.displayName = \"Empty\";\n"],"mappings":";;;;;AAGA,IAAaC,IAAuB,EAClC,MAAM;CACJ,IAAI,EAAE,SAAS,eAAe;CAC9B,IAAI,EAAE,SAAS,eAAe;CAC9B,SAAS,EAAE,SAAS,cAAc;AACpC,EACF,GACaC,IAA+B,EAAE,MAAM,KAAK,GAW5CC,IAAwB,kBAAuC,SAAe,EAAE,UAAO,gBAAa,YAAS,UAAO,MAAM,aAAU,gBAAa,GAAK;CACjK,IAAMC,IAAUC,MAAS;CACzB,OACE,kBAAC,OAAD;EAAU;EAAK,WAAWL,EAAG,0CAA0CC,EAAqB,KAAKI,EAAK,CAAC,SAASC,CAAS;EAAzH,UAAA;GACE,kBAAC,OAAD;IAAK,WAAWN,EAAG,8BAA8BI,IAAU,UAAU,OAAO;IAA5E,UAAA,CACE,kBAAC,MAAD;KAAI,WAAWJ,EAAG,sCAAsCI,IAAU,cAAc,YAAY;KAAI,UAAAG;IAAU,CAAA,GACzGC,KAAe,kBAAC,KAAD;KAAG,WAAWR,EAAG,4CAA4CI,IAAU,eAAe,WAAW;KAAI,UAAAI;IAAe,CAAA,CACjI;;GACJC,KAAW,kBAAC,OAAD;IAAK,WAAWT,EAAG,oDAAoD,CAACI,KAAW,MAAM;IAAI,UAAAK;GAAa,CAAA;GACrHC;EACE;;AAET,CAAC;AACD,QAAA,IAAA,aAA6B,iBAAc,EAAM,cAAc"}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { t as e } from "./cn-CidVUKMm.js";
|
|
3
|
+
import { i as t } from "./context-BELWW79w.js";
|
|
4
|
+
import { createContext as n, forwardRef as r, useContext as i, useId as a } from "react";
|
|
5
|
+
import { jsx as o, jsxs as s } from "react/jsx-runtime";
|
|
6
|
+
//#region src/components/field/field.tsx
|
|
7
|
+
var c = { layout: {
|
|
8
|
+
vertical: { classes: "flex flex-col gap-8" },
|
|
9
|
+
horizontal: { classes: "grid grid-cols-1 gap-8 md:grid-cols-label md:gap-x-24" }
|
|
10
|
+
} }, l = { layout: "vertical" }, u = /* @__PURE__ */ n(null), d = () => i(u), f = /* @__PURE__ */ r(function({ label: n, description: r, invalid: i, error: l, optional: d, required: f = !1, disabled: p = !1, layout: m = "vertical", id: h, className: g, children: _, ...v }, y) {
|
|
11
|
+
let b = a(), x = t(), S = h ?? `k-field-${b}`, C = n ? `${S}-label` : void 0, w = r ? `${S}-description` : void 0, T = l ? `${S}-error` : void 0, E = !!i || !!l, D = [w, T].filter(Boolean).join(" ") || void 0, O = {
|
|
12
|
+
controlId: S,
|
|
13
|
+
labelId: C,
|
|
14
|
+
descriptionId: w,
|
|
15
|
+
errorId: T,
|
|
16
|
+
invalid: E,
|
|
17
|
+
disabled: p,
|
|
18
|
+
required: f,
|
|
19
|
+
controlProps: {
|
|
20
|
+
id: S,
|
|
21
|
+
...D ? { "aria-describedby": D } : {},
|
|
22
|
+
...E ? { "aria-invalid": !0 } : {},
|
|
23
|
+
...f ? { "aria-required": !0 } : {}
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
return /* @__PURE__ */ o(u.Provider, {
|
|
27
|
+
value: O,
|
|
28
|
+
children: /* @__PURE__ */ s("div", {
|
|
29
|
+
ref: y,
|
|
30
|
+
className: e(c.layout[m].classes, g),
|
|
31
|
+
"data-disabled": p || void 0,
|
|
32
|
+
...v,
|
|
33
|
+
children: [n && /* @__PURE__ */ s("label", {
|
|
34
|
+
id: C,
|
|
35
|
+
htmlFor: S,
|
|
36
|
+
className: e("flex items-baseline gap-6 text-body font-medium text-fg", m === "horizontal" && "md:pt-8", p && "text-fg-disabled"),
|
|
37
|
+
children: [n, d && /* @__PURE__ */ o("span", {
|
|
38
|
+
className: "text-small font-regular text-fg-tertiary",
|
|
39
|
+
children: x("field.optional", "Optional")
|
|
40
|
+
})]
|
|
41
|
+
}), /* @__PURE__ */ s("div", {
|
|
42
|
+
className: "flex min-w-0 flex-col gap-6",
|
|
43
|
+
children: [
|
|
44
|
+
_,
|
|
45
|
+
r && /* @__PURE__ */ o("p", {
|
|
46
|
+
id: w,
|
|
47
|
+
className: "text-small text-fg-secondary",
|
|
48
|
+
children: r
|
|
49
|
+
}),
|
|
50
|
+
l && /* @__PURE__ */ o("p", {
|
|
51
|
+
id: T,
|
|
52
|
+
className: "sr-only",
|
|
53
|
+
children: l
|
|
54
|
+
})
|
|
55
|
+
]
|
|
56
|
+
})]
|
|
57
|
+
})
|
|
58
|
+
});
|
|
59
|
+
});
|
|
60
|
+
process.env.NODE_ENV !== "production" && (f.displayName = "Field");
|
|
61
|
+
var p = /* @__PURE__ */ r(function({ legend: t, description: n, className: r, children: i, ...a }, c) {
|
|
62
|
+
return /* @__PURE__ */ s("fieldset", {
|
|
63
|
+
ref: c,
|
|
64
|
+
className: e("flex min-w-0 flex-col gap-16", r),
|
|
65
|
+
...a,
|
|
66
|
+
children: [/* @__PURE__ */ s("div", {
|
|
67
|
+
className: "flex flex-col gap-4",
|
|
68
|
+
children: [/* @__PURE__ */ o("legend", {
|
|
69
|
+
className: "text-body-lg font-semibold text-fg",
|
|
70
|
+
children: t
|
|
71
|
+
}), n && /* @__PURE__ */ o("p", {
|
|
72
|
+
className: "text-small text-fg-secondary",
|
|
73
|
+
children: n
|
|
74
|
+
})]
|
|
75
|
+
}), i]
|
|
76
|
+
});
|
|
77
|
+
});
|
|
78
|
+
process.env.NODE_ENV !== "production" && (p.displayName = "Fieldset");
|
|
79
|
+
function m(e) {
|
|
80
|
+
let t = d(), n = a();
|
|
81
|
+
if (t) return {
|
|
82
|
+
controlProps: t.controlProps,
|
|
83
|
+
wrapId: void 0
|
|
84
|
+
};
|
|
85
|
+
if (e.label === void 0 && e.description === void 0 && e.error === void 0) return {
|
|
86
|
+
controlProps: e.invalid ? { "aria-invalid": !0 } : {},
|
|
87
|
+
wrapId: void 0
|
|
88
|
+
};
|
|
89
|
+
let r = e.id ?? `k-field-${n}`, i = [e.description ? `${r}-description` : "", e.error ? `${r}-error` : ""].filter(Boolean).join(" ");
|
|
90
|
+
return {
|
|
91
|
+
controlProps: {
|
|
92
|
+
id: r,
|
|
93
|
+
...i ? { "aria-describedby": i } : {},
|
|
94
|
+
...e.error || e.invalid ? { "aria-invalid": !0 } : {},
|
|
95
|
+
...e.required ? { "aria-required": !0 } : {}
|
|
96
|
+
},
|
|
97
|
+
wrapId: r
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
function h(e, t) {
|
|
101
|
+
let { label: n, description: r, error: i, optional: a, required: s, layout: c } = e;
|
|
102
|
+
return n === void 0 && r === void 0 && i === void 0 ? t : /* @__PURE__ */ o(f, {
|
|
103
|
+
label: n,
|
|
104
|
+
description: r,
|
|
105
|
+
error: i,
|
|
106
|
+
invalid: e.invalid,
|
|
107
|
+
optional: a,
|
|
108
|
+
required: s,
|
|
109
|
+
layout: c,
|
|
110
|
+
id: e.id,
|
|
111
|
+
disabled: e.disabled,
|
|
112
|
+
className: e.className,
|
|
113
|
+
children: t
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
//#endregion
|
|
117
|
+
export { d as a, c as i, p as n, m as o, l as r, h as s, f as t };
|
|
118
|
+
|
|
119
|
+
//# sourceMappingURL=field-d8V94bvZ.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"field-d8V94bvZ.js","names":["cn","useUiText","KAESO_FIELD_VARIANTS","KAESO_FIELD_DEFAULT_VARIANTS","FieldContext","useField","useContext","Field","invalidProp","props","auto","useId","t","controlId","id","labelId","label","descriptionId","description","errorId","error","invalid","describedBy","value","required","layout","className","disabled","optional","children","Fieldset","legend","useFieldControl","field","withField","control"],"sources":["../../src/components/field/field.tsx"],"sourcesContent":["import { createContext, forwardRef, useContext, useId, type FieldsetHTMLAttributes, type HTMLAttributes, type ReactNode } from \"react\";\nimport { cn } from \"../../utils/cn.js\";\nimport { useUiText } from \"../../i18n/context.js\";\n\nexport const KAESO_FIELD_VARIANTS = {\n layout: {\n vertical: { classes: \"flex flex-col gap-8\" },\n horizontal: {\n classes: \"grid grid-cols-1 gap-8 md:grid-cols-label md:gap-x-24\",\n },\n },\n} as const;\nexport const KAESO_FIELD_DEFAULT_VARIANTS = { layout: \"vertical\" } as const;\n\nexport interface FieldContextValue {\n controlId: string;\n labelId: string | undefined;\n descriptionId: string | undefined;\n errorId: string | undefined;\n invalid: boolean;\n disabled: boolean;\n required: boolean;\n controlProps: { id: string; \"aria-describedby\"?: string | undefined; \"aria-invalid\"?: true | undefined; \"aria-required\"?: true | undefined };\n}\n\nconst FieldContext = /* @__PURE__ */ createContext<FieldContextValue | null>(null);\nexport const useField = () => useContext(FieldContext);\n\nexport interface FieldProps extends Omit<HTMLAttributes<HTMLDivElement>, \"children\"> {\n label?: ReactNode | undefined;\n description?: ReactNode | undefined;\n invalid?: boolean | undefined;\n error?: ReactNode | undefined;\n optional?: boolean | undefined;\n required?: boolean | undefined;\n disabled?: boolean | undefined;\n layout?: keyof typeof KAESO_FIELD_VARIANTS.layout | undefined;\n id?: string | undefined;\n children: ReactNode;\n}\n\nexport const Field = /* @__PURE__ */ forwardRef<HTMLDivElement, FieldProps>(function Field(\n { label, description, invalid: invalidProp, error, optional, required = false, disabled = false, layout = \"vertical\", id, className, children, ...props },\n ref,\n) {\n const auto = useId();\n const t = useUiText();\n const controlId = id ?? `k-field-${auto}`;\n const labelId = label ? `${controlId}-label` : undefined;\n const descriptionId = description ? `${controlId}-description` : undefined;\n const errorId = error ? `${controlId}-error` : undefined;\n const invalid = !!invalidProp || !!error;\n const describedBy = [descriptionId, errorId].filter(Boolean).join(\" \") || undefined;\n const value: FieldContextValue = {\n controlId,\n labelId,\n descriptionId,\n errorId,\n invalid,\n disabled,\n required,\n controlProps: {\n id: controlId,\n ...(describedBy ? { \"aria-describedby\": describedBy } : {}),\n ...(invalid ? { \"aria-invalid\": true as const } : {}),\n ...(required ? { \"aria-required\": true as const } : {}),\n },\n };\n return (\n <FieldContext.Provider value={value}>\n <div ref={ref} className={cn(KAESO_FIELD_VARIANTS.layout[layout].classes, className)} data-disabled={disabled || undefined} {...props}>\n {label && (\n <label\n id={labelId}\n htmlFor={controlId}\n className={cn(\"flex items-baseline gap-6 text-body font-medium text-fg\", layout === \"horizontal\" && \"md:pt-8\", disabled && \"text-fg-disabled\")}\n >\n {label}\n {optional && <span className=\"text-small font-regular text-fg-tertiary\">{t(\"field.optional\", \"Optional\")}</span>}\n </label>\n )}\n <div className=\"flex min-w-0 flex-col gap-6\">\n {children}\n {description && (\n <p id={descriptionId} className=\"text-small text-fg-secondary\">\n {description}\n </p>\n )}\n {error && (\n <p id={errorId} className=\"sr-only\">\n {error}\n </p>\n )}\n </div>\n </div>\n </FieldContext.Provider>\n );\n});\nif (process.env.NODE_ENV !== \"production\") Field.displayName = \"Field\";\n\nexport interface FieldsetProps extends FieldsetHTMLAttributes<HTMLFieldSetElement> {\n legend: ReactNode;\n description?: ReactNode | undefined;\n}\n\nexport const Fieldset = /* @__PURE__ */ forwardRef<HTMLFieldSetElement, FieldsetProps>(function Fieldset({ legend, description, className, children, ...props }, ref) {\n return (\n <fieldset ref={ref} className={cn(\"flex min-w-0 flex-col gap-16\", className)} {...props}>\n <div className=\"flex flex-col gap-4\">\n <legend className=\"text-body-lg font-semibold text-fg\">{legend}</legend>\n {description && <p className=\"text-small text-fg-secondary\">{description}</p>}\n </div>\n {children}\n </fieldset>\n );\n});\nif (process.env.NODE_ENV !== \"production\") Fieldset.displayName = \"Fieldset\";\n\nexport function useFieldControl(props: {\n label?: ReactNode | undefined;\n description?: ReactNode | undefined;\n error?: ReactNode | undefined;\n invalid?: boolean | undefined;\n required?: boolean | undefined;\n id?: string | undefined;\n}) {\n const field = useField();\n const auto = useId();\n if (field) return { controlProps: field.controlProps as Record<string, unknown>, wrapId: undefined };\n const wraps = props.label !== undefined || props.description !== undefined || props.error !== undefined;\n if (!wraps) return { controlProps: (props.invalid ? { \"aria-invalid\": true } : {}) as Record<string, unknown>, wrapId: undefined };\n const controlId = props.id ?? `k-field-${auto}`;\n const describedBy = [props.description ? `${controlId}-description` : \"\", props.error ? `${controlId}-error` : \"\"].filter(Boolean).join(\" \");\n return {\n controlProps: {\n id: controlId,\n ...(describedBy ? { \"aria-describedby\": describedBy } : {}),\n ...(props.error || props.invalid ? { \"aria-invalid\": true } : {}),\n ...(props.required ? { \"aria-required\": true } : {}),\n } as Record<string, unknown>,\n wrapId: controlId,\n };\n}\n\nexport interface FieldWrapProps {\n label?: ReactNode | undefined;\n description?: ReactNode | undefined;\n error?: ReactNode | undefined;\n optional?: boolean | undefined;\n required?: boolean | undefined;\n layout?: keyof typeof KAESO_FIELD_VARIANTS.layout | undefined;\n}\n\nexport function withField(\n props: FieldWrapProps & { id?: string | undefined; disabled?: boolean | undefined; invalid?: boolean | undefined; className?: string | undefined },\n control: ReactNode,\n) {\n const { label, description, error, optional, required, layout } = props;\n if (label === undefined && description === undefined && error === undefined) return control;\n return (\n <Field\n label={label}\n description={description}\n error={error}\n invalid={props.invalid}\n optional={optional}\n required={required}\n layout={layout}\n id={props.id}\n disabled={props.disabled}\n className={props.className}\n >\n {control}\n </Field>\n );\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
//#region src/utils/field-press.ts
|
|
2
|
+
function e(e) {
|
|
3
|
+
if (e.target !== e.currentTarget) return;
|
|
4
|
+
let t = e.currentTarget.querySelector("input:not([type=hidden])");
|
|
5
|
+
t && !t.disabled && (e.preventDefault(), t.focus());
|
|
6
|
+
}
|
|
7
|
+
//#endregion
|
|
8
|
+
export { e as t };
|
|
9
|
+
|
|
10
|
+
//# sourceMappingURL=field-press-DwzBFafd.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"field-press-DwzBFafd.js","names":["focusInputOnPress","input"],"sources":["../../src/utils/field-press.ts"],"sourcesContent":["import type { MouseEvent } from \"react\";\n\nexport function focusInputOnPress(e: MouseEvent<HTMLElement>) {\n if (e.target !== e.currentTarget) return;\n const input = e.currentTarget.querySelector(\"input:not([type=hidden])\") as HTMLInputElement | null;\n if (!input || input.disabled) return;\n e.preventDefault();\n input.focus();\n}\n"],"mappings":";AAEA,SAAgBA,EAAkB,GAA4B;CAC5D,IAAI,EAAE,WAAW,EAAE,eAAe;CAClC,IAAMC,IAAQ,EAAE,cAAc,cAAc,0BAA0B;CACtE,AAAKA,KAAS,GAAM,aACpB,EAAE,eAAe,GACjBA,EAAM,MAAM;AACd"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"i18n-0RW0IAf3.js","names":["UI_LOCALE_NAMES"],"sources":["../../src/i18n/locale-names.ts"],"sourcesContent":["import type { UiLocale } from \"./locale-tags.js\";\n\nexport const UI_LOCALE_NAMES: Readonly<Record<UiLocale, string>> = {\n en: \"English\",\n de: \"Deutsch\",\n \"zh-CN\": \"简体中文\",\n};\n"],"mappings":";AAEA,IAAaA,IAAsD;CACjE,IAAI;CACJ,IAAI;CACJ,SAAS;AACX"}
|