@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 @@
|
|
|
1
|
+
{"version":3,"file":"meta.js","names":[],"sources":["../../../src/components/morph-button/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"morph-button\",\n title: \"Morph Button\",\n description:\n \"A button whose icon and label morph to an active state — toggles, transient confirmations and hover affordances.\",\n category: \"form\",\n status: \"beta\",\n dependencies: [\"class-variance-authority\"],\n registryDependencies: [\"button\"],\n files: [\"morph-button.tsx\"],\n a11y:\n 'In `toggle` mode the state is exposed with aria-pressed and the accessible name stays the resting label, so \"Mute\" never becomes \"Unmute, pressed\". ' +\n \"`transient` confirmations (Copied, Submitted) are announced through a polite live region and revert on a timer. \" +\n '`trigger=\"hover\"` activates on keyboard focus as well as hover. Icons are aria-hidden: an icon-only button must be ' +\n \"named with aria-label or aria-labelledby, and warns in development when it is not. Motion stops under reduced motion.\",\n});\n"],"mappings":";;AAEA,MAAa,OAAO,WAAW;CAC7B,MAAM;CACN,OAAO;CACP,aACE;CACF,UAAU;CACV,QAAQ;CACR,cAAc,CAAC,0BAA0B;CACzC,sBAAsB,CAAC,QAAQ;CAC/B,OAAO,CAAC,kBAAkB;CAC1B,MACE;AAIJ,CAAC"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { ButtonProps } from "../button/button.js";
|
|
2
|
+
import "../button/index.js";
|
|
3
|
+
import { VariantProps } from "class-variance-authority";
|
|
4
|
+
import { ReactNode } from "react";
|
|
5
|
+
//#region src/components/morph-button/morph-button.d.ts
|
|
6
|
+
/** Icon layers: how the resting icon leaves and the active one arrives. */
|
|
7
|
+
declare const morphButtonVariants: (props?: ({
|
|
8
|
+
morph?: "scale" | "tilt" | "rise" | null | undefined;
|
|
9
|
+
layer?: "active" | "rest" | null | undefined;
|
|
10
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
11
|
+
/** The colour the active icon takes. Semantic tokens only. */
|
|
12
|
+
declare const morphButtonToneVariants: (props?: ({
|
|
13
|
+
tone?: "current" | "primary" | "success" | "warning" | "destructive" | "info" | null | undefined;
|
|
14
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
15
|
+
type MorphButtonTrigger = "toggle" | "transient" | "hover" | "manual";
|
|
16
|
+
interface MorphButtonProps extends Omit<ButtonProps, "children" | "asChild">, Omit<VariantProps<typeof morphButtonVariants>, "layer">, VariantProps<typeof morphButtonToneVariants> {
|
|
17
|
+
/** The resting icon. Decorative: it is hidden from assistive technology. */
|
|
18
|
+
icon: ReactNode;
|
|
19
|
+
/** The icon shown while active. Defaults to `icon`, for fill/colour-only morphs. */
|
|
20
|
+
activeIcon?: ReactNode;
|
|
21
|
+
/**
|
|
22
|
+
* Visible text beside the icon. Without it the button is icon-only and
|
|
23
|
+
* **must** be named with `aria-label` or `aria-labelledby`.
|
|
24
|
+
*/
|
|
25
|
+
label?: ReactNode;
|
|
26
|
+
/** Text shown while active, e.g. "Copied". Defaults to `label`. */
|
|
27
|
+
activeLabel?: ReactNode;
|
|
28
|
+
/** Controlled active state. */
|
|
29
|
+
active?: boolean;
|
|
30
|
+
/** Initial active state when uncontrolled. */
|
|
31
|
+
defaultActive?: boolean;
|
|
32
|
+
/** Called whenever the active state changes, from any trigger. */
|
|
33
|
+
onActiveChange?: (active: boolean) => void;
|
|
34
|
+
/**
|
|
35
|
+
* What drives the active state.
|
|
36
|
+
*
|
|
37
|
+
* - `toggle` (default): each press flips it; exposed as `aria-pressed`.
|
|
38
|
+
* - `transient`: a press activates it, and it reverts after `revertAfter`.
|
|
39
|
+
* The active label is announced through a polite live region.
|
|
40
|
+
* - `hover`: active while hovered *or* focused, for parity with the demo.
|
|
41
|
+
* - `manual`: only the `active` prop changes it.
|
|
42
|
+
*/
|
|
43
|
+
trigger?: MorphButtonTrigger;
|
|
44
|
+
/** Milliseconds before a `transient` button reverts. */
|
|
45
|
+
revertAfter?: number;
|
|
46
|
+
/** Announced when a `transient` button activates. Defaults to `activeLabel`. */
|
|
47
|
+
announcement?: string;
|
|
48
|
+
/** Fills the active icon with its stroke colour — bookmark, like, favourite. */
|
|
49
|
+
fillOnActive?: boolean;
|
|
50
|
+
/** Decoration that pops in with the active icon. */
|
|
51
|
+
adornment?: "none" | "sparkle" | "dot";
|
|
52
|
+
}
|
|
53
|
+
/** A button whose icon, and optionally label, morphs when it becomes active. */
|
|
54
|
+
declare function MorphButton({ className, icon, activeIcon, label, activeLabel, active: activeProp, defaultActive, onActiveChange, trigger, revertAfter, announcement, morph, tone, fillOnActive, adornment, variant, size, onClick, onPointerEnter, onPointerLeave, onPointerDown, onFocus, onBlur, ...props }: MorphButtonProps): import("react").JSX.Element;
|
|
55
|
+
//#endregion
|
|
56
|
+
export { MorphButton, MorphButtonProps, MorphButtonTrigger, morphButtonToneVariants, morphButtonVariants };
|
|
57
|
+
//# sourceMappingURL=morph-button.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"morph-button.d.ts","names":[],"sources":["../../../src/components/morph-button/morph-button.tsx"],"mappings":";;;;;;cAgCM,sBAAmB;;;6CA+BxB;;cAGK,0BAAuB;;6CAc3B;KA8BU;UAEK,yBAEb,KAAK,sCACL,KAAK,oBAAoB,gCACzB,oBAAoB;;EAEtB,MAAM;;EAEN,aAAa;;;;;EAKb,QAAQ;;EAER,cAAc;;EAEd;;EAEA;;EAEA,kBAAkB;;;;;;;;;;EAUlB,UAAU;;EAEV;;EAEA;;EAEA;;EAEA;;;iBAwBc,cACd,WACA,MACA,YACA,OACA,aACA,QAAQ,YACR,eACA,gBACA,SACA,aACA,cACA,OACA,MACA,cACA,WACA,SACA,MACA,SACA,gBACA,gBACA,eACA,SACA,WACG,SACF,mCAAgB,IAAA"}
|
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { cn } from "../../lib/utils.js";
|
|
3
|
+
import { Button } from "../button/button.js";
|
|
4
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
5
|
+
import { cva } from "class-variance-authority";
|
|
6
|
+
import { useCallback, useEffect, useRef, useState } from "react";
|
|
7
|
+
//#region src/components/morph-button/morph-button.tsx
|
|
8
|
+
/** Icon layers: how the resting icon leaves and the active one arrives. */
|
|
9
|
+
const morphButtonVariants = cva(cn("col-start-1 row-start-1 flex items-center justify-center", "transition-[opacity,scale,translate,rotate,color,fill] duration-[var(--duration-slow)] ease-[var(--ease-overshoot)]", "data-[state=hidden]:opacity-0"), {
|
|
10
|
+
variants: {
|
|
11
|
+
/** `scale` pops (0.5 → 1), `rise` slides vertically, `tilt` rocks ±15°. */
|
|
12
|
+
morph: {
|
|
13
|
+
scale: "data-[state=hidden]:scale-50",
|
|
14
|
+
rise: "data-[state=hidden]:scale-80",
|
|
15
|
+
tilt: "data-[state=hidden]:scale-80"
|
|
16
|
+
},
|
|
17
|
+
layer: {
|
|
18
|
+
rest: "",
|
|
19
|
+
active: ""
|
|
20
|
+
}
|
|
21
|
+
},
|
|
22
|
+
compoundVariants: [
|
|
23
|
+
{
|
|
24
|
+
morph: "rise",
|
|
25
|
+
layer: "rest",
|
|
26
|
+
className: "data-[state=hidden]:-translate-y-[15px]"
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
morph: "rise",
|
|
30
|
+
layer: "active",
|
|
31
|
+
className: "data-[state=hidden]:translate-y-[15px]"
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
morph: "tilt",
|
|
35
|
+
layer: "rest",
|
|
36
|
+
className: "data-[state=hidden]:rotate-15"
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
morph: "tilt",
|
|
40
|
+
layer: "active",
|
|
41
|
+
className: "data-[state=hidden]:-rotate-15"
|
|
42
|
+
}
|
|
43
|
+
],
|
|
44
|
+
defaultVariants: {
|
|
45
|
+
morph: "scale",
|
|
46
|
+
layer: "rest"
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
/** The colour the active icon takes. Semantic tokens only. */
|
|
50
|
+
const morphButtonToneVariants = cva("", {
|
|
51
|
+
variants: { tone: {
|
|
52
|
+
current: "",
|
|
53
|
+
primary: "text-primary",
|
|
54
|
+
success: "text-success",
|
|
55
|
+
warning: "text-warning",
|
|
56
|
+
destructive: "text-destructive",
|
|
57
|
+
info: "text-info"
|
|
58
|
+
} },
|
|
59
|
+
defaultVariants: { tone: "current" }
|
|
60
|
+
});
|
|
61
|
+
/** Label layers only crossfade: a scaled or rotated word is harder to read. */
|
|
62
|
+
const labelLayer = cn("col-start-1 row-start-1 transition-[opacity,translate] duration-[var(--duration-normal)] ease-[var(--ease-out-quint)]", "data-[state=hidden]:translate-y-1 data-[state=hidden]:opacity-0");
|
|
63
|
+
/** A spark or dot that pops in once the active layer is showing. */
|
|
64
|
+
const popIn = cn("pointer-events-none absolute transition-[opacity,scale,rotate,translate] duration-[var(--duration-slow)] ease-[var(--ease-overshoot)]", "group-data-[state=hidden]/layer:scale-0 group-data-[state=hidden]/layer:opacity-0");
|
|
65
|
+
const SPARK_PATH = "M12 2l2.4 7.6H22l-6.2 4.5 2.4 7.6-6.2-4.5-6.2 4.5 2.4-7.6L2 9.6h7.6z";
|
|
66
|
+
function Spark({ className }) {
|
|
67
|
+
return /* @__PURE__ */ jsx("svg", {
|
|
68
|
+
viewBox: "0 0 24 24",
|
|
69
|
+
fill: "currentColor",
|
|
70
|
+
"aria-hidden": "true",
|
|
71
|
+
"data-slot": "morph-button-spark",
|
|
72
|
+
className: cn(popIn, className),
|
|
73
|
+
children: /* @__PURE__ */ jsx("path", { d: SPARK_PATH })
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
/** A text representation of a node, when it has one. */
|
|
77
|
+
function textOf(node) {
|
|
78
|
+
return typeof node === "string" || typeof node === "number" ? String(node) : void 0;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Warns, in development only, when an icon-only button has no name. It looks
|
|
82
|
+
* perfect on screen and announces as an unlabelled "button".
|
|
83
|
+
*/
|
|
84
|
+
function useMissingNameWarning(hasLabel, ariaLabel, ariaLabelledBy) {
|
|
85
|
+
useEffect(() => {
|
|
86
|
+
if (process.env.NODE_ENV === "production") return;
|
|
87
|
+
if (hasLabel || ariaLabel || ariaLabelledBy) return;
|
|
88
|
+
console.warn("[MorphButton] An icon-only MorphButton has no accessible name. Pass aria-label or aria-labelledby, or a visible label.");
|
|
89
|
+
}, [
|
|
90
|
+
hasLabel,
|
|
91
|
+
ariaLabel,
|
|
92
|
+
ariaLabelledBy
|
|
93
|
+
]);
|
|
94
|
+
}
|
|
95
|
+
/** A button whose icon, and optionally label, morphs when it becomes active. */
|
|
96
|
+
function MorphButton({ className, icon, activeIcon, label, activeLabel, active: activeProp, defaultActive = false, onActiveChange, trigger = "toggle", revertAfter = 2e3, announcement, morph = "scale", tone = "current", fillOnActive = false, adornment = "none", variant = "secondary", size, onClick, onPointerEnter, onPointerLeave, onPointerDown, onFocus, onBlur, ...props }) {
|
|
97
|
+
const [uncontrolled, setUncontrolled] = useState(defaultActive);
|
|
98
|
+
const controlled = activeProp !== void 0;
|
|
99
|
+
const active = controlled ? activeProp : uncontrolled;
|
|
100
|
+
const [announced, setAnnounced] = useState("");
|
|
101
|
+
const timer = useRef(null);
|
|
102
|
+
const pressing = useRef(false);
|
|
103
|
+
const keyboardFocus = useRef(false);
|
|
104
|
+
const setActive = useCallback((next) => {
|
|
105
|
+
if (!controlled) setUncontrolled(next);
|
|
106
|
+
onActiveChange?.(next);
|
|
107
|
+
}, [controlled, onActiveChange]);
|
|
108
|
+
useEffect(() => () => {
|
|
109
|
+
if (timer.current) clearTimeout(timer.current);
|
|
110
|
+
}, []);
|
|
111
|
+
useMissingNameWarning(label != null, props["aria-label"], props["aria-labelledby"]);
|
|
112
|
+
function handleClick(event) {
|
|
113
|
+
onClick?.(event);
|
|
114
|
+
if (event.defaultPrevented) return;
|
|
115
|
+
if (trigger === "toggle") setActive(!active);
|
|
116
|
+
else if (trigger === "transient") {
|
|
117
|
+
if (!active) setActive(true);
|
|
118
|
+
setAnnounced(announcement ?? textOf(activeLabel) ?? textOf(label) ?? "Done");
|
|
119
|
+
if (timer.current) clearTimeout(timer.current);
|
|
120
|
+
timer.current = setTimeout(() => {
|
|
121
|
+
setActive(false);
|
|
122
|
+
setAnnounced("");
|
|
123
|
+
}, revertAfter);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
function handlePointerEnter(event) {
|
|
127
|
+
onPointerEnter?.(event);
|
|
128
|
+
if (trigger === "hover" && !active) setActive(true);
|
|
129
|
+
}
|
|
130
|
+
function handlePointerLeave(event) {
|
|
131
|
+
onPointerLeave?.(event);
|
|
132
|
+
if (trigger === "hover" && active && !keyboardFocus.current) setActive(false);
|
|
133
|
+
}
|
|
134
|
+
function handlePointerDown(event) {
|
|
135
|
+
onPointerDown?.(event);
|
|
136
|
+
pressing.current = true;
|
|
137
|
+
}
|
|
138
|
+
function handleFocus(event) {
|
|
139
|
+
onFocus?.(event);
|
|
140
|
+
keyboardFocus.current = !pressing.current;
|
|
141
|
+
pressing.current = false;
|
|
142
|
+
if (trigger === "hover" && !active) setActive(true);
|
|
143
|
+
}
|
|
144
|
+
function handleBlur(event) {
|
|
145
|
+
onBlur?.(event);
|
|
146
|
+
keyboardFocus.current = false;
|
|
147
|
+
if (trigger === "hover" && active) setActive(false);
|
|
148
|
+
}
|
|
149
|
+
const nameFollowsState = trigger === "transient" || trigger === "manual";
|
|
150
|
+
const morphsLabel = activeLabel !== void 0 && activeLabel !== label;
|
|
151
|
+
const state = (layerActive) => layerActive ? "visible" : "hidden";
|
|
152
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsxs(Button, {
|
|
153
|
+
"data-slot": "morph-button",
|
|
154
|
+
"data-state": active ? "active" : "inactive",
|
|
155
|
+
"data-trigger": trigger,
|
|
156
|
+
"aria-pressed": trigger === "toggle" ? active : void 0,
|
|
157
|
+
variant,
|
|
158
|
+
size: size ?? (label == null ? "icon" : void 0),
|
|
159
|
+
className: cn("transition-[background-color,border-color,color,box-shadow,scale] active:scale-[0.97]", className),
|
|
160
|
+
onClick: handleClick,
|
|
161
|
+
onPointerEnter: handlePointerEnter,
|
|
162
|
+
onPointerLeave: handlePointerLeave,
|
|
163
|
+
onPointerDown: handlePointerDown,
|
|
164
|
+
onFocus: handleFocus,
|
|
165
|
+
onBlur: handleBlur,
|
|
166
|
+
...props,
|
|
167
|
+
children: [/* @__PURE__ */ jsxs("span", {
|
|
168
|
+
"data-slot": "morph-button-icon",
|
|
169
|
+
"aria-hidden": "true",
|
|
170
|
+
className: "relative grid shrink-0",
|
|
171
|
+
children: [/* @__PURE__ */ jsx("span", {
|
|
172
|
+
"data-slot": "morph-button-rest",
|
|
173
|
+
"data-state": state(!active),
|
|
174
|
+
className: morphButtonVariants({
|
|
175
|
+
morph,
|
|
176
|
+
layer: "rest"
|
|
177
|
+
}),
|
|
178
|
+
children: icon
|
|
179
|
+
}), /* @__PURE__ */ jsxs("span", {
|
|
180
|
+
"data-slot": "morph-button-active",
|
|
181
|
+
"data-state": state(active),
|
|
182
|
+
className: cn("group/layer relative", morphButtonVariants({
|
|
183
|
+
morph,
|
|
184
|
+
layer: "active"
|
|
185
|
+
}), morphButtonToneVariants({ tone }), fillOnActive && "[&>svg]:fill-current"),
|
|
186
|
+
children: [
|
|
187
|
+
activeIcon ?? icon,
|
|
188
|
+
adornment === "sparkle" ? /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(Spark, { className: cn("-end-2 -top-3 size-2.5 delay-[var(--duration-instant)]", "group-data-[state=hidden]/layer:translate-y-2.5 group-data-[state=hidden]/layer:-rotate-45") }), /* @__PURE__ */ jsx(Spark, { className: cn("-start-3 -top-1 size-1.5 opacity-70 delay-[var(--duration-fast)]", "group-data-[state=hidden]/layer:translate-x-2.5 group-data-[state=hidden]/layer:rotate-45") })] }) : null,
|
|
189
|
+
adornment === "dot" ? /* @__PURE__ */ jsx("span", {
|
|
190
|
+
"data-slot": "morph-button-dot",
|
|
191
|
+
className: cn(popIn, "end-0 top-0 size-1.5 rounded-full bg-destructive delay-[var(--duration-fast)]")
|
|
192
|
+
}) : null
|
|
193
|
+
]
|
|
194
|
+
})]
|
|
195
|
+
}), label != null ? /* @__PURE__ */ jsxs("span", {
|
|
196
|
+
"data-slot": "morph-button-label",
|
|
197
|
+
className: "grid",
|
|
198
|
+
children: [/* @__PURE__ */ jsx("span", {
|
|
199
|
+
"data-state": state(!morphsLabel || !active),
|
|
200
|
+
"aria-hidden": nameFollowsState && morphsLabel && active ? true : void 0,
|
|
201
|
+
className: labelLayer,
|
|
202
|
+
children: label
|
|
203
|
+
}), morphsLabel ? /* @__PURE__ */ jsx("span", {
|
|
204
|
+
"data-state": state(active),
|
|
205
|
+
"aria-hidden": !nameFollowsState || !active ? true : void 0,
|
|
206
|
+
className: labelLayer,
|
|
207
|
+
children: activeLabel
|
|
208
|
+
}) : null]
|
|
209
|
+
}) : null]
|
|
210
|
+
}), trigger === "transient" ? /* @__PURE__ */ jsx("span", {
|
|
211
|
+
role: "status",
|
|
212
|
+
"aria-live": "polite",
|
|
213
|
+
className: "sr-only",
|
|
214
|
+
children: announced
|
|
215
|
+
}) : null] });
|
|
216
|
+
}
|
|
217
|
+
//#endregion
|
|
218
|
+
export { MorphButton, morphButtonToneVariants, morphButtonVariants };
|
|
219
|
+
|
|
220
|
+
//# sourceMappingURL=morph-button.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"morph-button.js","names":[],"sources":["../../../src/components/morph-button/morph-button.tsx"],"sourcesContent":["\"use client\";\n\n// Ported from amicro (MIT, © 2026 Syed Subhan Uddin). See THIRD_PARTY_NOTICES.md.\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport {\n useCallback,\n useEffect,\n useRef,\n useState,\n type FocusEvent,\n type MouseEvent,\n type PointerEvent,\n type ReactNode,\n} from \"react\";\n\nimport { Button, type ButtonProps } from \"@/components/button\";\nimport { cn } from \"@/lib/utils\";\n\n/*\n * One mechanism for the whole amicro morph family (ADR 0014): an icon — and\n * optionally a label — that crossfades into a second one when the button is\n * active. The source swaps on hover; a library button has to reflect *state*,\n * so `active` is a real, controllable value and hover is only one of the ways\n * to drive it.\n *\n * Both layers are always mounted and stacked in one grid cell. Swapping is a\n * CSS transition on data-state, so there is no animation library, no\n * unmount-on-exit, and the global reduced-motion rule stops it outright:\n * this is decoration, never an indicator.\n */\n\n/** Icon layers: how the resting icon leaves and the active one arrives. */\nconst morphButtonVariants = cva(\n cn(\n \"col-start-1 row-start-1 flex items-center justify-center\",\n \"transition-[opacity,scale,translate,rotate,color,fill] duration-[var(--duration-slow)] ease-[var(--ease-overshoot)]\",\n \"data-[state=hidden]:opacity-0\",\n ),\n {\n variants: {\n /** `scale` pops (0.5 → 1), `rise` slides vertically, `tilt` rocks ±15°. */\n morph: {\n scale: \"data-[state=hidden]:scale-50\",\n rise: \"data-[state=hidden]:scale-80\",\n tilt: \"data-[state=hidden]:scale-80\",\n },\n layer: {\n rest: \"\",\n active: \"\",\n },\n },\n compoundVariants: [\n // The resting icon leaves upward while the active one rises from below.\n { morph: \"rise\", layer: \"rest\", className: \"data-[state=hidden]:-translate-y-[15px]\" },\n { morph: \"rise\", layer: \"active\", className: \"data-[state=hidden]:translate-y-[15px]\" },\n { morph: \"tilt\", layer: \"rest\", className: \"data-[state=hidden]:rotate-15\" },\n { morph: \"tilt\", layer: \"active\", className: \"data-[state=hidden]:-rotate-15\" },\n ],\n defaultVariants: {\n morph: \"scale\",\n layer: \"rest\",\n },\n },\n);\n\n/** The colour the active icon takes. Semantic tokens only. */\nconst morphButtonToneVariants = cva(\"\", {\n variants: {\n tone: {\n current: \"\",\n primary: \"text-primary\",\n success: \"text-success\",\n warning: \"text-warning\",\n destructive: \"text-destructive\",\n info: \"text-info\",\n },\n },\n defaultVariants: {\n tone: \"current\",\n },\n});\n\n/** Label layers only crossfade: a scaled or rotated word is harder to read. */\nconst labelLayer = cn(\n \"col-start-1 row-start-1 transition-[opacity,translate] duration-[var(--duration-normal)] ease-[var(--ease-out-quint)]\",\n \"data-[state=hidden]:translate-y-1 data-[state=hidden]:opacity-0\",\n);\n\n/** A spark or dot that pops in once the active layer is showing. */\nconst popIn = cn(\n \"pointer-events-none absolute transition-[opacity,scale,rotate,translate] duration-[var(--duration-slow)] ease-[var(--ease-overshoot)]\",\n \"group-data-[state=hidden]/layer:scale-0 group-data-[state=hidden]/layer:opacity-0\",\n);\n\nconst SPARK_PATH = \"M12 2l2.4 7.6H22l-6.2 4.5 2.4 7.6-6.2-4.5-6.2 4.5 2.4-7.6L2 9.6h7.6z\";\n\nfunction Spark({ className }: { className: string }) {\n return (\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n data-slot=\"morph-button-spark\"\n className={cn(popIn, className)}\n >\n <path d={SPARK_PATH} />\n </svg>\n );\n}\n\nexport type MorphButtonTrigger = \"toggle\" | \"transient\" | \"hover\" | \"manual\";\n\nexport interface MorphButtonProps\n extends\n Omit<ButtonProps, \"children\" | \"asChild\">,\n Omit<VariantProps<typeof morphButtonVariants>, \"layer\">,\n VariantProps<typeof morphButtonToneVariants> {\n /** The resting icon. Decorative: it is hidden from assistive technology. */\n icon: ReactNode;\n /** The icon shown while active. Defaults to `icon`, for fill/colour-only morphs. */\n activeIcon?: ReactNode;\n /**\n * Visible text beside the icon. Without it the button is icon-only and\n * **must** be named with `aria-label` or `aria-labelledby`.\n */\n label?: ReactNode;\n /** Text shown while active, e.g. \"Copied\". Defaults to `label`. */\n activeLabel?: ReactNode;\n /** Controlled active state. */\n active?: boolean;\n /** Initial active state when uncontrolled. */\n defaultActive?: boolean;\n /** Called whenever the active state changes, from any trigger. */\n onActiveChange?: (active: boolean) => void;\n /**\n * What drives the active state.\n *\n * - `toggle` (default): each press flips it; exposed as `aria-pressed`.\n * - `transient`: a press activates it, and it reverts after `revertAfter`.\n * The active label is announced through a polite live region.\n * - `hover`: active while hovered *or* focused, for parity with the demo.\n * - `manual`: only the `active` prop changes it.\n */\n trigger?: MorphButtonTrigger;\n /** Milliseconds before a `transient` button reverts. */\n revertAfter?: number;\n /** Announced when a `transient` button activates. Defaults to `activeLabel`. */\n announcement?: string;\n /** Fills the active icon with its stroke colour — bookmark, like, favourite. */\n fillOnActive?: boolean;\n /** Decoration that pops in with the active icon. */\n adornment?: \"none\" | \"sparkle\" | \"dot\";\n}\n\n/** A text representation of a node, when it has one. */\nfunction textOf(node: ReactNode): string | undefined {\n return typeof node === \"string\" || typeof node === \"number\" ? String(node) : undefined;\n}\n\n/**\n * Warns, in development only, when an icon-only button has no name. It looks\n * perfect on screen and announces as an unlabelled \"button\".\n */\nfunction useMissingNameWarning(hasLabel: boolean, ariaLabel?: string, ariaLabelledBy?: string) {\n useEffect(() => {\n if (process.env.NODE_ENV === \"production\") return;\n if (hasLabel || ariaLabel || ariaLabelledBy) return;\n console.warn(\n \"[MorphButton] An icon-only MorphButton has no accessible name. Pass aria-label or \" +\n \"aria-labelledby, or a visible label.\",\n );\n }, [hasLabel, ariaLabel, ariaLabelledBy]);\n}\n\n/** A button whose icon, and optionally label, morphs when it becomes active. */\nexport function MorphButton({\n className,\n icon,\n activeIcon,\n label,\n activeLabel,\n active: activeProp,\n defaultActive = false,\n onActiveChange,\n trigger = \"toggle\",\n revertAfter = 2000,\n announcement,\n morph = \"scale\",\n tone = \"current\",\n fillOnActive = false,\n adornment = \"none\",\n variant = \"secondary\",\n size,\n onClick,\n onPointerEnter,\n onPointerLeave,\n onPointerDown,\n onFocus,\n onBlur,\n ...props\n}: MorphButtonProps) {\n const [uncontrolled, setUncontrolled] = useState(defaultActive);\n const controlled = activeProp !== undefined;\n const active = controlled ? activeProp : uncontrolled;\n const [announced, setAnnounced] = useState(\"\");\n const timer = useRef<ReturnType<typeof setTimeout> | null>(null);\n // Whether focus arrived from the keyboard rather than a click, tracked by\n // hand because :focus-visible is not queryable everywhere this runs.\n const pressing = useRef(false);\n const keyboardFocus = useRef(false);\n\n const setActive = useCallback(\n (next: boolean) => {\n if (!controlled) setUncontrolled(next);\n onActiveChange?.(next);\n },\n [controlled, onActiveChange],\n );\n\n useEffect(\n () => () => {\n if (timer.current) clearTimeout(timer.current);\n },\n [],\n );\n\n useMissingNameWarning(label != null, props[\"aria-label\"], props[\"aria-labelledby\"]);\n\n function handleClick(event: MouseEvent<HTMLButtonElement>) {\n onClick?.(event);\n if (event.defaultPrevented) return;\n\n if (trigger === \"toggle\") {\n setActive(!active);\n } else if (trigger === \"transient\") {\n if (!active) setActive(true);\n setAnnounced(announcement ?? textOf(activeLabel) ?? textOf(label) ?? \"Done\");\n if (timer.current) clearTimeout(timer.current);\n timer.current = setTimeout(() => {\n setActive(false);\n setAnnounced(\"\");\n }, revertAfter);\n }\n }\n\n function handlePointerEnter(event: PointerEvent<HTMLButtonElement>) {\n onPointerEnter?.(event);\n if (trigger === \"hover\" && !active) setActive(true);\n }\n\n function handlePointerLeave(event: PointerEvent<HTMLButtonElement>) {\n onPointerLeave?.(event);\n // Keyboard focus keeps it active: the pointer leaving is not the user\n // leaving if they are still focused on it.\n if (trigger === \"hover\" && active && !keyboardFocus.current) setActive(false);\n }\n\n function handlePointerDown(event: PointerEvent<HTMLButtonElement>) {\n onPointerDown?.(event);\n pressing.current = true;\n }\n\n function handleFocus(event: FocusEvent<HTMLButtonElement>) {\n onFocus?.(event);\n keyboardFocus.current = !pressing.current;\n pressing.current = false;\n if (trigger === \"hover\" && !active) setActive(true);\n }\n\n function handleBlur(event: FocusEvent<HTMLButtonElement>) {\n onBlur?.(event);\n keyboardFocus.current = false;\n if (trigger === \"hover\" && active) setActive(false);\n }\n\n /*\n * Which label names the button. A toggle's name must not change with its\n * state — aria-pressed already says which state it is in, and \"Mute,\n * pressed\" becoming \"Unmute, pressed\" contradicts itself. Hover is\n * decoration. So in those modes the resting label stays in the\n * accessibility tree (merely transparent) and the active one is hidden.\n * In `transient` and `manual` modes the visible text *is* the news, so the\n * name follows it.\n */\n const nameFollowsState = trigger === \"transient\" || trigger === \"manual\";\n const morphsLabel = activeLabel !== undefined && activeLabel !== label;\n const state = (layerActive: boolean) => (layerActive ? \"visible\" : \"hidden\");\n\n return (\n <>\n <Button\n data-slot=\"morph-button\"\n data-state={active ? \"active\" : \"inactive\"}\n data-trigger={trigger}\n aria-pressed={trigger === \"toggle\" ? active : undefined}\n variant={variant}\n size={size ?? (label == null ? \"icon\" : undefined)}\n className={cn(\n \"transition-[background-color,border-color,color,box-shadow,scale] active:scale-[0.97]\",\n className,\n )}\n onClick={handleClick}\n onPointerEnter={handlePointerEnter}\n onPointerLeave={handlePointerLeave}\n onPointerDown={handlePointerDown}\n onFocus={handleFocus}\n onBlur={handleBlur}\n {...props}\n >\n <span\n data-slot=\"morph-button-icon\"\n aria-hidden=\"true\"\n className=\"relative grid shrink-0\"\n >\n <span\n data-slot=\"morph-button-rest\"\n data-state={state(!active)}\n className={morphButtonVariants({ morph, layer: \"rest\" })}\n >\n {icon}\n </span>\n <span\n data-slot=\"morph-button-active\"\n data-state={state(active)}\n className={cn(\n \"group/layer relative\",\n morphButtonVariants({ morph, layer: \"active\" }),\n morphButtonToneVariants({ tone }),\n fillOnActive && \"[&>svg]:fill-current\",\n )}\n >\n {activeIcon ?? icon}\n {adornment === \"sparkle\" ? (\n <>\n <Spark\n className={cn(\n \"-end-2 -top-3 size-2.5 delay-[var(--duration-instant)]\",\n \"group-data-[state=hidden]/layer:translate-y-2.5 group-data-[state=hidden]/layer:-rotate-45\",\n )}\n />\n <Spark\n className={cn(\n \"-start-3 -top-1 size-1.5 opacity-70 delay-[var(--duration-fast)]\",\n \"group-data-[state=hidden]/layer:translate-x-2.5 group-data-[state=hidden]/layer:rotate-45\",\n )}\n />\n </>\n ) : null}\n {adornment === \"dot\" ? (\n <span\n data-slot=\"morph-button-dot\"\n className={cn(\n popIn,\n \"end-0 top-0 size-1.5 rounded-full bg-destructive delay-[var(--duration-fast)]\",\n )}\n />\n ) : null}\n </span>\n </span>\n {label != null ? (\n <span data-slot=\"morph-button-label\" className=\"grid\">\n <span\n data-state={state(!morphsLabel || !active)}\n aria-hidden={nameFollowsState && morphsLabel && active ? true : undefined}\n className={labelLayer}\n >\n {label}\n </span>\n {morphsLabel ? (\n <span\n data-state={state(active)}\n aria-hidden={!nameFollowsState || !active ? true : undefined}\n className={labelLayer}\n >\n {activeLabel}\n </span>\n ) : null}\n </span>\n ) : null}\n </Button>\n {trigger === \"transient\" ? (\n <span role=\"status\" aria-live=\"polite\" className=\"sr-only\">\n {announced}\n </span>\n ) : null}\n </>\n );\n}\n\nexport { morphButtonToneVariants, morphButtonVariants };\n"],"mappings":";;;;;;;;AAgCA,MAAM,sBAAsB,IAC1B,GACE,4DACA,uHACA,+BACF,GACA;CACE,UAAU;;EAER,OAAO;GACL,OAAO;GACP,MAAM;GACN,MAAM;EACR;EACA,OAAO;GACL,MAAM;GACN,QAAQ;EACV;CACF;CACA,kBAAkB;EAEhB;GAAE,OAAO;GAAQ,OAAO;GAAQ,WAAW;EAA0C;EACrF;GAAE,OAAO;GAAQ,OAAO;GAAU,WAAW;EAAyC;EACtF;GAAE,OAAO;GAAQ,OAAO;GAAQ,WAAW;EAAgC;EAC3E;GAAE,OAAO;GAAQ,OAAO;GAAU,WAAW;EAAiC;CAChF;CACA,iBAAiB;EACf,OAAO;EACP,OAAO;CACT;AACF,CACF;;AAGA,MAAM,0BAA0B,IAAI,IAAI;CACtC,UAAU,EACR,MAAM;EACJ,SAAS;EACT,SAAS;EACT,SAAS;EACT,SAAS;EACT,aAAa;EACb,MAAM;CACR,EACF;CACA,iBAAiB,EACf,MAAM,UACR;AACF,CAAC;;AAGD,MAAM,aAAa,GACjB,yHACA,iEACF;;AAGA,MAAM,QAAQ,GACZ,yIACA,mFACF;AAEA,MAAM,aAAa;AAEnB,SAAS,MAAM,EAAE,aAAoC;CACnD,OACE,oBAAC,OAAD;EACE,SAAQ;EACR,MAAK;EACL,eAAY;EACZ,aAAU;EACV,WAAW,GAAG,OAAO,SAAS;EAE9B,UAAA,oBAAC,QAAD,EAAM,GAAG,WAAa,CAAA;CACnB,CAAA;AAET;;AA+CA,SAAS,OAAO,MAAqC;CACnD,OAAO,OAAO,SAAS,YAAY,OAAO,SAAS,WAAW,OAAO,IAAI,IAAI,KAAA;AAC/E;;;;;AAMA,SAAS,sBAAsB,UAAmB,WAAoB,gBAAyB;CAC7F,gBAAgB;EACd,IAAI,QAAQ,IAAI,aAAa,cAAc;EAC3C,IAAI,YAAY,aAAa,gBAAgB;EAC7C,QAAQ,KACN,wHAEF;CACF,GAAG;EAAC;EAAU;EAAW;CAAc,CAAC;AAC1C;;AAGA,SAAgB,YAAY,EAC1B,WACA,MACA,YACA,OACA,aACA,QAAQ,YACR,gBAAgB,OAChB,gBACA,UAAU,UACV,cAAc,KACd,cACA,QAAQ,SACR,OAAO,WACP,eAAe,OACf,YAAY,QACZ,UAAU,aACV,MACA,SACA,gBACA,gBACA,eACA,SACA,QACA,GAAG,SACgB;CACnB,MAAM,CAAC,cAAc,mBAAmB,SAAS,aAAa;CAC9D,MAAM,aAAa,eAAe,KAAA;CAClC,MAAM,SAAS,aAAa,aAAa;CACzC,MAAM,CAAC,WAAW,gBAAgB,SAAS,EAAE;CAC7C,MAAM,QAAQ,OAA6C,IAAI;CAG/D,MAAM,WAAW,OAAO,KAAK;CAC7B,MAAM,gBAAgB,OAAO,KAAK;CAElC,MAAM,YAAY,aACf,SAAkB;EACjB,IAAI,CAAC,YAAY,gBAAgB,IAAI;EACrC,iBAAiB,IAAI;CACvB,GACA,CAAC,YAAY,cAAc,CAC7B;CAEA,sBACc;EACV,IAAI,MAAM,SAAS,aAAa,MAAM,OAAO;CAC/C,GACA,CAAC,CACH;CAEA,sBAAsB,SAAS,MAAM,MAAM,eAAe,MAAM,kBAAkB;CAElF,SAAS,YAAY,OAAsC;EACzD,UAAU,KAAK;EACf,IAAI,MAAM,kBAAkB;EAE5B,IAAI,YAAY,UACd,UAAU,CAAC,MAAM;OACZ,IAAI,YAAY,aAAa;GAClC,IAAI,CAAC,QAAQ,UAAU,IAAI;GAC3B,aAAa,gBAAgB,OAAO,WAAW,KAAK,OAAO,KAAK,KAAK,MAAM;GAC3E,IAAI,MAAM,SAAS,aAAa,MAAM,OAAO;GAC7C,MAAM,UAAU,iBAAiB;IAC/B,UAAU,KAAK;IACf,aAAa,EAAE;GACjB,GAAG,WAAW;EAChB;CACF;CAEA,SAAS,mBAAmB,OAAwC;EAClE,iBAAiB,KAAK;EACtB,IAAI,YAAY,WAAW,CAAC,QAAQ,UAAU,IAAI;CACpD;CAEA,SAAS,mBAAmB,OAAwC;EAClE,iBAAiB,KAAK;EAGtB,IAAI,YAAY,WAAW,UAAU,CAAC,cAAc,SAAS,UAAU,KAAK;CAC9E;CAEA,SAAS,kBAAkB,OAAwC;EACjE,gBAAgB,KAAK;EACrB,SAAS,UAAU;CACrB;CAEA,SAAS,YAAY,OAAsC;EACzD,UAAU,KAAK;EACf,cAAc,UAAU,CAAC,SAAS;EAClC,SAAS,UAAU;EACnB,IAAI,YAAY,WAAW,CAAC,QAAQ,UAAU,IAAI;CACpD;CAEA,SAAS,WAAW,OAAsC;EACxD,SAAS,KAAK;EACd,cAAc,UAAU;EACxB,IAAI,YAAY,WAAW,QAAQ,UAAU,KAAK;CACpD;CAWA,MAAM,mBAAmB,YAAY,eAAe,YAAY;CAChE,MAAM,cAAc,gBAAgB,KAAA,KAAa,gBAAgB;CACjE,MAAM,SAAS,gBAA0B,cAAc,YAAY;CAEnE,OACE,qBAAA,UAAA,EAAA,UAAA,CACE,qBAAC,QAAD;EACE,aAAU;EACV,cAAY,SAAS,WAAW;EAChC,gBAAc;EACd,gBAAc,YAAY,WAAW,SAAS,KAAA;EACrC;EACT,MAAM,SAAS,SAAS,OAAO,SAAS,KAAA;EACxC,WAAW,GACT,yFACA,SACF;EACA,SAAS;EACT,gBAAgB;EAChB,gBAAgB;EAChB,eAAe;EACf,SAAS;EACT,QAAQ;EACR,GAAI;EAjBN,UAAA,CAmBE,qBAAC,QAAD;GACE,aAAU;GACV,eAAY;GACZ,WAAU;GAHZ,UAAA,CAKE,oBAAC,QAAD;IACE,aAAU;IACV,cAAY,MAAM,CAAC,MAAM;IACzB,WAAW,oBAAoB;KAAE;KAAO,OAAO;IAAO,CAAC;IAEtD,UAAA;GACG,CAAA,GACN,qBAAC,QAAD;IACE,aAAU;IACV,cAAY,MAAM,MAAM;IACxB,WAAW,GACT,wBACA,oBAAoB;KAAE;KAAO,OAAO;IAAS,CAAC,GAC9C,wBAAwB,EAAE,KAAK,CAAC,GAChC,gBAAgB,sBAClB;IARF,UAAA;KAUG,cAAc;KACd,cAAc,YACb,qBAAA,UAAA,EAAA,UAAA,CACE,oBAAC,OAAD,EACE,WAAW,GACT,0DACA,4FACF,EACD,CAAA,GACD,oBAAC,OAAD,EACE,WAAW,GACT,oEACA,2FACF,EACD,CAAA,CACD,EAAA,CAAA,IACA;KACH,cAAc,QACb,oBAAC,QAAD;MACE,aAAU;MACV,WAAW,GACT,OACA,+EACF;KACD,CAAA,IACC;IACA;GACF,CAAA,CAAA;EACL,CAAA,GAAA,SAAS,OACR,qBAAC,QAAD;GAAM,aAAU;GAAqB,WAAU;GAA/C,UAAA,CACE,oBAAC,QAAD;IACE,cAAY,MAAM,CAAC,eAAe,CAAC,MAAM;IACzC,eAAa,oBAAoB,eAAe,SAAS,OAAO,KAAA;IAChE,WAAW;IAEV,UAAA;GACG,CAAA,GACL,cACC,oBAAC,QAAD;IACE,cAAY,MAAM,MAAM;IACxB,eAAa,CAAC,oBAAoB,CAAC,SAAS,OAAO,KAAA;IACnD,WAAW;IAEV,UAAA;GACG,CAAA,IACJ,IACA;EACJ,CAAA,IAAA,IACE;CACP,CAAA,GAAA,YAAY,cACX,oBAAC,QAAD;EAAM,MAAK;EAAS,aAAU;EAAS,WAAU;EAC9C,UAAA;CACG,CAAA,IACJ,IACJ,EAAA,CAAA;AAEN"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { defineMeta } from "../../registry/schema.js";
|
|
2
|
+
//#region src/components/morph-surface/meta.ts
|
|
3
|
+
const meta = defineMeta({
|
|
4
|
+
name: "morph-surface",
|
|
5
|
+
title: "Morph Surface",
|
|
6
|
+
description: "A dock that grows in place into a panel — a feedback form or a quick prompt — and shrinks back when done.",
|
|
7
|
+
category: "overlay",
|
|
8
|
+
status: "beta",
|
|
9
|
+
dependencies: [],
|
|
10
|
+
registryDependencies: [],
|
|
11
|
+
files: ["morph-surface.tsx"],
|
|
12
|
+
a11y: "Behaves as a non-modal popover. The trigger is a disclosure button (aria-expanded, aria-controls) and the panel a named role=\"dialog\". Opening moves focus into the panel (the message box in MorphSurfaceForm); Escape collapses it and returns focus to the trigger; pressing or tabbing outside collapses it without moving focus. A collapsed panel is inert and invisible; an expanded surface's dock is inert. MorphSurfaceForm's message box is labelled by the panel label, submits with ⌘/Ctrl + Enter (aria-keyshortcuts) or a named submit button, and a successful send is announced through a polite status region. The resize and fades stop 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/morph-surface/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"morph-surface\",\n title: \"Morph Surface\",\n description:\n \"A dock that grows in place into a panel — a feedback form or a quick prompt — and shrinks back when done.\",\n category: \"overlay\",\n status: \"beta\",\n dependencies: [],\n registryDependencies: [],\n files: [\"morph-surface.tsx\"],\n a11y:\n \"Behaves as a non-modal popover. The trigger is a disclosure button (aria-expanded, aria-controls) and the \" +\n 'panel a named role=\"dialog\". Opening moves focus into the panel (the message box in MorphSurfaceForm); ' +\n \"Escape collapses it and returns focus to the trigger; pressing or tabbing outside collapses it without \" +\n \"moving focus. A collapsed panel is inert and invisible; an expanded surface's dock is inert. \" +\n \"MorphSurfaceForm's message box is labelled by the panel label, submits with ⌘/Ctrl + Enter \" +\n \"(aria-keyshortcuts) or a named submit button, and a successful send is announced through a polite status \" +\n \"region. The resize and fades stop 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;CACvB,OAAO,CAAC,mBAAmB;CAC3B,MACE;AAOJ,CAAC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { ComponentPropsWithRef, FormEvent, ReactNode } from "react";
|
|
2
|
+
//#region src/components/morph-surface/morph-surface.d.ts
|
|
3
|
+
type Size = number | string;
|
|
4
|
+
interface MorphSurfaceContextValue {
|
|
5
|
+
open: boolean;
|
|
6
|
+
close: (options?: {
|
|
7
|
+
success?: boolean;
|
|
8
|
+
}) => void;
|
|
9
|
+
panelLabel: string;
|
|
10
|
+
icon: ReactNode;
|
|
11
|
+
}
|
|
12
|
+
/** The surrounding surface, for custom panel content (a close button, say). */
|
|
13
|
+
declare function useMorphSurface(): MorphSurfaceContextValue;
|
|
14
|
+
interface MorphSurfaceProps extends ComponentPropsWithRef<"div"> {
|
|
15
|
+
/** The trigger's text in the dock, e.g. "Ask AI" or "Feedback". */
|
|
16
|
+
label: ReactNode;
|
|
17
|
+
/** The panel's accessible name, also shown by `MorphSurfaceForm`. Defaults to `label`. */
|
|
18
|
+
panelLabel?: string;
|
|
19
|
+
/** Decoration beside the label (an orb, a logo). Hidden from assistive technology. */
|
|
20
|
+
icon?: ReactNode;
|
|
21
|
+
open?: boolean;
|
|
22
|
+
defaultOpen?: boolean;
|
|
23
|
+
onOpenChange?: (open: boolean) => void;
|
|
24
|
+
/** The expanded panel's width. Numbers are pixels. */
|
|
25
|
+
panelWidth?: Size;
|
|
26
|
+
/** The expanded panel's height. Numbers are pixels. */
|
|
27
|
+
panelHeight?: Size;
|
|
28
|
+
/** Shown in the dock, and announced, after the panel closes successfully. */
|
|
29
|
+
successLabel?: string;
|
|
30
|
+
/** How long the success label stays, in milliseconds. */
|
|
31
|
+
successDuration?: number;
|
|
32
|
+
}
|
|
33
|
+
/** A dock that morphs into a panel — a feedback form, a quick prompt. */
|
|
34
|
+
declare function MorphSurface({ ref, className, style, children, label, panelLabel, icon, open: openProp, defaultOpen, onOpenChange, panelWidth, panelHeight, successLabel, successDuration, ...props }: MorphSurfaceProps): import("react").JSX.Element;
|
|
35
|
+
interface MorphSurfaceFormProps extends Omit<ComponentPropsWithRef<"form">, "onSubmit"> {
|
|
36
|
+
/**
|
|
37
|
+
* Called with the trimmed message. Return `false` to keep the panel open
|
|
38
|
+
* (a failed request, say); otherwise it closes and shows the success label.
|
|
39
|
+
*/
|
|
40
|
+
onSubmit?: (value: string, event: FormEvent<HTMLFormElement>) => boolean | void;
|
|
41
|
+
placeholder?: string;
|
|
42
|
+
/** The submit button's accessible name. The visible text is the shortcut. */
|
|
43
|
+
submitLabel?: string;
|
|
44
|
+
/** The textarea's form field name. */
|
|
45
|
+
fieldName?: string;
|
|
46
|
+
}
|
|
47
|
+
/** The source's panel: a labelled message box, submitted with ⌘/Ctrl + Enter. */
|
|
48
|
+
declare function MorphSurfaceForm({ className, onSubmit, placeholder, submitLabel, fieldName, ...props }: MorphSurfaceFormProps): import("react").JSX.Element;
|
|
49
|
+
//#endregion
|
|
50
|
+
export { MorphSurface, MorphSurfaceForm, MorphSurfaceFormProps, MorphSurfaceProps, useMorphSurface };
|
|
51
|
+
//# sourceMappingURL=morph-surface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"morph-surface.d.ts","names":[],"sources":["../../../src/components/morph-surface/morph-surface.tsx"],"mappings":";;KAiCK;UAEK;EACR;EACA,QAAQ;IAAY;;EACpB;EACA,MAAM;;;iBAMQ,mBAAmB;UASlB,0BAA0B;;EAEzC,OAAO;;EAEP;;EAEA,OAAO;EACP;EACA;EACA,gBAAgB;;EAEhB,aAAa;;EAEb,cAAc;;EAEd;;EAEA;;;iBAIc,eACd,KACA,WACA,OACA,UACA,OACA,YACA,MACA,MAAM,UACN,aACA,cACA,YACA,aACA,cACA,oBACG,SACF,oCAAiB,IAAA;UA4LH,8BAA8B,KAAK;;;;;EAKlD,YAAY,eAAe,OAAO,UAAU;EAC5C;;EAEA;;EAEA;;;iBAIc,mBACd,WACA,UACA,aACA,aACA,cACG,SACF,wCAAqB,IAAA"}
|
|
@@ -0,0 +1,228 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { focusRing } from "../../lib/styles.js";
|
|
3
|
+
import { cn } from "../../lib/utils.js";
|
|
4
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
5
|
+
import { createContext, useCallback, useContext, useEffect, useId, useLayoutEffect, useRef, useState } from "react";
|
|
6
|
+
//#region src/components/morph-surface/morph-surface.tsx
|
|
7
|
+
const MorphSurfaceContext = createContext(null);
|
|
8
|
+
/** The surrounding surface, for custom panel content (a close button, say). */
|
|
9
|
+
function useMorphSurface() {
|
|
10
|
+
const context = useContext(MorphSurfaceContext);
|
|
11
|
+
if (!context) throw new Error("useMorphSurface must be used inside <MorphSurface>.");
|
|
12
|
+
return context;
|
|
13
|
+
}
|
|
14
|
+
const FOCUSABLE = "button:not([disabled]), [href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex=\"-1\"])";
|
|
15
|
+
/** A dock that morphs into a panel — a feedback form, a quick prompt. */
|
|
16
|
+
function MorphSurface({ ref, className, style, children, label, panelLabel, icon, open: openProp, defaultOpen = false, onOpenChange, panelWidth = "22.5rem", panelHeight = "12.5rem", successLabel = "Sent", successDuration = 1500, ...props }) {
|
|
17
|
+
const [uncontrolled, setUncontrolled] = useState(defaultOpen);
|
|
18
|
+
const open = openProp ?? uncontrolled;
|
|
19
|
+
const [success, setSuccess] = useState(false);
|
|
20
|
+
const rootRef = useRef(null);
|
|
21
|
+
const dockRef = useRef(null);
|
|
22
|
+
const panelRef = useRef(null);
|
|
23
|
+
const triggerRef = useRef(null);
|
|
24
|
+
const restoreFocus = useRef(false);
|
|
25
|
+
const successTimer = useRef(void 0);
|
|
26
|
+
const [dock, setDock] = useState(null);
|
|
27
|
+
const panelId = useId();
|
|
28
|
+
const name = panelLabel ?? (typeof label === "string" ? label : "Panel");
|
|
29
|
+
const setRootRef = useCallback((node) => {
|
|
30
|
+
rootRef.current = node;
|
|
31
|
+
if (typeof ref === "function") ref(node);
|
|
32
|
+
else if (ref) ref.current = node;
|
|
33
|
+
}, [ref]);
|
|
34
|
+
const setOpen = useCallback((next) => {
|
|
35
|
+
if (openProp === void 0) setUncontrolled(next);
|
|
36
|
+
onOpenChange?.(next);
|
|
37
|
+
}, [openProp, onOpenChange]);
|
|
38
|
+
const close = useCallback((options = {}) => {
|
|
39
|
+
restoreFocus.current = options.restore ?? true;
|
|
40
|
+
setOpen(false);
|
|
41
|
+
if (options.success) {
|
|
42
|
+
clearTimeout(successTimer.current);
|
|
43
|
+
setSuccess(true);
|
|
44
|
+
successTimer.current = setTimeout(() => setSuccess(false), successDuration);
|
|
45
|
+
}
|
|
46
|
+
}, [setOpen, successDuration]);
|
|
47
|
+
useEffect(() => () => clearTimeout(successTimer.current), []);
|
|
48
|
+
useLayoutEffect(() => {
|
|
49
|
+
const element = dockRef.current;
|
|
50
|
+
if (!element) return;
|
|
51
|
+
const measure = () => {
|
|
52
|
+
const width = element.offsetWidth;
|
|
53
|
+
const height = element.offsetHeight;
|
|
54
|
+
if (width && height) setDock((d) => d?.width === width && d.height === height ? d : {
|
|
55
|
+
width,
|
|
56
|
+
height
|
|
57
|
+
});
|
|
58
|
+
};
|
|
59
|
+
measure();
|
|
60
|
+
const observer = new ResizeObserver(measure);
|
|
61
|
+
observer.observe(element);
|
|
62
|
+
return () => observer.disconnect();
|
|
63
|
+
}, []);
|
|
64
|
+
useEffect(() => {
|
|
65
|
+
if (open) {
|
|
66
|
+
const panel = panelRef.current;
|
|
67
|
+
(panel?.querySelector("[data-autofocus]") ?? panel?.querySelector(FOCUSABLE) ?? panel)?.focus();
|
|
68
|
+
} else if (restoreFocus.current) {
|
|
69
|
+
restoreFocus.current = false;
|
|
70
|
+
triggerRef.current?.focus();
|
|
71
|
+
}
|
|
72
|
+
}, [open]);
|
|
73
|
+
useEffect(() => {
|
|
74
|
+
if (!open) return;
|
|
75
|
+
const onPointerDown = (event) => {
|
|
76
|
+
if (!rootRef.current?.contains(event.target)) close({ restore: false });
|
|
77
|
+
};
|
|
78
|
+
document.addEventListener("pointerdown", onPointerDown);
|
|
79
|
+
return () => document.removeEventListener("pointerdown", onPointerDown);
|
|
80
|
+
}, [open, close]);
|
|
81
|
+
function handleKeyDown(event) {
|
|
82
|
+
if (event.key !== "Escape") return;
|
|
83
|
+
event.preventDefault();
|
|
84
|
+
close();
|
|
85
|
+
}
|
|
86
|
+
function handleBlur(event) {
|
|
87
|
+
const next = event.relatedTarget;
|
|
88
|
+
if (next && !rootRef.current?.contains(next)) close({ restore: false });
|
|
89
|
+
}
|
|
90
|
+
const state = open ? "open" : "closed";
|
|
91
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
92
|
+
ref: setRootRef,
|
|
93
|
+
"data-slot": "morph-surface",
|
|
94
|
+
"data-state": state,
|
|
95
|
+
className: cn("relative flex flex-col items-start justify-end overflow-hidden bg-popover text-popover-foreground shadow-lg ring-1 ring-border", "max-w-full transition-[width,height,border-radius] duration-[var(--duration-slow)] ease-[var(--ease-out-quint)]", "rounded-[1.25rem] data-[state=closed]:delay-[var(--duration-instant)] data-[state=open]:rounded-[0.875rem]", className),
|
|
96
|
+
style: {
|
|
97
|
+
width: open ? panelWidth : dock?.width,
|
|
98
|
+
height: open ? panelHeight : dock?.height,
|
|
99
|
+
...style
|
|
100
|
+
},
|
|
101
|
+
...props,
|
|
102
|
+
children: [
|
|
103
|
+
/* @__PURE__ */ jsxs("div", {
|
|
104
|
+
ref: dockRef,
|
|
105
|
+
"data-slot": "morph-surface-dock",
|
|
106
|
+
"data-state": state,
|
|
107
|
+
inert: open,
|
|
108
|
+
className: cn("flex h-11 w-max shrink-0 items-center gap-2 px-3 whitespace-nowrap select-none", "transition-[opacity,visibility] duration-[var(--duration-fast)]", "data-[state=open]:invisible data-[state=open]:opacity-0"),
|
|
109
|
+
children: [icon ? /* @__PURE__ */ jsx("span", {
|
|
110
|
+
"aria-hidden": "true",
|
|
111
|
+
className: "flex size-6 items-center justify-center",
|
|
112
|
+
children: icon
|
|
113
|
+
}) : null, /* @__PURE__ */ jsx("button", {
|
|
114
|
+
ref: triggerRef,
|
|
115
|
+
type: "button",
|
|
116
|
+
"data-slot": "morph-surface-trigger",
|
|
117
|
+
"aria-expanded": open,
|
|
118
|
+
"aria-controls": panelId,
|
|
119
|
+
onClick: () => setOpen(true),
|
|
120
|
+
className: cn("rounded-full px-2 py-0.5 text-sm font-medium transition-colors duration-[var(--duration-fast)] hover:bg-accent", focusRing),
|
|
121
|
+
children: success ? successLabel : label
|
|
122
|
+
})]
|
|
123
|
+
}),
|
|
124
|
+
/* @__PURE__ */ jsx("div", {
|
|
125
|
+
ref: panelRef,
|
|
126
|
+
id: panelId,
|
|
127
|
+
role: "dialog",
|
|
128
|
+
"aria-label": name,
|
|
129
|
+
tabIndex: -1,
|
|
130
|
+
"data-slot": "morph-surface-panel",
|
|
131
|
+
"data-state": state,
|
|
132
|
+
inert: !open,
|
|
133
|
+
onKeyDown: handleKeyDown,
|
|
134
|
+
onBlur: handleBlur,
|
|
135
|
+
className: cn("absolute start-0 bottom-0 flex flex-col p-1 outline-none", "transition-[opacity,visibility] duration-[var(--duration-normal)] ease-[var(--ease-out-quint)]", "data-[state=closed]:invisible data-[state=closed]:opacity-0 data-[state=closed]:duration-[var(--duration-instant)]"),
|
|
136
|
+
style: {
|
|
137
|
+
width: panelWidth,
|
|
138
|
+
height: panelHeight,
|
|
139
|
+
maxWidth: "100%"
|
|
140
|
+
},
|
|
141
|
+
children: /* @__PURE__ */ jsx(MorphSurfaceContext.Provider, {
|
|
142
|
+
value: {
|
|
143
|
+
open,
|
|
144
|
+
close,
|
|
145
|
+
panelLabel: name,
|
|
146
|
+
icon
|
|
147
|
+
},
|
|
148
|
+
children
|
|
149
|
+
})
|
|
150
|
+
}),
|
|
151
|
+
/* @__PURE__ */ jsx("span", {
|
|
152
|
+
role: "status",
|
|
153
|
+
className: "sr-only",
|
|
154
|
+
children: success ? successLabel : ""
|
|
155
|
+
})
|
|
156
|
+
]
|
|
157
|
+
});
|
|
158
|
+
}
|
|
159
|
+
function Kbd({ children }) {
|
|
160
|
+
return /* @__PURE__ */ jsx("kbd", {
|
|
161
|
+
className: "flex h-6 min-w-6 items-center justify-center rounded-sm border border-border bg-muted px-1.5 font-sans text-xs text-foreground",
|
|
162
|
+
children
|
|
163
|
+
});
|
|
164
|
+
}
|
|
165
|
+
/** The source's panel: a labelled message box, submitted with ⌘/Ctrl + Enter. */
|
|
166
|
+
function MorphSurfaceForm({ className, onSubmit, placeholder = "Ask me anything…", submitLabel = "Send", fieldName = "message", ...props }) {
|
|
167
|
+
const { close, panelLabel, icon } = useMorphSurface();
|
|
168
|
+
const fieldId = useId();
|
|
169
|
+
function handleSubmit(event) {
|
|
170
|
+
event.preventDefault();
|
|
171
|
+
const field = event.currentTarget.elements.namedItem(fieldName);
|
|
172
|
+
const value = field.value.trim();
|
|
173
|
+
if (!value) return;
|
|
174
|
+
if (onSubmit?.(value, event) === false) return;
|
|
175
|
+
field.value = "";
|
|
176
|
+
close({ success: true });
|
|
177
|
+
}
|
|
178
|
+
function handleKeyDown(event) {
|
|
179
|
+
if (event.key === "Enter" && (event.metaKey || event.ctrlKey)) {
|
|
180
|
+
event.preventDefault();
|
|
181
|
+
event.currentTarget.form?.requestSubmit();
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
return /* @__PURE__ */ jsxs("form", {
|
|
185
|
+
"data-slot": "morph-surface-form",
|
|
186
|
+
className: cn("flex h-full flex-col", className),
|
|
187
|
+
onSubmit: handleSubmit,
|
|
188
|
+
...props,
|
|
189
|
+
children: [/* @__PURE__ */ jsxs("div", {
|
|
190
|
+
className: "flex items-center justify-between gap-2 py-1 ps-2 pe-1",
|
|
191
|
+
children: [/* @__PURE__ */ jsxs("label", {
|
|
192
|
+
htmlFor: fieldId,
|
|
193
|
+
className: "flex items-center gap-1.5 text-sm font-medium",
|
|
194
|
+
children: [icon ? /* @__PURE__ */ jsx("span", {
|
|
195
|
+
"aria-hidden": "true",
|
|
196
|
+
className: "flex size-6 items-center justify-center",
|
|
197
|
+
children: icon
|
|
198
|
+
}) : null, panelLabel]
|
|
199
|
+
}), /* @__PURE__ */ jsxs("button", {
|
|
200
|
+
type: "submit",
|
|
201
|
+
"data-slot": "morph-surface-submit",
|
|
202
|
+
className: cn("flex items-center gap-1 rounded-md p-0.5", focusRing),
|
|
203
|
+
children: [/* @__PURE__ */ jsx("span", {
|
|
204
|
+
className: "sr-only",
|
|
205
|
+
children: submitLabel
|
|
206
|
+
}), /* @__PURE__ */ jsxs("span", {
|
|
207
|
+
"aria-hidden": "true",
|
|
208
|
+
className: "flex gap-1",
|
|
209
|
+
children: [/* @__PURE__ */ jsx(Kbd, { children: "⌘" }), /* @__PURE__ */ jsx(Kbd, { children: "Enter" })]
|
|
210
|
+
})]
|
|
211
|
+
})]
|
|
212
|
+
}), /* @__PURE__ */ jsx("textarea", {
|
|
213
|
+
id: fieldId,
|
|
214
|
+
name: fieldName,
|
|
215
|
+
required: true,
|
|
216
|
+
"data-autofocus": true,
|
|
217
|
+
spellCheck: false,
|
|
218
|
+
placeholder,
|
|
219
|
+
"aria-keyshortcuts": "Meta+Enter Control+Enter",
|
|
220
|
+
onKeyDown: handleKeyDown,
|
|
221
|
+
className: cn("w-full flex-1 resize-none rounded-md bg-muted p-3 text-sm text-foreground placeholder:text-muted-foreground", focusRing)
|
|
222
|
+
})]
|
|
223
|
+
});
|
|
224
|
+
}
|
|
225
|
+
//#endregion
|
|
226
|
+
export { MorphSurface, MorphSurfaceForm, useMorphSurface };
|
|
227
|
+
|
|
228
|
+
//# sourceMappingURL=morph-surface.js.map
|