@logicplanes/kaeso-ui 0.4.4 → 0.4.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ai/component-guides.md +250 -98
- package/ai/component-registry.json +264 -236
- package/ai/component-registry.md +222 -218
- package/ai/icons.md +1 -1
- package/ai/tokens.md +18 -14
- package/dist/blocks/delete-resource.js +3 -3
- package/dist/blocks/delete-resource.js.map +1 -1
- package/dist/blocks/pages.js +47 -42
- package/dist/blocks/pages.js.map +1 -1
- package/dist/blocks/resource-list.js +68 -55
- package/dist/blocks/resource-list.js.map +1 -1
- package/dist/chunks/agent-avatar-DHieggHK.js +188 -0
- package/dist/chunks/agent-avatar-DHieggHK.js.map +1 -0
- package/dist/chunks/app-frame-DysOel2X.js +232 -0
- package/dist/chunks/app-frame-DysOel2X.js.map +1 -0
- package/dist/chunks/arrow-focus-B0KdRFX8.js +20 -0
- package/dist/chunks/arrow-focus-B0KdRFX8.js.map +1 -0
- package/dist/chunks/avatar-CYNMK7uY.js +110 -0
- package/dist/chunks/avatar-CYNMK7uY.js.map +1 -0
- package/dist/chunks/badge-C0GC3B9X.js +27 -0
- package/dist/chunks/badge-C0GC3B9X.js.map +1 -0
- package/dist/chunks/banner-B3DGLTBu.js +88 -0
- package/dist/chunks/banner-B3DGLTBu.js.map +1 -0
- package/dist/chunks/button-IblhXUyZ.js +202 -0
- package/dist/chunks/button-IblhXUyZ.js.map +1 -0
- package/dist/chunks/{calendar-BWaf2MXc.js → calendar-Dc6_dl0f.js} +4 -4
- package/dist/chunks/calendar-Dc6_dl0f.js.map +1 -0
- package/dist/chunks/checkbox-9tbimmF3.js +141 -0
- package/dist/chunks/checkbox-9tbimmF3.js.map +1 -0
- package/dist/chunks/{cn-Dj6sRgkF.js → cn-BjnOAUrA.js} +45 -4
- package/dist/chunks/cn-BjnOAUrA.js.map +1 -0
- package/dist/chunks/code-block-64e-Cy1S.js +346 -0
- package/dist/chunks/code-block-64e-Cy1S.js.map +1 -0
- package/dist/chunks/{code-block-DdNPHEzI.js → code-block-KIvuE8jg.js} +122 -114
- package/dist/chunks/code-block-KIvuE8jg.js.map +1 -0
- package/dist/chunks/{code-tqj0uhBL.js → code-xqjww4Pv.js} +5 -6
- package/dist/chunks/code-xqjww4Pv.js.map +1 -0
- package/dist/chunks/combobox-DkcjkWc6.js +352 -0
- package/dist/chunks/combobox-DkcjkWc6.js.map +1 -0
- package/dist/chunks/command-list-CypqsC4T.js +456 -0
- package/dist/chunks/command-list-CypqsC4T.js.map +1 -0
- package/dist/chunks/{copy-button-FJvPJn72.js → copy-button-CwU8t_9_.js} +22 -15
- package/dist/chunks/copy-button-CwU8t_9_.js.map +1 -0
- package/dist/chunks/core-CmK-8ObW.js +505 -0
- package/dist/chunks/core-CmK-8ObW.js.map +1 -0
- package/dist/chunks/data-table-CqY8_6IS.js +581 -0
- package/dist/chunks/data-table-CqY8_6IS.js.map +1 -0
- package/dist/chunks/date-popup-DAnjptFt.js +58 -0
- package/dist/chunks/date-popup-DAnjptFt.js.map +1 -0
- package/dist/chunks/{de-D_0mmG-k.js → de-CqC4aSIV.js} +74 -40
- package/dist/chunks/de-CqC4aSIV.js.map +1 -0
- package/dist/chunks/{dialog-Cg9A_6SF.js → dialog-2zb6ClNR.js} +156 -134
- package/dist/chunks/dialog-2zb6ClNR.js.map +1 -0
- package/dist/chunks/disclosure-BtYRTDO3.js +22 -0
- package/dist/chunks/disclosure-BtYRTDO3.js.map +1 -0
- package/dist/chunks/domain-obd_w9xk.js +28 -0
- package/dist/chunks/domain-obd_w9xk.js.map +1 -0
- package/dist/chunks/{empty-DvhyMXQq.js → empty-BpiUgGzm.js} +2 -2
- package/dist/chunks/{empty-DvhyMXQq.js.map → empty-BpiUgGzm.js.map} +1 -1
- package/dist/chunks/{field-TviMvYa2.js → field-D7m-yl-D.js} +37 -34
- package/dist/chunks/field-D7m-yl-D.js.map +1 -0
- package/dist/chunks/{icon-D7ja-_Yk.js → icon-CBzOwqrX.js} +7 -6
- package/dist/chunks/{icon-D7ja-_Yk.js.map → icon-CBzOwqrX.js.map} +1 -1
- package/dist/chunks/{icon-button-CrdF_eMG.js → icon-button-Dfwpvmav.js} +7 -6
- package/dist/chunks/icon-button-Dfwpvmav.js.map +1 -0
- package/dist/chunks/{identity-BmhQ6BQ-.js → identity-3Foi5F8w.js} +7 -7
- package/dist/chunks/{identity-BmhQ6BQ-.js.map → identity-3Foi5F8w.js.map} +1 -1
- package/dist/chunks/{input-2VJuj_M4.js → input-Bo5-UZg2.js} +15 -9
- package/dist/chunks/input-Bo5-UZg2.js.map +1 -0
- package/dist/chunks/{input-group-DQ_4DoXg.js → input-group-jPcK9T_a.js} +42 -29
- package/dist/chunks/input-group-jPcK9T_a.js.map +1 -0
- package/dist/chunks/iso-field-DoqHBg8n.js +52 -0
- package/dist/chunks/iso-field-DoqHBg8n.js.map +1 -0
- package/dist/chunks/json-view-DZ2nL2Ir.js +253 -0
- package/dist/chunks/json-view-DZ2nL2Ir.js.map +1 -0
- package/dist/chunks/{kbd-BF1vKXJf.js → kbd-8A0ML_up.js} +30 -28
- package/dist/chunks/kbd-8A0ML_up.js.map +1 -0
- package/dist/chunks/label-DW24Aj0Z.js +26 -0
- package/dist/chunks/label-DW24Aj0Z.js.map +1 -0
- package/dist/chunks/{link-KWI7PevW.js → link-CMjkcLQK.js} +14 -14
- package/dist/chunks/link-CMjkcLQK.js.map +1 -0
- package/dist/chunks/list-B4G-sWwV.js +540 -0
- package/dist/chunks/list-B4G-sWwV.js.map +1 -0
- package/dist/chunks/{loader-DCfPndXa.js → loader-zo8CCIGJ.js} +2 -2
- package/dist/chunks/{loader-DCfPndXa.js.map → loader-zo8CCIGJ.js.map} +1 -1
- package/dist/chunks/markdown-C565aBR7.js +338 -0
- package/dist/chunks/markdown-C565aBR7.js.map +1 -0
- package/dist/chunks/menu-Clvv6ftq.js +485 -0
- package/dist/chunks/menu-Clvv6ftq.js.map +1 -0
- package/dist/chunks/merge-refs-BN1FyQt9.js +20 -0
- package/dist/chunks/merge-refs-BN1FyQt9.js.map +1 -0
- package/dist/chunks/meter-CASMHlxl.js +100 -0
- package/dist/chunks/meter-CASMHlxl.js.map +1 -0
- package/dist/chunks/nav-sheet-Dt6JSvzX.js +67 -0
- package/dist/chunks/nav-sheet-Dt6JSvzX.js.map +1 -0
- package/dist/chunks/{nav-wordmark-_pjheAsZ.js → nav-wordmark-J4pB_vjr.js} +4 -8
- package/dist/chunks/nav-wordmark-J4pB_vjr.js.map +1 -0
- package/dist/chunks/page-header-kS5tdmvb.js +45 -0
- package/dist/chunks/page-header-kS5tdmvb.js.map +1 -0
- package/dist/chunks/pagination-D7fAm8qg.js +147 -0
- package/dist/chunks/pagination-D7fAm8qg.js.map +1 -0
- package/dist/chunks/picker-popover-1FHb1LQG.js +119 -0
- package/dist/chunks/picker-popover-1FHb1LQG.js.map +1 -0
- package/dist/chunks/popover-Bl5QYqnh.js +51 -0
- package/dist/chunks/popover-Bl5QYqnh.js.map +1 -0
- package/dist/chunks/{portal-context-BBbzDKmY.js → portal-context-CTatR2Z8.js} +14 -4
- package/dist/chunks/portal-context-CTatR2Z8.js.map +1 -0
- package/dist/chunks/{radio-CDDFpdtL.js → radio-C6GtzF_t.js} +38 -23
- package/dist/chunks/radio-C6GtzF_t.js.map +1 -0
- package/dist/chunks/range-popup-lGiZsG3s.js +160 -0
- package/dist/chunks/range-popup-lGiZsG3s.js.map +1 -0
- package/dist/chunks/reasoning-frame-C3HdQRRS.js +51 -0
- package/dist/chunks/reasoning-frame-C3HdQRRS.js.map +1 -0
- package/dist/chunks/release-art-ChiT4T2S.js +582 -0
- package/dist/chunks/release-art-ChiT4T2S.js.map +1 -0
- package/dist/chunks/rights-B68ocZuq.js +312 -0
- package/dist/chunks/rights-B68ocZuq.js.map +1 -0
- package/dist/chunks/{scroll-area-D8MD7Vpo.js → scroll-area-_Ljh4-bG.js} +11 -6
- package/dist/chunks/scroll-area-_Ljh4-bG.js.map +1 -0
- package/dist/chunks/section-CFBYhsUi.js +77 -0
- package/dist/chunks/section-CFBYhsUi.js.map +1 -0
- package/dist/chunks/section-header-DU1Q4Tdf.js +28 -0
- package/dist/chunks/section-header-DU1Q4Tdf.js.map +1 -0
- package/dist/chunks/segmented-D9i1avik.js +119 -0
- package/dist/chunks/segmented-D9i1avik.js.map +1 -0
- package/dist/chunks/select-BqjmQOqx.js +222 -0
- package/dist/chunks/select-BqjmQOqx.js.map +1 -0
- package/dist/chunks/{separator-D7TzNHmX.js → separator-BNWf6BBj.js} +13 -8
- package/dist/chunks/separator-BNWf6BBj.js.map +1 -0
- package/dist/chunks/sidebar-Dq7oGOje.js +664 -0
- package/dist/chunks/sidebar-Dq7oGOje.js.map +1 -0
- package/dist/chunks/{sidebar-menu-BN3jkTlK.js → sidebar-menu-QSSNu1jJ.js} +2 -2
- package/dist/chunks/{sidebar-menu-BN3jkTlK.js.map → sidebar-menu-QSSNu1jJ.js.map} +1 -1
- package/dist/chunks/{skeleton-Dcz57Zyp.js → skeleton-D-qk3mes.js} +3 -3
- package/dist/chunks/skeleton-D-qk3mes.js.map +1 -0
- package/dist/chunks/slider-CcE8GtuV.js +58 -0
- package/dist/chunks/slider-CcE8GtuV.js.map +1 -0
- package/dist/chunks/{status-dot-QJTF0Yv4.js → status-dot-CP6runiC.js} +4 -4
- package/dist/chunks/{status-dot-QJTF0Yv4.js.map → status-dot-CP6runiC.js.map} +1 -1
- package/dist/chunks/{styles-CVJU9t9v.js → styles-hkFkoBbi.js} +2 -2
- package/dist/chunks/{styles-CVJU9t9v.js.map → styles-hkFkoBbi.js.map} +1 -1
- package/dist/chunks/{swap-text-Dr0Irxz6.js → swap-text-SlUjrTlG.js} +3 -3
- package/dist/chunks/swap-text-SlUjrTlG.js.map +1 -0
- package/dist/chunks/switch-ngywMQdl.js +76 -0
- package/dist/chunks/switch-ngywMQdl.js.map +1 -0
- package/dist/chunks/table-CTK5E0J7.js +102 -0
- package/dist/chunks/table-CTK5E0J7.js.map +1 -0
- package/dist/chunks/tag-BGr6lTSV.js +100 -0
- package/dist/chunks/tag-BGr6lTSV.js.map +1 -0
- package/dist/chunks/{text-CIXH8rmT.js → text-DkKdTVUf.js} +9 -9
- package/dist/chunks/text-DkKdTVUf.js.map +1 -0
- package/dist/chunks/{textarea--4FRL3Pb.js → textarea-CO0HP6fK.js} +47 -36
- package/dist/chunks/textarea-CO0HP6fK.js.map +1 -0
- package/dist/chunks/timeseries-Ck-q0wWn.js +381 -0
- package/dist/chunks/timeseries-Ck-q0wWn.js.map +1 -0
- package/dist/chunks/toolbar-u0Gm7Q7-.js +61 -0
- package/dist/chunks/toolbar-u0Gm7Q7-.js.map +1 -0
- package/dist/chunks/tooltip-Tkm-urbi.js +202 -0
- package/dist/chunks/tooltip-Tkm-urbi.js.map +1 -0
- package/dist/chunks/tooltip-root-BC_RNNiP.js +70 -0
- package/dist/chunks/tooltip-root-BC_RNNiP.js.map +1 -0
- package/dist/chunks/truncated-d1afmUJT.js +33 -0
- package/dist/chunks/truncated-d1afmUJT.js.map +1 -0
- package/dist/chunks/use-coarse-pointer-Ml5oE6oX.js +28 -0
- package/dist/chunks/use-coarse-pointer-Ml5oE6oX.js.map +1 -0
- package/dist/chunks/use-hydrating-COtYVRo4.js +8 -0
- package/dist/chunks/use-hydrating-COtYVRo4.js.map +1 -0
- package/dist/chunks/use-scroll-fade-uc8mWSDX.js +30 -0
- package/dist/chunks/use-scroll-fade-uc8mWSDX.js.map +1 -0
- package/dist/chunks/{zh-CN-Bm6UPIbW.js → zh-CN-BlpsT6d_.js} +73 -39
- package/dist/chunks/zh-CN-BlpsT6d_.js.map +1 -0
- package/dist/components/agent-avatar.js +1 -1
- package/dist/components/app-frame.js +2 -2
- package/dist/components/avatar.js +1 -1
- package/dist/components/badge.js +1 -1
- package/dist/components/banner.js +1 -1
- package/dist/components/button-group.js +22 -22
- package/dist/components/button-group.js.map +1 -1
- package/dist/components/button.js +1 -1
- package/dist/components/calendar.js +1 -1
- package/dist/components/charts/bar.js +235 -160
- package/dist/components/charts/bar.js.map +1 -1
- package/dist/components/charts/donut.js +144 -99
- package/dist/components/charts/donut.js.map +1 -1
- package/dist/components/charts/gauge.js +61 -49
- package/dist/components/charts/gauge.js.map +1 -1
- package/dist/components/charts/heatmap.js +179 -70
- package/dist/components/charts/heatmap.js.map +1 -1
- package/dist/components/charts/sankey.js +144 -77
- package/dist/components/charts/sankey.js.map +1 -1
- package/dist/components/charts/sparkline.js +54 -38
- package/dist/components/charts/sparkline.js.map +1 -1
- package/dist/components/charts/timeseries.js +1 -1
- package/dist/components/charts.js +2 -2
- package/dist/components/checkbox.js +1 -1
- package/dist/components/code-block.js +3 -3
- package/dist/components/code.js +1 -1
- package/dist/components/collapsible.js +77 -1
- package/dist/components/collapsible.js.map +1 -0
- package/dist/components/combobox.js +1 -1
- package/dist/components/command-list.js +2 -2
- package/dist/components/command-palette.js +89 -66
- package/dist/components/command-palette.js.map +1 -1
- package/dist/components/copy-button.js +1 -1
- package/dist/components/data-table.js +1 -459
- package/dist/components/date-picker.js +162 -151
- package/dist/components/date-picker.js.map +1 -1
- package/dist/components/dialog.js +74 -63
- package/dist/components/dialog.js.map +1 -1
- package/dist/components/display-options.js +76 -64
- package/dist/components/display-options.js.map +1 -1
- package/dist/components/empty.js +1 -1
- package/dist/components/field.js +1 -1
- package/dist/components/figure.js +2 -2
- package/dist/components/filter-chip.js +36 -27
- package/dist/components/filter-chip.js.map +1 -1
- package/dist/components/filter-row.js +4 -4
- package/dist/components/filter-row.js.map +1 -1
- package/dist/components/flow.js +94 -63
- package/dist/components/flow.js.map +1 -1
- package/dist/components/heading.js +1 -1
- package/dist/components/icon-button.js +1 -1
- package/dist/components/icon.js +1 -1
- package/dist/components/input.js +176 -98
- package/dist/components/input.js.map +1 -1
- package/dist/components/kaeso/conversation.js +51 -46
- package/dist/components/kaeso/conversation.js.map +1 -1
- package/dist/components/kaeso/identity.js +1 -1
- package/dist/components/kaeso/moments.js +23 -20
- package/dist/components/kaeso/moments.js.map +1 -1
- package/dist/components/kaeso/rights.js +1 -1
- package/dist/components/kaeso/usage.js +90 -74
- package/dist/components/kaeso/usage.js.map +1 -1
- package/dist/components/kaeso.js +200 -187
- package/dist/components/kaeso.js.map +1 -1
- package/dist/components/kbd.js +1 -1
- package/dist/components/key-value.js +32 -47
- package/dist/components/key-value.js.map +1 -1
- package/dist/components/label.js +1 -25
- package/dist/components/layout.js +2 -2
- package/dist/components/layout.js.map +1 -1
- package/dist/components/link.js +1 -1
- package/dist/components/list.js +1 -1
- package/dist/components/loader.js +11 -10
- package/dist/components/loader.js.map +1 -1
- package/dist/components/logo.js +2 -2
- package/dist/components/markdown.js +1 -1
- package/dist/components/menu.js +2 -2
- package/dist/components/meter.js +1 -1
- package/dist/components/page-header.js +1 -1
- package/dist/components/pagination.js +1 -1
- package/dist/components/playground.js +644 -529
- package/dist/components/playground.js.map +1 -1
- package/dist/components/popover.js +4 -4
- package/dist/components/popover.js.map +1 -1
- package/dist/components/portal.js +1 -1
- package/dist/components/qr-code.js +2 -2
- package/dist/components/qr-code.js.map +1 -1
- package/dist/components/radio.js +1 -1
- package/dist/components/release-art.js +1 -1
- package/dist/components/scroll-area.js +1 -1
- package/dist/components/section.js +1 -1
- package/dist/components/segmented.js +1 -1
- package/dist/components/select.js +1 -1
- package/dist/components/separator.js +1 -1
- package/dist/components/settings.js +39 -46
- package/dist/components/settings.js.map +1 -1
- package/dist/components/sheet.js +10 -9
- package/dist/components/sheet.js.map +1 -1
- package/dist/components/sidebar.js +1 -1
- package/dist/components/skeleton.js +1 -1
- package/dist/components/slider.js +1 -1
- package/dist/components/stat.js +98 -84
- package/dist/components/stat.js.map +1 -1
- package/dist/components/status-dot.js +1 -1
- package/dist/components/surface.js +1 -1
- package/dist/components/swap-text.js +1 -1
- package/dist/components/switch.js +1 -1
- package/dist/components/table.js +1 -1
- package/dist/components/tabs.js +73 -55
- package/dist/components/tabs.js.map +1 -1
- package/dist/components/tag.js +1 -1
- package/dist/components/text.js +1 -1
- package/dist/components/theme-image.js +1 -1
- package/dist/components/theme-menu.js +5 -2
- package/dist/components/theme-menu.js.map +1 -1
- package/dist/components/theme-select.js +1 -1
- package/dist/components/thumbnail.js +35 -24
- package/dist/components/thumbnail.js.map +1 -1
- package/dist/components/timeline.js +51 -35
- package/dist/components/timeline.js.map +1 -1
- package/dist/components/toast.js +76 -66
- package/dist/components/toast.js.map +1 -1
- package/dist/components/toc.js +14 -8
- package/dist/components/toc.js.map +1 -1
- package/dist/components/toolbar.js +1 -1
- package/dist/components/tooltip.js +1 -1
- package/dist/components/visually-hidden.js +1 -1
- package/dist/i18n-provider.js +1 -1
- package/dist/index.js +100 -100
- package/dist/kaeso.css +605 -67
- package/dist/styles.css +1 -1
- package/dist/tailwind.css +1 -1
- package/dist/types/blocks/delete-resource/delete-resource.d.ts +2 -2
- package/dist/types/components/agent-avatar/agent-avatar.d.ts +24 -19
- package/dist/types/components/badge/badge.d.ts +3 -3
- package/dist/types/components/banner/banner.d.ts +3 -3
- package/dist/types/components/button/button.d.ts +2 -2
- package/dist/types/components/button-group/button-group.d.ts +1 -1
- package/dist/types/components/charts/domain.d.ts +11 -0
- package/dist/types/components/charts/marks.d.ts +1 -0
- package/dist/types/components/code/code.d.ts +3 -3
- package/dist/types/components/code-block/json-view.d.ts +2 -1
- package/dist/types/components/code-block/numbers.d.ts +1 -0
- package/dist/types/components/collapsible/collapsible.d.ts +2 -2
- package/dist/types/components/collapsible/disclosure.d.ts +2 -0
- package/dist/types/components/data-table/data-table.d.ts +6 -5
- package/dist/types/components/data-table/docs.d.ts +1 -0
- package/dist/types/components/data-table/time-columns.d.ts +1 -0
- package/dist/types/components/date-picker/focus-day.d.ts +1 -0
- package/dist/types/components/date-picker/iso-field.d.ts +8 -1
- package/dist/types/components/dialog/dialog.d.ts +7 -7
- package/dist/types/components/field/field.d.ts +1 -1
- package/dist/types/components/flow/flow.d.ts +1 -1
- package/dist/types/components/icon-button/icon-button.d.ts +1 -1
- package/dist/types/components/input/input-group.d.ts +2 -0
- package/dist/types/components/input/number-input.d.ts +4 -4
- package/dist/types/components/input/otp-input.d.ts +3 -3
- package/dist/types/components/kaeso/client-button.d.ts +2 -1
- package/dist/types/components/kaeso/provider-picker.d.ts +1 -0
- package/dist/types/components/kaeso/rights.d.ts +1 -1
- package/dist/types/components/kaeso/role-picker.d.ts +1 -0
- package/dist/types/components/key-value/key-value.d.ts +2 -2
- package/dist/types/components/layout/layout.d.ts +2 -2
- package/dist/types/components/link/link.d.ts +4 -4
- package/dist/types/components/list/list.d.ts +2 -2
- package/dist/types/components/menu/menu.d.ts +2 -1
- package/dist/types/components/menu/styles.d.ts +3 -3
- package/dist/types/components/meter/meter.d.ts +3 -3
- package/dist/types/components/page-header/page-header.d.ts +1 -1
- package/dist/types/components/pagination/pagination.d.ts +2 -2
- package/dist/types/components/playground/prompt-suggestions.d.ts +1 -0
- package/dist/types/components/playground/reasoning-frame.d.ts +14 -0
- package/dist/types/components/playground/reasoning.d.ts +1 -0
- package/dist/types/components/popover/popover.d.ts +1 -1
- package/dist/types/components/scroll-area/scroll-area.d.ts +2 -2
- package/dist/types/components/section/section-header.d.ts +6 -0
- package/dist/types/components/segmented/segmented.d.ts +1 -0
- package/dist/types/components/select/select.d.ts +1 -1
- package/dist/types/components/sheet/sheet.d.ts +3 -3
- package/dist/types/components/sidebar/sidebar.d.ts +1 -0
- package/dist/types/components/slider/slider.d.ts +2 -2
- package/dist/types/components/stat/stat.d.ts +1 -1
- package/dist/types/components/tabs/tabs.d.ts +6 -4
- package/dist/types/components/text/truncated.d.ts +7 -0
- package/dist/types/components/timeline/timeline.d.ts +5 -5
- package/dist/types/components/toc/toc.d.ts +1 -1
- package/dist/types/components/toolbar/toolbar.d.ts +1 -1
- package/dist/types/components/tooltip/tooltip.d.ts +2 -2
- package/dist/types/components/tooltip/trigger-props.d.ts +1 -0
- package/dist/types/hooks/use-coarse-pointer.d.ts +1 -0
- package/dist/types/hooks/use-hydrating.d.ts +1 -0
- package/dist/types/utils/arrow-focus.d.ts +4 -1
- package/dist/types/utils/cn.d.ts +33 -0
- package/dist/types/utils/portal-context.d.ts +7 -1
- package/dist/utils.js +2 -2
- package/foundations/accessibility.md +3 -2
- package/foundations/color.md +5 -1
- package/foundations/elevation.md +1 -0
- package/foundations/motion.md +1 -1
- package/foundations/shape.md +2 -2
- package/foundations/typography.md +12 -12
- package/package.json +2 -2
- package/dist/chunks/agent-avatar-0pdBTWkR.js +0 -171
- package/dist/chunks/agent-avatar-0pdBTWkR.js.map +0 -1
- package/dist/chunks/app-frame-DogGRmsu.js +0 -221
- package/dist/chunks/app-frame-DogGRmsu.js.map +0 -1
- package/dist/chunks/arrow-focus-BcySmwwU.js +0 -11
- package/dist/chunks/arrow-focus-BcySmwwU.js.map +0 -1
- package/dist/chunks/avatar-CWbdwbJv.js +0 -83
- package/dist/chunks/avatar-CWbdwbJv.js.map +0 -1
- package/dist/chunks/badge-C2KtxCLB.js +0 -26
- package/dist/chunks/badge-C2KtxCLB.js.map +0 -1
- package/dist/chunks/banner-BA2ALw9M.js +0 -85
- package/dist/chunks/banner-BA2ALw9M.js.map +0 -1
- package/dist/chunks/button-CzuxqawA.js +0 -164
- package/dist/chunks/button-CzuxqawA.js.map +0 -1
- package/dist/chunks/calendar-BWaf2MXc.js.map +0 -1
- package/dist/chunks/checkbox-CQjwCPkc.js +0 -126
- package/dist/chunks/checkbox-CQjwCPkc.js.map +0 -1
- package/dist/chunks/cn-Dj6sRgkF.js.map +0 -1
- package/dist/chunks/code-block-BZIe_B9l.js +0 -334
- package/dist/chunks/code-block-BZIe_B9l.js.map +0 -1
- package/dist/chunks/code-block-DdNPHEzI.js.map +0 -1
- package/dist/chunks/code-tqj0uhBL.js.map +0 -1
- package/dist/chunks/collapsible-CKrCX_T9.js +0 -87
- package/dist/chunks/collapsible-CKrCX_T9.js.map +0 -1
- package/dist/chunks/combobox-DjDI7SUC.js +0 -319
- package/dist/chunks/combobox-DjDI7SUC.js.map +0 -1
- package/dist/chunks/command-list-C2Y7V_lt.js +0 -418
- package/dist/chunks/command-list-C2Y7V_lt.js.map +0 -1
- package/dist/chunks/copy-button-FJvPJn72.js.map +0 -1
- package/dist/chunks/core-BYns5ytV.js +0 -472
- package/dist/chunks/core-BYns5ytV.js.map +0 -1
- package/dist/chunks/date-popup-CPA_zt6o.js +0 -35
- package/dist/chunks/date-popup-CPA_zt6o.js.map +0 -1
- package/dist/chunks/de-D_0mmG-k.js.map +0 -1
- package/dist/chunks/dialog-Cg9A_6SF.js.map +0 -1
- package/dist/chunks/field-TviMvYa2.js.map +0 -1
- package/dist/chunks/hidden-description-B2zSmLcn.js +0 -23
- package/dist/chunks/hidden-description-B2zSmLcn.js.map +0 -1
- package/dist/chunks/icon-button-CrdF_eMG.js.map +0 -1
- package/dist/chunks/input-2VJuj_M4.js.map +0 -1
- package/dist/chunks/input-group-DQ_4DoXg.js.map +0 -1
- package/dist/chunks/iso-field-B2rTwiBo.js +0 -33
- package/dist/chunks/iso-field-B2rTwiBo.js.map +0 -1
- package/dist/chunks/json-view-Dqd2TDkc.js +0 -175
- package/dist/chunks/json-view-Dqd2TDkc.js.map +0 -1
- package/dist/chunks/kbd-BF1vKXJf.js.map +0 -1
- package/dist/chunks/link-KWI7PevW.js.map +0 -1
- package/dist/chunks/list-M1csq-d4.js +0 -494
- package/dist/chunks/list-M1csq-d4.js.map +0 -1
- package/dist/chunks/markdown-BupwFOae.js +0 -313
- package/dist/chunks/markdown-BupwFOae.js.map +0 -1
- package/dist/chunks/menu-DEmBfdPm.js +0 -450
- package/dist/chunks/menu-DEmBfdPm.js.map +0 -1
- package/dist/chunks/meter-Bj4N3Xuh.js +0 -84
- package/dist/chunks/meter-Bj4N3Xuh.js.map +0 -1
- package/dist/chunks/nav-sheet-CzgIwgAm.js +0 -60
- package/dist/chunks/nav-sheet-CzgIwgAm.js.map +0 -1
- package/dist/chunks/nav-wordmark-_pjheAsZ.js.map +0 -1
- package/dist/chunks/page-header-DL2y2iZp.js +0 -41
- package/dist/chunks/page-header-DL2y2iZp.js.map +0 -1
- package/dist/chunks/pagination-Cn_qF4cg.js +0 -86
- package/dist/chunks/pagination-Cn_qF4cg.js.map +0 -1
- package/dist/chunks/picker-popover-BxyU1U9F.js +0 -106
- package/dist/chunks/picker-popover-BxyU1U9F.js.map +0 -1
- package/dist/chunks/popover-DNN4S47w.js +0 -50
- package/dist/chunks/popover-DNN4S47w.js.map +0 -1
- package/dist/chunks/portal-context-BBbzDKmY.js.map +0 -1
- package/dist/chunks/radio-CDDFpdtL.js.map +0 -1
- package/dist/chunks/range-popup-CRyWYUB1.js +0 -128
- package/dist/chunks/range-popup-CRyWYUB1.js.map +0 -1
- package/dist/chunks/release-art-ZwfFQImt.js +0 -561
- package/dist/chunks/release-art-ZwfFQImt.js.map +0 -1
- package/dist/chunks/rights-Cyp0Pzp-.js +0 -279
- package/dist/chunks/rights-Cyp0Pzp-.js.map +0 -1
- package/dist/chunks/scroll-area-D8MD7Vpo.js.map +0 -1
- package/dist/chunks/scroll-parent-WXvzQcUo.js +0 -14
- package/dist/chunks/scroll-parent-WXvzQcUo.js.map +0 -1
- package/dist/chunks/section-Ce1efbsP.js +0 -87
- package/dist/chunks/section-Ce1efbsP.js.map +0 -1
- package/dist/chunks/segmented-CErcoxwi.js +0 -114
- package/dist/chunks/segmented-CErcoxwi.js.map +0 -1
- package/dist/chunks/select-x4XVsdCI.js +0 -210
- package/dist/chunks/select-x4XVsdCI.js.map +0 -1
- package/dist/chunks/separator-D7TzNHmX.js.map +0 -1
- package/dist/chunks/sidebar-3r1ZRXlN.js +0 -621
- package/dist/chunks/sidebar-3r1ZRXlN.js.map +0 -1
- package/dist/chunks/skeleton-Dcz57Zyp.js.map +0 -1
- package/dist/chunks/slider-Ci83PGtj.js +0 -57
- package/dist/chunks/slider-Ci83PGtj.js.map +0 -1
- package/dist/chunks/swap-text-Dr0Irxz6.js.map +0 -1
- package/dist/chunks/switch-BNMq_kGt.js +0 -59
- package/dist/chunks/switch-BNMq_kGt.js.map +0 -1
- package/dist/chunks/table-BeOSKl_3.js +0 -84
- package/dist/chunks/table-BeOSKl_3.js.map +0 -1
- package/dist/chunks/tag-D_M1s2qS.js +0 -87
- package/dist/chunks/tag-D_M1s2qS.js.map +0 -1
- package/dist/chunks/text-CIXH8rmT.js.map +0 -1
- package/dist/chunks/textarea--4FRL3Pb.js.map +0 -1
- package/dist/chunks/timeseries-D1xjRXfk.js +0 -339
- package/dist/chunks/timeseries-D1xjRXfk.js.map +0 -1
- package/dist/chunks/toolbar-WA_oZgu-.js +0 -37
- package/dist/chunks/toolbar-WA_oZgu-.js.map +0 -1
- package/dist/chunks/tooltip-OcwO0VUT.js +0 -154
- package/dist/chunks/tooltip-OcwO0VUT.js.map +0 -1
- package/dist/chunks/tooltip-root-DzahJDVj.js +0 -60
- package/dist/chunks/tooltip-root-DzahJDVj.js.map +0 -1
- package/dist/chunks/zh-CN-Bm6UPIbW.js.map +0 -1
- package/dist/components/data-table.js.map +0 -1
- package/dist/components/label.js.map +0 -1
|
@@ -1,313 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import { l as e } from "./styles-CVJU9t9v.js";
|
|
3
|
-
import { t } from "./cn-Dj6sRgkF.js";
|
|
4
|
-
import { i as n } from "./context-BELWW79w.js";
|
|
5
|
-
import { r } from "./text-CIXH8rmT.js";
|
|
6
|
-
import { r as i } from "./link-KWI7PevW.js";
|
|
7
|
-
import { t as a } from "./code-tqj0uhBL.js";
|
|
8
|
-
import { r as o } from "./separator-D7TzNHmX.js";
|
|
9
|
-
import { n as s } from "./button-CzuxqawA.js";
|
|
10
|
-
import { t as c } from "./code-block-BZIe_B9l.js";
|
|
11
|
-
import { r as l } from "./table-BeOSKl_3.js";
|
|
12
|
-
import { t as u } from "./safe-href-G5DBNVwm.js";
|
|
13
|
-
import { forwardRef as d, memo as f, useMemo as p, useState as m } from "react";
|
|
14
|
-
import { Fragment as h, jsx as g, jsxs as _ } from "react/jsx-runtime";
|
|
15
|
-
import { Lexer as v, Tokenizer as y } from "marked";
|
|
16
|
-
//#region src/components/markdown/markdown.tsx
|
|
17
|
-
var b = /* @__PURE__ */ e({
|
|
18
|
-
KAESO_MARKDOWN_DEFAULT_VARIANTS: () => S,
|
|
19
|
-
KAESO_MARKDOWN_VARIANTS: () => x,
|
|
20
|
-
Markdown: () => I,
|
|
21
|
-
lexMarkdown: () => T,
|
|
22
|
-
markdownCodeLang: () => D,
|
|
23
|
-
previewMarkdown: () => E,
|
|
24
|
-
safeHref: () => u
|
|
25
|
-
}), x = {
|
|
26
|
-
size: {
|
|
27
|
-
lg: { classes: "gap-16" },
|
|
28
|
-
body: { classes: "gap-12" },
|
|
29
|
-
small: { classes: "gap-8" }
|
|
30
|
-
},
|
|
31
|
-
tone: {
|
|
32
|
-
default: { classes: "text-fg" },
|
|
33
|
-
secondary: { classes: "text-fg-secondary" }
|
|
34
|
-
}
|
|
35
|
-
}, S = {
|
|
36
|
-
size: "body",
|
|
37
|
-
tone: "default"
|
|
38
|
-
};
|
|
39
|
-
function C() {
|
|
40
|
-
let e = new y();
|
|
41
|
-
return e.html = () => void 0, e.tag = () => void 0, e.def = () => void 0, new v({
|
|
42
|
-
gfm: !0,
|
|
43
|
-
breaks: !0,
|
|
44
|
-
tokenizer: e
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
var w;
|
|
48
|
-
function T(e, t = {}) {
|
|
49
|
-
if (t.cache === !1) return C().lex(e);
|
|
50
|
-
w ??= /* @__PURE__ */ new Map();
|
|
51
|
-
let n = w.get(e);
|
|
52
|
-
if (n) return n;
|
|
53
|
-
let r = C().lex(e);
|
|
54
|
-
return w.size >= 64 && w.delete(w.keys().next().value ?? ""), w.set(e, r), r;
|
|
55
|
-
}
|
|
56
|
-
function E(e, t) {
|
|
57
|
-
if (e.length <= t) return e;
|
|
58
|
-
for (let n of ["\n\n", "\n"]) {
|
|
59
|
-
let r = e.lastIndexOf(n, t);
|
|
60
|
-
if (r > t / 2) return e.slice(0, r);
|
|
61
|
-
}
|
|
62
|
-
let n = e.lastIndexOf(" ", t);
|
|
63
|
-
return `${e.slice(0, n > t / 2 ? n : t).trimEnd()}…`;
|
|
64
|
-
}
|
|
65
|
-
function D(e) {
|
|
66
|
-
switch ((e ?? "").trim().split(/\s/)[0]?.toLowerCase() ?? "") {
|
|
67
|
-
case "ts":
|
|
68
|
-
case "typescript": return "ts";
|
|
69
|
-
case "tsx":
|
|
70
|
-
case "jsx": return "tsx";
|
|
71
|
-
case "js":
|
|
72
|
-
case "javascript":
|
|
73
|
-
case "mjs":
|
|
74
|
-
case "cjs": return "js";
|
|
75
|
-
case "json":
|
|
76
|
-
case "jsonc":
|
|
77
|
-
case "json5": return "json";
|
|
78
|
-
case "bash":
|
|
79
|
-
case "sh":
|
|
80
|
-
case "shell":
|
|
81
|
-
case "zsh":
|
|
82
|
-
case "console": return "bash";
|
|
83
|
-
case "python":
|
|
84
|
-
case "py": return "python";
|
|
85
|
-
case "yaml":
|
|
86
|
-
case "yml": return "yaml";
|
|
87
|
-
case "diff":
|
|
88
|
-
case "patch": return "diff";
|
|
89
|
-
default: return "text";
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
function O({ href: e, title: t, children: n }) {
|
|
93
|
-
return /* @__PURE__ */ g(i, {
|
|
94
|
-
href: e,
|
|
95
|
-
external: !0,
|
|
96
|
-
target: "_blank",
|
|
97
|
-
rel: "noopener noreferrer nofollow",
|
|
98
|
-
...t ? { title: t } : {},
|
|
99
|
-
className: "max-w-full wrap-anywhere",
|
|
100
|
-
children: n
|
|
101
|
-
});
|
|
102
|
-
}
|
|
103
|
-
function k(e) {
|
|
104
|
-
return (e ?? []).map((e, t) => {
|
|
105
|
-
switch (e.type) {
|
|
106
|
-
case "text": return "tokens" in e && e.tokens ? /* @__PURE__ */ g("span", { children: k(e.tokens) }, t) : e.text;
|
|
107
|
-
case "escape": return e.text;
|
|
108
|
-
case "strong": return /* @__PURE__ */ g("strong", {
|
|
109
|
-
className: "font-semibold",
|
|
110
|
-
children: k(e.tokens)
|
|
111
|
-
}, t);
|
|
112
|
-
case "em": return /* @__PURE__ */ g("em", { children: k(e.tokens) }, t);
|
|
113
|
-
case "del": return /* @__PURE__ */ g("del", { children: k(e.tokens) }, t);
|
|
114
|
-
case "codespan": return /* @__PURE__ */ g(a, {
|
|
115
|
-
shape: "rounded",
|
|
116
|
-
className: "wrap-anywhere",
|
|
117
|
-
children: e.text
|
|
118
|
-
}, t);
|
|
119
|
-
case "br": return /* @__PURE__ */ g("br", {}, t);
|
|
120
|
-
case "link": {
|
|
121
|
-
let n = e, r = u(n.href);
|
|
122
|
-
return r ? /* @__PURE__ */ g(O, {
|
|
123
|
-
href: r,
|
|
124
|
-
title: n.title,
|
|
125
|
-
children: k(n.tokens)
|
|
126
|
-
}, t) : /* @__PURE__ */ g("span", { children: k(n.tokens) }, t);
|
|
127
|
-
}
|
|
128
|
-
case "image": {
|
|
129
|
-
let n = e, r = u(n.href), i = n.text || n.href;
|
|
130
|
-
return r ? /* @__PURE__ */ g(O, {
|
|
131
|
-
href: r,
|
|
132
|
-
title: n.title,
|
|
133
|
-
children: i
|
|
134
|
-
}, t) : i;
|
|
135
|
-
}
|
|
136
|
-
case "checkbox": return null;
|
|
137
|
-
default: return e.raw;
|
|
138
|
-
}
|
|
139
|
-
});
|
|
140
|
-
}
|
|
141
|
-
function A({ list: e, ctx: t }) {
|
|
142
|
-
let n = e.ordered ? "ol" : "ul", i = typeof e.start == "number" ? e.start : 1, a = e.items.length - 1;
|
|
143
|
-
return /* @__PURE__ */ g(n, {
|
|
144
|
-
className: "flex flex-col gap-4",
|
|
145
|
-
children: e.items.map((n, o) => /* @__PURE__ */ _("li", {
|
|
146
|
-
className: "flex gap-8",
|
|
147
|
-
children: [n.task ? /* @__PURE__ */ g(r, {
|
|
148
|
-
as: "span",
|
|
149
|
-
variant: M[t.size],
|
|
150
|
-
weight: "regular",
|
|
151
|
-
tone: "tertiary",
|
|
152
|
-
mono: !0,
|
|
153
|
-
className: "shrink-0",
|
|
154
|
-
children: n.checked ? "[x]" : "[ ]"
|
|
155
|
-
}) : /* @__PURE__ */ g(r, {
|
|
156
|
-
as: "span",
|
|
157
|
-
"aria-hidden": !0,
|
|
158
|
-
variant: M[t.size],
|
|
159
|
-
weight: "regular",
|
|
160
|
-
tone: "tertiary",
|
|
161
|
-
tabular: !0,
|
|
162
|
-
className: e.ordered ? "min-w-16 shrink-0 text-right" : "w-8 shrink-0 text-center",
|
|
163
|
-
children: e.ordered ? `${i + o}.` : "•"
|
|
164
|
-
}), /* @__PURE__ */ g("div", {
|
|
165
|
-
className: "flex min-w-0 flex-1 flex-col gap-4",
|
|
166
|
-
children: F(n.tokens.filter((e) => e.type !== "checkbox"), o === a ? t : {
|
|
167
|
-
...t,
|
|
168
|
-
trailing: null
|
|
169
|
-
}, !n.loose)
|
|
170
|
-
})]
|
|
171
|
-
}, o))
|
|
172
|
-
});
|
|
173
|
-
}
|
|
174
|
-
var j = "max-w-prose wrap-break-word", M = {
|
|
175
|
-
lg: "body-lg",
|
|
176
|
-
body: "body",
|
|
177
|
-
small: "small"
|
|
178
|
-
};
|
|
179
|
-
function N(e, n, i) {
|
|
180
|
-
let a = n.trailing;
|
|
181
|
-
switch (e.type) {
|
|
182
|
-
case "space": return null;
|
|
183
|
-
case "heading": {
|
|
184
|
-
let t = e, i = t.depth <= 2, o = n.size === "lg" ? i ? "title-sm" : "body-lg" : n.size === "body" ? i ? "body-lg" : "body" : i ? "body" : "small", s = Math.min(6, t.depth + n.level - 1);
|
|
185
|
-
return /* @__PURE__ */ _(r, {
|
|
186
|
-
as: `h${s}`,
|
|
187
|
-
variant: o,
|
|
188
|
-
weight: "semibold",
|
|
189
|
-
tone: "inherit",
|
|
190
|
-
className: "mt-4 first:mt-0 wrap-break-word",
|
|
191
|
-
children: [k(t.tokens), a]
|
|
192
|
-
});
|
|
193
|
-
}
|
|
194
|
-
case "paragraph": return /* @__PURE__ */ _(r, {
|
|
195
|
-
as: "p",
|
|
196
|
-
variant: M[n.size],
|
|
197
|
-
weight: "regular",
|
|
198
|
-
tone: "inherit",
|
|
199
|
-
className: j,
|
|
200
|
-
children: [k(e.tokens), a]
|
|
201
|
-
});
|
|
202
|
-
case "text": {
|
|
203
|
-
let t = e;
|
|
204
|
-
return /* @__PURE__ */ _(r, {
|
|
205
|
-
as: i ? "div" : "p",
|
|
206
|
-
variant: M[n.size],
|
|
207
|
-
weight: "regular",
|
|
208
|
-
tone: "inherit",
|
|
209
|
-
className: j,
|
|
210
|
-
children: [t.tokens ? k(t.tokens) : t.text, a]
|
|
211
|
-
});
|
|
212
|
-
}
|
|
213
|
-
case "list": return /* @__PURE__ */ g(A, {
|
|
214
|
-
list: e,
|
|
215
|
-
ctx: n
|
|
216
|
-
});
|
|
217
|
-
case "code": return /* @__PURE__ */ g(h, { children: /* @__PURE__ */ g(c, {
|
|
218
|
-
code: e.text,
|
|
219
|
-
lang: D(e.lang),
|
|
220
|
-
wrap: n.wrap
|
|
221
|
-
}) });
|
|
222
|
-
case "blockquote": return /* @__PURE__ */ _("blockquote", {
|
|
223
|
-
className: "flex gap-12",
|
|
224
|
-
children: [/* @__PURE__ */ g(o, {
|
|
225
|
-
orientation: "vertical",
|
|
226
|
-
tone: "default"
|
|
227
|
-
}), /* @__PURE__ */ g("div", {
|
|
228
|
-
className: "flex min-w-0 flex-1 flex-col gap-8 text-fg-secondary",
|
|
229
|
-
children: F(e.tokens, n)
|
|
230
|
-
})]
|
|
231
|
-
});
|
|
232
|
-
case "hr": return /* @__PURE__ */ g(h, { children: /* @__PURE__ */ g(o, { className: "my-4" }) });
|
|
233
|
-
case "table": {
|
|
234
|
-
let t = e, r = (e) => e === "right" ? "end" : "start";
|
|
235
|
-
return /* @__PURE__ */ g(h, { children: /* @__PURE__ */ g("div", {
|
|
236
|
-
className: "max-w-full overflow-x-auto scrollbar-quiet",
|
|
237
|
-
children: /* @__PURE__ */ _(l, {
|
|
238
|
-
className: n.size === "small" ? "text-small" : void 0,
|
|
239
|
-
children: [/* @__PURE__ */ g(l.Head, { children: /* @__PURE__ */ g(l.Row, { children: t.header.map((e, t) => /* @__PURE__ */ g(l.HeaderCell, {
|
|
240
|
-
align: r(e.align),
|
|
241
|
-
children: k(e.tokens)
|
|
242
|
-
}, t)) }) }), /* @__PURE__ */ g(l.Body, { children: t.rows.map((e, t) => /* @__PURE__ */ g(l.Row, { children: e.map((e, t) => /* @__PURE__ */ g(l.Cell, {
|
|
243
|
-
align: r(e.align),
|
|
244
|
-
children: k(e.tokens)
|
|
245
|
-
}, t)) }, t)) })]
|
|
246
|
-
})
|
|
247
|
-
}) });
|
|
248
|
-
}
|
|
249
|
-
default: return /* @__PURE__ */ _(r, {
|
|
250
|
-
as: "p",
|
|
251
|
-
variant: M[n.size],
|
|
252
|
-
weight: "regular",
|
|
253
|
-
tone: "inherit",
|
|
254
|
-
className: t(j, "whitespace-pre-wrap"),
|
|
255
|
-
children: [e.raw, a]
|
|
256
|
-
});
|
|
257
|
-
}
|
|
258
|
-
}
|
|
259
|
-
var P = /* @__PURE__ */ f(function({ token: e, ctx: t, tight: n }) {
|
|
260
|
-
return /* @__PURE__ */ g(h, { children: N(e, t, n) });
|
|
261
|
-
}, (e, t) => e.token.raw === t.token.raw && e.tight === t.tight && e.ctx.size === t.ctx.size && e.ctx.wrap === t.ctx.wrap && e.ctx.level === t.ctx.level && e.ctx.trailing === t.ctx.trailing);
|
|
262
|
-
function F(e, t, n = !1) {
|
|
263
|
-
let r = e.length - 1;
|
|
264
|
-
for (; r > 0 && e[r]?.type === "space";) r--;
|
|
265
|
-
return e.map((e, i) => /* @__PURE__ */ g(P, {
|
|
266
|
-
token: e,
|
|
267
|
-
tight: n,
|
|
268
|
-
ctx: i === r || !t.trailing ? t : {
|
|
269
|
-
...t,
|
|
270
|
-
trailing: null
|
|
271
|
-
}
|
|
272
|
-
}, i));
|
|
273
|
-
}
|
|
274
|
-
var I = /* @__PURE__ */ d(function({ text: e, size: r = "body", tone: i = "default", headingLevel: a = 3, collapseAfter: o = 24e3, streaming: c = !1, wrapCode: l = !1, trailing: u, className: d }, f) {
|
|
275
|
-
let [h, v] = m(!1), y = n(), b = !c && o > 0 && e.length > o, S = b && !h ? E(e, Math.round(o * .66)) : e, C = p(() => {
|
|
276
|
-
let t = T(S, { cache: !c }), n = t.length;
|
|
277
|
-
if (S !== e) for (; n > 1 && [
|
|
278
|
-
"space",
|
|
279
|
-
"heading",
|
|
280
|
-
"hr"
|
|
281
|
-
].includes(t[n - 1]?.type ?? "");) n--;
|
|
282
|
-
return t.slice(0, n);
|
|
283
|
-
}, [
|
|
284
|
-
S,
|
|
285
|
-
e,
|
|
286
|
-
c
|
|
287
|
-
]), w = p(() => ({
|
|
288
|
-
size: r,
|
|
289
|
-
wrap: l,
|
|
290
|
-
level: a,
|
|
291
|
-
trailing: u ?? null
|
|
292
|
-
}), [
|
|
293
|
-
r,
|
|
294
|
-
l,
|
|
295
|
-
a,
|
|
296
|
-
u
|
|
297
|
-
]);
|
|
298
|
-
return /* @__PURE__ */ _("div", {
|
|
299
|
-
ref: f,
|
|
300
|
-
className: t("flex min-w-0 flex-col", x.size[r].classes, x.tone[i].classes, d),
|
|
301
|
-
children: [F(C, w), b && !h && /* @__PURE__ */ g("div", { children: /* @__PURE__ */ g(s, {
|
|
302
|
-
size: "sm",
|
|
303
|
-
variant: "secondary",
|
|
304
|
-
onClick: () => v(!0),
|
|
305
|
-
children: y("markdown.showAllCharacters", "Show all {count} characters", { count: e.length })
|
|
306
|
-
}) })]
|
|
307
|
-
});
|
|
308
|
-
});
|
|
309
|
-
process.env.NODE_ENV !== "production" && (I.displayName = "Markdown");
|
|
310
|
-
//#endregion
|
|
311
|
-
export { D as a, T as i, x as n, b as o, I as r, E as s, S as t };
|
|
312
|
-
|
|
313
|
-
//# sourceMappingURL=markdown-BupwFOae.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"markdown-BupwFOae.js","names":["_Fragment","__exportAll","useUiText","Link","Code","Separator","Button","CodeBlock","Table","safeHref","Fragment$1","markdown_exports","KAESO_MARKDOWN_DEFAULT_VARIANTS","KAESO_MARKDOWN_VARIANTS","Markdown","lexMarkdown","markdownCodeLang","previewMarkdown","lexer","tokenizer","Tokenizer","Lexer","cache","options","text","hit","tokens","limit","at","cut","space","lang","ExternalLink","title","inline","t","i","link","href","image","label","List","Tag","list","start","last","item","Text","TEXT","ctx","blocks","PROSE","block","tail","h","major","variant","level","x","tight","table","align","a","c","j","row","r","cn","Block","token","b","all","setAll","useState","long","streaming","collapseAfter","shown","useMemo","out","end","wrapCode","headingLevel","trailing","size","tone","className"],"sources":["../../src/components/markdown/markdown.tsx"],"sourcesContent":["import { forwardRef, memo, useMemo, useState, type ReactNode } from \"react\";\nimport { Lexer, Tokenizer, type Token, type Tokens } from \"marked\";\nimport { cn } from \"../../utils/cn.js\";\nimport { safeHref } from \"../../utils/safe-href.js\";\nimport { useUiText } from \"../../i18n/context.js\";\nimport { Button } from \"../button/button.js\";\nimport { Code } from \"../code/code.js\";\nimport { CodeBlock } from \"../code-block/code-block.js\";\nimport type { CodeLang } from \"../code-block/highlighter.js\";\nimport { Link } from \"../link/link.js\";\nimport { Separator } from \"../separator/separator.js\";\nimport { Table } from \"../table/table.js\";\nimport { Text } from \"../text/text.js\";\n\nexport { safeHref };\n\nexport const KAESO_MARKDOWN_VARIANTS = {\n size: {\n lg: { classes: \"gap-16\" },\n body: { classes: \"gap-12\" },\n small: { classes: \"gap-8\" },\n },\n tone: {\n default: { classes: \"text-fg\" },\n secondary: { classes: \"text-fg-secondary\" },\n },\n} as const;\nexport const KAESO_MARKDOWN_DEFAULT_VARIANTS = { size: \"body\", tone: \"default\" } as const;\n\nexport type MarkdownSize = keyof typeof KAESO_MARKDOWN_VARIANTS.size;\nexport type MarkdownTone = keyof typeof KAESO_MARKDOWN_VARIANTS.tone;\n\nexport interface MarkdownProps {\n text: string;\n size?: MarkdownSize | undefined;\n tone?: MarkdownTone | undefined;\n headingLevel?: 1 | 2 | 3 | 4 | 5 | 6 | undefined;\n collapseAfter?: number | undefined;\n streaming?: boolean | undefined;\n wrapCode?: boolean | undefined;\n trailing?: ReactNode | undefined;\n className?: string | undefined;\n}\n\ninterface Ctx {\n wrap: boolean;\n size: MarkdownSize;\n level: number;\n trailing: ReactNode;\n}\n\nfunction lexer() {\n const tokenizer = new Tokenizer();\n tokenizer.html = () => undefined;\n tokenizer.tag = () => undefined;\n tokenizer.def = () => undefined;\n return new Lexer({ gfm: true, breaks: true, tokenizer });\n}\n\nlet cache: Map<string, Token[]> | undefined;\n\nexport function lexMarkdown(text: string, options: { cache?: boolean | undefined } = {}): Token[] {\n if (options.cache === false) return lexer().lex(text);\n cache ??= new Map();\n const hit = cache.get(text);\n if (hit) return hit;\n const tokens = lexer().lex(text);\n if (cache.size >= 64) cache.delete(cache.keys().next().value ?? \"\");\n cache.set(text, tokens);\n return tokens;\n}\n\nexport function previewMarkdown(text: string, limit: number): string {\n if (text.length <= limit) return text;\n for (const at of [\"\\n\\n\", \"\\n\"]) {\n const cut = text.lastIndexOf(at, limit);\n if (cut > limit / 2) return text.slice(0, cut);\n }\n const space = text.lastIndexOf(\" \", limit);\n return `${text.slice(0, space > limit / 2 ? space : limit).trimEnd()}…`;\n}\n\nexport function markdownCodeLang(lang: string | undefined): CodeLang {\n const name = (lang ?? \"\").trim().split(/\\s/)[0]?.toLowerCase() ?? \"\";\n switch (name) {\n case \"ts\":\n case \"typescript\":\n return \"ts\";\n case \"tsx\":\n case \"jsx\":\n return \"tsx\";\n case \"js\":\n case \"javascript\":\n case \"mjs\":\n case \"cjs\":\n return \"js\";\n case \"json\":\n case \"jsonc\":\n case \"json5\":\n return \"json\";\n case \"bash\":\n case \"sh\":\n case \"shell\":\n case \"zsh\":\n case \"console\":\n return \"bash\";\n case \"python\":\n case \"py\":\n return \"python\";\n case \"yaml\":\n case \"yml\":\n return \"yaml\";\n case \"diff\":\n case \"patch\":\n return \"diff\";\n default:\n return \"text\";\n }\n}\n\nfunction ExternalLink({ href, title, children }: { href: string; title?: string | null | undefined; children: ReactNode }) {\n return (\n <Link href={href} external target=\"_blank\" rel=\"noopener noreferrer nofollow\" {...(title ? { title } : {})} className=\"max-w-full wrap-anywhere\">\n {children}\n </Link>\n );\n}\n\nfunction inline(tokens: Token[] | undefined): ReactNode[] {\n return (tokens ?? []).map((t, i) => {\n switch (t.type) {\n case \"text\":\n return \"tokens\" in t && t.tokens ? <span key={i}>{inline(t.tokens)}</span> : t.text;\n case \"escape\":\n return t.text;\n case \"strong\":\n return (\n <strong key={i} className=\"font-semibold\">\n {inline(t.tokens)}\n </strong>\n );\n case \"em\":\n return <em key={i}>{inline(t.tokens)}</em>;\n case \"del\":\n return <del key={i}>{inline(t.tokens)}</del>;\n case \"codespan\":\n return (\n <Code key={i} shape=\"rounded\" className=\"wrap-anywhere\">\n {t.text}\n </Code>\n );\n case \"br\":\n return <br key={i} />;\n case \"link\": {\n const link = t as Tokens.Link;\n const href = safeHref(link.href);\n return href ? (\n <ExternalLink key={i} href={href} title={link.title}>\n {inline(link.tokens)}\n </ExternalLink>\n ) : (\n <span key={i}>{inline(link.tokens)}</span>\n );\n }\n case \"image\": {\n const image = t as Tokens.Image;\n const href = safeHref(image.href);\n const label = image.text || image.href;\n return href ? (\n <ExternalLink key={i} href={href} title={image.title}>\n {label}\n </ExternalLink>\n ) : (\n label\n );\n }\n case \"checkbox\":\n return null;\n default:\n return t.raw;\n }\n });\n}\n\nfunction List({ list, ctx }: { list: Tokens.List; ctx: Ctx }) {\n const Tag = list.ordered ? \"ol\" : \"ul\";\n const start = typeof list.start === \"number\" ? list.start : 1;\n const last = list.items.length - 1;\n return (\n <Tag className=\"flex flex-col gap-4\">\n {list.items.map((item, i) => (\n <li key={i} className=\"flex gap-8\">\n {item.task ? (\n <Text as=\"span\" variant={TEXT[ctx.size]} weight=\"regular\" tone=\"tertiary\" mono className=\"shrink-0\">\n {item.checked ? \"[x]\" : \"[ ]\"}\n </Text>\n ) : (\n <Text\n as=\"span\"\n aria-hidden\n variant={TEXT[ctx.size]}\n weight=\"regular\"\n tone=\"tertiary\"\n tabular\n className={list.ordered ? \"min-w-16 shrink-0 text-right\" : \"w-8 shrink-0 text-center\"}\n >\n {list.ordered ? `${start + i}.` : \"•\"}\n </Text>\n )}\n <div className=\"flex min-w-0 flex-1 flex-col gap-4\">\n {blocks(\n item.tokens.filter((t) => t.type !== \"checkbox\"),\n i === last ? ctx : { ...ctx, trailing: null },\n !item.loose,\n )}\n </div>\n </li>\n ))}\n </Tag>\n );\n}\n\nconst PROSE = \"max-w-prose wrap-break-word\";\nconst TEXT = { lg: \"body-lg\", body: \"body\", small: \"small\" } as const;\n\nfunction block(t: Token, ctx: Ctx, tight: boolean): ReactNode {\n const tail = ctx.trailing;\n switch (t.type) {\n case \"space\":\n return null;\n case \"heading\": {\n const h = t as Tokens.Heading;\n const major = h.depth <= 2;\n const variant = ctx.size === \"lg\" ? (major ? \"title-sm\" : \"body-lg\") : ctx.size === \"body\" ? (major ? \"body-lg\" : \"body\") : major ? \"body\" : \"small\";\n const level = Math.min(6, h.depth + ctx.level - 1) as 1 | 2 | 3 | 4 | 5 | 6;\n return (\n <Text as={`h${level}`} variant={variant} weight=\"semibold\" tone=\"inherit\" className=\"mt-4 first:mt-0 wrap-break-word\">\n {inline(h.tokens)}\n {tail}\n </Text>\n );\n }\n case \"paragraph\":\n return (\n <Text as=\"p\" variant={TEXT[ctx.size]} weight=\"regular\" tone=\"inherit\" className={PROSE}>\n {inline((t as Tokens.Paragraph).tokens)}\n {tail}\n </Text>\n );\n case \"text\": {\n const x = t as Tokens.Text;\n return (\n <Text as={tight ? \"div\" : \"p\"} variant={TEXT[ctx.size]} weight=\"regular\" tone=\"inherit\" className={PROSE}>\n {x.tokens ? inline(x.tokens) : x.text}\n {tail}\n </Text>\n );\n }\n case \"list\":\n return <List list={t as Tokens.List} ctx={ctx} />;\n case \"code\":\n return (\n <>\n <CodeBlock code={(t as Tokens.Code).text} lang={markdownCodeLang((t as Tokens.Code).lang)} wrap={ctx.wrap} />\n </>\n );\n case \"blockquote\":\n return (\n <blockquote className=\"flex gap-12\">\n <Separator orientation=\"vertical\" tone=\"default\" />\n <div className=\"flex min-w-0 flex-1 flex-col gap-8 text-fg-secondary\">{blocks((t as Tokens.Blockquote).tokens, ctx)}</div>\n </blockquote>\n );\n case \"hr\":\n return (\n <>\n <Separator className=\"my-4\" />\n </>\n );\n case \"table\": {\n const table = t as Tokens.Table;\n const align = (a: Tokens.TableCell[\"align\"]) => (a === \"right\" ? \"end\" : \"start\");\n return (\n <>\n <div className=\"max-w-full overflow-x-auto scrollbar-quiet\">\n <Table className={ctx.size === \"small\" ? \"text-small\" : undefined}>\n <Table.Head>\n <Table.Row>\n {table.header.map((c, j) => (\n <Table.HeaderCell key={j} align={align(c.align)}>\n {inline(c.tokens)}\n </Table.HeaderCell>\n ))}\n </Table.Row>\n </Table.Head>\n <Table.Body>\n {table.rows.map((row, r) => (\n <Table.Row key={r}>\n {row.map((c, j) => (\n <Table.Cell key={j} align={align(c.align)}>\n {inline(c.tokens)}\n </Table.Cell>\n ))}\n </Table.Row>\n ))}\n </Table.Body>\n </Table>\n </div>\n </>\n );\n }\n default:\n return (\n <Text as=\"p\" variant={TEXT[ctx.size]} weight=\"regular\" tone=\"inherit\" className={cn(PROSE, \"whitespace-pre-wrap\")}>\n {t.raw}\n {tail}\n </Text>\n );\n }\n}\n\nconst Block = /* @__PURE__ */ memo(\n function Block({ token, ctx, tight }: { token: Token; ctx: Ctx; tight: boolean }) {\n return <>{block(token, ctx, tight)}</>;\n },\n (a, b) =>\n a.token.raw === b.token.raw &&\n a.tight === b.tight &&\n a.ctx.size === b.ctx.size &&\n a.ctx.wrap === b.ctx.wrap &&\n a.ctx.level === b.ctx.level &&\n a.ctx.trailing === b.ctx.trailing,\n);\n\nfunction blocks(tokens: Token[], ctx: Ctx, tight = false): ReactNode[] {\n let last = tokens.length - 1;\n while (last > 0 && tokens[last]?.type === \"space\") last--;\n return tokens.map((t, i) => <Block key={i} token={t} tight={tight} ctx={i === last || !ctx.trailing ? ctx : { ...ctx, trailing: null }} />);\n}\n\nexport const Markdown = /* @__PURE__ */ forwardRef<HTMLDivElement, MarkdownProps>(function Markdown(\n { text, size = \"body\", tone = \"default\", headingLevel = 3, collapseAfter = 24_000, streaming = false, wrapCode = false, trailing, className },\n ref,\n) {\n const [all, setAll] = useState(false);\n const t = useUiText();\n const long = !streaming && collapseAfter > 0 && text.length > collapseAfter;\n const shown = long && !all ? previewMarkdown(text, Math.round(collapseAfter * 0.66)) : text;\n const tokens = useMemo(() => {\n const out = lexMarkdown(shown, { cache: !streaming });\n let end = out.length;\n if (shown !== text) while (end > 1 && [\"space\", \"heading\", \"hr\"].includes(out[end - 1]?.type ?? \"\")) end--;\n return out.slice(0, end);\n }, [shown, text, streaming]);\n const ctx = useMemo<Ctx>(() => ({ size, wrap: wrapCode, level: headingLevel, trailing: trailing ?? null }), [size, wrapCode, headingLevel, trailing]);\n return (\n <div ref={ref} className={cn(\"flex min-w-0 flex-col\", KAESO_MARKDOWN_VARIANTS.size[size].classes, KAESO_MARKDOWN_VARIANTS.tone[tone].classes, className)}>\n {blocks(tokens, ctx)}\n {long && !all && (\n <div>\n <Button size=\"sm\" variant=\"secondary\" onClick={() => setAll(true)}>\n {t(\"markdown.showAllCharacters\", \"Show all {count} characters\", { count: text.length })}\n </Button>\n </div>\n )}\n </div>\n );\n});\nif (process.env.NODE_ENV !== \"production\") Markdown.displayName = \"Markdown\";\n"],"mappings":"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"}
|