@dowel-ui/react 0.7.0 → 0.8.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/README.md +3 -3
- package/dist/blocks/cta-banner/meta.js +18 -0
- package/dist/blocks/cta-banner/meta.js.map +1 -0
- package/dist/blocks/cta-centered/meta.js +18 -0
- package/dist/blocks/cta-centered/meta.js.map +1 -0
- package/dist/blocks/cta-split-image/meta.js +18 -0
- package/dist/blocks/cta-split-image/meta.js.map +1 -0
- package/dist/blocks/faq-accordion/meta.js +18 -0
- package/dist/blocks/faq-accordion/meta.js.map +1 -0
- package/dist/blocks/faq-categorized/meta.js +18 -0
- package/dist/blocks/faq-categorized/meta.js.map +1 -0
- package/dist/blocks/faq-searchable/meta.js +22 -0
- package/dist/blocks/faq-searchable/meta.js.map +1 -0
- package/dist/blocks/faq-tabbed-grid/meta.js +18 -0
- package/dist/blocks/faq-tabbed-grid/meta.js.map +1 -0
- package/dist/blocks/features-alternating/meta.js +18 -0
- package/dist/blocks/features-alternating/meta.js.map +1 -0
- package/dist/blocks/features-bento/meta.js +18 -0
- package/dist/blocks/features-bento/meta.js.map +1 -0
- package/dist/blocks/features-icon-grid/meta.js +18 -0
- package/dist/blocks/features-icon-grid/meta.js.map +1 -0
- package/dist/blocks/footer-mega/meta.js +22 -0
- package/dist/blocks/footer-mega/meta.js.map +1 -0
- package/dist/blocks/footer-minimal/meta.js +18 -0
- package/dist/blocks/footer-minimal/meta.js.map +1 -0
- package/dist/blocks/footer-newsletter/meta.js +22 -0
- package/dist/blocks/footer-newsletter/meta.js.map +1 -0
- package/dist/blocks/footer-simple/meta.js +18 -0
- package/dist/blocks/footer-simple/meta.js.map +1 -0
- package/dist/blocks/hero-grid/meta.js +18 -0
- package/dist/blocks/hero-grid/meta.js.map +1 -0
- package/dist/blocks/hero-minimal/meta.js +18 -0
- package/dist/blocks/hero-minimal/meta.js.map +1 -0
- package/dist/blocks/hero-perspective-grid/meta.js +18 -0
- package/dist/blocks/hero-perspective-grid/meta.js.map +1 -0
- package/dist/blocks/hero-product/meta.js +22 -0
- package/dist/blocks/hero-product/meta.js.map +1 -0
- package/dist/blocks/hero-split-image/meta.js +22 -0
- package/dist/blocks/hero-split-image/meta.js.map +1 -0
- package/dist/blocks/hero-spotlight/meta.js +18 -0
- package/dist/blocks/hero-spotlight/meta.js.map +1 -0
- package/dist/blocks/logo-cloud-simple/meta.js +18 -0
- package/dist/blocks/logo-cloud-simple/meta.js.map +1 -0
- package/dist/blocks/logo-grid-tooltips/meta.js +18 -0
- package/dist/blocks/logo-grid-tooltips/meta.js.map +1 -0
- package/dist/blocks/logo-links-marquee/meta.js +18 -0
- package/dist/blocks/logo-links-marquee/meta.js.map +1 -0
- package/dist/blocks/logo-marquee/meta.js +18 -0
- package/dist/blocks/logo-marquee/meta.js.map +1 -0
- package/dist/blocks/pricing-single-plan/meta.js +25 -0
- package/dist/blocks/pricing-single-plan/meta.js.map +1 -0
- package/dist/blocks/pricing-three-tier/meta.js +25 -0
- package/dist/blocks/pricing-three-tier/meta.js.map +1 -0
- package/dist/blocks/pricing-two-tier/meta.js +25 -0
- package/dist/blocks/pricing-two-tier/meta.js.map +1 -0
- package/dist/blocks/stats-grid/meta.js +18 -0
- package/dist/blocks/stats-grid/meta.js.map +1 -0
- package/dist/blocks/stats-trend-cards/meta.js +22 -0
- package/dist/blocks/stats-trend-cards/meta.js.map +1 -0
- package/dist/blocks/team-carousel/meta.js +22 -0
- package/dist/blocks/team-carousel/meta.js.map +1 -0
- package/dist/blocks/team-grid/meta.js +18 -0
- package/dist/blocks/team-grid/meta.js.map +1 -0
- package/dist/blocks/testimonial-rotator/meta.js +18 -0
- package/dist/blocks/testimonial-rotator/meta.js.map +1 -0
- package/dist/blocks/testimonial-spotlight/meta.js +22 -0
- package/dist/blocks/testimonial-spotlight/meta.js.map +1 -0
- package/dist/blocks/testimonial-star-grid/meta.js +18 -0
- package/dist/blocks/testimonial-star-grid/meta.js.map +1 -0
- package/dist/components/account-menu/account-menu.d.ts +56 -0
- package/dist/components/account-menu/account-menu.d.ts.map +1 -0
- package/dist/components/account-menu/account-menu.js +247 -0
- package/dist/components/account-menu/account-menu.js.map +1 -0
- package/dist/components/account-menu/index.d.ts +2 -0
- package/dist/components/account-menu/index.js +2 -0
- package/dist/components/account-menu/meta.js +24 -0
- package/dist/components/account-menu/meta.js.map +1 -0
- package/dist/components/action-node/action-node-spring.js +21 -0
- package/dist/components/action-node/action-node-spring.js.map +1 -0
- package/dist/components/action-node/action-node.d.ts +67 -0
- package/dist/components/action-node/action-node.d.ts.map +1 -0
- package/dist/components/action-node/action-node.js +374 -0
- package/dist/components/action-node/action-node.js.map +1 -0
- package/dist/components/action-node/index.d.ts +2 -0
- package/dist/components/action-node/index.js +2 -0
- package/dist/components/action-node/meta.js +17 -0
- package/dist/components/action-node/meta.js.map +1 -0
- package/dist/components/ai-agent-plan/ai-agent-plan.d.ts +13 -2
- package/dist/components/ai-agent-plan/ai-agent-plan.d.ts.map +1 -1
- package/dist/components/ai-agent-plan/ai-agent-plan.js +109 -42
- package/dist/components/ai-agent-plan/ai-agent-plan.js.map +1 -1
- package/dist/components/ai-agent-plan/index.d.ts +2 -2
- package/dist/components/ai-agent-plan/meta.js +1 -1
- package/dist/components/ai-agent-plan/meta.js.map +1 -1
- package/dist/components/ai-agent-status/ai-agent-status.d.ts +1 -1
- package/dist/components/ai-approval-request/ai-approval-request.d.ts +8 -1
- package/dist/components/ai-approval-request/ai-approval-request.d.ts.map +1 -1
- package/dist/components/ai-approval-request/ai-approval-request.js +67 -12
- package/dist/components/ai-approval-request/ai-approval-request.js.map +1 -1
- package/dist/components/ai-approval-request/meta.js +1 -1
- package/dist/components/ai-approval-request/meta.js.map +1 -1
- package/dist/components/ai-artifact/ai-artifact.d.ts +27 -0
- package/dist/components/ai-artifact/ai-artifact.d.ts.map +1 -0
- package/dist/components/ai-artifact/ai-artifact.js +142 -0
- package/dist/components/ai-artifact/ai-artifact.js.map +1 -0
- package/dist/components/ai-artifact/index.d.ts +2 -0
- package/dist/components/ai-artifact/index.js +2 -0
- package/dist/components/ai-artifact/meta.js +17 -0
- package/dist/components/ai-artifact/meta.js.map +1 -0
- package/dist/components/ai-branch/ai-branch.d.ts +32 -0
- package/dist/components/ai-branch/ai-branch.d.ts.map +1 -0
- package/dist/components/ai-branch/ai-branch.js +160 -0
- package/dist/components/ai-branch/ai-branch.js.map +1 -0
- package/dist/components/ai-branch/index.d.ts +2 -0
- package/dist/components/ai-branch/index.js +2 -0
- package/dist/components/ai-branch/meta.js +17 -0
- package/dist/components/ai-branch/meta.js.map +1 -0
- package/dist/components/ai-conversation/ai-conversation.d.ts +16 -4
- package/dist/components/ai-conversation/ai-conversation.d.ts.map +1 -1
- package/dist/components/ai-conversation/ai-conversation.js +78 -10
- package/dist/components/ai-conversation/ai-conversation.js.map +1 -1
- package/dist/components/ai-conversation/index.d.ts +2 -2
- package/dist/components/ai-loader/ai-loader.d.ts +22 -0
- package/dist/components/ai-loader/ai-loader.d.ts.map +1 -0
- package/dist/components/ai-loader/ai-loader.js +78 -0
- package/dist/components/ai-loader/ai-loader.js.map +1 -0
- package/dist/components/ai-loader/index.d.ts +2 -0
- package/dist/components/ai-loader/index.js +2 -0
- package/dist/components/ai-loader/meta.js +21 -0
- package/dist/components/ai-loader/meta.js.map +1 -0
- package/dist/components/ai-message/ai-message.d.ts +13 -2
- package/dist/components/ai-message/ai-message.d.ts.map +1 -1
- package/dist/components/ai-message/ai-message.js +29 -5
- package/dist/components/ai-message/ai-message.js.map +1 -1
- package/dist/components/ai-message/index.d.ts +2 -2
- package/dist/components/ai-message/index.js +2 -2
- package/dist/components/ai-message/meta.js +1 -1
- package/dist/components/ai-message/meta.js.map +1 -1
- package/dist/components/ai-prompt-input/ai-prompt-input.d.ts.map +1 -1
- package/dist/components/ai-prompt-input/ai-prompt-input.js +45 -26
- package/dist/components/ai-prompt-input/ai-prompt-input.js.map +1 -1
- package/dist/components/ai-reasoning/ai-reasoning.d.ts +39 -11
- package/dist/components/ai-reasoning/ai-reasoning.d.ts.map +1 -1
- package/dist/components/ai-reasoning/ai-reasoning.js +113 -9
- package/dist/components/ai-reasoning/ai-reasoning.js.map +1 -1
- package/dist/components/ai-reasoning/index.d.ts +2 -2
- package/dist/components/ai-reasoning/index.js +2 -2
- package/dist/components/ai-reasoning/meta.js +2 -2
- package/dist/components/ai-reasoning/meta.js.map +1 -1
- package/dist/components/ai-response/ai-response.d.ts +4 -0
- package/dist/components/ai-response/ai-response.d.ts.map +1 -1
- package/dist/components/ai-response/ai-response.js +5 -1
- package/dist/components/ai-response/ai-response.js.map +1 -1
- package/dist/components/ai-response/index.d.ts +2 -1
- package/dist/components/ai-response/index.js +2 -1
- package/dist/components/ai-response/meta.js +3 -3
- package/dist/components/ai-response/meta.js.map +1 -1
- package/dist/components/ai-response/response-text.d.ts +42 -0
- package/dist/components/ai-response/response-text.d.ts.map +1 -0
- package/dist/components/ai-response/response-text.js +63 -0
- package/dist/components/ai-response/response-text.js.map +1 -0
- package/dist/components/ai-sources/ai-sources.d.ts +31 -5
- package/dist/components/ai-sources/ai-sources.d.ts.map +1 -1
- package/dist/components/ai-sources/ai-sources.js +188 -47
- package/dist/components/ai-sources/ai-sources.js.map +1 -1
- package/dist/components/ai-sources/index.d.ts +2 -2
- package/dist/components/ai-sources/index.js +2 -2
- package/dist/components/ai-sources/meta.js +2 -2
- package/dist/components/ai-sources/meta.js.map +1 -1
- package/dist/components/ai-suggestions/ai-suggestions.d.ts +24 -0
- package/dist/components/ai-suggestions/ai-suggestions.d.ts.map +1 -0
- package/dist/components/ai-suggestions/ai-suggestions.js +68 -0
- package/dist/components/ai-suggestions/ai-suggestions.js.map +1 -0
- package/dist/components/ai-suggestions/index.d.ts +2 -0
- package/dist/components/ai-suggestions/index.js +2 -0
- package/dist/components/ai-suggestions/meta.js +17 -0
- package/dist/components/ai-suggestions/meta.js.map +1 -0
- package/dist/components/ai-token-usage/ai-token-usage.d.ts +40 -3
- package/dist/components/ai-token-usage/ai-token-usage.d.ts.map +1 -1
- package/dist/components/ai-token-usage/ai-token-usage.js +201 -24
- package/dist/components/ai-token-usage/ai-token-usage.js.map +1 -1
- package/dist/components/ai-token-usage/index.d.ts +2 -2
- package/dist/components/ai-token-usage/index.js +2 -2
- package/dist/components/ai-token-usage/meta.js +2 -2
- package/dist/components/ai-token-usage/meta.js.map +1 -1
- package/dist/components/ai-tool/ai-tool.d.ts +12 -1
- package/dist/components/ai-tool/ai-tool.d.ts.map +1 -1
- package/dist/components/ai-tool/ai-tool.js +82 -5
- package/dist/components/ai-tool/ai-tool.js.map +1 -1
- package/dist/components/ai-tool/meta.js +1 -1
- package/dist/components/ai-tool/meta.js.map +1 -1
- package/dist/components/alert/alert.d.ts +1 -1
- package/dist/components/animated-checklist/animated-checklist.d.ts +40 -0
- package/dist/components/animated-checklist/animated-checklist.d.ts.map +1 -0
- package/dist/components/animated-checklist/animated-checklist.js +198 -0
- package/dist/components/animated-checklist/animated-checklist.js.map +1 -0
- package/dist/components/animated-checklist/index.d.ts +2 -0
- package/dist/components/animated-checklist/index.js +2 -0
- package/dist/components/animated-checklist/meta.js +17 -0
- package/dist/components/animated-checklist/meta.js.map +1 -0
- package/dist/components/app-stack/app-stack.d.ts +40 -0
- package/dist/components/app-stack/app-stack.d.ts.map +1 -0
- package/dist/components/app-stack/app-stack.js +260 -0
- package/dist/components/app-stack/app-stack.js.map +1 -0
- package/dist/components/app-stack/index.d.ts +2 -0
- package/dist/components/app-stack/index.js +2 -0
- package/dist/components/app-stack/meta.js +17 -0
- package/dist/components/app-stack/meta.js.map +1 -0
- package/dist/components/aspect-morph/aspect-morph.d.ts +50 -0
- package/dist/components/aspect-morph/aspect-morph.d.ts.map +1 -0
- package/dist/components/aspect-morph/aspect-morph.js +171 -0
- package/dist/components/aspect-morph/aspect-morph.js.map +1 -0
- package/dist/components/aspect-morph/index.d.ts +2 -0
- package/dist/components/aspect-morph/index.js +2 -0
- package/dist/components/aspect-morph/meta.js +17 -0
- package/dist/components/aspect-morph/meta.js.map +1 -0
- package/dist/components/assignee-picker/assignee-picker-spring.js +21 -0
- package/dist/components/assignee-picker/assignee-picker-spring.js.map +1 -0
- package/dist/components/assignee-picker/assignee-picker.d.ts +47 -0
- package/dist/components/assignee-picker/assignee-picker.d.ts.map +1 -0
- package/dist/components/assignee-picker/assignee-picker.js +370 -0
- package/dist/components/assignee-picker/assignee-picker.js.map +1 -0
- package/dist/components/assignee-picker/index.d.ts +2 -0
- package/dist/components/assignee-picker/index.js +2 -0
- package/dist/components/assignee-picker/meta.js +17 -0
- package/dist/components/assignee-picker/meta.js.map +1 -0
- package/dist/components/avatar/avatar.d.ts +1 -1
- package/dist/components/avatar-group/avatar-group.d.ts +41 -0
- package/dist/components/avatar-group/avatar-group.d.ts.map +1 -0
- package/dist/components/avatar-group/avatar-group.js +103 -0
- package/dist/components/avatar-group/avatar-group.js.map +1 -0
- package/dist/components/avatar-group/index.d.ts +2 -0
- package/dist/components/avatar-group/index.js +2 -0
- package/dist/components/avatar-group/meta.js +17 -0
- package/dist/components/avatar-group/meta.js.map +1 -0
- package/dist/components/badge/badge.d.ts +1 -1
- package/dist/components/bar-loader/bar-loader.d.ts +170 -0
- package/dist/components/bar-loader/bar-loader.d.ts.map +1 -0
- package/dist/components/bar-loader/bar-loader.js +469 -0
- package/dist/components/bar-loader/bar-loader.js.map +1 -0
- package/dist/components/bar-loader/index.d.ts +2 -0
- package/dist/components/bar-loader/index.js +2 -0
- package/dist/components/bar-loader/meta.js +17 -0
- package/dist/components/bar-loader/meta.js.map +1 -0
- package/dist/components/book/book.d.ts +35 -0
- package/dist/components/book/book.d.ts.map +1 -0
- package/dist/components/book/book.js +183 -0
- package/dist/components/book/book.js.map +1 -0
- package/dist/components/book/index.d.ts +2 -0
- package/dist/components/book/index.js +2 -0
- package/dist/components/book/meta.js +17 -0
- package/dist/components/book/meta.js.map +1 -0
- package/dist/components/breadcrumb/breadcrumb.d.ts +10 -2
- package/dist/components/breadcrumb/breadcrumb.d.ts.map +1 -1
- package/dist/components/breadcrumb/breadcrumb.js +21 -4
- package/dist/components/breadcrumb/breadcrumb.js.map +1 -1
- package/dist/components/breadcrumb/index.d.ts +2 -2
- package/dist/components/breadcrumb/meta.js +1 -1
- package/dist/components/breadcrumb/meta.js.map +1 -1
- package/dist/components/browser-tabs/browser-tabs-spring.js +21 -0
- package/dist/components/browser-tabs/browser-tabs-spring.js.map +1 -0
- package/dist/components/browser-tabs/browser-tabs.d.ts +62 -0
- package/dist/components/browser-tabs/browser-tabs.d.ts.map +1 -0
- package/dist/components/browser-tabs/browser-tabs.js +418 -0
- package/dist/components/browser-tabs/browser-tabs.js.map +1 -0
- package/dist/components/browser-tabs/index.d.ts +2 -0
- package/dist/components/browser-tabs/index.js +2 -0
- package/dist/components/browser-tabs/meta.js +17 -0
- package/dist/components/browser-tabs/meta.js.map +1 -0
- package/dist/components/button/button.d.ts +4 -2
- package/dist/components/button/button.d.ts.map +1 -1
- package/dist/components/button/button.js +48 -5
- package/dist/components/button/button.js.map +1 -1
- package/dist/components/canvas-toolbar/canvas-toolbar.d.ts +62 -0
- package/dist/components/canvas-toolbar/canvas-toolbar.d.ts.map +1 -0
- package/dist/components/canvas-toolbar/canvas-toolbar.js +256 -0
- package/dist/components/canvas-toolbar/canvas-toolbar.js.map +1 -0
- package/dist/components/canvas-toolbar/index.d.ts +2 -0
- package/dist/components/canvas-toolbar/index.js +2 -0
- package/dist/components/canvas-toolbar/meta.js +17 -0
- package/dist/components/canvas-toolbar/meta.js.map +1 -0
- package/dist/components/card-spread/card-spread-layouts.d.ts +46 -0
- package/dist/components/card-spread/card-spread-layouts.d.ts.map +1 -0
- package/dist/components/card-spread/card-spread-layouts.js +235 -0
- package/dist/components/card-spread/card-spread-layouts.js.map +1 -0
- package/dist/components/card-spread/card-spread.d.ts +52 -0
- package/dist/components/card-spread/card-spread.d.ts.map +1 -0
- package/dist/components/card-spread/card-spread.js +224 -0
- package/dist/components/card-spread/card-spread.js.map +1 -0
- package/dist/components/card-spread/index.d.ts +3 -0
- package/dist/components/card-spread/index.js +3 -0
- package/dist/components/card-spread/meta.js +17 -0
- package/dist/components/card-spread/meta.js.map +1 -0
- package/dist/components/card-stack/card-stack-layout.js +98 -0
- package/dist/components/card-stack/card-stack-layout.js.map +1 -0
- package/dist/components/card-stack/card-stack.d.ts +29 -0
- package/dist/components/card-stack/card-stack.d.ts.map +1 -0
- package/dist/components/card-stack/card-stack.js +229 -0
- package/dist/components/card-stack/card-stack.js.map +1 -0
- package/dist/components/card-stack/index.d.ts +2 -0
- package/dist/components/card-stack/index.js +2 -0
- package/dist/components/card-stack/meta.js +17 -0
- package/dist/components/card-stack/meta.js.map +1 -0
- package/dist/components/carousel-3d/carousel-3d.d.ts +43 -0
- package/dist/components/carousel-3d/carousel-3d.d.ts.map +1 -0
- package/dist/components/carousel-3d/carousel-3d.js +336 -0
- package/dist/components/carousel-3d/carousel-3d.js.map +1 -0
- package/dist/components/carousel-3d/index.d.ts +2 -0
- package/dist/components/carousel-3d/index.js +2 -0
- package/dist/components/carousel-3d/meta.js +17 -0
- package/dist/components/carousel-3d/meta.js.map +1 -0
- package/dist/components/checkbox/checkbox.d.ts.map +1 -1
- package/dist/components/checkbox/checkbox.js +18 -0
- package/dist/components/checkbox/checkbox.js.map +1 -1
- package/dist/components/code-block/code-block.d.ts +1 -17
- package/dist/components/code-block/code-block.d.ts.map +1 -1
- package/dist/components/code-block/code-block.js +9 -79
- package/dist/components/code-block/code-block.js.map +1 -1
- package/dist/components/code-block/index.d.ts +3 -1
- package/dist/components/code-block/index.js +2 -1
- package/dist/components/code-block/meta.js +1 -1
- package/dist/components/code-block/meta.js.map +1 -1
- package/dist/components/combobox/combobox.d.ts +28 -4
- package/dist/components/combobox/combobox.d.ts.map +1 -1
- package/dist/components/combobox/combobox.js +160 -65
- package/dist/components/combobox/combobox.js.map +1 -1
- package/dist/components/combobox/index.d.ts +2 -2
- package/dist/components/combobox/index.js +2 -2
- package/dist/components/combobox/meta.js +1 -1
- package/dist/components/combobox/meta.js.map +1 -1
- package/dist/components/command-bar/command-bar.d.ts +37 -0
- package/dist/components/command-bar/command-bar.d.ts.map +1 -0
- package/dist/components/command-bar/command-bar.js +91 -0
- package/dist/components/command-bar/command-bar.js.map +1 -0
- package/dist/components/command-bar/index.d.ts +2 -0
- package/dist/components/command-bar/index.js +2 -0
- package/dist/components/command-bar/meta.js +17 -0
- package/dist/components/command-bar/meta.js.map +1 -0
- package/dist/components/comment-bubble/comment-bubble.d.ts +32 -0
- package/dist/components/comment-bubble/comment-bubble.d.ts.map +1 -0
- package/dist/components/comment-bubble/comment-bubble.js +174 -0
- package/dist/components/comment-bubble/comment-bubble.js.map +1 -0
- package/dist/components/comment-bubble/index.d.ts +2 -0
- package/dist/components/comment-bubble/index.js +2 -0
- package/dist/components/comment-bubble/meta.js +17 -0
- package/dist/components/comment-bubble/meta.js.map +1 -0
- package/dist/components/context-menu/context-menu.d.ts +49 -0
- package/dist/components/context-menu/context-menu.d.ts.map +1 -0
- package/dist/components/context-menu/context-menu.js +151 -0
- package/dist/components/context-menu/context-menu.js.map +1 -0
- package/dist/components/context-menu/index.d.ts +2 -0
- package/dist/components/context-menu/index.js +2 -0
- package/dist/components/context-menu/meta.js +17 -0
- package/dist/components/context-menu/meta.js.map +1 -0
- package/dist/components/contribution-graph/contribution-graph.d.ts +37 -0
- package/dist/components/contribution-graph/contribution-graph.d.ts.map +1 -0
- package/dist/components/contribution-graph/contribution-graph.js +298 -0
- package/dist/components/contribution-graph/contribution-graph.js.map +1 -0
- package/dist/components/contribution-graph/index.d.ts +2 -0
- package/dist/components/contribution-graph/index.js +2 -0
- package/dist/components/contribution-graph/meta.js +17 -0
- package/dist/components/contribution-graph/meta.js.map +1 -0
- package/dist/components/copy-button/copy-button.d.ts +81 -0
- package/dist/components/copy-button/copy-button.d.ts.map +1 -0
- package/dist/components/copy-button/copy-button.js +146 -0
- package/dist/components/copy-button/copy-button.js.map +1 -0
- package/dist/components/copy-button/index.d.ts +2 -0
- package/dist/components/copy-button/index.js +2 -0
- package/dist/components/copy-button/meta.js +17 -0
- package/dist/components/copy-button/meta.js.map +1 -0
- package/dist/components/create-menu/create-menu.d.ts +42 -0
- package/dist/components/create-menu/create-menu.d.ts.map +1 -0
- package/dist/components/create-menu/create-menu.js +197 -0
- package/dist/components/create-menu/create-menu.js.map +1 -0
- package/dist/components/create-menu/index.d.ts +2 -0
- package/dist/components/create-menu/index.js +2 -0
- package/dist/components/create-menu/meta.js +17 -0
- package/dist/components/create-menu/meta.js.map +1 -0
- package/dist/components/cursor-follow/cursor-follow.d.ts +17 -0
- package/dist/components/cursor-follow/cursor-follow.d.ts.map +1 -0
- package/dist/components/cursor-follow/cursor-follow.js +116 -0
- package/dist/components/cursor-follow/cursor-follow.js.map +1 -0
- package/dist/components/cursor-follow/index.d.ts +2 -0
- package/dist/components/cursor-follow/index.js +2 -0
- package/dist/components/cursor-follow/meta.js +17 -0
- package/dist/components/cursor-follow/meta.js.map +1 -0
- package/dist/components/dial/dial.d.ts +32 -0
- package/dist/components/dial/dial.d.ts.map +1 -0
- package/dist/components/dial/dial.js +195 -0
- package/dist/components/dial/dial.js.map +1 -0
- package/dist/components/dial/index.d.ts +2 -0
- package/dist/components/dial/index.js +2 -0
- package/dist/components/dial/meta.js +17 -0
- package/dist/components/dial/meta.js.map +1 -0
- package/dist/components/dialog/dialog.d.ts +8 -1
- package/dist/components/dialog/dialog.d.ts.map +1 -1
- package/dist/components/dialog/dialog.js +22 -5
- package/dist/components/dialog/dialog.js.map +1 -1
- package/dist/components/dialog/meta.js +1 -1
- package/dist/components/dialog/meta.js.map +1 -1
- package/dist/components/diff-viewer/diff-viewer.d.ts +12 -1
- package/dist/components/diff-viewer/diff-viewer.d.ts.map +1 -1
- package/dist/components/diff-viewer/diff-viewer.js +98 -26
- package/dist/components/diff-viewer/diff-viewer.js.map +1 -1
- package/dist/components/diff-viewer/meta.js +1 -1
- package/dist/components/diff-viewer/meta.js.map +1 -1
- package/dist/components/dither-area/dither-area.d.ts +46 -0
- package/dist/components/dither-area/dither-area.d.ts.map +1 -0
- package/dist/components/dither-area/dither-area.js +186 -0
- package/dist/components/dither-area/dither-area.js.map +1 -0
- package/dist/components/dither-area/index.d.ts +2 -0
- package/dist/components/dither-area/index.js +2 -0
- package/dist/components/dither-area/meta.js +17 -0
- package/dist/components/dither-area/meta.js.map +1 -0
- package/dist/components/dither-bar/dither-bar.d.ts +47 -0
- package/dist/components/dither-bar/dither-bar.d.ts.map +1 -0
- package/dist/components/dither-bar/dither-bar.js +261 -0
- package/dist/components/dither-bar/dither-bar.js.map +1 -0
- package/dist/components/dither-bar/index.d.ts +2 -0
- package/dist/components/dither-bar/index.js +2 -0
- package/dist/components/dither-bar/meta.js +17 -0
- package/dist/components/dither-bar/meta.js.map +1 -0
- package/dist/components/dither-canvas/dither-canvas.d.ts +76 -0
- package/dist/components/dither-canvas/dither-canvas.d.ts.map +1 -0
- package/dist/components/dither-canvas/dither-canvas.js +236 -0
- package/dist/components/dither-canvas/dither-canvas.js.map +1 -0
- package/dist/components/dither-canvas/dither-engine.d.ts +132 -0
- package/dist/components/dither-canvas/dither-engine.d.ts.map +1 -0
- package/dist/components/dither-canvas/dither-engine.js +243 -0
- package/dist/components/dither-canvas/dither-engine.js.map +1 -0
- package/dist/components/dither-canvas/dither-geometry.d.ts +73 -0
- package/dist/components/dither-canvas/dither-geometry.d.ts.map +1 -0
- package/dist/components/dither-canvas/dither-geometry.js +205 -0
- package/dist/components/dither-canvas/dither-geometry.js.map +1 -0
- package/dist/components/dither-canvas/dither-scrubber.d.ts +64 -0
- package/dist/components/dither-canvas/dither-scrubber.d.ts.map +1 -0
- package/dist/components/dither-canvas/dither-scrubber.js +130 -0
- package/dist/components/dither-canvas/dither-scrubber.js.map +1 -0
- package/dist/components/dither-canvas/index.d.ts +5 -0
- package/dist/components/dither-canvas/index.js +5 -0
- package/dist/components/dither-canvas/meta.js +22 -0
- package/dist/components/dither-canvas/meta.js.map +1 -0
- package/dist/components/dither-donut/dither-donut.d.ts +46 -0
- package/dist/components/dither-donut/dither-donut.d.ts.map +1 -0
- package/dist/components/dither-donut/dither-donut.js +241 -0
- package/dist/components/dither-donut/dither-donut.js.map +1 -0
- package/dist/components/dither-donut/index.d.ts +2 -0
- package/dist/components/dither-donut/index.js +2 -0
- package/dist/components/dither-donut/meta.js +17 -0
- package/dist/components/dither-donut/meta.js.map +1 -0
- package/dist/components/dither-funnel/dither-funnel.d.ts +53 -0
- package/dist/components/dither-funnel/dither-funnel.d.ts.map +1 -0
- package/dist/components/dither-funnel/dither-funnel.js +176 -0
- package/dist/components/dither-funnel/dither-funnel.js.map +1 -0
- package/dist/components/dither-funnel/index.d.ts +2 -0
- package/dist/components/dither-funnel/index.js +2 -0
- package/dist/components/dither-funnel/meta.js +17 -0
- package/dist/components/dither-funnel/meta.js.map +1 -0
- package/dist/components/dither-gauge/dither-gauge.d.ts +48 -0
- package/dist/components/dither-gauge/dither-gauge.d.ts.map +1 -0
- package/dist/components/dither-gauge/dither-gauge.js +189 -0
- package/dist/components/dither-gauge/dither-gauge.js.map +1 -0
- package/dist/components/dither-gauge/index.d.ts +2 -0
- package/dist/components/dither-gauge/index.js +2 -0
- package/dist/components/dither-gauge/meta.js +17 -0
- package/dist/components/dither-gauge/meta.js.map +1 -0
- package/dist/components/dither-heatmap/dither-heatmap.d.ts +63 -0
- package/dist/components/dither-heatmap/dither-heatmap.d.ts.map +1 -0
- package/dist/components/dither-heatmap/dither-heatmap.js +298 -0
- package/dist/components/dither-heatmap/dither-heatmap.js.map +1 -0
- package/dist/components/dither-heatmap/index.d.ts +2 -0
- package/dist/components/dither-heatmap/index.js +2 -0
- package/dist/components/dither-heatmap/meta.js +17 -0
- package/dist/components/dither-heatmap/meta.js.map +1 -0
- package/dist/components/dither-line/dither-line.d.ts +41 -0
- package/dist/components/dither-line/dither-line.d.ts.map +1 -0
- package/dist/components/dither-line/dither-line.js +164 -0
- package/dist/components/dither-line/dither-line.js.map +1 -0
- package/dist/components/dither-line/index.d.ts +2 -0
- package/dist/components/dither-line/index.js +2 -0
- package/dist/components/dither-line/meta.js +17 -0
- package/dist/components/dither-line/meta.js.map +1 -0
- package/dist/components/dither-meter/dither-meter.d.ts +51 -0
- package/dist/components/dither-meter/dither-meter.d.ts.map +1 -0
- package/dist/components/dither-meter/dither-meter.js +211 -0
- package/dist/components/dither-meter/dither-meter.js.map +1 -0
- package/dist/components/dither-meter/index.d.ts +2 -0
- package/dist/components/dither-meter/index.js +2 -0
- package/dist/components/dither-meter/meta.js +17 -0
- package/dist/components/dither-meter/meta.js.map +1 -0
- package/dist/components/dither-scatter/dither-scatter.d.ts +53 -0
- package/dist/components/dither-scatter/dither-scatter.d.ts.map +1 -0
- package/dist/components/dither-scatter/dither-scatter.js +211 -0
- package/dist/components/dither-scatter/dither-scatter.js.map +1 -0
- package/dist/components/dither-scatter/index.d.ts +2 -0
- package/dist/components/dither-scatter/index.js +2 -0
- package/dist/components/dither-scatter/meta.js +17 -0
- package/dist/components/dither-scatter/meta.js.map +1 -0
- package/dist/components/dot-morph-button/dot-morph-button.d.ts +18 -0
- package/dist/components/dot-morph-button/dot-morph-button.d.ts.map +1 -0
- package/dist/components/dot-morph-button/dot-morph-button.js +43 -0
- package/dist/components/dot-morph-button/dot-morph-button.js.map +1 -0
- package/dist/components/dot-morph-button/index.d.ts +2 -0
- package/dist/components/dot-morph-button/index.js +2 -0
- package/dist/components/dot-morph-button/meta.js +17 -0
- package/dist/components/dot-morph-button/meta.js.map +1 -0
- package/dist/components/dots-loader/dots-loader.d.ts +186 -0
- package/dist/components/dots-loader/dots-loader.d.ts.map +1 -0
- package/dist/components/dots-loader/dots-loader.js +412 -0
- package/dist/components/dots-loader/dots-loader.js.map +1 -0
- package/dist/components/dots-loader/index.d.ts +2 -0
- package/dist/components/dots-loader/index.js +2 -0
- package/dist/components/dots-loader/meta.js +17 -0
- package/dist/components/dots-loader/meta.js.map +1 -0
- package/dist/components/drag-stepper/drag-stepper.d.ts +39 -0
- package/dist/components/drag-stepper/drag-stepper.d.ts.map +1 -0
- package/dist/components/drag-stepper/drag-stepper.js +232 -0
- package/dist/components/drag-stepper/drag-stepper.js.map +1 -0
- package/dist/components/drag-stepper/index.d.ts +2 -0
- package/dist/components/drag-stepper/index.js +2 -0
- package/dist/components/drag-stepper/meta.js +17 -0
- package/dist/components/drag-stepper/meta.js.map +1 -0
- package/dist/components/drawer/drawer.d.ts +9 -1
- package/dist/components/drawer/drawer.d.ts.map +1 -1
- package/dist/components/drawer/drawer.js +23 -4
- package/dist/components/drawer/drawer.js.map +1 -1
- package/dist/components/drawer/meta.js +1 -1
- package/dist/components/drawer/meta.js.map +1 -1
- package/dist/components/dropdown-menu/dropdown-menu.d.ts +5 -0
- package/dist/components/dropdown-menu/dropdown-menu.d.ts.map +1 -1
- package/dist/components/dropdown-menu/dropdown-menu.js +25 -5
- package/dist/components/dropdown-menu/dropdown-menu.js.map +1 -1
- package/dist/components/dropdown-menu/meta.js +1 -1
- package/dist/components/dropdown-menu/meta.js.map +1 -1
- package/dist/components/effect-button/effect-button.d.ts +28 -0
- package/dist/components/effect-button/effect-button.d.ts.map +1 -0
- package/dist/components/effect-button/effect-button.js +176 -0
- package/dist/components/effect-button/effect-button.js.map +1 -0
- package/dist/components/effect-button/index.d.ts +2 -0
- package/dist/components/effect-button/index.js +2 -0
- package/dist/components/effect-button/meta.js +17 -0
- package/dist/components/effect-button/meta.js.map +1 -0
- package/dist/components/escape-button/escape-button.d.ts +25 -0
- package/dist/components/escape-button/escape-button.d.ts.map +1 -0
- package/dist/components/escape-button/escape-button.js +154 -0
- package/dist/components/escape-button/escape-button.js.map +1 -0
- package/dist/components/escape-button/index.d.ts +2 -0
- package/dist/components/escape-button/index.js +2 -0
- package/dist/components/escape-button/meta.js +17 -0
- package/dist/components/escape-button/meta.js.map +1 -0
- package/dist/components/expandable-cards/expandable-cards.d.ts +42 -0
- package/dist/components/expandable-cards/expandable-cards.d.ts.map +1 -0
- package/dist/components/expandable-cards/expandable-cards.js +312 -0
- package/dist/components/expandable-cards/expandable-cards.js.map +1 -0
- package/dist/components/expandable-cards/index.d.ts +2 -0
- package/dist/components/expandable-cards/index.js +2 -0
- package/dist/components/expandable-cards/meta.js +17 -0
- package/dist/components/expandable-cards/meta.js.map +1 -0
- package/dist/components/expandable-list/expandable-list.d.ts +35 -0
- package/dist/components/expandable-list/expandable-list.d.ts.map +1 -0
- package/dist/components/expandable-list/expandable-list.js +180 -0
- package/dist/components/expandable-list/expandable-list.js.map +1 -0
- package/dist/components/expandable-list/index.d.ts +2 -0
- package/dist/components/expandable-list/index.js +2 -0
- package/dist/components/expandable-list/meta.js +21 -0
- package/dist/components/expandable-list/meta.js.map +1 -0
- package/dist/components/expanding-search/expanding-search.d.ts +30 -0
- package/dist/components/expanding-search/expanding-search.d.ts.map +1 -0
- package/dist/components/expanding-search/expanding-search.js +141 -0
- package/dist/components/expanding-search/expanding-search.js.map +1 -0
- package/dist/components/expanding-search/index.d.ts +2 -0
- package/dist/components/expanding-search/index.js +2 -0
- package/dist/components/expanding-search/meta.js +17 -0
- package/dist/components/expanding-search/meta.js.map +1 -0
- package/dist/components/exposure-slider/exposure-slider.d.ts +33 -0
- package/dist/components/exposure-slider/exposure-slider.d.ts.map +1 -0
- package/dist/components/exposure-slider/exposure-slider.js +227 -0
- package/dist/components/exposure-slider/exposure-slider.js.map +1 -0
- package/dist/components/exposure-slider/index.d.ts +2 -0
- package/dist/components/exposure-slider/index.js +2 -0
- package/dist/components/exposure-slider/meta.js +17 -0
- package/dist/components/exposure-slider/meta.js.map +1 -0
- package/dist/components/file-upload/file-upload.d.ts +13 -2
- package/dist/components/file-upload/file-upload.d.ts.map +1 -1
- package/dist/components/file-upload/file-upload.js +166 -95
- package/dist/components/file-upload/file-upload.js.map +1 -1
- package/dist/components/file-upload/meta.js +1 -1
- package/dist/components/file-upload/meta.js.map +1 -1
- package/dist/components/focus-blur-links/focus-blur-links.d.ts +25 -0
- package/dist/components/focus-blur-links/focus-blur-links.d.ts.map +1 -0
- package/dist/components/focus-blur-links/focus-blur-links.js +92 -0
- package/dist/components/focus-blur-links/focus-blur-links.js.map +1 -0
- package/dist/components/focus-blur-links/index.d.ts +2 -0
- package/dist/components/focus-blur-links/index.js +2 -0
- package/dist/components/focus-blur-links/meta.js +17 -0
- package/dist/components/focus-blur-links/meta.js.map +1 -0
- package/dist/components/folding-frame/folding-frame.d.ts +38 -0
- package/dist/components/folding-frame/folding-frame.d.ts.map +1 -0
- package/dist/components/folding-frame/folding-frame.js +298 -0
- package/dist/components/folding-frame/folding-frame.js.map +1 -0
- package/dist/components/folding-frame/index.d.ts +2 -0
- package/dist/components/folding-frame/index.js +2 -0
- package/dist/components/folding-frame/meta.js +17 -0
- package/dist/components/folding-frame/meta.js.map +1 -0
- package/dist/components/form/form.d.ts +11 -2
- package/dist/components/form/form.d.ts.map +1 -1
- package/dist/components/form/form.js +55 -5
- package/dist/components/form/form.js.map +1 -1
- package/dist/components/form/meta.js +1 -1
- package/dist/components/form/meta.js.map +1 -1
- package/dist/components/glass-bubble/glass-bubble.d.ts +59 -0
- package/dist/components/glass-bubble/glass-bubble.d.ts.map +1 -0
- package/dist/components/glass-bubble/glass-bubble.js +308 -0
- package/dist/components/glass-bubble/glass-bubble.js.map +1 -0
- package/dist/components/glass-bubble/index.d.ts +2 -0
- package/dist/components/glass-bubble/index.js +2 -0
- package/dist/components/glass-bubble/meta.js +17 -0
- package/dist/components/glass-bubble/meta.js.map +1 -0
- package/dist/components/glow-card/glow-card.d.ts +34 -0
- package/dist/components/glow-card/glow-card.d.ts.map +1 -0
- package/dist/components/glow-card/glow-card.js +104 -0
- package/dist/components/glow-card/glow-card.js.map +1 -0
- package/dist/components/glow-card/index.d.ts +2 -0
- package/dist/components/glow-card/index.js +2 -0
- package/dist/components/glow-card/meta.js +17 -0
- package/dist/components/glow-card/meta.js.map +1 -0
- package/dist/components/goo-ball/goo-ball.d.ts +48 -0
- package/dist/components/goo-ball/goo-ball.d.ts.map +1 -0
- package/dist/components/goo-ball/goo-ball.js +295 -0
- package/dist/components/goo-ball/goo-ball.js.map +1 -0
- package/dist/components/goo-ball/index.d.ts +2 -0
- package/dist/components/goo-ball/index.js +2 -0
- package/dist/components/goo-ball/meta.js +21 -0
- package/dist/components/goo-ball/meta.js.map +1 -0
- package/dist/components/goo-tabs/goo-tabs.d.ts +37 -0
- package/dist/components/goo-tabs/goo-tabs.d.ts.map +1 -0
- package/dist/components/goo-tabs/goo-tabs.js +286 -0
- package/dist/components/goo-tabs/goo-tabs.js.map +1 -0
- package/dist/components/goo-tabs/index.d.ts +2 -0
- package/dist/components/goo-tabs/index.js +2 -0
- package/dist/components/goo-tabs/meta.js +17 -0
- package/dist/components/goo-tabs/meta.js.map +1 -0
- package/dist/components/gooey-popover/gooey-popover.d.ts +32 -0
- package/dist/components/gooey-popover/gooey-popover.d.ts.map +1 -0
- package/dist/components/gooey-popover/gooey-popover.js +257 -0
- package/dist/components/gooey-popover/gooey-popover.js.map +1 -0
- package/dist/components/gooey-popover/index.d.ts +2 -0
- package/dist/components/gooey-popover/index.js +2 -0
- package/dist/components/gooey-popover/meta.js +17 -0
- package/dist/components/gooey-popover/meta.js.map +1 -0
- package/dist/components/gradient-orb/gradient-orb.d.ts +39 -0
- package/dist/components/gradient-orb/gradient-orb.d.ts.map +1 -0
- package/dist/components/gradient-orb/gradient-orb.js +185 -0
- package/dist/components/gradient-orb/gradient-orb.js.map +1 -0
- package/dist/components/gradient-orb/index.d.ts +2 -0
- package/dist/components/gradient-orb/index.js +2 -0
- package/dist/components/gradient-orb/meta.js +17 -0
- package/dist/components/gradient-orb/meta.js.map +1 -0
- package/dist/components/grid-loader/grid-loader.d.ts +224 -0
- package/dist/components/grid-loader/grid-loader.d.ts.map +1 -0
- package/dist/components/grid-loader/grid-loader.js +271 -0
- package/dist/components/grid-loader/grid-loader.js.map +1 -0
- package/dist/components/grid-loader/index.d.ts +2 -0
- package/dist/components/grid-loader/index.js +2 -0
- package/dist/components/grid-loader/meta.js +17 -0
- package/dist/components/grid-loader/meta.js.map +1 -0
- package/dist/components/image-accordion/image-accordion.d.ts +40 -0
- package/dist/components/image-accordion/image-accordion.d.ts.map +1 -0
- package/dist/components/image-accordion/image-accordion.js +118 -0
- package/dist/components/image-accordion/image-accordion.js.map +1 -0
- package/dist/components/image-accordion/index.d.ts +2 -0
- package/dist/components/image-accordion/index.js +2 -0
- package/dist/components/image-accordion/meta.js +17 -0
- package/dist/components/image-accordion/meta.js.map +1 -0
- package/dist/components/image-metadata/image-metadata.d.ts +34 -0
- package/dist/components/image-metadata/image-metadata.d.ts.map +1 -0
- package/dist/components/image-metadata/image-metadata.js +178 -0
- package/dist/components/image-metadata/image-metadata.js.map +1 -0
- package/dist/components/image-metadata/index.d.ts +2 -0
- package/dist/components/image-metadata/index.js +2 -0
- package/dist/components/image-metadata/meta.js +17 -0
- package/dist/components/image-metadata/meta.js.map +1 -0
- package/dist/components/image-selector/image-selector.d.ts +37 -0
- package/dist/components/image-selector/image-selector.d.ts.map +1 -0
- package/dist/components/image-selector/image-selector.js +253 -0
- package/dist/components/image-selector/image-selector.js.map +1 -0
- package/dist/components/image-selector/index.d.ts +2 -0
- package/dist/components/image-selector/index.js +2 -0
- package/dist/components/image-selector/meta.js +17 -0
- package/dist/components/image-selector/meta.js.map +1 -0
- package/dist/components/inline-confirm/index.d.ts +2 -0
- package/dist/components/inline-confirm/index.js +2 -0
- package/dist/components/inline-confirm/inline-confirm.d.ts +38 -0
- package/dist/components/inline-confirm/inline-confirm.d.ts.map +1 -0
- package/dist/components/inline-confirm/inline-confirm.js +246 -0
- package/dist/components/inline-confirm/inline-confirm.js.map +1 -0
- package/dist/components/inline-confirm/meta.js +17 -0
- package/dist/components/inline-confirm/meta.js.map +1 -0
- package/dist/components/input/floating-label-input.d.ts +26 -0
- package/dist/components/input/floating-label-input.d.ts.map +1 -0
- package/dist/components/input/floating-label-input.js +47 -0
- package/dist/components/input/floating-label-input.js.map +1 -0
- package/dist/components/input/index.d.ts +2 -1
- package/dist/components/input/index.js +2 -1
- package/dist/components/input/meta.js +2 -2
- package/dist/components/input/meta.js.map +1 -1
- package/dist/components/invite-carousel/carousel-controls.js +189 -0
- package/dist/components/invite-carousel/carousel-controls.js.map +1 -0
- package/dist/components/invite-carousel/index.d.ts +2 -0
- package/dist/components/invite-carousel/index.js +2 -0
- package/dist/components/invite-carousel/invite-carousel.d.ts +56 -0
- package/dist/components/invite-carousel/invite-carousel.d.ts.map +1 -0
- package/dist/components/invite-carousel/invite-carousel.js +207 -0
- package/dist/components/invite-carousel/invite-carousel.js.map +1 -0
- package/dist/components/invite-carousel/meta.js +17 -0
- package/dist/components/invite-carousel/meta.js.map +1 -0
- package/dist/components/island/index.d.ts +2 -0
- package/dist/components/island/index.js +2 -0
- package/dist/components/island/island.d.ts +30 -0
- package/dist/components/island/island.d.ts.map +1 -0
- package/dist/components/island/island.js +94 -0
- package/dist/components/island/island.js.map +1 -0
- package/dist/components/island/meta.js +17 -0
- package/dist/components/island/meta.js.map +1 -0
- package/dist/components/liquid-toggle/index.d.ts +2 -0
- package/dist/components/liquid-toggle/index.js +2 -0
- package/dist/components/liquid-toggle/liquid-toggle.d.ts +19 -0
- package/dist/components/liquid-toggle/liquid-toggle.d.ts.map +1 -0
- package/dist/components/liquid-toggle/liquid-toggle.js +175 -0
- package/dist/components/liquid-toggle/liquid-toggle.js.map +1 -0
- package/dist/components/liquid-toggle/meta.js +21 -0
- package/dist/components/liquid-toggle/meta.js.map +1 -0
- package/dist/components/magnetic-button/index.d.ts +2 -0
- package/dist/components/magnetic-button/index.js +2 -0
- package/dist/components/magnetic-button/magnetic-button.d.ts +32 -0
- package/dist/components/magnetic-button/magnetic-button.d.ts.map +1 -0
- package/dist/components/magnetic-button/magnetic-button.js +138 -0
- package/dist/components/magnetic-button/magnetic-button.js.map +1 -0
- package/dist/components/magnetic-button/meta.js +17 -0
- package/dist/components/magnetic-button/meta.js.map +1 -0
- package/dist/components/magnetic-select/index.d.ts +2 -0
- package/dist/components/magnetic-select/index.js +2 -0
- package/dist/components/magnetic-select/magnetic-select-spring.js +21 -0
- package/dist/components/magnetic-select/magnetic-select-spring.js.map +1 -0
- package/dist/components/magnetic-select/magnetic-select.d.ts +44 -0
- package/dist/components/magnetic-select/magnetic-select.d.ts.map +1 -0
- package/dist/components/magnetic-select/magnetic-select.js +330 -0
- package/dist/components/magnetic-select/magnetic-select.js.map +1 -0
- package/dist/components/magnetic-select/meta.js +17 -0
- package/dist/components/magnetic-select/meta.js.map +1 -0
- package/dist/components/magnify-dock/index.d.ts +2 -0
- package/dist/components/magnify-dock/index.js +2 -0
- package/dist/components/magnify-dock/magnify-dock.d.ts +40 -0
- package/dist/components/magnify-dock/magnify-dock.d.ts.map +1 -0
- package/dist/components/magnify-dock/magnify-dock.js +183 -0
- package/dist/components/magnify-dock/magnify-dock.js.map +1 -0
- package/dist/components/magnify-dock/meta.js +17 -0
- package/dist/components/magnify-dock/meta.js.map +1 -0
- package/dist/components/marquee/index.d.ts +2 -0
- package/dist/components/marquee/index.js +2 -0
- package/dist/components/marquee/marquee.d.ts +30 -0
- package/dist/components/marquee/marquee.d.ts.map +1 -0
- package/dist/components/marquee/marquee.js +117 -0
- package/dist/components/marquee/marquee.js.map +1 -0
- package/dist/components/marquee/meta.js +17 -0
- package/dist/components/marquee/meta.js.map +1 -0
- package/dist/components/morph-button/index.d.ts +2 -0
- package/dist/components/morph-button/index.js +2 -0
- package/dist/components/morph-button/meta.js +17 -0
- package/dist/components/morph-button/meta.js.map +1 -0
- package/dist/components/morph-button/morph-button.d.ts +57 -0
- package/dist/components/morph-button/morph-button.d.ts.map +1 -0
- package/dist/components/morph-button/morph-button.js +220 -0
- package/dist/components/morph-button/morph-button.js.map +1 -0
- package/dist/components/morph-surface/index.d.ts +2 -0
- package/dist/components/morph-surface/index.js +2 -0
- package/dist/components/morph-surface/meta.js +17 -0
- package/dist/components/morph-surface/meta.js.map +1 -0
- package/dist/components/morph-surface/morph-surface.d.ts +51 -0
- package/dist/components/morph-surface/morph-surface.d.ts.map +1 -0
- package/dist/components/morph-surface/morph-surface.js +228 -0
- package/dist/components/morph-surface/morph-surface.js.map +1 -0
- package/dist/components/notification-badge/index.d.ts +2 -0
- package/dist/components/notification-badge/index.js +2 -0
- package/dist/components/notification-badge/meta.js +17 -0
- package/dist/components/notification-badge/meta.js.map +1 -0
- package/dist/components/notification-badge/notification-badge.d.ts +40 -0
- package/dist/components/notification-badge/notification-badge.d.ts.map +1 -0
- package/dist/components/notification-badge/notification-badge.js +107 -0
- package/dist/components/notification-badge/notification-badge.js.map +1 -0
- package/dist/components/notify-button/index.d.ts +2 -0
- package/dist/components/notify-button/index.js +2 -0
- package/dist/components/notify-button/meta.js +17 -0
- package/dist/components/notify-button/meta.js.map +1 -0
- package/dist/components/notify-button/notify-button.d.ts +28 -0
- package/dist/components/notify-button/notify-button.d.ts.map +1 -0
- package/dist/components/notify-button/notify-button.js +114 -0
- package/dist/components/notify-button/notify-button.js.map +1 -0
- package/dist/components/now-playing/index.d.ts +2 -0
- package/dist/components/now-playing/index.js +2 -0
- package/dist/components/now-playing/meta.js +17 -0
- package/dist/components/now-playing/meta.js.map +1 -0
- package/dist/components/now-playing/now-playing.d.ts +39 -0
- package/dist/components/now-playing/now-playing.d.ts.map +1 -0
- package/dist/components/now-playing/now-playing.js +354 -0
- package/dist/components/now-playing/now-playing.js.map +1 -0
- package/dist/components/number-flow/index.d.ts +2 -0
- package/dist/components/number-flow/index.js +2 -0
- package/dist/components/number-flow/meta.js +17 -0
- package/dist/components/number-flow/meta.js.map +1 -0
- package/dist/components/number-flow/number-flow.d.ts +45 -0
- package/dist/components/number-flow/number-flow.d.ts.map +1 -0
- package/dist/components/number-flow/number-flow.js +226 -0
- package/dist/components/number-flow/number-flow.js.map +1 -0
- package/dist/components/orb-face/index.d.ts +2 -0
- package/dist/components/orb-face/index.js +2 -0
- package/dist/components/orb-face/meta.js +17 -0
- package/dist/components/orb-face/meta.js.map +1 -0
- package/dist/components/orb-face/orb-face.d.ts +29 -0
- package/dist/components/orb-face/orb-face.d.ts.map +1 -0
- package/dist/components/orb-face/orb-face.js +353 -0
- package/dist/components/orb-face/orb-face.js.map +1 -0
- package/dist/components/otp-input/index.d.ts +2 -0
- package/dist/components/otp-input/index.js +2 -0
- package/dist/components/otp-input/meta.js +17 -0
- package/dist/components/otp-input/meta.js.map +1 -0
- package/dist/components/otp-input/otp-input.d.ts +36 -0
- package/dist/components/otp-input/otp-input.d.ts.map +1 -0
- package/dist/components/otp-input/otp-input.js +249 -0
- package/dist/components/otp-input/otp-input.js.map +1 -0
- package/dist/components/pagination/index.d.ts +2 -2
- package/dist/components/pagination/meta.js +2 -2
- package/dist/components/pagination/meta.js.map +1 -1
- package/dist/components/pagination/pagination-indicator.js +76 -0
- package/dist/components/pagination/pagination-indicator.js.map +1 -0
- package/dist/components/pagination/pagination.d.ts +10 -2
- package/dist/components/pagination/pagination.d.ts.map +1 -1
- package/dist/components/pagination/pagination.js +13 -4
- package/dist/components/pagination/pagination.js.map +1 -1
- package/dist/components/palette-generator/index.d.ts +2 -0
- package/dist/components/palette-generator/index.js +2 -0
- package/dist/components/palette-generator/meta.js +17 -0
- package/dist/components/palette-generator/meta.js.map +1 -0
- package/dist/components/palette-generator/palette-generator.d.ts +43 -0
- package/dist/components/palette-generator/palette-generator.d.ts.map +1 -0
- package/dist/components/palette-generator/palette-generator.js +199 -0
- package/dist/components/palette-generator/palette-generator.js.map +1 -0
- package/dist/components/photo-stack/index.d.ts +2 -0
- package/dist/components/photo-stack/index.js +2 -0
- package/dist/components/photo-stack/meta.js +17 -0
- package/dist/components/photo-stack/meta.js.map +1 -0
- package/dist/components/photo-stack/photo-stack.d.ts +30 -0
- package/dist/components/photo-stack/photo-stack.d.ts.map +1 -0
- package/dist/components/photo-stack/photo-stack.js +236 -0
- package/dist/components/photo-stack/photo-stack.js.map +1 -0
- package/dist/components/photo-tabs/index.d.ts +2 -0
- package/dist/components/photo-tabs/index.js +2 -0
- package/dist/components/photo-tabs/meta.js +17 -0
- package/dist/components/photo-tabs/meta.js.map +1 -0
- package/dist/components/photo-tabs/photo-tabs.d.ts +35 -0
- package/dist/components/photo-tabs/photo-tabs.d.ts.map +1 -0
- package/dist/components/photo-tabs/photo-tabs.js +82 -0
- package/dist/components/photo-tabs/photo-tabs.js.map +1 -0
- package/dist/components/pixel-avatar/index.d.ts +2 -0
- package/dist/components/pixel-avatar/index.js +2 -0
- package/dist/components/pixel-avatar/meta.js +17 -0
- package/dist/components/pixel-avatar/meta.js.map +1 -0
- package/dist/components/pixel-avatar/pixel-avatar.d.ts +23 -0
- package/dist/components/pixel-avatar/pixel-avatar.d.ts.map +1 -0
- package/dist/components/pixel-avatar/pixel-avatar.js +181 -0
- package/dist/components/pixel-avatar/pixel-avatar.js.map +1 -0
- package/dist/components/product-card/index.d.ts +2 -0
- package/dist/components/product-card/index.js +2 -0
- package/dist/components/product-card/meta.js +17 -0
- package/dist/components/product-card/meta.js.map +1 -0
- package/dist/components/product-card/product-card.d.ts +43 -0
- package/dist/components/product-card/product-card.d.ts.map +1 -0
- package/dist/components/product-card/product-card.js +249 -0
- package/dist/components/product-card/product-card.js.map +1 -0
- package/dist/components/progress/meta.js +1 -1
- package/dist/components/progress/meta.js.map +1 -1
- package/dist/components/progress/progress.d.ts +22 -3
- package/dist/components/progress/progress.d.ts.map +1 -1
- package/dist/components/progress/progress.js +56 -6
- package/dist/components/progress/progress.js.map +1 -1
- package/dist/components/pull-to-refresh/index.d.ts +2 -0
- package/dist/components/pull-to-refresh/index.js +2 -0
- package/dist/components/pull-to-refresh/meta.js +17 -0
- package/dist/components/pull-to-refresh/meta.js.map +1 -0
- package/dist/components/pull-to-refresh/pull-to-refresh.d.ts +47 -0
- package/dist/components/pull-to-refresh/pull-to-refresh.d.ts.map +1 -0
- package/dist/components/pull-to-refresh/pull-to-refresh.js +302 -0
- package/dist/components/pull-to-refresh/pull-to-refresh.js.map +1 -0
- package/dist/components/radial-menu/index.d.ts +2 -0
- package/dist/components/radial-menu/index.js +2 -0
- package/dist/components/radial-menu/meta.js +17 -0
- package/dist/components/radial-menu/meta.js.map +1 -0
- package/dist/components/radial-menu/radial-menu.d.ts +44 -0
- package/dist/components/radial-menu/radial-menu.d.ts.map +1 -0
- package/dist/components/radial-menu/radial-menu.js +313 -0
- package/dist/components/radial-menu/radial-menu.js.map +1 -0
- package/dist/components/radio-group/radio-group.d.ts.map +1 -1
- package/dist/components/radio-group/radio-group.js +4 -1
- package/dist/components/radio-group/radio-group.js.map +1 -1
- package/dist/components/range-dial/index.d.ts +2 -0
- package/dist/components/range-dial/index.js +2 -0
- package/dist/components/range-dial/meta.js +17 -0
- package/dist/components/range-dial/meta.js.map +1 -0
- package/dist/components/range-dial/range-dial.d.ts +33 -0
- package/dist/components/range-dial/range-dial.d.ts.map +1 -0
- package/dist/components/range-dial/range-dial.js +308 -0
- package/dist/components/range-dial/range-dial.js.map +1 -0
- package/dist/components/reorder-list/index.d.ts +2 -0
- package/dist/components/reorder-list/index.js +2 -0
- package/dist/components/reorder-list/meta.js +17 -0
- package/dist/components/reorder-list/meta.js.map +1 -0
- package/dist/components/reorder-list/reorder-list.d.ts +79 -0
- package/dist/components/reorder-list/reorder-list.d.ts.map +1 -0
- package/dist/components/reorder-list/reorder-list.js +471 -0
- package/dist/components/reorder-list/reorder-list.js.map +1 -0
- package/dist/components/reviews-carousel/carousel-controls.js +189 -0
- package/dist/components/reviews-carousel/carousel-controls.js.map +1 -0
- package/dist/components/reviews-carousel/index.d.ts +2 -0
- package/dist/components/reviews-carousel/index.js +2 -0
- package/dist/components/reviews-carousel/meta.js +17 -0
- package/dist/components/reviews-carousel/meta.js.map +1 -0
- package/dist/components/reviews-carousel/reviews-carousel.d.ts +46 -0
- package/dist/components/reviews-carousel/reviews-carousel.d.ts.map +1 -0
- package/dist/components/reviews-carousel/reviews-carousel.js +177 -0
- package/dist/components/reviews-carousel/reviews-carousel.js.map +1 -0
- package/dist/components/rich-popover/index.d.ts +2 -0
- package/dist/components/rich-popover/index.js +2 -0
- package/dist/components/rich-popover/meta.js +17 -0
- package/dist/components/rich-popover/meta.js.map +1 -0
- package/dist/components/rich-popover/rich-popover.d.ts +36 -0
- package/dist/components/rich-popover/rich-popover.d.ts.map +1 -0
- package/dist/components/rich-popover/rich-popover.js +157 -0
- package/dist/components/rich-popover/rich-popover.js.map +1 -0
- package/dist/components/ring-loader/index.d.ts +2 -0
- package/dist/components/ring-loader/index.js +2 -0
- package/dist/components/ring-loader/meta.js +17 -0
- package/dist/components/ring-loader/meta.js.map +1 -0
- package/dist/components/ring-loader/ring-loader.d.ts +31 -0
- package/dist/components/ring-loader/ring-loader.d.ts.map +1 -0
- package/dist/components/ring-loader/ring-loader.js +597 -0
- package/dist/components/ring-loader/ring-loader.js.map +1 -0
- package/dist/components/scramble-text/index.d.ts +2 -0
- package/dist/components/scramble-text/index.js +2 -0
- package/dist/components/scramble-text/meta.js +17 -0
- package/dist/components/scramble-text/meta.js.map +1 -0
- package/dist/components/scramble-text/scramble-text.d.ts +35 -0
- package/dist/components/scramble-text/scramble-text.d.ts.map +1 -0
- package/dist/components/scramble-text/scramble-text.js +151 -0
- package/dist/components/scramble-text/scramble-text.js.map +1 -0
- package/dist/components/scroll-reveal-text/index.d.ts +2 -0
- package/dist/components/scroll-reveal-text/index.js +2 -0
- package/dist/components/scroll-reveal-text/meta.js +17 -0
- package/dist/components/scroll-reveal-text/meta.js.map +1 -0
- package/dist/components/scroll-reveal-text/scroll-reveal-text.d.ts +22 -0
- package/dist/components/scroll-reveal-text/scroll-reveal-text.d.ts.map +1 -0
- package/dist/components/scroll-reveal-text/scroll-reveal-text.js +113 -0
- package/dist/components/scroll-reveal-text/scroll-reveal-text.js.map +1 -0
- package/dist/components/scrubber/index.d.ts +2 -0
- package/dist/components/scrubber/index.js +2 -0
- package/dist/components/scrubber/meta.js +17 -0
- package/dist/components/scrubber/meta.js.map +1 -0
- package/dist/components/scrubber/scrubber.d.ts +37 -0
- package/dist/components/scrubber/scrubber.d.ts.map +1 -0
- package/dist/components/scrubber/scrubber.js +217 -0
- package/dist/components/scrubber/scrubber.js.map +1 -0
- package/dist/components/select/meta.js +1 -1
- package/dist/components/select/meta.js.map +1 -1
- package/dist/components/select/select.d.ts +5 -0
- package/dist/components/select/select.d.ts.map +1 -1
- package/dist/components/select/select.js +27 -5
- package/dist/components/select/select.js.map +1 -1
- package/dist/components/selection-list/index.d.ts +2 -0
- package/dist/components/selection-list/index.js +2 -0
- package/dist/components/selection-list/meta.js +17 -0
- package/dist/components/selection-list/meta.js.map +1 -0
- package/dist/components/selection-list/selection-list-spring.js +21 -0
- package/dist/components/selection-list/selection-list-spring.js.map +1 -0
- package/dist/components/selection-list/selection-list.d.ts +42 -0
- package/dist/components/selection-list/selection-list.d.ts.map +1 -0
- package/dist/components/selection-list/selection-list.js +355 -0
- package/dist/components/selection-list/selection-list.js.map +1 -0
- package/dist/components/shader-transition/index.d.ts +4 -0
- package/dist/components/shader-transition/index.js +4 -0
- package/dist/components/shader-transition/meta.js +21 -0
- package/dist/components/shader-transition/meta.js.map +1 -0
- package/dist/components/shader-transition/shader-transition-engine.d.ts +39 -0
- package/dist/components/shader-transition/shader-transition-engine.d.ts.map +1 -0
- package/dist/components/shader-transition/shader-transition-engine.js +294 -0
- package/dist/components/shader-transition/shader-transition-engine.js.map +1 -0
- package/dist/components/shader-transition/shader-transition-presets.d.ts +222 -0
- package/dist/components/shader-transition/shader-transition-presets.d.ts.map +1 -0
- package/dist/components/shader-transition/shader-transition-presets.js +346 -0
- package/dist/components/shader-transition/shader-transition-presets.js.map +1 -0
- package/dist/components/shader-transition/shader-transition.d.ts +35 -0
- package/dist/components/shader-transition/shader-transition.d.ts.map +1 -0
- package/dist/components/shader-transition/shader-transition.js +314 -0
- package/dist/components/shader-transition/shader-transition.js.map +1 -0
- package/dist/components/shape-loader/index.d.ts +2 -0
- package/dist/components/shape-loader/index.js +2 -0
- package/dist/components/shape-loader/meta.js +17 -0
- package/dist/components/shape-loader/meta.js.map +1 -0
- package/dist/components/shape-loader/shape-loader-variants.d.ts +8 -0
- package/dist/components/shape-loader/shape-loader-variants.d.ts.map +1 -0
- package/dist/components/shape-loader/shape-loader-variants.js +635 -0
- package/dist/components/shape-loader/shape-loader-variants.js.map +1 -0
- package/dist/components/shape-loader/shape-loader.d.ts +26 -0
- package/dist/components/shape-loader/shape-loader.d.ts.map +1 -0
- package/dist/components/shape-loader/shape-loader.js +99 -0
- package/dist/components/shape-loader/shape-loader.js.map +1 -0
- package/dist/components/sheet/meta.js +1 -1
- package/dist/components/sheet/meta.js.map +1 -1
- package/dist/components/sheet/sheet.d.ts +10 -2
- package/dist/components/sheet/sheet.d.ts.map +1 -1
- package/dist/components/sheet/sheet.js +23 -4
- package/dist/components/sheet/sheet.js.map +1 -1
- package/dist/components/shimmer-text/index.d.ts +2 -0
- package/dist/components/shimmer-text/index.js +2 -0
- package/dist/components/shimmer-text/meta.js +17 -0
- package/dist/components/shimmer-text/meta.js.map +1 -0
- package/dist/components/shimmer-text/shimmer-text.d.ts +33 -0
- package/dist/components/shimmer-text/shimmer-text.d.ts.map +1 -0
- package/dist/components/shimmer-text/shimmer-text.js +120 -0
- package/dist/components/shimmer-text/shimmer-text.js.map +1 -0
- package/dist/components/skeleton/index.d.ts +2 -2
- package/dist/components/skeleton/meta.js +1 -1
- package/dist/components/skeleton/meta.js.map +1 -1
- package/dist/components/skeleton/skeleton.d.ts +14 -2
- package/dist/components/skeleton/skeleton.d.ts.map +1 -1
- package/dist/components/skeleton/skeleton.js +24 -5
- package/dist/components/skeleton/skeleton.js.map +1 -1
- package/dist/components/slide-to-confirm/index.d.ts +2 -0
- package/dist/components/slide-to-confirm/index.js +2 -0
- package/dist/components/slide-to-confirm/meta.js +21 -0
- package/dist/components/slide-to-confirm/meta.js.map +1 -0
- package/dist/components/slide-to-confirm/slide-to-confirm.d.ts +38 -0
- package/dist/components/slide-to-confirm/slide-to-confirm.d.ts.map +1 -0
- package/dist/components/slide-to-confirm/slide-to-confirm.js +389 -0
- package/dist/components/slide-to-confirm/slide-to-confirm.js.map +1 -0
- package/dist/components/slosh-slider/index.d.ts +2 -0
- package/dist/components/slosh-slider/index.js +2 -0
- package/dist/components/slosh-slider/meta.js +21 -0
- package/dist/components/slosh-slider/meta.js.map +1 -0
- package/dist/components/slosh-slider/slosh-slider.d.ts +43 -0
- package/dist/components/slosh-slider/slosh-slider.d.ts.map +1 -0
- package/dist/components/slosh-slider/slosh-slider.js +140 -0
- package/dist/components/slosh-slider/slosh-slider.js.map +1 -0
- package/dist/components/social-selector/index.d.ts +2 -0
- package/dist/components/social-selector/index.js +2 -0
- package/dist/components/social-selector/meta.js +17 -0
- package/dist/components/social-selector/meta.js.map +1 -0
- package/dist/components/social-selector/social-selector.d.ts +45 -0
- package/dist/components/social-selector/social-selector.d.ts.map +1 -0
- package/dist/components/social-selector/social-selector.js +128 -0
- package/dist/components/social-selector/social-selector.js.map +1 -0
- package/dist/components/spinner/spinner.d.ts +1 -1
- package/dist/components/star-count/index.d.ts +2 -0
- package/dist/components/star-count/index.js +2 -0
- package/dist/components/star-count/meta.js +17 -0
- package/dist/components/star-count/meta.js.map +1 -0
- package/dist/components/star-count/star-count.d.ts +35 -0
- package/dist/components/star-count/star-count.d.ts.map +1 -0
- package/dist/components/star-count/star-count.js +94 -0
- package/dist/components/star-count/star-count.js.map +1 -0
- package/dist/components/stepper/index.d.ts +2 -0
- package/dist/components/stepper/index.js +2 -0
- package/dist/components/stepper/meta.js +17 -0
- package/dist/components/stepper/meta.js.map +1 -0
- package/dist/components/stepper/stepper.d.ts +45 -0
- package/dist/components/stepper/stepper.d.ts.map +1 -0
- package/dist/components/stepper/stepper.js +207 -0
- package/dist/components/stepper/stepper.js.map +1 -0
- package/dist/components/swipe-carousel/carousel-controls.js +98 -0
- package/dist/components/swipe-carousel/carousel-controls.js.map +1 -0
- package/dist/components/swipe-carousel/index.d.ts +2 -0
- package/dist/components/swipe-carousel/index.js +2 -0
- package/dist/components/swipe-carousel/meta.js +17 -0
- package/dist/components/swipe-carousel/meta.js.map +1 -0
- package/dist/components/swipe-carousel/swipe-carousel.d.ts +27 -0
- package/dist/components/swipe-carousel/swipe-carousel.d.ts.map +1 -0
- package/dist/components/swipe-carousel/swipe-carousel.js +288 -0
- package/dist/components/swipe-carousel/swipe-carousel.js.map +1 -0
- package/dist/components/switch/meta.js +1 -1
- package/dist/components/switch/meta.js.map +1 -1
- package/dist/components/switch/switch.d.ts +25 -3
- package/dist/components/switch/switch.d.ts.map +1 -1
- package/dist/components/switch/switch.js +20 -4
- package/dist/components/switch/switch.js.map +1 -1
- package/dist/components/switchboard-card/index.d.ts +2 -0
- package/dist/components/switchboard-card/index.js +2 -0
- package/dist/components/switchboard-card/meta.js +17 -0
- package/dist/components/switchboard-card/meta.js.map +1 -0
- package/dist/components/switchboard-card/switchboard-card.d.ts +44 -0
- package/dist/components/switchboard-card/switchboard-card.d.ts.map +1 -0
- package/dist/components/switchboard-card/switchboard-card.js +169 -0
- package/dist/components/switchboard-card/switchboard-card.js.map +1 -0
- package/dist/components/tabs/index.d.ts +2 -2
- package/dist/components/tabs/index.js +2 -2
- package/dist/components/tabs/meta.js +1 -1
- package/dist/components/tabs/meta.js.map +1 -1
- package/dist/components/tabs/tabs.d.ts +6 -2
- package/dist/components/tabs/tabs.d.ts.map +1 -1
- package/dist/components/tabs/tabs.js +112 -10
- package/dist/components/tabs/tabs.js.map +1 -1
- package/dist/components/tags-input/meta.js +1 -1
- package/dist/components/tags-input/meta.js.map +1 -1
- package/dist/components/tags-input/tags-input.d.ts +7 -1
- package/dist/components/tags-input/tags-input.d.ts.map +1 -1
- package/dist/components/tags-input/tags-input.js +82 -6
- package/dist/components/tags-input/tags-input.js.map +1 -1
- package/dist/components/text-effect/index.d.ts +3 -0
- package/dist/components/text-effect/index.js +3 -0
- package/dist/components/text-effect/meta.js +17 -0
- package/dist/components/text-effect/meta.js.map +1 -0
- package/dist/components/text-effect/text-effect-presets.d.ts +256 -0
- package/dist/components/text-effect/text-effect-presets.d.ts.map +1 -0
- package/dist/components/text-effect/text-effect-presets.js +292 -0
- package/dist/components/text-effect/text-effect-presets.js.map +1 -0
- package/dist/components/text-effect/text-effect.d.ts +58 -0
- package/dist/components/text-effect/text-effect.d.ts.map +1 -0
- package/dist/components/text-effect/text-effect.js +243 -0
- package/dist/components/text-effect/text-effect.js.map +1 -0
- package/dist/components/text-loader/index.d.ts +2 -0
- package/dist/components/text-loader/index.js +2 -0
- package/dist/components/text-loader/meta.js +17 -0
- package/dist/components/text-loader/meta.js.map +1 -0
- package/dist/components/text-loader/text-loader.d.ts +30 -0
- package/dist/components/text-loader/text-loader.d.ts.map +1 -0
- package/dist/components/text-loader/text-loader.js +514 -0
- package/dist/components/text-loader/text-loader.js.map +1 -0
- package/dist/components/text-swap/index.d.ts +3 -0
- package/dist/components/text-swap/index.js +3 -0
- package/dist/components/text-swap/meta.js +17 -0
- package/dist/components/text-swap/meta.js.map +1 -0
- package/dist/components/text-swap/text-rotate.d.ts +17 -0
- package/dist/components/text-swap/text-rotate.d.ts.map +1 -0
- package/dist/components/text-swap/text-rotate.js +51 -0
- package/dist/components/text-swap/text-rotate.js.map +1 -0
- package/dist/components/text-swap/text-swap.d.ts +41 -0
- package/dist/components/text-swap/text-swap.d.ts.map +1 -0
- package/dist/components/text-swap/text-swap.js +303 -0
- package/dist/components/text-swap/text-swap.js.map +1 -0
- package/dist/components/tick-progress/index.d.ts +2 -0
- package/dist/components/tick-progress/index.js +2 -0
- package/dist/components/tick-progress/meta.js +17 -0
- package/dist/components/tick-progress/meta.js.map +1 -0
- package/dist/components/tick-progress/tick-progress.d.ts +28 -0
- package/dist/components/tick-progress/tick-progress.d.ts.map +1 -0
- package/dist/components/tick-progress/tick-progress.js +151 -0
- package/dist/components/tick-progress/tick-progress.js.map +1 -0
- package/dist/components/tilt-card/index.d.ts +2 -0
- package/dist/components/tilt-card/index.js +2 -0
- package/dist/components/tilt-card/meta.js +17 -0
- package/dist/components/tilt-card/meta.js.map +1 -0
- package/dist/components/tilt-card/tilt-card.d.ts +36 -0
- package/dist/components/tilt-card/tilt-card.d.ts.map +1 -0
- package/dist/components/tilt-card/tilt-card.js +135 -0
- package/dist/components/tilt-card/tilt-card.js.map +1 -0
- package/dist/components/time-stack/index.d.ts +2 -0
- package/dist/components/time-stack/index.js +2 -0
- package/dist/components/time-stack/meta.js +17 -0
- package/dist/components/time-stack/meta.js.map +1 -0
- package/dist/components/time-stack/time-stack.d.ts +37 -0
- package/dist/components/time-stack/time-stack.d.ts.map +1 -0
- package/dist/components/time-stack/time-stack.js +253 -0
- package/dist/components/time-stack/time-stack.js.map +1 -0
- package/dist/components/toast/meta.js +1 -1
- package/dist/components/toast/meta.js.map +1 -1
- package/dist/components/toast/toast.d.ts +13 -4
- package/dist/components/toast/toast.d.ts.map +1 -1
- package/dist/components/toast/toast.js +32 -9
- package/dist/components/toast/toast.js.map +1 -1
- package/dist/components/todo-tower/index.d.ts +2 -0
- package/dist/components/todo-tower/index.js +2 -0
- package/dist/components/todo-tower/meta.js +17 -0
- package/dist/components/todo-tower/meta.js.map +1 -0
- package/dist/components/todo-tower/todo-tower.d.ts +38 -0
- package/dist/components/todo-tower/todo-tower.d.ts.map +1 -0
- package/dist/components/todo-tower/todo-tower.js +284 -0
- package/dist/components/todo-tower/todo-tower.js.map +1 -0
- package/dist/components/tooltip/meta.js +1 -1
- package/dist/components/tooltip/meta.js.map +1 -1
- package/dist/components/tooltip/tooltip.d.ts +4 -0
- package/dist/components/tooltip/tooltip.d.ts.map +1 -1
- package/dist/components/tooltip/tooltip.js +20 -4
- package/dist/components/tooltip/tooltip.js.map +1 -1
- package/dist/components/tweet-card/index.d.ts +2 -0
- package/dist/components/tweet-card/index.js +2 -0
- package/dist/components/tweet-card/meta.js +17 -0
- package/dist/components/tweet-card/meta.js.map +1 -0
- package/dist/components/tweet-card/tweet-card.d.ts +57 -0
- package/dist/components/tweet-card/tweet-card.d.ts.map +1 -0
- package/dist/components/tweet-card/tweet-card.js +243 -0
- package/dist/components/tweet-card/tweet-card.js.map +1 -0
- package/dist/components/typewriter-text/index.d.ts +2 -0
- package/dist/components/typewriter-text/index.js +2 -0
- package/dist/components/typewriter-text/meta.js +17 -0
- package/dist/components/typewriter-text/meta.js.map +1 -0
- package/dist/components/typewriter-text/typewriter-text.d.ts +33 -0
- package/dist/components/typewriter-text/typewriter-text.d.ts.map +1 -0
- package/dist/components/typewriter-text/typewriter-text.js +135 -0
- package/dist/components/typewriter-text/typewriter-text.js.map +1 -0
- package/dist/components/uptime-matrix/index.d.ts +2 -0
- package/dist/components/uptime-matrix/index.js +2 -0
- package/dist/components/uptime-matrix/meta.js +17 -0
- package/dist/components/uptime-matrix/meta.js.map +1 -0
- package/dist/components/uptime-matrix/uptime-matrix.d.ts +60 -0
- package/dist/components/uptime-matrix/uptime-matrix.d.ts.map +1 -0
- package/dist/components/uptime-matrix/uptime-matrix.js +303 -0
- package/dist/components/uptime-matrix/uptime-matrix.js.map +1 -0
- package/dist/index.d.ts +246 -18
- package/dist/index.js +128 -9
- package/dist/registry/blocks.d.ts.map +1 -1
- package/dist/registry/blocks.js +69 -1
- package/dist/registry/blocks.js.map +1 -1
- package/dist/registry/components.d.ts.map +1 -1
- package/dist/registry/components.js +219 -1
- package/dist/registry/components.js.map +1 -1
- package/dist/registry/schema.d.ts +1 -1
- package/dist/registry/schema.d.ts.map +1 -1
- package/dist/registry/schema.js +2 -1
- package/dist/registry/schema.js.map +1 -1
- package/package.json +5 -4
- package/src/components/account-menu/account-menu.tsx +338 -0
- package/src/components/account-menu/index.ts +12 -0
- package/src/components/account-menu/meta.ts +19 -0
- package/src/components/action-node/action-node-spring.ts +34 -0
- package/src/components/action-node/action-node.tsx +516 -0
- package/src/components/action-node/index.ts +8 -0
- package/src/components/action-node/meta.ts +21 -0
- package/src/components/ai-agent-plan/ai-agent-plan.tsx +0 -0
- package/src/components/ai-agent-plan/index.ts +1 -0
- package/src/components/ai-agent-plan/meta.ts +3 -1
- package/src/components/ai-approval-request/ai-approval-request.tsx +103 -4
- package/src/components/ai-approval-request/meta.ts +4 -1
- package/src/components/ai-artifact/ai-artifact.tsx +203 -0
- package/src/components/ai-artifact/index.ts +1 -0
- package/src/components/ai-artifact/meta.ts +18 -0
- package/src/components/ai-branch/ai-branch.tsx +222 -0
- package/src/components/ai-branch/index.ts +11 -0
- package/src/components/ai-branch/meta.ts +18 -0
- package/src/components/ai-conversation/ai-conversation.tsx +142 -31
- package/src/components/ai-conversation/index.ts +1 -0
- package/src/components/ai-loader/ai-loader.tsx +112 -0
- package/src/components/ai-loader/index.ts +6 -0
- package/src/components/ai-loader/meta.ts +18 -0
- package/src/components/ai-message/ai-message.tsx +54 -9
- package/src/components/ai-message/index.ts +2 -0
- package/src/components/ai-message/meta.ts +2 -1
- package/src/components/ai-prompt-input/ai-prompt-input.tsx +56 -18
- package/src/components/ai-reasoning/ai-reasoning.tsx +191 -12
- package/src/components/ai-reasoning/index.ts +1 -0
- package/src/components/ai-reasoning/meta.ts +4 -2
- package/src/components/ai-response/ai-response.tsx +10 -1
- package/src/components/ai-response/index.ts +1 -0
- package/src/components/ai-response/meta.ts +6 -3
- package/src/components/ai-response/response-text.tsx +119 -0
- package/src/components/ai-sources/ai-sources.tsx +191 -8
- package/src/components/ai-sources/index.ts +1 -0
- package/src/components/ai-sources/meta.ts +4 -2
- package/src/components/ai-suggestions/ai-suggestions.tsx +130 -0
- package/src/components/ai-suggestions/index.ts +6 -0
- package/src/components/ai-suggestions/meta.ts +17 -0
- package/src/components/ai-token-usage/ai-token-usage.tsx +288 -14
- package/src/components/ai-token-usage/index.ts +5 -0
- package/src/components/ai-token-usage/meta.ts +6 -2
- package/src/components/ai-tool/ai-tool.tsx +124 -3
- package/src/components/ai-tool/meta.ts +3 -1
- package/src/components/animated-checklist/animated-checklist.tsx +324 -0
- package/src/components/animated-checklist/index.ts +6 -0
- package/src/components/animated-checklist/meta.ts +18 -0
- package/src/components/app-stack/app-stack.tsx +414 -0
- package/src/components/app-stack/index.ts +7 -0
- package/src/components/app-stack/meta.ts +20 -0
- package/src/components/aspect-morph/aspect-morph.tsx +272 -0
- package/src/components/aspect-morph/index.ts +8 -0
- package/src/components/aspect-morph/meta.ts +19 -0
- package/src/components/assignee-picker/assignee-picker-spring.ts +33 -0
- package/src/components/assignee-picker/assignee-picker.tsx +535 -0
- package/src/components/assignee-picker/index.ts +6 -0
- package/src/components/assignee-picker/meta.ts +21 -0
- package/src/components/avatar-group/avatar-group.tsx +176 -0
- package/src/components/avatar-group/index.ts +6 -0
- package/src/components/avatar-group/meta.ts +18 -0
- package/src/components/bar-loader/bar-loader.tsx +549 -0
- package/src/components/bar-loader/index.ts +7 -0
- package/src/components/bar-loader/meta.ts +18 -0
- package/src/components/book/book.tsx +300 -0
- package/src/components/book/index.ts +1 -0
- package/src/components/book/meta.ts +18 -0
- package/src/components/breadcrumb/breadcrumb.tsx +50 -9
- package/src/components/breadcrumb/index.ts +1 -0
- package/src/components/breadcrumb/meta.ts +2 -1
- package/src/components/browser-tabs/browser-tabs-spring.ts +34 -0
- package/src/components/browser-tabs/browser-tabs.tsx +608 -0
- package/src/components/browser-tabs/index.ts +7 -0
- package/src/components/browser-tabs/meta.ts +22 -0
- package/src/components/button/button.tsx +57 -2
- package/src/components/canvas-toolbar/canvas-toolbar.tsx +457 -0
- package/src/components/canvas-toolbar/index.ts +9 -0
- package/src/components/canvas-toolbar/meta.ts +22 -0
- package/src/components/card-spread/card-spread-layouts.ts +251 -0
- package/src/components/card-spread/card-spread.tsx +415 -0
- package/src/components/card-spread/index.ts +19 -0
- package/src/components/card-spread/meta.ts +21 -0
- package/src/components/card-stack/card-stack-layout.ts +100 -0
- package/src/components/card-stack/card-stack.tsx +359 -0
- package/src/components/card-stack/index.ts +1 -0
- package/src/components/card-stack/meta.ts +20 -0
- package/src/components/carousel-3d/carousel-3d.tsx +501 -0
- package/src/components/carousel-3d/index.ts +7 -0
- package/src/components/carousel-3d/meta.ts +20 -0
- package/src/components/checkbox/checkbox.tsx +29 -1
- package/src/components/code-block/code-block.tsx +11 -110
- package/src/components/code-block/index.ts +4 -1
- package/src/components/code-block/meta.ts +1 -1
- package/src/components/combobox/combobox.tsx +165 -12
- package/src/components/combobox/index.ts +1 -0
- package/src/components/combobox/meta.ts +2 -1
- package/src/components/command-bar/command-bar.tsx +177 -0
- package/src/components/command-bar/index.ts +1 -0
- package/src/components/command-bar/meta.ts +17 -0
- package/src/components/comment-bubble/comment-bubble.tsx +269 -0
- package/src/components/comment-bubble/index.ts +6 -0
- package/src/components/comment-bubble/meta.ts +18 -0
- package/src/components/context-menu/context-menu.tsx +280 -0
- package/src/components/context-menu/index.ts +21 -0
- package/src/components/context-menu/meta.ts +19 -0
- package/src/components/contribution-graph/contribution-graph.tsx +372 -0
- package/src/components/contribution-graph/index.ts +6 -0
- package/src/components/contribution-graph/meta.ts +19 -0
- package/src/components/copy-button/copy-button.tsx +278 -0
- package/src/components/copy-button/index.ts +6 -0
- package/src/components/copy-button/meta.ts +19 -0
- package/src/components/create-menu/create-menu.tsx +319 -0
- package/src/components/create-menu/index.ts +7 -0
- package/src/components/create-menu/meta.ts +21 -0
- package/src/components/cursor-follow/cursor-follow.tsx +186 -0
- package/src/components/cursor-follow/index.ts +1 -0
- package/src/components/cursor-follow/meta.ts +19 -0
- package/src/components/dial/dial.tsx +308 -0
- package/src/components/dial/index.ts +1 -0
- package/src/components/dial/meta.ts +19 -0
- package/src/components/dialog/dialog.tsx +79 -36
- package/src/components/dialog/meta.ts +2 -1
- package/src/components/diff-viewer/diff-viewer.tsx +158 -19
- package/src/components/diff-viewer/meta.ts +4 -1
- package/src/components/dither-area/dither-area.tsx +280 -0
- package/src/components/dither-area/index.ts +9 -0
- package/src/components/dither-area/meta.ts +18 -0
- package/src/components/dither-bar/dither-bar.tsx +389 -0
- package/src/components/dither-bar/index.ts +8 -0
- package/src/components/dither-bar/meta.ts +19 -0
- package/src/components/dither-canvas/canvas-mock.ts +143 -0
- package/src/components/dither-canvas/dither-canvas.tsx +382 -0
- package/src/components/dither-canvas/dither-engine.ts +354 -0
- package/src/components/dither-canvas/dither-geometry.ts +295 -0
- package/src/components/dither-canvas/dither-scrubber.tsx +244 -0
- package/src/components/dither-canvas/index.ts +68 -0
- package/src/components/dither-canvas/meta.ts +19 -0
- package/src/components/dither-donut/dither-donut.tsx +377 -0
- package/src/components/dither-donut/index.ts +7 -0
- package/src/components/dither-donut/meta.ts +19 -0
- package/src/components/dither-funnel/dither-funnel.tsx +273 -0
- package/src/components/dither-funnel/index.ts +9 -0
- package/src/components/dither-funnel/meta.ts +19 -0
- package/src/components/dither-gauge/dither-gauge.tsx +279 -0
- package/src/components/dither-gauge/index.ts +8 -0
- package/src/components/dither-gauge/meta.ts +19 -0
- package/src/components/dither-heatmap/dither-heatmap.tsx +453 -0
- package/src/components/dither-heatmap/index.ts +10 -0
- package/src/components/dither-heatmap/meta.ts +19 -0
- package/src/components/dither-line/dither-line.tsx +244 -0
- package/src/components/dither-line/index.ts +8 -0
- package/src/components/dither-line/meta.ts +18 -0
- package/src/components/dither-meter/dither-meter.tsx +299 -0
- package/src/components/dither-meter/index.ts +8 -0
- package/src/components/dither-meter/meta.ts +19 -0
- package/src/components/dither-scatter/dither-scatter.tsx +317 -0
- package/src/components/dither-scatter/index.ts +8 -0
- package/src/components/dither-scatter/meta.ts +19 -0
- package/src/components/dot-morph-button/dot-morph-button.tsx +86 -0
- package/src/components/dot-morph-button/index.ts +5 -0
- package/src/components/dot-morph-button/meta.ts +17 -0
- package/src/components/dots-loader/dots-loader.tsx +451 -0
- package/src/components/dots-loader/index.ts +7 -0
- package/src/components/dots-loader/meta.ts +17 -0
- package/src/components/drag-stepper/drag-stepper.tsx +367 -0
- package/src/components/drag-stepper/index.ts +1 -0
- package/src/components/drag-stepper/meta.ts +23 -0
- package/src/components/drawer/drawer.tsx +77 -34
- package/src/components/drawer/meta.ts +1 -1
- package/src/components/dropdown-menu/dropdown-menu.tsx +47 -10
- package/src/components/dropdown-menu/meta.ts +2 -1
- package/src/components/effect-button/effect-button.tsx +310 -0
- package/src/components/effect-button/index.ts +8 -0
- package/src/components/effect-button/meta.ts +18 -0
- package/src/components/escape-button/escape-button.tsx +232 -0
- package/src/components/escape-button/index.ts +1 -0
- package/src/components/escape-button/meta.ts +18 -0
- package/src/components/expandable-cards/expandable-cards.tsx +435 -0
- package/src/components/expandable-cards/index.ts +6 -0
- package/src/components/expandable-cards/meta.ts +20 -0
- package/src/components/expandable-list/expandable-list.tsx +260 -0
- package/src/components/expandable-list/index.ts +6 -0
- package/src/components/expandable-list/meta.ts +19 -0
- package/src/components/expanding-search/expanding-search.tsx +244 -0
- package/src/components/expanding-search/index.ts +5 -0
- package/src/components/expanding-search/meta.ts +19 -0
- package/src/components/exposure-slider/exposure-slider.tsx +351 -0
- package/src/components/exposure-slider/index.ts +5 -0
- package/src/components/exposure-slider/meta.ts +20 -0
- package/src/components/file-upload/file-upload.tsx +134 -12
- package/src/components/file-upload/meta.ts +2 -1
- package/src/components/focus-blur-links/focus-blur-links.tsx +189 -0
- package/src/components/focus-blur-links/index.ts +7 -0
- package/src/components/focus-blur-links/meta.ts +18 -0
- package/src/components/folding-frame/folding-frame.tsx +435 -0
- package/src/components/folding-frame/index.ts +1 -0
- package/src/components/folding-frame/meta.ts +21 -0
- package/src/components/form/form.tsx +105 -13
- package/src/components/form/meta.ts +2 -1
- package/src/components/glass-bubble/glass-bubble.tsx +418 -0
- package/src/components/glass-bubble/index.ts +9 -0
- package/src/components/glass-bubble/meta.ts +20 -0
- package/src/components/glow-card/glow-card.tsx +195 -0
- package/src/components/glow-card/index.ts +7 -0
- package/src/components/glow-card/meta.ts +18 -0
- package/src/components/goo-ball/goo-ball.tsx +379 -0
- package/src/components/goo-ball/index.ts +7 -0
- package/src/components/goo-ball/meta.ts +19 -0
- package/src/components/goo-tabs/goo-tabs.tsx +389 -0
- package/src/components/goo-tabs/index.ts +11 -0
- package/src/components/goo-tabs/meta.ts +20 -0
- package/src/components/gooey-popover/gooey-popover.tsx +332 -0
- package/src/components/gooey-popover/index.ts +1 -0
- package/src/components/gooey-popover/meta.ts +20 -0
- package/src/components/gradient-orb/gradient-orb.tsx +230 -0
- package/src/components/gradient-orb/index.ts +6 -0
- package/src/components/gradient-orb/meta.ts +17 -0
- package/src/components/grid-loader/grid-loader.tsx +364 -0
- package/src/components/grid-loader/index.ts +10 -0
- package/src/components/grid-loader/meta.ts +17 -0
- package/src/components/image-accordion/image-accordion.tsx +230 -0
- package/src/components/image-accordion/index.ts +6 -0
- package/src/components/image-accordion/meta.ts +20 -0
- package/src/components/image-metadata/image-metadata.tsx +265 -0
- package/src/components/image-metadata/index.ts +6 -0
- package/src/components/image-metadata/meta.ts +19 -0
- package/src/components/image-selector/image-selector.tsx +338 -0
- package/src/components/image-selector/index.ts +6 -0
- package/src/components/image-selector/meta.ts +20 -0
- package/src/components/inline-confirm/index.ts +6 -0
- package/src/components/inline-confirm/inline-confirm.tsx +363 -0
- package/src/components/inline-confirm/meta.ts +18 -0
- package/src/components/input/floating-label-input.tsx +110 -0
- package/src/components/input/index.ts +5 -0
- package/src/components/input/meta.ts +3 -2
- package/src/components/invite-carousel/carousel-controls.tsx +291 -0
- package/src/components/invite-carousel/index.ts +8 -0
- package/src/components/invite-carousel/invite-carousel.tsx +359 -0
- package/src/components/invite-carousel/meta.ts +21 -0
- package/src/components/island/index.ts +7 -0
- package/src/components/island/island.tsx +162 -0
- package/src/components/island/meta.ts +18 -0
- package/src/components/liquid-toggle/index.ts +1 -0
- package/src/components/liquid-toggle/liquid-toggle.tsx +254 -0
- package/src/components/liquid-toggle/meta.ts +18 -0
- package/src/components/magnetic-button/index.ts +1 -0
- package/src/components/magnetic-button/magnetic-button.tsx +218 -0
- package/src/components/magnetic-button/meta.ts +18 -0
- package/src/components/magnetic-select/index.ts +6 -0
- package/src/components/magnetic-select/magnetic-select-spring.ts +33 -0
- package/src/components/magnetic-select/magnetic-select.tsx +426 -0
- package/src/components/magnetic-select/meta.ts +19 -0
- package/src/components/magnify-dock/index.ts +7 -0
- package/src/components/magnify-dock/magnify-dock.tsx +308 -0
- package/src/components/magnify-dock/meta.ts +21 -0
- package/src/components/marquee/index.ts +1 -0
- package/src/components/marquee/marquee.tsx +215 -0
- package/src/components/marquee/meta.ts +19 -0
- package/src/components/morph-button/index.ts +7 -0
- package/src/components/morph-button/meta.ts +18 -0
- package/src/components/morph-button/morph-button.tsx +390 -0
- package/src/components/morph-surface/index.ts +7 -0
- package/src/components/morph-surface/meta.ts +21 -0
- package/src/components/morph-surface/morph-surface.tsx +367 -0
- package/src/components/notification-badge/index.ts +6 -0
- package/src/components/notification-badge/meta.ts +19 -0
- package/src/components/notification-badge/notification-badge.tsx +183 -0
- package/src/components/notify-button/index.ts +1 -0
- package/src/components/notify-button/meta.ts +17 -0
- package/src/components/notify-button/notify-button.tsx +194 -0
- package/src/components/now-playing/index.ts +1 -0
- package/src/components/now-playing/meta.ts +19 -0
- package/src/components/now-playing/now-playing.tsx +474 -0
- package/src/components/number-flow/index.ts +10 -0
- package/src/components/number-flow/meta.ts +18 -0
- package/src/components/number-flow/number-flow.tsx +330 -0
- package/src/components/orb-face/index.ts +1 -0
- package/src/components/orb-face/meta.ts +18 -0
- package/src/components/orb-face/orb-face.tsx +431 -0
- package/src/components/otp-input/index.ts +6 -0
- package/src/components/otp-input/meta.ts +21 -0
- package/src/components/otp-input/otp-input.tsx +407 -0
- package/src/components/pagination/index.ts +1 -0
- package/src/components/pagination/meta.ts +4 -2
- package/src/components/pagination/pagination-indicator.tsx +95 -0
- package/src/components/pagination/pagination.tsx +37 -3
- package/src/components/palette-generator/index.ts +8 -0
- package/src/components/palette-generator/meta.ts +17 -0
- package/src/components/palette-generator/palette-generator.tsx +300 -0
- package/src/components/photo-stack/index.ts +1 -0
- package/src/components/photo-stack/meta.ts +19 -0
- package/src/components/photo-stack/photo-stack.tsx +310 -0
- package/src/components/photo-tabs/index.ts +1 -0
- package/src/components/photo-tabs/meta.ts +18 -0
- package/src/components/photo-tabs/photo-tabs.tsx +180 -0
- package/src/components/pixel-avatar/index.ts +1 -0
- package/src/components/pixel-avatar/meta.ts +17 -0
- package/src/components/pixel-avatar/pixel-avatar.tsx +249 -0
- package/src/components/product-card/index.ts +1 -0
- package/src/components/product-card/meta.ts +20 -0
- package/src/components/product-card/product-card.tsx +313 -0
- package/src/components/progress/meta.ts +2 -1
- package/src/components/progress/progress.tsx +123 -27
- package/src/components/pull-to-refresh/index.ts +7 -0
- package/src/components/pull-to-refresh/meta.ts +20 -0
- package/src/components/pull-to-refresh/pull-to-refresh.tsx +421 -0
- package/src/components/radial-menu/index.ts +7 -0
- package/src/components/radial-menu/meta.ts +22 -0
- package/src/components/radial-menu/radial-menu.tsx +441 -0
- package/src/components/radio-group/radio-group.tsx +12 -1
- package/src/components/range-dial/index.ts +1 -0
- package/src/components/range-dial/meta.ts +21 -0
- package/src/components/range-dial/range-dial.tsx +428 -0
- package/src/components/reorder-list/index.ts +10 -0
- package/src/components/reorder-list/meta.ts +21 -0
- package/src/components/reorder-list/reorder-list.tsx +627 -0
- package/src/components/reviews-carousel/carousel-controls.tsx +291 -0
- package/src/components/reviews-carousel/index.ts +7 -0
- package/src/components/reviews-carousel/meta.ts +21 -0
- package/src/components/reviews-carousel/reviews-carousel.tsx +301 -0
- package/src/components/rich-popover/index.ts +1 -0
- package/src/components/rich-popover/meta.ts +18 -0
- package/src/components/rich-popover/rich-popover.tsx +228 -0
- package/src/components/ring-loader/index.ts +7 -0
- package/src/components/ring-loader/meta.ts +17 -0
- package/src/components/ring-loader/ring-loader.tsx +795 -0
- package/src/components/scramble-text/index.ts +8 -0
- package/src/components/scramble-text/meta.ts +17 -0
- package/src/components/scramble-text/scramble-text.tsx +250 -0
- package/src/components/scroll-reveal-text/index.ts +6 -0
- package/src/components/scroll-reveal-text/meta.ts +18 -0
- package/src/components/scroll-reveal-text/scroll-reveal-text.tsx +193 -0
- package/src/components/scrubber/index.ts +1 -0
- package/src/components/scrubber/meta.ts +20 -0
- package/src/components/scrubber/scrubber.tsx +348 -0
- package/src/components/select/meta.ts +2 -1
- package/src/components/select/select.tsx +69 -22
- package/src/components/selection-list/index.ts +6 -0
- package/src/components/selection-list/meta.ts +21 -0
- package/src/components/selection-list/selection-list-spring.ts +33 -0
- package/src/components/selection-list/selection-list.tsx +497 -0
- package/src/components/shader-transition/index.ts +21 -0
- package/src/components/shader-transition/meta.ts +23 -0
- package/src/components/shader-transition/shader-transition-engine.ts +396 -0
- package/src/components/shader-transition/shader-transition-presets.ts +424 -0
- package/src/components/shader-transition/shader-transition.tsx +470 -0
- package/src/components/shader-transition/webgl-mock.ts +176 -0
- package/src/components/shape-loader/index.ts +7 -0
- package/src/components/shape-loader/meta.ts +17 -0
- package/src/components/shape-loader/shape-loader-variants.tsx +717 -0
- package/src/components/shape-loader/shape-loader.tsx +149 -0
- package/src/components/sheet/meta.ts +1 -1
- package/src/components/sheet/sheet.tsx +73 -31
- package/src/components/shimmer-text/index.ts +7 -0
- package/src/components/shimmer-text/meta.ts +18 -0
- package/src/components/shimmer-text/shimmer-text.tsx +218 -0
- package/src/components/skeleton/index.ts +1 -1
- package/src/components/skeleton/meta.ts +2 -1
- package/src/components/skeleton/skeleton.tsx +49 -7
- package/src/components/slide-to-confirm/index.ts +6 -0
- package/src/components/slide-to-confirm/meta.ts +20 -0
- package/src/components/slide-to-confirm/slide-to-confirm.tsx +519 -0
- package/src/components/slosh-slider/index.ts +6 -0
- package/src/components/slosh-slider/meta.ts +20 -0
- package/src/components/slosh-slider/slosh-slider.tsx +266 -0
- package/src/components/social-selector/index.ts +6 -0
- package/src/components/social-selector/meta.ts +18 -0
- package/src/components/social-selector/social-selector.tsx +247 -0
- package/src/components/star-count/index.ts +1 -0
- package/src/components/star-count/meta.ts +18 -0
- package/src/components/star-count/star-count.tsx +161 -0
- package/src/components/stepper/index.ts +8 -0
- package/src/components/stepper/meta.ts +20 -0
- package/src/components/stepper/stepper.tsx +364 -0
- package/src/components/swipe-carousel/carousel-controls.tsx +148 -0
- package/src/components/swipe-carousel/index.ts +6 -0
- package/src/components/swipe-carousel/meta.ts +21 -0
- package/src/components/swipe-carousel/swipe-carousel.tsx +407 -0
- package/src/components/switch/meta.ts +3 -1
- package/src/components/switch/switch.tsx +69 -4
- package/src/components/switchboard-card/index.ts +6 -0
- package/src/components/switchboard-card/meta.ts +18 -0
- package/src/components/switchboard-card/switchboard-card.tsx +312 -0
- package/src/components/tabs/index.ts +1 -0
- package/src/components/tabs/meta.ts +3 -1
- package/src/components/tabs/tabs.tsx +144 -4
- package/src/components/tags-input/meta.ts +2 -1
- package/src/components/tags-input/tags-input.tsx +122 -4
- package/src/components/text-effect/index.ts +10 -0
- package/src/components/text-effect/meta.ts +18 -0
- package/src/components/text-effect/text-effect-presets.ts +305 -0
- package/src/components/text-effect/text-effect.tsx +454 -0
- package/src/components/text-loader/index.ts +7 -0
- package/src/components/text-loader/meta.ts +17 -0
- package/src/components/text-loader/text-loader.tsx +585 -0
- package/src/components/text-swap/index.ts +9 -0
- package/src/components/text-swap/meta.ts +20 -0
- package/src/components/text-swap/text-rotate.tsx +76 -0
- package/src/components/text-swap/text-swap.tsx +414 -0
- package/src/components/tick-progress/index.ts +1 -0
- package/src/components/tick-progress/meta.ts +19 -0
- package/src/components/tick-progress/tick-progress.tsx +253 -0
- package/src/components/tilt-card/index.ts +6 -0
- package/src/components/tilt-card/meta.ts +18 -0
- package/src/components/tilt-card/tilt-card.tsx +256 -0
- package/src/components/time-stack/index.ts +6 -0
- package/src/components/time-stack/meta.ts +19 -0
- package/src/components/time-stack/time-stack.tsx +385 -0
- package/src/components/toast/meta.ts +2 -1
- package/src/components/toast/toast.tsx +67 -9
- package/src/components/todo-tower/index.ts +1 -0
- package/src/components/todo-tower/meta.ts +18 -0
- package/src/components/todo-tower/todo-tower.tsx +429 -0
- package/src/components/tooltip/meta.ts +1 -1
- package/src/components/tooltip/tooltip.tsx +39 -15
- package/src/components/tweet-card/index.ts +11 -0
- package/src/components/tweet-card/meta.ts +19 -0
- package/src/components/tweet-card/tweet-card.tsx +372 -0
- package/src/components/typewriter-text/index.ts +6 -0
- package/src/components/typewriter-text/meta.ts +17 -0
- package/src/components/typewriter-text/typewriter-text.tsx +214 -0
- package/src/components/uptime-matrix/index.ts +11 -0
- package/src/components/uptime-matrix/meta.ts +20 -0
- package/src/components/uptime-matrix/uptime-matrix.tsx +443 -0
- package/src/index.ts +109 -0
- package/src/registry/blocks.ts +68 -0
- package/src/registry/components.ts +218 -0
- package/src/registry/schema.ts +1 -0
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { cn } from "../../lib/utils.js";
|
|
3
3
|
import { Progress } from "radix-ui";
|
|
4
|
-
import { jsx } from "react/jsx-runtime";
|
|
4
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
5
5
|
import { cva } from "class-variance-authority";
|
|
6
|
+
import { useEffect, useState } from "react";
|
|
6
7
|
//#region src/components/progress/progress.tsx
|
|
7
8
|
const progressVariants = cva("relative w-full overflow-hidden rounded-full bg-muted", {
|
|
8
9
|
variants: {
|
|
@@ -23,6 +24,48 @@ const progressVariants = cva("relative w-full overflow-hidden rounded-full bg-mu
|
|
|
23
24
|
tone: "primary"
|
|
24
25
|
}
|
|
25
26
|
});
|
|
27
|
+
const PREFIX = "dowel-progress";
|
|
28
|
+
const STYLES = `
|
|
29
|
+
@keyframes ${PREFIX}-stripes { from { background-position: 1rem 0; } to { background-position: 0 0; } }
|
|
30
|
+
@keyframes ${PREFIX}-shine { from { translate: -100% 0; } to { translate: 100% 0; } }
|
|
31
|
+
[data-slot="progress-indicator"][data-effect="striped"] {
|
|
32
|
+
background-image: linear-gradient(45deg, color-mix(in oklab, var(--color-background) 22%, transparent) 25%, transparent 25%, transparent 50%, color-mix(in oklab, var(--color-background) 22%, transparent) 50%, color-mix(in oklab, var(--color-background) 22%, transparent) 75%, transparent 75%, transparent);
|
|
33
|
+
background-size: 1rem 1rem;
|
|
34
|
+
animation: ${PREFIX}-stripes calc(1s * var(--motion-scale, 1)) linear infinite;
|
|
35
|
+
}
|
|
36
|
+
[data-slot="progress-indicator"][data-effect="shine"] { position: relative; overflow: hidden; }
|
|
37
|
+
[data-slot="progress-indicator"][data-effect="shine"]::after {
|
|
38
|
+
content: "";
|
|
39
|
+
position: absolute;
|
|
40
|
+
inset: 0;
|
|
41
|
+
translate: -100% 0;
|
|
42
|
+
background-image: linear-gradient(90deg, transparent, color-mix(in oklab, var(--color-background) 40%, transparent), transparent);
|
|
43
|
+
animation: ${PREFIX}-shine calc(1.6s * var(--motion-scale, 1)) var(--ease-in-out-quint) infinite;
|
|
44
|
+
}
|
|
45
|
+
`;
|
|
46
|
+
/**
|
|
47
|
+
* False for the first painted frame, then true.
|
|
48
|
+
*
|
|
49
|
+
* Two animation frames rather than one effect: an effect can run before the
|
|
50
|
+
* browser has painted the empty bar, and a transition needs a painted start.
|
|
51
|
+
*/
|
|
52
|
+
function usePainted(enabled) {
|
|
53
|
+
const [painted, setPainted] = useState(!enabled);
|
|
54
|
+
useEffect(() => {
|
|
55
|
+
if (!enabled) return;
|
|
56
|
+
let second = 0;
|
|
57
|
+
const first = requestAnimationFrame(() => {
|
|
58
|
+
second = requestAnimationFrame(() => {
|
|
59
|
+
setPainted(true);
|
|
60
|
+
});
|
|
61
|
+
});
|
|
62
|
+
return () => {
|
|
63
|
+
cancelAnimationFrame(first);
|
|
64
|
+
cancelAnimationFrame(second);
|
|
65
|
+
};
|
|
66
|
+
}, [enabled]);
|
|
67
|
+
return painted;
|
|
68
|
+
}
|
|
26
69
|
/**
|
|
27
70
|
* Shows how far along a task is.
|
|
28
71
|
*
|
|
@@ -31,10 +74,16 @@ const progressVariants = cva("relative w-full overflow-hidden rounded-full bg-mu
|
|
|
31
74
|
* "no progress". For a short wait with no measurable progress, a Spinner says
|
|
32
75
|
* the same thing with less furniture.
|
|
33
76
|
*/
|
|
34
|
-
function Progress$1({ className, size, tone, value, ...props }) {
|
|
77
|
+
function Progress$1({ className, size, tone, value, easing = "smooth", fillOnMount = false, effect = "none", ...props }) {
|
|
35
78
|
const indeterminate = value === null || value === void 0;
|
|
36
|
-
const
|
|
37
|
-
|
|
79
|
+
const painted = usePainted(fillOnMount);
|
|
80
|
+
const percent = indeterminate || !painted ? 0 : Math.min(100, Math.max(0, value));
|
|
81
|
+
const decorated = !indeterminate && effect !== "none";
|
|
82
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [decorated ? /* @__PURE__ */ jsx("style", {
|
|
83
|
+
href: PREFIX,
|
|
84
|
+
precedence: "dowel",
|
|
85
|
+
children: STYLES
|
|
86
|
+
}) : null, /* @__PURE__ */ jsx(Progress.Root, {
|
|
38
87
|
"data-slot": "progress",
|
|
39
88
|
value,
|
|
40
89
|
className: cn(progressVariants({
|
|
@@ -45,10 +94,11 @@ function Progress$1({ className, size, tone, value, ...props }) {
|
|
|
45
94
|
children: /* @__PURE__ */ jsx(Progress.Indicator, {
|
|
46
95
|
"data-slot": "progress-indicator",
|
|
47
96
|
"data-motion": indeterminate ? "indicator" : void 0,
|
|
48
|
-
|
|
97
|
+
"data-effect": decorated ? effect : void 0,
|
|
98
|
+
className: cn("h-full w-full flex-1 rounded-full bg-[var(--progress-fill)]", "transition-transform duration-[var(--duration-slow)] ease-[var(--ease-out-quint)]", indeterminate && "animate-pulse-soft", easing === "spring" && "ease-[var(--ease-overshoot)]"),
|
|
49
99
|
style: indeterminate ? void 0 : { transform: `translateX(-${String(100 - percent)}%)` }
|
|
50
100
|
})
|
|
51
|
-
});
|
|
101
|
+
})] });
|
|
52
102
|
}
|
|
53
103
|
//#endregion
|
|
54
104
|
export { Progress$1 as Progress, progressVariants };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progress.js","names":["Progress","ProgressPrimitive"],"sources":["../../../src/components/progress/progress.tsx"],"sourcesContent":["\"use client\";\n\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { Progress as ProgressPrimitive } from \"radix-ui\";\nimport type
|
|
1
|
+
{"version":3,"file":"progress.js","names":["Progress","ProgressPrimitive"],"sources":["../../../src/components/progress/progress.tsx"],"sourcesContent":["\"use client\";\n\n// Motion from SmoothUI AnimatedProgressBar (MIT, © 2024 Eduardo Calvo). See THIRD_PARTY_NOTICES.md.\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { Progress as ProgressPrimitive } from \"radix-ui\";\nimport { useEffect, useState, type ComponentPropsWithRef } from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst progressVariants = cva(\"relative w-full overflow-hidden rounded-full bg-muted\", {\n variants: {\n size: {\n sm: \"h-1\",\n md: \"h-2\",\n lg: \"h-3\",\n },\n tone: {\n primary: \"[--progress-fill:var(--color-primary)]\",\n success: \"[--progress-fill:var(--color-success)]\",\n warning: \"[--progress-fill:var(--color-warning)]\",\n destructive: \"[--progress-fill:var(--color-destructive)]\",\n },\n },\n defaultVariants: {\n size: \"md\",\n tone: \"primary\",\n },\n});\n\nconst PREFIX = \"dowel-progress\";\n\n/*\n * Stripes and shine are decoration on a bar whose value already says how far\n * along it is, so they stop under reduced motion like any other decoration:\n * the global rule runs each once, in a hundredth of a millisecond, which\n * leaves the stripes still and the shine parked off the end of the bar. They\n * apply only while the value is known — an indeterminate bar is an indicator\n * with its own sweep, and a second motion on top of it would say nothing new.\n *\n * Unlayered, so it outranks utilities; it touches only its own data-effect\n * selectors, which nothing else sets.\n */\nconst STYLES = `\n@keyframes ${PREFIX}-stripes { from { background-position: 1rem 0; } to { background-position: 0 0; } }\n@keyframes ${PREFIX}-shine { from { translate: -100% 0; } to { translate: 100% 0; } }\n[data-slot=\"progress-indicator\"][data-effect=\"striped\"] {\n background-image: linear-gradient(45deg, color-mix(in oklab, var(--color-background) 22%, transparent) 25%, transparent 25%, transparent 50%, color-mix(in oklab, var(--color-background) 22%, transparent) 50%, color-mix(in oklab, var(--color-background) 22%, transparent) 75%, transparent 75%, transparent);\n background-size: 1rem 1rem;\n animation: ${PREFIX}-stripes calc(1s * var(--motion-scale, 1)) linear infinite;\n}\n[data-slot=\"progress-indicator\"][data-effect=\"shine\"] { position: relative; overflow: hidden; }\n[data-slot=\"progress-indicator\"][data-effect=\"shine\"]::after {\n content: \"\";\n position: absolute;\n inset: 0;\n translate: -100% 0;\n background-image: linear-gradient(90deg, transparent, color-mix(in oklab, var(--color-background) 40%, transparent), transparent);\n animation: ${PREFIX}-shine calc(1.6s * var(--motion-scale, 1)) var(--ease-in-out-quint) infinite;\n}\n`;\n\nexport interface ProgressProps\n extends\n ComponentPropsWithRef<typeof ProgressPrimitive.Root>,\n VariantProps<typeof progressVariants> {\n /**\n * How the fill travels to a new value. `smooth` eases in, as it always has;\n * `spring` carries slightly past the value and settles, like SmoothUI's\n * spring. Default `smooth`.\n */\n easing?: \"smooth\" | \"spring\";\n /**\n * Fills from empty on mount instead of appearing at its value. For a bar\n * that is revealed once, like a result or a quota; not for one that is\n * polled, which would replay on every remount. Default `false`.\n */\n fillOnMount?: boolean;\n /**\n * A moving texture on the fill while the value is known: `striped` runs\n * diagonal stripes along it, `shine` sweeps a highlight across it.\n * Decoration — both stop under reduced motion. Default `none`.\n */\n effect?: \"none\" | \"striped\" | \"shine\";\n}\n\n/**\n * False for the first painted frame, then true.\n *\n * Two animation frames rather than one effect: an effect can run before the\n * browser has painted the empty bar, and a transition needs a painted start.\n */\nfunction usePainted(enabled: boolean): boolean {\n const [painted, setPainted] = useState(!enabled);\n useEffect(() => {\n if (!enabled) return;\n let second = 0;\n const first = requestAnimationFrame(() => {\n second = requestAnimationFrame(() => {\n setPainted(true);\n });\n });\n return () => {\n cancelAnimationFrame(first);\n cancelAnimationFrame(second);\n };\n }, [enabled]);\n return painted;\n}\n\n/**\n * Shows how far along a task is.\n *\n * Pass `value={null}` for work whose duration is unknown — that is a genuinely\n * different state from zero percent, and it is announced as such rather than as\n * \"no progress\". For a short wait with no measurable progress, a Spinner says\n * the same thing with less furniture.\n */\nexport function Progress({\n className,\n size,\n tone,\n value,\n easing = \"smooth\",\n fillOnMount = false,\n effect = \"none\",\n ...props\n}: ProgressProps) {\n const indeterminate = value === null || value === undefined;\n const painted = usePainted(fillOnMount);\n const percent = indeterminate || !painted ? 0 : Math.min(100, Math.max(0, value));\n const decorated = !indeterminate && effect !== \"none\";\n\n return (\n <>\n {decorated ? (\n <style href={PREFIX} precedence=\"dowel\">\n {STYLES}\n </style>\n ) : null}\n <ProgressPrimitive.Root\n data-slot=\"progress\"\n value={value}\n className={cn(progressVariants({ size, tone }), className)}\n {...props}\n >\n <ProgressPrimitive.Indicator\n data-slot=\"progress-indicator\"\n // Only while indeterminate: the sweep is the signal that work is\n // ongoing, and freezing it reads as a stalled zero percent.\n data-motion={indeterminate ? \"indicator\" : undefined}\n data-effect={decorated ? effect : undefined}\n className={cn(\n \"h-full w-full flex-1 rounded-full bg-[var(--progress-fill)]\",\n \"transition-transform duration-[var(--duration-slow)] ease-[var(--ease-out-quint)]\",\n // With no known value the bar sweeps instead of filling, so it reads\n // as \"working\" rather than as a stalled 0%.\n indeterminate && \"animate-pulse-soft\",\n easing === \"spring\" && \"ease-[var(--ease-overshoot)]\",\n )}\n style={\n indeterminate ? undefined : { transform: `translateX(-${String(100 - percent)}%)` }\n }\n />\n </ProgressPrimitive.Root>\n </>\n );\n}\n\nexport { progressVariants };\n"],"mappings":";;;;;;;AASA,MAAM,mBAAmB,IAAI,yDAAyD;CACpF,UAAU;EACR,MAAM;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;EACN;EACA,MAAM;GACJ,SAAS;GACT,SAAS;GACT,SAAS;GACT,aAAa;EACf;CACF;CACA,iBAAiB;EACf,MAAM;EACN,MAAM;CACR;AACF,CAAC;AAED,MAAM,SAAS;AAaf,MAAM,SAAS;aACF,OAAO;aACP,OAAO;;;;eAIL,OAAO;;;;;;;;;eASP,OAAO;;;;;;;;;AAkCtB,SAAS,WAAW,SAA2B;CAC7C,MAAM,CAAC,SAAS,cAAc,SAAS,CAAC,OAAO;CAC/C,gBAAgB;EACd,IAAI,CAAC,SAAS;EACd,IAAI,SAAS;EACb,MAAM,QAAQ,4BAA4B;GACxC,SAAS,4BAA4B;IACnC,WAAW,IAAI;GACjB,CAAC;EACH,CAAC;EACD,aAAa;GACX,qBAAqB,KAAK;GAC1B,qBAAqB,MAAM;EAC7B;CACF,GAAG,CAAC,OAAO,CAAC;CACZ,OAAO;AACT;;;;;;;;;AAUA,SAAgBA,WAAS,EACvB,WACA,MACA,MACA,OACA,SAAS,UACT,cAAc,OACd,SAAS,QACT,GAAG,SACa;CAChB,MAAM,gBAAgB,UAAU,QAAQ,UAAU,KAAA;CAClD,MAAM,UAAU,WAAW,WAAW;CACtC,MAAM,UAAU,iBAAiB,CAAC,UAAU,IAAI,KAAK,IAAI,KAAK,KAAK,IAAI,GAAG,KAAK,CAAC;CAChF,MAAM,YAAY,CAAC,iBAAiB,WAAW;CAE/C,OACE,qBAAA,UAAA,EAAA,UAAA,CACG,YACC,oBAAC,SAAD;EAAO,MAAM;EAAQ,YAAW;EAC7B,UAAA;CACI,CAAA,IACL,MACJ,oBAACC,SAAkB,MAAnB;EACE,aAAU;EACH;EACP,WAAW,GAAG,iBAAiB;GAAE;GAAM;EAAK,CAAC,GAAG,SAAS;EACzD,GAAI;EAEJ,UAAA,oBAACA,SAAkB,WAAnB;GACE,aAAU;GAGV,eAAa,gBAAgB,cAAc,KAAA;GAC3C,eAAa,YAAY,SAAS,KAAA;GAClC,WAAW,GACT,+DACA,qFAGA,iBAAiB,sBACjB,WAAW,YAAY,8BACzB;GACA,OACE,gBAAgB,KAAA,IAAY,EAAE,WAAW,eAAe,OAAO,MAAM,OAAO,EAAE,IAAI;EAErF,CAAA;CACqB,CAAA,CACxB,EAAA,CAAA;AAEN"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { defineMeta } from "../../registry/schema.js";
|
|
2
|
+
//#region src/components/pull-to-refresh/meta.ts
|
|
3
|
+
const meta = defineMeta({
|
|
4
|
+
name: "pull-to-refresh",
|
|
5
|
+
title: "Pull to Refresh",
|
|
6
|
+
description: "A sheet you pull down to refresh, with rubber-band resistance, a dot ring that fills as you pull and springs that carry the pull's velocity.",
|
|
7
|
+
category: "feedback",
|
|
8
|
+
status: "beta",
|
|
9
|
+
dependencies: ["class-variance-authority", "motion"],
|
|
10
|
+
registryDependencies: ["button"],
|
|
11
|
+
files: ["pull-to-refresh.tsx"],
|
|
12
|
+
a11y: "The sheet is a named, focusable group described by a hint; Enter on it refreshes, and a visible Refresh button (showRefreshButton, on by default) gives a pointer-free path for touch and screen reader users, so pulling is never the only way. While refreshing the sheet is aria-busy and a polite status region announces \"Refreshing…\" then \"Refreshed\". The dot ring is aria-hidden decoration and stops under reduced motion, where the springs are also instant; the refresh itself still works. A pull only starts when the sheet is scrolled to the top, and the click a pull leaves behind is swallowed."
|
|
13
|
+
});
|
|
14
|
+
//#endregion
|
|
15
|
+
export { meta };
|
|
16
|
+
|
|
17
|
+
//# sourceMappingURL=meta.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"meta.js","names":[],"sources":["../../../src/components/pull-to-refresh/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"pull-to-refresh\",\n title: \"Pull to Refresh\",\n description:\n \"A sheet you pull down to refresh, with rubber-band resistance, a dot ring that fills as you pull and springs that carry the pull's velocity.\",\n category: \"feedback\",\n status: \"beta\",\n dependencies: [\"class-variance-authority\", \"motion\"],\n registryDependencies: [\"button\"],\n files: [\"pull-to-refresh.tsx\"],\n a11y:\n \"The sheet is a named, focusable group described by a hint; Enter on it refreshes, and a visible Refresh \" +\n \"button (showRefreshButton, on by default) gives a pointer-free path for touch and screen reader users, so \" +\n \"pulling is never the only way. While refreshing the sheet is aria-busy and a polite status region \" +\n 'announces \"Refreshing…\" then \"Refreshed\". The dot ring is aria-hidden decoration and stops under reduced ' +\n \"motion, where the springs are also instant; the refresh itself still works. A pull only starts when the \" +\n \"sheet is scrolled to the top, and the click a pull leaves behind is swallowed.\",\n});\n"],"mappings":";;AAEA,MAAa,OAAO,WAAW;CAC7B,MAAM;CACN,OAAO;CACP,aACE;CACF,UAAU;CACV,QAAQ;CACR,cAAc,CAAC,4BAA4B,QAAQ;CACnD,sBAAsB,CAAC,QAAQ;CAC/B,OAAO,CAAC,qBAAqB;CAC7B,MACE;AAMJ,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { VariantProps } from "class-variance-authority";
|
|
2
|
+
import { ComponentPropsWithRef, ReactNode } from "react";
|
|
3
|
+
//#region src/components/pull-to-refresh/pull-to-refresh.d.ts
|
|
4
|
+
/** Rubber-band resistance: near 1:1 for a short pull, 180px of travel gives about 156. */
|
|
5
|
+
declare function rubberBand(distance: number): number;
|
|
6
|
+
/** Spin (0–100) to the ring's period in ms: 2400 at 50, 4800 at 0, 1200 at 100. */
|
|
7
|
+
declare function spinPeriod(spin: number): number;
|
|
8
|
+
declare const pullToRefreshVariants: (props?: ({
|
|
9
|
+
fill?: "light" | "dark" | null | undefined;
|
|
10
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
11
|
+
interface PullToRefreshProps extends Omit<ComponentPropsWithRef<"div">, "onRefresh">, VariantProps<typeof pullToRefreshVariants> {
|
|
12
|
+
/** Runs the refresh. The sheet stays in the refreshing state until a returned promise settles. */
|
|
13
|
+
onRefresh?: () => Promise<unknown> | void;
|
|
14
|
+
/** Controlled refreshing state. Leave undefined to let the promise drive it. */
|
|
15
|
+
refreshing?: boolean;
|
|
16
|
+
/** Pull distance (px) that arms the refresh; also the resting offset while refreshing. Default 58. */
|
|
17
|
+
threshold?: number;
|
|
18
|
+
/** Dots in the ring, 3–10. Default 6. */
|
|
19
|
+
dots?: number;
|
|
20
|
+
/** Ring rotation speed, 0–100 (2400ms per turn at 50). Default 50. */
|
|
21
|
+
spin?: number;
|
|
22
|
+
/** Sheet radius in px, 0–40. Default 26. */
|
|
23
|
+
corner?: number;
|
|
24
|
+
/** A 1px inset hairline on the sheet. */
|
|
25
|
+
stroke?: boolean;
|
|
26
|
+
disabled?: boolean;
|
|
27
|
+
/** Shortest time the refreshing state shows, so a fast refresh still reads (ms). Default 600. */
|
|
28
|
+
minDuration?: number;
|
|
29
|
+
/** Names the sheet. Default "Refreshable content". */
|
|
30
|
+
label?: string;
|
|
31
|
+
/** Instructions linked to the sheet with aria-describedby. */
|
|
32
|
+
hint?: string;
|
|
33
|
+
/** Renders a visible Refresh button under the sheet. Default true. */
|
|
34
|
+
showRefreshButton?: boolean;
|
|
35
|
+
/** The refresh button's text. Default "Refresh". */
|
|
36
|
+
refreshButtonLabel?: string;
|
|
37
|
+
/** Announced when a refresh starts. Default "Refreshing…". */
|
|
38
|
+
refreshingLabel?: string;
|
|
39
|
+
/** Announced when a refresh ends. Default "Refreshed". */
|
|
40
|
+
refreshedLabel?: string;
|
|
41
|
+
children?: ReactNode;
|
|
42
|
+
}
|
|
43
|
+
/** Wraps content in a sheet that refreshes on a pull, Enter, or a button. */
|
|
44
|
+
declare function PullToRefresh({ className, style, fill, children, onRefresh, refreshing, threshold, dots, spin, corner, stroke, disabled, minDuration, label, hint, showRefreshButton, refreshButtonLabel, refreshingLabel, refreshedLabel, ...props }: PullToRefreshProps): import("react").JSX.Element;
|
|
45
|
+
//#endregion
|
|
46
|
+
export { PullToRefresh, PullToRefreshProps, pullToRefreshVariants, rubberBand, spinPeriod };
|
|
47
|
+
//# sourceMappingURL=pull-to-refresh.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pull-to-refresh.d.ts","names":[],"sources":["../../../src/components/pull-to-refresh/pull-to-refresh.tsx"],"mappings":";;;;iBAiFgB,WAAW;;iBAKX,WAAW;cAIrB,wBAAqB;;6CASzB;UAIe,2BAEb,KAAK,4CACL,oBAAoB;;EAEtB,kBAAkB;;EAElB;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;EACA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;EACA,WAAW;;;iBAIG,gBACd,WACA,OACA,MACA,UACA,WACA,YACA,WACA,MACA,MACA,QACA,QACA,UACA,aACA,OACA,MACA,mBACA,oBACA,iBACA,mBACG,SACF,qCAAkB,IAAA"}
|
|
@@ -0,0 +1,302 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { focusRing } from "../../lib/styles.js";
|
|
3
|
+
import { cn } from "../../lib/utils.js";
|
|
4
|
+
import { Button } from "../button/button.js";
|
|
5
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
6
|
+
import { cva } from "class-variance-authority";
|
|
7
|
+
import { useEffect, useId, useLayoutEffect, useRef, useState, useSyncExternalStore } from "react";
|
|
8
|
+
import { MotionConfig, animate, motion, useMotionValue, useMotionValueEvent } from "motion/react";
|
|
9
|
+
//#region src/components/pull-to-refresh/pull-to-refresh.tsx
|
|
10
|
+
const PREFIX = "dowel-pull-to-refresh";
|
|
11
|
+
const STYLES = `
|
|
12
|
+
@keyframes ${PREFIX}-spin{to{rotate:360deg}}
|
|
13
|
+
[data-slot=pull-to-refresh][data-phase=refreshing] [data-slot=pull-to-refresh-dots]{animation:${PREFIX}-spin calc(var(--ptr-period, 2400ms) * var(--motion-scale)) linear infinite}
|
|
14
|
+
`;
|
|
15
|
+
/** Pointer travel that decides whether a press is a pull. */
|
|
16
|
+
const SLOP = 4;
|
|
17
|
+
/** Ring radius for the dots (px). */
|
|
18
|
+
const RING = 15;
|
|
19
|
+
const REST_SPRING = {
|
|
20
|
+
type: "spring",
|
|
21
|
+
stiffness: 380,
|
|
22
|
+
damping: 16
|
|
23
|
+
};
|
|
24
|
+
const BACK_SPRING = {
|
|
25
|
+
type: "spring",
|
|
26
|
+
stiffness: 260,
|
|
27
|
+
damping: 22
|
|
28
|
+
};
|
|
29
|
+
const REDUCED_MOTION = "(prefers-reduced-motion: reduce)";
|
|
30
|
+
function subscribeToMotionPreference(onChange) {
|
|
31
|
+
const query = window.matchMedia(REDUCED_MOTION);
|
|
32
|
+
query.addEventListener("change", onChange);
|
|
33
|
+
return () => query.removeEventListener("change", onChange);
|
|
34
|
+
}
|
|
35
|
+
function usePrefersReducedMotion() {
|
|
36
|
+
return useSyncExternalStore(subscribeToMotionPreference, () => window.matchMedia(REDUCED_MOTION).matches, () => false);
|
|
37
|
+
}
|
|
38
|
+
/** Rubber-band resistance: near 1:1 for a short pull, 180px of travel gives about 156. */
|
|
39
|
+
function rubberBand(distance) {
|
|
40
|
+
return 600 * (1 - Math.exp(-Math.max(0, distance) / 600));
|
|
41
|
+
}
|
|
42
|
+
/** Spin (0–100) to the ring's period in ms: 2400 at 50, 4800 at 0, 1200 at 100. */
|
|
43
|
+
function spinPeriod(spin) {
|
|
44
|
+
return Math.round(2400 * 2 ** ((50 - Math.min(100, Math.max(0, spin))) / 50));
|
|
45
|
+
}
|
|
46
|
+
const pullToRefreshVariants = cva("relative isolate flex flex-col text-card-foreground", {
|
|
47
|
+
variants: {
|
|
48
|
+
/** `dark` renders the block with the dark token set whatever the page theme. */
|
|
49
|
+
fill: {
|
|
50
|
+
light: "",
|
|
51
|
+
dark: "dark"
|
|
52
|
+
} },
|
|
53
|
+
defaultVariants: { fill: "light" }
|
|
54
|
+
});
|
|
55
|
+
/** Wraps content in a sheet that refreshes on a pull, Enter, or a button. */
|
|
56
|
+
function PullToRefresh({ className, style, fill, children, onRefresh, refreshing, threshold = 58, dots = 6, spin = 50, corner = 26, stroke = false, disabled = false, minDuration = 600, label = "Refreshable content", hint = "Pull down, or press Enter, to refresh.", showRefreshButton = true, refreshButtonLabel = "Refresh", refreshingLabel = "Refreshing…", refreshedLabel = "Refreshed", ...props }) {
|
|
57
|
+
const controlled = refreshing !== void 0;
|
|
58
|
+
const [internal, setInternal] = useState(false);
|
|
59
|
+
const busy = controlled ? refreshing : internal;
|
|
60
|
+
const [pulling, setPulling] = useState(false);
|
|
61
|
+
const [armed, setArmed] = useState(false);
|
|
62
|
+
const [atTop, setAtTop] = useState(true);
|
|
63
|
+
const [announcement, setAnnouncement] = useState("");
|
|
64
|
+
const reduceMotion = usePrefersReducedMotion();
|
|
65
|
+
const hintId = `${PREFIX}-${useId().replace(/:/g, "")}`;
|
|
66
|
+
const sheet = useRef(null);
|
|
67
|
+
const at = useMotionValue(0);
|
|
68
|
+
const animation = useRef(null);
|
|
69
|
+
const press = useRef(null);
|
|
70
|
+
const swallowClick = useRef(false);
|
|
71
|
+
const running = useRef(false);
|
|
72
|
+
const velocity = useRef(0);
|
|
73
|
+
const mounted = useRef(false);
|
|
74
|
+
const latest = useRef({
|
|
75
|
+
onRefresh,
|
|
76
|
+
minDuration,
|
|
77
|
+
reduceMotion,
|
|
78
|
+
threshold,
|
|
79
|
+
busy,
|
|
80
|
+
controlled
|
|
81
|
+
});
|
|
82
|
+
useLayoutEffect(() => {
|
|
83
|
+
latest.current = {
|
|
84
|
+
onRefresh,
|
|
85
|
+
minDuration,
|
|
86
|
+
reduceMotion,
|
|
87
|
+
threshold,
|
|
88
|
+
busy,
|
|
89
|
+
controlled
|
|
90
|
+
};
|
|
91
|
+
});
|
|
92
|
+
const [announced, setAnnounced] = useState(busy);
|
|
93
|
+
if (announced !== busy) {
|
|
94
|
+
setAnnounced(busy);
|
|
95
|
+
setAnnouncement(busy ? refreshingLabel : refreshedLabel);
|
|
96
|
+
}
|
|
97
|
+
useMotionValueEvent(at, "change", (value) => {
|
|
98
|
+
const root = sheet.current?.parentElement;
|
|
99
|
+
if (!root) return;
|
|
100
|
+
const progress = Math.min(1, Math.max(0, value / latest.current.threshold));
|
|
101
|
+
root.style.setProperty("--ptr-at", `${String(value)}px`);
|
|
102
|
+
root.style.setProperty("--ptr-p", String(progress));
|
|
103
|
+
});
|
|
104
|
+
/** Springs (or, under reduced motion, jumps) the sheet to `target`. */
|
|
105
|
+
function settle(target, spring, from = 0) {
|
|
106
|
+
animation.current?.stop();
|
|
107
|
+
animation.current = null;
|
|
108
|
+
if (latest.current.reduceMotion) {
|
|
109
|
+
at.set(target);
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
112
|
+
animation.current = animate(at, target, {
|
|
113
|
+
...spring,
|
|
114
|
+
velocity: from
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
useEffect(() => {
|
|
118
|
+
if (!mounted.current) {
|
|
119
|
+
mounted.current = true;
|
|
120
|
+
if (busy) at.set(latest.current.threshold);
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
123
|
+
if (busy) settle(latest.current.threshold, REST_SPRING, velocity.current);
|
|
124
|
+
else settle(0, BACK_SPRING);
|
|
125
|
+
velocity.current = 0;
|
|
126
|
+
}, [busy]);
|
|
127
|
+
useEffect(() => () => {
|
|
128
|
+
mounted.current = false;
|
|
129
|
+
animation.current?.stop();
|
|
130
|
+
}, []);
|
|
131
|
+
async function refresh(from = 0) {
|
|
132
|
+
if (disabled || running.current || latest.current.busy) return;
|
|
133
|
+
running.current = true;
|
|
134
|
+
velocity.current = from;
|
|
135
|
+
const started = Date.now();
|
|
136
|
+
if (!latest.current.controlled) setInternal(true);
|
|
137
|
+
try {
|
|
138
|
+
await latest.current.onRefresh?.();
|
|
139
|
+
} catch {}
|
|
140
|
+
if (latest.current.controlled) {
|
|
141
|
+
if (!latest.current.busy) settle(0, BACK_SPRING);
|
|
142
|
+
} else {
|
|
143
|
+
const remaining = latest.current.minDuration - (Date.now() - started);
|
|
144
|
+
if (remaining > 0) await new Promise((resolve) => setTimeout(resolve, remaining));
|
|
145
|
+
if (mounted.current) setInternal(false);
|
|
146
|
+
}
|
|
147
|
+
running.current = false;
|
|
148
|
+
}
|
|
149
|
+
function handlePointerDown(event) {
|
|
150
|
+
swallowClick.current = false;
|
|
151
|
+
if (disabled || busy || event.button !== 0) return;
|
|
152
|
+
if (event.currentTarget.scrollTop > 0) return;
|
|
153
|
+
press.current = {
|
|
154
|
+
id: event.pointerId,
|
|
155
|
+
x: event.clientX,
|
|
156
|
+
y: event.clientY,
|
|
157
|
+
pulling: false
|
|
158
|
+
};
|
|
159
|
+
}
|
|
160
|
+
function handlePointerMove(event) {
|
|
161
|
+
const current = press.current;
|
|
162
|
+
if (!current || current.id !== event.pointerId) return;
|
|
163
|
+
const dy = event.clientY - current.y;
|
|
164
|
+
if (!current.pulling) {
|
|
165
|
+
const dx = Math.abs(event.clientX - current.x);
|
|
166
|
+
if (dy > SLOP && dy > dx) {
|
|
167
|
+
current.pulling = true;
|
|
168
|
+
current.y = event.clientY;
|
|
169
|
+
event.currentTarget.setPointerCapture(event.pointerId);
|
|
170
|
+
animation.current?.stop();
|
|
171
|
+
setPulling(true);
|
|
172
|
+
} else if (dy < -4 || dx > SLOP) press.current = null;
|
|
173
|
+
return;
|
|
174
|
+
}
|
|
175
|
+
const offset = rubberBand(dy);
|
|
176
|
+
at.set(offset);
|
|
177
|
+
setArmed(offset >= threshold);
|
|
178
|
+
}
|
|
179
|
+
function handlePointerEnd(event) {
|
|
180
|
+
const current = press.current;
|
|
181
|
+
if (!current || current.id !== event.pointerId) return;
|
|
182
|
+
press.current = null;
|
|
183
|
+
if (!current.pulling) return;
|
|
184
|
+
swallowClick.current = true;
|
|
185
|
+
setPulling(false);
|
|
186
|
+
setArmed(false);
|
|
187
|
+
const from = at.getVelocity();
|
|
188
|
+
if (event.type === "pointerup" && at.get() >= threshold) refresh(from);
|
|
189
|
+
else settle(0, BACK_SPRING, from);
|
|
190
|
+
}
|
|
191
|
+
function handleClickCapture(event) {
|
|
192
|
+
if (!swallowClick.current) return;
|
|
193
|
+
swallowClick.current = false;
|
|
194
|
+
event.preventDefault();
|
|
195
|
+
event.stopPropagation();
|
|
196
|
+
}
|
|
197
|
+
function handleKeyDown(event) {
|
|
198
|
+
if (event.key !== "Enter" || event.target !== event.currentTarget || event.repeat) return;
|
|
199
|
+
event.preventDefault();
|
|
200
|
+
refresh();
|
|
201
|
+
}
|
|
202
|
+
const phase = busy ? "refreshing" : pulling ? "pulling" : "idle";
|
|
203
|
+
const count = Math.min(10, Math.max(3, Math.round(dots)));
|
|
204
|
+
const rootStyle = {
|
|
205
|
+
"--ptr-period": `${String(spinPeriod(spin))}ms`,
|
|
206
|
+
...style
|
|
207
|
+
};
|
|
208
|
+
return /* @__PURE__ */ jsxs(MotionConfig, {
|
|
209
|
+
reducedMotion: "user",
|
|
210
|
+
children: [/* @__PURE__ */ jsx("style", {
|
|
211
|
+
href: PREFIX,
|
|
212
|
+
precedence: "dowel",
|
|
213
|
+
children: STYLES
|
|
214
|
+
}), /* @__PURE__ */ jsxs("div", {
|
|
215
|
+
"data-slot": "pull-to-refresh",
|
|
216
|
+
"data-phase": phase,
|
|
217
|
+
"data-armed": armed || void 0,
|
|
218
|
+
className: cn(pullToRefreshVariants({ fill }), className),
|
|
219
|
+
style: rootStyle,
|
|
220
|
+
...props,
|
|
221
|
+
children: [
|
|
222
|
+
/* @__PURE__ */ jsx("div", {
|
|
223
|
+
"aria-hidden": "true",
|
|
224
|
+
"data-slot": "pull-to-refresh-spinner",
|
|
225
|
+
className: "pointer-events-none absolute inset-x-0 mx-auto size-15",
|
|
226
|
+
style: {
|
|
227
|
+
top: `${String(threshold / 2 - 30)}px`,
|
|
228
|
+
opacity: "var(--ptr-p, 0)",
|
|
229
|
+
scale: "calc(0.82 + 0.18 * var(--ptr-p, 0))"
|
|
230
|
+
},
|
|
231
|
+
children: /* @__PURE__ */ jsx("span", {
|
|
232
|
+
"data-slot": "pull-to-refresh-dots",
|
|
233
|
+
className: "absolute inset-0",
|
|
234
|
+
children: Array.from({ length: count }, (_, index) => /* @__PURE__ */ jsx("span", {
|
|
235
|
+
"data-slot": "pull-to-refresh-dot",
|
|
236
|
+
className: "absolute inset-0 m-auto size-1 rounded-full bg-foreground/35",
|
|
237
|
+
style: { transform: `rotate(${String(index * 360 / count)}deg) translateY(-${String(RING)}px)` }
|
|
238
|
+
}, index))
|
|
239
|
+
})
|
|
240
|
+
}),
|
|
241
|
+
/* @__PURE__ */ jsx(motion.div, {
|
|
242
|
+
ref: sheet,
|
|
243
|
+
role: "group",
|
|
244
|
+
"aria-label": label,
|
|
245
|
+
"aria-describedby": disabled ? void 0 : hintId,
|
|
246
|
+
"aria-busy": busy || void 0,
|
|
247
|
+
"aria-disabled": disabled || void 0,
|
|
248
|
+
tabIndex: 0,
|
|
249
|
+
"data-slot": "pull-to-refresh-sheet",
|
|
250
|
+
className: cn("relative z-10 min-h-0 flex-1 overflow-auto overscroll-contain bg-card", stroke && "ring-1 ring-border ring-inset", focusRing),
|
|
251
|
+
style: {
|
|
252
|
+
y: at,
|
|
253
|
+
borderRadius: `${String(corner)}px`,
|
|
254
|
+
touchAction: atTop ? "pan-x pan-down" : "pan-x pan-y"
|
|
255
|
+
},
|
|
256
|
+
onScroll: (event) => setAtTop(event.currentTarget.scrollTop <= 0),
|
|
257
|
+
onPointerDown: handlePointerDown,
|
|
258
|
+
onPointerMove: handlePointerMove,
|
|
259
|
+
onPointerUp: handlePointerEnd,
|
|
260
|
+
onPointerCancel: handlePointerEnd,
|
|
261
|
+
onClickCapture: handleClickCapture,
|
|
262
|
+
onKeyDown: handleKeyDown,
|
|
263
|
+
children
|
|
264
|
+
}),
|
|
265
|
+
showRefreshButton ? /* @__PURE__ */ jsxs(Button, {
|
|
266
|
+
variant: "ghost",
|
|
267
|
+
size: "sm",
|
|
268
|
+
"data-slot": "pull-to-refresh-button",
|
|
269
|
+
className: "mt-3 self-center",
|
|
270
|
+
disabled,
|
|
271
|
+
loading: busy,
|
|
272
|
+
onClick: () => void refresh(),
|
|
273
|
+
children: [busy ? null : /* @__PURE__ */ jsxs("svg", {
|
|
274
|
+
viewBox: "0 0 24 24",
|
|
275
|
+
fill: "none",
|
|
276
|
+
stroke: "currentColor",
|
|
277
|
+
strokeWidth: 2,
|
|
278
|
+
strokeLinecap: "round",
|
|
279
|
+
strokeLinejoin: "round",
|
|
280
|
+
"aria-hidden": "true",
|
|
281
|
+
children: [/* @__PURE__ */ jsx("path", { d: "M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8" }), /* @__PURE__ */ jsx("path", { d: "M21 3v5h-5" })]
|
|
282
|
+
}), refreshButtonLabel]
|
|
283
|
+
}) : null,
|
|
284
|
+
/* @__PURE__ */ jsx("span", {
|
|
285
|
+
id: hintId,
|
|
286
|
+
className: "sr-only",
|
|
287
|
+
children: hint
|
|
288
|
+
}),
|
|
289
|
+
/* @__PURE__ */ jsx("span", {
|
|
290
|
+
role: "status",
|
|
291
|
+
"aria-live": "polite",
|
|
292
|
+
className: "sr-only",
|
|
293
|
+
children: announcement
|
|
294
|
+
})
|
|
295
|
+
]
|
|
296
|
+
})]
|
|
297
|
+
});
|
|
298
|
+
}
|
|
299
|
+
//#endregion
|
|
300
|
+
export { PullToRefresh, pullToRefreshVariants, rubberBand, spinPeriod };
|
|
301
|
+
|
|
302
|
+
//# sourceMappingURL=pull-to-refresh.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pull-to-refresh.js","names":[],"sources":["../../../src/components/pull-to-refresh/pull-to-refresh.tsx"],"sourcesContent":["\"use client\";\n\n// Ported from bencho Pull to refresh (MIT, © 2026 Lorenzo Cabra). See THIRD_PARTY_NOTICES.md.\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport {\n MotionConfig,\n animate,\n motion,\n useMotionValue,\n useMotionValueEvent,\n type AnimationPlaybackControls,\n} from \"motion/react\";\nimport {\n useEffect,\n useId,\n useLayoutEffect,\n useRef,\n useState,\n useSyncExternalStore,\n type ComponentPropsWithRef,\n type CSSProperties,\n type KeyboardEvent,\n type MouseEvent,\n type PointerEvent,\n type ReactNode,\n} from \"react\";\n\nimport { Button } from \"@/components/button\";\nimport { focusRing } from \"@/lib/styles\";\nimport { cn } from \"@/lib/utils\";\n\n/*\n * A sheet you pull down to refresh.\n *\n * `motion` earns its place here (ADR 0014) because the sheet springs to its\n * resting offset — and back to zero — carrying the velocity of the pull. The\n * pull itself writes two custom properties on the root, `--ptr-at` (offset px)\n * and `--ptr-p` (progress 0–1), and the dot ring above the sheet fades and\n * grows from them in CSS.\n *\n * Pulling is never the only way: the sheet is a focusable group where Enter\n * refreshes, and an optional visible button does the same. While refreshing,\n * the sheet is aria-busy and a polite live region says \"Refreshing…\" then\n * \"Refreshed\". The spinning ring is decoration and stops under reduced motion\n * (only allow-listed loaders may be indicators); the busy state and the\n * announcements are what report progress.\n */\n\nconst PREFIX = \"dowel-pull-to-refresh\";\n\n/* Keyframes and [data-slot]/[data-phase] selectors only (the sheet is unlayered). */\nconst STYLES = `\n@keyframes ${PREFIX}-spin{to{rotate:360deg}}\n[data-slot=pull-to-refresh][data-phase=refreshing] [data-slot=pull-to-refresh-dots]{animation:${PREFIX}-spin calc(var(--ptr-period, 2400ms) * var(--motion-scale)) linear infinite}\n`;\n\n/** Pointer travel that decides whether a press is a pull. */\nconst SLOP = 4;\n/** Ring radius for the dots (px). */\nconst RING = 15;\n\nconst REST_SPRING = { type: \"spring\" as const, stiffness: 380, damping: 16 };\nconst BACK_SPRING = { type: \"spring\" as const, stiffness: 260, damping: 22 };\n\nconst REDUCED_MOTION = \"(prefers-reduced-motion: reduce)\";\n\nfunction subscribeToMotionPreference(onChange: () => void) {\n const query = window.matchMedia(REDUCED_MOTION);\n query.addEventListener(\"change\", onChange);\n return () => query.removeEventListener(\"change\", onChange);\n}\n\nfunction usePrefersReducedMotion() {\n return useSyncExternalStore(\n subscribeToMotionPreference,\n () => window.matchMedia(REDUCED_MOTION).matches,\n () => false,\n );\n}\n\n/** Rubber-band resistance: near 1:1 for a short pull, 180px of travel gives about 156. */\nexport function rubberBand(distance: number) {\n return 600 * (1 - Math.exp(-Math.max(0, distance) / 600));\n}\n\n/** Spin (0–100) to the ring's period in ms: 2400 at 50, 4800 at 0, 1200 at 100. */\nexport function spinPeriod(spin: number) {\n return Math.round(2400 * 2 ** ((50 - Math.min(100, Math.max(0, spin))) / 50));\n}\n\nconst pullToRefreshVariants = cva(\"relative isolate flex flex-col text-card-foreground\", {\n variants: {\n /** `dark` renders the block with the dark token set whatever the page theme. */\n fill: {\n light: \"\",\n dark: \"dark\",\n },\n },\n defaultVariants: { fill: \"light\" },\n});\n\ntype Phase = \"idle\" | \"pulling\" | \"refreshing\";\n\nexport interface PullToRefreshProps\n extends\n Omit<ComponentPropsWithRef<\"div\">, \"onRefresh\">,\n VariantProps<typeof pullToRefreshVariants> {\n /** Runs the refresh. The sheet stays in the refreshing state until a returned promise settles. */\n onRefresh?: () => Promise<unknown> | void;\n /** Controlled refreshing state. Leave undefined to let the promise drive it. */\n refreshing?: boolean;\n /** Pull distance (px) that arms the refresh; also the resting offset while refreshing. Default 58. */\n threshold?: number;\n /** Dots in the ring, 3–10. Default 6. */\n dots?: number;\n /** Ring rotation speed, 0–100 (2400ms per turn at 50). Default 50. */\n spin?: number;\n /** Sheet radius in px, 0–40. Default 26. */\n corner?: number;\n /** A 1px inset hairline on the sheet. */\n stroke?: boolean;\n disabled?: boolean;\n /** Shortest time the refreshing state shows, so a fast refresh still reads (ms). Default 600. */\n minDuration?: number;\n /** Names the sheet. Default \"Refreshable content\". */\n label?: string;\n /** Instructions linked to the sheet with aria-describedby. */\n hint?: string;\n /** Renders a visible Refresh button under the sheet. Default true. */\n showRefreshButton?: boolean;\n /** The refresh button's text. Default \"Refresh\". */\n refreshButtonLabel?: string;\n /** Announced when a refresh starts. Default \"Refreshing…\". */\n refreshingLabel?: string;\n /** Announced when a refresh ends. Default \"Refreshed\". */\n refreshedLabel?: string;\n children?: ReactNode;\n}\n\n/** Wraps content in a sheet that refreshes on a pull, Enter, or a button. */\nexport function PullToRefresh({\n className,\n style,\n fill,\n children,\n onRefresh,\n refreshing,\n threshold = 58,\n dots = 6,\n spin = 50,\n corner = 26,\n stroke = false,\n disabled = false,\n minDuration = 600,\n label = \"Refreshable content\",\n hint = \"Pull down, or press Enter, to refresh.\",\n showRefreshButton = true,\n refreshButtonLabel = \"Refresh\",\n refreshingLabel = \"Refreshing…\",\n refreshedLabel = \"Refreshed\",\n ...props\n}: PullToRefreshProps) {\n const controlled = refreshing !== undefined;\n const [internal, setInternal] = useState(false);\n const busy = controlled ? refreshing : internal;\n const [pulling, setPulling] = useState(false);\n const [armed, setArmed] = useState(false);\n const [atTop, setAtTop] = useState(true);\n const [announcement, setAnnouncement] = useState(\"\");\n const reduceMotion = usePrefersReducedMotion();\n const hintId = `${PREFIX}-${useId().replace(/:/g, \"\")}`;\n\n const sheet = useRef<HTMLDivElement>(null);\n const at = useMotionValue(0);\n const animation = useRef<AnimationPlaybackControls | null>(null);\n const press = useRef<{ id: number; x: number; y: number; pulling: boolean } | null>(null);\n const swallowClick = useRef(false);\n const running = useRef(false);\n const velocity = useRef(0);\n const mounted = useRef(false);\n const latest = useRef({ onRefresh, minDuration, reduceMotion, threshold, busy, controlled });\n useLayoutEffect(() => {\n latest.current = { onRefresh, minDuration, reduceMotion, threshold, busy, controlled };\n });\n\n // Announce each change of state, adjusting during render rather than in an effect.\n const [announced, setAnnounced] = useState(busy);\n if (announced !== busy) {\n setAnnounced(busy);\n setAnnouncement(busy ? refreshingLabel : refreshedLabel);\n }\n\n useMotionValueEvent(at, \"change\", (value) => {\n const root = sheet.current?.parentElement;\n if (!root) return;\n const progress = Math.min(1, Math.max(0, value / latest.current.threshold));\n root.style.setProperty(\"--ptr-at\", `${String(value)}px`);\n root.style.setProperty(\"--ptr-p\", String(progress));\n });\n\n /** Springs (or, under reduced motion, jumps) the sheet to `target`. */\n function settle(target: number, spring: typeof REST_SPRING, from = 0) {\n animation.current?.stop();\n animation.current = null;\n if (latest.current.reduceMotion) {\n at.set(target);\n return;\n }\n animation.current = animate(at, target, { ...spring, velocity: from });\n }\n\n useEffect(() => {\n if (!mounted.current) {\n mounted.current = true;\n if (busy) at.set(latest.current.threshold);\n return;\n }\n if (busy) settle(latest.current.threshold, REST_SPRING, velocity.current);\n else settle(0, BACK_SPRING);\n velocity.current = 0;\n // Only a change of state moves the sheet.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [busy]);\n\n useEffect(\n () => () => {\n mounted.current = false;\n animation.current?.stop();\n },\n [],\n );\n\n async function refresh(from = 0) {\n if (disabled || running.current || latest.current.busy) return;\n running.current = true;\n velocity.current = from;\n const started = Date.now();\n if (!latest.current.controlled) setInternal(true);\n try {\n await latest.current.onRefresh?.();\n } catch {\n // A failed refresh still ends; reporting the error is the caller's job.\n }\n if (latest.current.controlled) {\n // A controlled sheet waits for `refreshing`; if it never turned on, settle back.\n if (!latest.current.busy) settle(0, BACK_SPRING);\n } else {\n const remaining = latest.current.minDuration - (Date.now() - started);\n if (remaining > 0) await new Promise((resolve) => setTimeout(resolve, remaining));\n if (mounted.current) setInternal(false);\n }\n running.current = false;\n }\n\n function handlePointerDown(event: PointerEvent<HTMLDivElement>) {\n swallowClick.current = false;\n if (disabled || busy || event.button !== 0) return;\n if (event.currentTarget.scrollTop > 0) return;\n press.current = { id: event.pointerId, x: event.clientX, y: event.clientY, pulling: false };\n }\n\n function handlePointerMove(event: PointerEvent<HTMLDivElement>) {\n const current = press.current;\n if (!current || current.id !== event.pointerId) return;\n const dy = event.clientY - current.y;\n if (!current.pulling) {\n const dx = Math.abs(event.clientX - current.x);\n if (dy > SLOP && dy > dx) {\n current.pulling = true;\n current.y = event.clientY;\n event.currentTarget.setPointerCapture(event.pointerId);\n animation.current?.stop();\n setPulling(true);\n } else if (dy < -SLOP || dx > SLOP) {\n press.current = null;\n }\n return;\n }\n const offset = rubberBand(dy);\n at.set(offset);\n setArmed(offset >= threshold);\n }\n\n function handlePointerEnd(event: PointerEvent<HTMLDivElement>) {\n const current = press.current;\n if (!current || current.id !== event.pointerId) return;\n press.current = null;\n if (!current.pulling) return;\n swallowClick.current = true;\n setPulling(false);\n setArmed(false);\n const from = at.getVelocity();\n if (event.type === \"pointerup\" && at.get() >= threshold) void refresh(from);\n else settle(0, BACK_SPRING, from);\n }\n\n function handleClickCapture(event: MouseEvent<HTMLDivElement>) {\n // The click a pull leaves behind must not activate what it landed on.\n if (!swallowClick.current) return;\n swallowClick.current = false;\n event.preventDefault();\n event.stopPropagation();\n }\n\n function handleKeyDown(event: KeyboardEvent<HTMLDivElement>) {\n if (event.key !== \"Enter\" || event.target !== event.currentTarget || event.repeat) return;\n event.preventDefault();\n void refresh();\n }\n\n const phase: Phase = busy ? \"refreshing\" : pulling ? \"pulling\" : \"idle\";\n const count = Math.min(10, Math.max(3, Math.round(dots)));\n const rootStyle = {\n \"--ptr-period\": `${String(spinPeriod(spin))}ms`,\n ...style,\n } as CSSProperties;\n\n return (\n <MotionConfig reducedMotion=\"user\">\n <style href={PREFIX} precedence=\"dowel\">\n {STYLES}\n </style>\n <div\n data-slot=\"pull-to-refresh\"\n data-phase={phase}\n data-armed={armed || undefined}\n className={cn(pullToRefreshVariants({ fill }), className)}\n style={rootStyle}\n {...props}\n >\n <div\n aria-hidden=\"true\"\n data-slot=\"pull-to-refresh-spinner\"\n className=\"pointer-events-none absolute inset-x-0 mx-auto size-15\"\n style={{\n top: `${String(threshold / 2 - 30)}px`,\n opacity: \"var(--ptr-p, 0)\",\n scale: \"calc(0.82 + 0.18 * var(--ptr-p, 0))\",\n }}\n >\n <span data-slot=\"pull-to-refresh-dots\" className=\"absolute inset-0\">\n {Array.from({ length: count }, (_, index) => (\n <span\n key={index}\n data-slot=\"pull-to-refresh-dot\"\n className=\"absolute inset-0 m-auto size-1 rounded-full bg-foreground/35\"\n style={{\n transform: `rotate(${String((index * 360) / count)}deg) translateY(-${String(RING)}px)`,\n }}\n />\n ))}\n </span>\n </div>\n <motion.div\n ref={sheet}\n role=\"group\"\n aria-label={label}\n aria-describedby={disabled ? undefined : hintId}\n aria-busy={busy || undefined}\n aria-disabled={disabled || undefined}\n tabIndex={0}\n data-slot=\"pull-to-refresh-sheet\"\n className={cn(\n \"relative z-10 min-h-0 flex-1 overflow-auto overscroll-contain bg-card\",\n stroke && \"ring-1 ring-border ring-inset\",\n focusRing,\n )}\n style={{\n y: at,\n borderRadius: `${String(corner)}px`,\n touchAction: atTop ? \"pan-x pan-down\" : \"pan-x pan-y\",\n }}\n onScroll={(event) => setAtTop(event.currentTarget.scrollTop <= 0)}\n onPointerDown={handlePointerDown}\n onPointerMove={handlePointerMove}\n onPointerUp={handlePointerEnd}\n onPointerCancel={handlePointerEnd}\n onClickCapture={handleClickCapture}\n onKeyDown={handleKeyDown}\n >\n {children}\n </motion.div>\n {showRefreshButton ? (\n <Button\n variant=\"ghost\"\n size=\"sm\"\n data-slot=\"pull-to-refresh-button\"\n className=\"mt-3 self-center\"\n disabled={disabled}\n loading={busy}\n onClick={() => void refresh()}\n >\n {busy ? null : (\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={2}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n aria-hidden=\"true\"\n >\n <path d=\"M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8\" />\n <path d=\"M21 3v5h-5\" />\n </svg>\n )}\n {refreshButtonLabel}\n </Button>\n ) : null}\n <span id={hintId} className=\"sr-only\">\n {hint}\n </span>\n <span role=\"status\" aria-live=\"polite\" className=\"sr-only\">\n {announcement}\n </span>\n </div>\n </MotionConfig>\n );\n}\n\nexport { pullToRefreshVariants };\n"],"mappings":";;;;;;;;;AAgDA,MAAM,SAAS;AAGf,MAAM,SAAS;aACF,OAAO;gGAC4E,OAAO;;;AAIvG,MAAM,OAAO;;AAEb,MAAM,OAAO;AAEb,MAAM,cAAc;CAAE,MAAM;CAAmB,WAAW;CAAK,SAAS;AAAG;AAC3E,MAAM,cAAc;CAAE,MAAM;CAAmB,WAAW;CAAK,SAAS;AAAG;AAE3E,MAAM,iBAAiB;AAEvB,SAAS,4BAA4B,UAAsB;CACzD,MAAM,QAAQ,OAAO,WAAW,cAAc;CAC9C,MAAM,iBAAiB,UAAU,QAAQ;CACzC,aAAa,MAAM,oBAAoB,UAAU,QAAQ;AAC3D;AAEA,SAAS,0BAA0B;CACjC,OAAO,qBACL,mCACM,OAAO,WAAW,cAAc,CAAC,CAAC,eAClC,KACR;AACF;;AAGA,SAAgB,WAAW,UAAkB;CAC3C,OAAO,OAAO,IAAI,KAAK,IAAI,CAAC,KAAK,IAAI,GAAG,QAAQ,IAAI,GAAG;AACzD;;AAGA,SAAgB,WAAW,MAAc;CACvC,OAAO,KAAK,MAAM,OAAO,OAAO,KAAK,KAAK,IAAI,KAAK,KAAK,IAAI,GAAG,IAAI,CAAC,KAAK,GAAG;AAC9E;AAEA,MAAM,wBAAwB,IAAI,uDAAuD;CACvF,UAAU;;AAER,MAAM;EACJ,OAAO;EACP,MAAM;CACR,EACF;CACA,iBAAiB,EAAE,MAAM,QAAQ;AACnC,CAAC;;AAyCD,SAAgB,cAAc,EAC5B,WACA,OACA,MACA,UACA,WACA,YACA,YAAY,IACZ,OAAO,GACP,OAAO,IACP,SAAS,IACT,SAAS,OACT,WAAW,OACX,cAAc,KACd,QAAQ,uBACR,OAAO,0CACP,oBAAoB,MACpB,qBAAqB,WACrB,kBAAkB,eAClB,iBAAiB,aACjB,GAAG,SACkB;CACrB,MAAM,aAAa,eAAe,KAAA;CAClC,MAAM,CAAC,UAAU,eAAe,SAAS,KAAK;CAC9C,MAAM,OAAO,aAAa,aAAa;CACvC,MAAM,CAAC,SAAS,cAAc,SAAS,KAAK;CAC5C,MAAM,CAAC,OAAO,YAAY,SAAS,KAAK;CACxC,MAAM,CAAC,OAAO,YAAY,SAAS,IAAI;CACvC,MAAM,CAAC,cAAc,mBAAmB,SAAS,EAAE;CACnD,MAAM,eAAe,wBAAwB;CAC7C,MAAM,SAAS,GAAG,OAAO,GAAG,MAAM,CAAC,CAAC,QAAQ,MAAM,EAAE;CAEpD,MAAM,QAAQ,OAAuB,IAAI;CACzC,MAAM,KAAK,eAAe,CAAC;CAC3B,MAAM,YAAY,OAAyC,IAAI;CAC/D,MAAM,QAAQ,OAAsE,IAAI;CACxF,MAAM,eAAe,OAAO,KAAK;CACjC,MAAM,UAAU,OAAO,KAAK;CAC5B,MAAM,WAAW,OAAO,CAAC;CACzB,MAAM,UAAU,OAAO,KAAK;CAC5B,MAAM,SAAS,OAAO;EAAE;EAAW;EAAa;EAAc;EAAW;EAAM;CAAW,CAAC;CAC3F,sBAAsB;EACpB,OAAO,UAAU;GAAE;GAAW;GAAa;GAAc;GAAW;GAAM;EAAW;CACvF,CAAC;CAGD,MAAM,CAAC,WAAW,gBAAgB,SAAS,IAAI;CAC/C,IAAI,cAAc,MAAM;EACtB,aAAa,IAAI;EACjB,gBAAgB,OAAO,kBAAkB,cAAc;CACzD;CAEA,oBAAoB,IAAI,WAAW,UAAU;EAC3C,MAAM,OAAO,MAAM,SAAS;EAC5B,IAAI,CAAC,MAAM;EACX,MAAM,WAAW,KAAK,IAAI,GAAG,KAAK,IAAI,GAAG,QAAQ,OAAO,QAAQ,SAAS,CAAC;EAC1E,KAAK,MAAM,YAAY,YAAY,GAAG,OAAO,KAAK,EAAE,GAAG;EACvD,KAAK,MAAM,YAAY,WAAW,OAAO,QAAQ,CAAC;CACpD,CAAC;;CAGD,SAAS,OAAO,QAAgB,QAA4B,OAAO,GAAG;EACpE,UAAU,SAAS,KAAK;EACxB,UAAU,UAAU;EACpB,IAAI,OAAO,QAAQ,cAAc;GAC/B,GAAG,IAAI,MAAM;GACb;EACF;EACA,UAAU,UAAU,QAAQ,IAAI,QAAQ;GAAE,GAAG;GAAQ,UAAU;EAAK,CAAC;CACvE;CAEA,gBAAgB;EACd,IAAI,CAAC,QAAQ,SAAS;GACpB,QAAQ,UAAU;GAClB,IAAI,MAAM,GAAG,IAAI,OAAO,QAAQ,SAAS;GACzC;EACF;EACA,IAAI,MAAM,OAAO,OAAO,QAAQ,WAAW,aAAa,SAAS,OAAO;OACnE,OAAO,GAAG,WAAW;EAC1B,SAAS,UAAU;CAGrB,GAAG,CAAC,IAAI,CAAC;CAET,sBACc;EACV,QAAQ,UAAU;EAClB,UAAU,SAAS,KAAK;CAC1B,GACA,CAAC,CACH;CAEA,eAAe,QAAQ,OAAO,GAAG;EAC/B,IAAI,YAAY,QAAQ,WAAW,OAAO,QAAQ,MAAM;EACxD,QAAQ,UAAU;EAClB,SAAS,UAAU;EACnB,MAAM,UAAU,KAAK,IAAI;EACzB,IAAI,CAAC,OAAO,QAAQ,YAAY,YAAY,IAAI;EAChD,IAAI;GACF,MAAM,OAAO,QAAQ,YAAY;EACnC,QAAQ,CAER;EACA,IAAI,OAAO,QAAQ,YAEb;OAAA,CAAC,OAAO,QAAQ,MAAM,OAAO,GAAG,WAAW;EAAA,OAC1C;GACL,MAAM,YAAY,OAAO,QAAQ,eAAe,KAAK,IAAI,IAAI;GAC7D,IAAI,YAAY,GAAG,MAAM,IAAI,SAAS,YAAY,WAAW,SAAS,SAAS,CAAC;GAChF,IAAI,QAAQ,SAAS,YAAY,KAAK;EACxC;EACA,QAAQ,UAAU;CACpB;CAEA,SAAS,kBAAkB,OAAqC;EAC9D,aAAa,UAAU;EACvB,IAAI,YAAY,QAAQ,MAAM,WAAW,GAAG;EAC5C,IAAI,MAAM,cAAc,YAAY,GAAG;EACvC,MAAM,UAAU;GAAE,IAAI,MAAM;GAAW,GAAG,MAAM;GAAS,GAAG,MAAM;GAAS,SAAS;EAAM;CAC5F;CAEA,SAAS,kBAAkB,OAAqC;EAC9D,MAAM,UAAU,MAAM;EACtB,IAAI,CAAC,WAAW,QAAQ,OAAO,MAAM,WAAW;EAChD,MAAM,KAAK,MAAM,UAAU,QAAQ;EACnC,IAAI,CAAC,QAAQ,SAAS;GACpB,MAAM,KAAK,KAAK,IAAI,MAAM,UAAU,QAAQ,CAAC;GAC7C,IAAI,KAAK,QAAQ,KAAK,IAAI;IACxB,QAAQ,UAAU;IAClB,QAAQ,IAAI,MAAM;IAClB,MAAM,cAAc,kBAAkB,MAAM,SAAS;IACrD,UAAU,SAAS,KAAK;IACxB,WAAW,IAAI;GACjB,OAAO,IAAI,KAAK,MAAS,KAAK,MAC5B,MAAM,UAAU;GAElB;EACF;EACA,MAAM,SAAS,WAAW,EAAE;EAC5B,GAAG,IAAI,MAAM;EACb,SAAS,UAAU,SAAS;CAC9B;CAEA,SAAS,iBAAiB,OAAqC;EAC7D,MAAM,UAAU,MAAM;EACtB,IAAI,CAAC,WAAW,QAAQ,OAAO,MAAM,WAAW;EAChD,MAAM,UAAU;EAChB,IAAI,CAAC,QAAQ,SAAS;EACtB,aAAa,UAAU;EACvB,WAAW,KAAK;EAChB,SAAS,KAAK;EACd,MAAM,OAAO,GAAG,YAAY;EAC5B,IAAI,MAAM,SAAS,eAAe,GAAG,IAAI,KAAK,WAAW,QAAa,IAAI;OACrE,OAAO,GAAG,aAAa,IAAI;CAClC;CAEA,SAAS,mBAAmB,OAAmC;EAE7D,IAAI,CAAC,aAAa,SAAS;EAC3B,aAAa,UAAU;EACvB,MAAM,eAAe;EACrB,MAAM,gBAAgB;CACxB;CAEA,SAAS,cAAc,OAAsC;EAC3D,IAAI,MAAM,QAAQ,WAAW,MAAM,WAAW,MAAM,iBAAiB,MAAM,QAAQ;EACnF,MAAM,eAAe;EACrB,QAAa;CACf;CAEA,MAAM,QAAe,OAAO,eAAe,UAAU,YAAY;CACjE,MAAM,QAAQ,KAAK,IAAI,IAAI,KAAK,IAAI,GAAG,KAAK,MAAM,IAAI,CAAC,CAAC;CACxD,MAAM,YAAY;EAChB,gBAAgB,GAAG,OAAO,WAAW,IAAI,CAAC,EAAE;EAC5C,GAAG;CACL;CAEA,OACE,qBAAC,cAAD;EAAc,eAAc;EAA5B,UAAA,CACE,oBAAC,SAAD;GAAO,MAAM;GAAQ,YAAW;GAC7B,UAAA;EACI,CAAA,GACP,qBAAC,OAAD;GACE,aAAU;GACV,cAAY;GACZ,cAAY,SAAS,KAAA;GACrB,WAAW,GAAG,sBAAsB,EAAE,KAAK,CAAC,GAAG,SAAS;GACxD,OAAO;GACP,GAAI;GANN,UAAA;IAQE,oBAAC,OAAD;KACE,eAAY;KACZ,aAAU;KACV,WAAU;KACV,OAAO;MACL,KAAK,GAAG,OAAO,YAAY,IAAI,EAAE,EAAE;MACnC,SAAS;MACT,OAAO;KACT;KAEA,UAAA,oBAAC,QAAD;MAAM,aAAU;MAAuB,WAAU;MAC9C,UAAA,MAAM,KAAK,EAAE,QAAQ,MAAM,IAAI,GAAG,UACjC,oBAAC,QAAD;OAEE,aAAU;OACV,WAAU;OACV,OAAO,EACL,WAAW,UAAU,OAAQ,QAAQ,MAAO,KAAK,EAAE,mBAAmB,OAAO,IAAI,EAAE,KACrF;MACD,GANM,KAMN,CACF;KACG,CAAA;IACH,CAAA;IACL,oBAAC,OAAO,KAAR;KACE,KAAK;KACL,MAAK;KACL,cAAY;KACZ,oBAAkB,WAAW,KAAA,IAAY;KACzC,aAAW,QAAQ,KAAA;KACnB,iBAAe,YAAY,KAAA;KAC3B,UAAU;KACV,aAAU;KACV,WAAW,GACT,yEACA,UAAU,iCACV,SACF;KACA,OAAO;MACL,GAAG;MACH,cAAc,GAAG,OAAO,MAAM,EAAE;MAChC,aAAa,QAAQ,mBAAmB;KAC1C;KACA,WAAW,UAAU,SAAS,MAAM,cAAc,aAAa,CAAC;KAChE,eAAe;KACf,eAAe;KACf,aAAa;KACb,iBAAiB;KACjB,gBAAgB;KAChB,WAAW;KAEV;IACS,CAAA;IACX,oBACC,qBAAC,QAAD;KACE,SAAQ;KACR,MAAK;KACL,aAAU;KACV,WAAU;KACA;KACV,SAAS;KACT,eAAe,KAAK,QAAQ;KAP9B,UAAA,CASG,OAAO,OACN,qBAAC,OAAD;MACE,SAAQ;MACR,MAAK;MACL,QAAO;MACP,aAAa;MACb,eAAc;MACd,gBAAe;MACf,eAAY;MAPd,UAAA,CASE,oBAAC,QAAD,EAAM,GAAE,oDAAqD,CAAA,GAC7D,oBAAC,QAAD,EAAM,GAAE,aAAc,CAAA,CACnB;KAEN,CAAA,GAAA,kBACK;IACN,CAAA,IAAA;IACJ,oBAAC,QAAD;KAAM,IAAI;KAAQ,WAAU;KACzB,UAAA;IACG,CAAA;IACN,oBAAC,QAAD;KAAM,MAAK;KAAS,aAAU;KAAS,WAAU;KAC9C,UAAA;IACG,CAAA;GACH;EACO,CAAA,CAAA;;AAElB"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { defineMeta } from "../../registry/schema.js";
|
|
2
|
+
//#region src/components/radial-menu/meta.ts
|
|
3
|
+
const meta = defineMeta({
|
|
4
|
+
name: "radial-menu",
|
|
5
|
+
title: "Radial Menu",
|
|
6
|
+
description: "A round button whose options fan out along an arc: press and drag onto one, click, or walk the ring with the keyboard.",
|
|
7
|
+
category: "navigation",
|
|
8
|
+
status: "beta",
|
|
9
|
+
dependencies: ["class-variance-authority"],
|
|
10
|
+
registryDependencies: [],
|
|
11
|
+
files: ["radial-menu.tsx"],
|
|
12
|
+
a11y: "The core is a menu button (aria-haspopup=\"menu\", aria-expanded, aria-controls) named by `label`; the options are role=\"menuitem\" buttons named by their labels, in a role=\"menu\" that is inert and aria-hidden while closed. Enter/Space opens and focuses the first option (Down/Up open onto the first or last); Left/Right and Up/Down walk around the ring with wrap-around (Left/Right follow the visual order in RTL), Home/End jump, Enter/Space select and return focus to the core, Escape closes and refocuses the core, Tab and an outside press close. The press-and-drag marking gesture is a pointer shortcut only; clicking and the keyboard reach every option. Captions are aria-hidden duplicates of the names. The fly-out settles instantly under reduced motion."
|
|
13
|
+
});
|
|
14
|
+
//#endregion
|
|
15
|
+
export { meta };
|
|
16
|
+
|
|
17
|
+
//# sourceMappingURL=meta.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"meta.js","names":[],"sources":["../../../src/components/radial-menu/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"radial-menu\",\n title: \"Radial Menu\",\n description:\n \"A round button whose options fan out along an arc: press and drag onto one, click, or walk the ring with the keyboard.\",\n category: \"navigation\",\n status: \"beta\",\n dependencies: [\"class-variance-authority\"],\n registryDependencies: [],\n files: [\"radial-menu.tsx\"],\n a11y:\n 'The core is a menu button (aria-haspopup=\"menu\", aria-expanded, aria-controls) named by `label`; the ' +\n 'options are role=\"menuitem\" buttons named by their labels, in a role=\"menu\" that is inert and ' +\n \"aria-hidden while closed. Enter/Space opens and focuses the first option (Down/Up open onto the first \" +\n \"or last); Left/Right and Up/Down walk around the ring with wrap-around (Left/Right follow the visual \" +\n \"order in RTL), Home/End jump, Enter/Space select and return focus to the core, Escape closes and \" +\n \"refocuses the core, Tab and an outside press close. The press-and-drag marking gesture is a pointer \" +\n \"shortcut only; clicking and the keyboard reach every option. Captions are aria-hidden duplicates of \" +\n \"the names. The fly-out settles instantly under reduced motion.\",\n});\n"],"mappings":";;AAEA,MAAa,OAAO,WAAW;CAC7B,MAAM;CACN,OAAO;CACP,aACE;CACF,UAAU;CACV,QAAQ;CACR,cAAc,CAAC,0BAA0B;CACzC,sBAAsB,CAAC;CACvB,OAAO,CAAC,iBAAiB;CACzB,MACE;AAQJ,CAAC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { VariantProps } from "class-variance-authority";
|
|
2
|
+
import { ComponentPropsWithRef, ReactNode } from "react";
|
|
3
|
+
//#region src/components/radial-menu/radial-menu.d.ts
|
|
4
|
+
declare const radialMenuVariants: (props?: ({
|
|
5
|
+
part?: "core" | "item" | null | undefined;
|
|
6
|
+
tone?: "default" | "inverted" | null | undefined;
|
|
7
|
+
stroke?: boolean | null | undefined;
|
|
8
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
9
|
+
interface RadialMenuItem {
|
|
10
|
+
value: string;
|
|
11
|
+
/** The option's accessible name, also shown as its caption. */
|
|
12
|
+
label: string;
|
|
13
|
+
/** Decorative icon. */
|
|
14
|
+
icon: ReactNode;
|
|
15
|
+
disabled?: boolean;
|
|
16
|
+
}
|
|
17
|
+
interface RadialMenuProps extends Omit<ComponentPropsWithRef<"div">, "onSelect">, Omit<VariantProps<typeof radialMenuVariants>, "part"> {
|
|
18
|
+
items: RadialMenuItem[];
|
|
19
|
+
/** Called with the chosen item's value. The menu then closes. */
|
|
20
|
+
onSelect?: (value: string) => void;
|
|
21
|
+
/** The core button's accessible name, and the menu's. */
|
|
22
|
+
label?: string;
|
|
23
|
+
/** The core's icon. It turns 135° while open, so a plus reads as a cross. */
|
|
24
|
+
icon?: ReactNode;
|
|
25
|
+
/** Distance of the options from the core's centre, in px. */
|
|
26
|
+
radius?: number;
|
|
27
|
+
/** Angular spread in degrees, centred on straight up. */
|
|
28
|
+
arc?: number;
|
|
29
|
+
/** Delay between options flying out, in ms. */
|
|
30
|
+
stagger?: number;
|
|
31
|
+
open?: boolean;
|
|
32
|
+
defaultOpen?: boolean;
|
|
33
|
+
onOpenChange?: (open: boolean) => void;
|
|
34
|
+
}
|
|
35
|
+
/** Offset of option `index` of `count` from the core's centre. */
|
|
36
|
+
declare function radialPosition(index: number, count: number, arc: number, radius: number, rtl?: boolean): {
|
|
37
|
+
x: number;
|
|
38
|
+
y: number;
|
|
39
|
+
};
|
|
40
|
+
/** A round button that fans out a menu of options along an arc. */
|
|
41
|
+
declare function RadialMenu({ items, onSelect, label, icon, radius, arc, stagger, open: openProp, defaultOpen, onOpenChange, tone, stroke, className, ref, onBlur, ...props }: RadialMenuProps): import("react").JSX.Element;
|
|
42
|
+
//#endregion
|
|
43
|
+
export { RadialMenu, RadialMenuItem, RadialMenuProps, radialMenuVariants, radialPosition };
|
|
44
|
+
//# sourceMappingURL=radial-menu.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"radial-menu.d.ts","names":[],"sources":["../../../src/components/radial-menu/radial-menu.tsx"],"mappings":";;;cA6CM,qBAAkB;;;;6CAmBvB;UAiBgB;EACf;;EAEA;;EAEA,MAAM;EACN;;UAGe,wBAEb,KAAK,2CACL,KAAK,oBAAoB;EAC3B,OAAO;;EAEP,YAAY;;EAEZ;;EAEA,OAAO;;EAEP;;EAEA;;EAEA;EACA;EACA;EACA,gBAAgB;;;iBAIF,eACd,eACA,eACA,aACA,gBACA;EACG;EAAW;;;iBAaA,aACd,OACA,UACA,OACA,MACA,QACA,KACA,SACA,MAAM,UACN,aACA,cACA,MACA,QACA,WACA,KACA,WACG,SACF,kCAAe,IAAA"}
|