@dowel-ui/react 0.5.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/admin-dashboard/meta.js +31 -0
- package/dist/blocks/admin-dashboard/meta.js.map +1 -0
- package/dist/blocks/agent-console/meta.js +27 -0
- package/dist/blocks/agent-console/meta.js.map +1 -0
- package/dist/blocks/ai-dashboard/meta.js +25 -0
- package/dist/blocks/ai-dashboard/meta.js.map +1 -0
- package/dist/blocks/ai-workspace/meta.js +33 -0
- package/dist/blocks/ai-workspace/meta.js.map +1 -0
- package/dist/blocks/analytics/meta.js +24 -0
- package/dist/blocks/analytics/meta.js.map +1 -0
- package/dist/blocks/billing/meta.js +25 -0
- package/dist/blocks/billing/meta.js.map +1 -0
- package/dist/blocks/command-center/meta.js +28 -0
- package/dist/blocks/command-center/meta.js.map +1 -0
- package/dist/blocks/crm/meta.js +32 -0
- package/dist/blocks/crm/meta.js.map +1 -0
- 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/onboarding/meta.js +23 -0
- package/dist/blocks/onboarding/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/accordion/accordion.js +1 -1
- package/dist/components/accordion/accordion.js.map +1 -1
- 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/activity-feed/activity-feed.js +1 -1
- package/dist/components/activity-feed/activity-feed.js.map +1 -1
- 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 +110 -43
- 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-extraction-review/ai-extraction-review.js +1 -1
- package/dist/components/ai-extraction-review/ai-extraction-review.js.map +1 -1
- 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 +114 -10
- 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 +7 -3
- 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 +83 -6
- 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 +60 -0
- package/dist/components/breadcrumb/breadcrumb.d.ts.map +1 -0
- package/dist/components/breadcrumb/breadcrumb.js +158 -0
- package/dist/components/breadcrumb/breadcrumb.js.map +1 -0
- package/dist/components/breadcrumb/index.d.ts +2 -0
- package/dist/components/breadcrumb/index.js +2 -0
- package/dist/components/breadcrumb/meta.js +17 -0
- package/dist/components/breadcrumb/meta.js.map +1 -0
- 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/calendar/calendar.js +2 -2
- package/dist/components/calendar/calendar.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/collapsible/collapsible.d.ts +30 -0
- package/dist/components/collapsible/collapsible.d.ts.map +1 -0
- package/dist/components/collapsible/collapsible.js +38 -0
- package/dist/components/collapsible/collapsible.js.map +1 -0
- package/dist/components/collapsible/index.d.ts +2 -0
- package/dist/components/collapsible/index.js +2 -0
- package/dist/components/collapsible/meta.js +17 -0
- package/dist/components/collapsible/meta.js.map +1 -0
- 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 +161 -66
- 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/command.js +1 -1
- package/dist/components/command/command.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/data-table/data-table.d.ts.map +1 -1
- package/dist/components/data-table/data-table.js +4 -1
- package/dist/components/data-table/data-table.js.map +1 -1
- 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 +24 -7
- 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 +100 -28
- 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/direction/direction.d.ts +35 -0
- package/dist/components/direction/direction.d.ts.map +1 -0
- package/dist/components/direction/direction.js +14 -0
- package/dist/components/direction/direction.js.map +1 -0
- package/dist/components/direction/index.d.ts +2 -0
- package/dist/components/direction/index.js +2 -0
- package/dist/components/direction/meta.js +17 -0
- package/dist/components/direction/meta.js.map +1 -0
- 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 +24 -5
- 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 +34 -13
- 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/input.js +1 -1
- package/dist/components/input/input.js.map +1 -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/log-viewer/log-viewer.js +2 -2
- package/dist/components/log-viewer/log-viewer.js.map +1 -1
- 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/meter/meter.js +1 -1
- package/dist/components/meter/meter.js.map +1 -1
- 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 +16 -6
- 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/permission-matrix/permission-matrix.js +3 -3
- package/dist/components/permission-matrix/permission-matrix.js.map +1 -1
- 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 +21 -2
- 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/record-diff/record-diff.js +4 -4
- package/dist/components/record-diff/record-diff.js.map +1 -1
- 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 +29 -7
- 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 +25 -6
- 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/sidebar/index.d.ts +2 -0
- package/dist/components/sidebar/index.js +2 -0
- package/dist/components/sidebar/meta.js +17 -0
- package/dist/components/sidebar/meta.js.map +1 -0
- package/dist/components/sidebar/sidebar.d.ts +69 -0
- package/dist/components/sidebar/sidebar.d.ts.map +1 -0
- package/dist/components/sidebar/sidebar.js +256 -0
- package/dist/components/sidebar/sidebar.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/table/table.js +2 -2
- package/dist/components/table/table.js.map +1 -1
- 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/textarea/index.d.ts +2 -0
- package/dist/components/textarea/index.js +2 -0
- package/dist/components/textarea/meta.js +17 -0
- package/dist/components/textarea/meta.js.map +1 -0
- package/dist/components/textarea/textarea.d.ts +43 -0
- package/dist/components/textarea/textarea.d.ts.map +1 -0
- package/dist/components/textarea/textarea.js +119 -0
- package/dist/components/textarea/textarea.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-range-picker/time-range-picker.js +3 -3
- package/dist/components/time-range-picker/time-range-picker.js.map +1 -1
- 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 +34 -11
- 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 +256 -18
- package/dist/index.js +134 -10
- package/dist/lib/styles.d.ts +16 -1
- package/dist/lib/styles.d.ts.map +1 -1
- package/dist/lib/styles.js +16 -1
- package/dist/lib/styles.js.map +1 -1
- package/dist/registry/blocks.d.ts.map +1 -1
- package/dist/registry/blocks.js +95 -9
- package/dist/registry/blocks.js.map +1 -1
- package/dist/registry/components.d.ts.map +1 -1
- package/dist/registry/components.js +278 -50
- package/dist/registry/components.js.map +1 -1
- package/dist/registry/schema.d.ts +9 -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 +6 -4
- package/src/components/accordion/accordion.tsx +1 -1
- 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/activity-feed/activity-feed.tsx +1 -1
- 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-extraction-review/ai-extraction-review.tsx +1 -1
- 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 +57 -19
- package/src/components/ai-reasoning/ai-reasoning.tsx +192 -13
- 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 +12 -3
- 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 +125 -4
- 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 +198 -0
- package/src/components/breadcrumb/index.ts +11 -0
- package/src/components/breadcrumb/meta.ts +20 -0
- 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/calendar/calendar.tsx +2 -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/collapsible/collapsible.tsx +63 -0
- package/src/components/collapsible/index.ts +6 -0
- package/src/components/collapsible/meta.ts +16 -0
- package/src/components/combobox/combobox.tsx +167 -14
- package/src/components/combobox/index.ts +1 -0
- package/src/components/combobox/meta.ts +2 -1
- package/src/components/command/command.tsx +1 -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/data-table/data-table.tsx +14 -3
- 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 +80 -37
- package/src/components/dialog/meta.ts +2 -1
- package/src/components/diff-viewer/diff-viewer.tsx +160 -21
- package/src/components/diff-viewer/meta.ts +4 -1
- package/src/components/direction/direction.tsx +38 -0
- package/src/components/direction/index.ts +1 -0
- package/src/components/direction/meta.ts +19 -0
- 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 +78 -35
- package/src/components/drawer/meta.ts +1 -1
- package/src/components/dropdown-menu/dropdown-menu.tsx +61 -18
- 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/input.tsx +1 -1
- 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/log-viewer/log-viewer.tsx +2 -2
- 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/meter/meter.tsx +1 -1
- 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 +50 -5
- 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/permission-matrix/permission-matrix.tsx +4 -4
- 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/record-diff/record-diff.tsx +4 -4
- 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 +71 -24
- 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 +80 -34
- 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/sidebar/index.ts +19 -0
- package/src/components/sidebar/meta.ts +25 -0
- package/src/components/sidebar/sidebar.tsx +374 -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/table/table.tsx +3 -3
- 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 +123 -5
- 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/textarea/index.ts +1 -0
- package/src/components/textarea/meta.ts +21 -0
- package/src/components/textarea/textarea.tsx +210 -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-range-picker/time-range-picker.tsx +3 -3
- 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 +81 -15
- 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 +114 -0
- package/src/lib/styles.ts +16 -0
- package/src/registry/blocks.ts +86 -0
- package/src/registry/components.ts +228 -0
- package/src/registry/schema.ts +9 -0
- package/src/blocks/admin-users/admin-users.tsx +0 -251
- package/src/blocks/admin-users/index.ts +0 -1
- package/src/blocks/admin-users/meta.ts +0 -27
- package/src/blocks/ai-chat/ai-chat.tsx +0 -280
- package/src/blocks/ai-chat/index.ts +0 -7
- package/src/blocks/ai-chat/meta.ts +0 -32
- package/src/blocks/dashboard/dashboard.tsx +0 -192
- package/src/blocks/dashboard/index.ts +0 -6
- package/src/blocks/dashboard/meta.ts +0 -18
- package/src/blocks/forgot-password/forgot-password.tsx +0 -158
- package/src/blocks/forgot-password/index.ts +0 -1
- package/src/blocks/forgot-password/meta.ts +0 -18
- package/src/blocks/login/index.ts +0 -1
- package/src/blocks/login/login.tsx +0 -178
- package/src/blocks/login/meta.ts +0 -18
- package/src/blocks/pricing/index.ts +0 -1
- package/src/blocks/pricing/meta.ts +0 -18
- package/src/blocks/pricing/pricing.tsx +0 -176
- package/src/blocks/settings/index.ts +0 -6
- package/src/blocks/settings/meta.ts +0 -29
- package/src/blocks/settings/settings.tsx +0 -317
- package/src/blocks/signup/index.ts +0 -1
- package/src/blocks/signup/meta.ts +0 -18
- package/src/blocks/signup/signup.tsx +0 -240
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { defineMeta } from "../../registry/schema.js";
|
|
2
|
+
//#region src/components/magnetic-select/meta.ts
|
|
3
|
+
const meta = defineMeta({
|
|
4
|
+
name: "magnetic-select",
|
|
5
|
+
title: "Magnetic Select",
|
|
6
|
+
description: "A honeycomb of round chips: choosing one grows it and magnetically shoves the rest apart, tilted, with a springy settle.",
|
|
7
|
+
category: "form",
|
|
8
|
+
status: "beta",
|
|
9
|
+
dependencies: ["class-variance-authority"],
|
|
10
|
+
registryDependencies: [],
|
|
11
|
+
files: ["magnetic-select.tsx", "magnetic-select-spring.ts"],
|
|
12
|
+
a11y: "A role=\"radiogroup\" of native buttons with role=\"radio\" and aria-checked, named by each option's `label`; the group needs aria-label or aria-labelledby and warns in development without one. Roving tabindex: Tab reaches the selected chip (or the first), arrow keys move focus and select with wrap-around (Left/Right follow the reading direction in RTL), Home/End jump to the ends. Images and skins are decorative. The spring is a CSS transition, so under reduced motion every chip settles at its final pose immediately; cursor parallax is mouse-only."
|
|
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/magnetic-select/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"magnetic-select\",\n title: \"Magnetic Select\",\n description:\n \"A honeycomb of round chips: choosing one grows it and magnetically shoves the rest apart, tilted, with a springy settle.\",\n category: \"form\",\n status: \"beta\",\n dependencies: [\"class-variance-authority\"],\n registryDependencies: [],\n files: [\"magnetic-select.tsx\", \"magnetic-select-spring.ts\"],\n a11y:\n 'A role=\"radiogroup\" of native buttons with role=\"radio\" and aria-checked, named by each option\\'s `label`; the group ' +\n \"needs aria-label or aria-labelledby and warns in development without one. Roving tabindex: Tab reaches the \" +\n \"selected chip (or the first), arrow keys move focus and select with wrap-around (Left/Right follow the reading \" +\n \"direction in RTL), Home/End jump to the ends. Images and skins are decorative. The spring is a CSS transition, \" +\n \"so under reduced motion every chip settles at its final pose immediately; cursor parallax is mouse-only.\",\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,uBAAuB,2BAA2B;CAC1D,MACE;AAKJ,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { VariantProps } from "class-variance-authority";
|
|
2
|
+
import { ComponentPropsWithRef, ReactNode } from "react";
|
|
3
|
+
//#region src/components/magnify-dock/magnify-dock.d.ts
|
|
4
|
+
/** Share of the effect at distance `d` from the lens: cos²(π·d / 2(reach+1)). */
|
|
5
|
+
declare function magnifyFalloff(distance: number, reach: number): number;
|
|
6
|
+
interface MagnifyDockItem {
|
|
7
|
+
value: string;
|
|
8
|
+
/** Names the item and fills its tooltip. */
|
|
9
|
+
label: string;
|
|
10
|
+
/** Decorative glyph, hidden from assistive technology. */
|
|
11
|
+
icon: ReactNode;
|
|
12
|
+
/** Renders a link instead of a button. */
|
|
13
|
+
href?: string;
|
|
14
|
+
disabled?: boolean;
|
|
15
|
+
}
|
|
16
|
+
declare const magnifyDockVariants: (props?: ({
|
|
17
|
+
fill?: "light" | "dark" | null | undefined;
|
|
18
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
19
|
+
interface MagnifyDockProps extends Omit<ComponentPropsWithRef<"div">, "defaultValue" | "children">, VariantProps<typeof magnifyDockVariants> {
|
|
20
|
+
items: MagnifyDockItem[];
|
|
21
|
+
/** The active item (controlled). */
|
|
22
|
+
value?: string;
|
|
23
|
+
/** The active item at first (uncontrolled). */
|
|
24
|
+
defaultValue?: string;
|
|
25
|
+
/** Called when an item is activated. */
|
|
26
|
+
onValueChange?: (value: string) => void;
|
|
27
|
+
/** Scale of the lens item, 1–2. */
|
|
28
|
+
magnify?: number;
|
|
29
|
+
/** How far the lens item rises, 0–22 px. */
|
|
30
|
+
lift?: number;
|
|
31
|
+
/** How many neighbours on each side are affected, 0–4. */
|
|
32
|
+
reach?: number;
|
|
33
|
+
/** 1px inset hairline around the dock. */
|
|
34
|
+
stroke?: boolean;
|
|
35
|
+
}
|
|
36
|
+
/** A dock of icon buttons or links that magnify on hover and keyboard focus. */
|
|
37
|
+
declare function MagnifyDock({ className, items, value, defaultValue, onValueChange, magnify, lift, reach, fill, stroke, onKeyDown, onPointerLeave, onBlur, onPointerDown, ...props }: MagnifyDockProps): import("react").JSX.Element;
|
|
38
|
+
//#endregion
|
|
39
|
+
export { MagnifyDock, MagnifyDockItem, MagnifyDockProps, magnifyDockVariants, magnifyFalloff };
|
|
40
|
+
//# sourceMappingURL=magnify-dock.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"magnify-dock.d.ts","names":[],"sources":["../../../src/components/magnify-dock/magnify-dock.tsx"],"mappings":";;;;iBAuCgB,eAAe,kBAAkB;UAMhC;EACf;;EAEA;;EAEA,MAAM;;EAEN;EACA;;cAGI,sBAAmB;;6CAYxB;UAEgB,yBAEb,KAAK,4DACL,oBAAoB;EACtB,OAAO;;EAEP;;EAEA;;EAEA,iBAAiB;;EAEjB;;EAEA;;EAEA;;EAEA;;;iBAIc,cACd,WACA,OACA,OACA,cACA,eACA,SACA,MACA,OACA,MACA,QACA,WACA,gBACA,QACA,kBACG,SACF,mCAAgB,IAAA"}
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { focusRing } from "../../lib/styles.js";
|
|
3
|
+
import { cn } from "../../lib/utils.js";
|
|
4
|
+
import { Direction } from "radix-ui";
|
|
5
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
6
|
+
import { cva } from "class-variance-authority";
|
|
7
|
+
import { useRef, useState } from "react";
|
|
8
|
+
//#region src/components/magnify-dock/magnify-dock.tsx
|
|
9
|
+
const SPRING = "cubic-bezier(.24,1.2,.32,1)";
|
|
10
|
+
const TIP_SPRING = "cubic-bezier(.28,1.3,.36,1)";
|
|
11
|
+
function clamp(value, min, max) {
|
|
12
|
+
return Math.min(max, Math.max(min, value));
|
|
13
|
+
}
|
|
14
|
+
/** Share of the effect at distance `d` from the lens: cos²(π·d / 2(reach+1)). */
|
|
15
|
+
function magnifyFalloff(distance, reach) {
|
|
16
|
+
const r = Math.round(clamp(reach, 0, 4));
|
|
17
|
+
if (distance > r) return 0;
|
|
18
|
+
return Math.cos(Math.PI * distance / (2 * (r + 1))) ** 2;
|
|
19
|
+
}
|
|
20
|
+
const magnifyDockVariants = cva("relative inline-flex items-end gap-2.5 rounded-[1.625rem] px-4 py-3 shadow-sm", {
|
|
21
|
+
variants: {
|
|
22
|
+
/** Dock tone. `light` is the card surface; `dark` inverts it. */
|
|
23
|
+
fill: {
|
|
24
|
+
light: "bg-card text-card-foreground",
|
|
25
|
+
dark: "bg-foreground text-background"
|
|
26
|
+
} },
|
|
27
|
+
defaultVariants: { fill: "light" }
|
|
28
|
+
});
|
|
29
|
+
/** A dock of icon buttons or links that magnify on hover and keyboard focus. */
|
|
30
|
+
function MagnifyDock({ className, items, value, defaultValue, onValueChange, magnify = 1.32, lift = 8, reach = 2, fill, stroke = false, onKeyDown, onPointerLeave, onBlur, onPointerDown, ...props }) {
|
|
31
|
+
const [uncontrolled, setUncontrolled] = useState(defaultValue);
|
|
32
|
+
const active = value ?? uncontrolled;
|
|
33
|
+
const [hovered, setHovered] = useState(null);
|
|
34
|
+
const [focused, setFocused] = useState(null);
|
|
35
|
+
const [stop, setStop] = useState(null);
|
|
36
|
+
const pressing = useRef(false);
|
|
37
|
+
const direction = Direction.useDirection();
|
|
38
|
+
const scale = clamp(magnify, 1, 2);
|
|
39
|
+
const rise = clamp(lift, 0, 22);
|
|
40
|
+
const dark = fill === "dark";
|
|
41
|
+
const enabled = items.flatMap((item, index) => item.disabled ? [] : [index]);
|
|
42
|
+
const activeIndex = items.findIndex((item) => item.value === active && !item.disabled);
|
|
43
|
+
const tabStop = stop !== null && enabled.includes(stop) ? stop : activeIndex >= 0 ? activeIndex : enabled[0];
|
|
44
|
+
const lens = hovered ?? focused;
|
|
45
|
+
function select(item) {
|
|
46
|
+
if (item.disabled) return;
|
|
47
|
+
if (value === void 0) setUncontrolled(item.value);
|
|
48
|
+
onValueChange?.(item.value);
|
|
49
|
+
}
|
|
50
|
+
function focusItem(root, index) {
|
|
51
|
+
root.querySelector(`[data-index="${String(index)}"]`)?.focus();
|
|
52
|
+
}
|
|
53
|
+
function handleKeyDown(event) {
|
|
54
|
+
onKeyDown?.(event);
|
|
55
|
+
if (event.defaultPrevented || enabled.length === 0) return;
|
|
56
|
+
const from = Number(event.target.dataset.index);
|
|
57
|
+
if (Number.isNaN(from)) return;
|
|
58
|
+
const rtl = direction === "rtl" || event.currentTarget.closest("[dir]")?.getAttribute("dir") === "rtl";
|
|
59
|
+
const position = enabled.indexOf(from);
|
|
60
|
+
const last = enabled.length - 1;
|
|
61
|
+
const forward = rtl ? "ArrowLeft" : "ArrowRight";
|
|
62
|
+
const back = rtl ? "ArrowRight" : "ArrowLeft";
|
|
63
|
+
let to;
|
|
64
|
+
if (event.key === forward) to = enabled[position >= last ? 0 : position + 1];
|
|
65
|
+
else if (event.key === back) to = enabled[position <= 0 ? last : position - 1];
|
|
66
|
+
else if (event.key === "Home") to = enabled[0];
|
|
67
|
+
else if (event.key === "End") to = enabled[last];
|
|
68
|
+
if (to === void 0) return;
|
|
69
|
+
event.preventDefault();
|
|
70
|
+
focusItem(event.currentTarget, to);
|
|
71
|
+
}
|
|
72
|
+
function handleFocus(index) {
|
|
73
|
+
setStop(index);
|
|
74
|
+
setFocused(pressing.current ? null : index);
|
|
75
|
+
}
|
|
76
|
+
return /* @__PURE__ */ jsx("div", {
|
|
77
|
+
role: "toolbar",
|
|
78
|
+
"aria-label": props["aria-labelledby"] ? void 0 : "Dock",
|
|
79
|
+
"aria-orientation": "horizontal",
|
|
80
|
+
"data-slot": "magnify-dock",
|
|
81
|
+
className: cn(magnifyDockVariants({ fill }), stroke && "ring-1 ring-border ring-inset", className),
|
|
82
|
+
onKeyDown: handleKeyDown,
|
|
83
|
+
onPointerDown: (event) => {
|
|
84
|
+
onPointerDown?.(event);
|
|
85
|
+
pressing.current = true;
|
|
86
|
+
setTimeout(() => {
|
|
87
|
+
pressing.current = false;
|
|
88
|
+
}, 0);
|
|
89
|
+
},
|
|
90
|
+
onPointerLeave: (event) => {
|
|
91
|
+
onPointerLeave?.(event);
|
|
92
|
+
setHovered(null);
|
|
93
|
+
},
|
|
94
|
+
onBlur: (event) => {
|
|
95
|
+
onBlur?.(event);
|
|
96
|
+
if (!event.currentTarget.contains(event.relatedTarget)) setFocused(null);
|
|
97
|
+
},
|
|
98
|
+
...props,
|
|
99
|
+
children: items.map((item, index) => {
|
|
100
|
+
const distance = lens === null ? Infinity : Math.abs(index - lens);
|
|
101
|
+
const f = magnifyFalloff(distance, reach);
|
|
102
|
+
const y = Math.round(rise * f * 100) / 100;
|
|
103
|
+
const s = Math.round((1 + (scale - 1) * f) * 1e3) / 1e3;
|
|
104
|
+
const isActive = index === activeIndex;
|
|
105
|
+
const opacity = distance === 0 || isActive ? 1 : distance === 1 && f > 0 ? .66 : .42;
|
|
106
|
+
const shared = {
|
|
107
|
+
"data-index": index,
|
|
108
|
+
"data-slot": "magnify-dock-item",
|
|
109
|
+
"data-lens": distance === 0 ? "" : void 0,
|
|
110
|
+
"data-near": distance === 1 && f > 0 ? "" : void 0,
|
|
111
|
+
"aria-label": item.label,
|
|
112
|
+
"aria-current": isActive ? "page" : void 0,
|
|
113
|
+
tabIndex: item.disabled ? -1 : index === tabStop ? 0 : -1,
|
|
114
|
+
className: cn("relative flex size-11 shrink-0 items-center justify-center rounded-[0.625rem]", focusRing, "disabled:pointer-events-none aria-disabled:pointer-events-none", "[&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-6"),
|
|
115
|
+
style: {
|
|
116
|
+
opacity: item.disabled ? .2 : opacity,
|
|
117
|
+
transition: `opacity calc(180ms * var(--motion-scale)) ease`
|
|
118
|
+
},
|
|
119
|
+
onPointerEnter: () => setHovered(index),
|
|
120
|
+
onFocus: () => handleFocus(index)
|
|
121
|
+
};
|
|
122
|
+
const content = /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
123
|
+
/* @__PURE__ */ jsx("span", {
|
|
124
|
+
"aria-hidden": "true",
|
|
125
|
+
"data-slot": "magnify-dock-glyph",
|
|
126
|
+
className: "flex origin-bottom",
|
|
127
|
+
style: {
|
|
128
|
+
transform: `translateY(${String(-y)}px) scale(${String(s)})`,
|
|
129
|
+
transition: `transform calc(320ms * var(--motion-scale)) ${SPRING}`
|
|
130
|
+
},
|
|
131
|
+
children: item.icon
|
|
132
|
+
}),
|
|
133
|
+
/* @__PURE__ */ jsx("span", {
|
|
134
|
+
"aria-hidden": "true",
|
|
135
|
+
"data-slot": "magnify-dock-dot",
|
|
136
|
+
className: "absolute inset-x-0 bottom-[3px] mx-auto size-[3px] rounded-full bg-current",
|
|
137
|
+
style: {
|
|
138
|
+
opacity: isActive ? .55 : 0,
|
|
139
|
+
scale: isActive ? 1 : .4,
|
|
140
|
+
transition: `opacity calc(360ms * var(--motion-scale)) ${SPRING}, scale calc(360ms * var(--motion-scale)) ${SPRING}`
|
|
141
|
+
}
|
|
142
|
+
}),
|
|
143
|
+
/* @__PURE__ */ jsx("span", {
|
|
144
|
+
"aria-hidden": "true",
|
|
145
|
+
"data-slot": "magnify-dock-tip",
|
|
146
|
+
"data-on": distance === 0 ? "" : void 0,
|
|
147
|
+
className: cn("pointer-events-none absolute inset-x-0 bottom-full mx-auto mb-2 w-max rounded-full px-[9px] py-[5px]", "font-mono text-[0.5rem] leading-none tracking-[0.06em] whitespace-nowrap uppercase", dark ? "bg-background text-foreground" : "bg-foreground text-background"),
|
|
148
|
+
style: {
|
|
149
|
+
opacity: distance === 0 ? 1 : 0,
|
|
150
|
+
translate: `0 ${distance === 0 ? "0" : "4px"}`,
|
|
151
|
+
transition: `opacity calc(180ms * var(--motion-scale)) ease, translate calc(260ms * var(--motion-scale)) ${TIP_SPRING}`
|
|
152
|
+
},
|
|
153
|
+
children: item.label
|
|
154
|
+
})
|
|
155
|
+
] });
|
|
156
|
+
if (item.href) return /* @__PURE__ */ jsx("a", {
|
|
157
|
+
...shared,
|
|
158
|
+
href: item.disabled ? void 0 : item.href,
|
|
159
|
+
role: item.disabled ? "link" : void 0,
|
|
160
|
+
"aria-disabled": item.disabled || void 0,
|
|
161
|
+
onClick: (event) => {
|
|
162
|
+
if (item.disabled) {
|
|
163
|
+
event.preventDefault();
|
|
164
|
+
return;
|
|
165
|
+
}
|
|
166
|
+
select(item);
|
|
167
|
+
},
|
|
168
|
+
children: content
|
|
169
|
+
}, item.value);
|
|
170
|
+
return /* @__PURE__ */ jsx("button", {
|
|
171
|
+
type: "button",
|
|
172
|
+
disabled: item.disabled,
|
|
173
|
+
...shared,
|
|
174
|
+
onClick: () => select(item),
|
|
175
|
+
children: content
|
|
176
|
+
}, item.value);
|
|
177
|
+
})
|
|
178
|
+
});
|
|
179
|
+
}
|
|
180
|
+
//#endregion
|
|
181
|
+
export { MagnifyDock, magnifyDockVariants, magnifyFalloff };
|
|
182
|
+
|
|
183
|
+
//# sourceMappingURL=magnify-dock.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"magnify-dock.js","names":[],"sources":["../../../src/components/magnify-dock/magnify-dock.tsx"],"sourcesContent":["\"use client\";\n\n// Ported from bencho Magnifying dock (MIT, © 2026 Lorenzo Cabra). See THIRD_PARTY_NOTICES.md.\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { Direction } from \"radix-ui\";\nimport {\n useRef,\n useState,\n type ComponentPropsWithRef,\n type KeyboardEvent,\n type ReactNode,\n} from \"react\";\n\nimport { focusRing } from \"@/lib/styles\";\nimport { cn } from \"@/lib/utils\";\n\n/*\n * A macOS-style dock: the item under the pointer grows and lifts, its\n * neighbours rise less, and a small label pill appears above it.\n *\n * Magnification is discrete per item, not continuous in x: the lens item is\n * distance 0, its neighbours 1, 2, … and each takes a share of the effect from\n * a cos² falloff. Nothing carries velocity, so this is plain CSS: each glyph\n * transitions its transform on a springy cubic-bezier, and the global\n * reduced-motion rule (via --motion-scale) turns every move into a jump.\n *\n * The lens follows the hovered item *or* the keyboard-focused one, so arrow\n * keys give the same feedback a pointer does. The dock is a toolbar with a\n * roving tab stop; the active item is the current page (aria-current).\n */\n\nconst SPRING = \"cubic-bezier(.24,1.2,.32,1)\";\nconst TIP_SPRING = \"cubic-bezier(.28,1.3,.36,1)\";\n\nfunction clamp(value: number, min: number, max: number) {\n return Math.min(max, Math.max(min, value));\n}\n\n/** Share of the effect at distance `d` from the lens: cos²(π·d / 2(reach+1)). */\nexport function magnifyFalloff(distance: number, reach: number) {\n const r = Math.round(clamp(reach, 0, 4));\n if (distance > r) return 0;\n return Math.cos((Math.PI * distance) / (2 * (r + 1))) ** 2;\n}\n\nexport interface MagnifyDockItem {\n value: string;\n /** Names the item and fills its tooltip. */\n label: string;\n /** Decorative glyph, hidden from assistive technology. */\n icon: ReactNode;\n /** Renders a link instead of a button. */\n href?: string;\n disabled?: boolean;\n}\n\nconst magnifyDockVariants = cva(\n \"relative inline-flex items-end gap-2.5 rounded-[1.625rem] px-4 py-3 shadow-sm\",\n {\n variants: {\n /** Dock tone. `light` is the card surface; `dark` inverts it. */\n fill: {\n light: \"bg-card text-card-foreground\",\n dark: \"bg-foreground text-background\",\n },\n },\n defaultVariants: { fill: \"light\" },\n },\n);\n\nexport interface MagnifyDockProps\n extends\n Omit<ComponentPropsWithRef<\"div\">, \"defaultValue\" | \"children\">,\n VariantProps<typeof magnifyDockVariants> {\n items: MagnifyDockItem[];\n /** The active item (controlled). */\n value?: string;\n /** The active item at first (uncontrolled). */\n defaultValue?: string;\n /** Called when an item is activated. */\n onValueChange?: (value: string) => void;\n /** Scale of the lens item, 1–2. */\n magnify?: number;\n /** How far the lens item rises, 0–22 px. */\n lift?: number;\n /** How many neighbours on each side are affected, 0–4. */\n reach?: number;\n /** 1px inset hairline around the dock. */\n stroke?: boolean;\n}\n\n/** A dock of icon buttons or links that magnify on hover and keyboard focus. */\nexport function MagnifyDock({\n className,\n items,\n value,\n defaultValue,\n onValueChange,\n magnify = 1.32,\n lift = 8,\n reach = 2,\n fill,\n stroke = false,\n onKeyDown,\n onPointerLeave,\n onBlur,\n onPointerDown,\n ...props\n}: MagnifyDockProps) {\n const [uncontrolled, setUncontrolled] = useState(defaultValue);\n const active = value ?? uncontrolled;\n const [hovered, setHovered] = useState<number | null>(null);\n const [focused, setFocused] = useState<number | null>(null);\n const [stop, setStop] = useState<number | null>(null);\n const pressing = useRef(false);\n const direction = Direction.useDirection();\n const scale = clamp(magnify, 1, 2);\n const rise = clamp(lift, 0, 22);\n const dark = fill === \"dark\";\n\n const enabled = items.flatMap((item, index) => (item.disabled ? [] : [index]));\n const activeIndex = items.findIndex((item) => item.value === active && !item.disabled);\n // The roving tab stop: last focused, else the active item, else the first enabled.\n const tabStop =\n stop !== null && enabled.includes(stop)\n ? stop\n : activeIndex >= 0\n ? activeIndex\n : enabled[0];\n const lens = hovered ?? focused;\n\n function select(item: MagnifyDockItem) {\n if (item.disabled) return;\n if (value === undefined) setUncontrolled(item.value);\n onValueChange?.(item.value);\n }\n\n function focusItem(root: HTMLElement, index: number) {\n root.querySelector<HTMLElement>(`[data-index=\"${String(index)}\"]`)?.focus();\n }\n\n function handleKeyDown(event: KeyboardEvent<HTMLDivElement>) {\n onKeyDown?.(event);\n if (event.defaultPrevented || enabled.length === 0) return;\n const from = Number((event.target as HTMLElement).dataset.index);\n if (Number.isNaN(from)) return;\n const rtl =\n direction === \"rtl\" ||\n event.currentTarget.closest(\"[dir]\")?.getAttribute(\"dir\") === \"rtl\";\n const position = enabled.indexOf(from);\n const last = enabled.length - 1;\n const forward = rtl ? \"ArrowLeft\" : \"ArrowRight\";\n const back = rtl ? \"ArrowRight\" : \"ArrowLeft\";\n let to: number | undefined;\n if (event.key === forward) to = enabled[position >= last ? 0 : position + 1];\n else if (event.key === back) to = enabled[position <= 0 ? last : position - 1];\n else if (event.key === \"Home\") to = enabled[0];\n else if (event.key === \"End\") to = enabled[last];\n if (to === undefined) return;\n event.preventDefault();\n focusItem(event.currentTarget, to);\n }\n\n function handleFocus(index: number) {\n setStop(index);\n // Pointer focus is already under the lens (or leaving it); only keyboard\n // and programmatic focus move the lens, like :focus-visible.\n setFocused(pressing.current ? null : index);\n }\n\n return (\n <div\n role=\"toolbar\"\n aria-label={props[\"aria-labelledby\"] ? undefined : \"Dock\"}\n aria-orientation=\"horizontal\"\n data-slot=\"magnify-dock\"\n className={cn(\n magnifyDockVariants({ fill }),\n stroke && \"ring-1 ring-border ring-inset\",\n className,\n )}\n onKeyDown={handleKeyDown}\n onPointerDown={(event) => {\n onPointerDown?.(event);\n pressing.current = true;\n // Focus lands between pointerdown and the next task.\n setTimeout(() => {\n pressing.current = false;\n }, 0);\n }}\n onPointerLeave={(event) => {\n onPointerLeave?.(event);\n setHovered(null);\n }}\n onBlur={(event) => {\n onBlur?.(event);\n if (!event.currentTarget.contains(event.relatedTarget)) setFocused(null);\n }}\n {...props}\n >\n {items.map((item, index) => {\n const distance = lens === null ? Infinity : Math.abs(index - lens);\n const f = magnifyFalloff(distance, reach);\n const y = Math.round(rise * f * 100) / 100;\n const s = Math.round((1 + (scale - 1) * f) * 1000) / 1000;\n const isActive = index === activeIndex;\n const opacity = distance === 0 || isActive ? 1 : distance === 1 && f > 0 ? 0.66 : 0.42;\n const shared = {\n \"data-index\": index,\n \"data-slot\": \"magnify-dock-item\",\n \"data-lens\": distance === 0 ? \"\" : undefined,\n \"data-near\": distance === 1 && f > 0 ? \"\" : undefined,\n \"aria-label\": item.label,\n \"aria-current\": isActive ? (\"page\" as const) : undefined,\n tabIndex: item.disabled ? -1 : index === tabStop ? 0 : -1,\n className: cn(\n \"relative flex size-11 shrink-0 items-center justify-center rounded-[0.625rem]\",\n focusRing,\n \"disabled:pointer-events-none aria-disabled:pointer-events-none\",\n \"[&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-6\",\n ),\n style: {\n opacity: item.disabled ? 0.2 : opacity,\n transition: `opacity calc(180ms * var(--motion-scale)) ease`,\n },\n onPointerEnter: () => setHovered(index),\n onFocus: () => handleFocus(index),\n };\n const content = (\n <>\n <span\n aria-hidden=\"true\"\n data-slot=\"magnify-dock-glyph\"\n className=\"flex origin-bottom\"\n style={{\n transform: `translateY(${String(-y)}px) scale(${String(s)})`,\n transition: `transform calc(320ms * var(--motion-scale)) ${SPRING}`,\n }}\n >\n {item.icon}\n </span>\n <span\n aria-hidden=\"true\"\n data-slot=\"magnify-dock-dot\"\n className=\"absolute inset-x-0 bottom-[3px] mx-auto size-[3px] rounded-full bg-current\"\n style={{\n opacity: isActive ? 0.55 : 0,\n scale: isActive ? 1 : 0.4,\n transition: `opacity calc(360ms * var(--motion-scale)) ${SPRING}, scale calc(360ms * var(--motion-scale)) ${SPRING}`,\n }}\n />\n <span\n aria-hidden=\"true\"\n data-slot=\"magnify-dock-tip\"\n data-on={distance === 0 ? \"\" : undefined}\n className={cn(\n \"pointer-events-none absolute inset-x-0 bottom-full mx-auto mb-2 w-max rounded-full px-[9px] py-[5px]\",\n \"font-mono text-[0.5rem] leading-none tracking-[0.06em] whitespace-nowrap uppercase\",\n dark ? \"bg-background text-foreground\" : \"bg-foreground text-background\",\n )}\n style={{\n opacity: distance === 0 ? 1 : 0,\n translate: `0 ${distance === 0 ? \"0\" : \"4px\"}`,\n transition: `opacity calc(180ms * var(--motion-scale)) ease, translate calc(260ms * var(--motion-scale)) ${TIP_SPRING}`,\n }}\n >\n {item.label}\n </span>\n </>\n );\n\n if (item.href) {\n return (\n <a\n key={item.value}\n {...shared}\n href={item.disabled ? undefined : item.href}\n role={item.disabled ? \"link\" : undefined}\n aria-disabled={item.disabled || undefined}\n onClick={(event) => {\n if (item.disabled) {\n event.preventDefault();\n return;\n }\n select(item);\n }}\n >\n {content}\n </a>\n );\n }\n return (\n <button\n key={item.value}\n type=\"button\"\n disabled={item.disabled}\n {...shared}\n onClick={() => select(item)}\n >\n {content}\n </button>\n );\n })}\n </div>\n );\n}\n\nexport { magnifyDockVariants };\n"],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { defineMeta } from "../../registry/schema.js";
|
|
2
|
+
//#region src/components/magnify-dock/meta.ts
|
|
3
|
+
const meta = defineMeta({
|
|
4
|
+
name: "magnify-dock",
|
|
5
|
+
title: "Magnify Dock",
|
|
6
|
+
description: "A macOS-style dock whose icons grow, lift and show a label as the pointer or keyboard focus passes over them.",
|
|
7
|
+
category: "navigation",
|
|
8
|
+
status: "beta",
|
|
9
|
+
dependencies: ["class-variance-authority", "radix-ui"],
|
|
10
|
+
registryDependencies: [],
|
|
11
|
+
files: ["magnify-dock.tsx"],
|
|
12
|
+
a11y: "A toolbar (role=\"toolbar\", named \"Dock\" by default, aria-orientation horizontal) with one roving tab stop: ArrowLeft/ArrowRight move between items (mirrored in right-to-left layouts, wrapping), Home/End jump to the ends, and disabled items are skipped. Items are real buttons, or links when given an href, named by their label; icons and the tooltip pill are aria-hidden. The active item carries aria-current=\"page\" rather than aria-pressed: the dock marks where you are, like a nav bar, and only one item is ever current, so it is not a set of toggles. Magnification and the tooltip follow keyboard focus as well as hover, so keyboard users get the same feedback. Under reduced motion items still magnify, without animating."
|
|
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/magnify-dock/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"magnify-dock\",\n title: \"Magnify Dock\",\n description:\n \"A macOS-style dock whose icons grow, lift and show a label as the pointer or keyboard focus passes over them.\",\n category: \"navigation\",\n status: \"beta\",\n dependencies: [\"class-variance-authority\", \"radix-ui\"],\n registryDependencies: [],\n files: [\"magnify-dock.tsx\"],\n a11y:\n 'A toolbar (role=\"toolbar\", named \"Dock\" by default, aria-orientation horizontal) with one roving tab stop: ' +\n \"ArrowLeft/ArrowRight move between items (mirrored in right-to-left layouts, wrapping), Home/End jump to the \" +\n \"ends, and disabled items are skipped. Items are real buttons, or links when given an href, named by their \" +\n 'label; icons and the tooltip pill are aria-hidden. The active item carries aria-current=\"page\" rather than ' +\n \"aria-pressed: the dock marks where you are, like a nav bar, and only one item is ever current, so it is not a \" +\n \"set of toggles. Magnification and the tooltip follow keyboard focus as well as hover, so keyboard users get \" +\n \"the same feedback. Under reduced motion items still magnify, without animating.\",\n});\n"],"mappings":";;AAEA,MAAa,OAAO,WAAW;CAC7B,MAAM;CACN,OAAO;CACP,aACE;CACF,UAAU;CACV,QAAQ;CACR,cAAc,CAAC,4BAA4B,UAAU;CACrD,sBAAsB,CAAC;CACvB,OAAO,CAAC,kBAAkB;CAC1B,MACE;AAOJ,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { VariantProps } from "class-variance-authority";
|
|
2
|
+
import { ComponentPropsWithRef, ReactNode } from "react";
|
|
3
|
+
//#region src/components/marquee/marquee.d.ts
|
|
4
|
+
/** The root. The track and its halves follow the same orientation. */
|
|
5
|
+
declare const marqueeVariants: (props?: ({
|
|
6
|
+
orientation?: "horizontal" | "vertical" | null | undefined;
|
|
7
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
8
|
+
interface MarqueeProps extends ComponentPropsWithRef<"div">, VariantProps<typeof marqueeVariants> {
|
|
9
|
+
children?: ReactNode;
|
|
10
|
+
/** Space between items, and between the last item and the first again. Numbers are px. */
|
|
11
|
+
gap?: number | string;
|
|
12
|
+
/** Pixels per second. Converted to a duration from the measured length of the content. */
|
|
13
|
+
speed?: number;
|
|
14
|
+
/** Runs toward the inline end (or downward) instead of toward the start (or upward). */
|
|
15
|
+
reverse?: boolean;
|
|
16
|
+
/** Pauses while the pointer is over the marquee or focus is inside it. */
|
|
17
|
+
pauseOnHover?: boolean;
|
|
18
|
+
/** Pauses it outright — wire this to a visible pause control. */
|
|
19
|
+
paused?: boolean;
|
|
20
|
+
/**
|
|
21
|
+
* How many times to repeat the content inside each half, for content shorter
|
|
22
|
+
* than the viewport. Repeats are hidden from assistive technology.
|
|
23
|
+
*/
|
|
24
|
+
repeat?: number;
|
|
25
|
+
}
|
|
26
|
+
/** Scrolls its children in a seamless, endless loop. */
|
|
27
|
+
declare function Marquee({ className, children, orientation, gap, speed, reverse, pauseOnHover, paused, repeat, style, ...props }: MarqueeProps): import("react").JSX.Element;
|
|
28
|
+
//#endregion
|
|
29
|
+
export { Marquee, MarqueeProps, marqueeVariants };
|
|
30
|
+
//# sourceMappingURL=marquee.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"marquee.d.ts","names":[],"sources":["../../../src/components/marquee/marquee.tsx"],"mappings":";;;;cAqEM,kBAAe;;6CAUnB;UAKe,qBACP,8BAA8B,oBAAoB;EAC1D,WAAW;;EAEX;;EAEA;;EAEA;;EAEA;;EAEA;;;;;EAKA;;;iBAIc,UACd,WACA,UACA,aACA,KACA,OACA,SACA,cACA,QACA,QACA,UACG,SACF,+BAAY,IAAA"}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import "../../lib/styles.js";
|
|
3
|
+
import { cn } from "../../lib/utils.js";
|
|
4
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
5
|
+
import { cva } from "class-variance-authority";
|
|
6
|
+
import { useEffect, useRef, useState, useSyncExternalStore } from "react";
|
|
7
|
+
//#region src/components/marquee/marquee.tsx
|
|
8
|
+
const PREFIX = "dowel-marquee";
|
|
9
|
+
const STYLES = `
|
|
10
|
+
@keyframes ${PREFIX}-x{from{transform:translate3d(0,0,0)}to{transform:translate3d(calc(-50% * var(--${PREFIX}-sign,1)),0,0)}}
|
|
11
|
+
@keyframes ${PREFIX}-y{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,-50%,0)}}
|
|
12
|
+
[data-slot=marquee]:dir(rtl){--${PREFIX}-sign:-1}
|
|
13
|
+
[data-slot=marquee]>[data-slot=marquee-track]{animation:var(--${PREFIX}-name) var(--${PREFIX}-duration) linear infinite}
|
|
14
|
+
[data-slot=marquee][data-reverse]>[data-slot=marquee-track]{animation-direction:reverse}
|
|
15
|
+
[data-slot=marquee][data-paused]>[data-slot=marquee-track],[data-slot=marquee][data-pause-on-hover]:hover>[data-slot=marquee-track],[data-slot=marquee][data-pause-on-hover]:focus-within>[data-slot=marquee-track]{animation-play-state:paused}
|
|
16
|
+
@media (prefers-reduced-motion: reduce){[data-slot=marquee]>[data-slot=marquee-track]{animation:none}}
|
|
17
|
+
`;
|
|
18
|
+
const REDUCED_MOTION = "(prefers-reduced-motion: reduce)";
|
|
19
|
+
function prefersReducedMotion() {
|
|
20
|
+
return typeof window !== "undefined" && typeof window.matchMedia === "function" && window.matchMedia(REDUCED_MOTION).matches;
|
|
21
|
+
}
|
|
22
|
+
function subscribeReducedMotion(onChange) {
|
|
23
|
+
if (typeof window === "undefined" || typeof window.matchMedia !== "function") return () => {};
|
|
24
|
+
const query = window.matchMedia(REDUCED_MOTION);
|
|
25
|
+
query.addEventListener("change", onChange);
|
|
26
|
+
return () => {
|
|
27
|
+
query.removeEventListener("change", onChange);
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
/** The root. The track and its halves follow the same orientation. */
|
|
31
|
+
const marqueeVariants = cva("relative flex", {
|
|
32
|
+
variants: { orientation: {
|
|
33
|
+
horizontal: "flex-row overflow-x-hidden",
|
|
34
|
+
vertical: "flex-col overflow-y-hidden"
|
|
35
|
+
} },
|
|
36
|
+
defaultVariants: { orientation: "horizontal" }
|
|
37
|
+
});
|
|
38
|
+
/** Seconds a loop takes when nothing has been measured yet (server, first paint). */
|
|
39
|
+
const FALLBACK_SECONDS = 20;
|
|
40
|
+
/** Scrolls its children in a seamless, endless loop. */
|
|
41
|
+
function Marquee({ className, children, orientation = "horizontal", gap = 16, speed = 50, reverse = false, pauseOnHover = true, paused = false, repeat = 1, style, ...props }) {
|
|
42
|
+
const vertical = orientation === "vertical";
|
|
43
|
+
const reduced = useSyncExternalStore(subscribeReducedMotion, prefersReducedMotion, () => false);
|
|
44
|
+
const firstHalf = useRef(null);
|
|
45
|
+
const [length, setLength] = useState(0);
|
|
46
|
+
useEffect(() => {
|
|
47
|
+
const element = firstHalf.current;
|
|
48
|
+
if (!element || reduced) return;
|
|
49
|
+
const measure = () => {
|
|
50
|
+
setLength(vertical ? element.offsetHeight : element.offsetWidth);
|
|
51
|
+
};
|
|
52
|
+
measure();
|
|
53
|
+
const observer = new ResizeObserver(measure);
|
|
54
|
+
observer.observe(element);
|
|
55
|
+
return () => {
|
|
56
|
+
observer.disconnect();
|
|
57
|
+
};
|
|
58
|
+
}, [vertical, reduced]);
|
|
59
|
+
const seconds = length > 0 && speed > 0 ? length / speed : FALLBACK_SECONDS;
|
|
60
|
+
const gapValue = typeof gap === "number" ? `${String(gap)}px` : gap;
|
|
61
|
+
const copies = Math.max(1, Math.floor(repeat));
|
|
62
|
+
const rootStyle = {
|
|
63
|
+
[`--${PREFIX}-name`]: `${PREFIX}-${vertical ? "y" : "x"}`,
|
|
64
|
+
[`--${PREFIX}-duration`]: `calc(${String(Math.round(seconds * 1e3))}ms * var(--motion-scale, 1))`,
|
|
65
|
+
...style
|
|
66
|
+
};
|
|
67
|
+
const half = (index) => /* @__PURE__ */ jsx("div", {
|
|
68
|
+
ref: index === 0 ? firstHalf : void 0,
|
|
69
|
+
"data-slot": "marquee-group",
|
|
70
|
+
"aria-hidden": index > 0 ? true : void 0,
|
|
71
|
+
inert: index > 0 ? true : void 0,
|
|
72
|
+
className: cn("flex shrink-0", vertical ? "flex-col" : "flex-row"),
|
|
73
|
+
style: vertical ? {
|
|
74
|
+
gap: gapValue,
|
|
75
|
+
paddingBlockEnd: gapValue
|
|
76
|
+
} : {
|
|
77
|
+
gap: gapValue,
|
|
78
|
+
paddingInlineEnd: gapValue
|
|
79
|
+
},
|
|
80
|
+
children: Array.from({ length: copies }, (_, copy) => index === 0 && copy === 0 ? /* @__PURE__ */ jsx("div", {
|
|
81
|
+
className: "contents",
|
|
82
|
+
children
|
|
83
|
+
}, copy) : /* @__PURE__ */ jsx("div", {
|
|
84
|
+
className: "contents",
|
|
85
|
+
"aria-hidden": "true",
|
|
86
|
+
inert: true,
|
|
87
|
+
children
|
|
88
|
+
}, copy))
|
|
89
|
+
}, index);
|
|
90
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
91
|
+
"data-slot": "marquee",
|
|
92
|
+
"data-orientation": orientation,
|
|
93
|
+
"data-reverse": reverse || void 0,
|
|
94
|
+
"data-paused": paused || void 0,
|
|
95
|
+
"data-pause-on-hover": pauseOnHover || void 0,
|
|
96
|
+
"data-reduced-motion": reduced || void 0,
|
|
97
|
+
role: reduced ? "region" : void 0,
|
|
98
|
+
"aria-label": reduced && !props["aria-labelledby"] ? "Scrolling content" : void 0,
|
|
99
|
+
tabIndex: reduced ? 0 : void 0,
|
|
100
|
+
className: cn(marqueeVariants({ orientation }), reduced && ["outline-none focus-visible:ring-2 focus-visible:ring-ring/55 focus-visible:ring-offset-2 focus-visible:ring-offset-background", vertical ? "overflow-y-auto" : "overflow-x-auto"], className),
|
|
101
|
+
style: rootStyle,
|
|
102
|
+
...props,
|
|
103
|
+
children: [/* @__PURE__ */ jsx("style", {
|
|
104
|
+
href: PREFIX,
|
|
105
|
+
precedence: "dowel",
|
|
106
|
+
children: STYLES
|
|
107
|
+
}), /* @__PURE__ */ jsx("div", {
|
|
108
|
+
"data-slot": "marquee-track",
|
|
109
|
+
className: cn("flex shrink-0", vertical ? "h-max flex-col" : "w-max flex-row"),
|
|
110
|
+
children: reduced ? half(0) : [half(0), half(1)]
|
|
111
|
+
})]
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
//#endregion
|
|
115
|
+
export { Marquee, marqueeVariants };
|
|
116
|
+
|
|
117
|
+
//# sourceMappingURL=marquee.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"marquee.js","names":[],"sources":["../../../src/components/marquee/marquee.tsx"],"sourcesContent":["\"use client\";\n\n// Ported from SmoothUI Infinite Slider (MIT, © 2024 Eduardo Calvo). See THIRD_PARTY_NOTICES.md.\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport {\n useEffect,\n useRef,\n useState,\n useSyncExternalStore,\n type ComponentPropsWithRef,\n type CSSProperties,\n type ReactNode,\n} from \"react\";\n\nimport { focusRing } from \"@/lib/styles\";\nimport { cn } from \"@/lib/utils\";\n\n/*\n * The source drives a motion value from JavaScript and re-measures on every\n * resize. A marquee is a constant-velocity loop, which is exactly what a CSS\n * keyframe is: the track holds two identical halves and slides by -50%, so\n * the second half lands where the first started and the loop has no seam.\n *\n * JavaScript only measures one half, to turn `speed` (px/s) into a duration.\n * Everything else — pausing on hover and focus, reversing, mirroring for\n * right-to-left text, stopping under reduced motion — is CSS, so it holds even\n * before hydration.\n */\n\nconst PREFIX = \"dowel-marquee\";\n\n/*\n * Unlayered, so it outranks utilities: it is limited to the keyframes and to\n * data-slot selectors a consumer has no reason to override. The animation is\n * never set inline, because an inline animation would beat the reduced-motion\n * rule below.\n */\nconst STYLES = `\n@keyframes ${PREFIX}-x{from{transform:translate3d(0,0,0)}to{transform:translate3d(calc(-50% * var(--${PREFIX}-sign,1)),0,0)}}\n@keyframes ${PREFIX}-y{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,-50%,0)}}\n[data-slot=marquee]:dir(rtl){--${PREFIX}-sign:-1}\n[data-slot=marquee]>[data-slot=marquee-track]{animation:var(--${PREFIX}-name) var(--${PREFIX}-duration) linear infinite}\n[data-slot=marquee][data-reverse]>[data-slot=marquee-track]{animation-direction:reverse}\n[data-slot=marquee][data-paused]>[data-slot=marquee-track],[data-slot=marquee][data-pause-on-hover]:hover>[data-slot=marquee-track],[data-slot=marquee][data-pause-on-hover]:focus-within>[data-slot=marquee-track]{animation-play-state:paused}\n@media (prefers-reduced-motion: reduce){[data-slot=marquee]>[data-slot=marquee-track]{animation:none}}\n`;\n\nconst REDUCED_MOTION = \"(prefers-reduced-motion: reduce)\";\n\nfunction prefersReducedMotion(): boolean {\n return (\n typeof window !== \"undefined\" &&\n typeof window.matchMedia === \"function\" &&\n window.matchMedia(REDUCED_MOTION).matches\n );\n}\n\nfunction subscribeReducedMotion(onChange: () => void): () => void {\n if (typeof window === \"undefined\" || typeof window.matchMedia !== \"function\") {\n return () => {};\n }\n const query = window.matchMedia(REDUCED_MOTION);\n query.addEventListener(\"change\", onChange);\n return () => {\n query.removeEventListener(\"change\", onChange);\n };\n}\n\n/** The root. The track and its halves follow the same orientation. */\nconst marqueeVariants = cva(\"relative flex\", {\n variants: {\n orientation: {\n horizontal: \"flex-row overflow-x-hidden\",\n vertical: \"flex-col overflow-y-hidden\",\n },\n },\n defaultVariants: {\n orientation: \"horizontal\",\n },\n});\n\n/** Seconds a loop takes when nothing has been measured yet (server, first paint). */\nconst FALLBACK_SECONDS = 20;\n\nexport interface MarqueeProps\n extends ComponentPropsWithRef<\"div\">, VariantProps<typeof marqueeVariants> {\n children?: ReactNode;\n /** Space between items, and between the last item and the first again. Numbers are px. */\n gap?: number | string;\n /** Pixels per second. Converted to a duration from the measured length of the content. */\n speed?: number;\n /** Runs toward the inline end (or downward) instead of toward the start (or upward). */\n reverse?: boolean;\n /** Pauses while the pointer is over the marquee or focus is inside it. */\n pauseOnHover?: boolean;\n /** Pauses it outright — wire this to a visible pause control. */\n paused?: boolean;\n /**\n * How many times to repeat the content inside each half, for content shorter\n * than the viewport. Repeats are hidden from assistive technology.\n */\n repeat?: number;\n}\n\n/** Scrolls its children in a seamless, endless loop. */\nexport function Marquee({\n className,\n children,\n orientation = \"horizontal\",\n gap = 16,\n speed = 50,\n reverse = false,\n pauseOnHover = true,\n paused = false,\n repeat = 1,\n style,\n ...props\n}: MarqueeProps) {\n const vertical = orientation === \"vertical\";\n const reduced = useSyncExternalStore(\n subscribeReducedMotion,\n prefersReducedMotion,\n () => false,\n );\n const firstHalf = useRef<HTMLDivElement>(null);\n const [length, setLength] = useState(0);\n\n useEffect(() => {\n const element = firstHalf.current;\n if (!element || reduced) return;\n const measure = () => {\n setLength(vertical ? element.offsetHeight : element.offsetWidth);\n };\n measure();\n const observer = new ResizeObserver(measure);\n observer.observe(element);\n return () => {\n observer.disconnect();\n };\n }, [vertical, reduced]);\n\n const seconds = length > 0 && speed > 0 ? length / speed : FALLBACK_SECONDS;\n const gapValue = typeof gap === \"number\" ? `${String(gap)}px` : gap;\n const copies = Math.max(1, Math.floor(repeat));\n\n const rootStyle: CSSProperties & Record<`--${string}`, string> = {\n [`--${PREFIX}-name`]: `${PREFIX}-${vertical ? \"y\" : \"x\"}`,\n // Through the motion scale like every other duration in the system.\n [`--${PREFIX}-duration`]: `calc(${String(Math.round(seconds * 1000))}ms * var(--motion-scale, 1))`,\n ...style,\n };\n\n const half = (index: number) => (\n <div\n key={index}\n ref={index === 0 ? firstHalf : undefined}\n data-slot=\"marquee-group\"\n aria-hidden={index > 0 ? true : undefined}\n inert={index > 0 ? true : undefined}\n className={cn(\"flex shrink-0\", vertical ? \"flex-col\" : \"flex-row\")}\n style={\n vertical\n ? { gap: gapValue, paddingBlockEnd: gapValue }\n : { gap: gapValue, paddingInlineEnd: gapValue }\n }\n >\n {Array.from({ length: copies }, (_, copy) =>\n index === 0 && copy === 0 ? (\n <div key={copy} className=\"contents\">\n {children}\n </div>\n ) : (\n <div key={copy} className=\"contents\" aria-hidden=\"true\" inert>\n {children}\n </div>\n ),\n )}\n </div>\n );\n\n return (\n <div\n data-slot=\"marquee\"\n data-orientation={orientation}\n data-reverse={reverse || undefined}\n data-paused={paused || undefined}\n data-pause-on-hover={pauseOnHover || undefined}\n data-reduced-motion={reduced || undefined}\n // Under reduced motion it stops and becomes an ordinary scroller: a named,\n // focusable region, so a keyboard user can reach it to scroll.\n role={reduced ? \"region\" : undefined}\n aria-label={reduced && !props[\"aria-labelledby\"] ? \"Scrolling content\" : undefined}\n tabIndex={reduced ? 0 : undefined}\n className={cn(\n marqueeVariants({ orientation }),\n reduced && [focusRing, vertical ? \"overflow-y-auto\" : \"overflow-x-auto\"],\n className,\n )}\n style={rootStyle}\n {...props}\n >\n <style href={PREFIX} precedence=\"dowel\">\n {STYLES}\n </style>\n <div\n data-slot=\"marquee-track\"\n className={cn(\"flex shrink-0\", vertical ? \"h-max flex-col\" : \"w-max flex-row\")}\n >\n {reduced ? half(0) : [half(0), half(1)]}\n </div>\n </div>\n );\n}\n\nexport { marqueeVariants };\n"],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { defineMeta } from "../../registry/schema.js";
|
|
2
|
+
//#region src/components/marquee/meta.ts
|
|
3
|
+
const meta = defineMeta({
|
|
4
|
+
name: "marquee",
|
|
5
|
+
title: "Marquee",
|
|
6
|
+
description: "Scrolls its children in a seamless, endless loop — horizontal or vertical, at a set speed, pausing on hover and focus.",
|
|
7
|
+
category: "display",
|
|
8
|
+
status: "beta",
|
|
9
|
+
dependencies: ["class-variance-authority"],
|
|
10
|
+
registryDependencies: [],
|
|
11
|
+
files: ["marquee.tsx"],
|
|
12
|
+
a11y: "The content is rendered once for assistive technology: the copy that closes the loop, and any `repeat` copies, are aria-hidden and inert, so nothing is announced or focused twice. It pauses while hovered or while focus is inside it, and `paused` stops it outright for a visible pause control (WCAG 2.2.2). Under prefers-reduced-motion it stops and becomes an ordinary, keyboard-focusable scroller. The loop runs toward the inline start, so it mirrors under dir=\"rtl\"."
|
|
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/marquee/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"marquee\",\n title: \"Marquee\",\n description:\n \"Scrolls its children in a seamless, endless loop — horizontal or vertical, at a set speed, pausing on hover and focus.\",\n category: \"display\",\n status: \"beta\",\n dependencies: [\"class-variance-authority\"],\n registryDependencies: [],\n files: [\"marquee.tsx\"],\n a11y:\n \"The content is rendered once for assistive technology: the copy that closes the loop, and any \" +\n \"`repeat` copies, are aria-hidden and inert, so nothing is announced or focused twice. It pauses \" +\n \"while hovered or while focus is inside it, and `paused` stops it outright for a visible pause \" +\n \"control (WCAG 2.2.2). Under prefers-reduced-motion it stops and becomes an ordinary, \" +\n 'keyboard-focusable scroller. The loop runs toward the inline start, so it mirrors under dir=\"rtl\".',\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,aAAa;CACrB,MACE;AAKJ,CAAC"}
|
|
@@ -78,7 +78,7 @@ function Meter({ className, segments, max, label, warnAt = .9, threshold, format
|
|
|
78
78
|
return /* @__PURE__ */ jsx("div", {
|
|
79
79
|
"data-slot": "meter-segment",
|
|
80
80
|
"data-tone": segment.tone ?? "primary",
|
|
81
|
-
className: cn("h-full first:rounded-
|
|
81
|
+
className: cn("h-full first:rounded-s-full last:rounded-e-full", "transition-[width] duration-[var(--duration-slow)] ease-[var(--ease-out-quint)]", TONES[segment.tone ?? "primary"]),
|
|
82
82
|
style: { width: `${String(value / denominator * 100)}%` }
|
|
83
83
|
}, segment.id);
|
|
84
84
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meter.js","names":[],"sources":["../../../src/components/meter/meter.tsx"],"sourcesContent":["\"use client\";\n\nimport { createContext, useContext, useMemo, type ComponentPropsWithRef } from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\n/**\n * A measurement against a known capacity: storage against a quota, seats\n * against a plan, spend against a budget.\n *\n * Not a Progress. Progress reports how far along a task is and is expected to\n * reach the end; a meter reports a level that has no reason to move at all, and\n * where being near the top is the thing worth noticing. They carry different\n * ARIA roles for exactly that reason, and screen readers phrase them\n * differently.\n *\n * The bar is a single `role=\"meter\"` and the segments inside it are decoration.\n * Making each segment its own widget would put five unlabelled meters in the\n * tab order to describe one quantity; the legend carries the per-segment detail\n * as text instead, where it can actually be read.\n */\n\nconst TONES = {\n primary: \"bg-primary\",\n info: \"bg-info\",\n success: \"bg-success\",\n warning: \"bg-warning\",\n destructive: \"bg-destructive\",\n neutral: \"bg-border-strong\",\n} as const;\n\nexport type MeterTone = keyof typeof TONES;\n\nexport interface MeterSegment {\n /** Stable identity, so a re-order does not re-animate every segment. */\n id: string;\n /** Named in the legend and in the accessible summary. */\n label: string;\n value: number;\n tone?: MeterTone;\n}\n\ninterface MeterContextValue {\n segments: MeterSegment[];\n total: number;\n max: number;\n format: (value: number) => string;\n over: boolean;\n}\n\nconst MeterContext = createContext<MeterContextValue | null>(null);\n\nfunction useMeterContext(component: string): MeterContextValue {\n const context = useContext(MeterContext);\n if (!context) {\n throw new Error(`${component} must be rendered inside <Meter>.`);\n }\n return context;\n}\n\nfunction defaultFormat(value: number): string {\n return new Intl.NumberFormat().format(value);\n}\n\nexport interface MeterProps extends Omit<ComponentPropsWithRef<\"div\">, \"children\"> {\n /** Parts making up the measurement. One segment is the ordinary case. */\n segments: MeterSegment[];\n /** The capacity being measured against. */\n max: number;\n /** Names the meter. Required — an unnamed measurement is unreadable. */\n label: string;\n /**\n * Fraction of `max` past which the meter reports strain, between 0 and 1.\n * Presentation only: it never changes the reported value.\n */\n warnAt?: number;\n /** Optional marker on the track, for a soft limit or an alert threshold. */\n threshold?: { value: number; label: string };\n /** Formats every number that reaches the reader. */\n format?: (value: number) => string;\n /** Shown after the bar. Compose `MeterLegend` here, or your own summary. */\n children?: React.ReactNode;\n}\n\nexport function Meter({\n className,\n segments,\n max,\n label,\n warnAt = 0.9,\n threshold,\n format = defaultFormat,\n children,\n ...props\n}: MeterProps) {\n const total = segments.reduce((sum, segment) => sum + Math.max(0, segment.value), 0);\n const over = total > max;\n const strained = max > 0 && total / max >= warnAt;\n\n // Widths are a share of capacity, not of the total, so a half-full meter\n // renders half full. Dividing by the total instead would make every meter\n // look completely full, which is the usual bug in hand-rolled versions.\n const denominator = over ? total : max;\n\n const context = useMemo<MeterContextValue>(\n () => ({ segments, total, max, format, over }),\n [segments, total, max, format, over],\n );\n\n return (\n <MeterContext.Provider value={context}>\n <div\n data-slot=\"meter\"\n data-over={over || undefined}\n data-strained={strained || undefined}\n className={cn(\"flex w-full flex-col gap-1.5\", className)}\n {...props}\n >\n <div\n role=\"meter\"\n aria-label={label}\n aria-valuenow={total}\n aria-valuemin={0}\n aria-valuemax={max}\n // Without this a screen reader announces a bare number with no unit\n // and no capacity — \"4\" tells the reader nothing about 4 of what.\n aria-valuetext={`${format(total)} of ${format(max)}${over ? \", over capacity\" : \"\"}`}\n data-slot=\"meter-track\"\n className=\"relative h-2 w-full overflow-hidden rounded-full bg-muted\"\n >\n <div className=\"flex h-full w-full\">\n {segments.map((segment) => {\n const value = Math.max(0, segment.value);\n // A zero segment renders nothing at all. A one-pixel sliver reads\n // as a small amount rather than as none.\n if (value === 0 || denominator === 0) return null;\n\n return (\n <div\n key={segment.id}\n data-slot=\"meter-segment\"\n data-tone={segment.tone ?? \"primary\"}\n className={cn(\n \"h-full first:rounded-
|
|
1
|
+
{"version":3,"file":"meter.js","names":[],"sources":["../../../src/components/meter/meter.tsx"],"sourcesContent":["\"use client\";\n\nimport { createContext, useContext, useMemo, type ComponentPropsWithRef } from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\n/**\n * A measurement against a known capacity: storage against a quota, seats\n * against a plan, spend against a budget.\n *\n * Not a Progress. Progress reports how far along a task is and is expected to\n * reach the end; a meter reports a level that has no reason to move at all, and\n * where being near the top is the thing worth noticing. They carry different\n * ARIA roles for exactly that reason, and screen readers phrase them\n * differently.\n *\n * The bar is a single `role=\"meter\"` and the segments inside it are decoration.\n * Making each segment its own widget would put five unlabelled meters in the\n * tab order to describe one quantity; the legend carries the per-segment detail\n * as text instead, where it can actually be read.\n */\n\nconst TONES = {\n primary: \"bg-primary\",\n info: \"bg-info\",\n success: \"bg-success\",\n warning: \"bg-warning\",\n destructive: \"bg-destructive\",\n neutral: \"bg-border-strong\",\n} as const;\n\nexport type MeterTone = keyof typeof TONES;\n\nexport interface MeterSegment {\n /** Stable identity, so a re-order does not re-animate every segment. */\n id: string;\n /** Named in the legend and in the accessible summary. */\n label: string;\n value: number;\n tone?: MeterTone;\n}\n\ninterface MeterContextValue {\n segments: MeterSegment[];\n total: number;\n max: number;\n format: (value: number) => string;\n over: boolean;\n}\n\nconst MeterContext = createContext<MeterContextValue | null>(null);\n\nfunction useMeterContext(component: string): MeterContextValue {\n const context = useContext(MeterContext);\n if (!context) {\n throw new Error(`${component} must be rendered inside <Meter>.`);\n }\n return context;\n}\n\nfunction defaultFormat(value: number): string {\n return new Intl.NumberFormat().format(value);\n}\n\nexport interface MeterProps extends Omit<ComponentPropsWithRef<\"div\">, \"children\"> {\n /** Parts making up the measurement. One segment is the ordinary case. */\n segments: MeterSegment[];\n /** The capacity being measured against. */\n max: number;\n /** Names the meter. Required — an unnamed measurement is unreadable. */\n label: string;\n /**\n * Fraction of `max` past which the meter reports strain, between 0 and 1.\n * Presentation only: it never changes the reported value.\n */\n warnAt?: number;\n /** Optional marker on the track, for a soft limit or an alert threshold. */\n threshold?: { value: number; label: string };\n /** Formats every number that reaches the reader. */\n format?: (value: number) => string;\n /** Shown after the bar. Compose `MeterLegend` here, or your own summary. */\n children?: React.ReactNode;\n}\n\nexport function Meter({\n className,\n segments,\n max,\n label,\n warnAt = 0.9,\n threshold,\n format = defaultFormat,\n children,\n ...props\n}: MeterProps) {\n const total = segments.reduce((sum, segment) => sum + Math.max(0, segment.value), 0);\n const over = total > max;\n const strained = max > 0 && total / max >= warnAt;\n\n // Widths are a share of capacity, not of the total, so a half-full meter\n // renders half full. Dividing by the total instead would make every meter\n // look completely full, which is the usual bug in hand-rolled versions.\n const denominator = over ? total : max;\n\n const context = useMemo<MeterContextValue>(\n () => ({ segments, total, max, format, over }),\n [segments, total, max, format, over],\n );\n\n return (\n <MeterContext.Provider value={context}>\n <div\n data-slot=\"meter\"\n data-over={over || undefined}\n data-strained={strained || undefined}\n className={cn(\"flex w-full flex-col gap-1.5\", className)}\n {...props}\n >\n <div\n role=\"meter\"\n aria-label={label}\n aria-valuenow={total}\n aria-valuemin={0}\n aria-valuemax={max}\n // Without this a screen reader announces a bare number with no unit\n // and no capacity — \"4\" tells the reader nothing about 4 of what.\n aria-valuetext={`${format(total)} of ${format(max)}${over ? \", over capacity\" : \"\"}`}\n data-slot=\"meter-track\"\n className=\"relative h-2 w-full overflow-hidden rounded-full bg-muted\"\n >\n <div className=\"flex h-full w-full\">\n {segments.map((segment) => {\n const value = Math.max(0, segment.value);\n // A zero segment renders nothing at all. A one-pixel sliver reads\n // as a small amount rather than as none.\n if (value === 0 || denominator === 0) return null;\n\n return (\n <div\n key={segment.id}\n data-slot=\"meter-segment\"\n data-tone={segment.tone ?? \"primary\"}\n className={cn(\n \"h-full first:rounded-s-full last:rounded-e-full\",\n \"transition-[width] duration-[var(--duration-slow)] ease-[var(--ease-out-quint)]\",\n TONES[segment.tone ?? \"primary\"],\n )}\n style={{ width: `${String((value / denominator) * 100)}%` }}\n />\n );\n })}\n </div>\n\n {threshold && max > 0 && threshold.value > 0 && threshold.value < max ? (\n <div\n data-slot=\"meter-threshold\"\n // The marker repeats what the legend states in words, so it is\n // decoration. Announcing it would interrupt the value.\n aria-hidden=\"true\"\n className=\"absolute inset-y-0 w-px bg-foreground/45\"\n style={{ left: `${String((threshold.value / denominator) * 100)}%` }}\n />\n ) : null}\n </div>\n\n {children}\n </div>\n </MeterContext.Provider>\n );\n}\n\n/**\n * The per-segment breakdown, as text.\n *\n * This is where the detail lives. The bar communicates one number; anyone who\n * needs to know that images account for most of it reads it here.\n */\nexport function MeterLegend({ className, ...props }: ComponentPropsWithRef<\"ul\">) {\n const { segments, format } = useMeterContext(\"MeterLegend\");\n\n return (\n <ul\n data-slot=\"meter-legend\"\n className={cn(\"flex flex-wrap gap-x-4 gap-y-1 text-xs\", className)}\n {...props}\n >\n {segments.map((segment) => (\n <li key={segment.id} className=\"flex items-center gap-1.5\">\n <span\n aria-hidden=\"true\"\n className={cn(\"size-2 shrink-0 rounded-full\", TONES[segment.tone ?? \"primary\"])}\n />\n <span className=\"text-muted-foreground\">{segment.label}</span>\n <span className=\"tabular-nums\">{format(segment.value)}</span>\n </li>\n ))}\n </ul>\n );\n}\n\n/** The headline \"4.2 GB of 10 GB\" line, with an over-capacity state. */\nexport function MeterValue({ className, ...props }: ComponentPropsWithRef<\"p\">) {\n const { total, max, format, over } = useMeterContext(\"MeterValue\");\n\n return (\n <p\n data-slot=\"meter-value\"\n className={cn(\n \"text-xs tabular-nums\",\n over ? \"text-destructive\" : \"text-muted-foreground\",\n className,\n )}\n {...props}\n >\n {format(total)} of {format(max)}\n {over ? \" — over capacity\" : null}\n </p>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAsBA,MAAM,QAAQ;CACZ,SAAS;CACT,MAAM;CACN,SAAS;CACT,SAAS;CACT,aAAa;CACb,SAAS;AACX;AAqBA,MAAM,eAAe,cAAwC,IAAI;AAEjE,SAAS,gBAAgB,WAAsC;CAC7D,MAAM,UAAU,WAAW,YAAY;CACvC,IAAI,CAAC,SACH,MAAM,IAAI,MAAM,GAAG,UAAU,kCAAkC;CAEjE,OAAO;AACT;AAEA,SAAS,cAAc,OAAuB;CAC5C,OAAO,IAAI,KAAK,aAAa,CAAC,CAAC,OAAO,KAAK;AAC7C;AAsBA,SAAgB,MAAM,EACpB,WACA,UACA,KACA,OACA,SAAS,IACT,WACA,SAAS,eACT,UACA,GAAG,SACU;CACb,MAAM,QAAQ,SAAS,QAAQ,KAAK,YAAY,MAAM,KAAK,IAAI,GAAG,QAAQ,KAAK,GAAG,CAAC;CACnF,MAAM,OAAO,QAAQ;CACrB,MAAM,WAAW,MAAM,KAAK,QAAQ,OAAO;CAK3C,MAAM,cAAc,OAAO,QAAQ;CAEnC,MAAM,UAAU,eACP;EAAE;EAAU;EAAO;EAAK;EAAQ;CAAK,IAC5C;EAAC;EAAU;EAAO;EAAK;EAAQ;CAAI,CACrC;CAEA,OACE,oBAAC,aAAa,UAAd;EAAuB,OAAO;EAC5B,UAAA,qBAAC,OAAD;GACE,aAAU;GACV,aAAW,QAAQ,KAAA;GACnB,iBAAe,YAAY,KAAA;GAC3B,WAAW,GAAG,gCAAgC,SAAS;GACvD,GAAI;GALN,UAAA,CAOE,qBAAC,OAAD;IACE,MAAK;IACL,cAAY;IACZ,iBAAe;IACf,iBAAe;IACf,iBAAe;IAGf,kBAAgB,GAAG,OAAO,KAAK,EAAE,MAAM,OAAO,GAAG,IAAI,OAAO,oBAAoB;IAChF,aAAU;IACV,WAAU;IAVZ,UAAA,CAYE,oBAAC,OAAD;KAAK,WAAU;KACZ,UAAA,SAAS,KAAK,YAAY;MACzB,MAAM,QAAQ,KAAK,IAAI,GAAG,QAAQ,KAAK;MAGvC,IAAI,UAAU,KAAK,gBAAgB,GAAG,OAAO;MAE7C,OACE,oBAAC,OAAD;OAEE,aAAU;OACV,aAAW,QAAQ,QAAQ;OAC3B,WAAW,GACT,mDACA,mFACA,MAAM,QAAQ,QAAQ,UACxB;OACA,OAAO,EAAE,OAAO,GAAG,OAAQ,QAAQ,cAAe,GAAG,EAAE,GAAG;MAC3D,GATM,QAAQ,EASd;KAEL,CAAC;IACE,CAAA,GAEJ,aAAa,MAAM,KAAK,UAAU,QAAQ,KAAK,UAAU,QAAQ,MAChE,oBAAC,OAAD;KACE,aAAU;KAGV,eAAY;KACZ,WAAU;KACV,OAAO,EAAE,MAAM,GAAG,OAAQ,UAAU,QAAQ,cAAe,GAAG,EAAE,GAAG;IACpE,CAAA,IACC,IACD;GAEJ,CAAA,GAAA,QACE;;CACgB,CAAA;AAE3B;;;;;;;AAQA,SAAgB,YAAY,EAAE,WAAW,GAAG,SAAsC;CAChF,MAAM,EAAE,UAAU,WAAW,gBAAgB,aAAa;CAE1D,OACE,oBAAC,MAAD;EACE,aAAU;EACV,WAAW,GAAG,0CAA0C,SAAS;EACjE,GAAI;EAEH,UAAA,SAAS,KAAK,YACb,qBAAC,MAAD;GAAqB,WAAU;GAA/B,UAAA;IACE,oBAAC,QAAD;KACE,eAAY;KACZ,WAAW,GAAG,gCAAgC,MAAM,QAAQ,QAAQ,UAAU;IAC/E,CAAA;IACD,oBAAC,QAAD;KAAM,WAAU;KAAyB,UAAA,QAAQ;IAAY,CAAA;IAC7D,oBAAC,QAAD;KAAM,WAAU;KAAgB,UAAA,OAAO,QAAQ,KAAK;IAAQ,CAAA;GAC1D;EAPK,GAAA,QAAQ,EAOb,CACL;CACC,CAAA;AAER;;AAGA,SAAgB,WAAW,EAAE,WAAW,GAAG,SAAqC;CAC9E,MAAM,EAAE,OAAO,KAAK,QAAQ,SAAS,gBAAgB,YAAY;CAEjE,OACE,qBAAC,KAAD;EACE,aAAU;EACV,WAAW,GACT,wBACA,OAAO,qBAAqB,yBAC5B,SACF;EACA,GAAI;EAPN,UAAA;GASG,OAAO,KAAK;GAAE;GAAK,OAAO,GAAG;GAC7B,OAAO,qBAAqB;EAC5B;;AAEP"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { defineMeta } from "../../registry/schema.js";
|
|
2
|
+
//#region src/components/morph-button/meta.ts
|
|
3
|
+
const meta = defineMeta({
|
|
4
|
+
name: "morph-button",
|
|
5
|
+
title: "Morph Button",
|
|
6
|
+
description: "A button whose icon and label morph to an active state — toggles, transient confirmations and hover affordances.",
|
|
7
|
+
category: "form",
|
|
8
|
+
status: "beta",
|
|
9
|
+
dependencies: ["class-variance-authority"],
|
|
10
|
+
registryDependencies: ["button"],
|
|
11
|
+
files: ["morph-button.tsx"],
|
|
12
|
+
a11y: "In `toggle` mode the state is exposed with aria-pressed and the accessible name stays the resting label, so \"Mute\" never becomes \"Unmute, pressed\". `transient` confirmations (Copied, Submitted) are announced through a polite live region and revert on a timer. `trigger=\"hover\"` activates on keyboard focus as well as hover. Icons are aria-hidden: an icon-only button must be named with aria-label or aria-labelledby, and warns in development when it is not. Motion stops under reduced motion."
|
|
13
|
+
});
|
|
14
|
+
//#endregion
|
|
15
|
+
export { meta };
|
|
16
|
+
|
|
17
|
+
//# sourceMappingURL=meta.js.map
|