@tenstorrent/vesper 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +167 -0
- package/dist/components/accordion/accordion.css +1 -0
- package/dist/components/accordion/accordion.d.ts +33 -0
- package/dist/components/accordion/accordion.d.ts.map +1 -0
- package/dist/components/accordion/accordion.js +30 -0
- package/dist/components/accordion/accordion.js.map +1 -0
- package/dist/components/admonition/admonition.css +1 -0
- package/dist/components/admonition/admonition.d.ts +49 -0
- package/dist/components/admonition/admonition.d.ts.map +1 -0
- package/dist/components/admonition/admonition.js +47 -0
- package/dist/components/admonition/admonition.js.map +1 -0
- package/dist/components/avatar/avatar.css +1 -0
- package/dist/components/avatar/avatar.d.ts +30 -0
- package/dist/components/avatar/avatar.d.ts.map +1 -0
- package/dist/components/avatar/avatar.js +24 -0
- package/dist/components/avatar/avatar.js.map +1 -0
- package/dist/components/avatar-group/avatar-group.css +1 -0
- package/dist/components/avatar-group/avatar-group.d.ts +36 -0
- package/dist/components/avatar-group/avatar-group.d.ts.map +1 -0
- package/dist/components/avatar-group/avatar-group.js +30 -0
- package/dist/components/avatar-group/avatar-group.js.map +1 -0
- package/dist/components/badge/badge.css +1 -0
- package/dist/components/badge/badge.d.ts +42 -0
- package/dist/components/badge/badge.d.ts.map +1 -0
- package/dist/components/badge/badge.js +49 -0
- package/dist/components/badge/badge.js.map +1 -0
- package/dist/components/button/button.css +1 -0
- package/dist/components/button/button.d.ts +51 -0
- package/dist/components/button/button.d.ts.map +1 -0
- package/dist/components/button/button.js +49 -0
- package/dist/components/button/button.js.map +1 -0
- package/dist/components/checkbox/checkbox.css +1 -0
- package/dist/components/checkbox/checkbox.d.ts +53 -0
- package/dist/components/checkbox/checkbox.d.ts.map +1 -0
- package/dist/components/checkbox/checkbox.js +65 -0
- package/dist/components/checkbox/checkbox.js.map +1 -0
- package/dist/components/chip/chip.css +1 -0
- package/dist/components/chip/chip.d.ts +53 -0
- package/dist/components/chip/chip.d.ts.map +1 -0
- package/dist/components/chip/chip.js +51 -0
- package/dist/components/chip/chip.js.map +1 -0
- package/dist/components/choicebox/choicebox.css +1 -0
- package/dist/components/choicebox/choicebox.d.ts +90 -0
- package/dist/components/choicebox/choicebox.d.ts.map +1 -0
- package/dist/components/choicebox/choicebox.js +131 -0
- package/dist/components/choicebox/choicebox.js.map +1 -0
- package/dist/components/code/code.css +1 -0
- package/dist/components/code/code.d.ts +23 -0
- package/dist/components/code/code.d.ts.map +1 -0
- package/dist/components/code/code.js +23 -0
- package/dist/components/code/code.js.map +1 -0
- package/dist/components/code-block/code-block.css +1 -0
- package/dist/components/code-block/code-block.d.ts +48 -0
- package/dist/components/code-block/code-block.d.ts.map +1 -0
- package/dist/components/code-block/code-block.js +36 -0
- package/dist/components/code-block/code-block.js.map +1 -0
- package/dist/components/code-block/components.d.ts +4 -0
- package/dist/components/code-block/components.d.ts.map +1 -0
- package/dist/components/code-block/components.js +27 -0
- package/dist/components/code-block/components.js.map +1 -0
- package/dist/components/code-block/fixtures.d.ts +12 -0
- package/dist/components/code-block/fixtures.d.ts.map +1 -0
- package/dist/components/code-block/fixtures.js +491 -0
- package/dist/components/code-block/fixtures.js.map +1 -0
- package/dist/components/code-block/streaming-code-block.d.ts +5 -0
- package/dist/components/code-block/streaming-code-block.d.ts.map +1 -0
- package/dist/components/code-block/streaming-code-block.js +92 -0
- package/dist/components/code-block/streaming-code-block.js.map +1 -0
- package/dist/components/code-block/themes.d.ts +16 -0
- package/dist/components/code-block/themes.d.ts.map +1 -0
- package/dist/components/code-block/themes.js +2836 -0
- package/dist/components/code-block/themes.js.map +1 -0
- package/dist/components/code-block/utils.d.ts +7 -0
- package/dist/components/code-block/utils.d.ts.map +1 -0
- package/dist/components/code-block/utils.js +42 -0
- package/dist/components/code-block/utils.js.map +1 -0
- package/dist/components/combobox/combobox.css +1 -0
- package/dist/components/combobox/combobox.d.ts +106 -0
- package/dist/components/combobox/combobox.d.ts.map +1 -0
- package/dist/components/combobox/combobox.js +93 -0
- package/dist/components/combobox/combobox.js.map +1 -0
- package/dist/components/form-input-message/form-input-message.css +1 -0
- package/dist/components/form-input-message/form-input-message.d.ts +35 -0
- package/dist/components/form-input-message/form-input-message.d.ts.map +1 -0
- package/dist/components/form-input-message/form-input-message.js +38 -0
- package/dist/components/form-input-message/form-input-message.js.map +1 -0
- package/dist/components/icon-button/icon-button.css +1 -0
- package/dist/components/icon-button/icon-button.d.ts +38 -0
- package/dist/components/icon-button/icon-button.d.ts.map +1 -0
- package/dist/components/icon-button/icon-button.js +31 -0
- package/dist/components/icon-button/icon-button.js.map +1 -0
- package/dist/components/icons/add.d.ts +3 -0
- package/dist/components/icons/add.d.ts.map +1 -0
- package/dist/components/icons/add.js +5 -0
- package/dist/components/icons/add.js.map +1 -0
- package/dist/components/icons/ai-agent-solid.d.ts +3 -0
- package/dist/components/icons/ai-agent-solid.d.ts.map +1 -0
- package/dist/components/icons/ai-agent-solid.js +5 -0
- package/dist/components/icons/ai-agent-solid.js.map +1 -0
- package/dist/components/icons/ai-agent.d.ts +3 -0
- package/dist/components/icons/ai-agent.d.ts.map +1 -0
- package/dist/components/icons/ai-agent.js +5 -0
- package/dist/components/icons/ai-agent.js.map +1 -0
- package/dist/components/icons/ai-data.d.ts +3 -0
- package/dist/components/icons/ai-data.d.ts.map +1 -0
- package/dist/components/icons/ai-data.js +5 -0
- package/dist/components/icons/ai-data.js.map +1 -0
- package/dist/components/icons/ai-model.d.ts +3 -0
- package/dist/components/icons/ai-model.d.ts.map +1 -0
- package/dist/components/icons/ai-model.js +5 -0
- package/dist/components/icons/ai-model.js.map +1 -0
- package/dist/components/icons/ai-task.d.ts +3 -0
- package/dist/components/icons/ai-task.d.ts.map +1 -0
- package/dist/components/icons/ai-task.js +5 -0
- package/dist/components/icons/ai-task.js.map +1 -0
- package/dist/components/icons/ai-video-gen.d.ts +3 -0
- package/dist/components/icons/ai-video-gen.d.ts.map +1 -0
- package/dist/components/icons/ai-video-gen.js +5 -0
- package/dist/components/icons/ai-video-gen.js.map +1 -0
- package/dist/components/icons/ai.d.ts +3 -0
- package/dist/components/icons/ai.d.ts.map +1 -0
- package/dist/components/icons/ai.js +5 -0
- package/dist/components/icons/ai.js.map +1 -0
- package/dist/components/icons/arrow-down.d.ts +3 -0
- package/dist/components/icons/arrow-down.d.ts.map +1 -0
- package/dist/components/icons/arrow-down.js +5 -0
- package/dist/components/icons/arrow-down.js.map +1 -0
- package/dist/components/icons/arrow-left.d.ts +3 -0
- package/dist/components/icons/arrow-left.d.ts.map +1 -0
- package/dist/components/icons/arrow-left.js +5 -0
- package/dist/components/icons/arrow-left.js.map +1 -0
- package/dist/components/icons/arrow-right.d.ts +3 -0
- package/dist/components/icons/arrow-right.d.ts.map +1 -0
- package/dist/components/icons/arrow-right.js +5 -0
- package/dist/components/icons/arrow-right.js.map +1 -0
- package/dist/components/icons/arrow-up-left.d.ts +3 -0
- package/dist/components/icons/arrow-up-left.d.ts.map +1 -0
- package/dist/components/icons/arrow-up-left.js +5 -0
- package/dist/components/icons/arrow-up-left.js.map +1 -0
- package/dist/components/icons/arrow-up-right.d.ts +3 -0
- package/dist/components/icons/arrow-up-right.d.ts.map +1 -0
- package/dist/components/icons/arrow-up-right.js +5 -0
- package/dist/components/icons/arrow-up-right.js.map +1 -0
- package/dist/components/icons/arrow-up.d.ts +3 -0
- package/dist/components/icons/arrow-up.d.ts.map +1 -0
- package/dist/components/icons/arrow-up.js +5 -0
- package/dist/components/icons/arrow-up.js.map +1 -0
- package/dist/components/icons/auto.d.ts +3 -0
- package/dist/components/icons/auto.d.ts.map +1 -0
- package/dist/components/icons/auto.js +5 -0
- package/dist/components/icons/auto.js.map +1 -0
- package/dist/components/icons/blackhole.d.ts +3 -0
- package/dist/components/icons/blackhole.d.ts.map +1 -0
- package/dist/components/icons/blackhole.js +5 -0
- package/dist/components/icons/blackhole.js.map +1 -0
- package/dist/components/icons/board.d.ts +3 -0
- package/dist/components/icons/board.d.ts.map +1 -0
- package/dist/components/icons/board.js +5 -0
- package/dist/components/icons/board.js.map +1 -0
- package/dist/components/icons/bolt.d.ts +3 -0
- package/dist/components/icons/bolt.d.ts.map +1 -0
- package/dist/components/icons/bolt.js +5 -0
- package/dist/components/icons/bolt.js.map +1 -0
- package/dist/components/icons/bug.d.ts +3 -0
- package/dist/components/icons/bug.d.ts.map +1 -0
- package/dist/components/icons/bug.js +5 -0
- package/dist/components/icons/bug.js.map +1 -0
- package/dist/components/icons/caret-down.d.ts +3 -0
- package/dist/components/icons/caret-down.d.ts.map +1 -0
- package/dist/components/icons/caret-down.js +5 -0
- package/dist/components/icons/caret-down.js.map +1 -0
- package/dist/components/icons/caret-left.d.ts +3 -0
- package/dist/components/icons/caret-left.d.ts.map +1 -0
- package/dist/components/icons/caret-left.js +5 -0
- package/dist/components/icons/caret-left.js.map +1 -0
- package/dist/components/icons/caret-right.d.ts +3 -0
- package/dist/components/icons/caret-right.d.ts.map +1 -0
- package/dist/components/icons/caret-right.js +5 -0
- package/dist/components/icons/caret-right.js.map +1 -0
- package/dist/components/icons/caret-up.d.ts +3 -0
- package/dist/components/icons/caret-up.d.ts.map +1 -0
- package/dist/components/icons/caret-up.js +5 -0
- package/dist/components/icons/caret-up.js.map +1 -0
- package/dist/components/icons/cart.d.ts +3 -0
- package/dist/components/icons/cart.d.ts.map +1 -0
- package/dist/components/icons/cart.js +5 -0
- package/dist/components/icons/cart.js.map +1 -0
- package/dist/components/icons/chat-solid.d.ts +3 -0
- package/dist/components/icons/chat-solid.d.ts.map +1 -0
- package/dist/components/icons/chat-solid.js +5 -0
- package/dist/components/icons/chat-solid.js.map +1 -0
- package/dist/components/icons/chat.d.ts +3 -0
- package/dist/components/icons/chat.d.ts.map +1 -0
- package/dist/components/icons/chat.js +5 -0
- package/dist/components/icons/chat.js.map +1 -0
- package/dist/components/icons/checkmark.d.ts +3 -0
- package/dist/components/icons/checkmark.d.ts.map +1 -0
- package/dist/components/icons/checkmark.js +5 -0
- package/dist/components/icons/checkmark.js.map +1 -0
- package/dist/components/icons/chip.d.ts +3 -0
- package/dist/components/icons/chip.d.ts.map +1 -0
- package/dist/components/icons/chip.js +5 -0
- package/dist/components/icons/chip.js.map +1 -0
- package/dist/components/icons/circle-add-solid.d.ts +3 -0
- package/dist/components/icons/circle-add-solid.d.ts.map +1 -0
- package/dist/components/icons/circle-add-solid.js +5 -0
- package/dist/components/icons/circle-add-solid.js.map +1 -0
- package/dist/components/icons/circle-add.d.ts +3 -0
- package/dist/components/icons/circle-add.d.ts.map +1 -0
- package/dist/components/icons/circle-add.js +5 -0
- package/dist/components/icons/circle-add.js.map +1 -0
- package/dist/components/icons/circle-x-solid.d.ts +3 -0
- package/dist/components/icons/circle-x-solid.d.ts.map +1 -0
- package/dist/components/icons/circle-x-solid.js +5 -0
- package/dist/components/icons/circle-x-solid.js.map +1 -0
- package/dist/components/icons/circle-x.d.ts +3 -0
- package/dist/components/icons/circle-x.d.ts.map +1 -0
- package/dist/components/icons/circle-x.js +5 -0
- package/dist/components/icons/circle-x.js.map +1 -0
- package/dist/components/icons/clock-countdown.d.ts +3 -0
- package/dist/components/icons/clock-countdown.d.ts.map +1 -0
- package/dist/components/icons/clock-countdown.js +5 -0
- package/dist/components/icons/clock-countdown.js.map +1 -0
- package/dist/components/icons/clock-counter-clockwise.d.ts +3 -0
- package/dist/components/icons/clock-counter-clockwise.d.ts.map +1 -0
- package/dist/components/icons/clock-counter-clockwise.js +5 -0
- package/dist/components/icons/clock-counter-clockwise.js.map +1 -0
- package/dist/components/icons/clock.d.ts +3 -0
- package/dist/components/icons/clock.d.ts.map +1 -0
- package/dist/components/icons/clock.js +5 -0
- package/dist/components/icons/clock.js.map +1 -0
- package/dist/components/icons/close-panel.d.ts +3 -0
- package/dist/components/icons/close-panel.d.ts.map +1 -0
- package/dist/components/icons/close-panel.js +5 -0
- package/dist/components/icons/close-panel.js.map +1 -0
- package/dist/components/icons/close.d.ts +3 -0
- package/dist/components/icons/close.d.ts.map +1 -0
- package/dist/components/icons/close.js +5 -0
- package/dist/components/icons/close.js.map +1 -0
- package/dist/components/icons/cloud-server-solid.d.ts +3 -0
- package/dist/components/icons/cloud-server-solid.d.ts.map +1 -0
- package/dist/components/icons/cloud-server-solid.js +5 -0
- package/dist/components/icons/cloud-server-solid.js.map +1 -0
- package/dist/components/icons/cloud-server.d.ts +3 -0
- package/dist/components/icons/cloud-server.d.ts.map +1 -0
- package/dist/components/icons/cloud-server.js +5 -0
- package/dist/components/icons/cloud-server.js.map +1 -0
- package/dist/components/icons/constants.d.ts +3 -0
- package/dist/components/icons/constants.d.ts.map +1 -0
- package/dist/components/icons/constants.js +137 -0
- package/dist/components/icons/constants.js.map +1 -0
- package/dist/components/icons/copy.d.ts +3 -0
- package/dist/components/icons/copy.d.ts.map +1 -0
- package/dist/components/icons/copy.js +5 -0
- package/dist/components/icons/copy.js.map +1 -0
- package/dist/components/icons/document-solid.d.ts +3 -0
- package/dist/components/icons/document-solid.d.ts.map +1 -0
- package/dist/components/icons/document-solid.js +5 -0
- package/dist/components/icons/document-solid.js.map +1 -0
- package/dist/components/icons/document.d.ts +3 -0
- package/dist/components/icons/document.d.ts.map +1 -0
- package/dist/components/icons/document.js +5 -0
- package/dist/components/icons/document.js.map +1 -0
- package/dist/components/icons/download.d.ts +3 -0
- package/dist/components/icons/download.d.ts.map +1 -0
- package/dist/components/icons/download.js +5 -0
- package/dist/components/icons/download.js.map +1 -0
- package/dist/components/icons/ellipses.d.ts +3 -0
- package/dist/components/icons/ellipses.d.ts.map +1 -0
- package/dist/components/icons/ellipses.js +5 -0
- package/dist/components/icons/ellipses.js.map +1 -0
- package/dist/components/icons/error-solid.d.ts +3 -0
- package/dist/components/icons/error-solid.d.ts.map +1 -0
- package/dist/components/icons/error-solid.js +5 -0
- package/dist/components/icons/error-solid.js.map +1 -0
- package/dist/components/icons/error.d.ts +3 -0
- package/dist/components/icons/error.d.ts.map +1 -0
- package/dist/components/icons/error.js +5 -0
- package/dist/components/icons/error.js.map +1 -0
- package/dist/components/icons/eye-slash.d.ts +3 -0
- package/dist/components/icons/eye-slash.d.ts.map +1 -0
- package/dist/components/icons/eye-slash.js +5 -0
- package/dist/components/icons/eye-slash.js.map +1 -0
- package/dist/components/icons/eye.d.ts +3 -0
- package/dist/components/icons/eye.d.ts.map +1 -0
- package/dist/components/icons/eye.js +5 -0
- package/dist/components/icons/eye.js.map +1 -0
- package/dist/components/icons/folder.d.ts +3 -0
- package/dist/components/icons/folder.d.ts.map +1 -0
- package/dist/components/icons/folder.js +5 -0
- package/dist/components/icons/folder.js.map +1 -0
- package/dist/components/icons/galaxy-rack.d.ts +3 -0
- package/dist/components/icons/galaxy-rack.d.ts.map +1 -0
- package/dist/components/icons/galaxy-rack.js +5 -0
- package/dist/components/icons/galaxy-rack.js.map +1 -0
- package/dist/components/icons/galaxy.d.ts +3 -0
- package/dist/components/icons/galaxy.d.ts.map +1 -0
- package/dist/components/icons/galaxy.js +5 -0
- package/dist/components/icons/galaxy.js.map +1 -0
- package/dist/components/icons/gear-solid.d.ts +3 -0
- package/dist/components/icons/gear-solid.d.ts.map +1 -0
- package/dist/components/icons/gear-solid.js +5 -0
- package/dist/components/icons/gear-solid.js.map +1 -0
- package/dist/components/icons/gear.d.ts +3 -0
- package/dist/components/icons/gear.d.ts.map +1 -0
- package/dist/components/icons/gear.js +5 -0
- package/dist/components/icons/gear.js.map +1 -0
- package/dist/components/icons/globe.d.ts +3 -0
- package/dist/components/icons/globe.d.ts.map +1 -0
- package/dist/components/icons/globe.js +5 -0
- package/dist/components/icons/globe.js.map +1 -0
- package/dist/components/icons/grid.d.ts +3 -0
- package/dist/components/icons/grid.d.ts.map +1 -0
- package/dist/components/icons/grid.js +5 -0
- package/dist/components/icons/grid.js.map +1 -0
- package/dist/components/icons/icon.d.ts +7 -0
- package/dist/components/icons/icon.d.ts.map +1 -0
- package/dist/components/icons/icon.js +9 -0
- package/dist/components/icons/icon.js.map +1 -0
- package/dist/components/icons/icons.d.ts +131 -0
- package/dist/components/icons/icons.d.ts.map +1 -0
- package/dist/components/icons/icons.js +137 -0
- package/dist/components/icons/icons.js.map +1 -0
- package/dist/components/icons/info-solid.d.ts +3 -0
- package/dist/components/icons/info-solid.d.ts.map +1 -0
- package/dist/components/icons/info-solid.js +5 -0
- package/dist/components/icons/info-solid.js.map +1 -0
- package/dist/components/icons/info.d.ts +3 -0
- package/dist/components/icons/info.d.ts.map +1 -0
- package/dist/components/icons/info.js +5 -0
- package/dist/components/icons/info.js.map +1 -0
- package/dist/components/icons/link.d.ts +3 -0
- package/dist/components/icons/link.d.ts.map +1 -0
- package/dist/components/icons/link.js +5 -0
- package/dist/components/icons/link.js.map +1 -0
- package/dist/components/icons/list.d.ts +3 -0
- package/dist/components/icons/list.d.ts.map +1 -0
- package/dist/components/icons/list.js +5 -0
- package/dist/components/icons/list.js.map +1 -0
- package/dist/components/icons/location.d.ts +3 -0
- package/dist/components/icons/location.d.ts.map +1 -0
- package/dist/components/icons/location.js +5 -0
- package/dist/components/icons/location.js.map +1 -0
- package/dist/components/icons/lock-fill.d.ts +3 -0
- package/dist/components/icons/lock-fill.d.ts.map +1 -0
- package/dist/components/icons/lock-fill.js +5 -0
- package/dist/components/icons/lock-fill.js.map +1 -0
- package/dist/components/icons/lock.d.ts +3 -0
- package/dist/components/icons/lock.d.ts.map +1 -0
- package/dist/components/icons/lock.js +5 -0
- package/dist/components/icons/lock.js.map +1 -0
- package/dist/components/icons/loudbox.d.ts +3 -0
- package/dist/components/icons/loudbox.d.ts.map +1 -0
- package/dist/components/icons/loudbox.js +5 -0
- package/dist/components/icons/loudbox.js.map +1 -0
- package/dist/components/icons/menu.d.ts +3 -0
- package/dist/components/icons/menu.d.ts.map +1 -0
- package/dist/components/icons/menu.js +5 -0
- package/dist/components/icons/menu.js.map +1 -0
- package/dist/components/icons/microphone.d.ts +3 -0
- package/dist/components/icons/microphone.d.ts.map +1 -0
- package/dist/components/icons/microphone.js +5 -0
- package/dist/components/icons/microphone.js.map +1 -0
- package/dist/components/icons/minus.d.ts +3 -0
- package/dist/components/icons/minus.d.ts.map +1 -0
- package/dist/components/icons/minus.js +5 -0
- package/dist/components/icons/minus.js.map +1 -0
- package/dist/components/icons/mode-dark.d.ts +3 -0
- package/dist/components/icons/mode-dark.d.ts.map +1 -0
- package/dist/components/icons/mode-dark.js +5 -0
- package/dist/components/icons/mode-dark.js.map +1 -0
- package/dist/components/icons/mode-light.d.ts +3 -0
- package/dist/components/icons/mode-light.d.ts.map +1 -0
- package/dist/components/icons/mode-light.js +5 -0
- package/dist/components/icons/mode-light.js.map +1 -0
- package/dist/components/icons/mode-system.d.ts +3 -0
- package/dist/components/icons/mode-system.d.ts.map +1 -0
- package/dist/components/icons/mode-system.js +5 -0
- package/dist/components/icons/mode-system.js.map +1 -0
- package/dist/components/icons/model-deepseek-color.d.ts +3 -0
- package/dist/components/icons/model-deepseek-color.d.ts.map +1 -0
- package/dist/components/icons/model-deepseek-color.js +5 -0
- package/dist/components/icons/model-deepseek-color.js.map +1 -0
- package/dist/components/icons/model-deepseek.d.ts +3 -0
- package/dist/components/icons/model-deepseek.d.ts.map +1 -0
- package/dist/components/icons/model-deepseek.js +5 -0
- package/dist/components/icons/model-deepseek.js.map +1 -0
- package/dist/components/icons/model-falcon-color.d.ts +3 -0
- package/dist/components/icons/model-falcon-color.d.ts.map +1 -0
- package/dist/components/icons/model-falcon-color.js +5 -0
- package/dist/components/icons/model-falcon-color.js.map +1 -0
- package/dist/components/icons/model-falcon.d.ts +3 -0
- package/dist/components/icons/model-falcon.d.ts.map +1 -0
- package/dist/components/icons/model-falcon.js +5 -0
- package/dist/components/icons/model-falcon.js.map +1 -0
- package/dist/components/icons/model-google-color.d.ts +3 -0
- package/dist/components/icons/model-google-color.d.ts.map +1 -0
- package/dist/components/icons/model-google-color.js +5 -0
- package/dist/components/icons/model-google-color.js.map +1 -0
- package/dist/components/icons/model-google.d.ts +3 -0
- package/dist/components/icons/model-google.d.ts.map +1 -0
- package/dist/components/icons/model-google.js +5 -0
- package/dist/components/icons/model-google.js.map +1 -0
- package/dist/components/icons/model-llama-color.d.ts +3 -0
- package/dist/components/icons/model-llama-color.d.ts.map +1 -0
- package/dist/components/icons/model-llama-color.js +5 -0
- package/dist/components/icons/model-llama-color.js.map +1 -0
- package/dist/components/icons/model-llama.d.ts +3 -0
- package/dist/components/icons/model-llama.d.ts.map +1 -0
- package/dist/components/icons/model-llama.js +5 -0
- package/dist/components/icons/model-llama.js.map +1 -0
- package/dist/components/icons/model-openai.d.ts +3 -0
- package/dist/components/icons/model-openai.d.ts.map +1 -0
- package/dist/components/icons/model-openai.js +5 -0
- package/dist/components/icons/model-openai.js.map +1 -0
- package/dist/components/icons/model-qwen-color.d.ts +3 -0
- package/dist/components/icons/model-qwen-color.d.ts.map +1 -0
- package/dist/components/icons/model-qwen-color.js +5 -0
- package/dist/components/icons/model-qwen-color.js.map +1 -0
- package/dist/components/icons/model-qwen.d.ts +3 -0
- package/dist/components/icons/model-qwen.d.ts.map +1 -0
- package/dist/components/icons/model-qwen.js +5 -0
- package/dist/components/icons/model-qwen.js.map +1 -0
- package/dist/components/icons/monitor.d.ts +3 -0
- package/dist/components/icons/monitor.d.ts.map +1 -0
- package/dist/components/icons/monitor.js +5 -0
- package/dist/components/icons/monitor.js.map +1 -0
- package/dist/components/icons/open-panel.d.ts +3 -0
- package/dist/components/icons/open-panel.d.ts.map +1 -0
- package/dist/components/icons/open-panel.js +5 -0
- package/dist/components/icons/open-panel.js.map +1 -0
- package/dist/components/icons/org-developer.d.ts +3 -0
- package/dist/components/icons/org-developer.d.ts.map +1 -0
- package/dist/components/icons/org-developer.js +5 -0
- package/dist/components/icons/org-developer.js.map +1 -0
- package/dist/components/icons/org-experience.d.ts +3 -0
- package/dist/components/icons/org-experience.d.ts.map +1 -0
- package/dist/components/icons/org-experience.js +5 -0
- package/dist/components/icons/org-experience.js.map +1 -0
- package/dist/components/icons/org-operations.d.ts +3 -0
- package/dist/components/icons/org-operations.d.ts.map +1 -0
- package/dist/components/icons/org-operations.js +5 -0
- package/dist/components/icons/org-operations.js.map +1 -0
- package/dist/components/icons/org-systems.d.ts +3 -0
- package/dist/components/icons/org-systems.d.ts.map +1 -0
- package/dist/components/icons/org-systems.js +5 -0
- package/dist/components/icons/org-systems.js.map +1 -0
- package/dist/components/icons/org-university.d.ts +3 -0
- package/dist/components/icons/org-university.d.ts.map +1 -0
- package/dist/components/icons/org-university.js +5 -0
- package/dist/components/icons/org-university.js.map +1 -0
- package/dist/components/icons/phone.d.ts +3 -0
- package/dist/components/icons/phone.d.ts.map +1 -0
- package/dist/components/icons/phone.js +5 -0
- package/dist/components/icons/phone.js.map +1 -0
- package/dist/components/icons/quasar.d.ts +3 -0
- package/dist/components/icons/quasar.d.ts.map +1 -0
- package/dist/components/icons/quasar.js +5 -0
- package/dist/components/icons/quasar.js.map +1 -0
- package/dist/components/icons/quietbox.d.ts +3 -0
- package/dist/components/icons/quietbox.d.ts.map +1 -0
- package/dist/components/icons/quietbox.js +5 -0
- package/dist/components/icons/quietbox.js.map +1 -0
- package/dist/components/icons/registry.d.ts +6 -0
- package/dist/components/icons/registry.d.ts.map +1 -0
- package/dist/components/icons/registry.js +264 -0
- package/dist/components/icons/registry.js.map +1 -0
- package/dist/components/icons/reset.d.ts +3 -0
- package/dist/components/icons/reset.d.ts.map +1 -0
- package/dist/components/icons/reset.js +5 -0
- package/dist/components/icons/reset.js.map +1 -0
- package/dist/components/icons/search.d.ts +3 -0
- package/dist/components/icons/search.d.ts.map +1 -0
- package/dist/components/icons/search.js +5 -0
- package/dist/components/icons/search.js.map +1 -0
- package/dist/components/icons/server-solid.d.ts +3 -0
- package/dist/components/icons/server-solid.d.ts.map +1 -0
- package/dist/components/icons/server-solid.js +5 -0
- package/dist/components/icons/server-solid.js.map +1 -0
- package/dist/components/icons/server.d.ts +3 -0
- package/dist/components/icons/server.d.ts.map +1 -0
- package/dist/components/icons/server.js +5 -0
- package/dist/components/icons/server.js.map +1 -0
- package/dist/components/icons/shield-solid.d.ts +3 -0
- package/dist/components/icons/shield-solid.d.ts.map +1 -0
- package/dist/components/icons/shield-solid.js +5 -0
- package/dist/components/icons/shield-solid.js.map +1 -0
- package/dist/components/icons/shield.d.ts +3 -0
- package/dist/components/icons/shield.d.ts.map +1 -0
- package/dist/components/icons/shield.js +5 -0
- package/dist/components/icons/shield.js.map +1 -0
- package/dist/components/icons/sidebar.d.ts +3 -0
- package/dist/components/icons/sidebar.d.ts.map +1 -0
- package/dist/components/icons/sidebar.js +5 -0
- package/dist/components/icons/sidebar.js.map +1 -0
- package/dist/components/icons/size.d.ts +3 -0
- package/dist/components/icons/size.d.ts.map +1 -0
- package/dist/components/icons/size.js +5 -0
- package/dist/components/icons/size.js.map +1 -0
- package/dist/components/icons/social-discord.d.ts +3 -0
- package/dist/components/icons/social-discord.d.ts.map +1 -0
- package/dist/components/icons/social-discord.js +5 -0
- package/dist/components/icons/social-discord.js.map +1 -0
- package/dist/components/icons/social-facebook.d.ts +3 -0
- package/dist/components/icons/social-facebook.d.ts.map +1 -0
- package/dist/components/icons/social-facebook.js +5 -0
- package/dist/components/icons/social-facebook.js.map +1 -0
- package/dist/components/icons/social-github.d.ts +3 -0
- package/dist/components/icons/social-github.d.ts.map +1 -0
- package/dist/components/icons/social-github.js +5 -0
- package/dist/components/icons/social-github.js.map +1 -0
- package/dist/components/icons/social-linkedin.d.ts +3 -0
- package/dist/components/icons/social-linkedin.d.ts.map +1 -0
- package/dist/components/icons/social-linkedin.js +5 -0
- package/dist/components/icons/social-linkedin.js.map +1 -0
- package/dist/components/icons/social-x.d.ts +3 -0
- package/dist/components/icons/social-x.d.ts.map +1 -0
- package/dist/components/icons/social-x.js +5 -0
- package/dist/components/icons/social-x.js.map +1 -0
- package/dist/components/icons/social-youtube.d.ts +3 -0
- package/dist/components/icons/social-youtube.d.ts.map +1 -0
- package/dist/components/icons/social-youtube.js +5 -0
- package/dist/components/icons/social-youtube.js.map +1 -0
- package/dist/components/icons/spinner.d.ts +3 -0
- package/dist/components/icons/spinner.d.ts.map +1 -0
- package/dist/components/icons/spinner.js +5 -0
- package/dist/components/icons/spinner.js.map +1 -0
- package/dist/components/icons/success-solid.d.ts +3 -0
- package/dist/components/icons/success-solid.d.ts.map +1 -0
- package/dist/components/icons/success-solid.js +5 -0
- package/dist/components/icons/success-solid.js.map +1 -0
- package/dist/components/icons/success.d.ts +3 -0
- package/dist/components/icons/success.d.ts.map +1 -0
- package/dist/components/icons/success.js +5 -0
- package/dist/components/icons/success.js.map +1 -0
- package/dist/components/icons/tensix.d.ts +3 -0
- package/dist/components/icons/tensix.d.ts.map +1 -0
- package/dist/components/icons/tensix.js +5 -0
- package/dist/components/icons/tensix.js.map +1 -0
- package/dist/components/icons/tenstorrent.d.ts +3 -0
- package/dist/components/icons/tenstorrent.d.ts.map +1 -0
- package/dist/components/icons/tenstorrent.js +5 -0
- package/dist/components/icons/tenstorrent.js.map +1 -0
- package/dist/components/icons/trash-solid.d.ts +3 -0
- package/dist/components/icons/trash-solid.d.ts.map +1 -0
- package/dist/components/icons/trash-solid.js +5 -0
- package/dist/components/icons/trash-solid.js.map +1 -0
- package/dist/components/icons/trash.d.ts +3 -0
- package/dist/components/icons/trash.d.ts.map +1 -0
- package/dist/components/icons/trash.js +5 -0
- package/dist/components/icons/trash.js.map +1 -0
- package/dist/components/icons/tt-forge-fe.d.ts +3 -0
- package/dist/components/icons/tt-forge-fe.d.ts.map +1 -0
- package/dist/components/icons/tt-forge-fe.js +5 -0
- package/dist/components/icons/tt-forge-fe.js.map +1 -0
- package/dist/components/icons/tt-forge.d.ts +3 -0
- package/dist/components/icons/tt-forge.d.ts.map +1 -0
- package/dist/components/icons/tt-forge.js +5 -0
- package/dist/components/icons/tt-forge.js.map +1 -0
- package/dist/components/icons/tt-lang.d.ts +3 -0
- package/dist/components/icons/tt-lang.d.ts.map +1 -0
- package/dist/components/icons/tt-lang.js +5 -0
- package/dist/components/icons/tt-lang.js.map +1 -0
- package/dist/components/icons/tt-llk.d.ts +3 -0
- package/dist/components/icons/tt-llk.d.ts.map +1 -0
- package/dist/components/icons/tt-llk.js +5 -0
- package/dist/components/icons/tt-llk.js.map +1 -0
- package/dist/components/icons/tt-metalium.d.ts +3 -0
- package/dist/components/icons/tt-metalium.d.ts.map +1 -0
- package/dist/components/icons/tt-metalium.js +5 -0
- package/dist/components/icons/tt-metalium.js.map +1 -0
- package/dist/components/icons/tt-nn.d.ts +3 -0
- package/dist/components/icons/tt-nn.d.ts.map +1 -0
- package/dist/components/icons/tt-nn.js +5 -0
- package/dist/components/icons/tt-nn.js.map +1 -0
- package/dist/components/icons/tt-torch.d.ts +3 -0
- package/dist/components/icons/tt-torch.d.ts.map +1 -0
- package/dist/components/icons/tt-torch.js +5 -0
- package/dist/components/icons/tt-torch.js.map +1 -0
- package/dist/components/icons/tt-xla.d.ts +3 -0
- package/dist/components/icons/tt-xla.d.ts.map +1 -0
- package/dist/components/icons/tt-xla.js +5 -0
- package/dist/components/icons/tt-xla.js.map +1 -0
- package/dist/components/icons/types.d.ts +2 -0
- package/dist/components/icons/types.d.ts.map +1 -0
- package/dist/components/icons/types.js +9 -0
- package/dist/components/icons/types.js.map +1 -0
- package/dist/components/icons/upload.d.ts +3 -0
- package/dist/components/icons/upload.d.ts.map +1 -0
- package/dist/components/icons/upload.js +5 -0
- package/dist/components/icons/upload.js.map +1 -0
- package/dist/components/icons/user-multiple-solid.d.ts +3 -0
- package/dist/components/icons/user-multiple-solid.d.ts.map +1 -0
- package/dist/components/icons/user-multiple-solid.js +5 -0
- package/dist/components/icons/user-multiple-solid.js.map +1 -0
- package/dist/components/icons/user-multiple.d.ts +3 -0
- package/dist/components/icons/user-multiple.d.ts.map +1 -0
- package/dist/components/icons/user-multiple.js +5 -0
- package/dist/components/icons/user-multiple.js.map +1 -0
- package/dist/components/icons/user-solid.d.ts +3 -0
- package/dist/components/icons/user-solid.d.ts.map +1 -0
- package/dist/components/icons/user-solid.js +5 -0
- package/dist/components/icons/user-solid.js.map +1 -0
- package/dist/components/icons/user.d.ts +3 -0
- package/dist/components/icons/user.d.ts.map +1 -0
- package/dist/components/icons/user.js +5 -0
- package/dist/components/icons/user.js.map +1 -0
- package/dist/components/icons/warning-solid.d.ts +3 -0
- package/dist/components/icons/warning-solid.d.ts.map +1 -0
- package/dist/components/icons/warning-solid.js +5 -0
- package/dist/components/icons/warning-solid.js.map +1 -0
- package/dist/components/icons/warning.d.ts +3 -0
- package/dist/components/icons/warning.d.ts.map +1 -0
- package/dist/components/icons/warning.js +5 -0
- package/dist/components/icons/warning.js.map +1 -0
- package/dist/components/icons/wormhole.d.ts +3 -0
- package/dist/components/icons/wormhole.d.ts.map +1 -0
- package/dist/components/icons/wormhole.js +5 -0
- package/dist/components/icons/wormhole.js.map +1 -0
- package/dist/components/masked-input/getMaskitoOptions.d.ts +4 -0
- package/dist/components/masked-input/getMaskitoOptions.d.ts.map +1 -0
- package/dist/components/masked-input/getMaskitoOptions.js +27 -0
- package/dist/components/masked-input/getMaskitoOptions.js.map +1 -0
- package/dist/components/masked-input/masked-input.d.ts +68 -0
- package/dist/components/masked-input/masked-input.d.ts.map +1 -0
- package/dist/components/masked-input/masked-input.js +68 -0
- package/dist/components/masked-input/masked-input.js.map +1 -0
- package/dist/components/material/material.css +1 -0
- package/dist/components/material/material.d.ts +43 -0
- package/dist/components/material/material.d.ts.map +1 -0
- package/dist/components/material/material.js +43 -0
- package/dist/components/material/material.js.map +1 -0
- package/dist/components/menu/menu.css +1 -0
- package/dist/components/menu/menu.d.ts +75 -0
- package/dist/components/menu/menu.d.ts.map +1 -0
- package/dist/components/menu/menu.js +56 -0
- package/dist/components/menu/menu.js.map +1 -0
- package/dist/components/modal/modal.css +1 -0
- package/dist/components/modal/modal.d.ts +83 -0
- package/dist/components/modal/modal.d.ts.map +1 -0
- package/dist/components/modal/modal.js +118 -0
- package/dist/components/modal/modal.js.map +1 -0
- package/dist/components/progress-bar/progress-bar.css +1 -0
- package/dist/components/progress-bar/progress-bar.d.ts +38 -0
- package/dist/components/progress-bar/progress-bar.d.ts.map +1 -0
- package/dist/components/progress-bar/progress-bar.js +39 -0
- package/dist/components/progress-bar/progress-bar.js.map +1 -0
- package/dist/components/radio-group/radio-group.css +1 -0
- package/dist/components/radio-group/radio-group.d.ts +70 -0
- package/dist/components/radio-group/radio-group.d.ts.map +1 -0
- package/dist/components/radio-group/radio-group.js +61 -0
- package/dist/components/radio-group/radio-group.js.map +1 -0
- package/dist/components/range/range.css +1 -0
- package/dist/components/range/range.d.ts +86 -0
- package/dist/components/range/range.d.ts.map +1 -0
- package/dist/components/range/range.js +87 -0
- package/dist/components/range/range.js.map +1 -0
- package/dist/components/select/select.css +1 -0
- package/dist/components/select/select.d.ts +82 -0
- package/dist/components/select/select.d.ts.map +1 -0
- package/dist/components/select/select.js +79 -0
- package/dist/components/select/select.js.map +1 -0
- package/dist/components/sheet/sheet.css +1 -0
- package/dist/components/sheet/sheet.d.ts +71 -0
- package/dist/components/sheet/sheet.d.ts.map +1 -0
- package/dist/components/sheet/sheet.js +116 -0
- package/dist/components/sheet/sheet.js.map +1 -0
- package/dist/components/show-more/show-more.css +1 -0
- package/dist/components/show-more/show-more.d.ts +28 -0
- package/dist/components/show-more/show-more.d.ts.map +1 -0
- package/dist/components/show-more/show-more.js +26 -0
- package/dist/components/show-more/show-more.js.map +1 -0
- package/dist/components/skeleton/skeleton.css +1 -0
- package/dist/components/skeleton/skeleton.d.ts +39 -0
- package/dist/components/skeleton/skeleton.d.ts.map +1 -0
- package/dist/components/skeleton/skeleton.js +36 -0
- package/dist/components/skeleton/skeleton.js.map +1 -0
- package/dist/components/slider/slider.d.ts +69 -0
- package/dist/components/slider/slider.d.ts.map +1 -0
- package/dist/components/slider/slider.js +61 -0
- package/dist/components/slider/slider.js.map +1 -0
- package/dist/components/snippet/snippet.css +1 -0
- package/dist/components/snippet/snippet.d.ts +28 -0
- package/dist/components/snippet/snippet.d.ts.map +1 -0
- package/dist/components/snippet/snippet.js +44 -0
- package/dist/components/snippet/snippet.js.map +1 -0
- package/dist/components/split-button/split-button.css +1 -0
- package/dist/components/split-button/split-button.d.ts +78 -0
- package/dist/components/split-button/split-button.d.ts.map +1 -0
- package/dist/components/split-button/split-button.js +65 -0
- package/dist/components/split-button/split-button.js.map +1 -0
- package/dist/components/status-indicator/status-indicator.css +1 -0
- package/dist/components/status-indicator/status-indicator.d.ts +35 -0
- package/dist/components/status-indicator/status-indicator.d.ts.map +1 -0
- package/dist/components/status-indicator/status-indicator.js +33 -0
- package/dist/components/status-indicator/status-indicator.js.map +1 -0
- package/dist/components/switch/switch.css +1 -0
- package/dist/components/switch/switch.d.ts +41 -0
- package/dist/components/switch/switch.d.ts.map +1 -0
- package/dist/components/switch/switch.js +46 -0
- package/dist/components/switch/switch.js.map +1 -0
- package/dist/components/tabs/tabs.css +1 -0
- package/dist/components/tabs/tabs.d.ts +60 -0
- package/dist/components/tabs/tabs.d.ts.map +1 -0
- package/dist/components/tabs/tabs.js +51 -0
- package/dist/components/tabs/tabs.js.map +1 -0
- package/dist/components/tag/tag.css +1 -0
- package/dist/components/tag/tag.d.ts +42 -0
- package/dist/components/tag/tag.d.ts.map +1 -0
- package/dist/components/tag/tag.js +48 -0
- package/dist/components/tag/tag.js.map +1 -0
- package/dist/components/text-area/text-area.css +1 -0
- package/dist/components/text-area/text-area.d.ts +35 -0
- package/dist/components/text-area/text-area.d.ts.map +1 -0
- package/dist/components/text-area/text-area.js +47 -0
- package/dist/components/text-area/text-area.js.map +1 -0
- package/dist/components/text-button/text-button.css +1 -0
- package/dist/components/text-button/text-button.d.ts +46 -0
- package/dist/components/text-button/text-button.d.ts.map +1 -0
- package/dist/components/text-button/text-button.js +46 -0
- package/dist/components/text-button/text-button.js.map +1 -0
- package/dist/components/text-input/text-input.css +1 -0
- package/dist/components/text-input/text-input.d.ts +57 -0
- package/dist/components/text-input/text-input.d.ts.map +1 -0
- package/dist/components/text-input/text-input.js +54 -0
- package/dist/components/text-input/text-input.js.map +1 -0
- package/dist/components/theme-switcher/theme-switcher.css +1 -0
- package/dist/components/theme-switcher/theme-switcher.d.ts +23 -0
- package/dist/components/theme-switcher/theme-switcher.d.ts.map +1 -0
- package/dist/components/theme-switcher/theme-switcher.js +24 -0
- package/dist/components/theme-switcher/theme-switcher.js.map +1 -0
- package/dist/components/toast/animations.d.ts +3 -0
- package/dist/components/toast/animations.d.ts.map +1 -0
- package/dist/components/toast/animations.js +28 -0
- package/dist/components/toast/animations.js.map +1 -0
- package/dist/components/toast/store.d.ts +77 -0
- package/dist/components/toast/store.d.ts.map +1 -0
- package/dist/components/toast/store.js +94 -0
- package/dist/components/toast/store.js.map +1 -0
- package/dist/components/toast/toast.css +1 -0
- package/dist/components/toast/toast.d.ts +32 -0
- package/dist/components/toast/toast.d.ts.map +1 -0
- package/dist/components/toast/toast.js +202 -0
- package/dist/components/toast/toast.js.map +1 -0
- package/dist/components/toast/utils.d.ts +10 -0
- package/dist/components/toast/utils.d.ts.map +1 -0
- package/dist/components/toast/utils.js +26 -0
- package/dist/components/toast/utils.js.map +1 -0
- package/dist/components/toggle/toggle.css +1 -0
- package/dist/components/toggle/toggle.d.ts +82 -0
- package/dist/components/toggle/toggle.d.ts.map +1 -0
- package/dist/components/toggle/toggle.js +129 -0
- package/dist/components/toggle/toggle.js.map +1 -0
- package/dist/components/tooltip/tooltip.css +1 -0
- package/dist/components/tooltip/tooltip.d.ts +58 -0
- package/dist/components/tooltip/tooltip.d.ts.map +1 -0
- package/dist/components/tooltip/tooltip.js +52 -0
- package/dist/components/tooltip/tooltip.js.map +1 -0
- package/dist/components/typography/typography.css +1 -0
- package/dist/components/typography/typography.d.ts +33 -0
- package/dist/components/typography/typography.d.ts.map +1 -0
- package/dist/components/typography/typography.js +63 -0
- package/dist/components/typography/typography.js.map +1 -0
- package/dist/styles/animation.css +1 -0
- package/dist/styles/backgrounds.css +1 -0
- package/dist/styles/colors.css +1 -0
- package/dist/styles/fonts.css +1 -0
- package/dist/styles/globals.css +1 -0
- package/dist/styles/leading.css +1 -0
- package/dist/styles/radius.css +1 -0
- package/dist/styles/shadows.css +1 -0
- package/dist/styles/spacing.css +1 -0
- package/dist/styles/strokes.css +1 -0
- package/dist/styles/styles.css +1 -0
- package/dist/styles/tailwind-utilities.css +1 -0
- package/dist/styles/tailwind.css +1 -0
- package/dist/styles/tracking.css +1 -0
- package/dist/utils/cn.d.ts +2 -0
- package/dist/utils/cn.d.ts.map +1 -0
- package/dist/utils/cn.js +2 -0
- package/dist/utils/cn.js.map +1 -0
- package/dist/utils/generateId.d.ts +5 -0
- package/dist/utils/generateId.d.ts.map +1 -0
- package/dist/utils/generateId.js +21 -0
- package/dist/utils/generateId.js.map +1 -0
- package/dist/utils/getDisabledProps.d.ts +42 -0
- package/dist/utils/getDisabledProps.d.ts.map +1 -0
- package/dist/utils/getDisabledProps.js +36 -0
- package/dist/utils/getDisabledProps.js.map +1 -0
- package/dist/utils/getPortalContainer.d.ts +27 -0
- package/dist/utils/getPortalContainer.d.ts.map +1 -0
- package/dist/utils/getPortalContainer.js +21 -0
- package/dist/utils/getPortalContainer.js.map +1 -0
- package/dist/utils/hooks/useBaseRemSize.d.ts +9 -0
- package/dist/utils/hooks/useBaseRemSize.d.ts.map +1 -0
- package/dist/utils/hooks/useBaseRemSize.js +55 -0
- package/dist/utils/hooks/useBaseRemSize.js.map +1 -0
- package/dist/utils/hooks/useMergedRefs.d.ts +11 -0
- package/dist/utils/hooks/useMergedRefs.d.ts.map +1 -0
- package/dist/utils/hooks/useMergedRefs.js +96 -0
- package/dist/utils/hooks/useMergedRefs.js.map +1 -0
- package/dist/utils/isSingleReactElement.d.ts +3 -0
- package/dist/utils/isSingleReactElement.d.ts.map +1 -0
- package/dist/utils/isSingleReactElement.js +5 -0
- package/dist/utils/isSingleReactElement.js.map +1 -0
- package/dist/utils/polymorphic.d.ts +43 -0
- package/dist/utils/polymorphic.d.ts.map +1 -0
- package/dist/utils/polymorphic.js +2 -0
- package/dist/utils/polymorphic.js.map +1 -0
- package/dist/utils/splitFormInputProps.d.ts +119 -0
- package/dist/utils/splitFormInputProps.d.ts.map +1 -0
- package/dist/utils/splitFormInputProps.js +277 -0
- package/dist/utils/splitFormInputProps.js.map +1 -0
- package/package.json +266 -0
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { cn } from "../../utils/cn.js";
|
|
3
|
+
export const SKELETON_SHAPES = ["box", "pill", "circle"];
|
|
4
|
+
/**
|
|
5
|
+
* A placeholder loading element that displays an animated shimmer overlay in configurable shapes and sizes.
|
|
6
|
+
*
|
|
7
|
+
* @param {SkeletonShape} [props.shape] - (optional) The shape of the skeleton placeholder. @default box
|
|
8
|
+
* @param {number | string} [props.size] - (optional) Sets both width and height simultaneously
|
|
9
|
+
* @param {number | string} [props.width] - (optional) The width of the skeleton
|
|
10
|
+
* @param {number | string} [props.height] - (optional) The height of the skeleton
|
|
11
|
+
* @param {boolean} [props.show] - (optional) Whether to render the skeleton overlay. @default true
|
|
12
|
+
*
|
|
13
|
+
* You may also pass any additional props to the underlying `div` element
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* <Skeleton width={200} height={20} />
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* <Skeleton shape="circle" size={48} />
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* <Skeleton show={isLoading}>
|
|
23
|
+
* <Avatar src={user.avatar} />
|
|
24
|
+
* </Skeleton>
|
|
25
|
+
*/
|
|
26
|
+
export function Skeleton(props) {
|
|
27
|
+
const { className, shape = "box", width, height, size, show = true, children, style, ...rest } = props;
|
|
28
|
+
if (!show)
|
|
29
|
+
return children;
|
|
30
|
+
return (_jsxs("div", { className: cn("vesper-skeleton", `vesper-skeleton-${shape}`, className), style: {
|
|
31
|
+
width: size ?? width,
|
|
32
|
+
height: size ?? height,
|
|
33
|
+
...style,
|
|
34
|
+
}, ...rest, children: [children, _jsx("div", { className: "vesper-skeleton-overlay" })] }));
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=skeleton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skeleton.js","sourceRoot":"","sources":["../../../src/components/skeleton/skeleton.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAEhC,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAU,CAAC;AAiBlE;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,QAAQ,CAAC,KAAoB;IAC3C,MAAM,EACJ,SAAS,EACT,KAAK,GAAG,KAAK,EACb,KAAK,EACL,MAAM,EACN,IAAI,EACJ,IAAI,GAAG,IAAI,EACX,QAAQ,EACR,KAAK,EACL,GAAG,IAAI,EACR,GAAG,KAAK,CAAC;IAEV,IAAI,CAAC,IAAI;QAAE,OAAO,QAAQ,CAAC;IAE3B,OAAO,CACL,eACE,SAAS,EAAE,EAAE,CAAC,iBAAiB,EAAE,mBAAmB,KAAK,EAAE,EAAE,SAAS,CAAC,EACvE,KAAK,EAAE;YACL,KAAK,EAAE,IAAI,IAAI,KAAK;YACpB,MAAM,EAAE,IAAI,IAAI,MAAM;YACtB,GAAG,KAAK;SACT,KACG,IAAI,aAEP,QAAQ,EACT,cAAK,SAAS,EAAC,yBAAyB,GAAG,IACvC,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { type RangeProps } from "../range/range.js";
|
|
2
|
+
export interface SliderProps extends Omit<RangeProps, "values" | "variant" | "valueLabels" | "thumbAriaLabels" | "showValueLabels" | "defaultValues" | "onValuesChange" | "onValuesCommit" | "minStepsBetweenThumbs"> {
|
|
3
|
+
/** The value of the slider thumb (controlled mode). */
|
|
4
|
+
value?: number;
|
|
5
|
+
/** A custom display label for the thumb, shown as a tooltip-style label above it. When unset, defaults to the active value of the slider. */
|
|
6
|
+
valueLabel?: string;
|
|
7
|
+
/** When `true`, displays the value label above the thumb. @default false */
|
|
8
|
+
showValueLabel?: boolean;
|
|
9
|
+
/** The initial thumb value (uncontrolled mode). @default props.min */
|
|
10
|
+
defaultValue?: number;
|
|
11
|
+
/** Callback fired as the thumb value changes during interaction. Receives the current value. */
|
|
12
|
+
onValueChange?(value: number): void;
|
|
13
|
+
/** Callback fired when the thumb interaction is completed (e.g., on pointer up). Receives the final value. */
|
|
14
|
+
onValueCommit?(value: number): void;
|
|
15
|
+
/** The accessible `aria-label` attribute for the thumb. */
|
|
16
|
+
thumbAriaLabel: string;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* A single-thumb slider for selecting a numeric value within a range.
|
|
20
|
+
*
|
|
21
|
+
* @param {string} props.thumbAriaLabel - The accessible `aria-label` for the thumb
|
|
22
|
+
* @param {number} [props.value] - (optional) The value of the thumb (controlled)
|
|
23
|
+
* @param {number} [props.defaultValue] - (optional) The initial thumb value (uncontrolled). @default props.min
|
|
24
|
+
* @param {(value: number) => void} [props.onValueChange] - (optional) Callback fired as the thumb value changes during interaction
|
|
25
|
+
* @param {(value: number) => void} [props.onValueCommit] - (optional) Callback fired when thumb interaction is completed
|
|
26
|
+
* @param {number} [props.min] - (optional) The minimum allowed value. @default 0
|
|
27
|
+
* @param {number} [props.max] - (optional) The maximum allowed value. @default 100
|
|
28
|
+
* @param {number} [props.step] - (optional) The stepping interval. @default 1
|
|
29
|
+
* @param {boolean} [props.showTicks] - (optional) Whether to render tick marks at each step interval. @default false
|
|
30
|
+
* @param {boolean} [props.showValueLabel] - (optional) Whether to display the value label above the thumb. @default false
|
|
31
|
+
* @param {string} [props.valueLabel] - (optional) A custom display label for the thumb, falling back to its current value
|
|
32
|
+
* @param {string} [props.label] - (optional) A label displayed above the track, also used as the accessible name of the slider group
|
|
33
|
+
* @param {string} [props.message] - (optional) A message displayed below the track, linked to the slider via `aria-describedby`
|
|
34
|
+
* @param {boolean} [props.disabled] - (optional) Whether to prevent interaction. @default false
|
|
35
|
+
* @param {string} [props.name] - (optional) The form field name the thumb submits its value under
|
|
36
|
+
*
|
|
37
|
+
* You may also pass any additional props to the underlying `div` element
|
|
38
|
+
*
|
|
39
|
+
* @example
|
|
40
|
+
* <Slider
|
|
41
|
+
* min={0}
|
|
42
|
+
* max={100}
|
|
43
|
+
* defaultValue={50}
|
|
44
|
+
* onValueCommit={(value) => console.log(value)}
|
|
45
|
+
* thumbAriaLabel="Volume"
|
|
46
|
+
* />
|
|
47
|
+
*
|
|
48
|
+
* @example
|
|
49
|
+
* <Slider
|
|
50
|
+
* min={0}
|
|
51
|
+
* max={10}
|
|
52
|
+
* step={1}
|
|
53
|
+
* showTicks
|
|
54
|
+
* showValueLabel
|
|
55
|
+
* value={volume}
|
|
56
|
+
* onValueChange={setVolume}
|
|
57
|
+
* thumbAriaLabel="Volume"
|
|
58
|
+
* />
|
|
59
|
+
*
|
|
60
|
+
* @example
|
|
61
|
+
* <Slider
|
|
62
|
+
* value={workers}
|
|
63
|
+
* onValueChange={setWorkers}
|
|
64
|
+
* aria-invalid
|
|
65
|
+
* thumbAriaLabel="Workers"
|
|
66
|
+
* />
|
|
67
|
+
*/
|
|
68
|
+
export declare function Slider(props: SliderProps): import("react/jsx-runtime").JSX.Element;
|
|
69
|
+
//# sourceMappingURL=slider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slider.d.ts","sourceRoot":"","sources":["../../../src/components/slider/slider.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAS,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAElE,MAAM,WAAW,WAAY,SAAQ,IAAI,CACvC,UAAU,EACR,QAAQ,GACR,SAAS,GACT,aAAa,GACb,iBAAiB,GACjB,iBAAiB,GACjB,eAAe,GACf,gBAAgB,GAChB,gBAAgB,GAChB,uBAAuB,CAC1B;IACC,uDAAuD;IACvD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6IAA6I;IAC7I,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4EAA4E;IAC5E,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,sEAAsE;IACtE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gGAAgG;IAChG,aAAa,CAAC,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,8GAA8G;IAC9G,aAAa,CAAC,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,2DAA2D;IAC3D,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,WAAW,2CAoCxC"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import { useCallback } from "react";
|
|
4
|
+
import { Range } from "../range/range.js";
|
|
5
|
+
/**
|
|
6
|
+
* A single-thumb slider for selecting a numeric value within a range.
|
|
7
|
+
*
|
|
8
|
+
* @param {string} props.thumbAriaLabel - The accessible `aria-label` for the thumb
|
|
9
|
+
* @param {number} [props.value] - (optional) The value of the thumb (controlled)
|
|
10
|
+
* @param {number} [props.defaultValue] - (optional) The initial thumb value (uncontrolled). @default props.min
|
|
11
|
+
* @param {(value: number) => void} [props.onValueChange] - (optional) Callback fired as the thumb value changes during interaction
|
|
12
|
+
* @param {(value: number) => void} [props.onValueCommit] - (optional) Callback fired when thumb interaction is completed
|
|
13
|
+
* @param {number} [props.min] - (optional) The minimum allowed value. @default 0
|
|
14
|
+
* @param {number} [props.max] - (optional) The maximum allowed value. @default 100
|
|
15
|
+
* @param {number} [props.step] - (optional) The stepping interval. @default 1
|
|
16
|
+
* @param {boolean} [props.showTicks] - (optional) Whether to render tick marks at each step interval. @default false
|
|
17
|
+
* @param {boolean} [props.showValueLabel] - (optional) Whether to display the value label above the thumb. @default false
|
|
18
|
+
* @param {string} [props.valueLabel] - (optional) A custom display label for the thumb, falling back to its current value
|
|
19
|
+
* @param {string} [props.label] - (optional) A label displayed above the track, also used as the accessible name of the slider group
|
|
20
|
+
* @param {string} [props.message] - (optional) A message displayed below the track, linked to the slider via `aria-describedby`
|
|
21
|
+
* @param {boolean} [props.disabled] - (optional) Whether to prevent interaction. @default false
|
|
22
|
+
* @param {string} [props.name] - (optional) The form field name the thumb submits its value under
|
|
23
|
+
*
|
|
24
|
+
* You may also pass any additional props to the underlying `div` element
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* <Slider
|
|
28
|
+
* min={0}
|
|
29
|
+
* max={100}
|
|
30
|
+
* defaultValue={50}
|
|
31
|
+
* onValueCommit={(value) => console.log(value)}
|
|
32
|
+
* thumbAriaLabel="Volume"
|
|
33
|
+
* />
|
|
34
|
+
*
|
|
35
|
+
* @example
|
|
36
|
+
* <Slider
|
|
37
|
+
* min={0}
|
|
38
|
+
* max={10}
|
|
39
|
+
* step={1}
|
|
40
|
+
* showTicks
|
|
41
|
+
* showValueLabel
|
|
42
|
+
* value={volume}
|
|
43
|
+
* onValueChange={setVolume}
|
|
44
|
+
* thumbAriaLabel="Volume"
|
|
45
|
+
* />
|
|
46
|
+
*
|
|
47
|
+
* @example
|
|
48
|
+
* <Slider
|
|
49
|
+
* value={workers}
|
|
50
|
+
* onValueChange={setWorkers}
|
|
51
|
+
* aria-invalid
|
|
52
|
+
* thumbAriaLabel="Workers"
|
|
53
|
+
* />
|
|
54
|
+
*/
|
|
55
|
+
export function Slider(props) {
|
|
56
|
+
const { value, valueLabel, defaultValue, onValueChange, onValueCommit, showValueLabel, thumbAriaLabel, min = 0, ...rest } = props;
|
|
57
|
+
const handleValueChange = useCallback(([value]) => onValueChange?.(value), [onValueChange]);
|
|
58
|
+
const handleValueCommit = useCallback(([value]) => onValueCommit?.(value), [onValueCommit]);
|
|
59
|
+
return (_jsx(Range, { values: typeof value === "number" ? [value] : undefined, valueLabels: typeof valueLabel === "string" ? [valueLabel] : undefined, defaultValues: typeof defaultValue === "number" ? [defaultValue] : [min], showValueLabels: showValueLabel, onValuesChange: handleValueChange, onValuesCommit: handleValueCommit, thumbAriaLabels: [thumbAriaLabel], min: min, ...rest }));
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=slider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slider.js","sourceRoot":"","sources":["../../../src/components/slider/slider.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAEpC,OAAO,EAAE,KAAK,EAAmB,MAAM,0BAA0B,CAAC;AA8BlE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,MAAM,UAAU,MAAM,CAAC,KAAkB;IACvC,MAAM,EACJ,KAAK,EACL,UAAU,EACV,YAAY,EACZ,aAAa,EACb,aAAa,EACb,cAAc,EACd,cAAc,EACd,GAAG,GAAG,CAAC,EACP,GAAG,IAAI,EACR,GAAG,KAAK,CAAC;IAEV,MAAM,iBAAiB,GAAG,WAAW,CACnC,CAAC,CAAC,KAAK,CAAW,EAAE,EAAE,CAAC,aAAa,EAAE,CAAC,KAAM,CAAC,EAC9C,CAAC,aAAa,CAAC,CAChB,CAAC;IAEF,MAAM,iBAAiB,GAAG,WAAW,CACnC,CAAC,CAAC,KAAK,CAAW,EAAE,EAAE,CAAC,aAAa,EAAE,CAAC,KAAM,CAAC,EAC9C,CAAC,aAAa,CAAC,CAChB,CAAC;IAEF,OAAO,CACL,KAAC,KAAK,IACJ,MAAM,EAAE,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EACvD,WAAW,EAAE,OAAO,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,EACtE,aAAa,EAAE,OAAO,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EACxE,eAAe,EAAE,cAAc,EAC/B,cAAc,EAAE,iBAAiB,EACjC,cAAc,EAAE,iBAAiB,EACjC,eAAe,EAAE,CAAC,cAAc,CAAC,EACjC,GAAG,EAAE,GAAG,KACJ,IAAI,GACR,CACH,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.vesper-snippet{padding:var(--vesper-spacing-2) var(--vesper-spacing-3);align-items:center;gap:var(--vesper-spacing-16);border:var(--vesper-stroke-base) solid var(--vesper-border-tertiary);border-radius:var(--vesper-radius-1);width:fit-content;display:flex;position:relative}.vesper-snippet pre{outline:none;margin:0}.vesper-snippet code{flex-direction:column;display:flex}.vesper-snippet .line:before{content:"$";margin-right:var(--vesper-spacing-2);-webkit-user-select:none;-ms-user-select:none;user-select:none}.vesper-snippet-default{background:var(--vesper-tint-neutral-100);color:var(--vesper-text-primary)}.vesper-snippet-contrast{background:var(--vesper-background-inverse-primary);color:var(--vesper-text-inverse-primary)}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { type ComponentProps } from "react";
|
|
2
|
+
export declare const SNIPPET_VARIANTS: readonly ["default", "contrast"];
|
|
3
|
+
export type SnippetVariant = (typeof SNIPPET_VARIANTS)[number];
|
|
4
|
+
export interface SnippetProps extends Omit<ComponentProps<"div">, "children"> {
|
|
5
|
+
/** The code snippet text to display in the snippet. Also used as the value copied to the clipboard when the copy button is clicked. */
|
|
6
|
+
children?: string;
|
|
7
|
+
/** The visual style variant of the snippet. @default fault */
|
|
8
|
+
variant?: SnippetVariant;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* A copyable code snippet component that displays monospace text with a built-in copy-to-clipboard button.
|
|
12
|
+
*
|
|
13
|
+
* @param {string} [props.children] - (optional) The code snippet text to display and copy to clipboard
|
|
14
|
+
* @param {SnippetVariant} [props.variant] - (optional) The visual style variant of the snippet. @default default`
|
|
15
|
+
* @param {string} [props.className] - (optional) Additional CSS class names to apply
|
|
16
|
+
*
|
|
17
|
+
* You may also pass any additional props to the underlying `<div>` element
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* <Snippet>yarn add some-package</Snippet>
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
* <Snippet variant="contrast">
|
|
24
|
+
* {`export default function App() {\n return <div />\n}`}
|
|
25
|
+
* </Snippet>
|
|
26
|
+
*/
|
|
27
|
+
export declare function Snippet(props: SnippetProps): import("react/jsx-runtime").JSX.Element;
|
|
28
|
+
//# sourceMappingURL=snippet.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"snippet.d.ts","sourceRoot":"","sources":["../../../src/components/snippet/snippet.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,cAAc,EAAiC,MAAM,OAAO,CAAC;AAQ3E,eAAO,MAAM,gBAAgB,kCAAmC,CAAC;AAEjE,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE/D,MAAM,WAAW,YAAa,SAAQ,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC;IAC3E,uIAAuI;IACvI,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8DAA8D;IAC9D,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,YAAY,2CA8C1C"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { useCallback, useRef, useState } from "react";
|
|
4
|
+
import { IconButton } from "../icon-button/icon-button.js";
|
|
5
|
+
import { Checkmark, Copy } from "../icons/icons.js";
|
|
6
|
+
import { Typography } from "../typography/typography.js";
|
|
7
|
+
import { cn } from "../../utils/cn.js";
|
|
8
|
+
export const SNIPPET_VARIANTS = ["default", "contrast"];
|
|
9
|
+
/**
|
|
10
|
+
* A copyable code snippet component that displays monospace text with a built-in copy-to-clipboard button.
|
|
11
|
+
*
|
|
12
|
+
* @param {string} [props.children] - (optional) The code snippet text to display and copy to clipboard
|
|
13
|
+
* @param {SnippetVariant} [props.variant] - (optional) The visual style variant of the snippet. @default default`
|
|
14
|
+
* @param {string} [props.className] - (optional) Additional CSS class names to apply
|
|
15
|
+
*
|
|
16
|
+
* You may also pass any additional props to the underlying `<div>` element
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* <Snippet>yarn add some-package</Snippet>
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* <Snippet variant="contrast">
|
|
23
|
+
* {`export default function App() {\n return <div />\n}`}
|
|
24
|
+
* </Snippet>
|
|
25
|
+
*/
|
|
26
|
+
export function Snippet(props) {
|
|
27
|
+
const { className, children, variant = "default", ...rest } = props;
|
|
28
|
+
const [copied, setCopied] = useState(false);
|
|
29
|
+
const timeout = useRef(null);
|
|
30
|
+
const copyToClipboard = useCallback(() => {
|
|
31
|
+
if (timeout.current !== null) {
|
|
32
|
+
clearTimeout(timeout.current);
|
|
33
|
+
}
|
|
34
|
+
navigator.clipboard
|
|
35
|
+
?.writeText(children ?? "")
|
|
36
|
+
.then(() => {
|
|
37
|
+
setCopied(true);
|
|
38
|
+
timeout.current = setTimeout(() => setCopied(false), 2000);
|
|
39
|
+
})
|
|
40
|
+
.catch(() => { });
|
|
41
|
+
}, [children]);
|
|
42
|
+
return (_jsxs("div", { className: cn("vesper-snippet", `vesper-snippet-${variant}`, className), ...rest, children: [_jsx("pre", { children: _jsx(Typography, { as: "code", variant: "copy-xs-mono", children: (children ?? "").split("\n").map((line, index) => (_jsx("span", { className: "line", children: line }, index))) }) }), _jsx(IconButton, { variant: variant === "default" ? "ghost" : "contrast", icon: copied ? _jsx(Checkmark, {}) : _jsx(Copy, {}), "aria-label": copied ? "Copied to clipboard" : "Copy to clipboard", "aria-live": "polite", size: "xs", type: "button", onClick: copyToClipboard })] }));
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=snippet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"snippet.js","sourceRoot":"","sources":["../../../src/components/snippet/snippet.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAuB,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE3E,OAAO,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAEhE,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAEhC,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,SAAS,EAAE,UAAU,CAAU,CAAC;AAWjE;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,OAAO,CAAC,KAAmB;IACzC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,GAAG,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;IAEpE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE5C,MAAM,OAAO,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAC;IAEpD,MAAM,eAAe,GAAG,WAAW,CAAC,GAAG,EAAE;QACvC,IAAI,OAAO,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;YAC7B,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAChC,CAAC;QAED,SAAS,CAAC,SAAS;YACjB,EAAE,SAAS,CAAC,QAAQ,IAAI,EAAE,CAAC;aAC1B,IAAI,CAAC,GAAG,EAAE;YACT,SAAS,CAAC,IAAI,CAAC,CAAC;YAChB,OAAO,CAAC,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC;QAC7D,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACrB,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,OAAO,CACL,eACE,SAAS,EAAE,EAAE,CAAC,gBAAgB,EAAE,kBAAkB,OAAO,EAAE,EAAE,SAAS,CAAC,KACnE,IAAI,aAER,wBACE,KAAC,UAAU,IAAC,EAAE,EAAC,MAAM,EAAC,OAAO,EAAC,cAAc,YACzC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CACjD,eAAkB,SAAS,EAAC,MAAM,YAC/B,IAAI,IADI,KAAK,CAET,CACR,CAAC,GACS,GACT,EACN,KAAC,UAAU,IACT,OAAO,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,EACrD,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,KAAC,SAAS,KAAG,CAAC,CAAC,CAAC,KAAC,IAAI,KAAG,gBAC3B,MAAM,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,mBAAmB,eACtD,QAAQ,EAClB,IAAI,EAAC,IAAI,EACT,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,eAAe,GACxB,IACE,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.vesper-split-button{width:fit-content;display:inline-flex}.vesper-split-button-action-button{border-width:var(--vesper-stroke-base);border-style:solid;border-top-right-radius:0;border-bottom-right-radius:0;width:100%;position:relative}.vesper-split-button-action-button:focus-visible{z-index:2}@media (forced-colors:active){.vesper-split-button-action-button{border-color:canvastext}}.vesper-split-button-menu-button{border-width:var(--vesper-stroke-base);border-style:solid;border-left-width:0;border-top-left-radius:0;border-bottom-left-radius:0;position:relative}.vesper-split-button-menu-button:focus-visible{z-index:2}.vesper-split-button-menu-button .vesper-split-button-caret-up{display:none}.vesper-split-button-menu-button[data-popup-open] .vesper-split-button-caret-down{display:none}.vesper-split-button-menu-button[data-popup-open] .vesper-split-button-caret-up{display:block}@media (forced-colors:none){.vesper-split-button-action-button.vesper-button-contrast,.vesper-split-button-menu-button.vesper-button-contrast{border-color:var(--vesper-border-inverse-secondary)}.vesper-split-button-action-button.vesper-button-subtle,.vesper-split-button-menu-button.vesper-button-subtle,.vesper-split-button-action-button.vesper-button-disabled,.vesper-split-button-menu-button.vesper-button-disabled{border-color:var(--vesper-border-secondary)}}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { ComponentProps, type MouseEventHandler } from "react";
|
|
2
|
+
import { type MenuItemProps, type MenuProps } from "../menu/menu.js";
|
|
3
|
+
export declare const SPLIT_BUTTON_SIZES: readonly ["sm", "md", "lg"];
|
|
4
|
+
export declare const SPLIT_BUTTON_VARIANTS: readonly ["subtle", "contrast"];
|
|
5
|
+
export type SplitButtonSize = (typeof SPLIT_BUTTON_SIZES)[number];
|
|
6
|
+
export type SplitButtonVariant = (typeof SPLIT_BUTTON_VARIANTS)[number];
|
|
7
|
+
export interface SplitButtonProps extends Omit<ComponentProps<"div">, "onClick"> {
|
|
8
|
+
/** The size of the split button, applied to both the action button and the menu toggle. @default md */
|
|
9
|
+
size?: SplitButtonSize;
|
|
10
|
+
/** The visual style variant, applied to both the action button and the menu toggle. @default contrast */
|
|
11
|
+
variant?: SplitButtonVariant;
|
|
12
|
+
/** The list of menu items rendered in the dropdown when the menu toggle is clicked. */
|
|
13
|
+
menuItems: MenuItemProps[];
|
|
14
|
+
/** Callback fired when the primary action button is clicked. */
|
|
15
|
+
onClick?: MouseEventHandler<HTMLButtonElement>;
|
|
16
|
+
/** An accessible `aria-label` for the menu toggle button. @default Toggle menu */
|
|
17
|
+
menuButtonAriaLabel?: string;
|
|
18
|
+
/** The width of the dropdown menu in pixels. @default 200 */
|
|
19
|
+
menuWidth?: MenuProps["width"];
|
|
20
|
+
/** The preferred side of the split button to render the dropdown menu against. @default bottom */
|
|
21
|
+
menuSide?: MenuProps["side"];
|
|
22
|
+
/** The distance in pixels from the split button to the dropdown menu. @default 8 */
|
|
23
|
+
menuSideOffset?: MenuProps["sideOffset"];
|
|
24
|
+
/** The alignment of the dropdown menu relative to the split button. @default start */
|
|
25
|
+
menuAlign?: MenuProps["align"];
|
|
26
|
+
/** An offset in pixels from the aligned edge of the split button. @default 0 */
|
|
27
|
+
menuAlignOffset?: MenuProps["alignOffset"];
|
|
28
|
+
/** Controls the open state of the dropdown menu (controlled mode). */
|
|
29
|
+
menuOpen?: MenuProps["open"];
|
|
30
|
+
/** Callback fired when the dropdown menu's open state changes. */
|
|
31
|
+
onMenuOpenChange?: MenuProps["onOpenChange"];
|
|
32
|
+
/** Whether the dropdown menu is open by default (uncontrolled mode). */
|
|
33
|
+
defaultMenuOpen?: MenuProps["defaultOpen"];
|
|
34
|
+
/** When `true`, disables both the action button and the menu toggle, preventing interaction. @default false */
|
|
35
|
+
disabled?: boolean;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* A compound button that pairs a primary action button with a dropdown menu toggle for secondary actions.
|
|
39
|
+
*
|
|
40
|
+
* Unlike `Button` (which triggers a single action), `TextButton` (which renders as text-only), and `IconButton` (which displays a single icon without text), `SplitButton` pairs a primary action with a dropdown menu.
|
|
41
|
+
*
|
|
42
|
+
* @see packages/vesper/src/components/button/button.tsx
|
|
43
|
+
* @see packages/vesper/src/components/text-button/text-button.tsx
|
|
44
|
+
* @see packages/vesper/src/components/icon-button/icon-button.tsx
|
|
45
|
+
*
|
|
46
|
+
* @param {MenuItemProps[]} props.menuItems - The list of menu items rendered in the dropdown
|
|
47
|
+
* @param {SplitButtonSize} [props.size] - (optional) The size of the split button. @default md
|
|
48
|
+
* @param {SplitButtonVariant} [props.variant] - (optional) The visual style variant. @default contrast
|
|
49
|
+
* @param {MouseEventHandler<HTMLButtonElement>} [props.onClick] - (optional) Callback fired when the primary action button is clicked
|
|
50
|
+
* @param {boolean} [props.disabled] - (optional) Disables both the action button and the menu toggle. @default false
|
|
51
|
+
* @param {string} [props.menuButtonAriaLabel] - (optional) Accessible label for the menu toggle. @default Toggle menu
|
|
52
|
+
*
|
|
53
|
+
* You may also pass any additional props to the underlying `div` element
|
|
54
|
+
*
|
|
55
|
+
* @example
|
|
56
|
+
* <SplitButton
|
|
57
|
+
* onClick={handleSave}
|
|
58
|
+
* menuItems={[
|
|
59
|
+
* { text: "Save as draft", onSelect: handleDraft },
|
|
60
|
+
* { text: "Save and publish", onSelect: handlePublish },
|
|
61
|
+
* ]}
|
|
62
|
+
* >
|
|
63
|
+
* Save
|
|
64
|
+
* </SplitButton>
|
|
65
|
+
*
|
|
66
|
+
* @example
|
|
67
|
+
* <SplitButton
|
|
68
|
+
* size="sm"
|
|
69
|
+
* variant="subtle"
|
|
70
|
+
* menuItems={exportOptions}
|
|
71
|
+
* menuSide="top"
|
|
72
|
+
* onClick={handleExport}
|
|
73
|
+
* >
|
|
74
|
+
* Export
|
|
75
|
+
* </SplitButton>
|
|
76
|
+
*/
|
|
77
|
+
export declare function SplitButton(props: SplitButtonProps): import("react/jsx-runtime").JSX.Element;
|
|
78
|
+
//# sourceMappingURL=split-button.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"split-button.d.ts","sourceRoot":"","sources":["../../../src/components/split-button/split-button.tsx"],"names":[],"mappings":"AAEA,OAAO,EACL,cAAc,EACd,KAAK,iBAAiB,EAIvB,MAAM,OAAO,CAAC;AAKf,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,SAAS,EACf,MAAM,wBAAwB,CAAC;AAKhC,eAAO,MAAM,kBAAkB,6BAA8B,CAAC;AAE9D,eAAO,MAAM,qBAAqB,iCAAkC,CAAC;AAErE,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAElE,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC;AAExE,MAAM,WAAW,gBAAiB,SAAQ,IAAI,CAC5C,cAAc,CAAC,KAAK,CAAC,EACrB,SAAS,CACV;IACC,uGAAuG;IACvG,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,yGAAyG;IACzG,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,uFAAuF;IACvF,SAAS,EAAE,aAAa,EAAE,CAAC;IAC3B,gEAAgE;IAChE,OAAO,CAAC,EAAE,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;IAC/C,kFAAkF;IAClF,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,6DAA6D;IAC7D,SAAS,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;IAC/B,kGAAkG;IAClG,QAAQ,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IAC7B,oFAAoF;IACpF,cAAc,CAAC,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC;IACzC,sFAAsF;IACtF,SAAS,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;IAC/B,gFAAgF;IAChF,eAAe,CAAC,EAAE,SAAS,CAAC,aAAa,CAAC,CAAC;IAC3C,sEAAsE;IACtE,QAAQ,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IAC7B,kEAAkE;IAClE,gBAAgB,CAAC,EAAE,SAAS,CAAC,cAAc,CAAC,CAAC;IAC7C,wEAAwE;IACxE,eAAe,CAAC,EAAE,SAAS,CAAC,aAAa,CAAC,CAAC;IAC3C,+GAA+G;IAC/G,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,2CAoFlD"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { useCallback, useRef, } from "react";
|
|
4
|
+
import { Button } from "../button/button.js";
|
|
5
|
+
import { IconButton } from "../icon-button/icon-button.js";
|
|
6
|
+
import { CaretDown, CaretUp } from "../icons/icons.js";
|
|
7
|
+
import { Menu, } from "../menu/menu.js";
|
|
8
|
+
import { cn } from "../../utils/cn.js";
|
|
9
|
+
import { useMergedRefs } from "../../utils/hooks/useMergedRefs.js";
|
|
10
|
+
export const SPLIT_BUTTON_SIZES = ["sm", "md", "lg"];
|
|
11
|
+
export const SPLIT_BUTTON_VARIANTS = ["subtle", "contrast"];
|
|
12
|
+
/**
|
|
13
|
+
* A compound button that pairs a primary action button with a dropdown menu toggle for secondary actions.
|
|
14
|
+
*
|
|
15
|
+
* Unlike `Button` (which triggers a single action), `TextButton` (which renders as text-only), and `IconButton` (which displays a single icon without text), `SplitButton` pairs a primary action with a dropdown menu.
|
|
16
|
+
*
|
|
17
|
+
* @see packages/vesper/src/components/button/button.tsx
|
|
18
|
+
* @see packages/vesper/src/components/text-button/text-button.tsx
|
|
19
|
+
* @see packages/vesper/src/components/icon-button/icon-button.tsx
|
|
20
|
+
*
|
|
21
|
+
* @param {MenuItemProps[]} props.menuItems - The list of menu items rendered in the dropdown
|
|
22
|
+
* @param {SplitButtonSize} [props.size] - (optional) The size of the split button. @default md
|
|
23
|
+
* @param {SplitButtonVariant} [props.variant] - (optional) The visual style variant. @default contrast
|
|
24
|
+
* @param {MouseEventHandler<HTMLButtonElement>} [props.onClick] - (optional) Callback fired when the primary action button is clicked
|
|
25
|
+
* @param {boolean} [props.disabled] - (optional) Disables both the action button and the menu toggle. @default false
|
|
26
|
+
* @param {string} [props.menuButtonAriaLabel] - (optional) Accessible label for the menu toggle. @default Toggle menu
|
|
27
|
+
*
|
|
28
|
+
* You may also pass any additional props to the underlying `div` element
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* <SplitButton
|
|
32
|
+
* onClick={handleSave}
|
|
33
|
+
* menuItems={[
|
|
34
|
+
* { text: "Save as draft", onSelect: handleDraft },
|
|
35
|
+
* { text: "Save and publish", onSelect: handlePublish },
|
|
36
|
+
* ]}
|
|
37
|
+
* >
|
|
38
|
+
* Save
|
|
39
|
+
* </SplitButton>
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* <SplitButton
|
|
43
|
+
* size="sm"
|
|
44
|
+
* variant="subtle"
|
|
45
|
+
* menuItems={exportOptions}
|
|
46
|
+
* menuSide="top"
|
|
47
|
+
* onClick={handleExport}
|
|
48
|
+
* >
|
|
49
|
+
* Export
|
|
50
|
+
* </SplitButton>
|
|
51
|
+
*/
|
|
52
|
+
export function SplitButton(props) {
|
|
53
|
+
const { size = "md", variant = "contrast", children, className, onClick, menuItems = [], menuAlign = "start", menuAlignOffset, menuOpen, onMenuOpenChange, menuSide = "bottom", menuSideOffset, menuWidth, disabled = false, menuButtonAriaLabel, onPointerDown, defaultMenuOpen, ref, ...rest } = props;
|
|
54
|
+
const innerRef = useRef(null);
|
|
55
|
+
const mergedRef = useMergedRefs(ref, innerRef);
|
|
56
|
+
const actionButtonRef = useRef(null);
|
|
57
|
+
const menuButtonRef = useRef(null);
|
|
58
|
+
const handlePointerDown = useCallback((e) => {
|
|
59
|
+
if (disabled)
|
|
60
|
+
e.preventDefault();
|
|
61
|
+
onPointerDown?.(e);
|
|
62
|
+
}, [disabled, onPointerDown]);
|
|
63
|
+
return (_jsxs("div", { className: cn("vesper-split-button", className), onPointerDown: handlePointerDown, ref: mergedRef, ...rest, children: [_jsx(Button, { className: "vesper-split-button-action-button", ref: actionButtonRef, onClick: onClick, onKeyDown: (e) => e.stopPropagation(), size: size, variant: variant, disabled: disabled, children: children }), _jsx(Menu, { anchor: innerRef, items: menuItems, align: menuAlign, side: menuSide, alignOffset: menuAlignOffset, open: menuOpen, sideOffset: menuSideOffset, width: menuWidth, defaultOpen: defaultMenuOpen, onOpenChange: onMenuOpenChange, children: _jsx(IconButton, { className: "vesper-split-button-menu-button", size: size, variant: variant, disabled: disabled, "aria-label": menuButtonAriaLabel || "Toggle menu", ref: menuButtonRef, icon: _jsxs(_Fragment, { children: [_jsx(CaretDown, { className: "vesper-split-button-caret-down" }), _jsx(CaretUp, { className: "vesper-split-button-caret-up" })] }) }) })] }));
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=split-button.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"split-button.js","sourceRoot":"","sources":["../../../src/components/split-button/split-button.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAIL,WAAW,EACX,MAAM,GACP,MAAM,OAAO,CAAC;AAEf,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EACL,IAAI,GAGL,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAE5D,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAU,CAAC;AAE9D,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAU,CAAC;AAwCrE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,MAAM,UAAU,WAAW,CAAC,KAAuB;IACjD,MAAM,EACJ,IAAI,GAAG,IAAI,EACX,OAAO,GAAG,UAAU,EACpB,QAAQ,EACR,SAAS,EACT,OAAO,EACP,SAAS,GAAG,EAAE,EACd,SAAS,GAAG,OAAO,EACnB,eAAe,EACf,QAAQ,EACR,gBAAgB,EAChB,QAAQ,GAAG,QAAQ,EACnB,cAAc,EACd,SAAS,EACT,QAAQ,GAAG,KAAK,EAChB,mBAAmB,EACnB,aAAa,EACb,eAAe,EACf,GAAG,EACH,GAAG,IAAI,EACR,GAAG,KAAK,CAAC;IAEV,MAAM,QAAQ,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAC9C,MAAM,SAAS,GAAG,aAAa,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAE/C,MAAM,eAAe,GAAG,MAAM,CAAoB,IAAI,CAAC,CAAC;IACxD,MAAM,aAAa,GAAG,MAAM,CAAoB,IAAI,CAAC,CAAC;IAEtD,MAAM,iBAAiB,GAAG,WAAW,CACnC,CAAC,CAA+B,EAAE,EAAE;QAClC,IAAI,QAAQ;YAAE,CAAC,CAAC,cAAc,EAAE,CAAC;QACjC,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC;IACrB,CAAC,EACD,CAAC,QAAQ,EAAE,aAAa,CAAC,CAC1B,CAAC;IAEF,OAAO,CACL,eACE,SAAS,EAAE,EAAE,CAAC,qBAAqB,EAAE,SAAS,CAAC,EAC/C,aAAa,EAAE,iBAAiB,EAChC,GAAG,EAAE,SAAS,KACV,IAAI,aAER,KAAC,MAAM,IACL,SAAS,EAAC,mCAAmC,EAC7C,GAAG,EAAE,eAAe,EACpB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,EAAE,EACrC,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,QAAQ,YAEjB,QAAQ,GACF,EACT,KAAC,IAAI,IACH,MAAM,EAAE,QAAQ,EAChB,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,QAAQ,EACd,WAAW,EAAE,eAAe,EAC5B,IAAI,EAAE,QAAQ,EACd,UAAU,EAAE,cAAc,EAC1B,KAAK,EAAE,SAAS,EAChB,WAAW,EAAE,eAAe,EAC5B,YAAY,EAAE,gBAAgB,YAE9B,KAAC,UAAU,IACT,SAAS,EAAC,iCAAiC,EAC3C,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,QAAQ,gBACN,mBAAmB,IAAI,aAAa,EAChD,GAAG,EAAE,aAAa,EAClB,IAAI,EACF,8BACE,KAAC,SAAS,IAAC,SAAS,EAAC,gCAAgC,GAAG,EACxD,KAAC,OAAO,IAAC,SAAS,EAAC,8BAA8B,GAAG,IACnD,GAEL,GACG,IACH,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.vesper-status-indicator{align-items:center;gap:var(--vesper-spacing-2);width:fit-content;display:inline-flex}.vesper-status-indicator-badge{padding:var(--vesper-spacing-1);border:var(--vesper-stroke-base) solid var(--vesper-border-secondary);border-radius:var(--vesper-radius-half)}.vesper-status-indicator-dot{width:.625rem;height:.625rem;position:relative}.vesper-status-indicator-dot:before{content:"";border-radius:50%;position:absolute;top:0;bottom:0;left:0;right:0}.vesper-status-indicator-dot:after{content:"";border-radius:50%;position:absolute;top:.1875rem;bottom:.1875rem;left:.1875rem;right:.1875rem}.vesper-status-indicator-dot.vesper-status-indicator-dot-animated:before{animation:vesper-status-indicator-dot-pulse var(--vesper-transition-duration-slow) cubic-bezier(.85, 0, .35, 1) infinite alternate}@keyframes vesper-status-indicator-dot-pulse{0%{opacity:1}to{opacity:.1}}.vesper-status-indicator-dot-queued:before{background:var(--vesper-sky-300)}.vesper-status-indicator-dot-queued:after{background:var(--vesper-sky-700)}.vesper-status-indicator-dot-progress:before{background:var(--vesper-amber-400)}.vesper-status-indicator-dot-progress:after{background:var(--vesper-amber-700)}.vesper-status-indicator-dot-error:before{background:var(--vesper-red-400)}.vesper-status-indicator-dot-error:after{background:var(--vesper-red-700)}.vesper-status-indicator-dot-ready:before{background:var(--vesper-mint-400)}.vesper-status-indicator-dot-ready:after{background:var(--vesper-mint-700)}.vesper-status-indicator-dot-cancelled:before{background:var(--vesper-stone-400)}.vesper-status-indicator-dot-cancelled:after{background:var(--vesper-stone-700)}.vesper-status-indicator-label{color:var(--vesper-text-primary)}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { ElementType } from "react";
|
|
2
|
+
import type { Polymorphic } from "../../utils/polymorphic.js";
|
|
3
|
+
export declare const STATUS_INDICATOR_STATES: readonly ["queued", "progress", "error", "ready", "cancelled"];
|
|
4
|
+
export declare const STATUS_INDICATOR_VARIANTS: readonly ["default", "badge"];
|
|
5
|
+
export type StatusIndicatorState = (typeof STATUS_INDICATOR_STATES)[number];
|
|
6
|
+
export type StatusIndicatorVariants = (typeof STATUS_INDICATOR_VARIANTS)[number];
|
|
7
|
+
export type StatusIndicatorProps<E extends ElementType = "div"> = Polymorphic<{
|
|
8
|
+
/** The text label displayed next to the status dot. */
|
|
9
|
+
label: string;
|
|
10
|
+
/** The current status state, which determines the color of the indicator dot. */
|
|
11
|
+
state: StatusIndicatorState;
|
|
12
|
+
/** The visual style variant of the status indicator. @default default */
|
|
13
|
+
variant?: StatusIndicatorVariants;
|
|
14
|
+
/** When `true`, applies a pulsing animation to the status dot. @default false */
|
|
15
|
+
animated?: boolean;
|
|
16
|
+
}, E, "children">;
|
|
17
|
+
/**
|
|
18
|
+
* A polymorphic status indicator that displays a colored dot and label representing a system state.
|
|
19
|
+
*
|
|
20
|
+
* @param {string} props.label - The text label displayed next to the status dot
|
|
21
|
+
* @param {StatusIndicatorState} props.state - The current status state determining the dot color
|
|
22
|
+
* @param {StatusIndicatorVariants} [props.variant] - (optional) The visual style variant. @default default`
|
|
23
|
+
* @param {boolean} [props.animated] - (optional) When `true`, applies a pulsing animation to the dot. @default false
|
|
24
|
+
* @param {React.ElementType} [props.as] - (optional) Element type to render. @default div
|
|
25
|
+
*
|
|
26
|
+
* You may also pass any additional props to the underlying element
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* <StatusIndicator label="Running" state="progress" animated />
|
|
30
|
+
*
|
|
31
|
+
* @example
|
|
32
|
+
* <StatusIndicator label="Deployed" state="ready" variant="badge" />
|
|
33
|
+
*/
|
|
34
|
+
export declare function StatusIndicator<E extends ElementType = "div">(props: StatusIndicatorProps<E>): import("react/jsx-runtime").JSX.Element;
|
|
35
|
+
//# sourceMappingURL=status-indicator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status-indicator.d.ts","sourceRoot":"","sources":["../../../src/components/status-indicator/status-indicator.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAKzC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,eAAO,MAAM,uBAAuB,gEAM1B,CAAC;AAEX,eAAO,MAAM,yBAAyB,+BAAgC,CAAC;AAEvE,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5E,MAAM,MAAM,uBAAuB,GACjC,CAAC,OAAO,yBAAyB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE7C,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,WAAW,GAAG,KAAK,IAAI,WAAW,CAC3E;IACE,uDAAuD;IACvD,KAAK,EAAE,MAAM,CAAC;IACd,iFAAiF;IACjF,KAAK,EAAE,oBAAoB,CAAC;IAC5B,yEAAyE;IACzE,OAAO,CAAC,EAAE,uBAAuB,CAAC;IAClC,iFAAiF;IACjF,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,EACD,CAAC,EACD,UAAU,CACX,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,eAAe,CAAC,CAAC,SAAS,WAAW,GAAG,KAAK,EAC3D,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC,2CAqC/B"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Typography } from "../typography/typography.js";
|
|
3
|
+
import { cn } from "../../utils/cn.js";
|
|
4
|
+
export const STATUS_INDICATOR_STATES = [
|
|
5
|
+
"queued",
|
|
6
|
+
"progress",
|
|
7
|
+
"error",
|
|
8
|
+
"ready",
|
|
9
|
+
"cancelled",
|
|
10
|
+
];
|
|
11
|
+
export const STATUS_INDICATOR_VARIANTS = ["default", "badge"];
|
|
12
|
+
/**
|
|
13
|
+
* A polymorphic status indicator that displays a colored dot and label representing a system state.
|
|
14
|
+
*
|
|
15
|
+
* @param {string} props.label - The text label displayed next to the status dot
|
|
16
|
+
* @param {StatusIndicatorState} props.state - The current status state determining the dot color
|
|
17
|
+
* @param {StatusIndicatorVariants} [props.variant] - (optional) The visual style variant. @default default`
|
|
18
|
+
* @param {boolean} [props.animated] - (optional) When `true`, applies a pulsing animation to the dot. @default false
|
|
19
|
+
* @param {React.ElementType} [props.as] - (optional) Element type to render. @default div
|
|
20
|
+
*
|
|
21
|
+
* You may also pass any additional props to the underlying element
|
|
22
|
+
*
|
|
23
|
+
* @example
|
|
24
|
+
* <StatusIndicator label="Running" state="progress" animated />
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* <StatusIndicator label="Deployed" state="ready" variant="badge" />
|
|
28
|
+
*/
|
|
29
|
+
export function StatusIndicator(props) {
|
|
30
|
+
const { className, label, state, animated, variant = "default", as: Component = "div", ...rest } = props;
|
|
31
|
+
return (_jsxs(Component, { className: cn("vesper-status-indicator", `vesper-status-indicator-${variant}`, className), ...rest, children: [_jsx("span", { className: cn("vesper-status-indicator-dot", `vesper-status-indicator-dot-${state}`, animated && "vesper-status-indicator-dot-animated") }), _jsx(Typography, { as: "span", className: "vesper-status-indicator-label", variant: "label-xs-mono", children: label })] }));
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=status-indicator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status-indicator.js","sourceRoot":"","sources":["../../../src/components/status-indicator/status-indicator.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAEhE,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAGhC,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,QAAQ;IACR,UAAU;IACV,OAAO;IACP,OAAO;IACP,WAAW;CACH,CAAC;AAEX,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,SAAS,EAAE,OAAO,CAAU,CAAC;AAsBvE;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,eAAe,CAC7B,KAA8B;IAE9B,MAAM,EACJ,SAAS,EACT,KAAK,EACL,KAAK,EACL,QAAQ,EACR,OAAO,GAAG,SAAS,EACnB,EAAE,EAAE,SAAS,GAAG,KAAK,EACrB,GAAG,IAAI,EACR,GAAG,KAAK,CAAC;IAEV,OAAO,CACL,MAAC,SAAS,IACR,SAAS,EAAE,EAAE,CACX,yBAAyB,EACzB,2BAA2B,OAAO,EAAE,EACpC,SAAS,CACV,KACG,IAAI,aAER,eACE,SAAS,EAAE,EAAE,CACX,6BAA6B,EAC7B,+BAA+B,KAAK,EAAE,EACtC,QAAQ,IAAI,sCAAsC,CACnD,GACD,EACF,KAAC,UAAU,IACT,EAAE,EAAC,MAAM,EACT,SAAS,EAAC,+BAA+B,EACzC,OAAO,EAAC,eAAe,YAEtB,KAAK,GACK,IACH,CACb,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.vesper-switch{align-items:center;gap:var(--vesper-spacing-2);width:fit-content;display:flex}.vesper-switch:not(:has(:disabled)){cursor:pointer}.vesper-switch-pill{aspect-ratio:2;background:var(--vesper-tint-neutral-400);padding:var(--vesper-spacing-half);overflow:hidden}.vesper-switch-pill:after{content:"";aspect-ratio:1;height:100%;transition:transform var(--vesper-transition-duration-fast) ease;border-radius:50%;display:block}@media (forced-colors:active){.vesper-switch-pill{background:canvastext}.vesper-switch-pill:after{background:canvas}}.vesper-switch-label{align-items:center;gap:var(--vesper-spacing-2);color:var(--vesper-text-primary);display:inline-flex}.vesper-switch-input{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.vesper-switch-input:not(:disabled)~.vesper-switch-pill{transition:background var(--vesper-transition-duration-fast) ease}.vesper-switch-input:not(:disabled)~.vesper-switch-pill:after{box-shadow:var(--vesper-shadow-100)}.vesper-switch-input:checked~.vesper-switch-pill{background:var(--vesper-background-accent-base)}.vesper-switch-input:checked~.vesper-switch-pill:after{transform:translateX(calc(100% + var(--vesper-spacing-1)))}@media (forced-colors:active){.vesper-switch-input:checked~.vesper-switch-pill{background:canvastext}}.vesper-switch-input:focus-visible~.vesper-switch-pill{box-shadow:var(--vesper-shadow-focus-ring)}@media (forced-colors:active){.vesper-switch-input:focus-visible~.vesper-switch-pill{box-shadow:none;outline:var(--vesper-stroke-base) solid CanvasText;outline-offset:var(--vesper-spacing-micro)}}.vesper-switch-input:disabled~.vesper-switch-label{color:var(--vesper-text-disabled)}.vesper-switch-input:disabled~.vesper-switch-pill{background:var(--vesper-background-disabled)}.vesper-switch-input:disabled~.vesper-switch-pill:after{background:var(--vesper-background-disabled)}@media (forced-colors:active){.vesper-switch-input:disabled~.vesper-switch-pill{opacity:.35;background:canvastext}}.vesper-switch-input~.vesper-switch-pill:after{background:var(--vesper-background-primary)}.vesper-switch-sm .vesper-switch-pill{border-radius:1rem;height:1rem}.vesper-switch-md .vesper-switch-pill{border-radius:1.5rem;height:1.5rem}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { FormInputProps } from "../../utils/splitFormInputProps.js";
|
|
2
|
+
export declare const SWITCH_SIZES: readonly ["sm", "md"];
|
|
3
|
+
export type SwitchSize = (typeof SWITCH_SIZES)[number];
|
|
4
|
+
export interface SwitchProps extends FormInputProps<"label", "input"> {
|
|
5
|
+
/** The text label displayed next to the switch. An asterisk is appended when `required` is `true`. */
|
|
6
|
+
label?: string;
|
|
7
|
+
/** The size of the switch and its label. @default md */
|
|
8
|
+
size?: SwitchSize;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* A form-ready toggle switch input with an optional label, supporting controlled and uncontrolled usage.
|
|
12
|
+
*
|
|
13
|
+
* Unlike `Checkbox`, which can render an indeterminate state, `Switch` only allows a binary on/off choice.
|
|
14
|
+
*
|
|
15
|
+
* Related components include `Toggle` (which selects one option from a segmented group) and `Choicebox` (which selects any number of options from a group).
|
|
16
|
+
*
|
|
17
|
+
* @see packages/vesper/src/components/checkbox/checkbox.tsx
|
|
18
|
+
* @see packages/vesper/src/components/toggle/toggle.tsx
|
|
19
|
+
*
|
|
20
|
+
* @param {string} [props.label] - (optional) The text label displayed next to the switch
|
|
21
|
+
* @param {SwitchSize} [props.size] - (optional) The size of the switch and its label. @default md
|
|
22
|
+
* @param {boolean} [props.checked] - (optional) The controlled checked state
|
|
23
|
+
* @param {boolean} [props.defaultChecked] - (optional) The initial checked state (uncontrolled)
|
|
24
|
+
* @param {boolean} [props.disabled] - (optional) Prevents interaction. @default false
|
|
25
|
+
* @param {boolean} [props.required] - (optional) Marks the switch as required for form validation. @default false
|
|
26
|
+
* @param {string} [props.name] - (optional) Form field name submitted with form data
|
|
27
|
+
*
|
|
28
|
+
* You may also pass any additional props to the underlying `label` element
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* <Switch label="Enable notifications" name="notifications" />
|
|
32
|
+
*
|
|
33
|
+
* @example
|
|
34
|
+
* <Switch
|
|
35
|
+
* label="Dark mode"
|
|
36
|
+
* checked={darkMode}
|
|
37
|
+
* onChange={(e) => setDarkMode(e.target.checked)}
|
|
38
|
+
* />
|
|
39
|
+
*/
|
|
40
|
+
export declare function Switch(props: SwitchProps): import("react/jsx-runtime").JSX.Element;
|
|
41
|
+
//# sourceMappingURL=switch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"switch.d.ts","sourceRoot":"","sources":["../../../src/components/switch/switch.tsx"],"names":[],"mappings":"AAQA,OAAO,EACL,cAAc,EAEf,MAAM,6BAA6B,CAAC;AAErC,eAAO,MAAM,YAAY,uBAAwB,CAAC;AAElD,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;AAEvD,MAAM,WAAW,WAAY,SAAQ,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC;IACnE,sGAAsG;IACtG,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wDAAwD;IACxD,IAAI,CAAC,EAAE,UAAU,CAAC;CACnB;AAOD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,WAAW,2CA8BxC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { Typography, } from "../typography/typography.js";
|
|
4
|
+
import { cn } from "../../utils/cn.js";
|
|
5
|
+
import { splitFormInputProps, } from "../../utils/splitFormInputProps.js";
|
|
6
|
+
export const SWITCH_SIZES = ["sm", "md"];
|
|
7
|
+
const SWITCH_TYPOGRAPHY = {
|
|
8
|
+
sm: "label-md",
|
|
9
|
+
md: "label-lg",
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* A form-ready toggle switch input with an optional label, supporting controlled and uncontrolled usage.
|
|
13
|
+
*
|
|
14
|
+
* Unlike `Checkbox`, which can render an indeterminate state, `Switch` only allows a binary on/off choice.
|
|
15
|
+
*
|
|
16
|
+
* Related components include `Toggle` (which selects one option from a segmented group) and `Choicebox` (which selects any number of options from a group).
|
|
17
|
+
*
|
|
18
|
+
* @see packages/vesper/src/components/checkbox/checkbox.tsx
|
|
19
|
+
* @see packages/vesper/src/components/toggle/toggle.tsx
|
|
20
|
+
*
|
|
21
|
+
* @param {string} [props.label] - (optional) The text label displayed next to the switch
|
|
22
|
+
* @param {SwitchSize} [props.size] - (optional) The size of the switch and its label. @default md
|
|
23
|
+
* @param {boolean} [props.checked] - (optional) The controlled checked state
|
|
24
|
+
* @param {boolean} [props.defaultChecked] - (optional) The initial checked state (uncontrolled)
|
|
25
|
+
* @param {boolean} [props.disabled] - (optional) Prevents interaction. @default false
|
|
26
|
+
* @param {boolean} [props.required] - (optional) Marks the switch as required for form validation. @default false
|
|
27
|
+
* @param {string} [props.name] - (optional) Form field name submitted with form data
|
|
28
|
+
*
|
|
29
|
+
* You may also pass any additional props to the underlying `label` element
|
|
30
|
+
*
|
|
31
|
+
* @example
|
|
32
|
+
* <Switch label="Enable notifications" name="notifications" />
|
|
33
|
+
*
|
|
34
|
+
* @example
|
|
35
|
+
* <Switch
|
|
36
|
+
* label="Dark mode"
|
|
37
|
+
* checked={darkMode}
|
|
38
|
+
* onChange={(e) => setDarkMode(e.target.checked)}
|
|
39
|
+
* />
|
|
40
|
+
*/
|
|
41
|
+
export function Switch(props) {
|
|
42
|
+
const { label, size = "md", className, ...rest } = props;
|
|
43
|
+
const { ariaProps, controlProps, formProps, wrapperProps } = splitFormInputProps(rest);
|
|
44
|
+
return (_jsxs("label", { ...wrapperProps, className: cn("vesper-switch", `vesper-switch-${size}`, className), children: [_jsx("input", { ...ariaProps, ...controlProps, ...formProps, className: "vesper-switch-input", type: "checkbox", role: "switch" }), _jsx("div", { className: "vesper-switch-pill" }), label && (_jsx(Typography, { className: "vesper-switch-label", variant: SWITCH_TYPOGRAPHY[size], children: formProps.required ? `${label} *` : label }))] }));
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=switch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"switch.js","sourceRoot":"","sources":["../../../src/components/switch/switch.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EACL,UAAU,GAEX,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAChC,OAAO,EAEL,mBAAmB,GACpB,MAAM,6BAA6B,CAAC;AAErC,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAI,EAAE,IAAI,CAAU,CAAC;AAWlD,MAAM,iBAAiB,GAA6C;IAClE,EAAE,EAAE,UAAU;IACd,EAAE,EAAE,UAAU;CACf,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,UAAU,MAAM,CAAC,KAAkB;IACvC,MAAM,EAAE,KAAK,EAAE,IAAI,GAAG,IAAI,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;IAEzD,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,GACxD,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAE5B,OAAO,CACL,oBACM,YAAY,EAChB,SAAS,EAAE,EAAE,CAAC,eAAe,EAAE,iBAAiB,IAAI,EAAE,EAAE,SAAS,CAAC,aAElE,mBACM,SAAS,KACT,YAAY,KACZ,SAAS,EACb,SAAS,EAAC,qBAAqB,EAC/B,IAAI,EAAC,UAAU,EACf,IAAI,EAAC,QAAQ,GACb,EACF,cAAK,SAAS,EAAC,oBAAoB,GAAG,EACrC,KAAK,IAAI,CACR,KAAC,UAAU,IACT,SAAS,EAAC,qBAAqB,EAC/B,OAAO,EAAE,iBAAiB,CAAC,IAAI,CAAC,YAE/B,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,GAC/B,CACd,IACK,CACT,CAAC;AACJ,CAAC"}
|