@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,181 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { cn } from "../../lib/utils.js";
|
|
3
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
4
|
+
import { cva } from "class-variance-authority";
|
|
5
|
+
import { useId } from "react";
|
|
6
|
+
//#region src/components/pixel-avatar/pixel-avatar.tsx
|
|
7
|
+
const PREFIX = "dowel-pixel-avatar";
|
|
8
|
+
/** Pulse period, from the source's 0.002 rad/ms. */
|
|
9
|
+
const PULSE_MS = 3142;
|
|
10
|
+
/** Whole-avatar breathing, from 0.0008 rad/ms. */
|
|
11
|
+
const BREATHE_MS = 7854;
|
|
12
|
+
const SPARKLE_MS = 1571;
|
|
13
|
+
const SPARKLE_CHANCE = .14;
|
|
14
|
+
function scaled(ms) {
|
|
15
|
+
return `calc(${ms.toFixed(0)}ms * var(--motion-scale, 1))`;
|
|
16
|
+
}
|
|
17
|
+
const STYLES = `
|
|
18
|
+
.${PREFIX}{display:inline-block;flex-shrink:0;vertical-align:middle;overflow:visible}
|
|
19
|
+
.${PREFIX}[data-animated] [data-slot=pixel-avatar-grid]{transform-box:fill-box;transform-origin:center;animation:${PREFIX}-breathe ${scaled(BREATHE_MS)} ease-in-out infinite}
|
|
20
|
+
.${PREFIX}[data-animated] [data-part=cell]{animation:${PREFIX}-pulse ${scaled(PULSE_MS)} ease-in-out infinite;animation-delay:var(--delay)}
|
|
21
|
+
.${PREFIX}[data-animated] [data-part=cell][data-sparkle]{animation-name:${PREFIX}-sparkle;animation-duration:${scaled(SPARKLE_MS)}}
|
|
22
|
+
@keyframes ${PREFIX}-pulse{0%,100%{opacity:var(--lo)}50%{opacity:var(--hi)}}
|
|
23
|
+
@keyframes ${PREFIX}-sparkle{0%,86%,100%{opacity:var(--lo)}93%{opacity:1}}
|
|
24
|
+
@keyframes ${PREFIX}-breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.03)}}
|
|
25
|
+
`;
|
|
26
|
+
/** Semantic hues an avatar can be built from. */
|
|
27
|
+
const TOKENS = [
|
|
28
|
+
"primary",
|
|
29
|
+
"info",
|
|
30
|
+
"success",
|
|
31
|
+
"warning",
|
|
32
|
+
"destructive"
|
|
33
|
+
];
|
|
34
|
+
/** Simple deterministic string hash. */
|
|
35
|
+
function hashSeed(seed) {
|
|
36
|
+
let hash = 0;
|
|
37
|
+
for (const char of seed) hash = (hash << 5) - hash + (char.codePointAt(0) ?? 0) | 0;
|
|
38
|
+
return Math.abs(hash);
|
|
39
|
+
}
|
|
40
|
+
/** Seeded PRNG (mulberry32), so a seed always draws the same avatar. */
|
|
41
|
+
function createRng(seed) {
|
|
42
|
+
let state = seed;
|
|
43
|
+
return () => {
|
|
44
|
+
state = state + 1831565813 | 0;
|
|
45
|
+
let t = Math.imul(state ^ state >>> 15, 1 | state);
|
|
46
|
+
t = t + Math.imul(t ^ t >>> 7, 61 | t) ^ t;
|
|
47
|
+
return ((t ^ t >>> 14) >>> 0) / 4294967296;
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
function percent(value) {
|
|
51
|
+
return `${value.toFixed(0)}%`;
|
|
52
|
+
}
|
|
53
|
+
/** Three colours in one family: the base token, shaded, tinted and blended. */
|
|
54
|
+
function generatePalette(hash) {
|
|
55
|
+
const rng = createRng(hash);
|
|
56
|
+
const index = Math.floor(rng() * TOKENS.length);
|
|
57
|
+
const base = `var(--color-${TOKENS[index] ?? "primary"})`;
|
|
58
|
+
const neighbour = `var(--color-${TOKENS[(index + 1 + Math.floor(rng() * 2)) % TOKENS.length] ?? "info"})`;
|
|
59
|
+
return {
|
|
60
|
+
base,
|
|
61
|
+
colors: [
|
|
62
|
+
base,
|
|
63
|
+
`color-mix(in oklab, ${base} ${percent(62 + rng() * 20)}, var(--color-foreground))`,
|
|
64
|
+
`color-mix(in oklab, ${base} ${percent(55 + rng() * 25)}, ${neighbour})`
|
|
65
|
+
]
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
function generateGrid(hash, cells) {
|
|
69
|
+
const rng = createRng(hash + 1);
|
|
70
|
+
const grid = [];
|
|
71
|
+
for (let y = 0; y < cells; y++) for (let x = 0; x < cells; x++) {
|
|
72
|
+
const brightness = .3 + rng() * .7;
|
|
73
|
+
grid.push({
|
|
74
|
+
x,
|
|
75
|
+
y,
|
|
76
|
+
color: Math.floor(rng() * 3),
|
|
77
|
+
lo: .35 + brightness * .5,
|
|
78
|
+
phase: rng(),
|
|
79
|
+
sparkle: rng() < SPARKLE_CHANCE
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
return grid;
|
|
83
|
+
}
|
|
84
|
+
const pixelAvatarVariants = cva("", {
|
|
85
|
+
variants: { shape: {
|
|
86
|
+
circle: "rounded-full",
|
|
87
|
+
square: "rounded-[22%]"
|
|
88
|
+
} },
|
|
89
|
+
defaultVariants: { shape: "circle" }
|
|
90
|
+
});
|
|
91
|
+
/** A deterministic, gently animated pixel avatar generated from a seed. */
|
|
92
|
+
function PixelAvatar({ className, seed, size = 64, cells = 6, animated = true, shape = "circle", palette, style, ...props }) {
|
|
93
|
+
const clipId = `${PREFIX}-${useId().replace(/:/g, "")}`;
|
|
94
|
+
const count = Math.max(2, Math.round(cells));
|
|
95
|
+
const hash = hashSeed(seed);
|
|
96
|
+
const generated = generatePalette(hash);
|
|
97
|
+
const colors = palette ?? generated.colors;
|
|
98
|
+
const base = palette?.[0] ?? generated.base;
|
|
99
|
+
const grid = generateGrid(hash, count);
|
|
100
|
+
const half = count / 2;
|
|
101
|
+
const named = props["aria-label"] != null || props["aria-labelledby"] != null;
|
|
102
|
+
const resolvedSize = typeof size === "number" ? `${String(size)}px` : size;
|
|
103
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("style", {
|
|
104
|
+
href: PREFIX,
|
|
105
|
+
precedence: "dowel",
|
|
106
|
+
children: STYLES
|
|
107
|
+
}), /* @__PURE__ */ jsxs("svg", {
|
|
108
|
+
viewBox: `0 0 ${String(count)} ${String(count)}`,
|
|
109
|
+
"data-slot": "pixel-avatar",
|
|
110
|
+
"data-seed": seed,
|
|
111
|
+
"data-animated": animated ? "" : void 0,
|
|
112
|
+
role: named ? "img" : void 0,
|
|
113
|
+
"aria-hidden": named ? void 0 : true,
|
|
114
|
+
className: cn(PREFIX, pixelAvatarVariants({ shape }), className),
|
|
115
|
+
style: {
|
|
116
|
+
width: resolvedSize,
|
|
117
|
+
height: resolvedSize,
|
|
118
|
+
filter: `drop-shadow(0 0 calc(${resolvedSize} * .08) color-mix(in oklab, ${base} 45%, transparent))`,
|
|
119
|
+
...style
|
|
120
|
+
},
|
|
121
|
+
...props,
|
|
122
|
+
children: [
|
|
123
|
+
/* @__PURE__ */ jsx("defs", { children: /* @__PURE__ */ jsx("clipPath", {
|
|
124
|
+
id: clipId,
|
|
125
|
+
children: shape === "square" ? /* @__PURE__ */ jsx("rect", {
|
|
126
|
+
width: count,
|
|
127
|
+
height: count,
|
|
128
|
+
rx: count * .22
|
|
129
|
+
}) : /* @__PURE__ */ jsx("circle", {
|
|
130
|
+
cx: half,
|
|
131
|
+
cy: half,
|
|
132
|
+
r: half
|
|
133
|
+
})
|
|
134
|
+
}) }),
|
|
135
|
+
/* @__PURE__ */ jsxs("g", {
|
|
136
|
+
clipPath: `url(#${clipId})`,
|
|
137
|
+
children: [/* @__PURE__ */ jsx("rect", {
|
|
138
|
+
"data-slot": "pixel-avatar-background",
|
|
139
|
+
width: count,
|
|
140
|
+
height: count,
|
|
141
|
+
fill: `color-mix(in oklab, ${base} 22%, var(--color-background))`
|
|
142
|
+
}), /* @__PURE__ */ jsx("g", {
|
|
143
|
+
"data-slot": "pixel-avatar-grid",
|
|
144
|
+
shapeRendering: "crispEdges",
|
|
145
|
+
children: grid.map((cell) => {
|
|
146
|
+
const offset = (cell.phase + (cell.x + cell.y) / 6) % 1 * PULSE_MS;
|
|
147
|
+
return /* @__PURE__ */ jsx("rect", {
|
|
148
|
+
"data-part": "cell",
|
|
149
|
+
"data-sparkle": cell.sparkle ? "" : void 0,
|
|
150
|
+
x: cell.x,
|
|
151
|
+
y: cell.y,
|
|
152
|
+
width: 1.02,
|
|
153
|
+
height: 1.02,
|
|
154
|
+
fill: colors[cell.color],
|
|
155
|
+
opacity: cell.lo,
|
|
156
|
+
style: {
|
|
157
|
+
"--lo": cell.lo.toFixed(3),
|
|
158
|
+
"--hi": Math.min(1, cell.lo + .25).toFixed(3),
|
|
159
|
+
"--delay": `calc(${(-offset).toFixed(0)}ms * var(--motion-scale, 1))`
|
|
160
|
+
}
|
|
161
|
+
}, `${String(cell.x)}-${String(cell.y)}`);
|
|
162
|
+
})
|
|
163
|
+
})]
|
|
164
|
+
}),
|
|
165
|
+
/* @__PURE__ */ jsx("circle", {
|
|
166
|
+
"data-slot": "pixel-avatar-ring",
|
|
167
|
+
cx: half,
|
|
168
|
+
cy: half,
|
|
169
|
+
r: half - .04,
|
|
170
|
+
fill: "none",
|
|
171
|
+
stroke: base,
|
|
172
|
+
strokeOpacity: shape === "square" ? 0 : .2,
|
|
173
|
+
strokeWidth: .08
|
|
174
|
+
})
|
|
175
|
+
]
|
|
176
|
+
})] });
|
|
177
|
+
}
|
|
178
|
+
//#endregion
|
|
179
|
+
export { PixelAvatar, pixelAvatarVariants };
|
|
180
|
+
|
|
181
|
+
//# sourceMappingURL=pixel-avatar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pixel-avatar.js","names":[],"sources":["../../../src/components/pixel-avatar/pixel-avatar.tsx"],"sourcesContent":["\"use client\";\n\n// Ported from SmoothUI Agent Avatar (MIT, © 2024 Eduardo Calvo). See THIRD_PARTY_NOTICES.md.\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { useId, type ComponentPropsWithRef, type CSSProperties } from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\n/*\n * A deterministic pixel avatar: the same seed always draws the same grid, so\n * an agent is recognisable across sessions without anyone uploading a picture.\n *\n * The source painted a canvas every frame. This draws SVG rects instead —\n * crisp at any size and density, rendered on the server with no layout shift,\n * and themable, because every colour is a token mixed at render time rather\n * than an HSL value baked into pixels. The shimmer is CSS: each cell pulses on\n * its own phase, offset along the diagonal so a wave sweeps across the grid,\n * and a few seeded cells sparkle. It is decoration, so reduced motion stops it\n * and leaves the resting grid.\n */\n\nconst PREFIX = \"dowel-pixel-avatar\";\n\n/** Pulse period, from the source's 0.002 rad/ms. */\nconst PULSE_MS = 3142;\n/** Whole-avatar breathing, from 0.0008 rad/ms. */\nconst BREATHE_MS = 7854;\nconst SPARKLE_MS = 1571;\nconst SPARKLE_CHANCE = 0.14;\n\nfunction scaled(ms: number): string {\n return `calc(${ms.toFixed(0)}ms * var(--motion-scale, 1))`;\n}\n\nconst STYLES = `\n.${PREFIX}{display:inline-block;flex-shrink:0;vertical-align:middle;overflow:visible}\n.${PREFIX}[data-animated] [data-slot=pixel-avatar-grid]{transform-box:fill-box;transform-origin:center;animation:${PREFIX}-breathe ${scaled(BREATHE_MS)} ease-in-out infinite}\n.${PREFIX}[data-animated] [data-part=cell]{animation:${PREFIX}-pulse ${scaled(PULSE_MS)} ease-in-out infinite;animation-delay:var(--delay)}\n.${PREFIX}[data-animated] [data-part=cell][data-sparkle]{animation-name:${PREFIX}-sparkle;animation-duration:${scaled(SPARKLE_MS)}}\n@keyframes ${PREFIX}-pulse{0%,100%{opacity:var(--lo)}50%{opacity:var(--hi)}}\n@keyframes ${PREFIX}-sparkle{0%,86%,100%{opacity:var(--lo)}93%{opacity:1}}\n@keyframes ${PREFIX}-breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.03)}}\n`;\n\n/** Semantic hues an avatar can be built from. */\nconst TOKENS = [\"primary\", \"info\", \"success\", \"warning\", \"destructive\"] as const;\n\n/** Simple deterministic string hash. */\nfunction hashSeed(seed: string): number {\n let hash = 0;\n for (const char of seed) {\n hash = ((hash << 5) - hash + (char.codePointAt(0) ?? 0)) | 0;\n }\n return Math.abs(hash);\n}\n\n/** Seeded PRNG (mulberry32), so a seed always draws the same avatar. */\nfunction createRng(seed: number): () => number {\n let state = seed;\n return () => {\n state = (state + 0x6d2b79f5) | 0;\n let t = Math.imul(state ^ (state >>> 15), 1 | state);\n t = (t + Math.imul(t ^ (t >>> 7), 61 | t)) ^ t;\n return ((t ^ (t >>> 14)) >>> 0) / 4294967296;\n };\n}\n\nfunction percent(value: number): string {\n return `${value.toFixed(0)}%`;\n}\n\n/** Three colours in one family: the base token, shaded, tinted and blended. */\nfunction generatePalette(hash: number): { colors: [string, string, string]; base: string } {\n const rng = createRng(hash);\n const index = Math.floor(rng() * TOKENS.length);\n const base = `var(--color-${TOKENS[index] ?? \"primary\"})`;\n const neighbour = `var(--color-${TOKENS[(index + 1 + Math.floor(rng() * 2)) % TOKENS.length] ?? \"info\"})`;\n return {\n base,\n colors: [\n base,\n `color-mix(in oklab, ${base} ${percent(62 + rng() * 20)}, var(--color-foreground))`,\n `color-mix(in oklab, ${base} ${percent(55 + rng() * 25)}, ${neighbour})`,\n ],\n };\n}\n\ninterface Cell {\n x: number;\n y: number;\n color: number;\n /** Resting opacity, from the source's per-cell brightness (0.3–1). */\n lo: number;\n phase: number;\n sparkle: boolean;\n}\n\nfunction generateGrid(hash: number, cells: number): Cell[] {\n const rng = createRng(hash + 1);\n const grid: Cell[] = [];\n for (let y = 0; y < cells; y++) {\n for (let x = 0; x < cells; x++) {\n const brightness = 0.3 + rng() * 0.7;\n grid.push({\n x,\n y,\n color: Math.floor(rng() * 3),\n lo: 0.35 + brightness * 0.5,\n phase: rng(),\n sparkle: rng() < SPARKLE_CHANCE,\n });\n }\n }\n return grid;\n}\n\nconst pixelAvatarVariants = cva(\"\", {\n variants: {\n shape: {\n circle: \"rounded-full\",\n square: \"rounded-[22%]\",\n },\n },\n defaultVariants: {\n shape: \"circle\",\n },\n});\n\nexport interface PixelAvatarProps\n extends\n Omit<ComponentPropsWithRef<\"svg\">, \"children\">,\n VariantProps<typeof pixelAvatarVariants> {\n /** Any string — a name, an id. The same seed always draws the same avatar. */\n seed: string;\n /** Rendered size. A number is pixels; a string is any CSS length. */\n size?: number | string;\n /** Pixels per side. */\n cells?: number;\n /** Shimmer, sparkle and breathe. Stops under reduced motion either way. */\n animated?: boolean;\n /** Replaces the three token-derived colours with any CSS colours. */\n palette?: [string, string, string];\n}\n\n/** A deterministic, gently animated pixel avatar generated from a seed. */\nexport function PixelAvatar({\n className,\n seed,\n size = 64,\n cells = 6,\n animated = true,\n shape = \"circle\",\n palette,\n style,\n ...props\n}: PixelAvatarProps) {\n const clipId = `${PREFIX}-${useId().replace(/:/g, \"\")}`;\n const count = Math.max(2, Math.round(cells));\n const hash = hashSeed(seed);\n const generated = generatePalette(hash);\n const colors = palette ?? generated.colors;\n const base = palette?.[0] ?? generated.base;\n const grid = generateGrid(hash, count);\n const half = count / 2;\n const named = props[\"aria-label\"] != null || props[\"aria-labelledby\"] != null;\n const resolvedSize = typeof size === \"number\" ? `${String(size)}px` : size;\n\n return (\n <>\n <style href={PREFIX} precedence=\"dowel\">\n {STYLES}\n </style>\n <svg\n viewBox={`0 0 ${String(count)} ${String(count)}`}\n data-slot=\"pixel-avatar\"\n data-seed={seed}\n data-animated={animated ? \"\" : undefined}\n role={named ? \"img\" : undefined}\n aria-hidden={named ? undefined : true}\n className={cn(PREFIX, pixelAvatarVariants({ shape }), className)}\n style={{\n width: resolvedSize,\n height: resolvedSize,\n filter: `drop-shadow(0 0 calc(${resolvedSize} * .08) color-mix(in oklab, ${base} 45%, transparent))`,\n ...style,\n }}\n {...props}\n >\n <defs>\n <clipPath id={clipId}>\n {shape === \"square\" ? (\n <rect width={count} height={count} rx={count * 0.22} />\n ) : (\n <circle cx={half} cy={half} r={half} />\n )}\n </clipPath>\n </defs>\n <g clipPath={`url(#${clipId})`}>\n <rect\n data-slot=\"pixel-avatar-background\"\n width={count}\n height={count}\n fill={`color-mix(in oklab, ${base} 22%, var(--color-background))`}\n />\n <g data-slot=\"pixel-avatar-grid\" shapeRendering=\"crispEdges\">\n {grid.map((cell) => {\n // One pulse keyframe, phased per cell and offset along the\n // diagonal: the source's pulse and wave in a single animation.\n const offset = ((cell.phase + (cell.x + cell.y) / 6) % 1) * PULSE_MS;\n return (\n <rect\n key={`${String(cell.x)}-${String(cell.y)}`}\n data-part=\"cell\"\n data-sparkle={cell.sparkle ? \"\" : undefined}\n x={cell.x}\n y={cell.y}\n // A hair of overlap hides the seams antialiasing leaves.\n width={1.02}\n height={1.02}\n fill={colors[cell.color]}\n opacity={cell.lo}\n style={\n {\n \"--lo\": cell.lo.toFixed(3),\n \"--hi\": Math.min(1, cell.lo + 0.25).toFixed(3),\n \"--delay\": `calc(${(-offset).toFixed(0)}ms * var(--motion-scale, 1))`,\n } as CSSProperties\n }\n />\n );\n })}\n </g>\n </g>\n <circle\n data-slot=\"pixel-avatar-ring\"\n cx={half}\n cy={half}\n r={half - 0.04}\n fill=\"none\"\n stroke={base}\n strokeOpacity={shape === \"square\" ? 0 : 0.2}\n strokeWidth={0.08}\n />\n </svg>\n </>\n );\n}\n\nexport { pixelAvatarVariants };\n"],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { defineMeta } from "../../registry/schema.js";
|
|
2
|
+
//#region src/components/product-card/meta.ts
|
|
3
|
+
const meta = defineMeta({
|
|
4
|
+
name: "product-card",
|
|
5
|
+
title: "Product Card",
|
|
6
|
+
description: "A shop tile with image zoom, badge, half-star rating, discount pricing, a wishlist toggle and an add-to-cart confirmation.",
|
|
7
|
+
category: "display",
|
|
8
|
+
status: "beta",
|
|
9
|
+
dependencies: [],
|
|
10
|
+
registryDependencies: ["badge", "morph-button"],
|
|
11
|
+
files: ["product-card.tsx"],
|
|
12
|
+
a11y: "The card is an article named by its title; with href the title becomes a link stretched over the card while the buttons stay above it. The rating is one image labelled \"Rated 4.5 out of 5\". Prices read in order (\"Now $129.00, was $179.00, 28% off\") rather than relying on strikethrough and colour. The wishlist heart is a toggle with aria-pressed and a stable name, always visible rather than revealed on hover. Add to cart morphs to \"Added\", announces it through a polite status region and reverts, without ever disabling the button. The entrance animation is skipped under reduced motion."
|
|
13
|
+
});
|
|
14
|
+
//#endregion
|
|
15
|
+
export { meta };
|
|
16
|
+
|
|
17
|
+
//# sourceMappingURL=meta.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"meta.js","names":[],"sources":["../../../src/components/product-card/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"product-card\",\n title: \"Product Card\",\n description:\n \"A shop tile with image zoom, badge, half-star rating, discount pricing, a wishlist toggle and an add-to-cart confirmation.\",\n category: \"display\",\n status: \"beta\",\n dependencies: [],\n registryDependencies: [\"badge\", \"morph-button\"],\n files: [\"product-card.tsx\"],\n a11y:\n \"The card is an article named by its title; with href the title becomes a link stretched over the card while \" +\n 'the buttons stay above it. The rating is one image labelled \"Rated 4.5 out of 5\". Prices read in order ' +\n '(\"Now $129.00, was $179.00, 28% off\") rather than relying on strikethrough and colour. The wishlist heart is a ' +\n \"toggle with aria-pressed and a stable name, always visible rather than revealed on hover. Add to cart \" +\n 'morphs to \"Added\", announces it through a polite status region and reverts, without ever disabling the ' +\n \"button. The entrance animation is skipped under reduced motion.\",\n});\n"],"mappings":";;AAEA,MAAa,OAAO,WAAW;CAC7B,MAAM;CACN,OAAO;CACP,aACE;CACF,UAAU;CACV,QAAQ;CACR,cAAc,CAAC;CACf,sBAAsB,CAAC,SAAS,cAAc;CAC9C,OAAO,CAAC,kBAAkB;CAC1B,MACE;AAMJ,CAAC"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { BadgeProps } from "../badge/badge.js";
|
|
2
|
+
import "../badge/index.js";
|
|
3
|
+
import { ComponentPropsWithRef, ReactNode } from "react";
|
|
4
|
+
//#region src/components/product-card/product-card.d.ts
|
|
5
|
+
interface ProductCardProps extends Omit<ComponentPropsWithRef<"article">, "title"> {
|
|
6
|
+
/** Product name. Names the card, the cart button and the wishlist toggle. */
|
|
7
|
+
title: string;
|
|
8
|
+
/** Image URL. */
|
|
9
|
+
image: string;
|
|
10
|
+
/** Alt text for the image. Empty by default: the title beside it already names the product. */
|
|
11
|
+
imageAlt?: string;
|
|
12
|
+
/** Makes the title a link covering the whole card; the buttons stay on top of it. */
|
|
13
|
+
href?: string;
|
|
14
|
+
price: number;
|
|
15
|
+
/** A higher earlier price. Shows struck through, with the discount. */
|
|
16
|
+
originalPrice?: number;
|
|
17
|
+
/** ISO 4217 code. */
|
|
18
|
+
currency?: string;
|
|
19
|
+
/** Locale for number formatting. Defaults to the reader's. */
|
|
20
|
+
locale?: string;
|
|
21
|
+
/** 0–5, shown to the nearest half star. */
|
|
22
|
+
rating?: number;
|
|
23
|
+
/** A label over the image — "Sale", "New", "Limited". */
|
|
24
|
+
badge?: ReactNode;
|
|
25
|
+
/** Overrides the badge colour chosen from its text. */
|
|
26
|
+
badgeVariant?: BadgeProps["variant"];
|
|
27
|
+
/** Called when "Add to cart" is pressed. The button confirms and reverts on its own. */
|
|
28
|
+
onAddToCart?: () => void;
|
|
29
|
+
/** Controlled wishlist state. */
|
|
30
|
+
wishlisted?: boolean;
|
|
31
|
+
/** Initial wishlist state when uncontrolled. */
|
|
32
|
+
defaultWishlisted?: boolean;
|
|
33
|
+
onWishlistChange?: (wishlisted: boolean) => void;
|
|
34
|
+
/** Plays the entrance animation (tied to scrolling into view where supported). */
|
|
35
|
+
animateIn?: boolean;
|
|
36
|
+
/** Extra content under the price, before the button. */
|
|
37
|
+
children?: ReactNode;
|
|
38
|
+
}
|
|
39
|
+
/** A product tile: image, name, rating, price, add-to-cart and wishlist. */
|
|
40
|
+
declare function ProductCard({ className, title, image, imageAlt, href, price, originalPrice, currency, locale, rating, badge, badgeVariant, onAddToCart, wishlisted, defaultWishlisted, onWishlistChange, animateIn, children, ...props }: ProductCardProps): import("react").JSX.Element;
|
|
41
|
+
//#endregion
|
|
42
|
+
export { ProductCard, ProductCardProps };
|
|
43
|
+
//# sourceMappingURL=product-card.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"product-card.d.ts","names":[],"sources":["../../../src/components/product-card/product-card.tsx"],"mappings":";;;;UAgJiB,yBAAyB,KAAK;;EAE7C;;EAEA;;EAEA;;EAEA;EACA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA,QAAQ;;EAER,eAAe;;EAEf;;EAEA;;EAEA;EACA,oBAAoB;;EAEpB;;EAEA,WAAW;;;iBAIG,cACd,WACA,OACA,OACA,UACA,MACA,OACA,eACA,UACA,QACA,QACA,OACA,cACA,aACA,YACA,mBACA,kBACA,WACA,aACG,SACF,mCAAgB,IAAA"}
|
|
@@ -0,0 +1,249 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { focusRing } from "../../lib/styles.js";
|
|
3
|
+
import { cn } from "../../lib/utils.js";
|
|
4
|
+
import { Badge } from "../badge/badge.js";
|
|
5
|
+
import { MorphButton } from "../morph-button/morph-button.js";
|
|
6
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
7
|
+
import { useId, useState } from "react";
|
|
8
|
+
//#region src/components/product-card/product-card.tsx
|
|
9
|
+
const PREFIX = "dowel-product-card";
|
|
10
|
+
const STYLES = `
|
|
11
|
+
@keyframes ${PREFIX}-in{from{opacity:0;translate:0 20px;scale:.97}}
|
|
12
|
+
@keyframes ${PREFIX}-pop{from{opacity:0;scale:.6}}
|
|
13
|
+
[data-slot=product-card][data-animate]{animation:${PREFIX}-in calc(320ms * var(--motion-scale, 1)) var(--ease-out-quint) both}
|
|
14
|
+
[data-slot=product-card][data-animate] [data-slot=product-card-badge]{animation:${PREFIX}-pop calc(320ms * var(--motion-scale, 1)) var(--ease-overshoot) calc(250ms * var(--motion-scale, 1)) both}
|
|
15
|
+
@supports (animation-timeline:view()){
|
|
16
|
+
[data-slot=product-card][data-animate],[data-slot=product-card][data-animate] [data-slot=product-card-badge]{animation-timeline:view();animation-delay:0s}
|
|
17
|
+
[data-slot=product-card][data-animate]{animation-range:entry 0% entry 60%}
|
|
18
|
+
[data-slot=product-card][data-animate] [data-slot=product-card-badge]{animation-range:entry 30% entry 90%}
|
|
19
|
+
}
|
|
20
|
+
@media (prefers-reduced-motion:reduce){[data-slot=product-card][data-animate],[data-slot=product-card][data-animate] [data-slot=product-card-badge]{animation:none}}
|
|
21
|
+
`;
|
|
22
|
+
const STAR = "M12 2.5l2.9 6 6.6.9-4.8 4.6 1.2 6.5L12 17.4l-5.9 3.1 1.2-6.5L2.5 9.4l6.6-.9z";
|
|
23
|
+
function Star({ fill, gradient }) {
|
|
24
|
+
return /* @__PURE__ */ jsxs("svg", {
|
|
25
|
+
viewBox: "0 0 24 24",
|
|
26
|
+
"aria-hidden": "true",
|
|
27
|
+
className: cn("size-3.5", fill === "empty" ? "text-border-strong" : "text-warning"),
|
|
28
|
+
children: [fill === "half" ? /* @__PURE__ */ jsx("defs", { children: /* @__PURE__ */ jsxs("linearGradient", {
|
|
29
|
+
id: gradient,
|
|
30
|
+
children: [/* @__PURE__ */ jsx("stop", {
|
|
31
|
+
offset: "50%",
|
|
32
|
+
stopColor: "currentColor"
|
|
33
|
+
}), /* @__PURE__ */ jsx("stop", {
|
|
34
|
+
offset: "50%",
|
|
35
|
+
stopColor: "transparent"
|
|
36
|
+
})]
|
|
37
|
+
}) }) : null, /* @__PURE__ */ jsx("path", {
|
|
38
|
+
d: STAR,
|
|
39
|
+
fill: fill === "full" ? "currentColor" : fill === "half" ? `url(#${gradient})` : "none",
|
|
40
|
+
stroke: "currentColor",
|
|
41
|
+
strokeWidth: fill === "full" ? 0 : 1.5,
|
|
42
|
+
strokeLinejoin: "round"
|
|
43
|
+
})]
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
/** Rounded to the nearest half star, as the source did. */
|
|
47
|
+
function Rating({ value }) {
|
|
48
|
+
const gradient = `${PREFIX}-half-${useId().replace(/:/g, "")}`;
|
|
49
|
+
const halves = Math.round(Math.min(Math.max(value, 0), 5) * 2);
|
|
50
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
51
|
+
"data-slot": "product-card-rating",
|
|
52
|
+
className: "flex items-center gap-0.5",
|
|
53
|
+
children: [/* @__PURE__ */ jsx("span", {
|
|
54
|
+
role: "img",
|
|
55
|
+
"aria-label": `Rated ${String(value)} out of 5`,
|
|
56
|
+
className: "flex gap-0.5",
|
|
57
|
+
children: Array.from({ length: 5 }, (_, i) => /* @__PURE__ */ jsx(Star, {
|
|
58
|
+
gradient,
|
|
59
|
+
fill: halves >= (i + 1) * 2 ? "full" : halves === i * 2 + 1 ? "half" : "empty"
|
|
60
|
+
}, i))
|
|
61
|
+
}), /* @__PURE__ */ jsx("span", {
|
|
62
|
+
"aria-hidden": "true",
|
|
63
|
+
className: "ms-1 text-xs font-medium text-muted-foreground",
|
|
64
|
+
children: value
|
|
65
|
+
})]
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
function CartIcon() {
|
|
69
|
+
return /* @__PURE__ */ jsx("svg", {
|
|
70
|
+
viewBox: "0 0 24 24",
|
|
71
|
+
fill: "none",
|
|
72
|
+
stroke: "currentColor",
|
|
73
|
+
strokeWidth: 2,
|
|
74
|
+
"aria-hidden": "true",
|
|
75
|
+
children: /* @__PURE__ */ jsx("path", {
|
|
76
|
+
d: "M6 7h12l-1 13H7L6 7zm3 0V6a3 3 0 0 1 6 0v1",
|
|
77
|
+
strokeLinecap: "round",
|
|
78
|
+
strokeLinejoin: "round"
|
|
79
|
+
})
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
function CheckIcon() {
|
|
83
|
+
return /* @__PURE__ */ jsx("svg", {
|
|
84
|
+
viewBox: "0 0 24 24",
|
|
85
|
+
fill: "none",
|
|
86
|
+
stroke: "currentColor",
|
|
87
|
+
strokeWidth: 2.5,
|
|
88
|
+
"aria-hidden": "true",
|
|
89
|
+
children: /* @__PURE__ */ jsx("path", {
|
|
90
|
+
d: "M5 13l4 4L19 7",
|
|
91
|
+
strokeLinecap: "round",
|
|
92
|
+
strokeLinejoin: "round"
|
|
93
|
+
})
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
function HeartIcon() {
|
|
97
|
+
return /* @__PURE__ */ jsx("svg", {
|
|
98
|
+
viewBox: "0 0 24 24",
|
|
99
|
+
fill: "none",
|
|
100
|
+
stroke: "currentColor",
|
|
101
|
+
strokeWidth: 2,
|
|
102
|
+
"aria-hidden": "true",
|
|
103
|
+
children: /* @__PURE__ */ jsx("path", {
|
|
104
|
+
d: "M21 8.25c0-2.49-2.1-4.5-4.69-4.5-1.93 0-3.6 1.13-4.31 2.73-.72-1.6-2.38-2.73-4.31-2.73C5.1 3.75 3 5.76 3 8.25c0 7.22 9 12 9 12s9-4.78 9-12z",
|
|
105
|
+
strokeLinecap: "round",
|
|
106
|
+
strokeLinejoin: "round"
|
|
107
|
+
})
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
/** "Sale" reads as destructive and "New" as success, as in the source; anything else is primary. */
|
|
111
|
+
function badgeTone(badge) {
|
|
112
|
+
const text = typeof badge === "string" ? badge.toLowerCase() : "";
|
|
113
|
+
if (text === "sale") return "destructive";
|
|
114
|
+
if (text === "new") return "success";
|
|
115
|
+
return "default";
|
|
116
|
+
}
|
|
117
|
+
/** A product tile: image, name, rating, price, add-to-cart and wishlist. */
|
|
118
|
+
function ProductCard({ className, title, image, imageAlt = "", href, price, originalPrice, currency = "USD", locale, rating, badge, badgeVariant, onAddToCart, wishlisted, defaultWishlisted = false, onWishlistChange, animateIn = true, children, ...props }) {
|
|
119
|
+
const titleId = `${PREFIX}-${useId().replace(/:/g, "")}`;
|
|
120
|
+
const [uncontrolledWish, setUncontrolledWish] = useState(defaultWishlisted);
|
|
121
|
+
const wished = wishlisted ?? uncontrolledWish;
|
|
122
|
+
const format = (value) => new Intl.NumberFormat(locale, {
|
|
123
|
+
style: "currency",
|
|
124
|
+
currency
|
|
125
|
+
}).format(value);
|
|
126
|
+
const discounted = originalPrice !== void 0 && originalPrice > price;
|
|
127
|
+
const discount = discounted ? Math.round((originalPrice - price) / originalPrice * 100) : 0;
|
|
128
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("style", {
|
|
129
|
+
href: PREFIX,
|
|
130
|
+
precedence: "dowel",
|
|
131
|
+
children: STYLES
|
|
132
|
+
}), /* @__PURE__ */ jsxs("article", {
|
|
133
|
+
"aria-labelledby": titleId,
|
|
134
|
+
"data-slot": "product-card",
|
|
135
|
+
"data-animate": animateIn || void 0,
|
|
136
|
+
className: cn("group/product relative flex w-full flex-col overflow-hidden rounded-2xl border border-border bg-card text-card-foreground shadow-sm", "transition-shadow duration-[var(--duration-normal)] ease-[var(--ease-out-quint)] hover:shadow-xl", className),
|
|
137
|
+
...props,
|
|
138
|
+
children: [/* @__PURE__ */ jsxs("div", {
|
|
139
|
+
className: "relative aspect-square overflow-hidden bg-muted",
|
|
140
|
+
children: [
|
|
141
|
+
/* @__PURE__ */ jsx("img", {
|
|
142
|
+
src: image,
|
|
143
|
+
alt: imageAlt,
|
|
144
|
+
draggable: false,
|
|
145
|
+
className: "size-full object-cover transition-transform duration-[var(--duration-slower)] ease-[var(--ease-out-quint)] group-hover/product:scale-105"
|
|
146
|
+
}),
|
|
147
|
+
badge != null ? /* @__PURE__ */ jsx(Badge, {
|
|
148
|
+
"data-slot": "product-card-badge",
|
|
149
|
+
variant: badgeVariant ?? badgeTone(badge),
|
|
150
|
+
className: "absolute start-3 top-3 shadow-sm",
|
|
151
|
+
children: badge
|
|
152
|
+
}) : null,
|
|
153
|
+
/* @__PURE__ */ jsx(MorphButton, {
|
|
154
|
+
"data-slot": "product-card-wishlist",
|
|
155
|
+
"aria-label": `Save ${title} to wishlist`,
|
|
156
|
+
icon: /* @__PURE__ */ jsx(HeartIcon, {}),
|
|
157
|
+
tone: "destructive",
|
|
158
|
+
fillOnActive: true,
|
|
159
|
+
size: "icon-sm",
|
|
160
|
+
active: wished,
|
|
161
|
+
onActiveChange: (next) => {
|
|
162
|
+
if (wishlisted === void 0) setUncontrolledWish(next);
|
|
163
|
+
onWishlistChange?.(next);
|
|
164
|
+
},
|
|
165
|
+
className: "absolute end-3 top-3 z-10 rounded-full bg-background/80 backdrop-blur-sm hover:bg-background"
|
|
166
|
+
})
|
|
167
|
+
]
|
|
168
|
+
}), /* @__PURE__ */ jsxs("div", {
|
|
169
|
+
className: "flex flex-1 flex-col gap-2 p-4",
|
|
170
|
+
children: [
|
|
171
|
+
/* @__PURE__ */ jsx("h3", {
|
|
172
|
+
id: titleId,
|
|
173
|
+
className: "line-clamp-1 text-sm font-semibold tracking-tight",
|
|
174
|
+
children: href ? /* @__PURE__ */ jsx("a", {
|
|
175
|
+
href,
|
|
176
|
+
className: cn("rounded-sm after:absolute after:inset-0 after:content-['']", focusRing),
|
|
177
|
+
children: title
|
|
178
|
+
}) : title
|
|
179
|
+
}),
|
|
180
|
+
rating !== void 0 ? /* @__PURE__ */ jsx(Rating, { value: rating }) : null,
|
|
181
|
+
/* @__PURE__ */ jsxs("p", {
|
|
182
|
+
"data-slot": "product-card-price",
|
|
183
|
+
className: "flex flex-wrap items-baseline gap-2",
|
|
184
|
+
children: [
|
|
185
|
+
/* @__PURE__ */ jsx("span", {
|
|
186
|
+
className: "sr-only",
|
|
187
|
+
children: discounted ? "Now " : "Price "
|
|
188
|
+
}),
|
|
189
|
+
/* @__PURE__ */ jsx("span", {
|
|
190
|
+
className: "text-xl font-bold tracking-tight",
|
|
191
|
+
children: format(price)
|
|
192
|
+
}),
|
|
193
|
+
discounted ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
194
|
+
/* @__PURE__ */ jsx("span", {
|
|
195
|
+
className: "sr-only",
|
|
196
|
+
children: ", was "
|
|
197
|
+
}),
|
|
198
|
+
/* @__PURE__ */ jsx("s", {
|
|
199
|
+
className: "text-sm text-muted-foreground",
|
|
200
|
+
children: format(originalPrice)
|
|
201
|
+
}),
|
|
202
|
+
/* @__PURE__ */ jsxs(Badge, {
|
|
203
|
+
variant: "destructive",
|
|
204
|
+
size: "sm",
|
|
205
|
+
className: "rounded-md",
|
|
206
|
+
children: [/* @__PURE__ */ jsxs("span", {
|
|
207
|
+
"aria-hidden": "true",
|
|
208
|
+
children: [
|
|
209
|
+
"-",
|
|
210
|
+
discount,
|
|
211
|
+
"%"
|
|
212
|
+
]
|
|
213
|
+
}), /* @__PURE__ */ jsxs("span", {
|
|
214
|
+
className: "sr-only",
|
|
215
|
+
children: [
|
|
216
|
+
", ",
|
|
217
|
+
discount,
|
|
218
|
+
"% off"
|
|
219
|
+
]
|
|
220
|
+
})]
|
|
221
|
+
})
|
|
222
|
+
] }) : null
|
|
223
|
+
]
|
|
224
|
+
}),
|
|
225
|
+
children,
|
|
226
|
+
/* @__PURE__ */ jsx("div", {
|
|
227
|
+
className: "mt-auto pt-2",
|
|
228
|
+
children: /* @__PURE__ */ jsx(MorphButton, {
|
|
229
|
+
"data-slot": "product-card-add",
|
|
230
|
+
trigger: "transient",
|
|
231
|
+
variant: "primary",
|
|
232
|
+
icon: /* @__PURE__ */ jsx(CartIcon, {}),
|
|
233
|
+
activeIcon: /* @__PURE__ */ jsx(CheckIcon, {}),
|
|
234
|
+
label: "Add to cart",
|
|
235
|
+
activeLabel: "Added",
|
|
236
|
+
"aria-label": `Add ${title} to cart`,
|
|
237
|
+
announcement: `${title} added to cart`,
|
|
238
|
+
onClick: () => onAddToCart?.(),
|
|
239
|
+
className: "relative z-10 w-full data-[state=active]:bg-success data-[state=active]:text-success-foreground"
|
|
240
|
+
})
|
|
241
|
+
})
|
|
242
|
+
]
|
|
243
|
+
})]
|
|
244
|
+
})] });
|
|
245
|
+
}
|
|
246
|
+
//#endregion
|
|
247
|
+
export { ProductCard };
|
|
248
|
+
|
|
249
|
+
//# sourceMappingURL=product-card.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"product-card.js","names":[],"sources":["../../../src/components/product-card/product-card.tsx"],"sourcesContent":["\"use client\";\n\n// Ported from SmoothUI Product Card (MIT, © 2024 Eduardo Calvo). See THIRD_PARTY_NOTICES.md.\nimport { useId, useState, type ComponentPropsWithRef, type ReactNode } from \"react\";\n\nimport { Badge, type BadgeProps } from \"@/components/badge\";\nimport { MorphButton } from \"@/components/morph-button\";\nimport { focusRing } from \"@/lib/styles\";\nimport { cn } from \"@/lib/utils\";\n\n/*\n * A shop card assembled from the library rather than re-drawn: the badges are\n * Badge, the add-to-cart confirmation is MorphButton's `transient` mode (it\n * morphs to \"Added\", announces it, and reverts on its own), and the wishlist\n * heart is MorphButton's `toggle` mode, exposed with aria-pressed.\n *\n * The source used `motion` for three things CSS does honestly: the entrance\n * (a keyframe, tied to scroll where the browser supports view timelines), the\n * image zoom and the button press. So there is no animation library here.\n */\n\nconst PREFIX = \"dowel-product-card\";\n\nconst STYLES = `\n@keyframes ${PREFIX}-in{from{opacity:0;translate:0 20px;scale:.97}}\n@keyframes ${PREFIX}-pop{from{opacity:0;scale:.6}}\n[data-slot=product-card][data-animate]{animation:${PREFIX}-in calc(320ms * var(--motion-scale, 1)) var(--ease-out-quint) both}\n[data-slot=product-card][data-animate] [data-slot=product-card-badge]{animation:${PREFIX}-pop calc(320ms * var(--motion-scale, 1)) var(--ease-overshoot) calc(250ms * var(--motion-scale, 1)) both}\n@supports (animation-timeline:view()){\n[data-slot=product-card][data-animate],[data-slot=product-card][data-animate] [data-slot=product-card-badge]{animation-timeline:view();animation-delay:0s}\n[data-slot=product-card][data-animate]{animation-range:entry 0% entry 60%}\n[data-slot=product-card][data-animate] [data-slot=product-card-badge]{animation-range:entry 30% entry 90%}\n}\n@media (prefers-reduced-motion:reduce){[data-slot=product-card][data-animate],[data-slot=product-card][data-animate] [data-slot=product-card-badge]{animation:none}}\n`;\n\nconst STAR = \"M12 2.5l2.9 6 6.6.9-4.8 4.6 1.2 6.5L12 17.4l-5.9 3.1 1.2-6.5L2.5 9.4l6.6-.9z\";\n\nfunction Star({ fill, gradient }: { fill: \"full\" | \"half\" | \"empty\"; gradient: string }) {\n return (\n <svg\n viewBox=\"0 0 24 24\"\n aria-hidden=\"true\"\n className={cn(\"size-3.5\", fill === \"empty\" ? \"text-border-strong\" : \"text-warning\")}\n >\n {fill === \"half\" ? (\n <defs>\n <linearGradient id={gradient}>\n <stop offset=\"50%\" stopColor=\"currentColor\" />\n <stop offset=\"50%\" stopColor=\"transparent\" />\n </linearGradient>\n </defs>\n ) : null}\n <path\n d={STAR}\n fill={fill === \"full\" ? \"currentColor\" : fill === \"half\" ? `url(#${gradient})` : \"none\"}\n stroke=\"currentColor\"\n strokeWidth={fill === \"full\" ? 0 : 1.5}\n strokeLinejoin=\"round\"\n />\n </svg>\n );\n}\n\n/** Rounded to the nearest half star, as the source did. */\nfunction Rating({ value }: { value: number }) {\n const gradient = `${PREFIX}-half-${useId().replace(/:/g, \"\")}`;\n const halves = Math.round(Math.min(Math.max(value, 0), 5) * 2);\n return (\n <div data-slot=\"product-card-rating\" className=\"flex items-center gap-0.5\">\n <span role=\"img\" aria-label={`Rated ${String(value)} out of 5`} className=\"flex gap-0.5\">\n {Array.from({ length: 5 }, (_, i) => (\n <Star\n key={i}\n gradient={gradient}\n fill={halves >= (i + 1) * 2 ? \"full\" : halves === i * 2 + 1 ? \"half\" : \"empty\"}\n />\n ))}\n </span>\n <span aria-hidden=\"true\" className=\"ms-1 text-xs font-medium text-muted-foreground\">\n {value}\n </span>\n </div>\n );\n}\n\nfunction CartIcon() {\n return (\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={2}\n aria-hidden=\"true\"\n >\n <path\n d=\"M6 7h12l-1 13H7L6 7zm3 0V6a3 3 0 0 1 6 0v1\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n );\n}\n\nfunction CheckIcon() {\n return (\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={2.5}\n aria-hidden=\"true\"\n >\n <path d=\"M5 13l4 4L19 7\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n </svg>\n );\n}\n\nfunction HeartIcon() {\n return (\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={2}\n aria-hidden=\"true\"\n >\n <path\n d=\"M21 8.25c0-2.49-2.1-4.5-4.69-4.5-1.93 0-3.6 1.13-4.31 2.73-.72-1.6-2.38-2.73-4.31-2.73C5.1 3.75 3 5.76 3 8.25c0 7.22 9 12 9 12s9-4.78 9-12z\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n );\n}\n\n/** \"Sale\" reads as destructive and \"New\" as success, as in the source; anything else is primary. */\nfunction badgeTone(badge: ReactNode): BadgeProps[\"variant\"] {\n const text = typeof badge === \"string\" ? badge.toLowerCase() : \"\";\n if (text === \"sale\") return \"destructive\";\n if (text === \"new\") return \"success\";\n return \"default\";\n}\n\nexport interface ProductCardProps extends Omit<ComponentPropsWithRef<\"article\">, \"title\"> {\n /** Product name. Names the card, the cart button and the wishlist toggle. */\n title: string;\n /** Image URL. */\n image: string;\n /** Alt text for the image. Empty by default: the title beside it already names the product. */\n imageAlt?: string;\n /** Makes the title a link covering the whole card; the buttons stay on top of it. */\n href?: string;\n price: number;\n /** A higher earlier price. Shows struck through, with the discount. */\n originalPrice?: number;\n /** ISO 4217 code. */\n currency?: string;\n /** Locale for number formatting. Defaults to the reader's. */\n locale?: string;\n /** 0–5, shown to the nearest half star. */\n rating?: number;\n /** A label over the image — \"Sale\", \"New\", \"Limited\". */\n badge?: ReactNode;\n /** Overrides the badge colour chosen from its text. */\n badgeVariant?: BadgeProps[\"variant\"];\n /** Called when \"Add to cart\" is pressed. The button confirms and reverts on its own. */\n onAddToCart?: () => void;\n /** Controlled wishlist state. */\n wishlisted?: boolean;\n /** Initial wishlist state when uncontrolled. */\n defaultWishlisted?: boolean;\n onWishlistChange?: (wishlisted: boolean) => void;\n /** Plays the entrance animation (tied to scrolling into view where supported). */\n animateIn?: boolean;\n /** Extra content under the price, before the button. */\n children?: ReactNode;\n}\n\n/** A product tile: image, name, rating, price, add-to-cart and wishlist. */\nexport function ProductCard({\n className,\n title,\n image,\n imageAlt = \"\",\n href,\n price,\n originalPrice,\n currency = \"USD\",\n locale,\n rating,\n badge,\n badgeVariant,\n onAddToCart,\n wishlisted,\n defaultWishlisted = false,\n onWishlistChange,\n animateIn = true,\n children,\n ...props\n}: ProductCardProps) {\n const titleId = `${PREFIX}-${useId().replace(/:/g, \"\")}`;\n const [uncontrolledWish, setUncontrolledWish] = useState(defaultWishlisted);\n const wished = wishlisted ?? uncontrolledWish;\n const format = (value: number) =>\n new Intl.NumberFormat(locale, { style: \"currency\", currency }).format(value);\n const discounted = originalPrice !== undefined && originalPrice > price;\n const discount = discounted ? Math.round(((originalPrice - price) / originalPrice) * 100) : 0;\n\n return (\n <>\n <style href={PREFIX} precedence=\"dowel\">\n {STYLES}\n </style>\n <article\n aria-labelledby={titleId}\n data-slot=\"product-card\"\n data-animate={animateIn || undefined}\n className={cn(\n \"group/product relative flex w-full flex-col overflow-hidden rounded-2xl border border-border bg-card text-card-foreground shadow-sm\",\n \"transition-shadow duration-[var(--duration-normal)] ease-[var(--ease-out-quint)] hover:shadow-xl\",\n className,\n )}\n {...props}\n >\n <div className=\"relative aspect-square overflow-hidden bg-muted\">\n <img\n src={image}\n alt={imageAlt}\n draggable={false}\n className=\"size-full object-cover transition-transform duration-[var(--duration-slower)] ease-[var(--ease-out-quint)] group-hover/product:scale-105\"\n />\n {badge != null ? (\n <Badge\n data-slot=\"product-card-badge\"\n variant={badgeVariant ?? badgeTone(badge)}\n className=\"absolute start-3 top-3 shadow-sm\"\n >\n {badge}\n </Badge>\n ) : null}\n <MorphButton\n data-slot=\"product-card-wishlist\"\n aria-label={`Save ${title} to wishlist`}\n icon={<HeartIcon />}\n tone=\"destructive\"\n fillOnActive\n size=\"icon-sm\"\n active={wished}\n onActiveChange={(next) => {\n if (wishlisted === undefined) setUncontrolledWish(next);\n onWishlistChange?.(next);\n }}\n className=\"absolute end-3 top-3 z-10 rounded-full bg-background/80 backdrop-blur-sm hover:bg-background\"\n />\n </div>\n\n <div className=\"flex flex-1 flex-col gap-2 p-4\">\n <h3 id={titleId} className=\"line-clamp-1 text-sm font-semibold tracking-tight\">\n {href ? (\n <a\n href={href}\n className={cn(\n \"rounded-sm after:absolute after:inset-0 after:content-['']\",\n focusRing,\n )}\n >\n {title}\n </a>\n ) : (\n title\n )}\n </h3>\n\n {rating !== undefined ? <Rating value={rating} /> : null}\n\n <p data-slot=\"product-card-price\" className=\"flex flex-wrap items-baseline gap-2\">\n <span className=\"sr-only\">{discounted ? \"Now \" : \"Price \"}</span>\n <span className=\"text-xl font-bold tracking-tight\">{format(price)}</span>\n {discounted ? (\n <>\n <span className=\"sr-only\">, was </span>\n <s className=\"text-sm text-muted-foreground\">{format(originalPrice)}</s>\n <Badge variant=\"destructive\" size=\"sm\" className=\"rounded-md\">\n <span aria-hidden=\"true\">-{discount}%</span>\n <span className=\"sr-only\">, {discount}% off</span>\n </Badge>\n </>\n ) : null}\n </p>\n\n {children}\n\n <div className=\"mt-auto pt-2\">\n <MorphButton\n data-slot=\"product-card-add\"\n trigger=\"transient\"\n variant=\"primary\"\n icon={<CartIcon />}\n activeIcon={<CheckIcon />}\n label=\"Add to cart\"\n activeLabel=\"Added\"\n aria-label={`Add ${title} to cart`}\n announcement={`${title} added to cart`}\n onClick={() => onAddToCart?.()}\n className=\"relative z-10 w-full data-[state=active]:bg-success data-[state=active]:text-success-foreground\"\n />\n </div>\n </div>\n </article>\n </>\n );\n}\n"],"mappings":"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"}
|
|
@@ -9,7 +9,7 @@ const meta = defineMeta({
|
|
|
9
9
|
dependencies: ["class-variance-authority", "radix-ui"],
|
|
10
10
|
registryDependencies: [],
|
|
11
11
|
files: ["progress.tsx"],
|
|
12
|
-
a11y: "Exposed as role=\"progressbar\" with aria-valuenow, and give it a name with aria-label or aria-labelledby. Omitting `value` marks it indeterminate, which is announced differently from zero. Show the percentage in text as well — the bar alone is not readable at a glance for everyone."
|
|
12
|
+
a11y: "Exposed as role=\"progressbar\" with aria-valuenow, and give it a name with aria-label or aria-labelledby. Omitting `value` marks it indeterminate, which is announced differently from zero. Show the percentage in text as well — the bar alone is not readable at a glance for everyone. The optional stripe and shine effects are decoration: they stop under reduced motion and never apply to an indeterminate bar."
|
|
13
13
|
});
|
|
14
14
|
//#endregion
|
|
15
15
|
export { meta };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meta.js","names":[],"sources":["../../../src/components/progress/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"progress\",\n title: \"Progress\",\n description: \"Shows how far along a task is, or that one is running at all.\",\n category: \"feedback\",\n status: \"stable\",\n dependencies: [\"class-variance-authority\", \"radix-ui\"],\n registryDependencies: [],\n files: [\"progress.tsx\"],\n a11y:\n 'Exposed as role=\"progressbar\" with aria-valuenow, and give it a name with aria-label or ' +\n \"aria-labelledby. Omitting `value` marks it indeterminate, which is announced differently \" +\n \"from zero. Show the percentage in text as well — the bar alone is not readable at a glance \" +\n \"for everyone.\",\n});\n"],"mappings":";;AAEA,MAAa,OAAO,WAAW;CAC7B,MAAM;CACN,OAAO;CACP,aAAa;CACb,UAAU;CACV,QAAQ;CACR,cAAc,CAAC,4BAA4B,UAAU;CACrD,sBAAsB,CAAC;CACvB,OAAO,CAAC,cAAc;CACtB,MACE;
|
|
1
|
+
{"version":3,"file":"meta.js","names":[],"sources":["../../../src/components/progress/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"progress\",\n title: \"Progress\",\n description: \"Shows how far along a task is, or that one is running at all.\",\n category: \"feedback\",\n status: \"stable\",\n dependencies: [\"class-variance-authority\", \"radix-ui\"],\n registryDependencies: [],\n files: [\"progress.tsx\"],\n a11y:\n 'Exposed as role=\"progressbar\" with aria-valuenow, and give it a name with aria-label or ' +\n \"aria-labelledby. Omitting `value` marks it indeterminate, which is announced differently \" +\n \"from zero. Show the percentage in text as well — the bar alone is not readable at a glance \" +\n \"for everyone. The optional stripe and shine effects are decoration: they stop under \" +\n \"reduced motion and never apply to an indeterminate bar.\",\n});\n"],"mappings":";;AAEA,MAAa,OAAO,WAAW;CAC7B,MAAM;CACN,OAAO;CACP,aAAa;CACb,UAAU;CACV,QAAQ;CACR,cAAc,CAAC,4BAA4B,UAAU;CACrD,sBAAsB,CAAC;CACvB,OAAO,CAAC,cAAc;CACtB,MACE;AAKJ,CAAC"}
|
|
@@ -6,7 +6,26 @@ declare const progressVariants: (props?: ({
|
|
|
6
6
|
size?: "sm" | "md" | "lg" | null | undefined;
|
|
7
7
|
tone?: "primary" | "success" | "warning" | "destructive" | null | undefined;
|
|
8
8
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
9
|
-
interface ProgressProps extends ComponentPropsWithRef<typeof Progress.Root>, VariantProps<typeof progressVariants> {
|
|
9
|
+
interface ProgressProps extends ComponentPropsWithRef<typeof Progress.Root>, VariantProps<typeof progressVariants> {
|
|
10
|
+
/**
|
|
11
|
+
* How the fill travels to a new value. `smooth` eases in, as it always has;
|
|
12
|
+
* `spring` carries slightly past the value and settles, like SmoothUI's
|
|
13
|
+
* spring. Default `smooth`.
|
|
14
|
+
*/
|
|
15
|
+
easing?: "smooth" | "spring";
|
|
16
|
+
/**
|
|
17
|
+
* Fills from empty on mount instead of appearing at its value. For a bar
|
|
18
|
+
* that is revealed once, like a result or a quota; not for one that is
|
|
19
|
+
* polled, which would replay on every remount. Default `false`.
|
|
20
|
+
*/
|
|
21
|
+
fillOnMount?: boolean;
|
|
22
|
+
/**
|
|
23
|
+
* A moving texture on the fill while the value is known: `striped` runs
|
|
24
|
+
* diagonal stripes along it, `shine` sweeps a highlight across it.
|
|
25
|
+
* Decoration — both stop under reduced motion. Default `none`.
|
|
26
|
+
*/
|
|
27
|
+
effect?: "none" | "striped" | "shine";
|
|
28
|
+
}
|
|
10
29
|
/**
|
|
11
30
|
* Shows how far along a task is.
|
|
12
31
|
*
|
|
@@ -15,7 +34,7 @@ interface ProgressProps extends ComponentPropsWithRef<typeof Progress.Root>, Var
|
|
|
15
34
|
* "no progress". For a short wait with no measurable progress, a Spinner says
|
|
16
35
|
* the same thing with less furniture.
|
|
17
36
|
*/
|
|
18
|
-
declare function Progress$1({ className, size, tone, value, ...props }: ProgressProps): import("react").JSX.Element;
|
|
37
|
+
declare function Progress$1({ className, size, tone, value, easing, fillOnMount, effect, ...props }: ProgressProps): import("react").JSX.Element;
|
|
19
38
|
//#endregion
|
|
20
39
|
export { Progress$1 as Progress, ProgressProps, progressVariants };
|
|
21
40
|
//# sourceMappingURL=progress.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progress.d.ts","names":[],"sources":["../../../src/components/progress/progress.tsx"],"mappings":";;;;
|
|
1
|
+
{"version":3,"file":"progress.d.ts","names":[],"sources":["../../../src/components/progress/progress.tsx"],"mappings":";;;;cASM,mBAAgB;;;6CAkBpB;UAkCe,sBAEb,6BAA6B,SAAkB,OAC/C,oBAAoB;;;;;;EAMtB;;;;;;EAMA;;;;;;EAMA;;;;;;;;;;iBAmCc,aACd,WACA,MACA,MACA,OACA,QACA,aACA,WACG,SACF,gCAAa,IAAA"}
|