@raystack/apsara 0.51.1 → 0.53.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/dist/components/accordion/__tests__/accordion.test.d.ts +2 -0
- package/dist/components/accordion/__tests__/accordion.test.d.ts.map +1 -0
- package/dist/components/accordion/accordion-content.cjs +14 -0
- package/dist/components/accordion/accordion-content.cjs.map +1 -0
- package/dist/components/accordion/accordion-content.d.ts +8 -0
- package/dist/components/accordion/accordion-content.d.ts.map +1 -0
- package/dist/components/accordion/accordion-content.js +12 -0
- package/dist/components/accordion/accordion-content.js.map +1 -0
- package/dist/components/accordion/accordion-item.cjs +14 -0
- package/dist/components/accordion/accordion-item.cjs.map +1 -0
- package/dist/components/accordion/accordion-item.d.ts +8 -0
- package/dist/components/accordion/accordion-item.d.ts.map +1 -0
- package/dist/components/accordion/accordion-item.js +12 -0
- package/dist/components/accordion/accordion-item.js.map +1 -0
- package/dist/components/accordion/accordion-root.cjs +26 -0
- package/dist/components/accordion/accordion-root.cjs.map +1 -0
- package/dist/components/accordion/accordion-root.d.ts +11 -0
- package/dist/components/accordion/accordion-root.d.ts.map +1 -0
- package/dist/components/accordion/accordion-root.js +24 -0
- package/dist/components/accordion/accordion-root.js.map +1 -0
- package/dist/components/accordion/accordion-trigger.cjs +15 -0
- package/dist/components/accordion/accordion-trigger.cjs.map +1 -0
- package/dist/components/accordion/accordion-trigger.d.ts +8 -0
- package/dist/components/accordion/accordion-trigger.d.ts.map +1 -0
- package/dist/components/accordion/accordion-trigger.js +13 -0
- package/dist/components/accordion/accordion-trigger.js.map +1 -0
- package/dist/components/accordion/accordion.cjs +15 -0
- package/dist/components/accordion/accordion.cjs.map +1 -0
- package/dist/components/accordion/accordion.d.ts +6 -0
- package/dist/components/accordion/accordion.d.ts.map +1 -0
- package/dist/components/accordion/accordion.js +13 -0
- package/dist/components/accordion/accordion.js.map +1 -0
- package/dist/components/accordion/accordion.module.css.cjs +8 -0
- package/dist/components/accordion/accordion.module.css.cjs.map +1 -0
- package/dist/components/accordion/accordion.module.css.js +4 -0
- package/dist/components/accordion/accordion.module.css.js.map +1 -0
- package/dist/components/accordion/index.d.ts +2 -0
- package/dist/components/accordion/index.d.ts.map +1 -0
- package/dist/components/amount/__tests__/amount.test.d.ts +2 -0
- package/dist/components/amount/__tests__/amount.test.d.ts.map +1 -0
- package/dist/components/announcement-bar/__tests__/announcement-bar.test.d.ts +2 -0
- package/dist/components/announcement-bar/__tests__/announcement-bar.test.d.ts.map +1 -0
- package/dist/components/avatar/__tests__/avatar.test.d.ts +2 -0
- package/dist/components/avatar/__tests__/avatar.test.d.ts.map +1 -0
- package/dist/components/badge/__tests__/badge.test.d.ts +2 -0
- package/dist/components/badge/__tests__/badge.test.d.ts.map +1 -0
- package/dist/components/box/__tests__/box.test.d.ts +2 -0
- package/dist/components/box/__tests__/box.test.d.ts.map +1 -0
- package/dist/components/breadcrumb/__tests__/breadcrumb.test.d.ts +2 -0
- package/dist/components/breadcrumb/__tests__/breadcrumb.test.d.ts.map +1 -0
- package/dist/components/breadcrumb/breadcrumb-item.cjs +1 -1
- package/dist/components/breadcrumb/breadcrumb-item.cjs.map +1 -1
- package/dist/components/breadcrumb/breadcrumb-item.js +1 -1
- package/dist/components/breadcrumb/breadcrumb-item.js.map +1 -1
- package/dist/components/breadcrumb/breadcrumb-misc.cjs +2 -2
- package/dist/components/breadcrumb/breadcrumb-misc.cjs.map +1 -1
- package/dist/components/breadcrumb/breadcrumb-misc.d.ts.map +1 -1
- package/dist/components/breadcrumb/breadcrumb-misc.js +3 -3
- package/dist/components/breadcrumb/breadcrumb-misc.js.map +1 -1
- package/dist/components/button/__tests__/button.test.d.ts +2 -0
- package/dist/components/button/__tests__/button.test.d.ts.map +1 -0
- package/dist/components/calendar/__tests__/calendar.test.d.ts +2 -0
- package/dist/components/calendar/__tests__/calendar.test.d.ts.map +1 -0
- package/dist/components/calendar/calendar.cjs +1 -1
- package/dist/components/calendar/calendar.cjs.map +1 -1
- package/dist/components/calendar/calendar.js +1 -1
- package/dist/components/calendar/calendar.js.map +1 -1
- package/dist/components/calendar/date-picker.cjs +7 -6
- package/dist/components/calendar/date-picker.cjs.map +1 -1
- package/dist/components/calendar/date-picker.d.ts +3 -2
- package/dist/components/calendar/date-picker.d.ts.map +1 -1
- package/dist/components/calendar/date-picker.js +7 -6
- package/dist/components/calendar/date-picker.js.map +1 -1
- package/dist/components/calendar/range-picker.cjs +4 -3
- package/dist/components/calendar/range-picker.cjs.map +1 -1
- package/dist/components/calendar/range-picker.d.ts +3 -2
- package/dist/components/calendar/range-picker.d.ts.map +1 -1
- package/dist/components/calendar/range-picker.js +4 -3
- package/dist/components/calendar/range-picker.js.map +1 -1
- package/dist/components/callout/__tests__/callout.test.d.ts +2 -0
- package/dist/components/callout/__tests__/callout.test.d.ts.map +1 -0
- package/dist/components/checkbox/__tests__/checkbox.test.d.ts +2 -0
- package/dist/components/checkbox/__tests__/checkbox.test.d.ts.map +1 -0
- package/dist/components/chip/__tests__/chip.test.d.ts +2 -0
- package/dist/components/chip/__tests__/chip.test.d.ts.map +1 -0
- package/dist/components/code-block/__tests__/code-block.test.d.ts +2 -0
- package/dist/components/code-block/__tests__/code-block.test.d.ts.map +1 -0
- package/dist/components/code-block/code-block-code.cjs +50 -0
- package/dist/components/code-block/code-block-code.cjs.map +1 -0
- package/dist/components/code-block/code-block-code.d.ts +10 -0
- package/dist/components/code-block/code-block-code.d.ts.map +1 -0
- package/dist/components/code-block/code-block-code.js +48 -0
- package/dist/components/code-block/code-block-code.js.map +1 -0
- package/dist/components/code-block/code-block-language-select.cjs +26 -0
- package/dist/components/code-block/code-block-language-select.cjs.map +1 -0
- package/dist/components/code-block/code-block-language-select.d.ts +7 -0
- package/dist/components/code-block/code-block-language-select.d.ts.map +1 -0
- package/dist/components/code-block/code-block-language-select.js +23 -0
- package/dist/components/code-block/code-block-language-select.js.map +1 -0
- package/dist/components/code-block/code-block-misc.cjs +49 -0
- package/dist/components/code-block/code-block-misc.cjs.map +1 -0
- package/dist/components/code-block/code-block-misc.d.ts +112 -0
- package/dist/components/code-block/code-block-misc.d.ts.map +1 -0
- package/dist/components/code-block/code-block-misc.js +43 -0
- package/dist/components/code-block/code-block-misc.js.map +1 -0
- package/dist/components/code-block/code-block-root.cjs +48 -0
- package/dist/components/code-block/code-block-root.cjs.map +1 -0
- package/dist/components/code-block/code-block-root.d.ts +24 -0
- package/dist/components/code-block/code-block-root.d.ts.map +1 -0
- package/dist/components/code-block/code-block-root.js +45 -0
- package/dist/components/code-block/code-block-root.js.map +1 -0
- package/dist/components/code-block/code-block.cjs +23 -0
- package/dist/components/code-block/code-block.cjs.map +1 -0
- package/dist/components/code-block/code-block.js +21 -0
- package/dist/components/code-block/code-block.js.map +1 -0
- package/dist/components/code-block/code-block.module.css.cjs +8 -0
- package/dist/components/code-block/code-block.module.css.cjs.map +1 -0
- package/dist/components/code-block/code-block.module.css.js +4 -0
- package/dist/components/code-block/code-block.module.css.js.map +1 -0
- package/dist/components/code-block/code.module.css.cjs +8 -0
- package/dist/components/code-block/code.module.css.cjs.map +1 -0
- package/dist/components/code-block/code.module.css.js +4 -0
- package/dist/components/code-block/code.module.css.js.map +1 -0
- package/dist/components/code-block/index.d.ts +2 -0
- package/dist/components/code-block/index.d.ts.map +1 -0
- package/dist/components/color-picker/__tests__/color-picker.test.d.ts +2 -0
- package/dist/components/color-picker/__tests__/color-picker.test.d.ts.map +1 -0
- package/dist/components/command/__tests__/command.test.d.ts +2 -0
- package/dist/components/command/__tests__/command.test.d.ts.map +1 -0
- package/dist/components/container/__tests__/container.test.d.ts +2 -0
- package/dist/components/container/__tests__/container.test.d.ts.map +1 -0
- package/dist/components/container/container.d.ts +1 -1
- package/dist/components/copy-button/__tests__/copy-button.test.d.ts +2 -0
- package/dist/components/copy-button/__tests__/copy-button.test.d.ts.map +1 -0
- package/dist/components/copy-button/copy-button.cjs +4 -3
- package/dist/components/copy-button/copy-button.cjs.map +1 -1
- package/dist/components/copy-button/copy-button.d.ts +2 -3
- package/dist/components/copy-button/copy-button.d.ts.map +1 -1
- package/dist/components/copy-button/copy-button.js +5 -4
- package/dist/components/copy-button/copy-button.js.map +1 -1
- package/dist/components/data-table/__tests__/data-table.test.d.ts +2 -0
- package/dist/components/data-table/__tests__/data-table.test.d.ts.map +1 -0
- package/dist/components/dialog/__tests__/dialog.test.d.ts +2 -0
- package/dist/components/dialog/__tests__/dialog.test.d.ts.map +1 -0
- package/dist/components/dropdown-menu/__tests__/dropdown-menu.test.d.ts +2 -0
- package/dist/components/dropdown-menu/__tests__/dropdown-menu.test.d.ts.map +1 -0
- package/dist/components/empty-state/__tests__/empty-state.test.d.ts +2 -0
- package/dist/components/empty-state/__tests__/empty-state.test.d.ts.map +1 -0
- package/dist/components/filter-chip/__tests__/filter-chip.test.d.ts +2 -0
- package/dist/components/filter-chip/__tests__/filter-chip.test.d.ts.map +1 -0
- package/dist/components/flex/__tests__/flex.test.d.ts +2 -0
- package/dist/components/flex/__tests__/flex.test.d.ts.map +1 -0
- package/dist/components/flex/flex.d.ts +3 -3
- package/dist/components/grid/__tests__/grid.test.d.ts +2 -0
- package/dist/components/grid/__tests__/grid.test.d.ts.map +1 -0
- package/dist/components/headline/__tests__/headline.test.d.ts +2 -0
- package/dist/components/headline/__tests__/headline.test.d.ts.map +1 -0
- package/dist/components/headline/headline.d.ts +1 -1
- package/dist/components/icon-button/__tests__/icon-button.test.d.ts +2 -0
- package/dist/components/icon-button/__tests__/icon-button.test.d.ts.map +1 -0
- package/dist/components/image/__tests__/image.test.d.ts +2 -0
- package/dist/components/image/__tests__/image.test.d.ts.map +1 -0
- package/dist/components/image/image.d.ts +1 -1
- package/dist/components/indicator/__tests__/indicator.test.d.ts +2 -0
- package/dist/components/indicator/__tests__/indicator.test.d.ts.map +1 -0
- package/dist/components/input-field/__tests__/input-field.test.d.ts +2 -0
- package/dist/components/input-field/__tests__/input-field.test.d.ts.map +1 -0
- package/dist/components/label/__tests__/label.test.d.ts +2 -0
- package/dist/components/label/__tests__/label.test.d.ts.map +1 -0
- package/dist/components/link/__tests__/link.test.d.ts +2 -0
- package/dist/components/link/__tests__/link.test.d.ts.map +1 -0
- package/dist/components/list/__tests__/list.test.d.ts +2 -0
- package/dist/components/list/__tests__/list.test.d.ts.map +1 -0
- package/dist/components/popover/__tests__/popover.test.d.ts +2 -0
- package/dist/components/popover/__tests__/popover.test.d.ts.map +1 -0
- package/dist/components/popover/popover.cjs.map +1 -1
- package/dist/components/popover/popover.d.ts +1 -2
- package/dist/components/popover/popover.d.ts.map +1 -1
- package/dist/components/popover/popover.js.map +1 -1
- package/dist/components/radio/__tests__/radio.test.d.ts +2 -0
- package/dist/components/radio/__tests__/radio.test.d.ts.map +1 -0
- package/dist/components/search/__tests__/search.test.d.ts +2 -0
- package/dist/components/search/__tests__/search.test.d.ts.map +1 -0
- package/dist/components/select/__tests__/select.test.d.ts +2 -0
- package/dist/components/select/__tests__/select.test.d.ts.map +1 -0
- package/dist/components/select/select-root.cjs.map +1 -1
- package/dist/components/select/select-root.d.ts +2 -2
- package/dist/components/select/select-root.d.ts.map +1 -1
- package/dist/components/select/select-root.js.map +1 -1
- package/dist/components/separator/__tests__/separator.test.d.ts +2 -0
- package/dist/components/separator/__tests__/separator.test.d.ts.map +1 -0
- package/dist/components/sheet/__tests__/sheet.test.d.ts +2 -0
- package/dist/components/sheet/__tests__/sheet.test.d.ts.map +1 -0
- package/dist/components/sheet/sheet.cjs.map +1 -1
- package/dist/components/sheet/sheet.d.ts +1 -1
- package/dist/components/sheet/sheet.d.ts.map +1 -1
- package/dist/components/sheet/sheet.js.map +1 -1
- package/dist/components/side-panel/__tests__/side-panel.test.d.ts +2 -0
- package/dist/components/side-panel/__tests__/side-panel.test.d.ts.map +1 -0
- package/dist/components/sidebar/__tests__/sidebar.test.d.ts +2 -0
- package/dist/components/sidebar/__tests__/sidebar.test.d.ts.map +1 -0
- package/dist/components/sidebar/sidebar-item.cjs +37 -0
- package/dist/components/sidebar/sidebar-item.cjs.map +1 -0
- package/dist/components/sidebar/sidebar-item.d.ts +14 -0
- package/dist/components/sidebar/sidebar-item.d.ts.map +1 -0
- package/dist/components/sidebar/sidebar-item.js +35 -0
- package/dist/components/sidebar/sidebar-item.js.map +1 -0
- package/dist/components/sidebar/sidebar-main.cjs +13 -0
- package/dist/components/sidebar/sidebar-main.cjs.map +1 -0
- package/dist/components/sidebar/sidebar-main.d.ts +2 -0
- package/dist/components/sidebar/sidebar-main.d.ts.map +1 -0
- package/dist/components/sidebar/sidebar-main.js +11 -0
- package/dist/components/sidebar/sidebar-main.js.map +1 -0
- package/dist/components/sidebar/sidebar-misc.cjs +20 -0
- package/dist/components/sidebar/sidebar-misc.cjs.map +1 -0
- package/dist/components/sidebar/sidebar-misc.d.ts +9 -0
- package/dist/components/sidebar/sidebar-misc.d.ts.map +1 -0
- package/dist/components/sidebar/sidebar-misc.js +16 -0
- package/dist/components/sidebar/sidebar-misc.js.map +1 -0
- package/dist/components/sidebar/sidebar-root.cjs +34 -0
- package/dist/components/sidebar/sidebar-root.cjs.map +1 -0
- package/dist/components/sidebar/sidebar-root.d.ts +15 -0
- package/dist/components/sidebar/sidebar-root.d.ts.map +1 -0
- package/dist/components/sidebar/sidebar-root.js +31 -0
- package/dist/components/sidebar/sidebar-root.js.map +1 -0
- package/dist/components/sidebar/sidebar.cjs +10 -64
- package/dist/components/sidebar/sidebar.cjs.map +1 -1
- package/dist/components/sidebar/sidebar.d.ts +4 -29
- package/dist/components/sidebar/sidebar.d.ts.map +1 -1
- package/dist/components/sidebar/sidebar.js +4 -58
- package/dist/components/sidebar/sidebar.js.map +1 -1
- package/dist/components/skeleton/__tests__/skeleton.test.d.ts +2 -0
- package/dist/components/skeleton/__tests__/skeleton.test.d.ts.map +1 -0
- package/dist/components/slider/__tests__/slider.test.d.ts +2 -0
- package/dist/components/slider/__tests__/slider.test.d.ts.map +1 -0
- package/dist/components/slider/slider.cjs +4 -21
- package/dist/components/slider/slider.cjs.map +1 -1
- package/dist/components/slider/slider.d.ts +3 -3
- package/dist/components/slider/slider.d.ts.map +1 -1
- package/dist/components/slider/slider.js +6 -4
- package/dist/components/slider/slider.js.map +1 -1
- package/dist/components/slider/slider.module.css.cjs +1 -1
- package/dist/components/slider/slider.module.css.js +1 -1
- package/dist/components/switch/__tests__/switch.test.d.ts +2 -0
- package/dist/components/switch/__tests__/switch.test.d.ts.map +1 -0
- package/dist/components/switch/switch.cjs +1 -1
- package/dist/components/switch/switch.cjs.map +1 -1
- package/dist/components/switch/switch.d.ts.map +1 -1
- package/dist/components/switch/switch.js +2 -2
- package/dist/components/switch/switch.js.map +1 -1
- package/dist/components/table/__tests__/table.test.d.ts +2 -0
- package/dist/components/table/__tests__/table.test.d.ts.map +1 -0
- package/dist/components/tabs/__tests__/tabs.test.d.ts +2 -0
- package/dist/components/tabs/__tests__/tabs.test.d.ts.map +1 -0
- package/dist/components/tabs/tabs.cjs.map +1 -1
- package/dist/components/tabs/tabs.d.ts +1 -1
- package/dist/components/tabs/tabs.d.ts.map +1 -1
- package/dist/components/tabs/tabs.js.map +1 -1
- package/dist/components/text/__tests__/text.test.d.ts +2 -0
- package/dist/components/text/__tests__/text.test.d.ts.map +1 -0
- package/dist/components/text/text.cjs +7 -5
- package/dist/components/text/text.cjs.map +1 -1
- package/dist/components/text/text.d.ts +2 -2
- package/dist/components/text/text.d.ts.map +1 -1
- package/dist/components/text/text.js +5 -3
- package/dist/components/text/text.js.map +1 -1
- package/dist/components/text-area/__tests__/text-area.test.d.ts +2 -0
- package/dist/components/text-area/__tests__/text-area.test.d.ts.map +1 -0
- package/dist/components/text-area/text-area.cjs +1 -1
- package/dist/components/text-area/text-area.cjs.map +1 -1
- package/dist/components/text-area/text-area.d.ts.map +1 -1
- package/dist/components/text-area/text-area.js +1 -1
- package/dist/components/text-area/text-area.js.map +1 -1
- package/dist/components/theme-provider/__tests__/theme-provider.test.d.ts +2 -0
- package/dist/components/theme-provider/__tests__/theme-provider.test.d.ts.map +1 -0
- package/dist/components/toast/__tests__/toast.test.d.ts +2 -0
- package/dist/components/toast/__tests__/toast.test.d.ts.map +1 -0
- package/dist/components/tooltip/__tests__/tooltip.test.d.ts +2 -0
- package/dist/components/tooltip/__tests__/tooltip.test.d.ts.map +1 -0
- package/dist/components/tooltip/tooltip-root.d.ts +1 -1
- package/dist/figma/button.figma.d.ts +2 -0
- package/dist/figma/button.figma.d.ts.map +1 -0
- package/dist/hooks/index.cjs +2 -0
- package/dist/hooks/index.cjs.map +1 -1
- package/dist/hooks/index.d.ts +1 -0
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +1 -0
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/useIsomorphicLayoutEffect.cjs +8 -0
- package/dist/hooks/useIsomorphicLayoutEffect.cjs.map +1 -0
- package/dist/hooks/useIsomorphicLayoutEffect.d.ts +3 -0
- package/dist/hooks/useIsomorphicLayoutEffect.d.ts.map +1 -0
- package/dist/hooks/useIsomorphicLayoutEffect.js +6 -0
- package/dist/hooks/useIsomorphicLayoutEffect.js.map +1 -0
- package/dist/index.cjs +4 -0
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/node_modules/.pnpm/@radix-ui_react-accordion@1.2.11_@types_react-dom@19.1.7_@types_react@19.1.9__@types_react@19_mt5ahf6cxnui73dcsmqbdvyj2i/node_modules/@radix-ui/react-accordion/dist/index.cjs +319 -0
- package/dist/node_modules/.pnpm/@radix-ui_react-accordion@1.2.11_@types_react-dom@19.1.7_@types_react@19.1.9__@types_react@19_mt5ahf6cxnui73dcsmqbdvyj2i/node_modules/@radix-ui/react-accordion/dist/index.cjs.map +1 -0
- package/dist/node_modules/.pnpm/@radix-ui_react-accordion@1.2.11_@types_react-dom@19.1.7_@types_react@19.1.9__@types_react@19_mt5ahf6cxnui73dcsmqbdvyj2i/node_modules/@radix-ui/react-accordion/dist/index.js +307 -0
- package/dist/node_modules/.pnpm/@radix-ui_react-accordion@1.2.11_@types_react-dom@19.1.7_@types_react@19.1.9__@types_react@19_mt5ahf6cxnui73dcsmqbdvyj2i/node_modules/@radix-ui/react-accordion/dist/index.js.map +1 -0
- package/dist/node_modules/.pnpm/@radix-ui_react-collapsible@1.1.11_@types_react-dom@19.1.7_@types_react@19.1.9__@types_react@_a35yqe6vcc2vmteafw4xyimtca/node_modules/@radix-ui/react-collapsible/dist/index.cjs +4 -0
- package/dist/node_modules/.pnpm/@radix-ui_react-collapsible@1.1.11_@types_react-dom@19.1.7_@types_react@19.1.9__@types_react@_a35yqe6vcc2vmteafw4xyimtca/node_modules/@radix-ui/react-collapsible/dist/index.cjs.map +1 -1
- package/dist/node_modules/.pnpm/@radix-ui_react-collapsible@1.1.11_@types_react-dom@19.1.7_@types_react@19.1.9__@types_react@_a35yqe6vcc2vmteafw4xyimtca/node_modules/@radix-ui/react-collapsible/dist/index.js +3 -1
- package/dist/node_modules/.pnpm/@radix-ui_react-collapsible@1.1.11_@types_react-dom@19.1.7_@types_react@19.1.9__@types_react@_a35yqe6vcc2vmteafw4xyimtca/node_modules/@radix-ui/react-collapsible/dist/index.js.map +1 -1
- package/dist/node_modules/.pnpm/prism-react-renderer@2.4.1_react@19.1.1/node_modules/prism-react-renderer/dist/index.cjs +3138 -0
- package/dist/node_modules/.pnpm/prism-react-renderer@2.4.1_react@19.1.1/node_modules/prism-react-renderer/dist/index.cjs.map +1 -0
- package/dist/node_modules/.pnpm/prism-react-renderer@2.4.1_react@19.1.1/node_modules/prism-react-renderer/dist/index.js +3132 -0
- package/dist/node_modules/.pnpm/prism-react-renderer@2.4.1_react@19.1.1/node_modules/prism-react-renderer/dist/index.js.map +1 -0
- package/dist/style.css +1 -1
- package/package.json +8 -2
- package/dist/test-utils.d.ts +0 -6
- package/dist/test-utils.d.ts.map +0 -1
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
3
|
+
import { cx } from '../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.js';
|
|
4
|
+
import { Highlight as Highlight2 } from '../../node_modules/.pnpm/prism-react-renderer@2.4.1_react@19.1.1/node_modules/prism-react-renderer/dist/index.js';
|
|
5
|
+
import { forwardRef, memo } from 'react';
|
|
6
|
+
import { useIsomorphicLayoutEffect } from '../../hooks/useIsomorphicLayoutEffect.js';
|
|
7
|
+
import { useCodeBlockContext } from './code-block-root.js';
|
|
8
|
+
import styles from './code-block.module.css.js';
|
|
9
|
+
import code from './code.module.css.js';
|
|
10
|
+
|
|
11
|
+
const emptyTheme = { plain: {}, styles: [] };
|
|
12
|
+
const CodeBlockCode = forwardRef(({ children, language, className, value, ...props }, ref) => {
|
|
13
|
+
const { value: contextValue, setCode, setValue } = useCodeBlockContext();
|
|
14
|
+
const computedValue = value ?? language;
|
|
15
|
+
const isContextValueDefined = !!contextValue;
|
|
16
|
+
const shouldRender = !isContextValueDefined || contextValue === computedValue;
|
|
17
|
+
const content = children.trim();
|
|
18
|
+
useIsomorphicLayoutEffect(() => {
|
|
19
|
+
// if value is not defined, set the value
|
|
20
|
+
if (!isContextValueDefined)
|
|
21
|
+
setValue(language);
|
|
22
|
+
// if should render, store the code
|
|
23
|
+
if (shouldRender)
|
|
24
|
+
setCode(content);
|
|
25
|
+
}, [
|
|
26
|
+
content,
|
|
27
|
+
setCode,
|
|
28
|
+
shouldRender,
|
|
29
|
+
setValue,
|
|
30
|
+
language,
|
|
31
|
+
isContextValueDefined
|
|
32
|
+
]);
|
|
33
|
+
if (!shouldRender)
|
|
34
|
+
return null;
|
|
35
|
+
return (jsx("div", { ref: ref, className: cx(styles.codeContent, className), ...props, children: jsx(CodeHighlight, { content: content, language: language }) }));
|
|
36
|
+
});
|
|
37
|
+
CodeBlockCode.displayName = 'CodeBlockCode';
|
|
38
|
+
const CodeHighlight = memo(({ content, language }) => {
|
|
39
|
+
const { hideLineNumbers, maxLines, collapsed } = useCodeBlockContext();
|
|
40
|
+
const canCollapse = maxLines && maxLines > 0;
|
|
41
|
+
return (jsx(Highlight2, { theme: emptyTheme, code: content, language: language, children: ({ className: highlightClassName, style, tokens, getLineProps, getTokenProps }) => {
|
|
42
|
+
const renderedTokens = canCollapse && collapsed ? tokens.slice(0, maxLines) : tokens;
|
|
43
|
+
return (jsx("pre", { className: cx(code.theme, styles.pre, highlightClassName), style: style, children: renderedTokens.map((line, i) => (jsxs("div", { ...getLineProps({ line }), children: [!hideLineNumbers && (jsx("span", { className: styles.lineNumber, children: i + 1 })), jsx("span", { className: styles.lineContent, children: line.map((token, key) => (jsx("span", { ...getTokenProps({ token }) }, key))) })] }, i))) }));
|
|
44
|
+
} }));
|
|
45
|
+
});
|
|
46
|
+
|
|
47
|
+
export { CodeBlockCode };
|
|
48
|
+
//# sourceMappingURL=code-block-code.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-block-code.js","sources":["../../../components/code-block/code-block-code.tsx"],"sourcesContent":["'use client';\n\nimport { cx } from 'class-variance-authority';\nimport { Highlight } from 'prism-react-renderer';\nimport { Language } from 'prism-react-renderer';\nimport { HTMLAttributes, forwardRef, memo } from 'react';\nimport { useIsomorphicLayoutEffect } from '~/hooks';\nimport { useCodeBlockContext } from './code-block-root';\nimport styles from './code-block.module.css';\nimport code from './code.module.css';\n\nexport interface CodeBlockCodeProps extends HTMLAttributes<HTMLDivElement> {\n children: string;\n language: Language;\n value?: string;\n className?: string;\n}\n\nconst emptyTheme = { plain: {}, styles: [] };\n\nexport const CodeBlockCode = forwardRef<HTMLDivElement, CodeBlockCodeProps>(\n ({ children, language, className, value, ...props }, ref) => {\n const { value: contextValue, setCode, setValue } = useCodeBlockContext();\n const computedValue = value ?? language;\n const isContextValueDefined = !!contextValue;\n const shouldRender =\n !isContextValueDefined || contextValue === computedValue;\n const content = children.trim();\n\n useIsomorphicLayoutEffect(() => {\n // if value is not defined, set the value\n if (!isContextValueDefined) setValue(language);\n // if should render, store the code\n if (shouldRender) setCode(content);\n }, [\n content,\n setCode,\n shouldRender,\n setValue,\n language,\n isContextValueDefined\n ]);\n\n if (!shouldRender) return null;\n\n return (\n <div ref={ref} className={cx(styles.codeContent, className)} {...props}>\n <CodeHighlight content={content} language={language} />\n </div>\n );\n }\n);\n\nCodeBlockCode.displayName = 'CodeBlockCode';\n\nconst CodeHighlight = memo(\n ({ content, language }: { content: string; language: Language }) => {\n const { hideLineNumbers, maxLines, collapsed } = useCodeBlockContext();\n const canCollapse = maxLines && maxLines > 0;\n return (\n <Highlight theme={emptyTheme} code={content} language={language}>\n {({\n className: highlightClassName,\n style,\n tokens,\n getLineProps,\n getTokenProps\n }) => {\n const renderedTokens =\n canCollapse && collapsed ? tokens.slice(0, maxLines) : tokens;\n return (\n <pre\n className={cx(code.theme, styles.pre, highlightClassName)}\n style={style}\n >\n {renderedTokens.map((line, i) => (\n <div key={i} {...getLineProps({ line })}>\n {!hideLineNumbers && (\n <span className={styles.lineNumber}>{i + 1}</span>\n )}\n <span className={styles.lineContent}>\n {line.map((token, key) => (\n <span key={key} {...getTokenProps({ token })} />\n ))}\n </span>\n </div>\n ))}\n </pre>\n );\n }}\n </Highlight>\n );\n }\n);\n"],"names":[],"mappings":";;;;;;;;;;AAkBA;;AAII;AACA;AACA;;AAGA;;;AAIE;;;AAEA;;AACF;;;;;;;AAOC;AAED;AAAmB;AAEnB;AAKF;AAGF;AAEA;;AAGI;AACA;;;;AAiCF;;"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
5
|
+
var index = require('../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.cjs');
|
|
6
|
+
var React = require('react');
|
|
7
|
+
var select = require('../select/select.cjs');
|
|
8
|
+
var codeBlockRoot = require('./code-block-root.cjs');
|
|
9
|
+
var codeBlock_module = require('./code-block.module.css.cjs');
|
|
10
|
+
|
|
11
|
+
const CodeBlockLanguageSelect = (props) => {
|
|
12
|
+
const { value, setValue } = codeBlockRoot.useCodeBlockContext();
|
|
13
|
+
const handleValueChange = (value) => {
|
|
14
|
+
setValue(value);
|
|
15
|
+
};
|
|
16
|
+
return jsxRuntime.jsx(select.Select, { onValueChange: handleValueChange, value: value, ...props });
|
|
17
|
+
};
|
|
18
|
+
CodeBlockLanguageSelect.displayName = 'CodeBlockLanguageSelect';
|
|
19
|
+
const CodeBlockLanguageSelectTrigger = React.forwardRef(({ className, ...props }, ref) => {
|
|
20
|
+
return (jsxRuntime.jsx(select.Select.Trigger, { ref: ref, className: index.cx(codeBlock_module.default.languageSelectTrigger, className), size: 'small', variant: 'text', ...props, children: jsxRuntime.jsx(select.Select.Value, {}) }));
|
|
21
|
+
});
|
|
22
|
+
CodeBlockLanguageSelectTrigger.displayName = 'CodeBlockLanguageSelectTrigger';
|
|
23
|
+
|
|
24
|
+
exports.CodeBlockLanguageSelect = CodeBlockLanguageSelect;
|
|
25
|
+
exports.CodeBlockLanguageSelectTrigger = CodeBlockLanguageSelectTrigger;
|
|
26
|
+
//# sourceMappingURL=code-block-language-select.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-block-language-select.cjs","sources":["../../../components/code-block/code-block-language-select.tsx"],"sourcesContent":["'use client';\n\nimport { cx } from 'class-variance-authority';\nimport { Language } from 'prism-react-renderer';\nimport { ComponentProps, ElementRef, forwardRef } from 'react';\nimport { Select } from '../select';\nimport { SingleSelectProps } from '../select/select-root';\nimport { useCodeBlockContext } from './code-block-root';\nimport styles from './code-block.module.css';\n\nexport const CodeBlockLanguageSelect = (props: SingleSelectProps) => {\n const { value, setValue } = useCodeBlockContext();\n\n const handleValueChange = (value: string) => {\n setValue(value as Language);\n };\n return <Select onValueChange={handleValueChange} value={value} {...props} />;\n};\n\nCodeBlockLanguageSelect.displayName = 'CodeBlockLanguageSelect';\n\nexport const CodeBlockLanguageSelectTrigger = forwardRef<\n ElementRef<typeof Select.Trigger>,\n ComponentProps<typeof Select.Trigger>\n>(({ className, ...props }, ref) => {\n return (\n <Select.Trigger\n ref={ref}\n className={cx(styles.languageSelectTrigger, className)}\n size='small'\n variant='text'\n {...props}\n >\n <Select.Value />\n </Select.Trigger>\n );\n});\n\nCodeBlockLanguageSelectTrigger.displayName = 'CodeBlockLanguageSelectTrigger';\n"],"names":[],"mappings":";;;;;;;;;;AAUa;;AAGX;;AAEA;AACA;AACF;AAEA;AAEa;AAIX;AAWF;AAEA;;;"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { SingleSelectProps } from '../select/select-root';
|
|
2
|
+
export declare const CodeBlockLanguageSelect: {
|
|
3
|
+
(props: SingleSelectProps): import("react/jsx-runtime").JSX.Element;
|
|
4
|
+
displayName: string;
|
|
5
|
+
};
|
|
6
|
+
export declare const CodeBlockLanguageSelectTrigger: import("react").ForwardRefExoticComponent<Omit<import("../select/select-trigger").SelectTriggerProps & import("react").RefAttributes<HTMLButtonElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
|
|
7
|
+
//# sourceMappingURL=code-block-language-select.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-block-language-select.d.ts","sourceRoot":"","sources":["../../../components/code-block/code-block-language-select.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAI1D,eAAO,MAAM,uBAAuB;YAAW,iBAAiB;;CAO/D,CAAC;AAIF,eAAO,MAAM,8BAA8B,qNAezC,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx } from 'react/jsx-runtime';
|
|
3
|
+
import { cx } from '../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.js';
|
|
4
|
+
import { forwardRef } from 'react';
|
|
5
|
+
import { Select } from '../select/select.js';
|
|
6
|
+
import { useCodeBlockContext } from './code-block-root.js';
|
|
7
|
+
import styles from './code-block.module.css.js';
|
|
8
|
+
|
|
9
|
+
const CodeBlockLanguageSelect = (props) => {
|
|
10
|
+
const { value, setValue } = useCodeBlockContext();
|
|
11
|
+
const handleValueChange = (value) => {
|
|
12
|
+
setValue(value);
|
|
13
|
+
};
|
|
14
|
+
return jsx(Select, { onValueChange: handleValueChange, value: value, ...props });
|
|
15
|
+
};
|
|
16
|
+
CodeBlockLanguageSelect.displayName = 'CodeBlockLanguageSelect';
|
|
17
|
+
const CodeBlockLanguageSelectTrigger = forwardRef(({ className, ...props }, ref) => {
|
|
18
|
+
return (jsx(Select.Trigger, { ref: ref, className: cx(styles.languageSelectTrigger, className), size: 'small', variant: 'text', ...props, children: jsx(Select.Value, {}) }));
|
|
19
|
+
});
|
|
20
|
+
CodeBlockLanguageSelectTrigger.displayName = 'CodeBlockLanguageSelectTrigger';
|
|
21
|
+
|
|
22
|
+
export { CodeBlockLanguageSelect, CodeBlockLanguageSelectTrigger };
|
|
23
|
+
//# sourceMappingURL=code-block-language-select.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-block-language-select.js","sources":["../../../components/code-block/code-block-language-select.tsx"],"sourcesContent":["'use client';\n\nimport { cx } from 'class-variance-authority';\nimport { Language } from 'prism-react-renderer';\nimport { ComponentProps, ElementRef, forwardRef } from 'react';\nimport { Select } from '../select';\nimport { SingleSelectProps } from '../select/select-root';\nimport { useCodeBlockContext } from './code-block-root';\nimport styles from './code-block.module.css';\n\nexport const CodeBlockLanguageSelect = (props: SingleSelectProps) => {\n const { value, setValue } = useCodeBlockContext();\n\n const handleValueChange = (value: string) => {\n setValue(value as Language);\n };\n return <Select onValueChange={handleValueChange} value={value} {...props} />;\n};\n\nCodeBlockLanguageSelect.displayName = 'CodeBlockLanguageSelect';\n\nexport const CodeBlockLanguageSelectTrigger = forwardRef<\n ElementRef<typeof Select.Trigger>,\n ComponentProps<typeof Select.Trigger>\n>(({ className, ...props }, ref) => {\n return (\n <Select.Trigger\n ref={ref}\n className={cx(styles.languageSelectTrigger, className)}\n size='small'\n variant='text'\n {...props}\n >\n <Select.Value />\n </Select.Trigger>\n );\n});\n\nCodeBlockLanguageSelectTrigger.displayName = 'CodeBlockLanguageSelectTrigger';\n"],"names":[],"mappings":";;;;;;;;AAUa;;AAGX;;AAEA;AACA;AACF;AAEA;AAEa;AAIX;AAWF;AAEA;;"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
5
|
+
var index = require('../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.cjs');
|
|
6
|
+
var React = require('react');
|
|
7
|
+
var button = require('../button/button.cjs');
|
|
8
|
+
var copyButton = require('../copy-button/copy-button.cjs');
|
|
9
|
+
var flex = require('../flex/flex.cjs');
|
|
10
|
+
var text = require('../text/text.cjs');
|
|
11
|
+
var codeBlockRoot = require('./code-block-root.cjs');
|
|
12
|
+
var codeBlock_module = require('./code-block.module.css.cjs');
|
|
13
|
+
|
|
14
|
+
const CodeBlockContent = React.forwardRef(({ children, className, ...props }, ref) => {
|
|
15
|
+
return (jsxRuntime.jsx("div", { ref: ref, className: index.cx(codeBlock_module.default.content, className), ...props, children: children }));
|
|
16
|
+
});
|
|
17
|
+
CodeBlockContent.displayName = 'CodeBlockContent';
|
|
18
|
+
const CodeBlockHeader = React.forwardRef(({ children, className, ...props }, ref) => {
|
|
19
|
+
return (jsxRuntime.jsx(flex.Flex, { ref: ref, align: 'center', gap: 4, className: index.cx(codeBlock_module.default.header, className), ...props, children: children }));
|
|
20
|
+
});
|
|
21
|
+
CodeBlockHeader.displayName = 'CodeBlockHeader';
|
|
22
|
+
const CodeBlockLabel = React.forwardRef(({ children, className, ...props }, ref) => {
|
|
23
|
+
return (jsxRuntime.jsx(text.Text, { ref: ref, className: index.cx(codeBlock_module.default.label, className), ...props, children: children }));
|
|
24
|
+
});
|
|
25
|
+
CodeBlockLabel.displayName = 'CodeBlockLabel';
|
|
26
|
+
const CodeBlockCollapseTrigger = React.forwardRef(({ className, children = 'Show Code', onClick, ...props }, ref) => {
|
|
27
|
+
const { maxLines, collapsed, toggleCollapsed, code } = codeBlockRoot.useCodeBlockContext();
|
|
28
|
+
const canCollapse = maxLines && maxLines > 0;
|
|
29
|
+
const lineCount = code?.split('\n').length ?? 0;
|
|
30
|
+
if (!canCollapse || !collapsed || lineCount < maxLines)
|
|
31
|
+
return null;
|
|
32
|
+
return (jsxRuntime.jsx(button.Button, { ref: ref, onClick: e => {
|
|
33
|
+
toggleCollapsed();
|
|
34
|
+
onClick?.(e);
|
|
35
|
+
}, variant: 'text', color: 'neutral', className: index.cx(codeBlock_module.default.collapseTrigger, className), ...props, children: children }));
|
|
36
|
+
});
|
|
37
|
+
CodeBlockCollapseTrigger.displayName = 'CodeBlockCollapseTrigger';
|
|
38
|
+
const CodeBlockCopyButton = React.forwardRef(({ className, variant = 'default', ...props }, ref) => {
|
|
39
|
+
const { code = '' } = codeBlockRoot.useCodeBlockContext();
|
|
40
|
+
return (jsxRuntime.jsx(copyButton.CopyButton, { ref: ref, text: code, size: variant === 'floating' ? 2 : 3, className: index.cx(codeBlock_module.default.copyButton, variant === 'floating' && codeBlock_module.default.floatingCopyButton, className), ...props }));
|
|
41
|
+
});
|
|
42
|
+
CodeBlockCopyButton.displayName = 'CodeBlockCopyButton';
|
|
43
|
+
|
|
44
|
+
exports.CodeBlockCollapseTrigger = CodeBlockCollapseTrigger;
|
|
45
|
+
exports.CodeBlockContent = CodeBlockContent;
|
|
46
|
+
exports.CodeBlockCopyButton = CodeBlockCopyButton;
|
|
47
|
+
exports.CodeBlockHeader = CodeBlockHeader;
|
|
48
|
+
exports.CodeBlockLabel = CodeBlockLabel;
|
|
49
|
+
//# sourceMappingURL=code-block-misc.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-block-misc.cjs","sources":["../../../components/code-block/code-block-misc.tsx"],"sourcesContent":["'use client';\n\nimport { cx } from 'class-variance-authority';\nimport { ComponentProps, ElementRef, HTMLAttributes, forwardRef } from 'react';\nimport { Button } from '../button';\nimport { CopyButton } from '../copy-button';\nimport { Flex } from '../flex';\nimport { Text } from '../text';\nimport { useCodeBlockContext } from './code-block-root';\nimport styles from './code-block.module.css';\n\nexport const CodeBlockContent = forwardRef<\n HTMLDivElement,\n HTMLAttributes<HTMLDivElement>\n>(({ children, className, ...props }, ref) => {\n return (\n <div ref={ref} className={cx(styles.content, className)} {...props}>\n {children}\n </div>\n );\n});\n\nCodeBlockContent.displayName = 'CodeBlockContent';\n\nexport const CodeBlockHeader = forwardRef<\n ElementRef<typeof Flex>,\n ComponentProps<typeof Flex>\n>(({ children, className, ...props }, ref) => {\n return (\n <Flex\n ref={ref}\n align='center'\n gap={4}\n className={cx(styles.header, className)}\n {...props}\n >\n {children}\n </Flex>\n );\n});\n\nCodeBlockHeader.displayName = 'CodeBlockHeader';\n\nexport const CodeBlockLabel = forwardRef<\n ElementRef<typeof Text>,\n ComponentProps<typeof Text>\n>(({ children, className, ...props }, ref) => {\n return (\n <Text ref={ref} className={cx(styles.label, className)} {...props}>\n {children}\n </Text>\n );\n});\n\nCodeBlockLabel.displayName = 'CodeBlockLabel';\n\nexport const CodeBlockCollapseTrigger = forwardRef<\n HTMLButtonElement,\n ComponentProps<typeof Button>\n>(({ className, children = 'Show Code', onClick, ...props }, ref) => {\n const { maxLines, collapsed, toggleCollapsed, code } = useCodeBlockContext();\n const canCollapse = maxLines && maxLines > 0;\n const lineCount = code?.split('\\n').length ?? 0;\n\n if (!canCollapse || !collapsed || lineCount < maxLines) return null;\n\n return (\n <Button\n ref={ref}\n onClick={e => {\n toggleCollapsed();\n onClick?.(e);\n }}\n variant='text'\n color='neutral'\n className={cx(styles.collapseTrigger, className)}\n {...props}\n >\n {children}\n </Button>\n );\n});\n\nCodeBlockCollapseTrigger.displayName = 'CodeBlockCollapseTrigger';\n\nexport interface CodeBlockCopyButtonProps\n extends Omit<ComponentProps<typeof CopyButton>, 'text'> {\n variant?: 'floating' | 'default';\n}\n\nexport const CodeBlockCopyButton = forwardRef<\n ElementRef<typeof CopyButton>,\n CodeBlockCopyButtonProps\n>(({ className, variant = 'default', ...props }, ref) => {\n const { code = '' } = useCodeBlockContext();\n\n return (\n <CopyButton\n ref={ref}\n text={code}\n size={variant === 'floating' ? 2 : 3}\n className={cx(\n styles.copyButton,\n variant === 'floating' && styles.floatingCopyButton,\n className\n )}\n {...props}\n />\n );\n});\n\nCodeBlockCopyButton.displayName = 'CodeBlockCopyButton';\n"],"names":[],"mappings":";;;;;;;;;;;;;AAWa;;AASb;AAEA;AAEa;AAIX;AAWF;AAEA;AAEa;;AASb;AAEA;;AAME;AACA;AACA;;AAEwD;AAExD;AAIM;AACA;;AAUR;AAEA;;;;AA0BA;AAEA;;;;;;"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import { ComponentProps, HTMLAttributes } from 'react';
|
|
2
|
+
import { CopyButton } from '../copy-button';
|
|
3
|
+
export declare const CodeBlockContent: import("react").ForwardRefExoticComponent<HTMLAttributes<HTMLDivElement> & import("react").RefAttributes<HTMLDivElement>>;
|
|
4
|
+
export declare const CodeBlockHeader: import("react").ForwardRefExoticComponent<Omit<import("class-variance-authority").VariantProps<(props?: ({
|
|
5
|
+
direction?: "row" | "column" | "rowReverse" | "columnReverse" | null | undefined;
|
|
6
|
+
align?: "center" | "start" | "end" | "stretch" | "baseline" | null | undefined;
|
|
7
|
+
justify?: "center" | "start" | "end" | "between" | null | undefined;
|
|
8
|
+
wrap?: "wrap" | "noWrap" | "wrapReverse" | null | undefined;
|
|
9
|
+
gap?: 1 | "small" | 2 | "extra-small" | "medium" | "large" | "extra-large" | 3 | 4 | 5 | 6 | 7 | 8 | 9 | null | undefined;
|
|
10
|
+
width?: "full" | null | undefined;
|
|
11
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string> & {
|
|
12
|
+
children?: import("react").ReactNode;
|
|
13
|
+
} & HTMLAttributes<HTMLDivElement> & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
14
|
+
export declare const CodeBlockLabel: import("react").ForwardRefExoticComponent<(Omit<import("class-variance-authority").VariantProps<(props?: ({
|
|
15
|
+
variant?: "primary" | "secondary" | "tertiary" | "emphasis" | "accent" | "attention" | "danger" | "success" | null | undefined;
|
|
16
|
+
size?: 1 | "small" | 2 | 10 | "large" | 3 | 4 | 5 | 6 | 7 | 8 | 9 | "micro" | "mini" | "regular" | null | undefined;
|
|
17
|
+
weight?: "bold" | "medium" | "regular" | "bolder" | "normal" | "lighter" | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | null | undefined;
|
|
18
|
+
transform?: "capitalize" | "uppercase" | "lowercase" | null | undefined;
|
|
19
|
+
align?: "center" | "start" | "end" | "justify" | null | undefined;
|
|
20
|
+
lineClamp?: 1 | 2 | 3 | 4 | 5 | null | undefined;
|
|
21
|
+
underline?: boolean | null | undefined;
|
|
22
|
+
strikeThrough?: boolean | null | undefined;
|
|
23
|
+
italic?: boolean | null | undefined;
|
|
24
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string> & {
|
|
25
|
+
size?: 1 | "small" | 2 | 10 | "large" | 3 | 4 | 5 | 6 | 7 | 8 | 9 | "micro" | "mini" | "regular" | undefined;
|
|
26
|
+
weight?: "bold" | "medium" | "regular" | "bolder" | "normal" | "lighter" | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | undefined;
|
|
27
|
+
} & {
|
|
28
|
+
as?: "span" | undefined;
|
|
29
|
+
} & Omit<import("react").DetailedHTMLProps<HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & import("react").RefAttributes<HTMLDivElement | HTMLSpanElement | HTMLAnchorElement | HTMLLabelElement | HTMLParagraphElement>, "ref"> | Omit<import("class-variance-authority").VariantProps<(props?: ({
|
|
30
|
+
variant?: "primary" | "secondary" | "tertiary" | "emphasis" | "accent" | "attention" | "danger" | "success" | null | undefined;
|
|
31
|
+
size?: 1 | "small" | 2 | 10 | "large" | 3 | 4 | 5 | 6 | 7 | 8 | 9 | "micro" | "mini" | "regular" | null | undefined;
|
|
32
|
+
weight?: "bold" | "medium" | "regular" | "bolder" | "normal" | "lighter" | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | null | undefined;
|
|
33
|
+
transform?: "capitalize" | "uppercase" | "lowercase" | null | undefined;
|
|
34
|
+
align?: "center" | "start" | "end" | "justify" | null | undefined;
|
|
35
|
+
lineClamp?: 1 | 2 | 3 | 4 | 5 | null | undefined;
|
|
36
|
+
underline?: boolean | null | undefined;
|
|
37
|
+
strikeThrough?: boolean | null | undefined;
|
|
38
|
+
italic?: boolean | null | undefined;
|
|
39
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string> & {
|
|
40
|
+
size?: 1 | "small" | 2 | 10 | "large" | 3 | 4 | 5 | 6 | 7 | 8 | 9 | "micro" | "mini" | "regular" | undefined;
|
|
41
|
+
weight?: "bold" | "medium" | "regular" | "bolder" | "normal" | "lighter" | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | undefined;
|
|
42
|
+
} & {
|
|
43
|
+
as: "div";
|
|
44
|
+
} & Omit<import("react").DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement | HTMLSpanElement | HTMLAnchorElement | HTMLLabelElement | HTMLParagraphElement>, "ref"> | Omit<import("class-variance-authority").VariantProps<(props?: ({
|
|
45
|
+
variant?: "primary" | "secondary" | "tertiary" | "emphasis" | "accent" | "attention" | "danger" | "success" | null | undefined;
|
|
46
|
+
size?: 1 | "small" | 2 | 10 | "large" | 3 | 4 | 5 | 6 | 7 | 8 | 9 | "micro" | "mini" | "regular" | null | undefined;
|
|
47
|
+
weight?: "bold" | "medium" | "regular" | "bolder" | "normal" | "lighter" | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | null | undefined;
|
|
48
|
+
transform?: "capitalize" | "uppercase" | "lowercase" | null | undefined;
|
|
49
|
+
align?: "center" | "start" | "end" | "justify" | null | undefined;
|
|
50
|
+
lineClamp?: 1 | 2 | 3 | 4 | 5 | null | undefined;
|
|
51
|
+
underline?: boolean | null | undefined;
|
|
52
|
+
strikeThrough?: boolean | null | undefined;
|
|
53
|
+
italic?: boolean | null | undefined;
|
|
54
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string> & {
|
|
55
|
+
size?: 1 | "small" | 2 | 10 | "large" | 3 | 4 | 5 | 6 | 7 | 8 | 9 | "micro" | "mini" | "regular" | undefined;
|
|
56
|
+
weight?: "bold" | "medium" | "regular" | "bolder" | "normal" | "lighter" | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | undefined;
|
|
57
|
+
} & {
|
|
58
|
+
as: "label";
|
|
59
|
+
} & Omit<import("react").DetailedHTMLProps<import("react").LabelHTMLAttributes<HTMLLabelElement>, HTMLLabelElement>, "ref"> & import("react").RefAttributes<HTMLDivElement | HTMLSpanElement | HTMLAnchorElement | HTMLLabelElement | HTMLParagraphElement>, "ref"> | Omit<import("class-variance-authority").VariantProps<(props?: ({
|
|
60
|
+
variant?: "primary" | "secondary" | "tertiary" | "emphasis" | "accent" | "attention" | "danger" | "success" | null | undefined;
|
|
61
|
+
size?: 1 | "small" | 2 | 10 | "large" | 3 | 4 | 5 | 6 | 7 | 8 | 9 | "micro" | "mini" | "regular" | null | undefined;
|
|
62
|
+
weight?: "bold" | "medium" | "regular" | "bolder" | "normal" | "lighter" | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | null | undefined;
|
|
63
|
+
transform?: "capitalize" | "uppercase" | "lowercase" | null | undefined;
|
|
64
|
+
align?: "center" | "start" | "end" | "justify" | null | undefined;
|
|
65
|
+
lineClamp?: 1 | 2 | 3 | 4 | 5 | null | undefined;
|
|
66
|
+
underline?: boolean | null | undefined;
|
|
67
|
+
strikeThrough?: boolean | null | undefined;
|
|
68
|
+
italic?: boolean | null | undefined;
|
|
69
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string> & {
|
|
70
|
+
size?: 1 | "small" | 2 | 10 | "large" | 3 | 4 | 5 | 6 | 7 | 8 | 9 | "micro" | "mini" | "regular" | undefined;
|
|
71
|
+
weight?: "bold" | "medium" | "regular" | "bolder" | "normal" | "lighter" | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | undefined;
|
|
72
|
+
} & {
|
|
73
|
+
as: "p";
|
|
74
|
+
} & Omit<import("react").DetailedHTMLProps<HTMLAttributes<HTMLParagraphElement>, HTMLParagraphElement>, "ref"> & import("react").RefAttributes<HTMLDivElement | HTMLSpanElement | HTMLAnchorElement | HTMLLabelElement | HTMLParagraphElement>, "ref"> | Omit<import("class-variance-authority").VariantProps<(props?: ({
|
|
75
|
+
variant?: "primary" | "secondary" | "tertiary" | "emphasis" | "accent" | "attention" | "danger" | "success" | null | undefined;
|
|
76
|
+
size?: 1 | "small" | 2 | 10 | "large" | 3 | 4 | 5 | 6 | 7 | 8 | 9 | "micro" | "mini" | "regular" | null | undefined;
|
|
77
|
+
weight?: "bold" | "medium" | "regular" | "bolder" | "normal" | "lighter" | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | null | undefined;
|
|
78
|
+
transform?: "capitalize" | "uppercase" | "lowercase" | null | undefined;
|
|
79
|
+
align?: "center" | "start" | "end" | "justify" | null | undefined;
|
|
80
|
+
lineClamp?: 1 | 2 | 3 | 4 | 5 | null | undefined;
|
|
81
|
+
underline?: boolean | null | undefined;
|
|
82
|
+
strikeThrough?: boolean | null | undefined;
|
|
83
|
+
italic?: boolean | null | undefined;
|
|
84
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string> & {
|
|
85
|
+
size?: 1 | "small" | 2 | 10 | "large" | 3 | 4 | 5 | 6 | 7 | 8 | 9 | "micro" | "mini" | "regular" | undefined;
|
|
86
|
+
weight?: "bold" | "medium" | "regular" | "bolder" | "normal" | "lighter" | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | undefined;
|
|
87
|
+
} & {
|
|
88
|
+
as: "a";
|
|
89
|
+
} & Omit<import("react").DetailedHTMLProps<import("react").AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, "ref"> & import("react").RefAttributes<HTMLDivElement | HTMLSpanElement | HTMLAnchorElement | HTMLLabelElement | HTMLParagraphElement>, "ref">) & import("react").RefAttributes<HTMLDivElement | HTMLSpanElement | HTMLAnchorElement | HTMLLabelElement | HTMLParagraphElement>>;
|
|
90
|
+
export declare const CodeBlockCollapseTrigger: import("react").ForwardRefExoticComponent<Omit<import("class-variance-authority").VariantProps<(props?: ({
|
|
91
|
+
variant?: "text" | "solid" | "outline" | "ghost" | null | undefined;
|
|
92
|
+
size?: "small" | "normal" | null | undefined;
|
|
93
|
+
disabled?: boolean | null | undefined;
|
|
94
|
+
loading?: boolean | null | undefined;
|
|
95
|
+
color?: "accent" | "danger" | "success" | "neutral" | null | undefined;
|
|
96
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string> & {
|
|
97
|
+
children?: import("react").ReactNode;
|
|
98
|
+
} & import("react").ButtonHTMLAttributes<HTMLButtonElement> & {
|
|
99
|
+
asChild?: boolean | undefined;
|
|
100
|
+
loading?: boolean | undefined;
|
|
101
|
+
loaderText?: import("react").ReactNode;
|
|
102
|
+
leadingIcon?: import("react").ReactNode;
|
|
103
|
+
trailingIcon?: import("react").ReactNode;
|
|
104
|
+
maxWidth?: string | number | undefined;
|
|
105
|
+
width?: string | number | undefined;
|
|
106
|
+
style?: import("react").CSSProperties | undefined;
|
|
107
|
+
} & import("react").RefAttributes<HTMLButtonElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
|
|
108
|
+
export interface CodeBlockCopyButtonProps extends Omit<ComponentProps<typeof CopyButton>, 'text'> {
|
|
109
|
+
variant?: 'floating' | 'default';
|
|
110
|
+
}
|
|
111
|
+
export declare const CodeBlockCopyButton: import("react").ForwardRefExoticComponent<Omit<CodeBlockCopyButtonProps, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
|
|
112
|
+
//# sourceMappingURL=code-block-misc.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-block-misc.d.ts","sourceRoot":"","sources":["../../../components/code-block/code-block-misc.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAc,cAAc,EAAc,MAAM,OAAO,CAAC;AAE/E,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAM5C,eAAO,MAAM,gBAAgB,2HAS3B,CAAC;AAIH,eAAO,MAAM,eAAe;;;;;;;;;2IAe1B,CAAC;AAIH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wYASzB,CAAC;AAIH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;gHAyBnC,CAAC;AAIH,MAAM,WAAW,wBACf,SAAQ,IAAI,CAAC,cAAc,CAAC,OAAO,UAAU,CAAC,EAAE,MAAM,CAAC;IACvD,OAAO,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;CAClC;AAED,eAAO,MAAM,mBAAmB,qIAmB9B,CAAC"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx } from 'react/jsx-runtime';
|
|
3
|
+
import { cx } from '../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.js';
|
|
4
|
+
import { forwardRef } from 'react';
|
|
5
|
+
import { Button } from '../button/button.js';
|
|
6
|
+
import { CopyButton } from '../copy-button/copy-button.js';
|
|
7
|
+
import { Flex } from '../flex/flex.js';
|
|
8
|
+
import { Text } from '../text/text.js';
|
|
9
|
+
import { useCodeBlockContext } from './code-block-root.js';
|
|
10
|
+
import styles from './code-block.module.css.js';
|
|
11
|
+
|
|
12
|
+
const CodeBlockContent = forwardRef(({ children, className, ...props }, ref) => {
|
|
13
|
+
return (jsx("div", { ref: ref, className: cx(styles.content, className), ...props, children: children }));
|
|
14
|
+
});
|
|
15
|
+
CodeBlockContent.displayName = 'CodeBlockContent';
|
|
16
|
+
const CodeBlockHeader = forwardRef(({ children, className, ...props }, ref) => {
|
|
17
|
+
return (jsx(Flex, { ref: ref, align: 'center', gap: 4, className: cx(styles.header, className), ...props, children: children }));
|
|
18
|
+
});
|
|
19
|
+
CodeBlockHeader.displayName = 'CodeBlockHeader';
|
|
20
|
+
const CodeBlockLabel = forwardRef(({ children, className, ...props }, ref) => {
|
|
21
|
+
return (jsx(Text, { ref: ref, className: cx(styles.label, className), ...props, children: children }));
|
|
22
|
+
});
|
|
23
|
+
CodeBlockLabel.displayName = 'CodeBlockLabel';
|
|
24
|
+
const CodeBlockCollapseTrigger = forwardRef(({ className, children = 'Show Code', onClick, ...props }, ref) => {
|
|
25
|
+
const { maxLines, collapsed, toggleCollapsed, code } = useCodeBlockContext();
|
|
26
|
+
const canCollapse = maxLines && maxLines > 0;
|
|
27
|
+
const lineCount = code?.split('\n').length ?? 0;
|
|
28
|
+
if (!canCollapse || !collapsed || lineCount < maxLines)
|
|
29
|
+
return null;
|
|
30
|
+
return (jsx(Button, { ref: ref, onClick: e => {
|
|
31
|
+
toggleCollapsed();
|
|
32
|
+
onClick?.(e);
|
|
33
|
+
}, variant: 'text', color: 'neutral', className: cx(styles.collapseTrigger, className), ...props, children: children }));
|
|
34
|
+
});
|
|
35
|
+
CodeBlockCollapseTrigger.displayName = 'CodeBlockCollapseTrigger';
|
|
36
|
+
const CodeBlockCopyButton = forwardRef(({ className, variant = 'default', ...props }, ref) => {
|
|
37
|
+
const { code = '' } = useCodeBlockContext();
|
|
38
|
+
return (jsx(CopyButton, { ref: ref, text: code, size: variant === 'floating' ? 2 : 3, className: cx(styles.copyButton, variant === 'floating' && styles.floatingCopyButton, className), ...props }));
|
|
39
|
+
});
|
|
40
|
+
CodeBlockCopyButton.displayName = 'CodeBlockCopyButton';
|
|
41
|
+
|
|
42
|
+
export { CodeBlockCollapseTrigger, CodeBlockContent, CodeBlockCopyButton, CodeBlockHeader, CodeBlockLabel };
|
|
43
|
+
//# sourceMappingURL=code-block-misc.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-block-misc.js","sources":["../../../components/code-block/code-block-misc.tsx"],"sourcesContent":["'use client';\n\nimport { cx } from 'class-variance-authority';\nimport { ComponentProps, ElementRef, HTMLAttributes, forwardRef } from 'react';\nimport { Button } from '../button';\nimport { CopyButton } from '../copy-button';\nimport { Flex } from '../flex';\nimport { Text } from '../text';\nimport { useCodeBlockContext } from './code-block-root';\nimport styles from './code-block.module.css';\n\nexport const CodeBlockContent = forwardRef<\n HTMLDivElement,\n HTMLAttributes<HTMLDivElement>\n>(({ children, className, ...props }, ref) => {\n return (\n <div ref={ref} className={cx(styles.content, className)} {...props}>\n {children}\n </div>\n );\n});\n\nCodeBlockContent.displayName = 'CodeBlockContent';\n\nexport const CodeBlockHeader = forwardRef<\n ElementRef<typeof Flex>,\n ComponentProps<typeof Flex>\n>(({ children, className, ...props }, ref) => {\n return (\n <Flex\n ref={ref}\n align='center'\n gap={4}\n className={cx(styles.header, className)}\n {...props}\n >\n {children}\n </Flex>\n );\n});\n\nCodeBlockHeader.displayName = 'CodeBlockHeader';\n\nexport const CodeBlockLabel = forwardRef<\n ElementRef<typeof Text>,\n ComponentProps<typeof Text>\n>(({ children, className, ...props }, ref) => {\n return (\n <Text ref={ref} className={cx(styles.label, className)} {...props}>\n {children}\n </Text>\n );\n});\n\nCodeBlockLabel.displayName = 'CodeBlockLabel';\n\nexport const CodeBlockCollapseTrigger = forwardRef<\n HTMLButtonElement,\n ComponentProps<typeof Button>\n>(({ className, children = 'Show Code', onClick, ...props }, ref) => {\n const { maxLines, collapsed, toggleCollapsed, code } = useCodeBlockContext();\n const canCollapse = maxLines && maxLines > 0;\n const lineCount = code?.split('\\n').length ?? 0;\n\n if (!canCollapse || !collapsed || lineCount < maxLines) return null;\n\n return (\n <Button\n ref={ref}\n onClick={e => {\n toggleCollapsed();\n onClick?.(e);\n }}\n variant='text'\n color='neutral'\n className={cx(styles.collapseTrigger, className)}\n {...props}\n >\n {children}\n </Button>\n );\n});\n\nCodeBlockCollapseTrigger.displayName = 'CodeBlockCollapseTrigger';\n\nexport interface CodeBlockCopyButtonProps\n extends Omit<ComponentProps<typeof CopyButton>, 'text'> {\n variant?: 'floating' | 'default';\n}\n\nexport const CodeBlockCopyButton = forwardRef<\n ElementRef<typeof CopyButton>,\n CodeBlockCopyButtonProps\n>(({ className, variant = 'default', ...props }, ref) => {\n const { code = '' } = useCodeBlockContext();\n\n return (\n <CopyButton\n ref={ref}\n text={code}\n size={variant === 'floating' ? 2 : 3}\n className={cx(\n styles.copyButton,\n variant === 'floating' && styles.floatingCopyButton,\n className\n )}\n {...props}\n />\n );\n});\n\nCodeBlockCopyButton.displayName = 'CodeBlockCopyButton';\n"],"names":[],"mappings":";;;;;;;;;;;AAWa;;AASb;AAEA;AAEa;AAIX;AAWF;AAEA;AAEa;;AASb;AAEA;;AAME;AACA;AACA;;AAEwD;AAExD;AAIM;AACA;;AAUR;AAEA;;;;AA0BA;AAEA;;"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
5
|
+
var index = require('../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.cjs');
|
|
6
|
+
var React = require('react');
|
|
7
|
+
var codeBlock_module = require('./code-block.module.css.cjs');
|
|
8
|
+
|
|
9
|
+
const CodeBlockContext = React.createContext(undefined);
|
|
10
|
+
const useCodeBlockContext = () => {
|
|
11
|
+
const context = React.useContext(CodeBlockContext);
|
|
12
|
+
if (!context) {
|
|
13
|
+
throw new Error('useCodeBlockContext must be used within a CodeBlock');
|
|
14
|
+
}
|
|
15
|
+
return context;
|
|
16
|
+
};
|
|
17
|
+
const CodeBlockRoot = React.forwardRef(({ children, value: providedValue, onValueChange, defaultValue, hideLineNumbers = false, maxLines, maxHeight, className, collapsed: providedCollapsed, defaultCollapsed = true, onCollapseChange, ...props }, ref) => {
|
|
18
|
+
const [internalValue, setInternalValue] = React.useState(defaultValue);
|
|
19
|
+
const [code, setCode] = React.useState();
|
|
20
|
+
const [internalCollapsed, setInternalCollapsed] = React.useState(defaultCollapsed ?? false);
|
|
21
|
+
const collapsed = providedCollapsed ?? internalCollapsed;
|
|
22
|
+
const value = providedValue ?? internalValue ?? defaultValue;
|
|
23
|
+
const setValue = React.useCallback((newValue) => {
|
|
24
|
+
setInternalValue(newValue);
|
|
25
|
+
onValueChange?.(newValue);
|
|
26
|
+
}, [onValueChange]);
|
|
27
|
+
const toggleCollapsed = React.useCallback(() => {
|
|
28
|
+
setInternalCollapsed(_internalCollapsed => {
|
|
29
|
+
onCollapseChange?.(!_internalCollapsed);
|
|
30
|
+
return !_internalCollapsed;
|
|
31
|
+
});
|
|
32
|
+
}, [onCollapseChange]);
|
|
33
|
+
return (jsxRuntime.jsx(CodeBlockContext.Provider, { value: {
|
|
34
|
+
hideLineNumbers,
|
|
35
|
+
value,
|
|
36
|
+
setValue,
|
|
37
|
+
code,
|
|
38
|
+
setCode,
|
|
39
|
+
maxLines: maxLines && maxLines + 1, // to compensate for the absolute collapse trigger
|
|
40
|
+
collapsed,
|
|
41
|
+
toggleCollapsed
|
|
42
|
+
}, children: jsxRuntime.jsx("div", { ref: ref, className: index.cx(codeBlock_module.default.container, className), ...props, children: children }) }));
|
|
43
|
+
});
|
|
44
|
+
CodeBlockRoot.displayName = 'CodeBlock';
|
|
45
|
+
|
|
46
|
+
exports.CodeBlockRoot = CodeBlockRoot;
|
|
47
|
+
exports.useCodeBlockContext = useCodeBlockContext;
|
|
48
|
+
//# sourceMappingURL=code-block-root.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-block-root.cjs","sources":["../../../components/code-block/code-block-root.tsx"],"sourcesContent":["'use client';\n\nimport { cx } from 'class-variance-authority';\nimport {\n HTMLAttributes,\n createContext,\n forwardRef,\n useCallback,\n useContext,\n useState\n} from 'react';\nimport styles from './code-block.module.css';\n\ninterface CodeBlockCommonProps {\n hideLineNumbers?: boolean;\n value?: string;\n maxLines?: number;\n collapsed?: boolean;\n}\n\ninterface CodeBlockContextValue extends CodeBlockCommonProps {\n setValue: (value: string) => void;\n code?: string;\n setCode: (code: string) => void;\n toggleCollapsed: () => void;\n}\n\nconst CodeBlockContext = createContext<CodeBlockContextValue | undefined>(\n undefined\n);\n\nexport const useCodeBlockContext = () => {\n const context = useContext(CodeBlockContext);\n if (!context) {\n throw new Error('useCodeBlockContext must be used within a CodeBlock');\n }\n return context;\n};\n\nexport interface CodeBlockProps\n extends HTMLAttributes<HTMLDivElement>,\n CodeBlockCommonProps {\n defaultValue?: string;\n maxHeight?: string | number;\n onValueChange?: (value: string) => void;\n defaultCollapsed?: boolean;\n onCollapseChange?: (value: boolean) => void;\n}\n\nexport const CodeBlockRoot = forwardRef<HTMLDivElement, CodeBlockProps>(\n (\n {\n children,\n value: providedValue,\n onValueChange,\n defaultValue,\n hideLineNumbers = false,\n maxLines,\n maxHeight,\n className,\n collapsed: providedCollapsed,\n defaultCollapsed = true,\n onCollapseChange,\n ...props\n },\n ref\n ) => {\n const [internalValue, setInternalValue] = useState<string | undefined>(\n defaultValue\n );\n const [code, setCode] = useState<string | undefined>();\n const [internalCollapsed, setInternalCollapsed] = useState<boolean>(\n defaultCollapsed ?? false\n );\n\n const collapsed = providedCollapsed ?? internalCollapsed;\n\n const value = providedValue ?? internalValue ?? defaultValue;\n\n const setValue = useCallback(\n (newValue: string) => {\n setInternalValue(newValue);\n onValueChange?.(newValue);\n },\n [onValueChange]\n );\n\n const toggleCollapsed = useCallback(() => {\n setInternalCollapsed(_internalCollapsed => {\n onCollapseChange?.(!_internalCollapsed);\n return !_internalCollapsed;\n });\n }, [onCollapseChange]);\n\n return (\n <CodeBlockContext.Provider\n value={{\n hideLineNumbers,\n value,\n setValue,\n code,\n setCode,\n maxLines: maxLines && maxLines + 1, // to compensate for the absolute collapse trigger\n collapsed,\n toggleCollapsed\n }}\n >\n <div ref={ref} className={cx(styles.container, className)} {...props}>\n {children}\n </div>\n </CodeBlockContext.Provider>\n );\n }\n);\n\nCodeBlockRoot.displayName = 'CodeBlock';\n"],"names":[],"mappings":";;;;;;;;AA2BA;AAIO;AACL;;AAEE;;AAEF;AACF;;;;AAkCI;AAIA;AAEA;AAEA;;AAGI;AACF;AAIF;;AAEI;;AAEF;AACF;AAEA;;;;;;AAQM;;;;AAUR;AAGF;;;"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { HTMLAttributes } from 'react';
|
|
2
|
+
interface CodeBlockCommonProps {
|
|
3
|
+
hideLineNumbers?: boolean;
|
|
4
|
+
value?: string;
|
|
5
|
+
maxLines?: number;
|
|
6
|
+
collapsed?: boolean;
|
|
7
|
+
}
|
|
8
|
+
interface CodeBlockContextValue extends CodeBlockCommonProps {
|
|
9
|
+
setValue: (value: string) => void;
|
|
10
|
+
code?: string;
|
|
11
|
+
setCode: (code: string) => void;
|
|
12
|
+
toggleCollapsed: () => void;
|
|
13
|
+
}
|
|
14
|
+
export declare const useCodeBlockContext: () => CodeBlockContextValue;
|
|
15
|
+
export interface CodeBlockProps extends HTMLAttributes<HTMLDivElement>, CodeBlockCommonProps {
|
|
16
|
+
defaultValue?: string;
|
|
17
|
+
maxHeight?: string | number;
|
|
18
|
+
onValueChange?: (value: string) => void;
|
|
19
|
+
defaultCollapsed?: boolean;
|
|
20
|
+
onCollapseChange?: (value: boolean) => void;
|
|
21
|
+
}
|
|
22
|
+
export declare const CodeBlockRoot: import("react").ForwardRefExoticComponent<CodeBlockProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
23
|
+
export {};
|
|
24
|
+
//# sourceMappingURL=code-block-root.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-block-root.d.ts","sourceRoot":"","sources":["../../../components/code-block/code-block-root.tsx"],"names":[],"mappings":"AAGA,OAAO,EACL,cAAc,EAMf,MAAM,OAAO,CAAC;AAGf,UAAU,oBAAoB;IAC5B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,UAAU,qBAAsB,SAAQ,oBAAoB;IAC1D,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,eAAe,EAAE,MAAM,IAAI,CAAC;CAC7B;AAMD,eAAO,MAAM,mBAAmB,6BAM/B,CAAC;AAEF,MAAM,WAAW,cACf,SAAQ,cAAc,CAAC,cAAc,CAAC,EACpC,oBAAoB;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CAC7C;AAED,eAAO,MAAM,aAAa,2GAgEzB,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx } from 'react/jsx-runtime';
|
|
3
|
+
import { cx } from '../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.js';
|
|
4
|
+
import { createContext, forwardRef, useState, useCallback, useContext } from 'react';
|
|
5
|
+
import styles from './code-block.module.css.js';
|
|
6
|
+
|
|
7
|
+
const CodeBlockContext = createContext(undefined);
|
|
8
|
+
const useCodeBlockContext = () => {
|
|
9
|
+
const context = useContext(CodeBlockContext);
|
|
10
|
+
if (!context) {
|
|
11
|
+
throw new Error('useCodeBlockContext must be used within a CodeBlock');
|
|
12
|
+
}
|
|
13
|
+
return context;
|
|
14
|
+
};
|
|
15
|
+
const CodeBlockRoot = forwardRef(({ children, value: providedValue, onValueChange, defaultValue, hideLineNumbers = false, maxLines, maxHeight, className, collapsed: providedCollapsed, defaultCollapsed = true, onCollapseChange, ...props }, ref) => {
|
|
16
|
+
const [internalValue, setInternalValue] = useState(defaultValue);
|
|
17
|
+
const [code, setCode] = useState();
|
|
18
|
+
const [internalCollapsed, setInternalCollapsed] = useState(defaultCollapsed ?? false);
|
|
19
|
+
const collapsed = providedCollapsed ?? internalCollapsed;
|
|
20
|
+
const value = providedValue ?? internalValue ?? defaultValue;
|
|
21
|
+
const setValue = useCallback((newValue) => {
|
|
22
|
+
setInternalValue(newValue);
|
|
23
|
+
onValueChange?.(newValue);
|
|
24
|
+
}, [onValueChange]);
|
|
25
|
+
const toggleCollapsed = useCallback(() => {
|
|
26
|
+
setInternalCollapsed(_internalCollapsed => {
|
|
27
|
+
onCollapseChange?.(!_internalCollapsed);
|
|
28
|
+
return !_internalCollapsed;
|
|
29
|
+
});
|
|
30
|
+
}, [onCollapseChange]);
|
|
31
|
+
return (jsx(CodeBlockContext.Provider, { value: {
|
|
32
|
+
hideLineNumbers,
|
|
33
|
+
value,
|
|
34
|
+
setValue,
|
|
35
|
+
code,
|
|
36
|
+
setCode,
|
|
37
|
+
maxLines: maxLines && maxLines + 1, // to compensate for the absolute collapse trigger
|
|
38
|
+
collapsed,
|
|
39
|
+
toggleCollapsed
|
|
40
|
+
}, children: jsx("div", { ref: ref, className: cx(styles.container, className), ...props, children: children }) }));
|
|
41
|
+
});
|
|
42
|
+
CodeBlockRoot.displayName = 'CodeBlock';
|
|
43
|
+
|
|
44
|
+
export { CodeBlockRoot, useCodeBlockContext };
|
|
45
|
+
//# sourceMappingURL=code-block-root.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-block-root.js","sources":["../../../components/code-block/code-block-root.tsx"],"sourcesContent":["'use client';\n\nimport { cx } from 'class-variance-authority';\nimport {\n HTMLAttributes,\n createContext,\n forwardRef,\n useCallback,\n useContext,\n useState\n} from 'react';\nimport styles from './code-block.module.css';\n\ninterface CodeBlockCommonProps {\n hideLineNumbers?: boolean;\n value?: string;\n maxLines?: number;\n collapsed?: boolean;\n}\n\ninterface CodeBlockContextValue extends CodeBlockCommonProps {\n setValue: (value: string) => void;\n code?: string;\n setCode: (code: string) => void;\n toggleCollapsed: () => void;\n}\n\nconst CodeBlockContext = createContext<CodeBlockContextValue | undefined>(\n undefined\n);\n\nexport const useCodeBlockContext = () => {\n const context = useContext(CodeBlockContext);\n if (!context) {\n throw new Error('useCodeBlockContext must be used within a CodeBlock');\n }\n return context;\n};\n\nexport interface CodeBlockProps\n extends HTMLAttributes<HTMLDivElement>,\n CodeBlockCommonProps {\n defaultValue?: string;\n maxHeight?: string | number;\n onValueChange?: (value: string) => void;\n defaultCollapsed?: boolean;\n onCollapseChange?: (value: boolean) => void;\n}\n\nexport const CodeBlockRoot = forwardRef<HTMLDivElement, CodeBlockProps>(\n (\n {\n children,\n value: providedValue,\n onValueChange,\n defaultValue,\n hideLineNumbers = false,\n maxLines,\n maxHeight,\n className,\n collapsed: providedCollapsed,\n defaultCollapsed = true,\n onCollapseChange,\n ...props\n },\n ref\n ) => {\n const [internalValue, setInternalValue] = useState<string | undefined>(\n defaultValue\n );\n const [code, setCode] = useState<string | undefined>();\n const [internalCollapsed, setInternalCollapsed] = useState<boolean>(\n defaultCollapsed ?? false\n );\n\n const collapsed = providedCollapsed ?? internalCollapsed;\n\n const value = providedValue ?? internalValue ?? defaultValue;\n\n const setValue = useCallback(\n (newValue: string) => {\n setInternalValue(newValue);\n onValueChange?.(newValue);\n },\n [onValueChange]\n );\n\n const toggleCollapsed = useCallback(() => {\n setInternalCollapsed(_internalCollapsed => {\n onCollapseChange?.(!_internalCollapsed);\n return !_internalCollapsed;\n });\n }, [onCollapseChange]);\n\n return (\n <CodeBlockContext.Provider\n value={{\n hideLineNumbers,\n value,\n setValue,\n code,\n setCode,\n maxLines: maxLines && maxLines + 1, // to compensate for the absolute collapse trigger\n collapsed,\n toggleCollapsed\n }}\n >\n <div ref={ref} className={cx(styles.container, className)} {...props}>\n {children}\n </div>\n </CodeBlockContext.Provider>\n );\n }\n);\n\nCodeBlockRoot.displayName = 'CodeBlock';\n"],"names":[],"mappings":";;;;;;AA2BA;AAIO;AACL;;AAEE;;AAEF;AACF;;;;AAkCI;AAIA;AAEA;AAEA;;AAGI;AACF;AAIF;;AAEI;;AAEF;AACF;AAEA;;;;;;AAQM;;;;AAUR;AAGF;;"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var select = require('../select/select.cjs');
|
|
4
|
+
var codeBlockCode = require('./code-block-code.cjs');
|
|
5
|
+
var codeBlockLanguageSelect = require('./code-block-language-select.cjs');
|
|
6
|
+
var codeBlockMisc = require('./code-block-misc.cjs');
|
|
7
|
+
var codeBlockRoot = require('./code-block-root.cjs');
|
|
8
|
+
|
|
9
|
+
const CodeBlock = Object.assign(codeBlockRoot.CodeBlockRoot, {
|
|
10
|
+
Header: codeBlockMisc.CodeBlockHeader,
|
|
11
|
+
Content: codeBlockMisc.CodeBlockContent,
|
|
12
|
+
Label: codeBlockMisc.CodeBlockLabel,
|
|
13
|
+
LanguageSelect: codeBlockLanguageSelect.CodeBlockLanguageSelect,
|
|
14
|
+
LanguageSelectTrigger: codeBlockLanguageSelect.CodeBlockLanguageSelectTrigger,
|
|
15
|
+
LanguageSelectContent: select.Select.Content,
|
|
16
|
+
LanguageSelectItem: select.Select.Item,
|
|
17
|
+
CopyButton: codeBlockMisc.CodeBlockCopyButton,
|
|
18
|
+
Code: codeBlockCode.CodeBlockCode,
|
|
19
|
+
CollapseTrigger: codeBlockMisc.CodeBlockCollapseTrigger
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
exports.CodeBlock = CodeBlock;
|
|
23
|
+
//# sourceMappingURL=code-block.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-block.cjs","sources":["../../../components/code-block/code-block.tsx"],"sourcesContent":["import { Select } from '../select';\nimport { CodeBlockCode } from './code-block-code';\nimport {\n CodeBlockLanguageSelect,\n CodeBlockLanguageSelectTrigger\n} from './code-block-language-select';\nimport {\n CodeBlockCollapseTrigger,\n CodeBlockContent,\n CodeBlockCopyButton,\n CodeBlockHeader,\n CodeBlockLabel\n} from './code-block-misc';\nimport { CodeBlockRoot } from './code-block-root';\n\nexport const CodeBlock = Object.assign(CodeBlockRoot, {\n Header: CodeBlockHeader,\n Content: CodeBlockContent,\n Label: CodeBlockLabel,\n LanguageSelect: CodeBlockLanguageSelect,\n LanguageSelectTrigger: CodeBlockLanguageSelectTrigger,\n LanguageSelectContent: Select.Content as typeof Select.Content,\n LanguageSelectItem: Select.Item as typeof Select.Item,\n CopyButton: CodeBlockCopyButton,\n Code: CodeBlockCode,\n CollapseTrigger: CodeBlockCollapseTrigger\n});\n"],"names":["CodeBlockRoot","CodeBlockHeader","CodeBlockContent","CodeBlockLabel","CodeBlockLanguageSelect","CodeBlockLanguageSelectTrigger","Select","CodeBlockCopyButton","CodeBlockCode","CodeBlockCollapseTrigger"],"mappings":";;;;;;;;MAea,SAAS,GAAG,MAAM,CAAC,MAAM,CAACA,2BAAa,EAAE;AACpD,IAAA,MAAM,EAAEC,6BAAe;AACvB,IAAA,OAAO,EAAEC,8BAAgB;AACzB,IAAA,KAAK,EAAEC,4BAAc;AACrB,IAAA,cAAc,EAAEC,+CAAuB;AACvC,IAAA,qBAAqB,EAAEC,sDAA8B;IACrD,qBAAqB,EAAEC,aAAM,CAAC,OAAgC;IAC9D,kBAAkB,EAAEA,aAAM,CAAC,IAA0B;AACrD,IAAA,UAAU,EAAEC,iCAAmB;AAC/B,IAAA,IAAI,EAAEC,2BAAa;AACnB,IAAA,eAAe,EAAEC,sCAAwB;AAC1C,CAAA;;;;"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Select } from '../select/select.js';
|
|
2
|
+
import { CodeBlockCode } from './code-block-code.js';
|
|
3
|
+
import { CodeBlockLanguageSelect, CodeBlockLanguageSelectTrigger } from './code-block-language-select.js';
|
|
4
|
+
import { CodeBlockHeader, CodeBlockContent, CodeBlockLabel, CodeBlockCopyButton, CodeBlockCollapseTrigger } from './code-block-misc.js';
|
|
5
|
+
import { CodeBlockRoot } from './code-block-root.js';
|
|
6
|
+
|
|
7
|
+
const CodeBlock = Object.assign(CodeBlockRoot, {
|
|
8
|
+
Header: CodeBlockHeader,
|
|
9
|
+
Content: CodeBlockContent,
|
|
10
|
+
Label: CodeBlockLabel,
|
|
11
|
+
LanguageSelect: CodeBlockLanguageSelect,
|
|
12
|
+
LanguageSelectTrigger: CodeBlockLanguageSelectTrigger,
|
|
13
|
+
LanguageSelectContent: Select.Content,
|
|
14
|
+
LanguageSelectItem: Select.Item,
|
|
15
|
+
CopyButton: CodeBlockCopyButton,
|
|
16
|
+
Code: CodeBlockCode,
|
|
17
|
+
CollapseTrigger: CodeBlockCollapseTrigger
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
export { CodeBlock };
|
|
21
|
+
//# sourceMappingURL=code-block.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-block.js","sources":["../../../components/code-block/code-block.tsx"],"sourcesContent":["import { Select } from '../select';\nimport { CodeBlockCode } from './code-block-code';\nimport {\n CodeBlockLanguageSelect,\n CodeBlockLanguageSelectTrigger\n} from './code-block-language-select';\nimport {\n CodeBlockCollapseTrigger,\n CodeBlockContent,\n CodeBlockCopyButton,\n CodeBlockHeader,\n CodeBlockLabel\n} from './code-block-misc';\nimport { CodeBlockRoot } from './code-block-root';\n\nexport const CodeBlock = Object.assign(CodeBlockRoot, {\n Header: CodeBlockHeader,\n Content: CodeBlockContent,\n Label: CodeBlockLabel,\n LanguageSelect: CodeBlockLanguageSelect,\n LanguageSelectTrigger: CodeBlockLanguageSelectTrigger,\n LanguageSelectContent: Select.Content as typeof Select.Content,\n LanguageSelectItem: Select.Item as typeof Select.Item,\n CopyButton: CodeBlockCopyButton,\n Code: CodeBlockCode,\n CollapseTrigger: CodeBlockCollapseTrigger\n});\n"],"names":[],"mappings":";;;;;;MAea,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE;AACpD,IAAA,MAAM,EAAE,eAAe;AACvB,IAAA,OAAO,EAAE,gBAAgB;AACzB,IAAA,KAAK,EAAE,cAAc;AACrB,IAAA,cAAc,EAAE,uBAAuB;AACvC,IAAA,qBAAqB,EAAE,8BAA8B;IACrD,qBAAqB,EAAE,MAAM,CAAC,OAAgC;IAC9D,kBAAkB,EAAE,MAAM,CAAC,IAA0B;AACrD,IAAA,UAAU,EAAE,mBAAmB;AAC/B,IAAA,IAAI,EAAE,aAAa;AACnB,IAAA,eAAe,EAAE,wBAAwB;AAC1C,CAAA;;;;"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var styles = {"container":"code-block-module_container__jbdzZ","content":"code-block-module_content__hfyxg","header":"code-block-module_header__k0-Ow","label":"code-block-module_label__TcwYO","languageSelectTrigger":"code-block-module_languageSelectTrigger__dnGoj","collapseTrigger":"code-block-module_collapseTrigger__tX6fI","codeContent":"code-block-module_codeContent__8GUq7","pre":"code-block-module_pre__RXDtg","lineNumber":"code-block-module_lineNumber__ru2oY","lineContent":"code-block-module_lineContent__OG9cE","copyButton":"code-block-module_copyButton__1hsyv","floatingCopyButton":"code-block-module_floatingCopyButton__EaiDL"};
|
|
6
|
+
|
|
7
|
+
exports.default = styles;
|
|
8
|
+
//# sourceMappingURL=code-block.module.css.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-block.module.css.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
var styles = {"container":"code-block-module_container__jbdzZ","content":"code-block-module_content__hfyxg","header":"code-block-module_header__k0-Ow","label":"code-block-module_label__TcwYO","languageSelectTrigger":"code-block-module_languageSelectTrigger__dnGoj","collapseTrigger":"code-block-module_collapseTrigger__tX6fI","codeContent":"code-block-module_codeContent__8GUq7","pre":"code-block-module_pre__RXDtg","lineNumber":"code-block-module_lineNumber__ru2oY","lineContent":"code-block-module_lineContent__OG9cE","copyButton":"code-block-module_copyButton__1hsyv","floatingCopyButton":"code-block-module_floatingCopyButton__EaiDL"};
|
|
2
|
+
|
|
3
|
+
export { styles as default };
|
|
4
|
+
//# sourceMappingURL=code-block.module.css.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-block.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
|