@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,130 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { focusRing } from "../../lib/styles.js";
|
|
3
|
+
import { cn } from "../../lib/utils.js";
|
|
4
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
5
|
+
import { useCallback, useState } from "react";
|
|
6
|
+
//#region src/components/dither-canvas/dither-scrubber.tsx
|
|
7
|
+
/** The index under a pointer: `clientX` across `rect`, rounded to a point. */
|
|
8
|
+
function indexFromPointer(clientX, rect, count) {
|
|
9
|
+
if (count <= 1 || rect.width <= 0) return 0;
|
|
10
|
+
const t = Math.min(1, Math.max(0, (clientX - rect.left) / rect.width));
|
|
11
|
+
return Math.round(t * (count - 1));
|
|
12
|
+
}
|
|
13
|
+
/** The index a key moves to, or null when the key is not a slider key. */
|
|
14
|
+
function indexFromKey(key, current, count) {
|
|
15
|
+
const lastIndex = Math.max(0, count - 1);
|
|
16
|
+
const page = Math.max(1, Math.round(count / 10));
|
|
17
|
+
const clampTo = (value) => Math.min(lastIndex, Math.max(0, value));
|
|
18
|
+
switch (key) {
|
|
19
|
+
case "ArrowRight":
|
|
20
|
+
case "ArrowUp": return clampTo(current + 1);
|
|
21
|
+
case "ArrowLeft":
|
|
22
|
+
case "ArrowDown": return clampTo(current - 1);
|
|
23
|
+
case "PageUp": return clampTo(current + page);
|
|
24
|
+
case "PageDown": return clampTo(current - page);
|
|
25
|
+
case "Home": return 0;
|
|
26
|
+
case "End": return lastIndex;
|
|
27
|
+
default: return null;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
/** State and slider props for a keyboard-operable chart cursor. */
|
|
31
|
+
function useDitherScrubber({ count, index: controlled, defaultIndex = null, onIndexChange }) {
|
|
32
|
+
const [uncontrolled, setUncontrolled] = useState(defaultIndex);
|
|
33
|
+
const isControlled = controlled !== void 0;
|
|
34
|
+
const raw = isControlled ? controlled : uncontrolled;
|
|
35
|
+
const lastIndex = Math.max(0, count - 1);
|
|
36
|
+
const index = raw === null ? null : Math.min(lastIndex, Math.max(0, raw));
|
|
37
|
+
const setIndex = useCallback((next) => {
|
|
38
|
+
if (!isControlled) setUncontrolled(next);
|
|
39
|
+
onIndexChange?.(next);
|
|
40
|
+
}, [isControlled, onIndexChange]);
|
|
41
|
+
const valueIndex = index ?? lastIndex;
|
|
42
|
+
return {
|
|
43
|
+
index,
|
|
44
|
+
valueIndex,
|
|
45
|
+
setIndex,
|
|
46
|
+
sliderProps: {
|
|
47
|
+
role: "slider",
|
|
48
|
+
tabIndex: 0,
|
|
49
|
+
"aria-valuemin": 0,
|
|
50
|
+
"aria-valuemax": lastIndex,
|
|
51
|
+
"aria-valuenow": valueIndex,
|
|
52
|
+
"aria-orientation": "horizontal",
|
|
53
|
+
onKeyDown: (event) => {
|
|
54
|
+
if (event.key === "Escape" && index !== null) {
|
|
55
|
+
event.preventDefault();
|
|
56
|
+
setIndex(null);
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
const next = indexFromKey(event.key, valueIndex, count);
|
|
60
|
+
if (next === null) return;
|
|
61
|
+
event.preventDefault();
|
|
62
|
+
if (next !== index) setIndex(next);
|
|
63
|
+
},
|
|
64
|
+
onPointerMove: (event) => {
|
|
65
|
+
const next = indexFromPointer(event.clientX, event.currentTarget.getBoundingClientRect(), count);
|
|
66
|
+
if (next !== index) setIndex(next);
|
|
67
|
+
},
|
|
68
|
+
onPointerLeave: (event) => {
|
|
69
|
+
if (event.currentTarget.ownerDocument.activeElement !== event.currentTarget) setIndex(null);
|
|
70
|
+
},
|
|
71
|
+
onFocus: () => {
|
|
72
|
+
if (index === null) setIndex(lastIndex);
|
|
73
|
+
},
|
|
74
|
+
onBlur: () => {
|
|
75
|
+
setIndex(null);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* The scrubber's overlay: an invisible slider covering its positioned parent,
|
|
82
|
+
* plus the cursor line, point and readout while a point is active. All real
|
|
83
|
+
* DOM — the readout is text, not pixels. Place it after the chart's role="img"
|
|
84
|
+
* element, not inside it: a slider inside an image would be hidden.
|
|
85
|
+
*/
|
|
86
|
+
function DitherCursor({ scrubber, label, valueText, x, y = null, readout, className, ...props }) {
|
|
87
|
+
const active = scrubber.index !== null;
|
|
88
|
+
const left = `${String(Math.min(1, Math.max(0, x)) * 100)}%`;
|
|
89
|
+
const shift = x < .15 ? "0%" : x > .85 ? "-100%" : "-50%";
|
|
90
|
+
const move = "transition-[left,top,transform] duration-[var(--duration-fast)] ease-[var(--ease-out-quint)]";
|
|
91
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("div", {
|
|
92
|
+
"data-slot": "dither-cursor",
|
|
93
|
+
"aria-label": label,
|
|
94
|
+
"aria-valuetext": valueText,
|
|
95
|
+
...scrubber.sliderProps,
|
|
96
|
+
...props,
|
|
97
|
+
className: cn("absolute inset-0 cursor-crosshair touch-pan-y rounded-md", focusRing, className)
|
|
98
|
+
}), active && /* @__PURE__ */ jsxs("div", {
|
|
99
|
+
"aria-hidden": true,
|
|
100
|
+
className: "pointer-events-none absolute inset-0",
|
|
101
|
+
children: [
|
|
102
|
+
/* @__PURE__ */ jsx("div", {
|
|
103
|
+
"data-slot": "dither-cursor-line",
|
|
104
|
+
className: cn("absolute inset-y-0 w-px bg-primary/70", move),
|
|
105
|
+
style: { left }
|
|
106
|
+
}),
|
|
107
|
+
y !== null && /* @__PURE__ */ jsx("div", {
|
|
108
|
+
"data-slot": "dither-cursor-point",
|
|
109
|
+
className: cn("absolute size-3 -translate-x-1/2 -translate-y-1/2 rounded-full border-2 border-background bg-primary shadow-sm", move),
|
|
110
|
+
style: {
|
|
111
|
+
left,
|
|
112
|
+
top: `${String(y * 100)}%`
|
|
113
|
+
}
|
|
114
|
+
}),
|
|
115
|
+
readout !== void 0 && /* @__PURE__ */ jsx("div", {
|
|
116
|
+
"data-slot": "dither-cursor-readout",
|
|
117
|
+
className: cn("absolute top-0 z-10 rounded-md border border-border bg-popover px-2.5 py-1.5 text-xs whitespace-nowrap text-popover-foreground shadow-md", move),
|
|
118
|
+
style: {
|
|
119
|
+
left,
|
|
120
|
+
transform: `translate(${shift}, calc(-100% - 0.375rem))`
|
|
121
|
+
},
|
|
122
|
+
children: readout
|
|
123
|
+
})
|
|
124
|
+
]
|
|
125
|
+
})] });
|
|
126
|
+
}
|
|
127
|
+
//#endregion
|
|
128
|
+
export { DitherCursor, indexFromKey, indexFromPointer, useDitherScrubber };
|
|
129
|
+
|
|
130
|
+
//# sourceMappingURL=dither-scrubber.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dither-scrubber.js","names":[],"sources":["../../../src/components/dither-canvas/dither-scrubber.tsx"],"sourcesContent":["\"use client\";\n\n// Original design (pattern inspired by amicro \"Dither Area Growth\").\nimport {\n useCallback,\n useState,\n type ComponentPropsWithRef,\n type FocusEvent,\n type KeyboardEvent,\n type PointerEvent,\n type ReactNode,\n} from \"react\";\n\nimport { focusRing } from \"@/lib/styles\";\nimport { cn } from \"@/lib/utils\";\n\n/*\n * A scrubber over a series: the cursor amicro's growth chart drags with the\n * pointer, made operable without one. The plot overlay is an APG slider whose\n * value is a point index — arrow keys step, Page keys jump a tenth, Home/End go\n * to the ends — so the readout a pointer reveals is also reachable by keyboard\n * and announced through aria-valuetext.\n */\n\n/** The index under a pointer: `clientX` across `rect`, rounded to a point. */\nexport function indexFromPointer(\n clientX: number,\n rect: { left: number; width: number },\n count: number,\n): number {\n if (count <= 1 || rect.width <= 0) return 0;\n const t = Math.min(1, Math.max(0, (clientX - rect.left) / rect.width));\n return Math.round(t * (count - 1));\n}\n\n/** The index a key moves to, or null when the key is not a slider key. */\nexport function indexFromKey(key: string, current: number, count: number): number | null {\n const lastIndex = Math.max(0, count - 1);\n const page = Math.max(1, Math.round(count / 10));\n const clampTo = (value: number) => Math.min(lastIndex, Math.max(0, value));\n switch (key) {\n case \"ArrowRight\":\n case \"ArrowUp\":\n return clampTo(current + 1);\n case \"ArrowLeft\":\n case \"ArrowDown\":\n return clampTo(current - 1);\n case \"PageUp\":\n return clampTo(current + page);\n case \"PageDown\":\n return clampTo(current - page);\n case \"Home\":\n return 0;\n case \"End\":\n return lastIndex;\n default:\n return null;\n }\n}\n\nexport interface DitherScrubberOptions {\n /** Number of points. */\n count: number;\n /** Controlled cursor index; null hides the cursor. */\n index?: number | null;\n defaultIndex?: number | null;\n onIndexChange?: (index: number | null) => void;\n}\n\nexport interface DitherScrubberProps {\n role: \"slider\";\n tabIndex: number;\n \"aria-valuemin\": number;\n \"aria-valuemax\": number;\n \"aria-valuenow\": number;\n \"aria-orientation\": \"horizontal\";\n onKeyDown: (event: KeyboardEvent<HTMLElement>) => void;\n onPointerMove: (event: PointerEvent<HTMLElement>) => void;\n onPointerLeave: (event: PointerEvent<HTMLElement>) => void;\n onFocus: (event: FocusEvent<HTMLElement>) => void;\n onBlur: (event: FocusEvent<HTMLElement>) => void;\n}\n\nexport interface DitherScrubber {\n /** The cursor's point, or null when neither pointer nor focus is on the plot. */\n index: number | null;\n /** The point the slider reports: the cursor, or the latest point at rest. */\n valueIndex: number;\n setIndex: (index: number | null) => void;\n /** Spread onto the plot overlay. Add aria-label and aria-valuetext yourself. */\n sliderProps: DitherScrubberProps;\n}\n\n/** State and slider props for a keyboard-operable chart cursor. */\nexport function useDitherScrubber({\n count,\n index: controlled,\n defaultIndex = null,\n onIndexChange,\n}: DitherScrubberOptions): DitherScrubber {\n const [uncontrolled, setUncontrolled] = useState<number | null>(defaultIndex);\n const isControlled = controlled !== undefined;\n const raw = isControlled ? controlled : uncontrolled;\n const lastIndex = Math.max(0, count - 1);\n const index = raw === null ? null : Math.min(lastIndex, Math.max(0, raw));\n\n const setIndex = useCallback(\n (next: number | null) => {\n if (!isControlled) setUncontrolled(next);\n onIndexChange?.(next);\n },\n [isControlled, onIndexChange],\n );\n\n const valueIndex = index ?? lastIndex;\n\n return {\n index,\n valueIndex,\n setIndex,\n sliderProps: {\n role: \"slider\",\n tabIndex: 0,\n \"aria-valuemin\": 0,\n \"aria-valuemax\": lastIndex,\n \"aria-valuenow\": valueIndex,\n \"aria-orientation\": \"horizontal\",\n onKeyDown: (event) => {\n if (event.key === \"Escape\" && index !== null) {\n event.preventDefault();\n setIndex(null);\n return;\n }\n const next = indexFromKey(event.key, valueIndex, count);\n if (next === null) return;\n event.preventDefault();\n if (next !== index) setIndex(next);\n },\n onPointerMove: (event) => {\n const next = indexFromPointer(\n event.clientX,\n event.currentTarget.getBoundingClientRect(),\n count,\n );\n if (next !== index) setIndex(next);\n },\n onPointerLeave: (event) => {\n if (event.currentTarget.ownerDocument.activeElement !== event.currentTarget)\n setIndex(null);\n },\n onFocus: () => {\n if (index === null) setIndex(lastIndex);\n },\n onBlur: () => {\n setIndex(null);\n },\n },\n };\n}\n\nexport interface DitherCursorProps extends Omit<ComponentPropsWithRef<\"div\">, \"children\"> {\n scrubber: DitherScrubber;\n /** Names the slider, e.g. \"Members by day\". */\n label: string;\n /** What the slider announces for the current point, e.g. \"Jul 3: 24\". */\n valueText: string;\n /** Cursor position across the plot, 0..1. */\n x: number;\n /** Point position down the plot, 0..1 from the top; null draws no dot. */\n y?: number | null;\n /** Readout content, shown beside the cursor. */\n readout?: ReactNode;\n}\n\n/**\n * The scrubber's overlay: an invisible slider covering its positioned parent,\n * plus the cursor line, point and readout while a point is active. All real\n * DOM — the readout is text, not pixels. Place it after the chart's role=\"img\"\n * element, not inside it: a slider inside an image would be hidden.\n */\nexport function DitherCursor({\n scrubber,\n label,\n valueText,\n x,\n y = null,\n readout,\n className,\n ...props\n}: DitherCursorProps) {\n const active = scrubber.index !== null;\n const left = `${String(Math.min(1, Math.max(0, x)) * 100)}%`;\n // Keep the readout inside the plot near either edge.\n const shift = x < 0.15 ? \"0%\" : x > 0.85 ? \"-100%\" : \"-50%\";\n const move =\n \"transition-[left,top,transform] duration-[var(--duration-fast)] ease-[var(--ease-out-quint)]\";\n return (\n <>\n <div\n data-slot=\"dither-cursor\"\n aria-label={label}\n aria-valuetext={valueText}\n {...scrubber.sliderProps}\n {...props}\n className={cn(\n \"absolute inset-0 cursor-crosshair touch-pan-y rounded-md\",\n focusRing,\n className,\n )}\n />\n {active && (\n <div aria-hidden className=\"pointer-events-none absolute inset-0\">\n <div\n data-slot=\"dither-cursor-line\"\n className={cn(\"absolute inset-y-0 w-px bg-primary/70\", move)}\n style={{ left }}\n />\n {y !== null && (\n <div\n data-slot=\"dither-cursor-point\"\n className={cn(\n \"absolute size-3 -translate-x-1/2 -translate-y-1/2 rounded-full border-2 border-background bg-primary shadow-sm\",\n move,\n )}\n style={{ left, top: `${String(y * 100)}%` }}\n />\n )}\n {readout !== undefined && (\n <div\n data-slot=\"dither-cursor-readout\"\n className={cn(\n \"absolute top-0 z-10 rounded-md border border-border bg-popover px-2.5 py-1.5 text-xs whitespace-nowrap text-popover-foreground shadow-md\",\n move,\n )}\n style={{ left, transform: `translate(${shift}, calc(-100% - 0.375rem))` }}\n >\n {readout}\n </div>\n )}\n </div>\n )}\n </>\n );\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { DitherCanvas, DitherCanvasHandle, DitherCanvasOptions, DitherCanvasProps, DitherDraw, DitherFrame, DitherTable, DitherTableProps, formatDitherValue, prefersReducedMotion, useDitherCanvas, useReducedMotionPreference } from "./dither-canvas.js";
|
|
2
|
+
import { DEFAULT_SPRING, DITHER_CELL, DITHER_PALETTE, DitherBounds, DitherDensity, DitherFillOptions, Spring, SpringConfig, SpringList, cellSquare, clamp, createSpring, createSprings, ditherFill, drift, forEachCell, hash2, lerp, resample, resolveColor, seriesColor, shimmer, smoothstep, tokenToCss } from "./dither-engine.js";
|
|
3
|
+
import { PathSink, Point, Wedge, angleInWedge, makePath, monotoneTangents, niceMax, normalizeAngle, pieWedges, tracePolyline, traceRoundedRect, traceRoundedWedge, traceSpline, traceWedge, valueAt, wedgeAt } from "./dither-geometry.js";
|
|
4
|
+
import { DitherCursor, DitherCursorProps, DitherScrubber, DitherScrubberOptions, DitherScrubberProps, indexFromKey, indexFromPointer, useDitherScrubber } from "./dither-scrubber.js";
|
|
5
|
+
export { DEFAULT_SPRING, DITHER_CELL, DITHER_PALETTE, type DitherBounds, DitherCanvas, type DitherCanvasHandle, type DitherCanvasOptions, type DitherCanvasProps, DitherCursor, type DitherCursorProps, type DitherDensity, type DitherDraw, type DitherFillOptions, type DitherFrame, type DitherScrubber, type DitherScrubberOptions, type DitherScrubberProps, DitherTable, type DitherTableProps, type PathSink, type Point, type Spring, type SpringConfig, type SpringList, type Wedge, angleInWedge, cellSquare, clamp, createSpring, createSprings, ditherFill, drift, forEachCell, formatDitherValue, hash2, indexFromKey, indexFromPointer, lerp, makePath, monotoneTangents, niceMax, normalizeAngle, pieWedges, prefersReducedMotion, resample, resolveColor, seriesColor, shimmer, smoothstep, tokenToCss, tracePolyline, traceRoundedRect, traceRoundedWedge, traceSpline, traceWedge, useDitherCanvas, useDitherScrubber, useReducedMotionPreference, valueAt, wedgeAt };
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { DEFAULT_SPRING, DITHER_CELL, DITHER_PALETTE, cellSquare, clamp, createSpring, createSprings, ditherFill, drift, forEachCell, hash2, lerp, resample, resolveColor, seriesColor, shimmer, smoothstep, tokenToCss } from "./dither-engine.js";
|
|
2
|
+
import { DitherCanvas, DitherTable, formatDitherValue, prefersReducedMotion, useDitherCanvas, useReducedMotionPreference } from "./dither-canvas.js";
|
|
3
|
+
import { angleInWedge, makePath, monotoneTangents, niceMax, normalizeAngle, pieWedges, tracePolyline, traceRoundedRect, traceRoundedWedge, traceSpline, traceWedge, valueAt, wedgeAt } from "./dither-geometry.js";
|
|
4
|
+
import { DitherCursor, indexFromKey, indexFromPointer, useDitherScrubber } from "./dither-scrubber.js";
|
|
5
|
+
export { DEFAULT_SPRING, DITHER_CELL, DITHER_PALETTE, DitherCanvas, DitherCursor, DitherTable, angleInWedge, cellSquare, clamp, createSpring, createSprings, ditherFill, drift, forEachCell, formatDitherValue, hash2, indexFromKey, indexFromPointer, lerp, makePath, monotoneTangents, niceMax, normalizeAngle, pieWedges, prefersReducedMotion, resample, resolveColor, seriesColor, shimmer, smoothstep, tokenToCss, tracePolyline, traceRoundedRect, traceRoundedWedge, traceSpline, traceWedge, useDitherCanvas, useDitherScrubber, useReducedMotionPreference, valueAt, wedgeAt };
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { defineMeta } from "../../registry/schema.js";
|
|
2
|
+
//#region src/components/dither-canvas/meta.ts
|
|
3
|
+
const meta = defineMeta({
|
|
4
|
+
name: "dither-canvas",
|
|
5
|
+
title: "Dither Canvas",
|
|
6
|
+
description: "The engine behind the dither charts: a DPR-capped, self-pausing canvas loop, token colours, a deterministic cell hash, springs, geometry and a keyboard scrubber.",
|
|
7
|
+
category: "data",
|
|
8
|
+
status: "beta",
|
|
9
|
+
dependencies: [],
|
|
10
|
+
registryDependencies: [],
|
|
11
|
+
files: [
|
|
12
|
+
"dither-canvas.tsx",
|
|
13
|
+
"dither-engine.ts",
|
|
14
|
+
"dither-geometry.ts",
|
|
15
|
+
"dither-scrubber.tsx"
|
|
16
|
+
],
|
|
17
|
+
a11y: "The canvas is aria-hidden by default: a chart built on it names itself with role=\"img\" and an aria-label summary, and renders its values in DitherTable, which stays in the accessibility tree when visually hidden. useDitherScrubber gives a chart cursor APG slider semantics (arrows, Page keys, Home/End). The loop pauses off-screen and in hidden tabs, and under reduced motion (or --motion-scale near zero) draws a single static frame with springs settled."
|
|
18
|
+
});
|
|
19
|
+
//#endregion
|
|
20
|
+
export { meta };
|
|
21
|
+
|
|
22
|
+
//# sourceMappingURL=meta.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"meta.js","names":[],"sources":["../../../src/components/dither-canvas/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"dither-canvas\",\n title: \"Dither Canvas\",\n description:\n \"The engine behind the dither charts: a DPR-capped, self-pausing canvas loop, token colours, a deterministic cell hash, springs, geometry and a keyboard scrubber.\",\n category: \"data\",\n status: \"beta\",\n dependencies: [],\n registryDependencies: [],\n files: [\"dither-canvas.tsx\", \"dither-engine.ts\", \"dither-geometry.ts\", \"dither-scrubber.tsx\"],\n a11y:\n 'The canvas is aria-hidden by default: a chart built on it names itself with role=\"img\" and an ' +\n \"aria-label summary, and renders its values in DitherTable, which stays in the accessibility tree \" +\n \"when visually hidden. useDitherScrubber gives a chart cursor APG slider semantics (arrows, Page \" +\n \"keys, Home/End). The loop pauses off-screen and in hidden tabs, and under reduced motion (or \" +\n \"--motion-scale near zero) draws a single static frame with springs settled.\",\n});\n"],"mappings":";;AAEA,MAAa,OAAO,WAAW;CAC7B,MAAM;CACN,OAAO;CACP,aACE;CACF,UAAU;CACV,QAAQ;CACR,cAAc,CAAC;CACf,sBAAsB,CAAC;CACvB,OAAO;EAAC;EAAqB;EAAoB;EAAsB;CAAqB;CAC5F,MACE;AAKJ,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { VariantProps } from "class-variance-authority";
|
|
2
|
+
import { ComponentPropsWithRef, ReactNode } from "react";
|
|
3
|
+
//#region src/components/dither-donut/dither-donut.d.ts
|
|
4
|
+
declare const ditherDonutVariants: (props?: ({
|
|
5
|
+
size?: "sm" | "md" | "lg" | null | undefined;
|
|
6
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
7
|
+
interface DitherDonutDatum {
|
|
8
|
+
label: string;
|
|
9
|
+
value: number;
|
|
10
|
+
/** Colour token (`"primary"`) or CSS colour expression. Defaults to the palette. */
|
|
11
|
+
color?: string;
|
|
12
|
+
}
|
|
13
|
+
interface DitherDonutLabels {
|
|
14
|
+
category?: string;
|
|
15
|
+
value?: string;
|
|
16
|
+
share?: string;
|
|
17
|
+
total?: string;
|
|
18
|
+
}
|
|
19
|
+
interface DitherDonutProps extends Omit<ComponentPropsWithRef<"div">, "children">, VariantProps<typeof ditherDonutVariants> {
|
|
20
|
+
data: readonly DitherDonutDatum[];
|
|
21
|
+
/** What the chart shows. Names the image, the legend and the data table. */
|
|
22
|
+
label: string;
|
|
23
|
+
/** Replaces the generated summary in the image's accessible name. */
|
|
24
|
+
description?: string;
|
|
25
|
+
variant?: "graph" | "flat";
|
|
26
|
+
/** Ring thickness as a fraction of the radius. Default 0.36. */
|
|
27
|
+
thickness?: number;
|
|
28
|
+
formatValue?: (value: number) => string;
|
|
29
|
+
/** Centre content. Defaults to the active entry, or the total; null hides it. */
|
|
30
|
+
center?: ReactNode;
|
|
31
|
+
showLegend?: boolean;
|
|
32
|
+
/** Show the data table. It is always present for assistive technology. */
|
|
33
|
+
showTable?: boolean;
|
|
34
|
+
/** Run the shimmer. Reduced motion stops it regardless. */
|
|
35
|
+
animate?: boolean;
|
|
36
|
+
cell?: number;
|
|
37
|
+
/** The pinned entry (controlled). */
|
|
38
|
+
activeIndex?: number | null;
|
|
39
|
+
defaultActiveIndex?: number | null;
|
|
40
|
+
onActiveIndexChange?: (index: number | null) => void;
|
|
41
|
+
labels?: DitherDonutLabels;
|
|
42
|
+
}
|
|
43
|
+
declare function DitherDonut({ data, label, description, variant, size, thickness, formatValue, center, showLegend, showTable, animate, cell, activeIndex, defaultActiveIndex, onActiveIndexChange, labels, className, ...props }: DitherDonutProps): import("react").JSX.Element;
|
|
44
|
+
//#endregion
|
|
45
|
+
export { DitherDonut, DitherDonutDatum, DitherDonutLabels, DitherDonutProps, ditherDonutVariants };
|
|
46
|
+
//# sourceMappingURL=dither-donut.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dither-donut.d.ts","names":[],"sources":["../../../src/components/dither-donut/dither-donut.tsx"],"mappings":";;;cAiDa,sBAAmB;;6CAS9B;UAEe;EACf;EACA;;EAEA;;UAGe;EACf;EACA;EACA;EACA;;UAGe,yBAEb,KAAK,2CACL,oBAAoB;EACtB,eAAe;;EAEf;;EAEA;EACA;;EAEA;EACA,eAAe;;EAEf,SAAS;EACT;;EAEA;;EAEA;EACA;;EAEA;EACA;EACA,uBAAuB;EACvB,SAAS;;iBAoBK,cACd,MACA,OACA,aACA,SACA,MACA,WACA,aACA,QACA,YACA,WACA,SACA,MACA,aACA,oBACA,qBACA,QACA,cACG,SACF,mCAAgB,IAAA"}
|
|
@@ -0,0 +1,241 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import "../../lib/styles.js";
|
|
3
|
+
import { cn } from "../../lib/utils.js";
|
|
4
|
+
import { createSprings, ditherFill, drift, hash2, seriesColor, shimmer, smoothstep, tokenToCss } from "../dither-canvas/dither-engine.js";
|
|
5
|
+
import { DitherCanvas, DitherTable, formatDitherValue } from "../dither-canvas/dither-canvas.js";
|
|
6
|
+
import { angleInWedge, makePath, pieWedges, traceRoundedWedge, traceWedge, wedgeAt } from "../dither-canvas/dither-geometry.js";
|
|
7
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
8
|
+
import { cva } from "class-variance-authority";
|
|
9
|
+
import { useRef, useState } from "react";
|
|
10
|
+
//#region src/components/dither-donut/dither-donut.tsx
|
|
11
|
+
const ditherDonutVariants = cva("flex flex-wrap items-center gap-x-6 gap-y-4", {
|
|
12
|
+
variants: { size: {
|
|
13
|
+
sm: "[--dither-donut-size:8rem]",
|
|
14
|
+
md: "[--dither-donut-size:11rem]",
|
|
15
|
+
lg: "[--dither-donut-size:14rem]"
|
|
16
|
+
} },
|
|
17
|
+
defaultVariants: { size: "md" }
|
|
18
|
+
});
|
|
19
|
+
const PERCENT = new Intl.NumberFormat(void 0, {
|
|
20
|
+
style: "percent",
|
|
21
|
+
maximumFractionDigits: 0
|
|
22
|
+
});
|
|
23
|
+
function donutLayout(width, height, thickness, graph) {
|
|
24
|
+
const size = Math.min(width, height);
|
|
25
|
+
const pop = graph ? size * .03 : 0;
|
|
26
|
+
const outer = Math.max(0, size / 2 - pop - 1);
|
|
27
|
+
return {
|
|
28
|
+
center: {
|
|
29
|
+
x: width / 2,
|
|
30
|
+
y: height / 2
|
|
31
|
+
},
|
|
32
|
+
outer,
|
|
33
|
+
inner: outer * (1 - Math.min(.9, Math.max(.1, thickness))),
|
|
34
|
+
pop
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
function DitherDonut({ data, label, description, variant = "graph", size, thickness = .36, formatValue = formatDitherValue, center, showLegend = true, showTable = false, animate = true, cell, activeIndex, defaultActiveIndex = null, onActiveIndexChange, labels, className, ...props }) {
|
|
38
|
+
const [uncontrolled, setUncontrolled] = useState(defaultActiveIndex);
|
|
39
|
+
const [preview, setPreview] = useState(null);
|
|
40
|
+
const pinned = activeIndex !== void 0 ? activeIndex : uncontrolled;
|
|
41
|
+
const active = preview ?? pinned;
|
|
42
|
+
const graph = variant === "graph";
|
|
43
|
+
const values = data.map((datum) => datum.value > 0 ? datum.value : 0);
|
|
44
|
+
const total = values.reduce((sum, value) => sum + value, 0);
|
|
45
|
+
const targets = values.map((value) => total > 0 ? value / total : 0);
|
|
46
|
+
const shares = useRef(createSprings(targets));
|
|
47
|
+
const pops = useRef(createSprings(targets.map(() => 0), {
|
|
48
|
+
stiffness: 320,
|
|
49
|
+
damping: 24
|
|
50
|
+
}));
|
|
51
|
+
const pin = (index) => {
|
|
52
|
+
const next = pinned === index ? null : index;
|
|
53
|
+
if (activeIndex === void 0) setUncontrolled(next);
|
|
54
|
+
onActiveIndexChange?.(next);
|
|
55
|
+
};
|
|
56
|
+
const draw = (ctx, frame) => {
|
|
57
|
+
const { width, height, time, animated } = frame;
|
|
58
|
+
const step = frame.cell;
|
|
59
|
+
const { center: c, outer, inner, pop } = donutLayout(width, height, thickness, graph);
|
|
60
|
+
shares.current.set(targets);
|
|
61
|
+
pops.current.set(targets.map((_, index) => index === active ? 1 : 0));
|
|
62
|
+
const sharesMoving = shares.current.step(frame.delta, frame.reducedMotion);
|
|
63
|
+
const moving = pops.current.step(frame.delta, frame.reducedMotion) || sharesMoving;
|
|
64
|
+
const popped = pops.current.values;
|
|
65
|
+
const t = time * 1.2;
|
|
66
|
+
const bounds = {
|
|
67
|
+
x: c.x - outer - step,
|
|
68
|
+
y: c.y - outer - step,
|
|
69
|
+
width: 2 * (outer + step),
|
|
70
|
+
height: 2 * (outer + step)
|
|
71
|
+
};
|
|
72
|
+
for (const wedge of pieWedges(shares.current.values, { gap: graph ? .07 : 0 })) {
|
|
73
|
+
if (wedge.share <= 0 || wedge.end <= wedge.start) continue;
|
|
74
|
+
const { index, start, end, mid } = wedge;
|
|
75
|
+
const isActive = index === active;
|
|
76
|
+
const lift = pop * (popped[index] ?? 0);
|
|
77
|
+
ctx.save();
|
|
78
|
+
ctx.translate(Math.cos(mid) * lift, Math.sin(mid) * lift);
|
|
79
|
+
const clip = makePath((sink) => {
|
|
80
|
+
if (graph) traceRoundedWedge(sink, c, inner, outer, start, end, 6);
|
|
81
|
+
else traceWedge(sink, c, inner, outer, start, end);
|
|
82
|
+
});
|
|
83
|
+
const inside = (cx, cy) => {
|
|
84
|
+
const distance = Math.hypot(cx - c.x, cy - c.y);
|
|
85
|
+
return distance >= inner - step && distance <= outer + step && angleInWedge(Math.atan2(cy - c.y, cx - c.x), start, end);
|
|
86
|
+
};
|
|
87
|
+
ditherFill(ctx, {
|
|
88
|
+
clip,
|
|
89
|
+
bounds,
|
|
90
|
+
cell: step,
|
|
91
|
+
color: frame.color(seriesColor(index, data[index]?.color)),
|
|
92
|
+
alpha: isActive ? 1 : active !== null ? .3 : graph ? .78 : .85,
|
|
93
|
+
density: (cx, cy) => {
|
|
94
|
+
if (!inside(cx, cy)) return 0;
|
|
95
|
+
const jitter = hash2(cx, cy);
|
|
96
|
+
if (!graph) return (.4 + .4 * (animated ? drift(cx, cy, t) : .5)) * (.8 + .4 * jitter);
|
|
97
|
+
const dx = cx - c.x;
|
|
98
|
+
const dy = cy - c.y;
|
|
99
|
+
const distance = Math.hypot(dx, dy);
|
|
100
|
+
const fullness = smoothstep(.62, 1, (distance - inner) / Math.max(1, outer - inner));
|
|
101
|
+
const wave = animated ? shimmer(Math.sin(distance * .1 - t), Math.sin(Math.atan2(dy, dx) * 3 + t * 1.5), Math.sin((dx + dy) * .05 + t * 2)) : .5;
|
|
102
|
+
return ((isActive ? .46 : .34) + .36 * fullness + .26 * wave) * (.78 + .42 * jitter);
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
if (isActive) {
|
|
106
|
+
const seed = animated ? 1 + Math.floor(time * 6) : 1;
|
|
107
|
+
ditherFill(ctx, {
|
|
108
|
+
clip,
|
|
109
|
+
bounds,
|
|
110
|
+
cell: step,
|
|
111
|
+
color: frame.color("foreground"),
|
|
112
|
+
alpha: .9,
|
|
113
|
+
density: (cx, cy) => inside(cx, cy) && hash2(cx, cy, seed) > .92 ? .8 : 0
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
ctx.restore();
|
|
117
|
+
}
|
|
118
|
+
return moving;
|
|
119
|
+
};
|
|
120
|
+
const onPointerMove = (event) => {
|
|
121
|
+
const rect = event.currentTarget.getBoundingClientRect();
|
|
122
|
+
const layout = donutLayout(rect.width, rect.height, thickness, graph);
|
|
123
|
+
const hit = wedgeAt(pieWedges(targets, { gap: graph ? .07 : 0 }), layout.center, layout.inner, layout.outer + layout.pop, {
|
|
124
|
+
x: event.clientX - rect.left,
|
|
125
|
+
y: event.clientY - rect.top
|
|
126
|
+
});
|
|
127
|
+
if (hit !== preview) setPreview(hit);
|
|
128
|
+
};
|
|
129
|
+
const share = (index) => PERCENT.format(targets[index] ?? 0);
|
|
130
|
+
const summary = description ?? `${data.map((datum, index) => `${datum.label} ${formatValue(datum.value)} (${share(index)})`).join(", ")}. ${labels?.total ?? "Total"} ${formatValue(total)}.`;
|
|
131
|
+
const activeDatum = active !== null ? data[active] : void 0;
|
|
132
|
+
const readout = center !== void 0 ? center : /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
133
|
+
/* @__PURE__ */ jsx("span", {
|
|
134
|
+
className: "text-xs text-muted-foreground",
|
|
135
|
+
children: activeDatum?.label ?? labels?.total ?? "Total"
|
|
136
|
+
}),
|
|
137
|
+
/* @__PURE__ */ jsx("span", {
|
|
138
|
+
className: "text-lg font-semibold text-foreground tabular-nums",
|
|
139
|
+
children: formatValue(activeDatum ? activeDatum.value : total)
|
|
140
|
+
}),
|
|
141
|
+
activeDatum && /* @__PURE__ */ jsx("span", {
|
|
142
|
+
className: "text-xs text-muted-foreground tabular-nums",
|
|
143
|
+
children: share(active ?? 0)
|
|
144
|
+
})
|
|
145
|
+
] });
|
|
146
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
147
|
+
"data-slot": "dither-donut",
|
|
148
|
+
"data-variant": variant,
|
|
149
|
+
...props,
|
|
150
|
+
className: cn(ditherDonutVariants({ size }), className),
|
|
151
|
+
children: [
|
|
152
|
+
/* @__PURE__ */ jsxs("div", {
|
|
153
|
+
"data-slot": "dither-donut-plot",
|
|
154
|
+
className: "relative size-[var(--dither-donut-size)] shrink-0",
|
|
155
|
+
children: [/* @__PURE__ */ jsx("div", {
|
|
156
|
+
role: "img",
|
|
157
|
+
"aria-label": `${label}: ${summary}`,
|
|
158
|
+
className: "size-full",
|
|
159
|
+
onPointerMove,
|
|
160
|
+
onPointerLeave: () => {
|
|
161
|
+
setPreview(null);
|
|
162
|
+
},
|
|
163
|
+
children: /* @__PURE__ */ jsx(DitherCanvas, {
|
|
164
|
+
draw,
|
|
165
|
+
animate,
|
|
166
|
+
cell
|
|
167
|
+
})
|
|
168
|
+
}), readout !== null && /* @__PURE__ */ jsx("div", {
|
|
169
|
+
"data-slot": "dither-donut-readout",
|
|
170
|
+
className: "pointer-events-none absolute inset-0 flex flex-col items-center justify-center text-center leading-tight",
|
|
171
|
+
children: readout
|
|
172
|
+
})]
|
|
173
|
+
}),
|
|
174
|
+
showLegend && /* @__PURE__ */ jsx("ul", {
|
|
175
|
+
"data-slot": "dither-donut-legend",
|
|
176
|
+
"aria-label": label,
|
|
177
|
+
className: "flex min-w-0 flex-1 flex-col gap-1",
|
|
178
|
+
children: data.map((datum, index) => /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsxs("button", {
|
|
179
|
+
type: "button",
|
|
180
|
+
"aria-pressed": pinned === index,
|
|
181
|
+
"aria-label": `${datum.label}: ${formatValue(datum.value)} (${share(index)})`,
|
|
182
|
+
"data-active": active === index || void 0,
|
|
183
|
+
className: cn("flex w-full items-center gap-2.5 rounded-md px-2 py-1.5 text-xs transition-colors duration-[var(--duration-fast)] ease-[var(--ease-out-quint)] hover:bg-muted aria-pressed:bg-accent aria-pressed:text-accent-foreground data-active:bg-muted", "outline-none focus-visible:ring-2 focus-visible:ring-ring/55 focus-visible:ring-offset-2 focus-visible:ring-offset-background"),
|
|
184
|
+
onPointerEnter: () => {
|
|
185
|
+
setPreview(index);
|
|
186
|
+
},
|
|
187
|
+
onPointerLeave: () => {
|
|
188
|
+
setPreview(null);
|
|
189
|
+
},
|
|
190
|
+
onFocus: () => {
|
|
191
|
+
setPreview(index);
|
|
192
|
+
},
|
|
193
|
+
onBlur: () => {
|
|
194
|
+
setPreview(null);
|
|
195
|
+
},
|
|
196
|
+
onClick: () => {
|
|
197
|
+
pin(index);
|
|
198
|
+
},
|
|
199
|
+
children: [
|
|
200
|
+
/* @__PURE__ */ jsx("span", {
|
|
201
|
+
"aria-hidden": true,
|
|
202
|
+
className: "size-2.5 shrink-0 rounded-full",
|
|
203
|
+
style: { background: tokenToCss(seriesColor(index, datum.color)) }
|
|
204
|
+
}),
|
|
205
|
+
/* @__PURE__ */ jsx("span", {
|
|
206
|
+
className: "min-w-0 flex-1 truncate text-start font-medium text-foreground",
|
|
207
|
+
children: datum.label
|
|
208
|
+
}),
|
|
209
|
+
/* @__PURE__ */ jsx("span", {
|
|
210
|
+
className: "text-foreground tabular-nums",
|
|
211
|
+
children: formatValue(datum.value)
|
|
212
|
+
}),
|
|
213
|
+
/* @__PURE__ */ jsx("span", {
|
|
214
|
+
className: "w-9 text-end font-mono text-2xs text-muted-foreground",
|
|
215
|
+
children: share(index)
|
|
216
|
+
})
|
|
217
|
+
]
|
|
218
|
+
}) }, `${datum.label}-${String(index)}`))
|
|
219
|
+
}),
|
|
220
|
+
/* @__PURE__ */ jsx(DitherTable, {
|
|
221
|
+
caption: label,
|
|
222
|
+
columns: [
|
|
223
|
+
labels?.category ?? "Category",
|
|
224
|
+
labels?.value ?? "Value",
|
|
225
|
+
labels?.share ?? "Share"
|
|
226
|
+
],
|
|
227
|
+
rows: data.map((datum, index) => [
|
|
228
|
+
datum.label,
|
|
229
|
+
formatValue(datum.value),
|
|
230
|
+
share(index)
|
|
231
|
+
]),
|
|
232
|
+
visible: showTable,
|
|
233
|
+
className: showTable ? "basis-full" : void 0
|
|
234
|
+
})
|
|
235
|
+
]
|
|
236
|
+
});
|
|
237
|
+
}
|
|
238
|
+
//#endregion
|
|
239
|
+
export { DitherDonut, ditherDonutVariants };
|
|
240
|
+
|
|
241
|
+
//# sourceMappingURL=dither-donut.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dither-donut.js","names":[],"sources":["../../../src/components/dither-donut/dither-donut.tsx"],"sourcesContent":["\"use client\";\n\n// Ported from amicro \"Dither Donut Graph\" and \"Device Usage Donut\" (MIT, © 2026 Syed Subhan Uddin). See THIRD_PARTY_NOTICES.md.\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport {\n useRef,\n useState,\n type ComponentPropsWithRef,\n type PointerEvent,\n type ReactNode,\n} from \"react\";\n\nimport {\n angleInWedge,\n createSprings,\n DitherCanvas,\n ditherFill,\n DitherTable,\n drift,\n formatDitherValue,\n hash2,\n makePath,\n pieWedges,\n seriesColor,\n shimmer,\n smoothstep,\n tokenToCss,\n traceRoundedWedge,\n traceWedge,\n wedgeAt,\n type DitherDraw,\n} from \"@/components/dither-canvas\";\nimport { focusRing } from \"@/lib/styles\";\nimport { cn } from \"@/lib/utils\";\n\n/*\n * A donut drawn in dithered cells. Two looks from amicro:\n *\n * - `graph` (Dither Donut Graph): rounded wedges with gaps, cells that grow\n * toward the outer edge, a three-sine shimmer, and the active wedge popping\n * outward with a scatter of highlight particles.\n * - `flat` (Device Usage Donut): plain sectors, even cells, a two-sine drift.\n *\n * Shares and pop-outs are springs in the engine, so a data change morphs.\n * Hovering a wedge or a legend entry previews it; clicking a legend entry pins\n * it (aria-pressed). The period selector in amicro's demo is consumer UI and\n * lives in the stories.\n */\n\nexport const ditherDonutVariants = cva(\"flex flex-wrap items-center gap-x-6 gap-y-4\", {\n variants: {\n size: {\n sm: \"[--dither-donut-size:8rem]\",\n md: \"[--dither-donut-size:11rem]\",\n lg: \"[--dither-donut-size:14rem]\",\n },\n },\n defaultVariants: { size: \"md\" },\n});\n\nexport interface DitherDonutDatum {\n label: string;\n value: number;\n /** Colour token (`\"primary\"`) or CSS colour expression. Defaults to the palette. */\n color?: string;\n}\n\nexport interface DitherDonutLabels {\n category?: string;\n value?: string;\n share?: string;\n total?: string;\n}\n\nexport interface DitherDonutProps\n extends\n Omit<ComponentPropsWithRef<\"div\">, \"children\">,\n VariantProps<typeof ditherDonutVariants> {\n data: readonly DitherDonutDatum[];\n /** What the chart shows. Names the image, the legend and the data table. */\n label: string;\n /** Replaces the generated summary in the image's accessible name. */\n description?: string;\n variant?: \"graph\" | \"flat\";\n /** Ring thickness as a fraction of the radius. Default 0.36. */\n thickness?: number;\n formatValue?: (value: number) => string;\n /** Centre content. Defaults to the active entry, or the total; null hides it. */\n center?: ReactNode;\n showLegend?: boolean;\n /** Show the data table. It is always present for assistive technology. */\n showTable?: boolean;\n /** Run the shimmer. Reduced motion stops it regardless. */\n animate?: boolean;\n cell?: number;\n /** The pinned entry (controlled). */\n activeIndex?: number | null;\n defaultActiveIndex?: number | null;\n onActiveIndexChange?: (index: number | null) => void;\n labels?: DitherDonutLabels;\n}\n\nconst PERCENT = new Intl.NumberFormat(undefined, {\n style: \"percent\",\n maximumFractionDigits: 0,\n});\n\nfunction donutLayout(width: number, height: number, thickness: number, graph: boolean) {\n const size = Math.min(width, height);\n const pop = graph ? size * 0.03 : 0;\n const outer = Math.max(0, size / 2 - pop - 1);\n return {\n center: { x: width / 2, y: height / 2 },\n outer,\n inner: outer * (1 - Math.min(0.9, Math.max(0.1, thickness))),\n pop,\n };\n}\n\nexport function DitherDonut({\n data,\n label,\n description,\n variant = \"graph\",\n size,\n thickness = 0.36,\n formatValue = formatDitherValue,\n center,\n showLegend = true,\n showTable = false,\n animate = true,\n cell,\n activeIndex,\n defaultActiveIndex = null,\n onActiveIndexChange,\n labels,\n className,\n ...props\n}: DitherDonutProps) {\n const [uncontrolled, setUncontrolled] = useState<number | null>(defaultActiveIndex);\n const [preview, setPreview] = useState<number | null>(null);\n const pinned = activeIndex !== undefined ? activeIndex : uncontrolled;\n const active = preview ?? pinned;\n\n const graph = variant === \"graph\";\n const values = data.map((datum) => (datum.value > 0 ? datum.value : 0));\n const total = values.reduce((sum, value) => sum + value, 0);\n const targets = values.map((value) => (total > 0 ? value / total : 0));\n\n const shares = useRef(createSprings(targets));\n const pops = useRef(\n createSprings(\n targets.map(() => 0),\n { stiffness: 320, damping: 24 },\n ),\n );\n\n const pin = (index: number) => {\n const next = pinned === index ? null : index;\n if (activeIndex === undefined) setUncontrolled(next);\n onActiveIndexChange?.(next);\n };\n\n const draw: DitherDraw = (ctx, frame) => {\n const { width, height, time, animated } = frame;\n const step = frame.cell;\n const { center: c, outer, inner, pop } = donutLayout(width, height, thickness, graph);\n shares.current.set(targets);\n pops.current.set(targets.map((_, index) => (index === active ? 1 : 0)));\n const sharesMoving = shares.current.step(frame.delta, frame.reducedMotion);\n const moving = pops.current.step(frame.delta, frame.reducedMotion) || sharesMoving;\n const popped = pops.current.values;\n const t = time * 1.2;\n const bounds = {\n x: c.x - outer - step,\n y: c.y - outer - step,\n width: 2 * (outer + step),\n height: 2 * (outer + step),\n };\n\n for (const wedge of pieWedges(shares.current.values, { gap: graph ? 0.07 : 0 })) {\n if (wedge.share <= 0 || wedge.end <= wedge.start) continue;\n const { index, start, end, mid } = wedge;\n const isActive = index === active;\n const lift = pop * (popped[index] ?? 0);\n ctx.save();\n ctx.translate(Math.cos(mid) * lift, Math.sin(mid) * lift);\n const clip = makePath((sink) => {\n if (graph) traceRoundedWedge(sink, c, inner, outer, start, end, 6);\n else traceWedge(sink, c, inner, outer, start, end);\n });\n const inside = (cx: number, cy: number) => {\n const distance = Math.hypot(cx - c.x, cy - c.y);\n return (\n distance >= inner - step &&\n distance <= outer + step &&\n angleInWedge(Math.atan2(cy - c.y, cx - c.x), start, end)\n );\n };\n ditherFill(ctx, {\n clip,\n bounds,\n cell: step,\n color: frame.color(seriesColor(index, data[index]?.color)),\n alpha: isActive ? 1 : active !== null ? 0.3 : graph ? 0.78 : 0.85,\n density: (cx, cy) => {\n if (!inside(cx, cy)) return 0;\n const jitter = hash2(cx, cy);\n if (!graph)\n return (0.4 + 0.4 * (animated ? drift(cx, cy, t) : 0.5)) * (0.8 + 0.4 * jitter);\n const dx = cx - c.x;\n const dy = cy - c.y;\n const distance = Math.hypot(dx, dy);\n const fullness = smoothstep(0.62, 1, (distance - inner) / Math.max(1, outer - inner));\n const wave = animated\n ? shimmer(\n Math.sin(distance * 0.1 - t),\n Math.sin(Math.atan2(dy, dx) * 3 + t * 1.5),\n Math.sin((dx + dy) * 0.05 + t * 2),\n )\n : 0.5;\n return (\n ((isActive ? 0.46 : 0.34) + 0.36 * fullness + 0.26 * wave) * (0.78 + 0.42 * jitter)\n );\n },\n });\n if (isActive) {\n // Highlight particles: a sparse second layer, re-seeded a few times a\n // second while animating, still under reduced motion.\n const seed = animated ? 1 + Math.floor(time * 6) : 1;\n ditherFill(ctx, {\n clip,\n bounds,\n cell: step,\n color: frame.color(\"foreground\"),\n alpha: 0.9,\n density: (cx, cy) => (inside(cx, cy) && hash2(cx, cy, seed) > 0.92 ? 0.8 : 0),\n });\n }\n ctx.restore();\n }\n return moving;\n };\n\n const onPointerMove = (event: PointerEvent<HTMLDivElement>) => {\n const rect = event.currentTarget.getBoundingClientRect();\n const layout = donutLayout(rect.width, rect.height, thickness, graph);\n const hit = wedgeAt(\n pieWedges(targets, { gap: graph ? 0.07 : 0 }),\n layout.center,\n layout.inner,\n layout.outer + layout.pop,\n { x: event.clientX - rect.left, y: event.clientY - rect.top },\n );\n if (hit !== preview) setPreview(hit);\n };\n\n const share = (index: number) => PERCENT.format(targets[index] ?? 0);\n const summary =\n description ??\n `${data.map((datum, index) => `${datum.label} ${formatValue(datum.value)} (${share(index)})`).join(\", \")}. ${labels?.total ?? \"Total\"} ${formatValue(total)}.`;\n const activeDatum = active !== null ? data[active] : undefined;\n\n const readout =\n center !== undefined ? (\n center\n ) : (\n <>\n <span className=\"text-xs text-muted-foreground\">\n {activeDatum?.label ?? labels?.total ?? \"Total\"}\n </span>\n <span className=\"text-lg font-semibold text-foreground tabular-nums\">\n {formatValue(activeDatum ? activeDatum.value : total)}\n </span>\n {activeDatum && (\n <span className=\"text-xs text-muted-foreground tabular-nums\">\n {share(active ?? 0)}\n </span>\n )}\n </>\n );\n\n return (\n <div\n data-slot=\"dither-donut\"\n data-variant={variant}\n {...props}\n className={cn(ditherDonutVariants({ size }), className)}\n >\n <div\n data-slot=\"dither-donut-plot\"\n className=\"relative size-[var(--dither-donut-size)] shrink-0\"\n >\n <div\n role=\"img\"\n aria-label={`${label}: ${summary}`}\n className=\"size-full\"\n onPointerMove={onPointerMove}\n onPointerLeave={() => {\n setPreview(null);\n }}\n >\n <DitherCanvas draw={draw} animate={animate} cell={cell} />\n </div>\n {readout !== null && (\n <div\n data-slot=\"dither-donut-readout\"\n className=\"pointer-events-none absolute inset-0 flex flex-col items-center justify-center text-center leading-tight\"\n >\n {readout}\n </div>\n )}\n </div>\n {showLegend && (\n <ul\n data-slot=\"dither-donut-legend\"\n aria-label={label}\n className=\"flex min-w-0 flex-1 flex-col gap-1\"\n >\n {data.map((datum, index) => (\n <li key={`${datum.label}-${String(index)}`}>\n <button\n type=\"button\"\n aria-pressed={pinned === index}\n aria-label={`${datum.label}: ${formatValue(datum.value)} (${share(index)})`}\n data-active={active === index || undefined}\n className={cn(\n \"flex w-full items-center gap-2.5 rounded-md px-2 py-1.5 text-xs transition-colors duration-[var(--duration-fast)] ease-[var(--ease-out-quint)] hover:bg-muted aria-pressed:bg-accent aria-pressed:text-accent-foreground data-active:bg-muted\",\n focusRing,\n )}\n onPointerEnter={() => {\n setPreview(index);\n }}\n onPointerLeave={() => {\n setPreview(null);\n }}\n onFocus={() => {\n setPreview(index);\n }}\n onBlur={() => {\n setPreview(null);\n }}\n onClick={() => {\n pin(index);\n }}\n >\n <span\n aria-hidden\n className=\"size-2.5 shrink-0 rounded-full\"\n style={{ background: tokenToCss(seriesColor(index, datum.color)) }}\n />\n <span className=\"min-w-0 flex-1 truncate text-start font-medium text-foreground\">\n {datum.label}\n </span>\n <span className=\"text-foreground tabular-nums\">{formatValue(datum.value)}</span>\n <span className=\"w-9 text-end font-mono text-2xs text-muted-foreground\">\n {share(index)}\n </span>\n </button>\n </li>\n ))}\n </ul>\n )}\n <DitherTable\n caption={label}\n columns={[\n labels?.category ?? \"Category\",\n labels?.value ?? \"Value\",\n labels?.share ?? \"Share\",\n ]}\n rows={data.map((datum, index) => [datum.label, formatValue(datum.value), share(index)])}\n visible={showTable}\n className={showTable ? \"basis-full\" : undefined}\n />\n </div>\n );\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { defineMeta } from "../../registry/schema.js";
|
|
2
|
+
//#region src/components/dither-donut/meta.ts
|
|
3
|
+
const meta = defineMeta({
|
|
4
|
+
name: "dither-donut",
|
|
5
|
+
title: "Dither Donut",
|
|
6
|
+
description: "A donut chart drawn in shimmering dithered cells, with wedges that pop out and sparkle on hover, focus or pin.",
|
|
7
|
+
category: "data",
|
|
8
|
+
status: "beta",
|
|
9
|
+
dependencies: ["class-variance-authority"],
|
|
10
|
+
registryDependencies: ["dither-canvas"],
|
|
11
|
+
files: ["dither-donut.tsx"],
|
|
12
|
+
a11y: "The plot is role=\"img\" with an aria-label summarising every entry, its share and the total. Legend entries are buttons named with their value and share: focus or hover previews a wedge, and pressing pins it (aria-pressed). The data is always in a table, visually hidden unless showTable is set. The readout is real text. Under reduced motion the shimmer stops and data changes settle in one frame."
|
|
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/dither-donut/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"dither-donut\",\n title: \"Dither Donut\",\n description:\n \"A donut chart drawn in shimmering dithered cells, with wedges that pop out and sparkle on hover, focus or pin.\",\n category: \"data\",\n status: \"beta\",\n dependencies: [\"class-variance-authority\"],\n registryDependencies: [\"dither-canvas\"],\n files: [\"dither-donut.tsx\"],\n a11y:\n 'The plot is role=\"img\" with an aria-label summarising every entry, its share and the total. ' +\n \"Legend entries are buttons named with their value and share: focus or hover previews a wedge, \" +\n \"and pressing pins it (aria-pressed). The data is always in a table, visually hidden unless \" +\n \"showTable is set. The readout is real text. Under reduced motion the shimmer stops and data \" +\n \"changes settle in one frame.\",\n});\n"],"mappings":";;AAEA,MAAa,OAAO,WAAW;CAC7B,MAAM;CACN,OAAO;CACP,aACE;CACF,UAAU;CACV,QAAQ;CACR,cAAc,CAAC,0BAA0B;CACzC,sBAAsB,CAAC,eAAe;CACtC,OAAO,CAAC,kBAAkB;CAC1B,MACE;AAKJ,CAAC"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { VariantProps } from "class-variance-authority";
|
|
2
|
+
import { ComponentPropsWithRef } from "react";
|
|
3
|
+
//#region src/components/dither-funnel/dither-funnel.d.ts
|
|
4
|
+
declare const ditherFunnelVariants: (props?: ({
|
|
5
|
+
size?: "sm" | "md" | "lg" | null | undefined;
|
|
6
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
7
|
+
interface DitherFunnelStage {
|
|
8
|
+
label: string;
|
|
9
|
+
value: number;
|
|
10
|
+
/** Colour token or CSS colour expression. Defaults to the palette. */
|
|
11
|
+
color?: string;
|
|
12
|
+
}
|
|
13
|
+
interface DitherFunnelProps extends Omit<ComponentPropsWithRef<"div">, "children">, VariantProps<typeof ditherFunnelVariants> {
|
|
14
|
+
stages: readonly DitherFunnelStage[];
|
|
15
|
+
/** What the funnel shows. Names the image, the stages and the data table. */
|
|
16
|
+
label: string;
|
|
17
|
+
/** Replaces the generated summary in the image's accessible name. */
|
|
18
|
+
description?: string;
|
|
19
|
+
/** Value of a full-length bar. Defaults to the largest stage. */
|
|
20
|
+
max?: number;
|
|
21
|
+
formatValue?: (value: number) => string;
|
|
22
|
+
/** Formats a 0..1 share. Defaults to a whole percentage. */
|
|
23
|
+
formatPercent?: (share: number) => string;
|
|
24
|
+
/** Show the data table. It is always present for assistive technology. */
|
|
25
|
+
showTable?: boolean;
|
|
26
|
+
animate?: boolean;
|
|
27
|
+
cell?: number;
|
|
28
|
+
/** The pinned stage (controlled); null pins none. */
|
|
29
|
+
activeStage?: number | null;
|
|
30
|
+
defaultActiveStage?: number | null;
|
|
31
|
+
onActiveStageChange?: (index: number | null) => void;
|
|
32
|
+
/** Data table headers. */
|
|
33
|
+
categoryLabel?: string;
|
|
34
|
+
valueLabel?: string;
|
|
35
|
+
conversionLabel?: string;
|
|
36
|
+
stepLabel?: string;
|
|
37
|
+
}
|
|
38
|
+
/** Gap between stage bars in CSS pixels, shared by the canvas and the buttons. */
|
|
39
|
+
declare const FUNNEL_GAP = 6;
|
|
40
|
+
interface FunnelConversion {
|
|
41
|
+
/** Share of the first stage, 0..1. */
|
|
42
|
+
overall: number;
|
|
43
|
+
/** Share of the previous stage, 0..1 (1 for the first). */
|
|
44
|
+
step: number;
|
|
45
|
+
/** How many the previous stage lost on the way here (0 for the first). */
|
|
46
|
+
dropped: number;
|
|
47
|
+
}
|
|
48
|
+
/** Overall and step conversion for each stage. */
|
|
49
|
+
declare function funnelConversions(stages: readonly DitherFunnelStage[]): FunnelConversion[];
|
|
50
|
+
declare function DitherFunnel({ stages, label, description, max, size, formatValue, formatPercent, showTable, animate, cell, activeStage, defaultActiveStage, onActiveStageChange, categoryLabel, valueLabel, conversionLabel, stepLabel, className, ...props }: DitherFunnelProps): import("react").JSX.Element;
|
|
51
|
+
//#endregion
|
|
52
|
+
export { DitherFunnel, DitherFunnelProps, DitherFunnelStage, FUNNEL_GAP, FunnelConversion, ditherFunnelVariants, funnelConversions };
|
|
53
|
+
//# sourceMappingURL=dither-funnel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dither-funnel.d.ts","names":[],"sources":["../../../src/components/dither-funnel/dither-funnel.tsx"],"mappings":";;;cAkCa,uBAAoB;;6CAS/B;UAEe;EACf;EACA;;EAEA;;UAGe,0BAEb,KAAK,2CACL,oBAAoB;EACtB,iBAAiB;;EAEjB;;EAEA;;EAEA;EACA,eAAe;;EAEf,iBAAiB;;EAEjB;EACA;EACA;;EAEA;EACA;EACA,uBAAuB;;EAEvB;EACA;EACA;EACA;;;cAIW;UAEI;;EAEf;;EAEA;;EAEA;;;iBAMc,kBAAkB,iBAAiB,sBAAsB;iBAezD,eACd,QACA,OACA,aACA,KACA,MACA,aACA,eACA,WACA,SACA,MACA,aACA,oBACA,qBACA,eACA,YACA,iBACA,WACA,cACG,SACF,oCAAiB,IAAA"}
|