love-ui 1.2.13 → 1.2.15
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 +6 -6
- package/package.json +7 -37
- package/registry/__index__.tsx +590 -0
- package/registry/default/examples/accordion-controlled.tsx +56 -0
- package/registry/default/examples/accordion-demo.tsx +39 -0
- package/registry/default/examples/accordion-multiple.tsx +35 -0
- package/registry/default/examples/accordion-product-faq.tsx +25 -0
- package/registry/default/examples/accordion-single.tsx +35 -0
- package/registry/default/examples/alert-billing-notice.tsx +19 -0
- package/registry/default/examples/alert-demo.tsx +16 -0
- package/registry/default/examples/alert-dialog-demo.tsx +38 -0
- package/registry/default/examples/alert-error.tsx +19 -0
- package/registry/default/examples/alert-info.tsx +19 -0
- package/registry/default/examples/alert-success.tsx +20 -0
- package/registry/default/examples/alert-warning.tsx +19 -0
- package/registry/default/examples/alert-with-icon-action.tsx +27 -0
- package/registry/default/examples/alert-with-icon.tsx +19 -0
- package/registry/default/examples/autocomplete-async.tsx +134 -0
- package/registry/default/examples/autocomplete-autohighlight.tsx +44 -0
- package/registry/default/examples/autocomplete-demo.tsx +44 -0
- package/registry/default/examples/autocomplete-disabled.tsx +44 -0
- package/registry/default/examples/autocomplete-form.tsx +69 -0
- package/registry/default/examples/autocomplete-grouped.tsx +112 -0
- package/registry/default/examples/autocomplete-inline.tsx +44 -0
- package/registry/default/examples/autocomplete-lg.tsx +45 -0
- package/registry/default/examples/autocomplete-limit.tsx +83 -0
- package/registry/default/examples/autocomplete-members.tsx +38 -0
- package/registry/default/examples/autocomplete-sm.tsx +45 -0
- package/registry/default/examples/autocomplete-with-clear.tsx +45 -0
- package/registry/default/examples/autocomplete-with-label.tsx +52 -0
- package/registry/default/examples/autocomplete-with-trigger-clear.tsx +46 -0
- package/registry/default/examples/avatar-demo.tsx +17 -0
- package/registry/default/examples/avatar-fallback.tsx +9 -0
- package/registry/default/examples/avatar-group.tsx +33 -0
- package/registry/default/examples/avatar-radius.tsx +33 -0
- package/registry/default/examples/avatar-size.tsx +33 -0
- package/registry/default/examples/avatar-team-stack.tsx +27 -0
- package/registry/default/examples/badge-demo.tsx +5 -0
- package/registry/default/examples/badge-destructive.tsx +5 -0
- package/registry/default/examples/badge-error.tsx +5 -0
- package/registry/default/examples/badge-info.tsx +5 -0
- package/registry/default/examples/badge-lg.tsx +5 -0
- package/registry/default/examples/badge-outline.tsx +5 -0
- package/registry/default/examples/badge-release-status.tsx +16 -0
- package/registry/default/examples/badge-secondary.tsx +5 -0
- package/registry/default/examples/badge-sm.tsx +5 -0
- package/registry/default/examples/badge-success.tsx +5 -0
- package/registry/default/examples/badge-warning.tsx +5 -0
- package/registry/default/examples/badge-with-icon.tsx +12 -0
- package/registry/default/examples/badge-with-link.tsx +7 -0
- package/registry/default/examples/breadcrumb-compact-path.tsx +22 -0
- package/registry/default/examples/breadcrumb-custom-separator.tsx +34 -0
- package/registry/default/examples/breadcrumb-demo.tsx +60 -0
- package/registry/default/examples/breadcrumb-with-ellipsis.tsx +25 -0
- package/registry/default/examples/breadcrumb-workspace-path.tsx +28 -0
- package/registry/default/examples/button-command-bar.tsx +18 -0
- package/registry/default/examples/button-demo.tsx +5 -0
- package/registry/default/examples/button-destructive-outline.tsx +5 -0
- package/registry/default/examples/button-destructive.tsx +5 -0
- package/registry/default/examples/button-disabled.tsx +5 -0
- package/registry/default/examples/button-ghost.tsx +5 -0
- package/registry/default/examples/button-icon-lg.tsx +11 -0
- package/registry/default/examples/button-icon-sm.tsx +11 -0
- package/registry/default/examples/button-icon.tsx +11 -0
- package/registry/default/examples/button-lg.tsx +5 -0
- package/registry/default/examples/button-link.tsx +5 -0
- package/registry/default/examples/button-loading.tsx +12 -0
- package/registry/default/examples/button-outline.tsx +5 -0
- package/registry/default/examples/button-secondary.tsx +5 -0
- package/registry/default/examples/button-sm.tsx +5 -0
- package/registry/default/examples/button-with-icon.tsx +12 -0
- package/registry/default/examples/button-with-link.tsx +7 -0
- package/registry/default/examples/button-xl.tsx +5 -0
- package/registry/default/examples/button-xs.tsx +5 -0
- package/registry/default/examples/card-billing-plan.tsx +26 -0
- package/registry/default/examples/card-demo.tsx +71 -0
- package/registry/default/examples/card-metric-summary.tsx +29 -0
- package/registry/default/examples/card-team-member.tsx +34 -0
- package/registry/default/examples/checkbox-card.tsx +16 -0
- package/registry/default/examples/checkbox-demo.tsx +11 -0
- package/registry/default/examples/checkbox-disabled.tsx +11 -0
- package/registry/default/examples/checkbox-form.tsx +39 -0
- package/registry/default/examples/checkbox-group-demo.tsx +25 -0
- package/registry/default/examples/checkbox-group-disabled.tsx +25 -0
- package/registry/default/examples/checkbox-group-form.tsx +54 -0
- package/registry/default/examples/checkbox-group-nested-parent.tsx +90 -0
- package/registry/default/examples/checkbox-group-parent.tsx +38 -0
- package/registry/default/examples/checkbox-notification-row.tsx +17 -0
- package/registry/default/examples/checkbox-with-description.tsx +21 -0
- package/registry/default/examples/code-block-diff.tsx +42 -0
- package/registry/default/examples/code-block-focus.tsx +28 -0
- package/registry/default/examples/code-block-headless.tsx +19 -0
- package/registry/default/examples/code-block-highlight-line.tsx +28 -0
- package/registry/default/examples/code-block-highlight-word.tsx +28 -0
- package/registry/default/examples/code-block-no-highlighting.tsx +34 -0
- package/registry/default/examples/code-block-numberless.tsx +34 -0
- package/registry/default/examples/code-block-shared/index.tsx +2 -0
- package/registry/default/examples/code-block-shared.tsx +26 -0
- package/registry/default/examples/code-block-theme.tsx +36 -0
- package/registry/default/examples/code-block.tsx +34 -0
- package/registry/default/examples/collapsible-checklist.tsx +26 -0
- package/registry/default/examples/collapsible-command-help.tsx +16 -0
- package/registry/default/examples/collapsible-demo.tsx +31 -0
- package/registry/default/examples/collapsible-release-notes.tsx +21 -0
- package/registry/default/examples/combobox-assignee.tsx +34 -0
- package/registry/default/examples/combobox-autohighlight.tsx +44 -0
- package/registry/default/examples/combobox-demo.tsx +44 -0
- package/registry/default/examples/combobox-disabled.tsx +44 -0
- package/registry/default/examples/combobox-form.tsx +68 -0
- package/registry/default/examples/combobox-grouped.tsx +112 -0
- package/registry/default/examples/combobox-lg.tsx +45 -0
- package/registry/default/examples/combobox-multiple-form.tsx +94 -0
- package/registry/default/examples/combobox-multiple.tsx +60 -0
- package/registry/default/examples/combobox-sm.tsx +45 -0
- package/registry/default/examples/combobox-with-clear.tsx +45 -0
- package/registry/default/examples/combobox-with-inner-input.tsx +880 -0
- package/registry/default/examples/combobox-with-label.tsx +52 -0
- package/registry/default/examples/dialog-close-confirmation.tsx +112 -0
- package/registry/default/examples/dialog-demo.tsx +50 -0
- package/registry/default/examples/dialog-from-menu.tsx +53 -0
- package/registry/default/examples/dialog-invite-member.tsx +34 -0
- package/registry/default/examples/dialog-nested.tsx +71 -0
- package/registry/default/examples/empty-demo.tsx +36 -0
- package/registry/default/examples/empty-filtered-results.tsx +24 -0
- package/registry/default/examples/empty-inbox-zero.tsx +21 -0
- package/registry/default/examples/empty-upload-queue.tsx +24 -0
- package/registry/default/examples/field-autocomplete.tsx +53 -0
- package/registry/default/examples/field-checkbox-group.tsx +38 -0
- package/registry/default/examples/field-checkbox.tsx +13 -0
- package/registry/default/examples/field-combobox-multiple.tsx +69 -0
- package/registry/default/examples/field-combobox.tsx +53 -0
- package/registry/default/examples/field-complete-form.tsx +113 -0
- package/registry/default/examples/field-demo.tsx +16 -0
- package/registry/default/examples/field-disabled.tsx +22 -0
- package/registry/default/examples/field-error.tsx +16 -0
- package/registry/default/examples/field-number-field.tsx +27 -0
- package/registry/default/examples/field-password.tsx +11 -0
- package/registry/default/examples/field-radio.tsx +37 -0
- package/registry/default/examples/field-required.tsx +22 -0
- package/registry/default/examples/field-select.tsx +41 -0
- package/registry/default/examples/field-slider.tsx +16 -0
- package/registry/default/examples/field-switch.tsx +13 -0
- package/registry/default/examples/field-textarea.tsx +25 -0
- package/registry/default/examples/field-validity.tsx +37 -0
- package/registry/default/examples/fieldset-billing-address.tsx +12 -0
- package/registry/default/examples/fieldset-danger-zone.tsx +15 -0
- package/registry/default/examples/fieldset-demo.tsx +33 -0
- package/registry/default/examples/fieldset-notification-settings.tsx +14 -0
- package/registry/default/examples/form-demo.tsx +43 -0
- package/registry/default/examples/form-newsletter.tsx +16 -0
- package/registry/default/examples/form-profile-card.tsx +13 -0
- package/registry/default/examples/form-zod.tsx +84 -0
- package/registry/default/examples/form.tsx +318 -0
- package/registry/default/examples/frame-analytics-panel.tsx +16 -0
- package/registry/default/examples/frame-code-output.tsx +11 -0
- package/registry/default/examples/frame-demo.tsx +26 -0
- package/registry/default/examples/frame-device-preview.tsx +14 -0
- package/registry/default/examples/gooey-toast-demo.tsx +104 -0
- package/registry/default/examples/gooey-toast-position.tsx +36 -0
- package/registry/default/examples/gooey-toast-promise.tsx +31 -0
- package/registry/default/examples/gooey-toast-states.tsx +76 -0
- package/registry/default/examples/gooey-toast-with-button.tsx +34 -0
- package/registry/default/examples/group-demo.tsx +28 -0
- package/registry/default/examples/group-filter-actions.tsx +14 -0
- package/registry/default/examples/group-segmented-filters.tsx +12 -0
- package/registry/default/examples/group-toolbar-actions.tsx +14 -0
- package/registry/default/examples/group-with-input.tsx +23 -0
- package/registry/default/examples/input-demo.tsx +7 -0
- package/registry/default/examples/input-disabled.tsx +11 -0
- package/registry/default/examples/input-file.tsx +5 -0
- package/registry/default/examples/input-lg.tsx +11 -0
- package/registry/default/examples/input-search-inline.tsx +12 -0
- package/registry/default/examples/input-sm.tsx +11 -0
- package/registry/default/examples/input-with-button.tsx +15 -0
- package/registry/default/examples/input-with-label.tsx +19 -0
- package/registry/default/examples/label-password-field.tsx +11 -0
- package/registry/default/examples/menu-checkbox.tsx +21 -0
- package/registry/default/examples/menu-close-on-click.tsx +22 -0
- package/registry/default/examples/menu-demo.tsx +102 -0
- package/registry/default/examples/menu-group-labels.tsx +27 -0
- package/registry/default/examples/menu-hover.tsx +21 -0
- package/registry/default/examples/menu-link.tsx +25 -0
- package/registry/default/examples/menu-nested.tsx +31 -0
- package/registry/default/examples/menu-project-actions.tsx +17 -0
- package/registry/default/examples/menu-radio-group.tsx +25 -0
- package/registry/default/examples/meter-demo.tsx +21 -0
- package/registry/default/examples/meter-simple.tsx +5 -0
- package/registry/default/examples/meter-storage-quota.tsx +13 -0
- package/registry/default/examples/meter-with-formatted-value.tsx +23 -0
- package/registry/default/examples/meter-with-range.tsx +23 -0
- package/registry/default/examples/number-field-demo.tsx +19 -0
- package/registry/default/examples/number-field-disabled.tsx +19 -0
- package/registry/default/examples/number-field-form.tsx +75 -0
- package/registry/default/examples/number-field-lg.tsx +19 -0
- package/registry/default/examples/number-field-sm.tsx +19 -0
- package/registry/default/examples/number-field-ticket-count.tsx +19 -0
- package/registry/default/examples/number-field-with-formatted-value.tsx +22 -0
- package/registry/default/examples/number-field-with-label.tsx +26 -0
- package/registry/default/examples/number-field-with-range.tsx +19 -0
- package/registry/default/examples/number-field-with-scrub.tsx +21 -0
- package/registry/default/examples/number-field-with-step.tsx +31 -0
- package/registry/default/examples/pagination-compact.tsx +13 -0
- package/registry/default/examples/pagination-demo.tsx +38 -0
- package/registry/default/examples/pagination-mini.tsx +12 -0
- package/registry/default/examples/pagination-results.tsx +22 -0
- package/registry/default/examples/popover-account-summary.tsx +14 -0
- package/registry/default/examples/popover-color-swatch.tsx +20 -0
- package/registry/default/examples/popover-demo.tsx +41 -0
- package/registry/default/examples/popover-with-close.tsx +38 -0
- package/registry/default/examples/preview-card-demo.tsx +46 -0
- package/registry/default/examples/preview-card-product.tsx +18 -0
- package/registry/default/examples/preview-card-profile.tsx +17 -0
- package/registry/default/examples/preview-card-repository.tsx +19 -0
- package/registry/default/examples/progress-demo.tsx +20 -0
- package/registry/default/examples/progress-onboarding.tsx +10 -0
- package/registry/default/examples/progress-with-formatted-value.tsx +23 -0
- package/registry/default/examples/progress-with-label-value.tsx +21 -0
- package/registry/default/examples/radio-group-card.tsx +27 -0
- package/registry/default/examples/radio-group-delivery.tsx +16 -0
- package/registry/default/examples/radio-group-demo.tsx +18 -0
- package/registry/default/examples/radio-group-disabled.tsx +18 -0
- package/registry/default/examples/radio-group-form.tsx +50 -0
- package/registry/default/examples/radio-group-with-description.tsx +27 -0
- package/registry/default/examples/scroll-area-activity.tsx +13 -0
- package/registry/default/examples/scroll-area-both.tsx +24 -0
- package/registry/default/examples/scroll-area-demo.tsx +20 -0
- package/registry/default/examples/scroll-area-horizontal.tsx +18 -0
- package/registry/default/examples/select-demo.tsx +31 -0
- package/registry/default/examples/select-disabled.tsx +31 -0
- package/registry/default/examples/select-form.tsx +64 -0
- package/registry/default/examples/select-lg.tsx +31 -0
- package/registry/default/examples/select-multiple.tsx +54 -0
- package/registry/default/examples/select-sm.tsx +31 -0
- package/registry/default/examples/select-timezone.tsx +16 -0
- package/registry/default/examples/select-with-groups.tsx +56 -0
- package/registry/default/examples/select-without-alignment.tsx +31 -0
- package/registry/default/examples/separator-demo.tsx +25 -0
- package/registry/default/examples/separator-section-label.tsx +11 -0
- package/registry/default/examples/separator-timeline.tsx +13 -0
- package/registry/default/examples/separator-vertical-stack.tsx +13 -0
- package/registry/default/examples/sheet-checkout-summary.tsx +19 -0
- package/registry/default/examples/sheet-demo.tsx +60 -0
- package/registry/default/examples/sheet-position.tsx +82 -0
- package/registry/default/examples/sheet-profile-editor.tsx +19 -0
- package/registry/default/examples/skeleton-chat-list.tsx +14 -0
- package/registry/default/examples/skeleton-dashboard-card.tsx +15 -0
- package/registry/default/examples/skeleton-demo.tsx +112 -0
- package/registry/default/examples/skeleton-only.tsx +17 -0
- package/registry/default/examples/slider-demo.tsx +5 -0
- package/registry/default/examples/slider-form.tsx +46 -0
- package/registry/default/examples/slider-opacity.tsx +12 -0
- package/registry/default/examples/slider-range.tsx +5 -0
- package/registry/default/examples/slider-vertical.tsx +5 -0
- package/registry/default/examples/slider-with-label-value.tsx +13 -0
- package/registry/default/examples/switch-card.tsx +23 -0
- package/registry/default/examples/switch-demo.tsx +11 -0
- package/registry/default/examples/switch-disabled.tsx +11 -0
- package/registry/default/examples/switch-form.tsx +38 -0
- package/registry/default/examples/switch-privacy-mode.tsx +12 -0
- package/registry/default/examples/switch-with-description.tsx +20 -0
- package/registry/default/examples/table-demo.tsx +123 -0
- package/registry/default/examples/table-framed.tsx +132 -0
- package/registry/default/examples/table-invoice-list.tsx +14 -0
- package/registry/default/examples/table-user-roles.tsx +12 -0
- package/registry/default/examples/table.tsx +170 -0
- package/registry/default/examples/tabs-demo.tsx +28 -0
- package/registry/default/examples/tabs-settings.tsx +11 -0
- package/registry/default/examples/tabs-underline-vertical.tsx +34 -0
- package/registry/default/examples/tabs-underline.tsx +30 -0
- package/registry/default/examples/tabs-vertical.tsx +28 -0
- package/registry/default/examples/textarea-demo.tsx +5 -0
- package/registry/default/examples/textarea-disabled.tsx +5 -0
- package/registry/default/examples/textarea-feedback.tsx +5 -0
- package/registry/default/examples/textarea-form.tsx +44 -0
- package/registry/default/examples/textarea-lg.tsx +5 -0
- package/registry/default/examples/textarea-sm.tsx +5 -0
- package/registry/default/examples/textarea-with-label.tsx +14 -0
- package/registry/default/examples/toast-demo.tsx +20 -0
- package/registry/default/examples/toast-heights.tsx +32 -0
- package/registry/default/examples/toast-loading.tsx +21 -0
- package/registry/default/examples/toast-promise.tsx +42 -0
- package/registry/default/examples/toast-sync-complete.tsx +15 -0
- package/registry/default/examples/toast-with-action.tsx +33 -0
- package/registry/default/examples/toast-with-status.tsx +60 -0
- package/registry/default/examples/toggle-demo.tsx +5 -0
- package/registry/default/examples/toggle-disabled.tsx +9 -0
- package/registry/default/examples/toggle-group-demo.tsx +19 -0
- package/registry/default/examples/toggle-group-disabled.tsx +19 -0
- package/registry/default/examples/toggle-group-lg.tsx +19 -0
- package/registry/default/examples/toggle-group-multiple.tsx +19 -0
- package/registry/default/examples/toggle-group-outline-with-separator.tsx +25 -0
- package/registry/default/examples/toggle-group-outline.tsx +19 -0
- package/registry/default/examples/toggle-group-sm.tsx +19 -0
- package/registry/default/examples/toggle-group-with-disabled-item.tsx +19 -0
- package/registry/default/examples/toggle-icon-group.tsx +19 -0
- package/registry/default/examples/toggle-lg.tsx +9 -0
- package/registry/default/examples/toggle-outline.tsx +5 -0
- package/registry/default/examples/toggle-sm.tsx +9 -0
- package/registry/default/examples/toggle-view-mode.tsx +12 -0
- package/registry/default/examples/toggle-with-icon.tsx +11 -0
- package/registry/default/examples/toolbar-canvas-controls.tsx +17 -0
- package/registry/default/examples/toolbar-demo.tsx +155 -0
- package/registry/default/examples/toolbar-density-controls.tsx +17 -0
- package/registry/default/examples/toolbar-media-controls.tsx +16 -0
- package/registry/default/examples/tooltip-demo.tsx +17 -0
- package/registry/default/examples/tooltip-grouped.tsx +46 -0
- package/registry/default/examples/tooltip-icon-row.tsx +13 -0
- package/registry/default/examples/tooltip-keyboard-hints.tsx +11 -0
- package/registry/default/ui/accordion.tsx +66 -0
- package/registry/default/ui/alert-dialog.tsx +16 -0
- package/registry/default/ui/alert.tsx +215 -0
- package/registry/default/ui/autocomplete.tsx +282 -0
- package/registry/default/ui/avatar.tsx +46 -0
- package/registry/default/ui/badge.tsx +57 -0
- package/registry/default/ui/breadcrumb.tsx +109 -0
- package/registry/default/ui/button.tsx +85 -0
- package/registry/default/ui/card.tsx +113 -0
- package/registry/default/ui/checkbox-group.tsx +3 -0
- package/registry/default/ui/checkbox.tsx +71 -0
- package/registry/default/ui/collapsible.tsx +45 -0
- package/registry/default/ui/combobox.tsx +355 -0
- package/registry/default/ui/dialog.tsx +134 -0
- package/registry/default/ui/empty.tsx +127 -0
- package/registry/default/ui/field.tsx +128 -0
- package/registry/default/ui/fieldset.tsx +29 -0
- package/registry/default/ui/form.tsx +9 -0
- package/registry/default/ui/frame.tsx +81 -0
- package/registry/default/ui/group.tsx +62 -0
- package/registry/default/ui/input.tsx +41 -0
- package/registry/default/ui/label.tsx +15 -0
- package/registry/default/ui/menu.tsx +254 -0
- package/registry/default/ui/meter.tsx +67 -0
- package/registry/default/ui/number-field.tsx +160 -0
- package/registry/default/ui/pagination.tsx +147 -0
- package/registry/default/ui/popover.tsx +86 -0
- package/registry/default/ui/preview-card.tsx +55 -0
- package/registry/default/ui/progress.tsx +81 -0
- package/registry/default/ui/radio-group.tsx +36 -0
- package/registry/default/ui/scroll-area.tsx +62 -0
- package/registry/default/ui/select.tsx +187 -0
- package/registry/default/ui/separator.tsx +23 -0
- package/registry/default/ui/sheet.tsx +134 -0
- package/registry/default/ui/skeleton.tsx +18 -0
- package/registry/default/ui/slider.tsx +77 -0
- package/registry/default/ui/switch.tsx +27 -0
- package/registry/default/ui/table.tsx +127 -0
- package/registry/default/ui/tabs.tsx +90 -0
- package/registry/default/ui/textarea.tsx +35 -0
- package/registry/default/ui/toast.tsx +351 -0
- package/registry/default/ui/toggle-group.tsx +9 -0
- package/registry/default/ui/toggle.tsx +105 -0
- package/registry/default/ui/toolbar.tsx +83 -0
- package/registry/default/ui/tooltip.tsx +57 -0
- package/dist/index.d.ts +0 -4
- package/dist/index.js +0 -15
- package/dist/mcp-server.d.ts +0 -1
- package/dist/mcp-server.js +0 -2
- package/packages/announcement/index.tsx +0 -53
- package/packages/announcement/package.json +0 -23
- package/packages/announcement/tsconfig.json +0 -13
- package/packages/avatar-stack/index.tsx +0 -51
- package/packages/avatar-stack/package.json +0 -23
- package/packages/avatar-stack/tsconfig.json +0 -13
- package/packages/banner/index.tsx +0 -143
- package/packages/banner/package.json +0 -25
- package/packages/banner/tsconfig.json +0 -13
- package/packages/calendar/index.tsx +0 -496
- package/packages/calendar/package.json +0 -26
- package/packages/calendar/tsconfig.json +0 -13
- package/packages/choicebox/index.tsx +0 -113
- package/packages/choicebox/package.json +0 -25
- package/packages/choicebox/tsconfig.json +0 -13
- package/packages/code-block/README.md +0 -62
- package/packages/code-block/components.json +0 -21
- package/packages/code-block/package.json +0 -52
- package/packages/code-block/src/components/code-block/blocks/copy-with-select-package-manager.tsx +0 -146
- package/packages/code-block/src/components/code-block/blocks/copy-with-tabs-package-manager.tsx +0 -110
- package/packages/code-block/src/components/code-block/blocks/inline-code.tsx +0 -28
- package/packages/code-block/src/components/code-block/blocks/multi-tabs.tsx +0 -118
- package/packages/code-block/src/components/code-block/client/shiki.tsx +0 -139
- package/packages/code-block/src/components/code-block/client/sugar-high.tsx +0 -38
- package/packages/code-block/src/components/code-block/code-block.tsx +0 -113
- package/packages/code-block/src/components/code-block/copy-button.tsx +0 -59
- package/packages/code-block/src/components/code-block/mdx/pre-shiki.tsx +0 -42
- package/packages/code-block/src/components/code-block/mdx/pre-sugar-high.tsx +0 -37
- package/packages/code-block/src/components/ui/dropdown-menu.tsx +0 -103
- package/packages/code-block/src/components/ui/tabs.tsx +0 -84
- package/packages/code-block/src/index.ts +0 -35
- package/packages/code-block/src/stores/packageManager.ts +0 -24
- package/packages/code-block/src/styles/globals.css +0 -79
- package/packages/code-block/src/styles/shiki.css +0 -95
- package/packages/code-block/src/styles/sugar-high.css +0 -48
- package/packages/code-block/src/utils/cn.ts +0 -6
- package/packages/code-block/src/utils/copy.ts +0 -9
- package/packages/code-block/src/utils/react-to-text.ts +0 -34
- package/packages/code-block/src/utils/shiki/highlight.ts +0 -47
- package/packages/code-block/src/utils/sugar-high/highlight.ts +0 -12
- package/packages/code-block/tsconfig.json +0 -17
- package/packages/color-picker/index.tsx +0 -467
- package/packages/color-picker/package.json +0 -27
- package/packages/color-picker/tsconfig.json +0 -13
- package/packages/combobox/index.tsx +0 -309
- package/packages/combobox/package.json +0 -25
- package/packages/combobox/tsconfig.json +0 -13
- package/packages/comparison/index.tsx +0 -209
- package/packages/comparison/package.json +0 -25
- package/packages/comparison/tsconfig.json +0 -13
- package/packages/contribution-graph/index.tsx +0 -517
- package/packages/contribution-graph/package.json +0 -24
- package/packages/contribution-graph/tsconfig.json +0 -13
- package/packages/credit-card/index.tsx +0 -348
- package/packages/credit-card/package.json +0 -24
- package/packages/credit-card/tsconfig.json +0 -13
- package/packages/cursor/index.tsx +0 -62
- package/packages/cursor/package.json +0 -23
- package/packages/cursor/tsconfig.json +0 -13
- package/packages/deck/index.tsx +0 -297
- package/packages/deck/package.json +0 -26
- package/packages/deck/tsconfig.json +0 -13
- package/packages/dialog-stack/index.tsx +0 -484
- package/packages/dialog-stack/package.json +0 -25
- package/packages/dialog-stack/tsconfig.json +0 -13
- package/packages/dropzone/index.tsx +0 -202
- package/packages/dropzone/package.json +0 -25
- package/packages/dropzone/tsconfig.json +0 -13
- package/packages/editor/index.tsx +0 -1996
- package/packages/editor/package.json +0 -41
- package/packages/editor/tsconfig.json +0 -13
- package/packages/eslint-config/base.js +0 -32
- package/packages/eslint-config/next.js +0 -49
- package/packages/eslint-config/package.json +0 -33
- package/packages/eslint-config/react-internal.js +0 -39
- package/packages/ether/README.md +0 -39
- package/packages/ether/index.tsx +0 -1297
- package/packages/ether/package.json +0 -59
- package/packages/ether/tsconfig.json +0 -18
- package/packages/gantt/index.tsx +0 -1469
- package/packages/gantt/package.json +0 -31
- package/packages/gantt/tsconfig.json +0 -13
- package/packages/glimpse/index.tsx +0 -67
- package/packages/glimpse/package.json +0 -23
- package/packages/glimpse/server.tsx +0 -21
- package/packages/glimpse/tsconfig.json +0 -13
- package/packages/gooey-toast/package.json +0 -28
- package/packages/gooey-toast/src/gooey.tsx +0 -614
- package/packages/gooey-toast/src/icons.tsx +0 -68
- package/packages/gooey-toast/src/index.ts +0 -10
- package/packages/gooey-toast/src/styles.css +0 -511
- package/packages/gooey-toast/src/toast.tsx +0 -444
- package/packages/gooey-toast/src/types.ts +0 -45
- package/packages/gooey-toast/tsconfig.json +0 -13
- package/packages/gradiant-blinds/README.md +0 -39
- package/packages/gradiant-blinds/index.tsx +0 -390
- package/packages/gradiant-blinds/package.json +0 -60
- package/packages/gradiant-blinds/tsconfig.json +0 -18
- package/packages/gradient-mesh/index.tsx +0 -236
- package/packages/gradient-mesh/package.json +0 -62
- package/packages/gradient-mesh/tsconfig.json +0 -10
- package/packages/image-crop/index.tsx +0 -368
- package/packages/image-crop/package.json +0 -26
- package/packages/image-crop/tsconfig.json +0 -13
- package/packages/image-zoom/index.tsx +0 -52
- package/packages/image-zoom/package.json +0 -24
- package/packages/image-zoom/tsconfig.json +0 -13
- package/packages/kanban/index.tsx +0 -338
- package/packages/kanban/package.json +0 -27
- package/packages/kanban/tsconfig.json +0 -13
- package/packages/list/index.tsx +0 -152
- package/packages/list/package.json +0 -25
- package/packages/list/tsconfig.json +0 -13
- package/packages/love-ui/components.json +0 -20
- package/packages/love-ui/eslint.config.js +0 -4
- package/packages/love-ui/index.ts +0 -3
- package/packages/love-ui/package.json +0 -60
- package/packages/love-ui/postcss.config.mjs +0 -6
- package/packages/love-ui/src/components/code-block.tsx +0 -38
- package/packages/love-ui/src/components/copy-button.tsx +0 -59
- package/packages/love-ui/src/components/icons.tsx +0 -207
- package/packages/love-ui/src/components/mobile-nav.tsx +0 -123
- package/packages/love-ui/src/components/mode-switcher.tsx +0 -42
- package/packages/love-ui/src/components/page-header.tsx +0 -43
- package/packages/love-ui/src/components/product-label.tsx +0 -61
- package/packages/love-ui/src/components/products-dropdown.tsx +0 -81
- package/packages/love-ui/src/components/site-cta.tsx +0 -19
- package/packages/love-ui/src/components/site-footer.tsx +0 -13
- package/packages/love-ui/src/components/site-header.tsx +0 -56
- package/packages/love-ui/src/components/theme-provider.tsx +0 -22
- package/packages/love-ui/src/hooks/use-copy-to-clipboard.ts +0 -38
- package/packages/love-ui/src/hooks/use-media.tsx +0 -22
- package/packages/love-ui/src/lib/config.ts +0 -20
- package/packages/love-ui/src/lib/highlight-code.ts +0 -86
- package/packages/love-ui/src/lib/utils.ts +0 -10
- package/packages/love-ui/src/styles/globals.css +0 -349
- package/packages/love-ui/src/ui/accordion.tsx +0 -66
- package/packages/love-ui/src/ui/alert-dialog.tsx +0 -136
- package/packages/love-ui/src/ui/alert.tsx +0 -81
- package/packages/love-ui/src/ui/autocomplete.tsx +0 -282
- package/packages/love-ui/src/ui/avatar.tsx +0 -46
- package/packages/love-ui/src/ui/badge.tsx +0 -57
- package/packages/love-ui/src/ui/breadcrumb.tsx +0 -110
- package/packages/love-ui/src/ui/button.tsx +0 -85
- package/packages/love-ui/src/ui/card.tsx +0 -114
- package/packages/love-ui/src/ui/chart.tsx +0 -367
- package/packages/love-ui/src/ui/checkbox-group.tsx +0 -16
- package/packages/love-ui/src/ui/checkbox.tsx +0 -67
- package/packages/love-ui/src/ui/collapsible.tsx +0 -45
- package/packages/love-ui/src/ui/combobox.tsx +0 -355
- package/packages/love-ui/src/ui/command.tsx +0 -185
- package/packages/love-ui/src/ui/dialog.tsx +0 -135
- package/packages/love-ui/src/ui/empty.tsx +0 -128
- package/packages/love-ui/src/ui/field.tsx +0 -96
- package/packages/love-ui/src/ui/fieldset.tsx +0 -29
- package/packages/love-ui/src/ui/form.tsx +0 -17
- package/packages/love-ui/src/ui/frame.tsx +0 -82
- package/packages/love-ui/src/ui/group.tsx +0 -62
- package/packages/love-ui/src/ui/input.tsx +0 -41
- package/packages/love-ui/src/ui/kbd.tsx +0 -27
- package/packages/love-ui/src/ui/label.tsx +0 -16
- package/packages/love-ui/src/ui/menu.tsx +0 -255
- package/packages/love-ui/src/ui/meter.tsx +0 -67
- package/packages/love-ui/src/ui/number-field.tsx +0 -161
- package/packages/love-ui/src/ui/pagination.tsx +0 -136
- package/packages/love-ui/src/ui/popover.tsx +0 -158
- package/packages/love-ui/src/ui/preview-card.tsx +0 -55
- package/packages/love-ui/src/ui/progress.tsx +0 -81
- package/packages/love-ui/src/ui/radio-group.tsx +0 -36
- package/packages/love-ui/src/ui/scroll-area.tsx +0 -62
- package/packages/love-ui/src/ui/select.tsx +0 -186
- package/packages/love-ui/src/ui/separator.tsx +0 -23
- package/packages/love-ui/src/ui/sheet.tsx +0 -135
- package/packages/love-ui/src/ui/skeleton.tsx +0 -18
- package/packages/love-ui/src/ui/slider.tsx +0 -76
- package/packages/love-ui/src/ui/switch.tsx +0 -27
- package/packages/love-ui/src/ui/table.tsx +0 -127
- package/packages/love-ui/src/ui/tabs.tsx +0 -90
- package/packages/love-ui/src/ui/textarea.tsx +0 -36
- package/packages/love-ui/src/ui/toast.tsx +0 -169
- package/packages/love-ui/src/ui/toggle-group.tsx +0 -84
- package/packages/love-ui/src/ui/toggle.tsx +0 -45
- package/packages/love-ui/src/ui/toolbar.tsx +0 -83
- package/packages/love-ui/src/ui/tooltip.tsx +0 -57
- package/packages/love-ui/tsconfig.json +0 -11
- package/packages/love-ui/tsconfig.lint.json +0 -8
- package/packages/loveui-skills/SKILL.md +0 -99
- package/packages/loveui-skills/agents/openai.yaml +0 -11
- package/packages/loveui-skills/references/design-directions.md +0 -60
- package/packages/loveui-skills/references/mcp-catalog-workflow.md +0 -68
- package/packages/loveui-skills/references/page-blueprints.md +0 -76
- package/packages/loveui-skills/references/quality-gates.md +0 -51
- package/packages/marquee/index.tsx +0 -59
- package/packages/marquee/package.json +0 -24
- package/packages/marquee/tsconfig.json +0 -13
- package/packages/mini-calendar/index.tsx +0 -230
- package/packages/mini-calendar/package.json +0 -27
- package/packages/mini-calendar/tsconfig.json +0 -13
- package/packages/patterns/accordion/form/accordion-form-1.tsx +0 -83
- package/packages/patterns/accordion/form/accordion-form-2.tsx +0 -89
- package/packages/patterns/accordion/multi-level/accordion-multi-level-1.tsx +0 -83
- package/packages/patterns/accordion/multi-level/accordion-multi-level-2.tsx +0 -92
- package/packages/patterns/accordion/multi-level/accordion-multi-level-3.tsx +0 -89
- package/packages/patterns/accordion/multi-level/accordion-multi-level-4.tsx +0 -89
- package/packages/patterns/accordion/standard/accordion-standard-1.tsx +0 -43
- package/packages/patterns/accordion/standard/accordion-standard-2.tsx +0 -45
- package/packages/patterns/accordion/standard/accordion-standard-3.tsx +0 -52
- package/packages/patterns/accordion/standard/accordion-standard-4.tsx +0 -52
- package/packages/patterns/accordion/standard/accordion-standard-5.tsx +0 -59
- package/packages/patterns/accordion/standard/accordion-standard-6.tsx +0 -72
- package/packages/patterns/accordion/standard/accordion-standard-7.tsx +0 -79
- package/packages/patterns/accordion/subtitle/accordion-subtitle-1.tsx +0 -56
- package/packages/patterns/accordion/subtitle/accordion-subtitle-2.tsx +0 -66
- package/packages/patterns/accordion/subtitle/accordion-subtitle-3.tsx +0 -63
- package/packages/patterns/accordion/subtitle/accordion-subtitle-4.tsx +0 -66
- package/packages/patterns/accordion/tabs/accordion-tabs-1.tsx +0 -52
- package/packages/patterns/accordion/tabs/accordion-tabs-2.tsx +0 -43
- package/packages/patterns/accordion/tabs/accordion-tabs-3.tsx +0 -52
- package/packages/patterns/accordion/tabs/accordion-tabs-4.tsx +0 -45
- package/packages/patterns/alert/error/alert-error-1.tsx +0 -11
- package/packages/patterns/alert/error/alert-error-2.tsx +0 -14
- package/packages/patterns/alert/error/alert-error-3.tsx +0 -22
- package/packages/patterns/alert/error/alert-error-4.tsx +0 -27
- package/packages/patterns/alert/error/alert-error-5.tsx +0 -29
- package/packages/patterns/alert/info/alert-info-1.tsx +0 -11
- package/packages/patterns/alert/info/alert-info-2.tsx +0 -14
- package/packages/patterns/alert/info/alert-info-3.tsx +0 -26
- package/packages/patterns/alert/info/alert-info-4.tsx +0 -31
- package/packages/patterns/alert/info/alert-info-5.tsx +0 -34
- package/packages/patterns/alert/standard/alert-standard-1.tsx +0 -11
- package/packages/patterns/alert/standard/alert-standard-2.tsx +0 -14
- package/packages/patterns/alert/standard/alert-standard-3.tsx +0 -22
- package/packages/patterns/alert/standard/alert-standard-4.tsx +0 -27
- package/packages/patterns/alert/standard/alert-standard-5.tsx +0 -29
- package/packages/patterns/alert/success/alert-success-1.tsx +0 -11
- package/packages/patterns/alert/success/alert-success-2.tsx +0 -14
- package/packages/patterns/alert/success/alert-success-3.tsx +0 -26
- package/packages/patterns/alert/success/alert-success-4.tsx +0 -31
- package/packages/patterns/alert/success/alert-success-5.tsx +0 -33
- package/packages/patterns/alert/warning/alert-warning-1.tsx +0 -11
- package/packages/patterns/alert/warning/alert-warning-2.tsx +0 -14
- package/packages/patterns/alert/warning/alert-warning-3.tsx +0 -26
- package/packages/patterns/alert/warning/alert-warning-4.tsx +0 -32
- package/packages/patterns/alert/warning/alert-warning-5.tsx +0 -33
- package/packages/patterns/alert-dialog/confirmation/alert-dialog-confirmation-1.tsx +0 -37
- package/packages/patterns/alert-dialog/confirmation/alert-dialog-confirmation-2.tsx +0 -41
- package/packages/patterns/alert-dialog/confirmation/alert-dialog-confirmation-3.tsx +0 -43
- package/packages/patterns/alert-dialog/confirmation/alert-dialog-confirmation-4.tsx +0 -37
- package/packages/patterns/alert-dialog/confirmation/alert-dialog-confirmation-5.tsx +0 -36
- package/packages/patterns/alert-dialog/confirmation/alert-dialog-confirmation-6.tsx +0 -40
- package/packages/patterns/alert-dialog/custom-actions/alert-dialog-custom-actions-1.tsx +0 -41
- package/packages/patterns/alert-dialog/custom-actions/alert-dialog-custom-actions-2.tsx +0 -42
- package/packages/patterns/alert-dialog/custom-actions/alert-dialog-custom-actions-3.tsx +0 -41
- package/packages/patterns/alert-dialog/custom-actions/alert-dialog-custom-actions-4.tsx +0 -54
- package/packages/patterns/alert-dialog/custom-actions/alert-dialog-custom-actions-5.tsx +0 -40
- package/packages/patterns/alert-dialog/destructive/alert-dialog-destructive-1.tsx +0 -39
- package/packages/patterns/alert-dialog/destructive/alert-dialog-destructive-2.tsx +0 -43
- package/packages/patterns/alert-dialog/destructive/alert-dialog-destructive-3.tsx +0 -51
- package/packages/patterns/alert-dialog/destructive/alert-dialog-destructive-4.tsx +0 -46
- package/packages/patterns/alert-dialog/destructive/alert-dialog-destructive-5.tsx +0 -46
- package/packages/patterns/alert-dialog/destructive/alert-dialog-destructive-6.tsx +0 -46
- package/packages/patterns/alert-dialog/destructive/alert-dialog-destructive-7.tsx +0 -43
- package/packages/patterns/alert-dialog/form/alert-dialog-form-1.tsx +0 -47
- package/packages/patterns/alert-dialog/form/alert-dialog-form-2.tsx +0 -53
- package/packages/patterns/alert-dialog/form/alert-dialog-form-3.tsx +0 -64
- package/packages/patterns/alert-dialog/form/alert-dialog-form-4.tsx +0 -47
- package/packages/patterns/alert-dialog/form/alert-dialog-form-5.tsx +0 -55
- package/packages/patterns/alert-dialog/form/alert-dialog-form-6.tsx +0 -69
- package/packages/patterns/alert-dialog/form/alert-dialog-form-7.tsx +0 -73
- package/packages/patterns/alert-dialog/informational/alert-dialog-informational-1.tsx +0 -35
- package/packages/patterns/alert-dialog/informational/alert-dialog-informational-2.tsx +0 -39
- package/packages/patterns/alert-dialog/informational/alert-dialog-informational-3.tsx +0 -48
- package/packages/patterns/alert-dialog/informational/alert-dialog-informational-4.tsx +0 -41
- package/packages/patterns/alert-dialog/informational/alert-dialog-informational-5.tsx +0 -42
- package/packages/patterns/alert-dialog/informational/alert-dialog-informational-6.tsx +0 -43
- package/packages/patterns/alert-dialog/informational/alert-dialog-informational-7.tsx +0 -58
- package/packages/patterns/alert-dialog/success/alert-dialog-success-1.tsx +0 -34
- package/packages/patterns/alert-dialog/success/alert-dialog-success-2.tsx +0 -39
- package/packages/patterns/alert-dialog/success/alert-dialog-success-3.tsx +0 -39
- package/packages/patterns/alert-dialog/success/alert-dialog-success-4.tsx +0 -52
- package/packages/patterns/alert-dialog/success/alert-dialog-success-5.tsx +0 -50
- package/packages/patterns/alert-dialog/success/alert-dialog-success-6.tsx +0 -41
- package/packages/patterns/alert-dialog/success/alert-dialog-success-7.tsx +0 -44
- package/packages/patterns/aspect-ratio/standard/aspect-ratio-standard-1.tsx +0 -15
- package/packages/patterns/aspect-ratio/standard/aspect-ratio-standard-2.tsx +0 -15
- package/packages/patterns/aspect-ratio/standard/aspect-ratio-standard-3.tsx +0 -15
- package/packages/patterns/aspect-ratio/standard/aspect-ratio-standard-4.tsx +0 -15
- package/packages/patterns/aspect-ratio/standard/aspect-ratio-standard-5.tsx +0 -15
- package/packages/patterns/aspect-ratio/standard/aspect-ratio-standard-6.tsx +0 -15
- package/packages/patterns/aspect-ratio/standard/aspect-ratio-standard-7.tsx +0 -15
- package/packages/patterns/avatar/square/avatar-square-1.tsx +0 -15
- package/packages/patterns/avatar/square/avatar-square-2.tsx +0 -11
- package/packages/patterns/avatar/square/avatar-square-3.tsx +0 -14
- package/packages/patterns/avatar/square/avatar-square-4.tsx +0 -18
- package/packages/patterns/avatar/square/avatar-square-5.tsx +0 -18
- package/packages/patterns/avatar/square/avatar-square-6.tsx +0 -21
- package/packages/patterns/avatar/square/avatar-square-7.tsx +0 -20
- package/packages/patterns/avatar/standard/avatar-standard-1.tsx +0 -15
- package/packages/patterns/avatar/standard/avatar-standard-2.tsx +0 -11
- package/packages/patterns/avatar/standard/avatar-standard-3.tsx +0 -14
- package/packages/patterns/avatar/standard/avatar-standard-4.tsx +0 -18
- package/packages/patterns/avatar/standard/avatar-standard-5.tsx +0 -18
- package/packages/patterns/avatar/standard/avatar-standard-6.tsx +0 -21
- package/packages/patterns/avatar/standard/avatar-standard-7.tsx +0 -20
- package/packages/patterns/badge/destructive/badge-destructive-1.tsx +0 -7
- package/packages/patterns/badge/destructive/badge-destructive-2.tsx +0 -13
- package/packages/patterns/badge/destructive/badge-destructive-3.tsx +0 -13
- package/packages/patterns/badge/destructive/badge-destructive-4.tsx +0 -13
- package/packages/patterns/badge/destructive/badge-destructive-5.tsx +0 -14
- package/packages/patterns/badge/outline/badge-outline-1.tsx +0 -7
- package/packages/patterns/badge/outline/badge-outline-2.tsx +0 -13
- package/packages/patterns/badge/outline/badge-outline-3.tsx +0 -13
- package/packages/patterns/badge/outline/badge-outline-4.tsx +0 -13
- package/packages/patterns/badge/outline/badge-outline-5.tsx +0 -14
- package/packages/patterns/badge/secondary/badge-secondary-1.tsx +0 -7
- package/packages/patterns/badge/secondary/badge-secondary-2.tsx +0 -13
- package/packages/patterns/badge/secondary/badge-secondary-3.tsx +0 -13
- package/packages/patterns/badge/secondary/badge-secondary-4.tsx +0 -13
- package/packages/patterns/badge/secondary/badge-secondary-5.tsx +0 -14
- package/packages/patterns/badge/standard/badge-standard-1.tsx +0 -7
- package/packages/patterns/badge/standard/badge-standard-2.tsx +0 -13
- package/packages/patterns/badge/standard/badge-standard-3.tsx +0 -13
- package/packages/patterns/badge/standard/badge-standard-4.tsx +0 -13
- package/packages/patterns/badge/standard/badge-standard-5.tsx +0 -11
- package/packages/patterns/breadcrumb/home-icon/breadcrumb-home-icon-1.tsx +0 -38
- package/packages/patterns/breadcrumb/home-icon/breadcrumb-home-icon-2.tsx +0 -52
- package/packages/patterns/breadcrumb/home-icon/breadcrumb-home-icon-3.tsx +0 -42
- package/packages/patterns/breadcrumb/home-icon/breadcrumb-home-icon-4.tsx +0 -33
- package/packages/patterns/breadcrumb/home-icon/breadcrumb-home-icon-5.tsx +0 -33
- package/packages/patterns/breadcrumb/home-icon/breadcrumb-home-icon-6.tsx +0 -37
- package/packages/patterns/breadcrumb/home-icon/breadcrumb-home-icon-7.tsx +0 -49
- package/packages/patterns/breadcrumb/standard/breadcrumb-standard-1.tsx +0 -35
- package/packages/patterns/breadcrumb/standard/breadcrumb-standard-2.tsx +0 -50
- package/packages/patterns/breadcrumb/standard/breadcrumb-standard-3.tsx +0 -43
- package/packages/patterns/breadcrumb/standard/breadcrumb-standard-4.tsx +0 -30
- package/packages/patterns/breadcrumb/standard/breadcrumb-standard-5.tsx +0 -30
- package/packages/patterns/breadcrumb/standard/breadcrumb-standard-6.tsx +0 -35
- package/packages/patterns/breadcrumb/standard/breadcrumb-standard-7.tsx +0 -46
- package/packages/patterns/button/destructive/button-destructive-1.tsx +0 -7
- package/packages/patterns/button/destructive/button-destructive-2.tsx +0 -13
- package/packages/patterns/button/destructive/button-destructive-3.tsx +0 -13
- package/packages/patterns/button/destructive/button-destructive-4.tsx +0 -11
- package/packages/patterns/button/destructive/button-destructive-5.tsx +0 -13
- package/packages/patterns/button/destructive/button-destructive-6.tsx +0 -15
- package/packages/patterns/button/destructive/button-destructive-7.tsx +0 -13
- package/packages/patterns/button/link/button-link-1.tsx +0 -7
- package/packages/patterns/button/link/button-link-2.tsx +0 -13
- package/packages/patterns/button/link/button-link-3.tsx +0 -13
- package/packages/patterns/button/link/button-link-4.tsx +0 -11
- package/packages/patterns/button/link/button-link-5.tsx +0 -13
- package/packages/patterns/button/link/button-link-6.tsx +0 -15
- package/packages/patterns/button/link/button-link-7.tsx +0 -13
- package/packages/patterns/button/outline/button-outline-1.tsx +0 -7
- package/packages/patterns/button/outline/button-outline-2.tsx +0 -13
- package/packages/patterns/button/outline/button-outline-3.tsx +0 -13
- package/packages/patterns/button/outline/button-outline-4.tsx +0 -11
- package/packages/patterns/button/outline/button-outline-5.tsx +0 -13
- package/packages/patterns/button/outline/button-outline-6.tsx +0 -15
- package/packages/patterns/button/outline/button-outline-7.tsx +0 -13
- package/packages/patterns/button/secondary/button-secondary-1.tsx +0 -7
- package/packages/patterns/button/secondary/button-secondary-2.tsx +0 -13
- package/packages/patterns/button/secondary/button-secondary-3.tsx +0 -13
- package/packages/patterns/button/secondary/button-secondary-4.tsx +0 -11
- package/packages/patterns/button/secondary/button-secondary-5.tsx +0 -13
- package/packages/patterns/button/secondary/button-secondary-6.tsx +0 -15
- package/packages/patterns/button/secondary/button-secondary-7.tsx +0 -13
- package/packages/patterns/button/standard/button-standard-1.tsx +0 -7
- package/packages/patterns/button/standard/button-standard-2.tsx +0 -13
- package/packages/patterns/button/standard/button-standard-3.tsx +0 -13
- package/packages/patterns/button/standard/button-standard-4.tsx +0 -7
- package/packages/patterns/button/standard/button-standard-5.tsx +0 -13
- package/packages/patterns/button/standard/button-standard-6.tsx +0 -15
- package/packages/patterns/button/standard/button-standard-7.tsx +0 -13
- package/packages/patterns/button-group/actions/button-group-actions-1.tsx +0 -37
- package/packages/patterns/button-group/actions/button-group-actions-2.tsx +0 -44
- package/packages/patterns/button-group/actions/button-group-actions-3.tsx +0 -46
- package/packages/patterns/button-group/actions/button-group-actions-4.tsx +0 -41
- package/packages/patterns/button-group/advanced/button-group-advanced-1.tsx +0 -54
- package/packages/patterns/button-group/advanced/button-group-advanced-2.tsx +0 -49
- package/packages/patterns/button-group/advanced/button-group-advanced-3.tsx +0 -55
- package/packages/patterns/button-group/advanced/button-group-advanced-4.tsx +0 -78
- package/packages/patterns/button-group/badges/button-group-badges-1.tsx +0 -28
- package/packages/patterns/button-group/badges/button-group-badges-2.tsx +0 -32
- package/packages/patterns/button-group/badges/button-group-badges-3.tsx +0 -32
- package/packages/patterns/button-group/badges/button-group-badges-4.tsx +0 -39
- package/packages/patterns/button-group/display/button-group-display-1.tsx +0 -68
- package/packages/patterns/button-group/display/button-group-display-2.tsx +0 -67
- package/packages/patterns/button-group/display/button-group-display-3.tsx +0 -85
- package/packages/patterns/button-group/display/button-group-display-4.tsx +0 -78
- package/packages/patterns/button-group/forms/button-group-forms-1.tsx +0 -78
- package/packages/patterns/button-group/forms/button-group-forms-2.tsx +0 -78
- package/packages/patterns/button-group/forms/button-group-forms-3.tsx +0 -71
- package/packages/patterns/button-group/forms/button-group-forms-4.tsx +0 -60
- package/packages/patterns/button-group/interactive/button-group-interactive-1.tsx +0 -68
- package/packages/patterns/button-group/interactive/button-group-interactive-2.tsx +0 -79
- package/packages/patterns/button-group/interactive/button-group-interactive-3.tsx +0 -82
- package/packages/patterns/button-group/interactive/button-group-interactive-4.tsx +0 -79
- package/packages/patterns/button-group/media/button-group-media-1.tsx +0 -66
- package/packages/patterns/button-group/media/button-group-media-2.tsx +0 -62
- package/packages/patterns/button-group/media/button-group-media-3.tsx +0 -67
- package/packages/patterns/button-group/media/button-group-media-4.tsx +0 -62
- package/packages/patterns/button-group/navigation/button-group-navigation-1.tsx +0 -76
- package/packages/patterns/button-group/navigation/button-group-navigation-2.tsx +0 -70
- package/packages/patterns/button-group/navigation/button-group-navigation-3.tsx +0 -73
- package/packages/patterns/button-group/patterns/button-group-patterns-1.tsx +0 -73
- package/packages/patterns/button-group/patterns/button-group-patterns-2.tsx +0 -60
- package/packages/patterns/button-group/patterns/button-group-patterns-3.tsx +0 -79
- package/packages/patterns/button-group/patterns/button-group-patterns-4.tsx +0 -53
- package/packages/patterns/button-group/standard/button-group-standard-1.tsx +0 -32
- package/packages/patterns/button-group/standard/button-group-standard-2.tsx +0 -30
- package/packages/patterns/button-group/standard/button-group-standard-3.tsx +0 -20
- package/packages/patterns/button-group/standard/button-group-standard-4.tsx +0 -39
- package/packages/patterns/calendar/dialog/calendar-dialog-1.tsx +0 -58
- package/packages/patterns/calendar/dialog/calendar-dialog-2.tsx +0 -97
- package/packages/patterns/calendar/dialog/calendar-dialog-3.tsx +0 -78
- package/packages/patterns/calendar/dialog/calendar-dialog-4.tsx +0 -62
- package/packages/patterns/calendar/dialog/calendar-dialog-5.tsx +0 -82
- package/packages/patterns/calendar/dialog/calendar-dialog-6.tsx +0 -63
- package/packages/patterns/calendar/dialog/calendar-dialog-7.tsx +0 -59
- package/packages/patterns/calendar/dialog/calendar-dialog-8.tsx +0 -78
- package/packages/patterns/calendar/standard/calendar-standard-1.tsx +0 -40
- package/packages/patterns/calendar/standard/calendar-standard-2.tsx +0 -77
- package/packages/patterns/calendar/standard/calendar-standard-3.tsx +0 -59
- package/packages/patterns/calendar/standard/calendar-standard-4.tsx +0 -44
- package/packages/patterns/calendar/standard/calendar-standard-5.tsx +0 -65
- package/packages/patterns/calendar/standard/calendar-standard-6.tsx +0 -45
- package/packages/patterns/calendar/standard/calendar-standard-7.tsx +0 -41
- package/packages/patterns/calendar/standard/calendar-standard-8.tsx +0 -60
- package/packages/patterns/card/standard/card-standard-1.tsx +0 -29
- package/packages/patterns/card/standard/card-standard-2.tsx +0 -72
- package/packages/patterns/card/standard/card-standard-3.tsx +0 -57
- package/packages/patterns/card/standard/card-standard-4.tsx +0 -56
- package/packages/patterns/carousel/standard/carousel-standard-1.tsx +0 -35
- package/packages/patterns/carousel/standard/carousel-standard-2.tsx +0 -65
- package/packages/patterns/carousel/standard/carousel-standard-3.tsx +0 -80
- package/packages/patterns/carousel/standard/carousel-standard-4.tsx +0 -50
- package/packages/patterns/chart/area/chart-area-axes.tsx +0 -76
- package/packages/patterns/chart/area/chart-area-default.tsx +0 -65
- package/packages/patterns/chart/area/chart-area-gradient.tsx +0 -101
- package/packages/patterns/chart/area/chart-area-icons.tsx +0 -84
- package/packages/patterns/chart/area/chart-area-interactive.tsx +0 -206
- package/packages/patterns/chart/area/chart-area-legend.tsx +0 -81
- package/packages/patterns/chart/area/chart-area-linear.tsx +0 -64
- package/packages/patterns/chart/area/chart-area-stacked-expand.tsx +0 -92
- package/packages/patterns/chart/area/chart-area-stacked.tsx +0 -78
- package/packages/patterns/chart/area/chart-area-step.tsx +0 -67
- package/packages/patterns/chart/bar/chart-bar-active.tsx +0 -86
- package/packages/patterns/chart/bar/chart-bar-default.tsx +0 -52
- package/packages/patterns/chart/bar/chart-bar-horizontal.tsx +0 -60
- package/packages/patterns/chart/bar/chart-bar-interactive.tsx +0 -176
- package/packages/patterns/chart/bar/chart-bar-label-custom.tsx +0 -96
- package/packages/patterns/chart/bar/chart-bar-label.tsx +0 -65
- package/packages/patterns/chart/bar/chart-bar-mixed.tsx +0 -80
- package/packages/patterns/chart/bar/chart-bar-multiple.tsx +0 -57
- package/packages/patterns/chart/bar/chart-bar-negative.tsx +0 -52
- package/packages/patterns/chart/bar/chart-bar-stacked.tsx +0 -67
- package/packages/patterns/chart/line/chart-line-default.tsx +0 -65
- package/packages/patterns/chart/line/chart-line-dots-colors.tsx +0 -93
- package/packages/patterns/chart/line/chart-line-dots-custom.tsx +0 -83
- package/packages/patterns/chart/line/chart-line-dots.tsx +0 -74
- package/packages/patterns/chart/line/chart-line-interactive.tsx +0 -182
- package/packages/patterns/chart/line/chart-line-label-custom.tsx +0 -100
- package/packages/patterns/chart/line/chart-line-label.tsx +0 -82
- package/packages/patterns/chart/line/chart-line-linear.tsx +0 -65
- package/packages/patterns/chart/line/chart-line-multiple.tsx +0 -73
- package/packages/patterns/chart/line/chart-line-step.tsx +0 -65
- package/packages/patterns/chart/pie/chart-pie-donut-active.tsx +0 -76
- package/packages/patterns/chart/pie/chart-pie-donut-text.tsx +0 -101
- package/packages/patterns/chart/pie/chart-pie-donut.tsx +0 -70
- package/packages/patterns/chart/pie/chart-pie-interactive.tsx +0 -125
- package/packages/patterns/chart/pie/chart-pie-label-custom.tsx +0 -82
- package/packages/patterns/chart/pie/chart-pie-label-list.tsx +0 -74
- package/packages/patterns/chart/pie/chart-pie-label.tsx +0 -62
- package/packages/patterns/chart/pie/chart-pie-legend.tsx +0 -65
- package/packages/patterns/chart/pie/chart-pie-separator-none.tsx +0 -65
- package/packages/patterns/chart/pie/chart-pie-simple.tsx +0 -65
- package/packages/patterns/chart/pie/chart-pie-stacked.tsx +0 -94
- package/packages/patterns/chart/radar/chart-radar-default.tsx +0 -50
- package/packages/patterns/chart/radar/chart-radar-dots.tsx +0 -54
- package/packages/patterns/chart/radar/chart-radar-grid-circle-fill.tsx +0 -53
- package/packages/patterns/chart/radar/chart-radar-grid-circle-no-lines.tsx +0 -57
- package/packages/patterns/chart/radar/chart-radar-grid-circle.tsx +0 -57
- package/packages/patterns/chart/radar/chart-radar-grid-custom.tsx +0 -53
- package/packages/patterns/chart/radar/chart-radar-grid-fill.tsx +0 -53
- package/packages/patterns/chart/radar/chart-radar-grid-none.tsx +0 -56
- package/packages/patterns/chart/radar/chart-radar-icons.tsx +0 -70
- package/packages/patterns/chart/radar/chart-radar-label-custom.tsx +0 -95
- package/packages/patterns/chart/radar/chart-radar-legend.tsx +0 -67
- package/packages/patterns/chart/radar/chart-radar-lines-only.tsx +0 -66
- package/packages/patterns/chart/radar/chart-radar-multiple.tsx +0 -58
- package/packages/patterns/chart/radar/chart-radar-radius.tsx +0 -63
- package/packages/patterns/chart/radial/chart-radial-grid.tsx +0 -66
- package/packages/patterns/chart/radial/chart-radial-label.tsx +0 -78
- package/packages/patterns/chart/radial/chart-radial-shape.tsx +0 -85
- package/packages/patterns/chart/radial/chart-radial-simple.tsx +0 -65
- package/packages/patterns/chart/radial/chart-radial-stacked.tsx +0 -88
- package/packages/patterns/chart/radial/chart-radial-text.tsx +0 -86
- package/packages/patterns/chart/tooltip/chart-tooltip-advanced.tsx +0 -107
- package/packages/patterns/chart/tooltip/chart-tooltip-default.tsx +0 -74
- package/packages/patterns/chart/tooltip/chart-tooltip-formatter.tsx +0 -86
- package/packages/patterns/chart/tooltip/chart-tooltip-icons.tsx +0 -74
- package/packages/patterns/chart/tooltip/chart-tooltip-indicator-line.tsx +0 -74
- package/packages/patterns/chart/tooltip/chart-tooltip-indicator-none.tsx +0 -71
- package/packages/patterns/chart/tooltip/chart-tooltip-label-custom.tsx +0 -76
- package/packages/patterns/chart/tooltip/chart-tooltip-label-formatter.tsx +0 -81
- package/packages/patterns/chart/tooltip/chart-tooltip-label-none.tsx +0 -71
- package/packages/patterns/checkbox/standard/checkbox-standard-1.tsx +0 -13
- package/packages/patterns/checkbox/standard/checkbox-standard-11.tsx +0 -18
- package/packages/patterns/checkbox/standard/checkbox-standard-12.tsx +0 -22
- package/packages/patterns/checkbox/standard/checkbox-standard-13.tsx +0 -64
- package/packages/patterns/checkbox/standard/checkbox-standard-2.tsx +0 -26
- package/packages/patterns/checkbox/standard/checkbox-standard-3.tsx +0 -16
- package/packages/patterns/checkbox/standard/checkbox-standard-4.tsx +0 -23
- package/packages/patterns/checkbox/standard/checkbox-standard-5.tsx +0 -33
- package/packages/patterns/checkbox/standard/checkbox-standard-6.tsx +0 -19
- package/packages/patterns/checkbox/standard/checkbox-standard-7.tsx +0 -25
- package/packages/patterns/checkbox/standard/checkbox-standard-8.tsx +0 -25
- package/packages/patterns/checkbox/standard/checkbox-standard-9.tsx +0 -23
- package/packages/patterns/collapsible/card/collapsible-card-1.tsx +0 -26
- package/packages/patterns/collapsible/card/collapsible-card-2.tsx +0 -27
- package/packages/patterns/collapsible/card/collapsible-card-3.tsx +0 -33
- package/packages/patterns/collapsible/card/collapsible-card-4.tsx +0 -27
- package/packages/patterns/collapsible/card/collapsible-card-5.tsx +0 -24
- package/packages/patterns/collapsible/faq/collapsible-faq-1.tsx +0 -26
- package/packages/patterns/collapsible/faq/collapsible-faq-2.tsx +0 -25
- package/packages/patterns/collapsible/faq/collapsible-faq-3.tsx +0 -23
- package/packages/patterns/collapsible/faq/collapsible-faq-4.tsx +0 -26
- package/packages/patterns/collapsible/faq/collapsible-faq-5.tsx +0 -30
- package/packages/patterns/collapsible/outline/collapsible-outline-1.tsx +0 -32
- package/packages/patterns/collapsible/outline/collapsible-outline-2.tsx +0 -30
- package/packages/patterns/collapsible/outline/collapsible-outline-3.tsx +0 -25
- package/packages/patterns/collapsible/outline/collapsible-outline-4.tsx +0 -30
- package/packages/patterns/collapsible/sidebar/collapsible-sidebar-1.tsx +0 -39
- package/packages/patterns/collapsible/sidebar/collapsible-sidebar-2.tsx +0 -40
- package/packages/patterns/collapsible/sidebar/collapsible-sidebar-3.tsx +0 -35
- package/packages/patterns/collapsible/sidebar/collapsible-sidebar-4.tsx +0 -32
- package/packages/patterns/collapsible/standard/collapsible-standard-1.tsx +0 -26
- package/packages/patterns/collapsible/standard/collapsible-standard-2.tsx +0 -23
- package/packages/patterns/collapsible/standard/collapsible-standard-3.tsx +0 -28
- package/packages/patterns/collapsible/standard/collapsible-standard-4.tsx +0 -25
- package/packages/patterns/collapsible/standard/collapsible-standard-5.tsx +0 -35
- package/packages/patterns/combobox/custom-actions/combobox-custom-actions-1.tsx +0 -108
- package/packages/patterns/combobox/custom-actions/combobox-custom-actions-2.tsx +0 -95
- package/packages/patterns/combobox/custom-actions/combobox-custom-actions-3.tsx +0 -115
- package/packages/patterns/combobox/custom-actions/combobox-custom-actions-4.tsx +0 -119
- package/packages/patterns/combobox/custom-actions/combobox-custom-actions-5.tsx +0 -118
- package/packages/patterns/combobox/custom-actions/combobox-custom-actions-6.tsx +0 -88
- package/packages/patterns/combobox/custom-actions/combobox-custom-actions-7.tsx +0 -94
- package/packages/patterns/combobox/grouped/combobox-grouped-1.tsx +0 -109
- package/packages/patterns/combobox/grouped/combobox-grouped-2.tsx +0 -134
- package/packages/patterns/combobox/grouped/combobox-grouped-3.tsx +0 -97
- package/packages/patterns/combobox/grouped/combobox-grouped-4.tsx +0 -105
- package/packages/patterns/combobox/grouped/combobox-grouped-5.tsx +0 -118
- package/packages/patterns/combobox/grouped/combobox-grouped-6.tsx +0 -117
- package/packages/patterns/combobox/grouped/combobox-grouped-7.tsx +0 -116
- package/packages/patterns/combobox/multi-select/combobox-multi-select-1.tsx +0 -117
- package/packages/patterns/combobox/multi-select/combobox-multi-select-2.tsx +0 -109
- package/packages/patterns/combobox/multi-select/combobox-multi-select-3.tsx +0 -96
- package/packages/patterns/combobox/multi-select/combobox-multi-select-4.tsx +0 -83
- package/packages/patterns/combobox/multi-select/combobox-multi-select-5.tsx +0 -104
- package/packages/patterns/combobox/multi-select/combobox-multi-select-6.tsx +0 -109
- package/packages/patterns/combobox/multi-select/combobox-multi-select-7.tsx +0 -102
- package/packages/patterns/combobox/rich-content/combobox-rich-content-1.tsx +0 -114
- package/packages/patterns/combobox/rich-content/combobox-rich-content-2.tsx +0 -98
- package/packages/patterns/combobox/rich-content/combobox-rich-content-3.tsx +0 -94
- package/packages/patterns/combobox/rich-content/combobox-rich-content-4.tsx +0 -112
- package/packages/patterns/combobox/rich-content/combobox-rich-content-5.tsx +0 -102
- package/packages/patterns/combobox/rich-content/combobox-rich-content-6.tsx +0 -95
- package/packages/patterns/combobox/rich-content/combobox-rich-content-7.tsx +0 -114
- package/packages/patterns/combobox/standard/combobox-standard-1.tsx +0 -82
- package/packages/patterns/combobox/standard/combobox-standard-2.tsx +0 -82
- package/packages/patterns/combobox/standard/combobox-standard-3.tsx +0 -96
- package/packages/patterns/combobox/standard/combobox-standard-4.tsx +0 -85
- package/packages/patterns/combobox/standard/combobox-standard-5.tsx +0 -85
- package/packages/patterns/combobox/standard/combobox-standard-6.tsx +0 -81
- package/packages/patterns/combobox/standard/combobox-standard-7.tsx +0 -84
- package/packages/patterns/combobox/with-states/combobox-with-states-1.tsx +0 -91
- package/packages/patterns/combobox/with-states/combobox-with-states-2.tsx +0 -100
- package/packages/patterns/combobox/with-states/combobox-with-states-3.tsx +0 -95
- package/packages/patterns/combobox/with-states/combobox-with-states-4.tsx +0 -84
- package/packages/patterns/combobox/with-states/combobox-with-states-5.tsx +0 -89
- package/packages/patterns/combobox/with-states/combobox-with-states-6.tsx +0 -86
- package/packages/patterns/combobox/with-states/combobox-with-states-7.tsx +0 -29
- package/packages/patterns/command/dialog/command-dialog-1.tsx +0 -37
- package/packages/patterns/command/dialog/command-dialog-2.tsx +0 -72
- package/packages/patterns/command/dialog/command-dialog-3.tsx +0 -66
- package/packages/patterns/command/dialog/command-dialog-4.tsx +0 -64
- package/packages/patterns/command/dialog/command-dialog-5.tsx +0 -65
- package/packages/patterns/command/dialog/command-dialog-6.tsx +0 -68
- package/packages/patterns/command/dialog/command-dialog-7.tsx +0 -62
- package/packages/patterns/command/popover/command-popover-1.tsx +0 -39
- package/packages/patterns/command/popover/command-popover-2.tsx +0 -74
- package/packages/patterns/command/popover/command-popover-3.tsx +0 -68
- package/packages/patterns/command/popover/command-popover-4.tsx +0 -66
- package/packages/patterns/command/popover/command-popover-5.tsx +0 -67
- package/packages/patterns/command/popover/command-popover-6.tsx +0 -70
- package/packages/patterns/command/popover/command-popover-7.tsx +0 -64
- package/packages/patterns/command/standard/command-standard-1.tsx +0 -26
- package/packages/patterns/command/standard/command-standard-2.tsx +0 -61
- package/packages/patterns/command/standard/command-standard-3.tsx +0 -55
- package/packages/patterns/command/standard/command-standard-4.tsx +0 -53
- package/packages/patterns/command/standard/command-standard-5.tsx +0 -54
- package/packages/patterns/command/standard/command-standard-6.tsx +0 -57
- package/packages/patterns/command/standard/command-standard-7.tsx +0 -43
- package/packages/patterns/context-menu/canvas/context-menu-canvas-1.tsx +0 -49
- package/packages/patterns/context-menu/canvas/context-menu-canvas-2.tsx +0 -78
- package/packages/patterns/context-menu/canvas/context-menu-canvas-3.tsx +0 -44
- package/packages/patterns/context-menu/canvas/context-menu-canvas-4.tsx +0 -46
- package/packages/patterns/context-menu/canvas/context-menu-canvas-5.tsx +0 -57
- package/packages/patterns/context-menu/file/context-menu-file-1.tsx +0 -45
- package/packages/patterns/context-menu/file/context-menu-file-2.tsx +0 -47
- package/packages/patterns/context-menu/file/context-menu-file-3.tsx +0 -56
- package/packages/patterns/context-menu/file/context-menu-file-4.tsx +0 -56
- package/packages/patterns/context-menu/file/context-menu-file-5.tsx +0 -42
- package/packages/patterns/context-menu/standard/context-menu-standard-1.tsx +0 -24
- package/packages/patterns/context-menu/standard/context-menu-standard-2.tsx +0 -47
- package/packages/patterns/context-menu/standard/context-menu-standard-3.tsx +0 -44
- package/packages/patterns/context-menu/standard/context-menu-standard-4.tsx +0 -45
- package/packages/patterns/context-menu/standard/context-menu-standard-5.tsx +0 -49
- package/packages/patterns/context-menu/standard/context-menu-standard-6.tsx +0 -38
- package/packages/patterns/context-menu/standard/context-menu-standard-7.tsx +0 -79
- package/packages/patterns/context-menu/table/context-menu-table-1.tsx +0 -32
- package/packages/patterns/context-menu/table/context-menu-table-2.tsx +0 -46
- package/packages/patterns/context-menu/table/context-menu-table-3.tsx +0 -56
- package/packages/patterns/context-menu/table/context-menu-table-4.tsx +0 -49
- package/packages/patterns/context-menu/table/context-menu-table-5.tsx +0 -56
- package/packages/patterns/context-menu/text/context-menu-text-1.tsx +0 -40
- package/packages/patterns/context-menu/text/context-menu-text-2.tsx +0 -45
- package/packages/patterns/context-menu/text/context-menu-text-3.tsx +0 -54
- package/packages/patterns/context-menu/text/context-menu-text-4.tsx +0 -40
- package/packages/patterns/context-menu/text/context-menu-text-5.tsx +0 -63
- package/packages/patterns/data-table/advanced/data-table-advanced-1.tsx +0 -201
- package/packages/patterns/data-table/advanced/data-table-advanced-2.tsx +0 -212
- package/packages/patterns/data-table/advanced/data-table-advanced-3.tsx +0 -191
- package/packages/patterns/data-table/advanced/data-table-advanced-4.tsx +0 -189
- package/packages/patterns/data-table/standard/data-table-standard-1.tsx +0 -183
- package/packages/patterns/data-table/standard/data-table-standard-2.tsx +0 -180
- package/packages/patterns/data-table/standard/data-table-standard-3.tsx +0 -205
- package/packages/patterns/data-table/standard/data-table-standard-4.tsx +0 -212
- package/packages/patterns/date-picker/standard/date-picker-standard-1.tsx +0 -75
- package/packages/patterns/date-picker/standard/date-picker-standard-2.tsx +0 -103
- package/packages/patterns/date-picker/standard/date-picker-standard-3.tsx +0 -91
- package/packages/patterns/date-picker/standard/date-picker-standard-4.tsx +0 -73
- package/packages/patterns/date-picker/standard/date-picker-standard-5.tsx +0 -89
- package/packages/patterns/date-picker/standard/date-picker-standard-6.tsx +0 -69
- package/packages/patterns/date-picker/standard/date-picker-standard-7.tsx +0 -64
- package/packages/patterns/date-picker/standard/date-picker-standard-8.tsx +0 -84
- package/packages/patterns/dialog/standard/dialog-standard-1.tsx +0 -47
- package/packages/patterns/dialog/standard/dialog-standard-10.tsx +0 -84
- package/packages/patterns/dialog/standard/dialog-standard-11.tsx +0 -63
- package/packages/patterns/dialog/standard/dialog-standard-12.tsx +0 -70
- package/packages/patterns/dialog/standard/dialog-standard-13.tsx +0 -65
- package/packages/patterns/dialog/standard/dialog-standard-14.tsx +0 -109
- package/packages/patterns/dialog/standard/dialog-standard-15.tsx +0 -113
- package/packages/patterns/dialog/standard/dialog-standard-16.tsx +0 -127
- package/packages/patterns/dialog/standard/dialog-standard-17.tsx +0 -116
- package/packages/patterns/dialog/standard/dialog-standard-2.tsx +0 -72
- package/packages/patterns/dialog/standard/dialog-standard-3.tsx +0 -78
- package/packages/patterns/dialog/standard/dialog-standard-4.tsx +0 -98
- package/packages/patterns/dialog/standard/dialog-standard-5.tsx +0 -65
- package/packages/patterns/dialog/standard/dialog-standard-6.tsx +0 -42
- package/packages/patterns/dialog/standard/dialog-standard-7.tsx +0 -46
- package/packages/patterns/dialog/standard/dialog-standard-8.tsx +0 -84
- package/packages/patterns/dialog/standard/dialog-standard-9.tsx +0 -70
- package/packages/patterns/drawer/bottom/drawer-bottom-1.tsx +0 -44
- package/packages/patterns/drawer/bottom/drawer-bottom-2.tsx +0 -55
- package/packages/patterns/drawer/bottom/drawer-bottom-3.tsx +0 -68
- package/packages/patterns/drawer/bottom/drawer-bottom-4.tsx +0 -49
- package/packages/patterns/drawer/bottom/drawer-bottom-5.tsx +0 -72
- package/packages/patterns/drawer/bottom/drawer-bottom-6.tsx +0 -40
- package/packages/patterns/drawer/bottom/drawer-bottom-7.tsx +0 -69
- package/packages/patterns/drawer/left/drawer-left-1.tsx +0 -46
- package/packages/patterns/drawer/left/drawer-left-2.tsx +0 -53
- package/packages/patterns/drawer/left/drawer-left-3.tsx +0 -123
- package/packages/patterns/drawer/left/drawer-left-4.tsx +0 -58
- package/packages/patterns/drawer/left/drawer-left-5.tsx +0 -131
- package/packages/patterns/drawer/right/drawer-right-1.tsx +0 -45
- package/packages/patterns/drawer/right/drawer-right-2.tsx +0 -107
- package/packages/patterns/drawer/right/drawer-right-3.tsx +0 -84
- package/packages/patterns/drawer/right/drawer-right-4.tsx +0 -98
- package/packages/patterns/drawer/right/drawer-right-5.tsx +0 -108
- package/packages/patterns/drawer/top/drawer-top-1.tsx +0 -44
- package/packages/patterns/drawer/top/drawer-top-2.tsx +0 -62
- package/packages/patterns/drawer/top/drawer-top-3.tsx +0 -50
- package/packages/patterns/drawer/top/drawer-top-4.tsx +0 -63
- package/packages/patterns/drawer/top/drawer-top-5.tsx +0 -59
- package/packages/patterns/dropdown-menu/actions/dropdown-menu-actions-1.tsx +0 -63
- package/packages/patterns/dropdown-menu/actions/dropdown-menu-actions-2.tsx +0 -61
- package/packages/patterns/dropdown-menu/actions/dropdown-menu-actions-3.tsx +0 -83
- package/packages/patterns/dropdown-menu/actions/dropdown-menu-actions-4.tsx +0 -68
- package/packages/patterns/dropdown-menu/actions/dropdown-menu-actions-5.tsx +0 -78
- package/packages/patterns/dropdown-menu/editor/dropdown-menu-editor-1.tsx +0 -61
- package/packages/patterns/dropdown-menu/editor/dropdown-menu-editor-2.tsx +0 -81
- package/packages/patterns/dropdown-menu/editor/dropdown-menu-editor-3.tsx +0 -58
- package/packages/patterns/dropdown-menu/editor/dropdown-menu-editor-4.tsx +0 -53
- package/packages/patterns/dropdown-menu/editor/dropdown-menu-editor-5.tsx +0 -65
- package/packages/patterns/dropdown-menu/profile/dropdown-menu-profile-1.tsx +0 -61
- package/packages/patterns/dropdown-menu/profile/dropdown-menu-profile-2.tsx +0 -75
- package/packages/patterns/dropdown-menu/profile/dropdown-menu-profile-3.tsx +0 -99
- package/packages/patterns/dropdown-menu/profile/dropdown-menu-profile-4.tsx +0 -87
- package/packages/patterns/dropdown-menu/profile/dropdown-menu-profile-5.tsx +0 -85
- package/packages/patterns/dropdown-menu/settings/dropdown-menu-settings-1.tsx +0 -50
- package/packages/patterns/dropdown-menu/settings/dropdown-menu-settings-2.tsx +0 -75
- package/packages/patterns/dropdown-menu/settings/dropdown-menu-settings-3.tsx +0 -70
- package/packages/patterns/dropdown-menu/settings/dropdown-menu-settings-4.tsx +0 -82
- package/packages/patterns/dropdown-menu/settings/dropdown-menu-settings-5.tsx +0 -74
- package/packages/patterns/dropdown-menu/standard/dropdown-menu-standard-1.tsx +0 -48
- package/packages/patterns/dropdown-menu/standard/dropdown-menu-standard-2.tsx +0 -71
- package/packages/patterns/dropdown-menu/standard/dropdown-menu-standard-3.tsx +0 -68
- package/packages/patterns/dropdown-menu/standard/dropdown-menu-standard-4.tsx +0 -56
- package/packages/patterns/dropdown-menu/standard/dropdown-menu-standard-5.tsx +0 -43
- package/packages/patterns/dropdown-menu/standard/dropdown-menu-standard-6.tsx +0 -72
- package/packages/patterns/dropdown-menu/standard/dropdown-menu-standard-7.tsx +0 -99
- package/packages/patterns/dropdown-menu/support/dropdown-menu-support-1.tsx +0 -52
- package/packages/patterns/dropdown-menu/support/dropdown-menu-support-2.tsx +0 -64
- package/packages/patterns/dropdown-menu/support/dropdown-menu-support-3.tsx +0 -77
- package/packages/patterns/empty/actions/empty-actions-1.tsx +0 -36
- package/packages/patterns/empty/actions/empty-actions-2.tsx +0 -42
- package/packages/patterns/empty/actions/empty-actions-3.tsx +0 -36
- package/packages/patterns/empty/actions/empty-actions-4.tsx +0 -37
- package/packages/patterns/empty/actions/empty-actions-5.tsx +0 -40
- package/packages/patterns/empty/data/empty-data-1.tsx +0 -37
- package/packages/patterns/empty/data/empty-data-2.tsx +0 -29
- package/packages/patterns/empty/data/empty-data-3.tsx +0 -28
- package/packages/patterns/empty/data/empty-data-4.tsx +0 -36
- package/packages/patterns/empty/data/empty-data-5.tsx +0 -43
- package/packages/patterns/empty/search/empty-search-1.tsx +0 -28
- package/packages/patterns/empty/search/empty-search-2.tsx +0 -33
- package/packages/patterns/empty/search/empty-search-3.tsx +0 -33
- package/packages/patterns/empty/search/empty-search-4.tsx +0 -29
- package/packages/patterns/empty/search/empty-search-5.tsx +0 -40
- package/packages/patterns/empty/standard/empty-standard-1.tsx +0 -24
- package/packages/patterns/empty/standard/empty-standard-2.tsx +0 -28
- package/packages/patterns/empty/standard/empty-standard-3.tsx +0 -29
- package/packages/patterns/empty/standard/empty-standard-4.tsx +0 -28
- package/packages/patterns/empty/standard/empty-standard-5.tsx +0 -31
- package/packages/patterns/empty/standard/empty-standard-6.tsx +0 -23
- package/packages/patterns/empty/standard/empty-standard-7.tsx +0 -29
- package/packages/patterns/field/advanced/field-advanced-1.tsx +0 -32
- package/packages/patterns/field/advanced/field-advanced-2.tsx +0 -34
- package/packages/patterns/field/advanced/field-advanced-3.tsx +0 -53
- package/packages/patterns/field/advanced/field-advanced-4.tsx +0 -55
- package/packages/patterns/field/advanced/field-advanced-5.tsx +0 -57
- package/packages/patterns/field/advanced/field-advanced-6.tsx +0 -71
- package/packages/patterns/field/advanced/field-advanced-7.tsx +0 -59
- package/packages/patterns/field/basic-inputs/field-basic-inputs-1.tsx +0 -20
- package/packages/patterns/field/basic-inputs/field-basic-inputs-2.tsx +0 -23
- package/packages/patterns/field/basic-inputs/field-basic-inputs-3.tsx +0 -21
- package/packages/patterns/field/basic-inputs/field-basic-inputs-4.tsx +0 -42
- package/packages/patterns/field/basic-inputs/field-basic-inputs-5.tsx +0 -22
- package/packages/patterns/field/layouts/field-layouts-1.tsx +0 -41
- package/packages/patterns/field/layouts/field-layouts-2.tsx +0 -44
- package/packages/patterns/field/layouts/field-layouts-3.tsx +0 -33
- package/packages/patterns/field/layouts/field-layouts-4.tsx +0 -62
- package/packages/patterns/field/layouts/field-layouts-5.tsx +0 -64
- package/packages/patterns/field/layouts/field-layouts-6.tsx +0 -51
- package/packages/patterns/field/selects/field-selects-1.tsx +0 -32
- package/packages/patterns/field/selects/field-selects-2.tsx +0 -36
- package/packages/patterns/field/selects/field-selects-3.tsx +0 -43
- package/packages/patterns/field/selects/field-selects-4.tsx +0 -49
- package/packages/patterns/field/selects/field-selects-5.tsx +0 -34
- package/packages/patterns/field/selects/field-selects-6.tsx +0 -30
- package/packages/patterns/field/selects/field-selects-7.tsx +0 -32
- package/packages/patterns/field/text-areas/field-text-areas-1.tsx +0 -19
- package/packages/patterns/field/text-areas/field-text-areas-2.tsx +0 -23
- package/packages/patterns/field/text-areas/field-text-areas-3.tsx +0 -34
- package/packages/patterns/field/text-areas/field-text-areas-4.tsx +0 -23
- package/packages/patterns/field/text-areas/field-text-areas-5.tsx +0 -42
- package/packages/patterns/field/text-areas/field-text-areas-6.tsx +0 -24
- package/packages/patterns/field/toggles/field-toggles-1.tsx +0 -17
- package/packages/patterns/field/toggles/field-toggles-2.tsx +0 -50
- package/packages/patterns/field/toggles/field-toggles-3.tsx +0 -40
- package/packages/patterns/field/toggles/field-toggles-4.tsx +0 -42
- package/packages/patterns/field/toggles/field-toggles-5.tsx +0 -15
- package/packages/patterns/field/toggles/field-toggles-6.tsx +0 -26
- package/packages/patterns/field/toggles/field-toggles-7.tsx +0 -28
- package/packages/patterns/form/advanced/form-advanced-1.tsx +0 -83
- package/packages/patterns/form/advanced/form-advanced-2.tsx +0 -75
- package/packages/patterns/form/advanced/form-advanced-3.tsx +0 -114
- package/packages/patterns/form/advanced/form-advanced-4.tsx +0 -91
- package/packages/patterns/form/advanced/form-advanced-5.tsx +0 -121
- package/packages/patterns/form/advanced/form-advanced-6.tsx +0 -163
- package/packages/patterns/form/advanced/form-advanced-7.tsx +0 -182
- package/packages/patterns/form/basic-forms/form-basic-forms-1.tsx +0 -69
- package/packages/patterns/form/basic-forms/form-basic-forms-2.tsx +0 -70
- package/packages/patterns/form/basic-forms/form-basic-forms-3.tsx +0 -70
- package/packages/patterns/form/basic-forms/form-basic-forms-4.tsx +0 -75
- package/packages/patterns/form/basic-forms/form-basic-forms-5.tsx +0 -70
- package/packages/patterns/form/basic-forms/form-basic-forms-6.tsx +0 -70
- package/packages/patterns/form/basic-forms/form-basic-forms-7.tsx +0 -70
- package/packages/patterns/form/layouts/form-layouts-1.tsx +0 -113
- package/packages/patterns/form/layouts/form-layouts-2.tsx +0 -89
- package/packages/patterns/form/layouts/form-layouts-3.tsx +0 -166
- package/packages/patterns/form/layouts/form-layouts-4.tsx +0 -129
- package/packages/patterns/form/layouts/form-layouts-5.tsx +0 -69
- package/packages/patterns/form/layouts/form-layouts-6.tsx +0 -85
- package/packages/patterns/form/layouts/form-layouts-7.tsx +0 -166
- package/packages/patterns/form/multi-field/form-multi-field-1.tsx +0 -90
- package/packages/patterns/form/multi-field/form-multi-field-2.tsx +0 -114
- package/packages/patterns/form/multi-field/form-multi-field-3.tsx +0 -132
- package/packages/patterns/form/multi-field/form-multi-field-4.tsx +0 -131
- package/packages/patterns/form/multi-field/form-multi-field-5.tsx +0 -154
- package/packages/patterns/form/multi-field/form-multi-field-6.tsx +0 -159
- package/packages/patterns/form/multi-field/form-multi-field-7.tsx +0 -232
- package/packages/patterns/form/patterns/form-patterns-1.tsx +0 -110
- package/packages/patterns/form/patterns/form-patterns-2.tsx +0 -160
- package/packages/patterns/form/patterns/form-patterns-3.tsx +0 -160
- package/packages/patterns/form/patterns/form-patterns-4.tsx +0 -159
- package/packages/patterns/form/patterns/form-patterns-5.tsx +0 -222
- package/packages/patterns/form/patterns/form-patterns-6.tsx +0 -258
- package/packages/patterns/form/patterns/form-patterns-7.tsx +0 -249
- package/packages/patterns/form/validation/form-validation-1.tsx +0 -94
- package/packages/patterns/form/validation/form-validation-2.tsx +0 -93
- package/packages/patterns/form/validation/form-validation-3.tsx +0 -100
- package/packages/patterns/form/validation/form-validation-4.tsx +0 -106
- package/packages/patterns/form/validation/form-validation-5.tsx +0 -126
- package/packages/patterns/form/validation/form-validation-6.tsx +0 -126
- package/packages/patterns/form/validation/form-validation-7.tsx +0 -96
- package/packages/patterns/hover-card/info/hover-card-info-1.tsx +0 -29
- package/packages/patterns/hover-card/info/hover-card-info-2.tsx +0 -35
- package/packages/patterns/hover-card/info/hover-card-info-3.tsx +0 -38
- package/packages/patterns/hover-card/info/hover-card-info-4.tsx +0 -37
- package/packages/patterns/hover-card/info/hover-card-info-5.tsx +0 -46
- package/packages/patterns/hover-card/preview/hover-card-preview-1.tsx +0 -44
- package/packages/patterns/hover-card/preview/hover-card-preview-2.tsx +0 -48
- package/packages/patterns/hover-card/preview/hover-card-preview-3.tsx +0 -40
- package/packages/patterns/hover-card/preview/hover-card-preview-4.tsx +0 -51
- package/packages/patterns/hover-card/preview/hover-card-preview-5.tsx +0 -48
- package/packages/patterns/hover-card/profile/hover-card-profile-1.tsx +0 -36
- package/packages/patterns/hover-card/profile/hover-card-profile-2.tsx +0 -50
- package/packages/patterns/hover-card/profile/hover-card-profile-3.tsx +0 -45
- package/packages/patterns/hover-card/profile/hover-card-profile-4.tsx +0 -50
- package/packages/patterns/hover-card/profile/hover-card-profile-5.tsx +0 -54
- package/packages/patterns/hover-card/stats/hover-card-stats-1.tsx +0 -45
- package/packages/patterns/hover-card/stats/hover-card-stats-2.tsx +0 -50
- package/packages/patterns/hover-card/stats/hover-card-stats-3.tsx +0 -53
- package/packages/patterns/hover-card/stats/hover-card-stats-4.tsx +0 -56
- package/packages/patterns/hover-card/stats/hover-card-stats-5.tsx +0 -54
- package/packages/patterns/input/special/input-special-1.tsx +0 -65
- package/packages/patterns/input/special/input-special-2.tsx +0 -19
- package/packages/patterns/input/special/input-special-3.tsx +0 -35
- package/packages/patterns/input/special/input-special-4.tsx +0 -24
- package/packages/patterns/input/special/input-special-5.tsx +0 -27
- package/packages/patterns/input/standard/input-standard-1.tsx +0 -15
- package/packages/patterns/input/standard/input-standard-2.tsx +0 -18
- package/packages/patterns/input/standard/input-standard-3.tsx +0 -23
- package/packages/patterns/input/standard/input-standard-4.tsx +0 -23
- package/packages/patterns/input/standard/input-standard-5.tsx +0 -24
- package/packages/patterns/input/standard/input-standard-6.tsx +0 -33
- package/packages/patterns/input/standard/input-standard-7.tsx +0 -22
- package/packages/patterns/input/types/input-types-1.tsx +0 -24
- package/packages/patterns/input/types/input-types-2.tsx +0 -42
- package/packages/patterns/input/types/input-types-3.tsx +0 -47
- package/packages/patterns/input/types/input-types-4.tsx +0 -24
- package/packages/patterns/input/types/input-types-5.tsx +0 -19
- package/packages/patterns/input/types/input-types-6.tsx +0 -25
- package/packages/patterns/input/types/input-types-7.tsx +0 -25
- package/packages/patterns/input/validation/input-validation-1.tsx +0 -27
- package/packages/patterns/input/validation/input-validation-2.tsx +0 -25
- package/packages/patterns/input/validation/input-validation-3.tsx +0 -26
- package/packages/patterns/input/validation/input-validation-4.tsx +0 -37
- package/packages/patterns/input/validation/input-validation-5.tsx +0 -54
- package/packages/patterns/input-group/ai/input-group-ai-1.tsx +0 -68
- package/packages/patterns/input-group/ai/input-group-ai-2.tsx +0 -42
- package/packages/patterns/input-group/ai/input-group-ai-3.tsx +0 -60
- package/packages/patterns/input-group/ai/input-group-ai-4.tsx +0 -61
- package/packages/patterns/input-group/buttons/input-group-buttons-1.tsx +0 -34
- package/packages/patterns/input-group/buttons/input-group-buttons-2.tsx +0 -39
- package/packages/patterns/input-group/buttons/input-group-buttons-3.tsx +0 -23
- package/packages/patterns/input-group/buttons/input-group-buttons-4.tsx +0 -42
- package/packages/patterns/input-group/custom/input-group-custom-1.tsx +0 -24
- package/packages/patterns/input-group/custom/input-group-custom-2.tsx +0 -31
- package/packages/patterns/input-group/custom/input-group-custom-3.tsx +0 -38
- package/packages/patterns/input-group/custom/input-group-custom-4.tsx +0 -33
- package/packages/patterns/input-group/dropdown/input-group-dropdown-1.tsx +0 -37
- package/packages/patterns/input-group/dropdown/input-group-dropdown-2.tsx +0 -37
- package/packages/patterns/input-group/dropdown/input-group-dropdown-3.tsx +0 -56
- package/packages/patterns/input-group/dropdown/input-group-dropdown-4.tsx +0 -45
- package/packages/patterns/input-group/icons/input-group-icons-1.tsx +0 -19
- package/packages/patterns/input-group/icons/input-group-icons-2.tsx +0 -27
- package/packages/patterns/input-group/icons/input-group-icons-3.tsx +0 -33
- package/packages/patterns/input-group/icons/input-group-icons-4.tsx +0 -36
- package/packages/patterns/input-group/label/input-group-label-1.tsx +0 -27
- package/packages/patterns/input-group/label/input-group-label-2.tsx +0 -43
- package/packages/patterns/input-group/label/input-group-label-3.tsx +0 -36
- package/packages/patterns/input-group/label/input-group-label-4.tsx +0 -23
- package/packages/patterns/input-group/spinner/input-group-spinner-1.tsx +0 -27
- package/packages/patterns/input-group/spinner/input-group-spinner-2.tsx +0 -21
- package/packages/patterns/input-group/spinner/input-group-spinner-3.tsx +0 -25
- package/packages/patterns/input-group/spinner/input-group-spinner-4.tsx +0 -32
- package/packages/patterns/input-group/text/input-group-text-1.tsx +0 -33
- package/packages/patterns/input-group/text/input-group-text-2.tsx +0 -22
- package/packages/patterns/input-group/text/input-group-text-3.tsx +0 -19
- package/packages/patterns/input-group/text/input-group-text-4.tsx +0 -19
- package/packages/patterns/input-group/textarea/input-group-textarea-1.tsx +0 -37
- package/packages/patterns/input-group/textarea/input-group-textarea-2.tsx +0 -23
- package/packages/patterns/input-group/textarea/input-group-textarea-3.tsx +0 -43
- package/packages/patterns/input-group/textarea/input-group-textarea-4.tsx +0 -31
- package/packages/patterns/input-group/tooltip/input-group-tooltip-1.tsx +0 -54
- package/packages/patterns/input-group/tooltip/input-group-tooltip-2.tsx +0 -34
- package/packages/patterns/input-group/tooltip/input-group-tooltip-3.tsx +0 -34
- package/packages/patterns/input-otp/behavior/input-otp-behavior-1.tsx +0 -90
- package/packages/patterns/input-otp/behavior/input-otp-behavior-2.tsx +0 -46
- package/packages/patterns/input-otp/behavior/input-otp-behavior-3.tsx +0 -59
- package/packages/patterns/input-otp/behavior/input-otp-behavior-4.tsx +0 -70
- package/packages/patterns/input-otp/standard/input-otp-standard-1.tsx +0 -26
- package/packages/patterns/input-otp/standard/input-otp-standard-2.tsx +0 -25
- package/packages/patterns/input-otp/standard/input-otp-standard-3.tsx +0 -29
- package/packages/patterns/input-otp/standard/input-otp-standard-4.tsx +0 -42
- package/packages/patterns/input-otp/standard/input-otp-standard-5.tsx +0 -83
- package/packages/patterns/input-otp/states/input-otp-states-1.tsx +0 -29
- package/packages/patterns/input-otp/states/input-otp-states-2.tsx +0 -54
- package/packages/patterns/input-otp/states/input-otp-states-3.tsx +0 -51
- package/packages/patterns/input-otp/states/input-otp-states-4.tsx +0 -59
- package/packages/patterns/input-otp/use-cases/input-otp-use-cases-1.tsx +0 -106
- package/packages/patterns/input-otp/use-cases/input-otp-use-cases-2.tsx +0 -137
- package/packages/patterns/input-otp/use-cases/input-otp-use-cases-3.tsx +0 -128
- package/packages/patterns/input-otp/use-cases/input-otp-use-cases-4.tsx +0 -115
- package/packages/patterns/input-otp/variants/input-otp-variants-1.tsx +0 -34
- package/packages/patterns/input-otp/variants/input-otp-variants-2.tsx +0 -58
- package/packages/patterns/input-otp/variants/input-otp-variants-3.tsx +0 -60
- package/packages/patterns/item/interactive/item-interactive-1.tsx +0 -43
- package/packages/patterns/item/interactive/item-interactive-2.tsx +0 -70
- package/packages/patterns/item/layout/item-layout-1.tsx +0 -45
- package/packages/patterns/item/layout/item-layout-2.tsx +0 -65
- package/packages/patterns/item/layout/item-layout-3.tsx +0 -55
- package/packages/patterns/item/media/item-media-1.tsx +0 -35
- package/packages/patterns/item/media/item-media-2.tsx +0 -42
- package/packages/patterns/item/media/item-media-3.tsx +0 -71
- package/packages/patterns/item/standard/item-standard-1.tsx +0 -30
- package/packages/patterns/item/standard/item-standard-2.tsx +0 -30
- package/packages/patterns/kbd/arrow-keys/kbd-arrow-keys-1.tsx +0 -18
- package/packages/patterns/kbd/arrow-keys/kbd-arrow-keys-2.tsx +0 -14
- package/packages/patterns/kbd/arrow-keys/kbd-arrow-keys-3.tsx +0 -18
- package/packages/patterns/kbd/arrow-keys/kbd-arrow-keys-4.tsx +0 -16
- package/packages/patterns/kbd/function-keys/kbd-function-keys-1.tsx +0 -11
- package/packages/patterns/kbd/function-keys/kbd-function-keys-2.tsx +0 -11
- package/packages/patterns/kbd/function-keys/kbd-function-keys-3.tsx +0 -15
- package/packages/patterns/kbd/function-keys/kbd-function-keys-4.tsx +0 -15
- package/packages/patterns/kbd/function-keys/kbd-function-keys-5.tsx +0 -15
- package/packages/patterns/kbd/function-keys/kbd-function-keys-6.tsx +0 -16
- package/packages/patterns/kbd/platform-specific/kbd-platform-specific-1.tsx +0 -14
- package/packages/patterns/kbd/platform-specific/kbd-platform-specific-2.tsx +0 -14
- package/packages/patterns/kbd/platform-specific/kbd-platform-specific-3.tsx +0 -14
- package/packages/patterns/kbd/platform-specific/kbd-platform-specific-4.tsx +0 -22
- package/packages/patterns/kbd/platform-specific/kbd-platform-specific-5.tsx +0 -14
- package/packages/patterns/kbd/pressed-state/kbd-pressed-state-1.tsx +0 -14
- package/packages/patterns/kbd/pressed-state/kbd-pressed-state-2.tsx +0 -11
- package/packages/patterns/kbd/pressed-state/kbd-pressed-state-3.tsx +0 -16
- package/packages/patterns/kbd/pressed-state/kbd-pressed-state-4.tsx +0 -14
- package/packages/patterns/kbd/pressed-state/kbd-pressed-state-5.tsx +0 -18
- package/packages/patterns/kbd/sequence/kbd-sequence-1.tsx +0 -18
- package/packages/patterns/kbd/sequence/kbd-sequence-2.tsx +0 -15
- package/packages/patterns/kbd/sequence/kbd-sequence-3.tsx +0 -21
- package/packages/patterns/kbd/sequence/kbd-sequence-4.tsx +0 -15
- package/packages/patterns/kbd/shortcut/kbd-shortcut-1.tsx +0 -14
- package/packages/patterns/kbd/shortcut/kbd-shortcut-2.tsx +0 -14
- package/packages/patterns/kbd/shortcut/kbd-shortcut-3.tsx +0 -14
- package/packages/patterns/kbd/shortcut/kbd-shortcut-4.tsx +0 -15
- package/packages/patterns/kbd/shortcut/kbd-shortcut-5.tsx +0 -14
- package/packages/patterns/kbd/sizes/kbd-sizes-1.tsx +0 -14
- package/packages/patterns/kbd/sizes/kbd-sizes-2.tsx +0 -14
- package/packages/patterns/kbd/sizes/kbd-sizes-3.tsx +0 -14
- package/packages/patterns/kbd/sizes/kbd-sizes-4.tsx +0 -13
- package/packages/patterns/kbd/sizes/kbd-sizes-5.tsx +0 -14
- package/packages/patterns/kbd/with-icons/kbd-with-icons-1.tsx +0 -17
- package/packages/patterns/kbd/with-icons/kbd-with-icons-2.tsx +0 -17
- package/packages/patterns/kbd/with-icons/kbd-with-icons-3.tsx +0 -25
- package/packages/patterns/kbd/with-icons/kbd-with-icons-4.tsx +0 -17
- package/packages/patterns/kbd/with-icons/kbd-with-icons-5.tsx +0 -15
- package/packages/patterns/label/standard/label-standard-1.tsx +0 -11
- package/packages/patterns/label/standard/label-standard-2.tsx +0 -14
- package/packages/patterns/label/standard/label-standard-3.tsx +0 -26
- package/packages/patterns/label/standard/label-standard-4.tsx +0 -15
- package/packages/patterns/label/standard/label-standard-5.tsx +0 -12
- package/packages/patterns/label/standard/label-standard-6.tsx +0 -12
- package/packages/patterns/label/standard/label-standard-7.tsx +0 -12
- package/packages/patterns/label/standard/label-standard-8.tsx +0 -9
- package/packages/patterns/menubar/standard/menubar-standard-1.tsx +0 -24
- package/packages/patterns/menubar/standard/menubar-standard-10.tsx +0 -26
- package/packages/patterns/menubar/standard/menubar-standard-2.tsx +0 -34
- package/packages/patterns/menubar/standard/menubar-standard-3.tsx +0 -34
- package/packages/patterns/menubar/standard/menubar-standard-4.tsx +0 -24
- package/packages/patterns/menubar/standard/menubar-standard-5.tsx +0 -29
- package/packages/patterns/menubar/standard/menubar-standard-6.tsx +0 -34
- package/packages/patterns/menubar/standard/menubar-standard-7.tsx +0 -27
- package/packages/patterns/menubar/standard/menubar-standard-8.tsx +0 -63
- package/packages/patterns/menubar/standard/menubar-standard-9.tsx +0 -31
- package/packages/patterns/navigation-menu/complex/navigation-menu-complex-1.tsx +0 -238
- package/packages/patterns/navigation-menu/complex/navigation-menu-complex-2.tsx +0 -100
- package/packages/patterns/navigation-menu/complex/navigation-menu-complex-3.tsx +0 -151
- package/packages/patterns/navigation-menu/complex/navigation-menu-complex-4.tsx +0 -187
- package/packages/patterns/navigation-menu/complex/navigation-menu-complex-5.tsx +0 -168
- package/packages/patterns/navigation-menu/features/navigation-menu-features-1.tsx +0 -92
- package/packages/patterns/navigation-menu/features/navigation-menu-features-2.tsx +0 -118
- package/packages/patterns/navigation-menu/features/navigation-menu-features-3.tsx +0 -122
- package/packages/patterns/navigation-menu/features/navigation-menu-features-4.tsx +0 -101
- package/packages/patterns/navigation-menu/features/navigation-menu-features-5.tsx +0 -176
- package/packages/patterns/navigation-menu/marketing/navigation-menu-marketing-1.tsx +0 -107
- package/packages/patterns/navigation-menu/marketing/navigation-menu-marketing-2.tsx +0 -116
- package/packages/patterns/navigation-menu/marketing/navigation-menu-marketing-3.tsx +0 -119
- package/packages/patterns/navigation-menu/marketing/navigation-menu-marketing-4.tsx +0 -140
- package/packages/patterns/navigation-menu/marketing/navigation-menu-marketing-5.tsx +0 -107
- package/packages/patterns/navigation-menu/standard/navigation-menu-standard-1.tsx +0 -73
- package/packages/patterns/navigation-menu/standard/navigation-menu-standard-2.tsx +0 -51
- package/packages/patterns/navigation-menu/standard/navigation-menu-standard-3.tsx +0 -68
- package/packages/patterns/navigation-menu/standard/navigation-menu-standard-4.tsx +0 -60
- package/packages/patterns/navigation-menu/standard/navigation-menu-standard-5.tsx +0 -82
- package/packages/patterns/package.json +0 -32
- package/packages/patterns/pagination/advanced/pagination-advanced-1.tsx +0 -43
- package/packages/patterns/pagination/advanced/pagination-advanced-2.tsx +0 -43
- package/packages/patterns/pagination/advanced/pagination-advanced-3.tsx +0 -49
- package/packages/patterns/pagination/advanced/pagination-advanced-4.tsx +0 -24
- package/packages/patterns/pagination/advanced/pagination-advanced-5.tsx +0 -39
- package/packages/patterns/pagination/basic/pagination-basic-1.tsx +0 -28
- package/packages/patterns/pagination/basic/pagination-basic-2.tsx +0 -34
- package/packages/patterns/pagination/basic/pagination-basic-3.tsx +0 -36
- package/packages/patterns/pagination/basic/pagination-basic-4.tsx +0 -35
- package/packages/patterns/pagination/basic/pagination-basic-5.tsx +0 -43
- package/packages/patterns/pagination/navigation/pagination-navigation-1.tsx +0 -24
- package/packages/patterns/pagination/navigation/pagination-navigation-2.tsx +0 -27
- package/packages/patterns/pagination/navigation/pagination-navigation-3.tsx +0 -32
- package/packages/patterns/pagination/navigation/pagination-navigation-4.tsx +0 -40
- package/packages/patterns/pagination/sizes/pagination-sizes-1.tsx +0 -40
- package/packages/patterns/pagination/sizes/pagination-sizes-2.tsx +0 -36
- package/packages/patterns/pagination/sizes/pagination-sizes-3.tsx +0 -40
- package/packages/patterns/pagination/sizes/pagination-sizes-4.tsx +0 -28
- package/packages/patterns/pagination/sizes/pagination-sizes-5.tsx +0 -28
- package/packages/patterns/popover/standard/popover-standard-1.tsx +0 -21
- package/packages/patterns/popover/standard/popover-standard-10.tsx +0 -30
- package/packages/patterns/popover/standard/popover-standard-11.tsx +0 -54
- package/packages/patterns/popover/standard/popover-standard-12.tsx +0 -51
- package/packages/patterns/popover/standard/popover-standard-13.tsx +0 -52
- package/packages/patterns/popover/standard/popover-standard-14.tsx +0 -49
- package/packages/patterns/popover/standard/popover-standard-15.tsx +0 -35
- package/packages/patterns/popover/standard/popover-standard-2.tsx +0 -24
- package/packages/patterns/popover/standard/popover-standard-3.tsx +0 -29
- package/packages/patterns/popover/standard/popover-standard-4.tsx +0 -26
- package/packages/patterns/popover/standard/popover-standard-5.tsx +0 -24
- package/packages/patterns/popover/standard/popover-standard-6.tsx +0 -25
- package/packages/patterns/popover/standard/popover-standard-7.tsx +0 -25
- package/packages/patterns/popover/standard/popover-standard-8.tsx +0 -26
- package/packages/patterns/popover/standard/popover-standard-9.tsx +0 -23
- package/packages/patterns/progress/basic/progress-basic-1.tsx +0 -7
- package/packages/patterns/progress/basic/progress-basic-2.tsx +0 -7
- package/packages/patterns/progress/basic/progress-basic-3.tsx +0 -7
- package/packages/patterns/progress/basic/progress-basic-4.tsx +0 -7
- package/packages/patterns/progress/basic/progress-basic-5.tsx +0 -7
- package/packages/patterns/progress/colored/progress-colored-1.tsx +0 -12
- package/packages/patterns/progress/colored/progress-colored-2.tsx +0 -12
- package/packages/patterns/progress/colored/progress-colored-3.tsx +0 -12
- package/packages/patterns/progress/colored/progress-colored-4.tsx +0 -12
- package/packages/patterns/progress/colored/progress-colored-5.tsx +0 -12
- package/packages/patterns/progress/sizes/progress-sizes-1.tsx +0 -7
- package/packages/patterns/progress/sizes/progress-sizes-2.tsx +0 -7
- package/packages/patterns/progress/sizes/progress-sizes-3.tsx +0 -7
- package/packages/patterns/progress/sizes/progress-sizes-4.tsx +0 -7
- package/packages/patterns/progress/sizes/progress-sizes-5.tsx +0 -7
- package/packages/patterns/progress/with-label/progress-with-label-1.tsx +0 -18
- package/packages/patterns/progress/with-label/progress-with-label-2.tsx +0 -15
- package/packages/patterns/progress/with-label/progress-with-label-3.tsx +0 -15
- package/packages/patterns/progress/with-label/progress-with-label-4.tsx +0 -23
- package/packages/patterns/progress/with-label/progress-with-label-5.tsx +0 -23
- package/packages/patterns/radio-group/advanced/radio-group-advanced-1.tsx +0 -39
- package/packages/patterns/radio-group/advanced/radio-group-advanced-2.tsx +0 -71
- package/packages/patterns/radio-group/form/radio-group-form-1.tsx +0 -83
- package/packages/patterns/radio-group/form/radio-group-form-2.tsx +0 -52
- package/packages/patterns/radio-group/layout/radio-group-layout-1.tsx +0 -23
- package/packages/patterns/radio-group/layout/radio-group-layout-2.tsx +0 -44
- package/packages/patterns/radio-group/layout/radio-group-layout-3.tsx +0 -35
- package/packages/patterns/radio-group/standard/radio-group-standard-1.tsx +0 -23
- package/packages/patterns/radio-group/standard/radio-group-standard-2.tsx +0 -38
- package/packages/patterns/scroll-area/advanced/scroll-area-advanced-1.tsx +0 -54
- package/packages/patterns/scroll-area/advanced/scroll-area-advanced-2.tsx +0 -54
- package/packages/patterns/scroll-area/advanced/scroll-area-advanced-3.tsx +0 -89
- package/packages/patterns/scroll-area/layout/scroll-area-layout-1.tsx +0 -37
- package/packages/patterns/scroll-area/layout/scroll-area-layout-2.tsx +0 -45
- package/packages/patterns/scroll-area/layout/scroll-area-layout-3.tsx +0 -99
- package/packages/patterns/scroll-area/standard/scroll-area-standard-1.tsx +0 -52
- package/packages/patterns/scroll-area/standard/scroll-area-standard-2.tsx +0 -56
- package/packages/patterns/separator/basic/separator-basic-1.tsx +0 -13
- package/packages/patterns/separator/basic/separator-basic-2.tsx +0 -15
- package/packages/patterns/separator/basic/separator-basic-3.tsx +0 -21
- package/packages/patterns/separator/basic/separator-basic-4.tsx +0 -19
- package/packages/patterns/separator/basic/separator-basic-5.tsx +0 -7
- package/packages/patterns/separator/spacing/separator-spacing-1.tsx +0 -13
- package/packages/patterns/separator/spacing/separator-spacing-2.tsx +0 -13
- package/packages/patterns/separator/spacing/separator-spacing-3.tsx +0 -13
- package/packages/patterns/separator/spacing/separator-spacing-4.tsx +0 -13
- package/packages/patterns/separator/spacing/separator-spacing-5.tsx +0 -13
- package/packages/patterns/separator/styled/separator-styled-1.tsx +0 -13
- package/packages/patterns/separator/styled/separator-styled-2.tsx +0 -13
- package/packages/patterns/separator/styled/separator-styled-3.tsx +0 -13
- package/packages/patterns/separator/styled/separator-styled-4.tsx +0 -11
- package/packages/patterns/separator/styled/separator-styled-5.tsx +0 -16
- package/packages/patterns/separator/with-text/separator-with-text-1.tsx +0 -17
- package/packages/patterns/separator/with-text/separator-with-text-2.tsx +0 -16
- package/packages/patterns/separator/with-text/separator-with-text-3.tsx +0 -14
- package/packages/patterns/sheet/details/sheet-details-1.tsx +0 -51
- package/packages/patterns/sheet/details/sheet-details-2.tsx +0 -56
- package/packages/patterns/sheet/details/sheet-details-3.tsx +0 -65
- package/packages/patterns/sheet/details/sheet-details-4.tsx +0 -45
- package/packages/patterns/sheet/details/sheet-details-5.tsx +0 -114
- package/packages/patterns/sheet/form/sheet-form-1.tsx +0 -46
- package/packages/patterns/sheet/form/sheet-form-2.tsx +0 -45
- package/packages/patterns/sheet/form/sheet-form-3.tsx +0 -60
- package/packages/patterns/sheet/form/sheet-form-4.tsx +0 -50
- package/packages/patterns/sheet/form/sheet-form-5.tsx +0 -50
- package/packages/patterns/sheet/multi-section/sheet-multi-section-1.tsx +0 -42
- package/packages/patterns/sheet/multi-section/sheet-multi-section-2.tsx +0 -79
- package/packages/patterns/sheet/multi-section/sheet-multi-section-3.tsx +0 -42
- package/packages/patterns/sheet/multi-section/sheet-multi-section-4.tsx +0 -50
- package/packages/patterns/sheet/multi-section/sheet-multi-section-5.tsx +0 -66
- package/packages/patterns/sheet/navigation/sheet-navigation-1.tsx +0 -39
- package/packages/patterns/sheet/navigation/sheet-navigation-2.tsx +0 -57
- package/packages/patterns/sheet/navigation/sheet-navigation-3.tsx +0 -73
- package/packages/patterns/sheet/navigation/sheet-navigation-4.tsx +0 -55
- package/packages/patterns/sheet/navigation/sheet-navigation-5.tsx +0 -46
- package/packages/patterns/sheet/settings/sheet-settings-1.tsx +0 -47
- package/packages/patterns/sheet/settings/sheet-settings-2.tsx +0 -47
- package/packages/patterns/sheet/settings/sheet-settings-3.tsx +0 -55
- package/packages/patterns/sheet/settings/sheet-settings-4.tsx +0 -62
- package/packages/patterns/sheet/settings/sheet-settings-5.tsx +0 -52
- package/packages/patterns/sheet/standard/sheet-standard-1.tsx +0 -29
- package/packages/patterns/sheet/standard/sheet-standard-2.tsx +0 -30
- package/packages/patterns/sheet/standard/sheet-standard-3.tsx +0 -29
- package/packages/patterns/sheet/standard/sheet-standard-4.tsx +0 -29
- package/packages/patterns/skeleton/card/skeleton-card-1.tsx +0 -13
- package/packages/patterns/skeleton/card/skeleton-card-2.tsx +0 -20
- package/packages/patterns/skeleton/card/skeleton-card-3.tsx +0 -21
- package/packages/patterns/skeleton/card/skeleton-card-4.tsx +0 -21
- package/packages/patterns/skeleton/card/skeleton-card-5.tsx +0 -20
- package/packages/patterns/skeleton/content/skeleton-content-1.tsx +0 -26
- package/packages/patterns/skeleton/content/skeleton-content-2.tsx +0 -30
- package/packages/patterns/skeleton/content/skeleton-content-3.tsx +0 -27
- package/packages/patterns/skeleton/content/skeleton-content-4.tsx +0 -31
- package/packages/patterns/skeleton/content/skeleton-content-5.tsx +0 -41
- package/packages/patterns/skeleton/form/skeleton-form-1.tsx +0 -22
- package/packages/patterns/skeleton/form/skeleton-form-2.tsx +0 -27
- package/packages/patterns/skeleton/form/skeleton-form-3.tsx +0 -35
- package/packages/patterns/skeleton/form/skeleton-form-4.tsx +0 -37
- package/packages/patterns/skeleton/form/skeleton-form-5.tsx +0 -28
- package/packages/patterns/skeleton/list/skeleton-list-1.tsx +0 -16
- package/packages/patterns/skeleton/list/skeleton-list-2.tsx +0 -19
- package/packages/patterns/skeleton/list/skeleton-list-3.tsx +0 -20
- package/packages/patterns/skeleton/list/skeleton-list-4.tsx +0 -21
- package/packages/patterns/skeleton/list/skeleton-list-5.tsx +0 -30
- package/packages/patterns/skeleton/profile/skeleton-profile-1.tsx +0 -19
- package/packages/patterns/skeleton/profile/skeleton-profile-2.tsx +0 -33
- package/packages/patterns/skeleton/profile/skeleton-profile-3.tsx +0 -27
- package/packages/patterns/skeleton/profile/skeleton-profile-4.tsx +0 -33
- package/packages/patterns/skeleton/profile/skeleton-profile-5.tsx +0 -22
- package/packages/patterns/skeleton/table/skeleton-table-1.tsx +0 -24
- package/packages/patterns/skeleton/table/skeleton-table-2.tsx +0 -29
- package/packages/patterns/skeleton/table/skeleton-table-3.tsx +0 -27
- package/packages/patterns/skeleton/table/skeleton-table-4.tsx +0 -42
- package/packages/patterns/skeleton/table/skeleton-table-5.tsx +0 -36
- package/packages/patterns/slider/interactive/slider-interactive-1.tsx +0 -38
- package/packages/patterns/slider/interactive/slider-interactive-2.tsx +0 -46
- package/packages/patterns/slider/interactive/slider-interactive-3.tsx +0 -38
- package/packages/patterns/slider/interactive/slider-interactive-4.tsx +0 -34
- package/packages/patterns/slider/interactive/slider-interactive-5.tsx +0 -33
- package/packages/patterns/slider/range/slider-range-1.tsx +0 -26
- package/packages/patterns/slider/range/slider-range-2.tsx +0 -30
- package/packages/patterns/slider/range/slider-range-3.tsx +0 -31
- package/packages/patterns/slider/range/slider-range-4.tsx +0 -39
- package/packages/patterns/slider/range/slider-range-5.tsx +0 -36
- package/packages/patterns/slider/settings/slider-settings-1.tsx +0 -27
- package/packages/patterns/slider/settings/slider-settings-2.tsx +0 -32
- package/packages/patterns/slider/settings/slider-settings-3.tsx +0 -38
- package/packages/patterns/slider/settings/slider-settings-4.tsx +0 -43
- package/packages/patterns/slider/standard/slider-standard-1.tsx +0 -18
- package/packages/patterns/slider/standard/slider-standard-2.tsx +0 -20
- package/packages/patterns/slider/standard/slider-standard-3.tsx +0 -23
- package/packages/patterns/slider/standard/slider-standard-4.tsx +0 -30
- package/packages/patterns/slider/standard/slider-standard-5.tsx +0 -37
- package/packages/patterns/slider/styled/slider-styled-1.tsx +0 -28
- package/packages/patterns/slider/styled/slider-styled-2.tsx +0 -28
- package/packages/patterns/slider/styled/slider-styled-3.tsx +0 -28
- package/packages/patterns/slider/styled/slider-styled-4.tsx +0 -28
- package/packages/patterns/slider/styled/slider-styled-5.tsx +0 -28
- package/packages/patterns/slider/vertical/slider-vertical-1.tsx +0 -27
- package/packages/patterns/slider/vertical/slider-vertical-2.tsx +0 -29
- package/packages/patterns/slider/vertical/slider-vertical-3.tsx +0 -36
- package/packages/patterns/slider/vertical/slider-vertical-4.tsx +0 -31
- package/packages/patterns/slider/vertical/slider-vertical-5.tsx +0 -37
- package/packages/patterns/sonner/content/sonner-content-1.tsx +0 -21
- package/packages/patterns/sonner/content/sonner-content-2.tsx +0 -23
- package/packages/patterns/sonner/content/sonner-content-3.tsx +0 -21
- package/packages/patterns/sonner/content/sonner-content-4.tsx +0 -22
- package/packages/patterns/sonner/content/sonner-content-5.tsx +0 -35
- package/packages/patterns/sonner/interactive/sonner-interactive-1.tsx +0 -24
- package/packages/patterns/sonner/interactive/sonner-interactive-2.tsx +0 -24
- package/packages/patterns/sonner/interactive/sonner-interactive-3.tsx +0 -28
- package/packages/patterns/sonner/interactive/sonner-interactive-4.tsx +0 -22
- package/packages/patterns/sonner/position/sonner-position-1.tsx +0 -21
- package/packages/patterns/sonner/position/sonner-position-2.tsx +0 -21
- package/packages/patterns/sonner/position/sonner-position-3.tsx +0 -21
- package/packages/patterns/sonner/position/sonner-position-4.tsx +0 -21
- package/packages/patterns/sonner/position/sonner-position-5.tsx +0 -21
- package/packages/patterns/sonner/position/sonner-position-6.tsx +0 -21
- package/packages/patterns/sonner/promise/sonner-promise-1.tsx +0 -28
- package/packages/patterns/sonner/promise/sonner-promise-2.tsx +0 -28
- package/packages/patterns/sonner/promise/sonner-promise-3.tsx +0 -28
- package/packages/patterns/sonner/promise/sonner-promise-4.tsx +0 -20
- package/packages/patterns/sonner/standard/sonner-standard-1.tsx +0 -14
- package/packages/patterns/sonner/standard/sonner-standard-2.tsx +0 -17
- package/packages/patterns/sonner/standard/sonner-standard-3.tsx +0 -14
- package/packages/patterns/sonner/standard/sonner-standard-4.tsx +0 -17
- package/packages/patterns/sonner/standard/sonner-standard-5.tsx +0 -17
- package/packages/patterns/spinner/applications/spinner-applications-1.tsx +0 -38
- package/packages/patterns/spinner/applications/spinner-applications-2.tsx +0 -34
- package/packages/patterns/spinner/applications/spinner-applications-3.tsx +0 -33
- package/packages/patterns/spinner/button/spinner-button-1.tsx +0 -13
- package/packages/patterns/spinner/button/spinner-button-2.tsx +0 -13
- package/packages/patterns/spinner/button/spinner-button-3.tsx +0 -12
- package/packages/patterns/spinner/button/spinner-button-4.tsx +0 -13
- package/packages/patterns/spinner/button/spinner-button-5.tsx +0 -13
- package/packages/patterns/spinner/inline/spinner-inline-1.tsx +0 -12
- package/packages/patterns/spinner/inline/spinner-inline-2.tsx +0 -12
- package/packages/patterns/spinner/inline/spinner-inline-3.tsx +0 -12
- package/packages/patterns/spinner/inline/spinner-inline-4.tsx +0 -21
- package/packages/patterns/spinner/standard/spinner-standard-1.tsx +0 -7
- package/packages/patterns/spinner/standard/spinner-standard-2.tsx +0 -7
- package/packages/patterns/spinner/standard/spinner-standard-3.tsx +0 -7
- package/packages/patterns/spinner/standard/spinner-standard-4.tsx +0 -7
- package/packages/patterns/spinner/standard/spinner-standard-5.tsx +0 -7
- package/packages/patterns/switch/cards/switch-cards-1.tsx +0 -27
- package/packages/patterns/switch/cards/switch-cards-2.tsx +0 -28
- package/packages/patterns/switch/cards/switch-cards-3.tsx +0 -35
- package/packages/patterns/switch/cards/switch-cards-4.tsx +0 -25
- package/packages/patterns/switch/icons/switch-icons-1.tsx +0 -16
- package/packages/patterns/switch/icons/switch-icons-2.tsx +0 -19
- package/packages/patterns/switch/icons/switch-icons-3.tsx +0 -16
- package/packages/patterns/switch/labeled/switch-labeled-1.tsx +0 -15
- package/packages/patterns/switch/labeled/switch-labeled-2.tsx +0 -14
- package/packages/patterns/switch/labeled/switch-labeled-3.tsx +0 -22
- package/packages/patterns/switch/labeled/switch-labeled-4.tsx +0 -20
- package/packages/patterns/switch/square/switch-square-1.tsx +0 -14
- package/packages/patterns/switch/square/switch-square-2.tsx +0 -36
- package/packages/patterns/switch/square/switch-square-3.tsx +0 -20
- package/packages/patterns/switch/square/switch-square-4.tsx +0 -27
- package/packages/patterns/switch/standard/switch-standard-1.tsx +0 -9
- package/packages/patterns/switch/standard/switch-standard-2.tsx +0 -9
- package/packages/patterns/switch/standard/switch-standard-3.tsx +0 -9
- package/packages/patterns/switch/standard/switch-standard-4.tsx +0 -9
- package/packages/patterns/table/advanced/table-advanced-1.tsx +0 -66
- package/packages/patterns/table/advanced/table-advanced-2.tsx +0 -86
- package/packages/patterns/table/advanced/table-advanced-3.tsx +0 -42
- package/packages/patterns/table/advanced/table-advanced-4.tsx +0 -114
- package/packages/patterns/table/standard/table-standard-1.tsx +0 -70
- package/packages/patterns/table/standard/table-standard-2.tsx +0 -75
- package/packages/patterns/table/standard/table-standard-3.tsx +0 -64
- package/packages/patterns/table/standard/table-standard-4.tsx +0 -73
- package/packages/patterns/tabs/advanced/tabs-advanced-1.tsx +0 -101
- package/packages/patterns/tabs/advanced/tabs-advanced-2.tsx +0 -118
- package/packages/patterns/tabs/advanced/tabs-advanced-3.tsx +0 -187
- package/packages/patterns/tabs/content/tabs-content-1.tsx +0 -85
- package/packages/patterns/tabs/content/tabs-content-2.tsx +0 -105
- package/packages/patterns/tabs/content/tabs-content-3.tsx +0 -149
- package/packages/patterns/tabs/layout/tabs-layout-1.tsx +0 -62
- package/packages/patterns/tabs/layout/tabs-layout-2.tsx +0 -60
- package/packages/patterns/tabs/layout/tabs-layout-3.tsx +0 -61
- package/packages/patterns/tabs/standard/tabs-standard-1.tsx +0 -52
- package/packages/patterns/tabs/standard/tabs-standard-2.tsx +0 -105
- package/packages/patterns/textarea/form/textarea-form-1.tsx +0 -20
- package/packages/patterns/textarea/form/textarea-form-2.tsx +0 -20
- package/packages/patterns/textarea/form/textarea-form-3.tsx +0 -22
- package/packages/patterns/textarea/form/textarea-form-4.tsx +0 -20
- package/packages/patterns/textarea/form/textarea-form-5.tsx +0 -31
- package/packages/patterns/textarea/labeled/textarea-labeled-1.tsx +0 -17
- package/packages/patterns/textarea/labeled/textarea-labeled-2.tsx +0 -18
- package/packages/patterns/textarea/labeled/textarea-labeled-3.tsx +0 -30
- package/packages/patterns/textarea/labeled/textarea-labeled-4.tsx +0 -20
- package/packages/patterns/textarea/standard/textarea-standard-1.tsx +0 -12
- package/packages/patterns/textarea/standard/textarea-standard-2.tsx +0 -13
- package/packages/patterns/textarea/standard/textarea-standard-3.tsx +0 -14
- package/packages/patterns/textarea/standard/textarea-standard-4.tsx +0 -13
- package/packages/patterns/toggle/sizes/toggle-sizes-1.tsx +0 -14
- package/packages/patterns/toggle/sizes/toggle-sizes-2.tsx +0 -14
- package/packages/patterns/toggle/sizes/toggle-sizes-3.tsx +0 -14
- package/packages/patterns/toggle/standard/toggle-standard-1.tsx +0 -14
- package/packages/patterns/toggle/standard/toggle-standard-2.tsx +0 -14
- package/packages/patterns/toggle/standard/toggle-standard-3.tsx +0 -14
- package/packages/patterns/toggle/standard/toggle-standard-4.tsx +0 -15
- package/packages/patterns/toggle-group/sizes/toggle-group-sizes-1.tsx +0 -22
- package/packages/patterns/toggle-group/sizes/toggle-group-sizes-2.tsx +0 -22
- package/packages/patterns/toggle-group/sizes/toggle-group-sizes-3.tsx +0 -22
- package/packages/patterns/toggle-group/standard/toggle-group-standard-1.tsx +0 -22
- package/packages/patterns/toggle-group/standard/toggle-group-standard-2.tsx +0 -22
- package/packages/patterns/toggle-group/standard/toggle-group-standard-3.tsx +0 -22
- package/packages/patterns/toggle-group/standard/toggle-group-standard-4.tsx +0 -22
- package/packages/patterns/tooltip/content/tooltip-content-1.tsx +0 -28
- package/packages/patterns/tooltip/content/tooltip-content-2.tsx +0 -27
- package/packages/patterns/tooltip/content/tooltip-content-3.tsx +0 -27
- package/packages/patterns/tooltip/content/tooltip-content-4.tsx +0 -36
- package/packages/patterns/tooltip/standard/tooltip-standard-1.tsx +0 -23
- package/packages/patterns/tooltip/standard/tooltip-standard-2.tsx +0 -49
- package/packages/patterns/tooltip/standard/tooltip-standard-3.tsx +0 -26
- package/packages/patterns/tooltip/standard/tooltip-standard-4.tsx +0 -25
- package/packages/patterns/tsconfig.json +0 -13
- package/packages/pill/index.tsx +0 -166
- package/packages/pill/package.json +0 -24
- package/packages/pill/tsconfig.json +0 -13
- package/packages/qr-code/index.tsx +0 -88
- package/packages/qr-code/package.json +0 -27
- package/packages/qr-code/server.tsx +0 -42
- package/packages/qr-code/tsconfig.json +0 -13
- package/packages/rating/index.tsx +0 -243
- package/packages/rating/package.json +0 -25
- package/packages/rating/tsconfig.json +0 -13
- package/packages/reel/index.tsx +0 -748
- package/packages/reel/package.json +0 -26
- package/packages/reel/reel-controlled.tsx +0 -327
- package/packages/reel/tsconfig.json +0 -13
- package/packages/relative-time/index.tsx +0 -181
- package/packages/relative-time/package.json +0 -24
- package/packages/relative-time/tsconfig.json +0 -13
- package/packages/sandbox/index.tsx +0 -251
- package/packages/sandbox/package.json +0 -24
- package/packages/sandbox/tsconfig.json +0 -13
- package/packages/shadcn-ui/components/ui/accordion.tsx +0 -66
- package/packages/shadcn-ui/components/ui/alert-dialog.tsx +0 -157
- package/packages/shadcn-ui/components/ui/alert.tsx +0 -66
- package/packages/shadcn-ui/components/ui/aspect-ratio.tsx +0 -11
- package/packages/shadcn-ui/components/ui/avatar.tsx +0 -53
- package/packages/shadcn-ui/components/ui/badge.tsx +0 -46
- package/packages/shadcn-ui/components/ui/breadcrumb.tsx +0 -109
- package/packages/shadcn-ui/components/ui/button-group.tsx +0 -83
- package/packages/shadcn-ui/components/ui/button.tsx +0 -60
- package/packages/shadcn-ui/components/ui/calendar.tsx +0 -213
- package/packages/shadcn-ui/components/ui/card.tsx +0 -112
- package/packages/shadcn-ui/components/ui/carousel.tsx +0 -241
- package/packages/shadcn-ui/components/ui/chart.tsx +0 -357
- package/packages/shadcn-ui/components/ui/checkbox.tsx +0 -32
- package/packages/shadcn-ui/components/ui/collapsible.tsx +0 -33
- package/packages/shadcn-ui/components/ui/command.tsx +0 -184
- package/packages/shadcn-ui/components/ui/context-menu.tsx +0 -252
- package/packages/shadcn-ui/components/ui/dialog.tsx +0 -143
- package/packages/shadcn-ui/components/ui/drawer.tsx +0 -135
- package/packages/shadcn-ui/components/ui/dropdown-menu.tsx +0 -257
- package/packages/shadcn-ui/components/ui/empty.tsx +0 -104
- package/packages/shadcn-ui/components/ui/field.tsx +0 -244
- package/packages/shadcn-ui/components/ui/form.tsx +0 -167
- package/packages/shadcn-ui/components/ui/hover-card.tsx +0 -44
- package/packages/shadcn-ui/components/ui/input-group.tsx +0 -170
- package/packages/shadcn-ui/components/ui/input-otp.tsx +0 -77
- package/packages/shadcn-ui/components/ui/input.tsx +0 -21
- package/packages/shadcn-ui/components/ui/item.tsx +0 -193
- package/packages/shadcn-ui/components/ui/kbd.tsx +0 -28
- package/packages/shadcn-ui/components/ui/label.tsx +0 -24
- package/packages/shadcn-ui/components/ui/menubar.tsx +0 -276
- package/packages/shadcn-ui/components/ui/navigation-menu.tsx +0 -168
- package/packages/shadcn-ui/components/ui/pagination.tsx +0 -127
- package/packages/shadcn-ui/components/ui/popover.tsx +0 -48
- package/packages/shadcn-ui/components/ui/progress.tsx +0 -31
- package/packages/shadcn-ui/components/ui/radio-group.tsx +0 -45
- package/packages/shadcn-ui/components/ui/resizable.tsx +0 -56
- package/packages/shadcn-ui/components/ui/scroll-area.tsx +0 -58
- package/packages/shadcn-ui/components/ui/select.tsx +0 -187
- package/packages/shadcn-ui/components/ui/separator.tsx +0 -28
- package/packages/shadcn-ui/components/ui/sheet.tsx +0 -139
- package/packages/shadcn-ui/components/ui/sidebar.tsx +0 -726
- package/packages/shadcn-ui/components/ui/skeleton.tsx +0 -13
- package/packages/shadcn-ui/components/ui/slider.tsx +0 -63
- package/packages/shadcn-ui/components/ui/sonner.tsx +0 -25
- package/packages/shadcn-ui/components/ui/spinner.tsx +0 -16
- package/packages/shadcn-ui/components/ui/switch.tsx +0 -31
- package/packages/shadcn-ui/components/ui/table.tsx +0 -116
- package/packages/shadcn-ui/components/ui/tabs.tsx +0 -66
- package/packages/shadcn-ui/components/ui/textarea.tsx +0 -18
- package/packages/shadcn-ui/components/ui/toast.tsx +0 -128
- package/packages/shadcn-ui/components/ui/toaster.tsx +0 -35
- package/packages/shadcn-ui/components/ui/toggle-group.tsx +0 -73
- package/packages/shadcn-ui/components/ui/toggle.tsx +0 -47
- package/packages/shadcn-ui/components/ui/tooltip.tsx +0 -61
- package/packages/shadcn-ui/components.json +0 -21
- package/packages/shadcn-ui/hooks/use-mobile.ts +0 -19
- package/packages/shadcn-ui/hooks/use-mobile.tsx +0 -19
- package/packages/shadcn-ui/hooks/use-toast.ts +0 -194
- package/packages/shadcn-ui/lib/utils.ts +0 -6
- package/packages/shadcn-ui/package.json +0 -39
- package/packages/shadcn-ui/tsconfig.json +0 -17
- package/packages/shader-ripple/index.tsx +0 -303
- package/packages/shader-ripple/package.json +0 -60
- package/packages/shader-ripple/tsconfig.json +0 -18
- package/packages/silk/README.md +0 -40
- package/packages/silk/index.tsx +0 -170
- package/packages/silk/package.json +0 -61
- package/packages/silk/tsconfig.json +0 -18
- package/packages/silk/types.d.ts +0 -23
- package/packages/snippet/index.tsx +0 -123
- package/packages/snippet/package.json +0 -23
- package/packages/snippet/tsconfig.json +0 -13
- package/packages/spinner/index.tsx +0 -271
- package/packages/spinner/package.json +0 -24
- package/packages/spinner/tsconfig.json +0 -13
- package/packages/status/index.tsx +0 -62
- package/packages/status/package.json +0 -23
- package/packages/status/tsconfig.json +0 -13
- package/packages/stories/index.tsx +0 -232
- package/packages/stories/package.json +0 -23
- package/packages/stories/tsconfig.json +0 -13
- package/packages/table/index.tsx +0 -246
- package/packages/table/package.json +0 -26
- package/packages/table/tsconfig.json +0 -13
- package/packages/tags/index.tsx +0 -221
- package/packages/tags/package.json +0 -23
- package/packages/tags/tsconfig.json +0 -13
- package/packages/theme-switcher/index.tsx +0 -99
- package/packages/theme-switcher/package.json +0 -26
- package/packages/theme-switcher/tsconfig.json +0 -13
- package/packages/ticker/index.tsx +0 -195
- package/packages/ticker/package.json +0 -23
- package/packages/ticker/tsconfig.json +0 -13
- package/packages/tree/index.tsx +0 -445
- package/packages/tree/package.json +0 -25
- package/packages/tree/tsconfig.json +0 -13
- package/packages/typescript-config/base.json +0 -27
- package/packages/typescript-config/nextjs.json +0 -13
- package/packages/typescript-config/package.json +0 -15
- package/packages/typescript-config/react-library.json +0 -8
- package/packages/typescript-config/types/minimatch/index.d.ts +0 -26
- package/packages/typography/package.json +0 -26
- package/packages/typography/styles.css +0 -326
- package/packages/typography/tsconfig.json +0 -13
- package/packages/video-player/index.tsx +0 -125
- package/packages/video-player/package.json +0 -24
- package/packages/video-player/tsconfig.json +0 -13
- package/public/r/accordion-controlled.json +0 -20
- package/public/r/accordion-demo.json +0 -19
- package/public/r/accordion-multiple.json +0 -19
- package/public/r/accordion-single.json +0 -19
- package/public/r/accordion.json +0 -15
- package/public/r/alert-demo.json +0 -19
- package/public/r/alert-dialog-demo.json +0 -20
- package/public/r/alert-dialog.json +0 -15
- package/public/r/alert-error.json +0 -20
- package/public/r/alert-info.json +0 -20
- package/public/r/alert-success.json +0 -20
- package/public/r/alert-warning.json +0 -20
- package/public/r/alert-with-icon-action.json +0 -20
- package/public/r/alert-with-icon.json +0 -19
- package/public/r/alert.json +0 -32
- package/public/r/announcement-tagless.json +0 -21
- package/public/r/announcement-themes.json +0 -21
- package/public/r/announcement.json +0 -20
- package/public/r/autocomplete-async.json +0 -21
- package/public/r/autocomplete-autohighlight.json +0 -20
- package/public/r/autocomplete-demo.json +0 -20
- package/public/r/autocomplete-disabled.json +0 -21
- package/public/r/autocomplete-form.json +0 -23
- package/public/r/autocomplete-grouped.json +0 -20
- package/public/r/autocomplete-inline.json +0 -20
- package/public/r/autocomplete-lg.json +0 -20
- package/public/r/autocomplete-limit.json +0 -20
- package/public/r/autocomplete-sm.json +0 -20
- package/public/r/autocomplete-with-clear.json +0 -20
- package/public/r/autocomplete-with-label.json +0 -21
- package/public/r/autocomplete-with-trigger-clear.json +0 -20
- package/public/r/autocomplete.json +0 -19
- package/public/r/avatar-demo.json +0 -19
- package/public/r/avatar-fallback.json +0 -19
- package/public/r/avatar-group.json +0 -20
- package/public/r/avatar-radius.json +0 -19
- package/public/r/avatar-size.json +0 -19
- package/public/r/avatar-stack-hover.json +0 -22
- package/public/r/avatar-stack.json +0 -21
- package/public/r/avatar.json +0 -15
- package/public/r/badge-demo.json +0 -19
- package/public/r/badge-destructive.json +0 -21
- package/public/r/badge-error.json +0 -20
- package/public/r/badge-info.json +0 -20
- package/public/r/badge-lg.json +0 -19
- package/public/r/badge-outline.json +0 -19
- package/public/r/badge-secondary.json +0 -19
- package/public/r/badge-sm.json +0 -19
- package/public/r/badge-success.json +0 -20
- package/public/r/badge-warning.json +0 -20
- package/public/r/badge-with-icon.json +0 -19
- package/public/r/badge-with-link.json +0 -19
- package/public/r/badge.json +0 -35
- package/public/r/banner-inset.json +0 -21
- package/public/r/banner-themes.json +0 -21
- package/public/r/banner.json +0 -20
- package/public/r/bookmarks.json +0 -206
- package/public/r/breadcrumb-custom-separator.json +0 -19
- package/public/r/breadcrumb-demo.json +0 -21
- package/public/r/breadcrumb.json +0 -15
- package/public/r/button-demo.json +0 -19
- package/public/r/button-destructive-outline.json +0 -20
- package/public/r/button-destructive.json +0 -21
- package/public/r/button-disabled.json +0 -20
- package/public/r/button-ghost.json +0 -19
- package/public/r/button-icon-lg.json +0 -19
- package/public/r/button-icon-sm.json +0 -19
- package/public/r/button-icon.json +0 -19
- package/public/r/button-lg.json +0 -19
- package/public/r/button-link.json +0 -19
- package/public/r/button-loading.json +0 -20
- package/public/r/button-outline.json +0 -19
- package/public/r/button-secondary.json +0 -19
- package/public/r/button-sm.json +0 -19
- package/public/r/button-with-icon.json +0 -19
- package/public/r/button-with-link.json +0 -19
- package/public/r/button-xl.json +0 -19
- package/public/r/button-xs.json +0 -19
- package/public/r/button.json +0 -23
- package/public/r/calendar-headless.json +0 -22
- package/public/r/calendar-rac.json +0 -16
- package/public/r/calendar.json +0 -21
- package/public/r/card-demo.json +0 -28
- package/public/r/card.json +0 -13
- package/public/r/chart.json +0 -15
- package/public/r/checkbox-card.json +0 -22
- package/public/r/checkbox-demo.json +0 -21
- package/public/r/checkbox-disabled.json +0 -22
- package/public/r/checkbox-form.json +0 -25
- package/public/r/checkbox-group-demo.json +0 -22
- package/public/r/checkbox-group-disabled.json +0 -23
- package/public/r/checkbox-group-form.json +0 -29
- package/public/r/checkbox-group-nested-parent.json +0 -23
- package/public/r/checkbox-group-parent.json +0 -23
- package/public/r/checkbox-group.json +0 -15
- package/public/r/checkbox-tree.json +0 -12
- package/public/r/checkbox-with-description.json +0 -23
- package/public/r/checkbox.json +0 -15
- package/public/r/choicebox-inline.json +0 -20
- package/public/r/choicebox.json +0 -20
- package/public/r/code-block-diff.json +0 -21
- package/public/r/code-block-focus.json +0 -20
- package/public/r/code-block-headless.json +0 -21
- package/public/r/code-block-highlight-line.json +0 -21
- package/public/r/code-block-highlight-word.json +0 -21
- package/public/r/code-block-no-highlighting.json +0 -20
- package/public/r/code-block-numberless.json +0 -20
- package/public/r/code-block-theme.json +0 -21
- package/public/r/code-block.json +0 -20
- package/public/r/codebase.json +0 -19
- package/public/r/collaborative-canvas.json +0 -19
- package/public/r/collapsible-demo.json +0 -19
- package/public/r/collapsible.json +0 -15
- package/public/r/color-picker.json +0 -21
- package/public/r/colors-zinc.json +0 -61
- package/public/r/combobox-autohighlight.json +0 -20
- package/public/r/combobox-controlled.json +0 -21
- package/public/r/combobox-create-new.json +0 -21
- package/public/r/combobox-demo.json +0 -20
- package/public/r/combobox-disabled.json +0 -21
- package/public/r/combobox-fixed-width.json +0 -20
- package/public/r/combobox-form.json +0 -24
- package/public/r/combobox-grouped.json +0 -20
- package/public/r/combobox-lg.json +0 -20
- package/public/r/combobox-multiple-form.json +0 -25
- package/public/r/combobox-multiple.json +0 -20
- package/public/r/combobox-sm.json +0 -20
- package/public/r/combobox-with-clear.json +0 -20
- package/public/r/combobox-with-inner-input.json +0 -21
- package/public/r/combobox-with-label.json +0 -21
- package/public/r/combobox.json +0 -19
- package/public/r/command.json +0 -18
- package/public/r/comp-01.json +0 -22
- package/public/r/comp-02.json +0 -23
- package/public/r/comp-03.json +0 -23
- package/public/r/comp-04.json +0 -23
- package/public/r/comp-05.json +0 -22
- package/public/r/comp-06.json +0 -23
- package/public/r/comp-07.json +0 -22
- package/public/r/comp-08.json +0 -23
- package/public/r/comp-09.json +0 -22
- package/public/r/comp-10.json +0 -22
- package/public/r/comp-100.json +0 -23
- package/public/r/comp-101.json +0 -23
- package/public/r/comp-102.json +0 -23
- package/public/r/comp-103.json +0 -23
- package/public/r/comp-104.json +0 -23
- package/public/r/comp-105.json +0 -23
- package/public/r/comp-106.json +0 -22
- package/public/r/comp-107.json +0 -22
- package/public/r/comp-108.json +0 -23
- package/public/r/comp-109.json +0 -22
- package/public/r/comp-11.json +0 -22
- package/public/r/comp-110.json +0 -22
- package/public/r/comp-111.json +0 -21
- package/public/r/comp-112.json +0 -21
- package/public/r/comp-113.json +0 -22
- package/public/r/comp-114.json +0 -23
- package/public/r/comp-115.json +0 -22
- package/public/r/comp-116.json +0 -22
- package/public/r/comp-117.json +0 -23
- package/public/r/comp-118.json +0 -23
- package/public/r/comp-119.json +0 -27
- package/public/r/comp-12.json +0 -22
- package/public/r/comp-120.json +0 -27
- package/public/r/comp-121.json +0 -27
- package/public/r/comp-122.json +0 -27
- package/public/r/comp-123.json +0 -22
- package/public/r/comp-124.json +0 -22
- package/public/r/comp-125.json +0 -31
- package/public/r/comp-126.json +0 -31
- package/public/r/comp-127.json +0 -21
- package/public/r/comp-128.json +0 -21
- package/public/r/comp-129.json +0 -24
- package/public/r/comp-13.json +0 -22
- package/public/r/comp-130.json +0 -23
- package/public/r/comp-131.json +0 -23
- package/public/r/comp-132.json +0 -23
- package/public/r/comp-133.json +0 -23
- package/public/r/comp-134.json +0 -23
- package/public/r/comp-135.json +0 -24
- package/public/r/comp-136.json +0 -23
- package/public/r/comp-137.json +0 -23
- package/public/r/comp-138.json +0 -25
- package/public/r/comp-139.json +0 -23
- package/public/r/comp-14.json +0 -22
- package/public/r/comp-140.json +0 -23
- package/public/r/comp-141.json +0 -23
- package/public/r/comp-142.json +0 -25
- package/public/r/comp-143.json +0 -23
- package/public/r/comp-144.json +0 -24
- package/public/r/comp-145.json +0 -24
- package/public/r/comp-146.json +0 -24
- package/public/r/comp-147.json +0 -24
- package/public/r/comp-148.json +0 -25
- package/public/r/comp-149.json +0 -24
- package/public/r/comp-15.json +0 -22
- package/public/r/comp-150.json +0 -21
- package/public/r/comp-151.json +0 -23
- package/public/r/comp-152.json +0 -23
- package/public/r/comp-153.json +0 -23
- package/public/r/comp-154.json +0 -23
- package/public/r/comp-155.json +0 -23
- package/public/r/comp-156.json +0 -25
- package/public/r/comp-157.json +0 -27
- package/public/r/comp-158.json +0 -24
- package/public/r/comp-159.json +0 -24
- package/public/r/comp-16.json +0 -22
- package/public/r/comp-160.json +0 -24
- package/public/r/comp-161.json +0 -24
- package/public/r/comp-162.json +0 -24
- package/public/r/comp-163.json +0 -28
- package/public/r/comp-164.json +0 -24
- package/public/r/comp-165.json +0 -24
- package/public/r/comp-166.json +0 -25
- package/public/r/comp-167.json +0 -24
- package/public/r/comp-168.json +0 -24
- package/public/r/comp-169.json +0 -23
- package/public/r/comp-17.json +0 -25
- package/public/r/comp-170.json +0 -25
- package/public/r/comp-171.json +0 -28
- package/public/r/comp-172.json +0 -23
- package/public/r/comp-173.json +0 -23
- package/public/r/comp-174.json +0 -23
- package/public/r/comp-175.json +0 -23
- package/public/r/comp-176.json +0 -23
- package/public/r/comp-177.json +0 -23
- package/public/r/comp-178.json +0 -23
- package/public/r/comp-179.json +0 -24
- package/public/r/comp-18.json +0 -25
- package/public/r/comp-180.json +0 -23
- package/public/r/comp-181.json +0 -25
- package/public/r/comp-182.json +0 -24
- package/public/r/comp-183.json +0 -25
- package/public/r/comp-184.json +0 -25
- package/public/r/comp-185.json +0 -24
- package/public/r/comp-186.json +0 -25
- package/public/r/comp-187.json +0 -25
- package/public/r/comp-188.json +0 -25
- package/public/r/comp-189.json +0 -23
- package/public/r/comp-19.json +0 -23
- package/public/r/comp-190.json +0 -23
- package/public/r/comp-191.json +0 -24
- package/public/r/comp-192.json +0 -23
- package/public/r/comp-193.json +0 -23
- package/public/r/comp-194.json +0 -24
- package/public/r/comp-195.json +0 -23
- package/public/r/comp-196.json +0 -24
- package/public/r/comp-197.json +0 -23
- package/public/r/comp-198.json +0 -23
- package/public/r/comp-199.json +0 -23
- package/public/r/comp-20.json +0 -23
- package/public/r/comp-200.json +0 -25
- package/public/r/comp-201.json +0 -22
- package/public/r/comp-202.json +0 -22
- package/public/r/comp-203.json +0 -23
- package/public/r/comp-204.json +0 -23
- package/public/r/comp-205.json +0 -23
- package/public/r/comp-206.json +0 -24
- package/public/r/comp-207.json +0 -23
- package/public/r/comp-208.json +0 -23
- package/public/r/comp-209.json +0 -23
- package/public/r/comp-21.json +0 -23
- package/public/r/comp-210.json +0 -24
- package/public/r/comp-211.json +0 -24
- package/public/r/comp-212.json +0 -23
- package/public/r/comp-213.json +0 -23
- package/public/r/comp-214.json +0 -23
- package/public/r/comp-215.json +0 -24
- package/public/r/comp-216.json +0 -22
- package/public/r/comp-217.json +0 -22
- package/public/r/comp-218.json +0 -25
- package/public/r/comp-219.json +0 -23
- package/public/r/comp-22.json +0 -23
- package/public/r/comp-220.json +0 -24
- package/public/r/comp-221.json +0 -23
- package/public/r/comp-222.json +0 -26
- package/public/r/comp-223.json +0 -26
- package/public/r/comp-224.json +0 -23
- package/public/r/comp-225.json +0 -24
- package/public/r/comp-226.json +0 -26
- package/public/r/comp-227.json +0 -26
- package/public/r/comp-228.json +0 -26
- package/public/r/comp-229.json +0 -30
- package/public/r/comp-23.json +0 -24
- package/public/r/comp-230.json +0 -30
- package/public/r/comp-231.json +0 -32
- package/public/r/comp-232.json +0 -31
- package/public/r/comp-233.json +0 -30
- package/public/r/comp-234.json +0 -28
- package/public/r/comp-235.json +0 -28
- package/public/r/comp-236.json +0 -24
- package/public/r/comp-237.json +0 -26
- package/public/r/comp-238.json +0 -26
- package/public/r/comp-239.json +0 -26
- package/public/r/comp-24.json +0 -23
- package/public/r/comp-240.json +0 -23
- package/public/r/comp-241.json +0 -24
- package/public/r/comp-242.json +0 -23
- package/public/r/comp-243.json +0 -23
- package/public/r/comp-244.json +0 -23
- package/public/r/comp-245.json +0 -23
- package/public/r/comp-246.json +0 -23
- package/public/r/comp-247.json +0 -23
- package/public/r/comp-248.json +0 -23
- package/public/r/comp-249.json +0 -24
- package/public/r/comp-25.json +0 -24
- package/public/r/comp-250.json +0 -25
- package/public/r/comp-251.json +0 -25
- package/public/r/comp-252.json +0 -25
- package/public/r/comp-253.json +0 -25
- package/public/r/comp-254.json +0 -35
- package/public/r/comp-255.json +0 -30
- package/public/r/comp-256.json +0 -25
- package/public/r/comp-257.json +0 -25
- package/public/r/comp-258.json +0 -32
- package/public/r/comp-259.json +0 -26
- package/public/r/comp-26.json +0 -24
- package/public/r/comp-260.json +0 -26
- package/public/r/comp-261.json +0 -24
- package/public/r/comp-262.json +0 -31
- package/public/r/comp-263.json +0 -25
- package/public/r/comp-264.json +0 -33
- package/public/r/comp-265.json +0 -32
- package/public/r/comp-266.json +0 -24
- package/public/r/comp-267.json +0 -19
- package/public/r/comp-268.json +0 -19
- package/public/r/comp-269.json +0 -19
- package/public/r/comp-27.json +0 -24
- package/public/r/comp-270.json +0 -19
- package/public/r/comp-271.json +0 -19
- package/public/r/comp-272.json +0 -19
- package/public/r/comp-273.json +0 -19
- package/public/r/comp-274.json +0 -19
- package/public/r/comp-275.json +0 -19
- package/public/r/comp-276.json +0 -19
- package/public/r/comp-277.json +0 -21
- package/public/r/comp-278.json +0 -21
- package/public/r/comp-279.json +0 -23
- package/public/r/comp-28.json +0 -24
- package/public/r/comp-280.json +0 -23
- package/public/r/comp-281.json +0 -23
- package/public/r/comp-282.json +0 -23
- package/public/r/comp-283.json +0 -23
- package/public/r/comp-284.json +0 -23
- package/public/r/comp-285.json +0 -23
- package/public/r/comp-286.json +0 -23
- package/public/r/comp-287.json +0 -24
- package/public/r/comp-288.json +0 -23
- package/public/r/comp-289.json +0 -24
- package/public/r/comp-29.json +0 -24
- package/public/r/comp-290.json +0 -24
- package/public/r/comp-291.json +0 -24
- package/public/r/comp-292.json +0 -24
- package/public/r/comp-293.json +0 -26
- package/public/r/comp-294.json +0 -24
- package/public/r/comp-295.json +0 -23
- package/public/r/comp-296.json +0 -23
- package/public/r/comp-297.json +0 -30
- package/public/r/comp-298.json +0 -26
- package/public/r/comp-299.json +0 -28
- package/public/r/comp-30.json +0 -23
- package/public/r/comp-300.json +0 -29
- package/public/r/comp-301.json +0 -24
- package/public/r/comp-302.json +0 -18
- package/public/r/comp-303.json +0 -18
- package/public/r/comp-304.json +0 -18
- package/public/r/comp-305.json +0 -21
- package/public/r/comp-306.json +0 -21
- package/public/r/comp-307.json +0 -21
- package/public/r/comp-308.json +0 -21
- package/public/r/comp-309.json +0 -21
- package/public/r/comp-31.json +0 -21
- package/public/r/comp-310.json +0 -23
- package/public/r/comp-311.json +0 -20
- package/public/r/comp-312.json +0 -21
- package/public/r/comp-313.json +0 -26
- package/public/r/comp-314.json +0 -26
- package/public/r/comp-315.json +0 -24
- package/public/r/comp-316.json +0 -25
- package/public/r/comp-317.json +0 -24
- package/public/r/comp-318.json +0 -24
- package/public/r/comp-319.json +0 -24
- package/public/r/comp-32.json +0 -21
- package/public/r/comp-320.json +0 -27
- package/public/r/comp-321.json +0 -28
- package/public/r/comp-322.json +0 -27
- package/public/r/comp-323.json +0 -30
- package/public/r/comp-324.json +0 -28
- package/public/r/comp-325.json +0 -29
- package/public/r/comp-326.json +0 -30
- package/public/r/comp-327.json +0 -30
- package/public/r/comp-328.json +0 -37
- package/public/r/comp-329.json +0 -38
- package/public/r/comp-33.json +0 -18
- package/public/r/comp-330.json +0 -27
- package/public/r/comp-331.json +0 -42
- package/public/r/comp-332.json +0 -25
- package/public/r/comp-333.json +0 -29
- package/public/r/comp-334.json +0 -22
- package/public/r/comp-335.json +0 -22
- package/public/r/comp-336.json +0 -22
- package/public/r/comp-337.json +0 -22
- package/public/r/comp-338.json +0 -22
- package/public/r/comp-339.json +0 -22
- package/public/r/comp-34.json +0 -27
- package/public/r/comp-340.json +0 -22
- package/public/r/comp-341.json +0 -22
- package/public/r/comp-342.json +0 -22
- package/public/r/comp-343.json +0 -22
- package/public/r/comp-344.json +0 -22
- package/public/r/comp-345.json +0 -22
- package/public/r/comp-346.json +0 -22
- package/public/r/comp-347.json +0 -22
- package/public/r/comp-348.json +0 -22
- package/public/r/comp-349.json +0 -22
- package/public/r/comp-35.json +0 -27
- package/public/r/comp-350.json +0 -22
- package/public/r/comp-351.json +0 -22
- package/public/r/comp-352.json +0 -24
- package/public/r/comp-353.json +0 -24
- package/public/r/comp-354.json +0 -23
- package/public/r/comp-355.json +0 -23
- package/public/r/comp-356.json +0 -23
- package/public/r/comp-357.json +0 -23
- package/public/r/comp-358.json +0 -23
- package/public/r/comp-359.json +0 -24
- package/public/r/comp-36.json +0 -26
- package/public/r/comp-360.json +0 -25
- package/public/r/comp-361.json +0 -23
- package/public/r/comp-362.json +0 -24
- package/public/r/comp-363.json +0 -27
- package/public/r/comp-364.json +0 -26
- package/public/r/comp-365.json +0 -24
- package/public/r/comp-366.json +0 -23
- package/public/r/comp-367.json +0 -23
- package/public/r/comp-368.json +0 -23
- package/public/r/comp-369.json +0 -23
- package/public/r/comp-37.json +0 -23
- package/public/r/comp-370.json +0 -23
- package/public/r/comp-371.json +0 -24
- package/public/r/comp-372.json +0 -24
- package/public/r/comp-373.json +0 -25
- package/public/r/comp-374.json +0 -26
- package/public/r/comp-375.json +0 -25
- package/public/r/comp-376.json +0 -26
- package/public/r/comp-377.json +0 -27
- package/public/r/comp-378.json +0 -24
- package/public/r/comp-379.json +0 -24
- package/public/r/comp-38.json +0 -23
- package/public/r/comp-380.json +0 -24
- package/public/r/comp-381.json +0 -26
- package/public/r/comp-382.json +0 -25
- package/public/r/comp-383.json +0 -26
- package/public/r/comp-384.json +0 -24
- package/public/r/comp-385.json +0 -24
- package/public/r/comp-386.json +0 -24
- package/public/r/comp-387.json +0 -28
- package/public/r/comp-388.json +0 -26
- package/public/r/comp-389.json +0 -24
- package/public/r/comp-39.json +0 -23
- package/public/r/comp-390.json +0 -23
- package/public/r/comp-391.json +0 -23
- package/public/r/comp-392.json +0 -23
- package/public/r/comp-393.json +0 -23
- package/public/r/comp-394.json +0 -24
- package/public/r/comp-395.json +0 -24
- package/public/r/comp-396.json +0 -24
- package/public/r/comp-397.json +0 -25
- package/public/r/comp-398.json +0 -26
- package/public/r/comp-399.json +0 -26
- package/public/r/comp-40.json +0 -23
- package/public/r/comp-400.json +0 -20
- package/public/r/comp-401.json +0 -19
- package/public/r/comp-402.json +0 -19
- package/public/r/comp-403.json +0 -19
- package/public/r/comp-404.json +0 -19
- package/public/r/comp-405.json +0 -19
- package/public/r/comp-406.json +0 -19
- package/public/r/comp-407.json +0 -19
- package/public/r/comp-408.json +0 -19
- package/public/r/comp-409.json +0 -22
- package/public/r/comp-41.json +0 -29
- package/public/r/comp-410.json +0 -22
- package/public/r/comp-411.json +0 -22
- package/public/r/comp-412.json +0 -19
- package/public/r/comp-413.json +0 -22
- package/public/r/comp-414.json +0 -22
- package/public/r/comp-415.json +0 -22
- package/public/r/comp-416.json +0 -23
- package/public/r/comp-417.json +0 -22
- package/public/r/comp-418.json +0 -23
- package/public/r/comp-419.json +0 -23
- package/public/r/comp-42.json +0 -30
- package/public/r/comp-420.json +0 -23
- package/public/r/comp-421.json +0 -23
- package/public/r/comp-422.json +0 -23
- package/public/r/comp-423.json +0 -24
- package/public/r/comp-424.json +0 -22
- package/public/r/comp-425.json +0 -23
- package/public/r/comp-426.json +0 -23
- package/public/r/comp-427.json +0 -23
- package/public/r/comp-428.json +0 -23
- package/public/r/comp-429.json +0 -23
- package/public/r/comp-43.json +0 -32
- package/public/r/comp-430.json +0 -23
- package/public/r/comp-431.json +0 -23
- package/public/r/comp-432.json +0 -23
- package/public/r/comp-433.json +0 -24
- package/public/r/comp-434.json +0 -24
- package/public/r/comp-435.json +0 -24
- package/public/r/comp-436.json +0 -24
- package/public/r/comp-437.json +0 -25
- package/public/r/comp-438.json +0 -23
- package/public/r/comp-439.json +0 -24
- package/public/r/comp-44.json +0 -25
- package/public/r/comp-440.json +0 -25
- package/public/r/comp-441.json +0 -25
- package/public/r/comp-442.json +0 -24
- package/public/r/comp-443.json +0 -24
- package/public/r/comp-444.json +0 -24
- package/public/r/comp-445.json +0 -24
- package/public/r/comp-446.json +0 -24
- package/public/r/comp-447.json +0 -25
- package/public/r/comp-448.json +0 -23
- package/public/r/comp-449.json +0 -23
- package/public/r/comp-45.json +0 -25
- package/public/r/comp-450.json +0 -23
- package/public/r/comp-451.json +0 -23
- package/public/r/comp-452.json +0 -23
- package/public/r/comp-453.json +0 -25
- package/public/r/comp-454.json +0 -22
- package/public/r/comp-455.json +0 -22
- package/public/r/comp-456.json +0 -22
- package/public/r/comp-457.json +0 -21
- package/public/r/comp-458.json +0 -22
- package/public/r/comp-459.json +0 -26
- package/public/r/comp-46.json +0 -26
- package/public/r/comp-460.json +0 -26
- package/public/r/comp-461.json +0 -27
- package/public/r/comp-462.json +0 -27
- package/public/r/comp-463.json +0 -30
- package/public/r/comp-464.json +0 -29
- package/public/r/comp-465.json +0 -29
- package/public/r/comp-466.json +0 -21
- package/public/r/comp-467.json +0 -23
- package/public/r/comp-468.json +0 -21
- package/public/r/comp-469.json +0 -21
- package/public/r/comp-47.json +0 -32
- package/public/r/comp-470.json +0 -21
- package/public/r/comp-471.json +0 -21
- package/public/r/comp-472.json +0 -23
- package/public/r/comp-473.json +0 -24
- package/public/r/comp-474.json +0 -22
- package/public/r/comp-475.json +0 -22
- package/public/r/comp-476.json +0 -21
- package/public/r/comp-477.json +0 -31
- package/public/r/comp-478.json +0 -36
- package/public/r/comp-479.json +0 -28
- package/public/r/comp-48.json +0 -32
- package/public/r/comp-480.json +0 -30
- package/public/r/comp-481.json +0 -34
- package/public/r/comp-482.json +0 -33
- package/public/r/comp-483.json +0 -37
- package/public/r/comp-484.json +0 -41
- package/public/r/comp-485.json +0 -43
- package/public/r/comp-486.json +0 -23
- package/public/r/comp-487.json +0 -26
- package/public/r/comp-488.json +0 -27
- package/public/r/comp-489.json +0 -28
- package/public/r/comp-49.json +0 -32
- package/public/r/comp-490.json +0 -23
- package/public/r/comp-491.json +0 -24
- package/public/r/comp-492.json +0 -25
- package/public/r/comp-493.json +0 -23
- package/public/r/comp-494.json +0 -23
- package/public/r/comp-495.json +0 -24
- package/public/r/comp-496.json +0 -23
- package/public/r/comp-497.json +0 -24
- package/public/r/comp-498.json +0 -24
- package/public/r/comp-499.json +0 -24
- package/public/r/comp-50.json +0 -32
- package/public/r/comp-500.json +0 -25
- package/public/r/comp-501.json +0 -25
- package/public/r/comp-502.json +0 -26
- package/public/r/comp-503.json +0 -27
- package/public/r/comp-504.json +0 -28
- package/public/r/comp-505.json +0 -28
- package/public/r/comp-506.json +0 -26
- package/public/r/comp-507.json +0 -27
- package/public/r/comp-508.json +0 -25
- package/public/r/comp-509.json +0 -25
- package/public/r/comp-51.json +0 -23
- package/public/r/comp-510.json +0 -24
- package/public/r/comp-511.json +0 -27
- package/public/r/comp-512.json +0 -27
- package/public/r/comp-513.json +0 -21
- package/public/r/comp-514.json +0 -21
- package/public/r/comp-515.json +0 -21
- package/public/r/comp-516.json +0 -22
- package/public/r/comp-517.json +0 -22
- package/public/r/comp-518.json +0 -21
- package/public/r/comp-519.json +0 -21
- package/public/r/comp-52.json +0 -23
- package/public/r/comp-520.json +0 -22
- package/public/r/comp-521.json +0 -22
- package/public/r/comp-522.json +0 -21
- package/public/r/comp-523.json +0 -21
- package/public/r/comp-524.json +0 -21
- package/public/r/comp-525.json +0 -21
- package/public/r/comp-526.json +0 -22
- package/public/r/comp-527.json +0 -23
- package/public/r/comp-528.json +0 -22
- package/public/r/comp-529.json +0 -22
- package/public/r/comp-53.json +0 -24
- package/public/r/comp-530.json +0 -22
- package/public/r/comp-531.json +0 -22
- package/public/r/comp-532.json +0 -22
- package/public/r/comp-533.json +0 -22
- package/public/r/comp-534.json +0 -22
- package/public/r/comp-535.json +0 -22
- package/public/r/comp-536.json +0 -22
- package/public/r/comp-537.json +0 -22
- package/public/r/comp-538.json +0 -22
- package/public/r/comp-539.json +0 -22
- package/public/r/comp-54.json +0 -26
- package/public/r/comp-540.json +0 -21
- package/public/r/comp-541.json +0 -21
- package/public/r/comp-542.json +0 -124
- package/public/r/comp-543.json +0 -29
- package/public/r/comp-544.json +0 -26
- package/public/r/comp-545.json +0 -29
- package/public/r/comp-546.json +0 -29
- package/public/r/comp-547.json +0 -29
- package/public/r/comp-548.json +0 -29
- package/public/r/comp-549.json +0 -29
- package/public/r/comp-55.json +0 -27
- package/public/r/comp-550.json +0 -29
- package/public/r/comp-551.json +0 -30
- package/public/r/comp-552.json +0 -29
- package/public/r/comp-553.json +0 -29
- package/public/r/comp-554.json +0 -36
- package/public/r/comp-555.json +0 -23
- package/public/r/comp-556.json +0 -23
- package/public/r/comp-557.json +0 -23
- package/public/r/comp-558.json +0 -23
- package/public/r/comp-559.json +0 -23
- package/public/r/comp-56.json +0 -26
- package/public/r/comp-560.json +0 -23
- package/public/r/comp-561.json +0 -25
- package/public/r/comp-562.json +0 -23
- package/public/r/comp-563.json +0 -23
- package/public/r/comp-564.json +0 -24
- package/public/r/comp-565.json +0 -20
- package/public/r/comp-566.json +0 -20
- package/public/r/comp-567.json +0 -20
- package/public/r/comp-568.json +0 -20
- package/public/r/comp-569.json +0 -20
- package/public/r/comp-57.json +0 -26
- package/public/r/comp-570.json +0 -20
- package/public/r/comp-571.json +0 -23
- package/public/r/comp-572.json +0 -23
- package/public/r/comp-573.json +0 -20
- package/public/r/comp-574.json +0 -22
- package/public/r/comp-575.json +0 -20
- package/public/r/comp-576.json +0 -21
- package/public/r/comp-577.json +0 -23
- package/public/r/comp-578.json +0 -28
- package/public/r/comp-579.json +0 -28
- package/public/r/comp-58.json +0 -25
- package/public/r/comp-580.json +0 -29
- package/public/r/comp-581.json +0 -45
- package/public/r/comp-582.json +0 -42
- package/public/r/comp-583.json +0 -41
- package/public/r/comp-584.json +0 -41
- package/public/r/comp-585.json +0 -41
- package/public/r/comp-586.json +0 -34
- package/public/r/comp-587.json +0 -29
- package/public/r/comp-588.json +0 -33
- package/public/r/comp-589.json +0 -37
- package/public/r/comp-59.json +0 -22
- package/public/r/comp-590.json +0 -40
- package/public/r/comp-591.json +0 -29
- package/public/r/comp-592.json +0 -41
- package/public/r/comp-593.json +0 -36
- package/public/r/comp-594.json +0 -33
- package/public/r/comp-595.json +0 -22
- package/public/r/comp-596.json +0 -26
- package/public/r/comp-597.json +0 -22
- package/public/r/comp-598.json +0 -22
- package/public/r/comp-599.json +0 -22
- package/public/r/comp-60.json +0 -23
- package/public/r/comp-600.json +0 -17
- package/public/r/comp-601.json +0 -20
- package/public/r/comp-602.json +0 -17
- package/public/r/comp-603.json +0 -20
- package/public/r/comp-604.json +0 -17
- package/public/r/comp-605.json +0 -17
- package/public/r/comp-606.json +0 -20
- package/public/r/comp-607.json +0 -20
- package/public/r/comp-608.json +0 -20
- package/public/r/comp-609.json +0 -20
- package/public/r/comp-61.json +0 -23
- package/public/r/comp-610.json +0 -23
- package/public/r/comp-611.json +0 -23
- package/public/r/comp-612.json +0 -17
- package/public/r/comp-613.json +0 -20
- package/public/r/comp-614.json +0 -17
- package/public/r/comp-615.json +0 -26
- package/public/r/comp-616.json +0 -26
- package/public/r/comp-617.json +0 -26
- package/public/r/comp-62.json +0 -23
- package/public/r/comp-63.json +0 -22
- package/public/r/comp-64.json +0 -23
- package/public/r/comp-65.json +0 -22
- package/public/r/comp-66.json +0 -22
- package/public/r/comp-67.json +0 -23
- package/public/r/comp-68.json +0 -24
- package/public/r/comp-69.json +0 -24
- package/public/r/comp-70.json +0 -24
- package/public/r/comp-71.json +0 -22
- package/public/r/comp-72.json +0 -21
- package/public/r/comp-73.json +0 -18
- package/public/r/comp-74.json +0 -27
- package/public/r/comp-75.json +0 -22
- package/public/r/comp-76.json +0 -23
- package/public/r/comp-77.json +0 -22
- package/public/r/comp-78.json +0 -21
- package/public/r/comp-79.json +0 -22
- package/public/r/comp-80.json +0 -21
- package/public/r/comp-81.json +0 -21
- package/public/r/comp-82.json +0 -22
- package/public/r/comp-83.json +0 -21
- package/public/r/comp-84.json +0 -21
- package/public/r/comp-85.json +0 -22
- package/public/r/comp-86.json +0 -22
- package/public/r/comp-87.json +0 -21
- package/public/r/comp-88.json +0 -22
- package/public/r/comp-89.json +0 -21
- package/public/r/comp-90.json +0 -22
- package/public/r/comp-91.json +0 -22
- package/public/r/comp-92.json +0 -22
- package/public/r/comp-93.json +0 -22
- package/public/r/comp-94.json +0 -24
- package/public/r/comp-95.json +0 -26
- package/public/r/comp-96.json +0 -21
- package/public/r/comp-97.json +0 -21
- package/public/r/comp-98.json +0 -22
- package/public/r/comp-99.json +0 -23
- package/public/r/comparison-event-handlers.json +0 -22
- package/public/r/comparison-hover.json +0 -22
- package/public/r/comparison.json +0 -21
- package/public/r/context-menu.json +0 -16
- package/public/r/contribution-graph-custom-blocks.json +0 -23
- package/public/r/contribution-graph-custom-footer.json +0 -23
- package/public/r/contribution-graph-custom-theme.json +0 -23
- package/public/r/contribution-graph-minimal.json +0 -22
- package/public/r/contribution-graph-size.json +0 -23
- package/public/r/contribution-graph-tooltip.json +0 -23
- package/public/r/contribution-graph.json +0 -22
- package/public/r/credit-card-apple.json +0 -20
- package/public/r/credit-card-back.json +0 -20
- package/public/r/credit-card.json +0 -20
- package/public/r/cropper.json +0 -15
- package/public/r/cursor-color.json +0 -20
- package/public/r/cursor-message.json +0 -20
- package/public/r/cursor-name-message.json +0 -21
- package/public/r/cursor-name.json +0 -20
- package/public/r/cursor-only.json +0 -19
- package/public/r/cursor.json +0 -20
- package/public/r/dashboard-1.json +0 -263
- package/public/r/dashboard-2.json +0 -264
- package/public/r/dashboard-3.json +0 -225
- package/public/r/datefield-rac.json +0 -15
- package/public/r/deck-controlled.json +0 -22
- package/public/r/deck-product-cards.json +0 -22
- package/public/r/deck.json +0 -20
- package/public/r/dialog-close-confirmation.json +0 -29
- package/public/r/dialog-demo.json +0 -25
- package/public/r/dialog-from-menu.json +0 -23
- package/public/r/dialog-nested.json +0 -23
- package/public/r/dialog-stack-controlled.json +0 -22
- package/public/r/dialog-stack-navigation.json +0 -22
- package/public/r/dialog-stack-six.json +0 -22
- package/public/r/dialog-stack.json +0 -22
- package/public/r/dialog.json +0 -15
- package/public/r/dropdown-menu.json +0 -15
- package/public/r/dropzone-accept.json +0 -20
- package/public/r/dropzone-custom-empty-state.json +0 -21
- package/public/r/dropzone-image-preview.json +0 -21
- package/public/r/dropzone-min-max.json +0 -20
- package/public/r/dropzone-multiple.json +0 -21
- package/public/r/dropzone.json +0 -21
- package/public/r/editor.json +0 -21
- package/public/r/emails.json +0 -243
- package/public/r/empty-demo.json +0 -20
- package/public/r/empty.json +0 -12
- package/public/r/ether.json +0 -15
- package/public/r/example-app-calendar.json +0 -323
- package/public/r/field-2.json +0 -19
- package/public/r/field-autocomplete.json +0 -23
- package/public/r/field-checkbox-group.json +0 -26
- package/public/r/field-checkbox.json +0 -22
- package/public/r/field-combobox-multiple.json +0 -24
- package/public/r/field-combobox.json +0 -23
- package/public/r/field-complete-form.json +0 -30
- package/public/r/field-demo.json +0 -22
- package/public/r/field-disabled.json +0 -23
- package/public/r/field-error.json +0 -21
- package/public/r/field-number-field.json +0 -25
- package/public/r/field-radio.json +0 -26
- package/public/r/field-required.json +0 -21
- package/public/r/field-select.json +0 -24
- package/public/r/field-slider.json +0 -24
- package/public/r/field-switch.json +0 -22
- package/public/r/field-textarea.json +0 -24
- package/public/r/field-validity.json +0 -19
- package/public/r/field.json +0 -23
- package/public/r/fieldset-demo.json +0 -24
- package/public/r/fieldset.json +0 -15
- package/public/r/files.json +0 -195
- package/public/r/form-demo.json +0 -24
- package/public/r/form-zod.json +0 -29
- package/public/r/form.json +0 -20
- package/public/r/frame-demo.json +0 -19
- package/public/r/frame.json +0 -12
- package/public/r/gantt-lanes.json +0 -23
- package/public/r/gantt-no-sidebar.json +0 -22
- package/public/r/gantt-read-only.json +0 -22
- package/public/r/gantt.json +0 -22
- package/public/r/glimpse-custom.json +0 -21
- package/public/r/glimpse.json +0 -20
- package/public/r/gooey-toast-demo.json +0 -23
- package/public/r/gooey-toast-position.json +0 -20
- package/public/r/gooey-toast-promise.json +0 -20
- package/public/r/gooey-toast-states.json +0 -20
- package/public/r/gooey-toast-with-button.json +0 -20
- package/public/r/gradient-blinds.json +0 -15
- package/public/r/group-demo.json +0 -20
- package/public/r/group-with-input.json +0 -21
- package/public/r/group.json +0 -18
- package/public/r/hero.json +0 -24
- package/public/r/hover-card.json +0 -15
- package/public/r/image-crop-circular.json +0 -23
- package/public/r/image-crop-custom.json +0 -24
- package/public/r/image-crop.json +0 -23
- package/public/r/image-zoom-background.json +0 -22
- package/public/r/image-zoom-margin.json +0 -21
- package/public/r/image-zoom.json +0 -21
- package/public/r/input-demo.json +0 -19
- package/public/r/input-disabled.json +0 -20
- package/public/r/input-file.json +0 -20
- package/public/r/input-group.json +0 -20
- package/public/r/input-lg.json +0 -19
- package/public/r/input-sm.json +0 -19
- package/public/r/input-with-button.json +0 -21
- package/public/r/input-with-label.json +0 -21
- package/public/r/input.json +0 -15
- package/public/r/kanban-simple.json +0 -21
- package/public/r/kanban.json +0 -21
- package/public/r/kbd.json +0 -12
- package/public/r/label.json +0 -15
- package/public/r/leads.json +0 -271
- package/public/r/list-simple.json +0 -21
- package/public/r/list.json +0 -21
- package/public/r/maps.json +0 -188
- package/public/r/marquee-no-fade.json +0 -20
- package/public/r/marquee-raw.json +0 -21
- package/public/r/marquee-spacing.json +0 -21
- package/public/r/marquee.json +0 -20
- package/public/r/menu-checkbox.json +0 -21
- package/public/r/menu-close-on-click.json +0 -20
- package/public/r/menu-demo.json +0 -20
- package/public/r/menu-group-labels.json +0 -21
- package/public/r/menu-hover.json +0 -20
- package/public/r/menu-link.json +0 -21
- package/public/r/menu-nested.json +0 -20
- package/public/r/menu-radio-group.json +0 -21
- package/public/r/menu.json +0 -23
- package/public/r/meter-demo.json +0 -19
- package/public/r/meter-simple.json +0 -19
- package/public/r/meter-with-formatted-value.json +0 -19
- package/public/r/meter-with-range.json +0 -19
- package/public/r/meter.json +0 -15
- package/public/r/mini-calendar-controlled.json +0 -21
- package/public/r/mini-calendar-custom.json +0 -21
- package/public/r/mini-calendar-days.json +0 -20
- package/public/r/mini-calendar.json +0 -20
- package/public/r/multiselect.json +0 -15
- package/public/r/navigation-menu.json +0 -12
- package/public/r/number-field-demo.json +0 -19
- package/public/r/number-field-disabled.json +0 -21
- package/public/r/number-field-form.json +0 -25
- package/public/r/number-field-lg.json +0 -19
- package/public/r/number-field-sm.json +0 -19
- package/public/r/number-field-with-formatted-value.json +0 -19
- package/public/r/number-field-with-label.json +0 -24
- package/public/r/number-field-with-range.json +0 -20
- package/public/r/number-field-with-scrub.json +0 -19
- package/public/r/number-field-with-step.json +0 -19
- package/public/r/number-field.json +0 -15
- package/public/r/pagination-demo.json +0 -19
- package/public/r/pagination.json +0 -18
- package/public/r/particle-bu-1.json +0 -22
- package/public/r/particle-bu-2.json +0 -22
- package/public/r/particle-bu-3.json +0 -22
- package/public/r/particle-bu-4.json +0 -22
- package/public/r/particle-bu-5.json +0 -22
- package/public/r/particle-bu-6.json +0 -22
- package/public/r/particle-bu-7.json +0 -22
- package/public/r/particle-fr-1.json +0 -25
- package/public/r/particle-pa-1.json +0 -19
- package/public/r/particle-pa-2.json +0 -21
- package/public/r/pill-avatar-group.json +0 -21
- package/public/r/pill-avatar.json +0 -21
- package/public/r/pill-button.json +0 -20
- package/public/r/pill-delta.json +0 -21
- package/public/r/pill-icon.json +0 -21
- package/public/r/pill-indicator.json +0 -20
- package/public/r/pill-status.json +0 -21
- package/public/r/pill.json +0 -20
- package/public/r/popover-demo.json +0 -27
- package/public/r/popover-with-close.json +0 -21
- package/public/r/popover.json +0 -15
- package/public/r/preview-card-demo.json +0 -21
- package/public/r/preview-card.json +0 -15
- package/public/r/pricing.json +0 -24
- package/public/r/progress-demo.json +0 -19
- package/public/r/progress-with-formatted-value.json +0 -19
- package/public/r/progress-with-label-value.json +0 -20
- package/public/r/progress.json +0 -15
- package/public/r/qr-code-robust.json +0 -21
- package/public/r/qr-code-server.json +0 -21
- package/public/r/qr-code-styling.json +0 -21
- package/public/r/qr-code.json +0 -20
- package/public/r/radio-group-card.json +0 -21
- package/public/r/radio-group-demo.json +0 -21
- package/public/r/radio-group-disabled.json +0 -21
- package/public/r/radio-group-form.json +0 -27
- package/public/r/radio-group-with-description.json +0 -23
- package/public/r/radio-group.json +0 -15
- package/public/r/rating-colors.json +0 -21
- package/public/r/rating-controlled.json +0 -21
- package/public/r/rating-icon.json +0 -21
- package/public/r/rating-size.json +0 -20
- package/public/r/rating.json +0 -20
- package/public/r/reel-custom.json +0 -22
- package/public/r/reel-images.json +0 -21
- package/public/r/reel-minimal.json +0 -20
- package/public/r/reel.json +0 -21
- package/public/r/registry.json +0 -26204
- package/public/r/relative-time-controlled.json +0 -21
- package/public/r/relative-time-format-date.json +0 -20
- package/public/r/relative-time-format-time.json +0 -20
- package/public/r/relative-time.json +0 -20
- package/public/r/rentals.json +0 -187
- package/public/r/roadmap.json +0 -28
- package/public/r/sandbox-no-file-explorer.json +0 -21
- package/public/r/sandbox.json +0 -21
- package/public/r/scroll-area-both.json +0 -19
- package/public/r/scroll-area-demo.json +0 -19
- package/public/r/scroll-area-horizontal.json +0 -19
- package/public/r/scroll-area.json +0 -15
- package/public/r/select-demo.json +0 -19
- package/public/r/select-disabled.json +0 -20
- package/public/r/select-form.json +0 -26
- package/public/r/select-lg.json +0 -19
- package/public/r/select-multiple.json +0 -19
- package/public/r/select-native.json +0 -12
- package/public/r/select-sm.json +0 -19
- package/public/r/select-with-groups.json +0 -19
- package/public/r/select-without-alignment.json +0 -19
- package/public/r/select.json +0 -15
- package/public/r/separator-demo.json +0 -19
- package/public/r/separator.json +0 -15
- package/public/r/sheet-demo.json +0 -23
- package/public/r/sheet-position.json +0 -20
- package/public/r/sheet.json +0 -18
- package/public/r/sidebar-nav.json +0 -22
- package/public/r/silk.json +0 -16
- package/public/r/skeleton-demo.json +0 -21
- package/public/r/skeleton-only.json +0 -19
- package/public/r/skeleton.json +0 -24
- package/public/r/slider-demo.json +0 -19
- package/public/r/slider-form.json +0 -27
- package/public/r/slider-range.json +0 -20
- package/public/r/slider-vertical.json +0 -20
- package/public/r/slider-with-label-value.json +0 -21
- package/public/r/slider.json +0 -15
- package/public/r/snippet-npm.json +0 -22
- package/public/r/snippet.json +0 -21
- package/public/r/sonner.json +0 -16
- package/public/r/spinner-customization.json +0 -21
- package/public/r/spinner-variants.json +0 -21
- package/public/r/spinner.json +0 -20
- package/public/r/stats-card.json +0 -22
- package/public/r/status-custom.json +0 -21
- package/public/r/status.json +0 -20
- package/public/r/stepper.json +0 -15
- package/public/r/stories-avatars.json +0 -21
- package/public/r/stories-images.json +0 -21
- package/public/r/stories.json +0 -21
- package/public/r/switch-card.json +0 -22
- package/public/r/switch-demo.json +0 -21
- package/public/r/switch-disabled.json +0 -22
- package/public/r/switch-form.json +0 -25
- package/public/r/switch-with-description.json +0 -23
- package/public/r/switch.json +0 -15
- package/public/r/table-demo.json +0 -21
- package/public/r/table-framed.json +0 -23
- package/public/r/table-simple.json +0 -21
- package/public/r/table.json +0 -21
- package/public/r/tabs-demo.json +0 -19
- package/public/r/tabs-underline-vertical.json +0 -20
- package/public/r/tabs-underline.json +0 -19
- package/public/r/tabs-vertical.json +0 -20
- package/public/r/tabs.json +0 -15
- package/public/r/tags-create.json +0 -21
- package/public/r/tags-filter.json +0 -21
- package/public/r/tags.json +0 -20
- package/public/r/template-auth-eight.json +0 -28
- package/public/r/template-auth-five.json +0 -28
- package/public/r/template-auth-four.json +0 -29
- package/public/r/template-auth-nine.json +0 -28
- package/public/r/template-auth-one.json +0 -49
- package/public/r/template-auth-seven.json +0 -29
- package/public/r/template-auth-six.json +0 -28
- package/public/r/template-auth-three.json +0 -49
- package/public/r/template-auth-two.json +0 -44
- package/public/r/template-hero-eight.json +0 -83
- package/public/r/template-hero-eleven.json +0 -29
- package/public/r/template-hero-five.json +0 -35
- package/public/r/template-hero-four.json +0 -35
- package/public/r/template-hero-fourteen.json +0 -101
- package/public/r/template-hero-nine.json +0 -74
- package/public/r/template-hero-one.json +0 -90
- package/public/r/template-hero-seven.json +0 -83
- package/public/r/template-hero-six.json +0 -83
- package/public/r/template-hero-ten.json +0 -77
- package/public/r/template-hero-thirteen.json +0 -101
- package/public/r/template-hero-three.json +0 -35
- package/public/r/template-hero-twelve.json +0 -30
- package/public/r/template-hero-two.json +0 -96
- package/public/r/template-logo-cloud-five.json +0 -68
- package/public/r/template-logo-cloud-four.json +0 -71
- package/public/r/template-logo-cloud-one.json +0 -89
- package/public/r/template-logo-cloud-three.json +0 -71
- package/public/r/template-logo-cloud-two.json +0 -74
- package/public/r/textarea-demo.json +0 -19
- package/public/r/textarea-disabled.json +0 -20
- package/public/r/textarea-form.json +0 -25
- package/public/r/textarea-lg.json +0 -19
- package/public/r/textarea-sm.json +0 -19
- package/public/r/textarea-with-label.json +0 -22
- package/public/r/textarea.json +0 -15
- package/public/r/theme-switcher-uncontrolled.json +0 -21
- package/public/r/theme-switcher.json +0 -21
- package/public/r/ticker-currency.json +0 -20
- package/public/r/ticker-inline.json +0 -20
- package/public/r/ticker-percent.json +0 -20
- package/public/r/ticker.json +0 -20
- package/public/r/timeline.json +0 -15
- package/public/r/toast-demo.json +0 -20
- package/public/r/toast-heights.json +0 -19
- package/public/r/toast-loading.json +0 -21
- package/public/r/toast-promise.json +0 -20
- package/public/r/toast-with-action.json +0 -20
- package/public/r/toast-with-status.json +0 -20
- package/public/r/toast.json +0 -18
- package/public/r/toggle-demo.json +0 -19
- package/public/r/toggle-disabled.json +0 -20
- package/public/r/toggle-group-demo.json +0 -20
- package/public/r/toggle-group-disabled.json +0 -21
- package/public/r/toggle-group-lg.json +0 -20
- package/public/r/toggle-group-multiple.json +0 -20
- package/public/r/toggle-group-outline-with-separator.json +0 -20
- package/public/r/toggle-group-outline.json +0 -20
- package/public/r/toggle-group-sm.json +0 -20
- package/public/r/toggle-group-with-disabled-item.json +0 -21
- package/public/r/toggle-group.json +0 -19
- package/public/r/toggle-icon-group.json +0 -19
- package/public/r/toggle-lg.json +0 -19
- package/public/r/toggle-outline.json +0 -19
- package/public/r/toggle-sm.json +0 -19
- package/public/r/toggle-with-icon.json +0 -19
- package/public/r/toggle.json +0 -15
- package/public/r/toolbar-demo.json +0 -27
- package/public/r/toolbar.json +0 -15
- package/public/r/tooltip-demo.json +0 -21
- package/public/r/tooltip-grouped.json +0 -22
- package/public/r/tooltip.json +0 -15
- package/public/r/tree-controlled.json +0 -21
- package/public/r/tree-custom-icons.json +0 -21
- package/public/r/tree-no-lines.json +0 -20
- package/public/r/tree-simple.json +0 -20
- package/public/r/tree.json +0 -20
- package/public/r/typography.json +0 -21
- package/public/r/ui.json +0 -57
- package/public/r/use-character-limit.json +0 -12
- package/public/r/use-file-upload.json +0 -12
- package/public/r/use-pagination.json +0 -12
- package/public/r/use-slider-with-input.json +0 -12
- package/public/r/use-toast.json +0 -12
- package/public/r/utils.json +0 -16
- package/public/r/video-player.json +0 -21
- package/tsup.config.ts +0 -11
|
@@ -1,263 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
|
3
|
-
"name": "dashboard-1",
|
|
4
|
-
"type": "registry:block",
|
|
5
|
-
"title": "Analytics Dashboard",
|
|
6
|
-
"description": "A comprehensive analytics dashboard with financial charts, employee management, and customizable stats cards",
|
|
7
|
-
"files": [
|
|
8
|
-
{
|
|
9
|
-
"path": "registry/example-apps/default/dashboard-1/components/dashboard/alert-banner.tsx",
|
|
10
|
-
"type": "registry:component",
|
|
11
|
-
"target": "components/example-apps/dashboard-1/components/dashboard/alert-banner.tsx",
|
|
12
|
-
"content": "\"use client\"\n\nimport { ArrowDown01Icon, FileExportIcon } from \"@hugeicons/core-free-icons\"\nimport { HugeiconsIcon } from \"@hugeicons/react\"\n\nimport { Button } from \"@loveui/ui/ui/button\"\n\nexport function AlertBanner() {\n return (\n <div className=\"flex flex-col justify-between gap-4 sm:flex-row sm:items-center\">\n <div className=\"flex items-start gap-4 sm:items-center\">\n <span className=\"text-4xl\">🗒️</span>\n <p className=\"text-sm leading-relaxed sm:text-base\">\n <span className=\"text-muted-foreground\">You have </span>\n <span className=\"font-semibold\">9 ICU Coverage Gaps,</span>\n <span> and </span>\n <span className=\"font-semibold\">4 Critical Lab Escalations</span>\n <span className=\"text-muted-foreground\"> that need action!</span>\n </p>\n </div>\n <div className=\"flex items-center gap-3\">\n <Button variant=\"outline\" size=\"sm\" className=\"gap-2\">\n <HugeiconsIcon icon={FileExportIcon} className=\"size-4\" />\n Export\n </Button>\n <Button\n size=\"sm\"\n className=\"gap-2 bg-foreground text-background hover:bg-foreground/90\"\n >\n New\n <span className=\"h-4 w-px bg-background/20\" />\n <HugeiconsIcon icon={ArrowDown01Icon} className=\"size-4\" />\n </Button>\n </div>\n </div>\n )\n}\n"
|
|
13
|
-
},
|
|
14
|
-
{
|
|
15
|
-
"path": "registry/example-apps/default/dashboard-1/components/dashboard/content.tsx",
|
|
16
|
-
"type": "registry:component",
|
|
17
|
-
"target": "components/example-apps/dashboard-1/components/dashboard/content.tsx",
|
|
18
|
-
"content": "\"use client\"\n\nimport { cn } from \"../../lib/utils\"\nimport { useDashboardStore } from \"../../store/dashboard-store\"\nimport { AlertBanner } from \"./alert-banner\"\nimport { EmployeesTable } from \"./employees-table\"\nimport { FinancialFlowChart } from \"./financial-flow-chart\"\nimport { StatsCards } from \"./stats-cards\"\n\nexport function DashboardContent() {\n const showAlertBanner = useDashboardStore((state) => state.showAlertBanner)\n const showStatsCards = useDashboardStore((state) => state.showStatsCards)\n const showChart = useDashboardStore((state) => state.showChart)\n const showTable = useDashboardStore((state) => state.showTable)\n const layoutDensity = useDashboardStore((state) => state.layoutDensity)\n\n return (\n <main\n className={cn(\n \"w-full flex-1 overflow-auto\",\n layoutDensity === \"compact\" && \"space-y-4 p-2 sm:p-4\",\n layoutDensity === \"default\" && \"space-y-6 p-4 sm:space-y-8 sm:p-6\",\n layoutDensity === \"comfortable\" && \"space-y-8 p-6 sm:space-y-10 sm:p-8\"\n )}\n >\n {showAlertBanner && <AlertBanner />}\n {showStatsCards && <StatsCards />}\n {showChart && <FinancialFlowChart />}\n {showTable && <EmployeesTable />}\n </main>\n )\n}\n"
|
|
19
|
-
},
|
|
20
|
-
{
|
|
21
|
-
"path": "registry/example-apps/default/dashboard-1/components/dashboard/employees-table.tsx",
|
|
22
|
-
"type": "registry:component",
|
|
23
|
-
"target": "components/example-apps/dashboard-1/components/dashboard/employees-table.tsx",
|
|
24
|
-
"content": "\"use client\"\n\nimport * as React from \"react\"\nimport {\n ArrowLeft01Icon,\n ArrowRight01Icon,\n FileImportIcon,\n FilterIcon,\n Search01Icon,\n UserGroupIcon,\n} from \"@hugeicons/core-free-icons\"\nimport { HugeiconsIcon } from \"@hugeicons/react\"\n\nimport { Avatar, AvatarFallback, AvatarImage } from \"@loveui/ui/ui/avatar\"\nimport { Button } from \"@loveui/ui/ui/button\"\nimport { Checkbox } from \"@loveui/ui/ui/checkbox\"\nimport { Input } from \"@loveui/ui/ui/input\"\nimport {\n DropdownMenu,\n DropdownMenuCheckboxItem,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@loveui/ui/ui/menu\"\nimport {\n Table,\n TableBody,\n TableCell,\n TableHead,\n TableHeader,\n TableRow,\n} from \"@loveui/ui/ui/table\"\n\nimport { cn } from \"../../lib/utils\"\nimport { employees, type Employee } from \"../../mock-data/employees\"\nimport { useDashboardStore } from \"../../store/dashboard-store\"\n\nconst PAGE_SIZE_OPTIONS = [8, 15, 25, 50]\n\nconst statusColors: Record<\n Employee[\"status\"],\n { bg: string; text: string; border: string }\n> = {\n Active: {\n bg: \"bg-emerald-50 dark:bg-emerald-950/30\",\n text: \"text-emerald-600 dark:text-emerald-400\",\n border: \"border-emerald-200 dark:border-emerald-800\",\n },\n \"On Leave\": {\n bg: \"bg-amber-50 dark:bg-amber-950/30\",\n text: \"text-amber-600 dark:text-amber-400\",\n border: \"border-amber-200 dark:border-amber-800\",\n },\n Probation: {\n bg: \"bg-blue-50 dark:bg-blue-950/30\",\n text: \"text-blue-600 dark:text-blue-400\",\n border: \"border-blue-200 dark:border-blue-800\",\n },\n Inactive: {\n bg: \"bg-red-50 dark:bg-red-950/30\",\n text: \"text-red-600 dark:text-red-400\",\n border: \"border-red-200 dark:border-red-800\",\n },\n}\n\nexport function EmployeesTable() {\n const searchQuery = useDashboardStore((state) => state.searchQuery)\n const departmentFilter = useDashboardStore((state) => state.departmentFilter)\n const statusFilter = useDashboardStore((state) => state.statusFilter)\n const setSearchQuery = useDashboardStore((state) => state.setSearchQuery)\n const setDepartmentFilter = useDashboardStore(\n (state) => state.setDepartmentFilter\n )\n const setStatusFilter = useDashboardStore((state) => state.setStatusFilter)\n const clearFilters = useDashboardStore((state) => state.clearFilters)\n\n const [currentPage, setCurrentPage] = React.useState(1)\n const [pageSize, setPageSize] = React.useState(8)\n const [selectedRows, setSelectedRows] = React.useState<Set<string>>(new Set())\n\n const hasActiveFilters = departmentFilter !== \"all\" || statusFilter !== \"all\"\n\n const filteredEmployees = React.useMemo(() => {\n return employees.filter((emp) => {\n const matchesSearch =\n emp.name.toLowerCase().includes(searchQuery.toLowerCase()) ||\n emp.email.toLowerCase().includes(searchQuery.toLowerCase()) ||\n emp.userId.toLowerCase().includes(searchQuery.toLowerCase())\n\n const matchesDepartment =\n departmentFilter === \"all\" || emp.department === departmentFilter\n\n const matchesStatus =\n statusFilter === \"all\" || emp.status === statusFilter\n\n return matchesSearch && matchesDepartment && matchesStatus\n })\n }, [searchQuery, departmentFilter, statusFilter])\n\n const totalPages = Math.ceil(filteredEmployees.length / pageSize)\n\n const paginatedEmployees = React.useMemo(() => {\n const startIndex = (currentPage - 1) * pageSize\n return filteredEmployees.slice(startIndex, startIndex + pageSize)\n }, [filteredEmployees, currentPage, pageSize])\n\n React.useEffect(() => {\n setCurrentPage(1)\n }, [searchQuery, departmentFilter, statusFilter, pageSize])\n\n const toggleSelectAll = () => {\n if (selectedRows.size === paginatedEmployees.length) {\n setSelectedRows(new Set())\n } else {\n setSelectedRows(new Set(paginatedEmployees.map((e) => e.id)))\n }\n }\n\n const toggleSelectRow = (id: string) => {\n const newSet = new Set(selectedRows)\n if (newSet.has(id)) {\n newSet.delete(id)\n } else {\n newSet.add(id)\n }\n setSelectedRows(newSet)\n }\n\n return (\n <div className=\"overflow-hidden rounded-xl border bg-card\">\n <div className=\"flex flex-col justify-between gap-3 border-b px-5 py-4 sm:flex-row sm:items-center\">\n <div className=\"flex items-center gap-2\">\n <HugeiconsIcon\n icon={UserGroupIcon}\n className=\"size-5 text-muted-foreground\"\n />\n <span className=\"font-medium text-muted-foreground\">\n Employee list\n </span>\n </div>\n\n <div className=\"flex flex-wrap items-center gap-2\">\n <div className=\"relative flex-1 sm:flex-none\">\n <HugeiconsIcon\n icon={Search01Icon}\n className=\"pointer-events-none absolute top-1/2 left-3 z-10 size-4 -translate-y-1/2 text-muted-foreground\"\n />\n <Input\n placeholder=\"Search Anything...\"\n value={searchQuery}\n onChange={(e) => setSearchQuery(e.target.value)}\n className=\"h-9 w-full pl-9 sm:w-[220px]\"\n />\n </div>\n\n <DropdownMenu>\n <DropdownMenuTrigger\n className={cn(\n \"inline-flex h-9 items-center justify-center gap-2 rounded-md border px-3 text-sm font-medium\",\n \"border-border bg-muted shadow-xs hover:bg-background\"\n )}\n >\n <HugeiconsIcon icon={FilterIcon} className=\"size-4\" />\n Filter\n {hasActiveFilters && (\n <span className=\"size-1.5 rounded-full bg-primary\" />\n )}\n </DropdownMenuTrigger>\n <DropdownMenuContent align=\"end\" className=\"w-[200px]\">\n <DropdownMenuGroup>\n <p className=\"px-2 py-1.5 text-xs font-medium text-muted-foreground\">\n Department\n </p>\n {[\n \"all\",\n \"Nursing\",\n \"Clinical\",\n \"Operations\",\n \"Admin\",\n \"Support\",\n ].map((dept) => (\n <DropdownMenuCheckboxItem\n key={dept}\n checked={departmentFilter === dept}\n onCheckedChange={() => setDepartmentFilter(dept)}\n >\n {dept === \"all\" ? \"All Departments\" : dept}\n </DropdownMenuCheckboxItem>\n ))}\n </DropdownMenuGroup>\n <DropdownMenuSeparator />\n <DropdownMenuGroup>\n <p className=\"px-2 py-1.5 text-xs font-medium text-muted-foreground\">\n Status\n </p>\n {[\"all\", \"Active\", \"On Leave\", \"Probation\", \"Inactive\"].map(\n (status) => (\n <DropdownMenuCheckboxItem\n key={status}\n checked={statusFilter === status}\n onCheckedChange={() => setStatusFilter(status)}\n >\n {status === \"all\" ? \"All Statuses\" : status}\n </DropdownMenuCheckboxItem>\n )\n )}\n </DropdownMenuGroup>\n {hasActiveFilters && (\n <>\n <DropdownMenuSeparator />\n <DropdownMenuItem\n onClick={clearFilters}\n className=\"text-destructive\"\n >\n Clear all filters\n </DropdownMenuItem>\n </>\n )}\n </DropdownMenuContent>\n </DropdownMenu>\n\n <div className=\"hidden h-6 w-px bg-border sm:block\" />\n\n <Button variant=\"outline\" className=\"gap-2\">\n <HugeiconsIcon icon={FileImportIcon} className=\"size-4\" />\n Import\n </Button>\n </div>\n </div>\n\n <div className=\"overflow-x-auto\">\n <Table>\n <TableHeader>\n <TableRow className=\"bg-muted/50 hover:bg-muted/50\">\n <TableHead className=\"w-[50px]\">\n <Checkbox\n checked={\n selectedRows.size === paginatedEmployees.length &&\n paginatedEmployees.length > 0\n }\n onCheckedChange={toggleSelectAll}\n />\n </TableHead>\n <TableHead className=\"min-w-[100px] font-medium text-muted-foreground\">\n User ID\n </TableHead>\n <TableHead className=\"min-w-[150px] font-medium text-muted-foreground\">\n Name\n </TableHead>\n <TableHead className=\"hidden min-w-[200px] font-medium text-muted-foreground md:table-cell\">\n Email Address\n </TableHead>\n <TableHead className=\"hidden min-w-[100px] font-medium text-muted-foreground lg:table-cell\">\n Department\n </TableHead>\n <TableHead className=\"hidden min-w-[140px] font-medium text-muted-foreground lg:table-cell\">\n Job Title\n </TableHead>\n <TableHead className=\"hidden min-w-[120px] font-medium text-muted-foreground sm:table-cell\">\n Joined Date\n </TableHead>\n <TableHead className=\"min-w-[100px] font-medium text-muted-foreground\">\n Status\n </TableHead>\n </TableRow>\n </TableHeader>\n <TableBody>\n {paginatedEmployees.length === 0 ? (\n <TableRow>\n <TableCell\n colSpan={8}\n className=\"h-24 text-center text-muted-foreground\"\n >\n No employees found matching your filters.\n </TableCell>\n </TableRow>\n ) : (\n paginatedEmployees.map((employee) => (\n <TableRow key={employee.id}>\n <TableCell>\n <Checkbox\n checked={selectedRows.has(employee.id)}\n onCheckedChange={() => toggleSelectRow(employee.id)}\n />\n </TableCell>\n <TableCell className=\"font-medium text-muted-foreground\">\n {employee.userId}\n </TableCell>\n <TableCell>\n <div className=\"flex items-center gap-2.5\">\n <Avatar className=\"size-6\">\n {employee.avatar ? (\n <AvatarImage src={employee.avatar} />\n ) : null}\n <AvatarFallback className=\"text-[10px] font-semibold\">\n {employee.name\n .split(\" \")\n .map((n) => n[0])\n .join(\"\")}\n </AvatarFallback>\n </Avatar>\n <span className=\"font-medium\">{employee.name}</span>\n </div>\n </TableCell>\n <TableCell className=\"hidden text-muted-foreground md:table-cell\">\n {employee.email}\n </TableCell>\n <TableCell className=\"hidden lg:table-cell\">\n <span className=\"rounded-md bg-muted px-2 py-0.5 text-xs font-medium text-muted-foreground\">\n {employee.department}\n </span>\n </TableCell>\n <TableCell className=\"hidden lg:table-cell\">\n <span className=\"rounded-md bg-muted px-2 py-0.5 text-xs font-medium text-muted-foreground\">\n {employee.jobTitle}\n </span>\n </TableCell>\n <TableCell className=\"hidden text-muted-foreground sm:table-cell\">\n {employee.joinedDate}\n </TableCell>\n <TableCell>\n <span\n className={cn(\n \"inline-flex items-center gap-1 rounded-md border px-2 py-0.5 text-xs font-medium\",\n statusColors[employee.status].bg,\n statusColors[employee.status].text,\n statusColors[employee.status].border\n )}\n >\n {employee.status}\n </span>\n </TableCell>\n </TableRow>\n ))\n )}\n </TableBody>\n </Table>\n </div>\n\n <div className=\"flex flex-col items-center justify-between gap-4 border-t px-5 py-4 sm:flex-row\">\n <div className=\"flex items-center gap-6\">\n <Button\n variant=\"outline\"\n size=\"icon-sm\"\n onClick={() => setCurrentPage((p) => Math.max(1, p - 1))}\n disabled={currentPage === 1}\n >\n <HugeiconsIcon icon={ArrowLeft01Icon} className=\"size-4\" />\n </Button>\n\n <div className=\"flex items-center gap-1\">\n {Array.from({ length: Math.min(5, totalPages) }, (_, i) => {\n let pageNum: number\n if (totalPages <= 5) {\n pageNum = i + 1\n } else if (currentPage <= 3) {\n pageNum = i + 1\n } else if (currentPage >= totalPages - 2) {\n pageNum = totalPages - 4 + i\n } else {\n pageNum = currentPage - 2 + i\n }\n\n if (i === 3 && totalPages > 5 && currentPage < totalPages - 2) {\n return (\n <span key=\"ellipsis\" className=\"px-3 py-1 text-sm\">\n ...\n </span>\n )\n }\n\n if (i === 4 && totalPages > 5) {\n pageNum = totalPages\n }\n\n return (\n <Button\n key={pageNum}\n variant={currentPage === pageNum ? \"secondary\" : \"ghost\"}\n size=\"icon-sm\"\n onClick={() => setCurrentPage(pageNum)}\n className={cn(currentPage === pageNum && \"bg-muted\")}\n >\n {pageNum}\n </Button>\n )\n })}\n </div>\n\n <Button\n variant=\"outline\"\n size=\"icon-sm\"\n onClick={() => setCurrentPage((p) => Math.min(totalPages, p + 1))}\n disabled={currentPage === totalPages}\n >\n <HugeiconsIcon icon={ArrowRight01Icon} className=\"size-4\" />\n </Button>\n </div>\n\n <div className=\"flex items-center gap-4\">\n <span className=\"text-xs text-muted-foreground\">\n Showing {(currentPage - 1) * pageSize + 1} to{\" \"}\n {Math.min(currentPage * pageSize, filteredEmployees.length)} of{\" \"}\n {filteredEmployees.length} entries\n </span>\n\n <DropdownMenu>\n <DropdownMenuTrigger className=\"inline-flex h-8 items-center justify-center gap-2 rounded-md border border-border bg-background px-2.5 text-sm font-medium shadow-xs hover:bg-muted\">\n Show {pageSize}\n <HugeiconsIcon\n icon={ArrowRight01Icon}\n className=\"size-3 rotate-90\"\n />\n </DropdownMenuTrigger>\n <DropdownMenuContent align=\"end\">\n {PAGE_SIZE_OPTIONS.map((size) => (\n <DropdownMenuItem\n key={size}\n onClick={() => setPageSize(size)}\n className={cn(pageSize === size && \"bg-muted\")}\n >\n Show {size}\n </DropdownMenuItem>\n ))}\n </DropdownMenuContent>\n </DropdownMenu>\n </div>\n </div>\n </div>\n )\n}\n"
|
|
25
|
-
},
|
|
26
|
-
{
|
|
27
|
-
"path": "registry/example-apps/default/dashboard-1/components/dashboard/financial-flow-chart.tsx",
|
|
28
|
-
"type": "registry:component",
|
|
29
|
-
"target": "components/example-apps/dashboard-1/components/dashboard/financial-flow-chart.tsx",
|
|
30
|
-
"content": "\"use client\"\n\nimport { useState } from \"react\"\nimport {\n Calendar01Icon,\n ChartAverageIcon,\n ChartBarLineIcon,\n ChartLineData01Icon,\n GridIcon,\n Invoice01Icon,\n MoreHorizontalIcon,\n RefreshIcon,\n Tick01Icon,\n} from \"@hugeicons/core-free-icons\"\nimport { HugeiconsIcon } from \"@hugeicons/react\"\nimport { useTheme } from \"next-themes\"\nimport {\n Area,\n AreaChart,\n Bar,\n BarChart,\n CartesianGrid,\n Line,\n LineChart,\n ResponsiveContainer,\n Tooltip,\n TooltipProps,\n XAxis,\n YAxis,\n} from \"recharts\"\n\nimport {\n DropdownMenu,\n DropdownMenuCheckboxItem,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuSeparator,\n DropdownMenuSub,\n DropdownMenuSubContent,\n DropdownMenuSubTrigger,\n DropdownMenuTrigger,\n} from \"@loveui/ui/ui/menu\"\n\nconst fullYearData = [\n {\n month: \"Jan\",\n moneyIn: 198000,\n moneyOut: 142000,\n moneyInChange: 6.4,\n moneyOutChange: -2.1,\n },\n {\n month: \"Feb\",\n moneyIn: 205000,\n moneyOut: 151000,\n moneyInChange: 3.5,\n moneyOutChange: 6.3,\n },\n {\n month: \"Mar\",\n moneyIn: 226000,\n moneyOut: 158000,\n moneyInChange: 10.2,\n moneyOutChange: 4.6,\n },\n {\n month: \"Apr\",\n moneyIn: 232000,\n moneyOut: 163000,\n moneyInChange: 2.7,\n moneyOutChange: 3.1,\n },\n {\n month: \"May\",\n moneyIn: 241000,\n moneyOut: 169000,\n moneyInChange: 3.9,\n moneyOutChange: 3.6,\n },\n {\n month: \"Jun\",\n moneyIn: 248000,\n moneyOut: 172000,\n moneyInChange: 2.9,\n moneyOutChange: 1.8,\n },\n {\n month: \"Jul\",\n moneyIn: 256000,\n moneyOut: 178000,\n moneyInChange: 3.2,\n moneyOutChange: 3.4,\n },\n {\n month: \"Aug\",\n moneyIn: 264000,\n moneyOut: 181000,\n moneyInChange: 3.1,\n moneyOutChange: 1.7,\n },\n {\n month: \"Sep\",\n moneyIn: 258000,\n moneyOut: 176000,\n moneyInChange: -2.2,\n moneyOutChange: -2.8,\n },\n {\n month: \"Oct\",\n moneyIn: 271000,\n moneyOut: 184000,\n moneyInChange: 5.0,\n moneyOutChange: 4.5,\n },\n {\n month: \"Nov\",\n moneyIn: 279000,\n moneyOut: 191000,\n moneyInChange: 3.0,\n moneyOutChange: 3.8,\n },\n {\n month: \"Dec\",\n moneyIn: 292000,\n moneyOut: 198000,\n moneyInChange: 4.7,\n moneyOutChange: 3.7,\n },\n]\n\ntype ChartType = \"bar\" | \"line\" | \"area\"\ntype TimePeriod = \"3months\" | \"6months\" | \"year\" | \"q1\" | \"q2\" | \"q3\" | \"q4\"\n\nconst periodLabels: Record<TimePeriod, string> = {\n \"3months\": \"Last 3 Months\",\n \"6months\": \"Last 6 Months\",\n year: \"Full Year\",\n q1: \"Q1 (Jan-Mar)\",\n q2: \"Q2 (Apr-Jun)\",\n q3: \"Q3 (Jul-Sep)\",\n q4: \"Q4 (Oct-Dec)\",\n}\n\nfunction getDataForPeriod(period: TimePeriod) {\n switch (period) {\n case \"3months\":\n return fullYearData.slice(-3)\n case \"6months\":\n return fullYearData.slice(-6)\n case \"q1\":\n return fullYearData.slice(0, 3)\n case \"q2\":\n return fullYearData.slice(3, 6)\n case \"q3\":\n return fullYearData.slice(6, 9)\n case \"q4\":\n return fullYearData.slice(9, 12)\n default:\n return fullYearData\n }\n}\n\nfunction CustomTooltip({\n active,\n payload,\n label,\n}: TooltipProps<number, string>) {\n if (!active || !payload?.length) return null\n\n const moneyInData = payload.find((p) => p.dataKey === \"moneyIn\")\n const moneyOutData = payload.find((p) => p.dataKey === \"moneyOut\")\n const moneyIn = moneyInData?.value || 0\n const moneyOut = moneyOutData?.value || 0\n const moneyInChange =\n (moneyInData?.payload as { moneyInChange?: number })?.moneyInChange || 0\n const moneyOutChange =\n (moneyOutData?.payload as { moneyOutChange?: number })?.moneyOutChange || 0\n\n return (\n <div className=\"min-w-[160px] rounded-lg border border-border bg-popover p-3 shadow-lg\">\n <p className=\"mb-3 text-sm font-medium text-foreground\">{label}, 2025</p>\n <div className=\"space-y-2\">\n <div className=\"flex items-center justify-between gap-4\">\n <div className=\"flex items-center gap-2\">\n <div className=\"size-2 rounded-full bg-emerald-500\" />\n <span className=\"text-sm font-semibold text-foreground\">\n ${(Number(moneyIn) / 1000).toFixed(0)}k\n </span>\n </div>\n <span\n className={`text-xs font-medium ${moneyInChange >= 0 ? \"text-red-500\" : \"text-emerald-500\"}`}\n >\n {moneyInChange >= 0 ? \"↘\" : \"↗\"}{\" \"}\n {Math.abs(moneyInChange).toFixed(1)}%\n </span>\n </div>\n <div className=\"flex items-center justify-between gap-4\">\n <div className=\"flex items-center gap-2\">\n <div className=\"size-2 rounded-full bg-[#162664] dark:bg-indigo-500\" />\n <span className=\"text-sm font-semibold text-foreground\">\n ${(Number(moneyOut) / 1000).toFixed(0)}k\n </span>\n </div>\n <span\n className={`text-xs font-medium ${moneyOutChange >= 0 ? \"text-emerald-500\" : \"text-red-500\"}`}\n >\n {moneyOutChange >= 0 ? \"↗\" : \"↘\"}{\" \"}\n {Math.abs(moneyOutChange).toFixed(1)}%\n </span>\n </div>\n </div>\n </div>\n )\n}\n\nexport function FinancialFlowChart() {\n const { theme } = useTheme()\n const [chartType, setChartType] = useState<ChartType>(\"line\")\n const [period, setPeriod] = useState<TimePeriod>(\"year\")\n const [showGrid, setShowGrid] = useState(true)\n const [showMoneyIn, setShowMoneyIn] = useState(true)\n const [showMoneyOut, setShowMoneyOut] = useState(true)\n const [smoothCurve, setSmoothCurve] = useState(false)\n\n const isDark = theme === \"dark\"\n const axisColor = isDark ? \"#71717a\" : \"#a1a1aa\"\n const gridColor = isDark ? \"#27272a\" : \"#e5e7eb\"\n const moneyOutColor = isDark ? \"#6366f1\" : \"#162664\"\n\n const chartData = getDataForPeriod(period)\n\n const resetToDefault = () => {\n setChartType(\"line\")\n setPeriod(\"year\")\n setShowGrid(true)\n setShowMoneyIn(true)\n setShowMoneyOut(true)\n setSmoothCurve(false)\n }\n\n return (\n <div className=\"overflow-hidden rounded-xl border bg-card\">\n <div className=\"flex flex-col justify-between gap-4 px-5 py-4 sm:flex-row sm:items-center\">\n <div className=\"flex items-center gap-2\">\n <HugeiconsIcon\n icon={Invoice01Icon}\n className=\"size-5 text-muted-foreground\"\n />\n <span className=\"font-medium text-muted-foreground\">\n Staffing Budget Flow\n </span>\n </div>\n\n <div className=\"flex flex-wrap items-center gap-4 sm:gap-6\">\n <div className=\"hidden items-center gap-4 sm:flex\">\n <div className=\"flex items-center gap-1.5\">\n <div className=\"size-3 rounded-full bg-emerald-500\" />\n <span className=\"text-xs font-medium text-muted-foreground\">\n Budget Allocated\n </span>\n </div>\n <div className=\"flex items-center gap-1.5\">\n <div className=\"size-3 rounded-full bg-[#162664] dark:bg-indigo-500\" />\n <span className=\"text-xs font-medium text-muted-foreground\">\n Budget Used\n </span>\n </div>\n </div>\n\n <DropdownMenu>\n <DropdownMenuTrigger className=\"inline-flex size-8 items-center justify-center rounded-md hover:bg-muted\">\n <HugeiconsIcon icon={MoreHorizontalIcon} className=\"size-4\" />\n </DropdownMenuTrigger>\n <DropdownMenuContent align=\"end\" className=\"w-56\">\n <DropdownMenuGroup>\n <p className=\"px-2 py-1.5 text-xs font-medium text-muted-foreground\">\n Chart Type\n </p>\n <DropdownMenuItem onClick={() => setChartType(\"bar\")}>\n <HugeiconsIcon\n icon={ChartBarLineIcon}\n className=\"mr-2 size-4\"\n />\n Bar Chart\n {chartType === \"bar\" && (\n <HugeiconsIcon\n icon={Tick01Icon}\n className=\"ml-auto size-4\"\n />\n )}\n </DropdownMenuItem>\n <DropdownMenuItem onClick={() => setChartType(\"line\")}>\n <HugeiconsIcon\n icon={ChartLineData01Icon}\n className=\"mr-2 size-4\"\n />\n Line Chart\n {chartType === \"line\" && (\n <HugeiconsIcon\n icon={Tick01Icon}\n className=\"ml-auto size-4\"\n />\n )}\n </DropdownMenuItem>\n <DropdownMenuItem onClick={() => setChartType(\"area\")}>\n <HugeiconsIcon\n icon={ChartAverageIcon}\n className=\"mr-2 size-4\"\n />\n Area Chart\n {chartType === \"area\" && (\n <HugeiconsIcon\n icon={Tick01Icon}\n className=\"ml-auto size-4\"\n />\n )}\n </DropdownMenuItem>\n </DropdownMenuGroup>\n\n <DropdownMenuSeparator />\n\n <DropdownMenuSub>\n <DropdownMenuSubTrigger>\n <HugeiconsIcon\n icon={Calendar01Icon}\n className=\"mr-2 size-4\"\n />\n Time Period\n </DropdownMenuSubTrigger>\n <DropdownMenuSubContent>\n {(Object.keys(periodLabels) as TimePeriod[]).map((key) => (\n <DropdownMenuItem key={key} onClick={() => setPeriod(key)}>\n {periodLabels[key]}\n {period === key && (\n <HugeiconsIcon\n icon={Tick01Icon}\n className=\"ml-auto size-4\"\n />\n )}\n </DropdownMenuItem>\n ))}\n </DropdownMenuSubContent>\n </DropdownMenuSub>\n\n <DropdownMenuSeparator />\n\n <DropdownMenuGroup>\n <p className=\"px-2 py-1.5 text-xs font-medium text-muted-foreground\">\n Display Options\n </p>\n <DropdownMenuCheckboxItem\n checked={showGrid}\n onCheckedChange={setShowGrid}\n >\n <HugeiconsIcon icon={GridIcon} className=\"mr-2 size-4\" />\n Show Grid Lines\n </DropdownMenuCheckboxItem>\n\n {(chartType === \"line\" || chartType === \"area\") && (\n <DropdownMenuCheckboxItem\n checked={smoothCurve}\n onCheckedChange={setSmoothCurve}\n >\n <HugeiconsIcon\n icon={ChartAverageIcon}\n className=\"mr-2 size-4\"\n />\n Smooth Curve\n </DropdownMenuCheckboxItem>\n )}\n </DropdownMenuGroup>\n\n <DropdownMenuSeparator />\n\n <DropdownMenuGroup>\n <p className=\"px-2 py-1.5 text-xs font-medium text-muted-foreground\">\n Data Series\n </p>\n <DropdownMenuCheckboxItem\n checked={showMoneyIn}\n onCheckedChange={setShowMoneyIn}\n >\n <div className=\"mr-2 size-3 rounded-full bg-emerald-500\" />\n Show Money In\n </DropdownMenuCheckboxItem>\n\n <DropdownMenuCheckboxItem\n checked={showMoneyOut}\n onCheckedChange={setShowMoneyOut}\n >\n <div className=\"mr-2 size-3 rounded-full bg-[#162664] dark:bg-indigo-500\" />\n Show Money Out\n </DropdownMenuCheckboxItem>\n </DropdownMenuGroup>\n\n <DropdownMenuSeparator />\n\n <DropdownMenuItem onClick={resetToDefault}>\n <HugeiconsIcon icon={RefreshIcon} className=\"mr-2 size-4\" />\n Reset to Default\n </DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n </div>\n </div>\n\n <div className=\"h-[250px] px-2 pb-4 sm:h-[280px]\">\n <ResponsiveContainer width=\"100%\" height=\"100%\">\n {chartType === \"bar\" ? (\n <BarChart data={chartData} barGap={4}>\n <defs>\n <linearGradient\n id=\"moneyInGradient\"\n x1=\"0\"\n y1=\"0\"\n x2=\"0\"\n y2=\"1\"\n >\n <stop offset=\"0%\" stopColor=\"#2d9f75\" stopOpacity={1} />\n <stop offset=\"100%\" stopColor=\"#2d9f75\" stopOpacity={0.6} />\n </linearGradient>\n <linearGradient\n id=\"moneyOutGradient\"\n x1=\"0\"\n y1=\"0\"\n x2=\"0\"\n y2=\"1\"\n >\n <stop offset=\"0%\" stopColor={moneyOutColor} stopOpacity={1} />\n <stop\n offset=\"100%\"\n stopColor={moneyOutColor}\n stopOpacity={0.6}\n />\n </linearGradient>\n </defs>\n {showGrid && (\n <CartesianGrid\n strokeDasharray=\"0\"\n stroke={gridColor}\n vertical={false}\n />\n )}\n <XAxis\n dataKey=\"month\"\n axisLine={false}\n tickLine={false}\n tick={{ fill: axisColor, fontSize: 12 }}\n dy={10}\n />\n <YAxis\n axisLine={false}\n tickLine={false}\n tick={{ fill: axisColor, fontSize: 10 }}\n tickFormatter={(value) => `$${value / 1000}k`}\n width={50}\n />\n <Tooltip\n content={<CustomTooltip />}\n cursor={{ fill: \"#f4f4f5\", radius: 4 }}\n />\n {showMoneyIn && (\n <Bar\n dataKey=\"moneyIn\"\n fill=\"url(#moneyInGradient)\"\n radius={[4, 4, 0, 0]}\n maxBarSize={22}\n />\n )}\n {showMoneyOut && (\n <Bar\n dataKey=\"moneyOut\"\n fill=\"url(#moneyOutGradient)\"\n radius={[4, 4, 0, 0]}\n maxBarSize={22}\n />\n )}\n </BarChart>\n ) : chartType === \"line\" ? (\n <LineChart data={chartData}>\n {showGrid && (\n <CartesianGrid\n strokeDasharray=\"3 3\"\n stroke={gridColor}\n vertical={true}\n />\n )}\n <XAxis\n dataKey=\"month\"\n axisLine={false}\n tickLine={false}\n tick={{ fill: axisColor, fontSize: 12 }}\n dy={10}\n />\n <YAxis\n axisLine={false}\n tickLine={false}\n tick={{ fill: axisColor, fontSize: 10 }}\n tickFormatter={(value) => `$${value / 1000}k`}\n width={50}\n />\n <Tooltip\n content={<CustomTooltip />}\n cursor={{ stroke: \"#d4d4d8\" }}\n />\n {showMoneyIn && (\n <Line\n type={smoothCurve ? \"monotone\" : \"linear\"}\n dataKey=\"moneyIn\"\n stroke=\"#2d9f75\"\n strokeWidth={2}\n dot={false}\n activeDot={{\n r: 6,\n fill: \"#2d9f75\",\n stroke: \"white\",\n strokeWidth: 2,\n }}\n />\n )}\n {showMoneyOut && (\n <Line\n type={smoothCurve ? \"monotone\" : \"linear\"}\n dataKey=\"moneyOut\"\n stroke={moneyOutColor}\n strokeWidth={2}\n dot={false}\n activeDot={{\n r: 6,\n fill: moneyOutColor,\n stroke: \"white\",\n strokeWidth: 2,\n }}\n />\n )}\n </LineChart>\n ) : (\n <AreaChart data={chartData}>\n <defs>\n <linearGradient\n id=\"moneyInAreaGradient\"\n x1=\"0\"\n y1=\"0\"\n x2=\"0\"\n y2=\"1\"\n >\n <stop offset=\"0%\" stopColor=\"#2d9f75\" stopOpacity={0.3} />\n <stop offset=\"100%\" stopColor=\"#2d9f75\" stopOpacity={0.05} />\n </linearGradient>\n <linearGradient\n id=\"moneyOutAreaGradient\"\n x1=\"0\"\n y1=\"0\"\n x2=\"0\"\n y2=\"1\"\n >\n <stop\n offset=\"0%\"\n stopColor={moneyOutColor}\n stopOpacity={0.3}\n />\n <stop\n offset=\"100%\"\n stopColor={moneyOutColor}\n stopOpacity={0.05}\n />\n </linearGradient>\n </defs>\n {showGrid && (\n <CartesianGrid\n strokeDasharray=\"0\"\n stroke={gridColor}\n vertical={false}\n />\n )}\n <XAxis\n dataKey=\"month\"\n axisLine={false}\n tickLine={false}\n tick={{ fill: axisColor, fontSize: 12 }}\n dy={10}\n />\n <YAxis\n axisLine={false}\n tickLine={false}\n tick={{ fill: axisColor, fontSize: 10 }}\n tickFormatter={(value) => `$${value / 1000}k`}\n width={50}\n />\n <Tooltip\n content={<CustomTooltip />}\n cursor={{ stroke: \"#d4d4d8\" }}\n />\n {showMoneyIn && (\n <Area\n type={smoothCurve ? \"monotone\" : \"linear\"}\n dataKey=\"moneyIn\"\n stroke=\"#2d9f75\"\n strokeWidth={2}\n fill=\"url(#moneyInAreaGradient)\"\n />\n )}\n {showMoneyOut && (\n <Area\n type={smoothCurve ? \"monotone\" : \"linear\"}\n dataKey=\"moneyOut\"\n stroke={moneyOutColor}\n strokeWidth={2}\n fill=\"url(#moneyOutAreaGradient)\"\n />\n )}\n </AreaChart>\n )}\n </ResponsiveContainer>\n </div>\n </div>\n )\n}\n"
|
|
31
|
-
},
|
|
32
|
-
{
|
|
33
|
-
"path": "registry/example-apps/default/dashboard-1/components/dashboard/header.tsx",
|
|
34
|
-
"type": "registry:component",
|
|
35
|
-
"target": "components/example-apps/dashboard-1/components/dashboard/header.tsx",
|
|
36
|
-
"content": "\"use client\"\n\nimport {\n DashboardSquare01Icon,\n RefreshIcon,\n SidebarLeft01Icon,\n Tick01Icon,\n} from \"@hugeicons/core-free-icons\"\nimport { HugeiconsIcon } from \"@hugeicons/react\"\n\nimport { Avatar, AvatarFallback, AvatarImage } from \"@loveui/ui/ui/avatar\"\nimport { Button } from \"@loveui/ui/ui/button\"\nimport {\n DropdownMenu,\n DropdownMenuCheckboxItem,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@loveui/ui/ui/menu\"\n\nimport {\n useDashboardStore,\n type LayoutDensity,\n} from \"../../store/dashboard-store\"\nimport { ThemeToggle } from \"../theme-toggle\"\nimport { SidebarTrigger } from \"../ui/sidebar\"\n\nconst densityLabels: Record<LayoutDensity, string> = {\n default: \"Default\",\n compact: \"Compact\",\n comfortable: \"Comfortable\",\n}\n\nexport function DashboardHeader() {\n const showAlertBanner = useDashboardStore((state) => state.showAlertBanner)\n const showStatsCards = useDashboardStore((state) => state.showStatsCards)\n const showChart = useDashboardStore((state) => state.showChart)\n const showTable = useDashboardStore((state) => state.showTable)\n const layoutDensity = useDashboardStore((state) => state.layoutDensity)\n const setShowAlertBanner = useDashboardStore(\n (state) => state.setShowAlertBanner\n )\n const setShowStatsCards = useDashboardStore(\n (state) => state.setShowStatsCards\n )\n const setShowChart = useDashboardStore((state) => state.setShowChart)\n const setShowTable = useDashboardStore((state) => state.setShowTable)\n const setLayoutDensity = useDashboardStore((state) => state.setLayoutDensity)\n const resetLayout = useDashboardStore((state) => state.resetLayout)\n\n return (\n <header className=\"flex w-full items-center gap-3 border-b bg-background px-4 py-4 sm:px-6\">\n <SidebarTrigger className=\"lg:hidden\">\n <HugeiconsIcon icon={SidebarLeft01Icon} className=\"size-5\" />\n </SidebarTrigger>\n\n <HugeiconsIcon icon={DashboardSquare01Icon} className=\"size-6\" />\n <h1 className=\"flex-1 text-base font-medium\">Care Workforce</h1>\n\n <span className=\"hidden text-sm text-muted-foreground sm:block\">\n Last update 5 min ago\n </span>\n\n <div className=\"flex items-center -space-x-2\">\n <Avatar className=\"size-7 ring-2 ring-background\">\n <AvatarImage src=\"https://api.dicebear.com/9.x/glass/svg?seed=user1\" />\n <AvatarFallback>U1</AvatarFallback>\n </Avatar>\n <Avatar className=\"size-7 ring-2 ring-background\">\n <AvatarImage src=\"https://api.dicebear.com/9.x/glass/svg?seed=user2\" />\n <AvatarFallback>U2</AvatarFallback>\n </Avatar>\n <Avatar className=\"size-7 ring-2 ring-background\">\n <AvatarImage src=\"https://api.dicebear.com/9.x/glass/svg?seed=user3\" />\n <AvatarFallback>U3</AvatarFallback>\n </Avatar>\n </div>\n\n <div className=\"hidden h-6 w-px bg-border sm:block\" />\n\n <ThemeToggle />\n\n <DropdownMenu>\n <DropdownMenuTrigger\n render={\n <Button\n variant=\"outline\"\n size=\"sm\"\n className=\"hidden gap-2 sm:flex\"\n >\n <HugeiconsIcon icon={SidebarLeft01Icon} className=\"size-4\" />\n Edit Layout\n </Button>\n }\n />\n <DropdownMenuContent align=\"end\" className=\"w-56\">\n <DropdownMenuGroup>\n <p className=\"px-2 py-1.5 text-xs font-medium text-muted-foreground\">\n Layout Density\n </p>\n {(Object.keys(densityLabels) as LayoutDensity[]).map((key) => (\n <DropdownMenuItem key={key} onClick={() => setLayoutDensity(key)}>\n {densityLabels[key]}\n {layoutDensity === key && (\n <HugeiconsIcon icon={Tick01Icon} className=\"ml-auto size-4\" />\n )}\n </DropdownMenuItem>\n ))}\n </DropdownMenuGroup>\n\n <DropdownMenuSeparator />\n\n <DropdownMenuGroup>\n <p className=\"px-2 py-1.5 text-xs font-medium text-muted-foreground\">\n Show / Hide Sections\n </p>\n <DropdownMenuCheckboxItem\n checked={showAlertBanner}\n onCheckedChange={setShowAlertBanner}\n >\n Alert Banner\n </DropdownMenuCheckboxItem>\n <DropdownMenuCheckboxItem\n checked={showStatsCards}\n onCheckedChange={setShowStatsCards}\n >\n Statistics Cards\n </DropdownMenuCheckboxItem>\n <DropdownMenuCheckboxItem\n checked={showChart}\n onCheckedChange={setShowChart}\n >\n Financial Flow Chart\n </DropdownMenuCheckboxItem>\n <DropdownMenuCheckboxItem\n checked={showTable}\n onCheckedChange={setShowTable}\n >\n Employees Table\n </DropdownMenuCheckboxItem>\n </DropdownMenuGroup>\n\n <DropdownMenuSeparator />\n\n <DropdownMenuItem onClick={resetLayout}>\n <HugeiconsIcon icon={RefreshIcon} className=\"mr-2 size-4\" />\n Reset to Default\n </DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n </header>\n )\n}\n"
|
|
37
|
-
},
|
|
38
|
-
{
|
|
39
|
-
"path": "registry/example-apps/default/dashboard-1/components/dashboard/sidebar.tsx",
|
|
40
|
-
"type": "registry:component",
|
|
41
|
-
"target": "components/example-apps/dashboard-1/components/dashboard/sidebar.tsx",
|
|
42
|
-
"content": "\"use client\"\n\nimport * as React from \"react\"\nimport Link from \"next/link\"\nimport {\n Add01Icon,\n ArrowDown01Icon,\n ArrowRight01Icon,\n Calendar01Icon,\n Cancel01Icon,\n Coins01Icon,\n Comment01Icon,\n DashboardSquare01Icon,\n Folder01Icon,\n HelpCircleIcon,\n Invoice01Icon,\n Logout01Icon,\n Notification01Icon,\n Search01Icon,\n Settings01Icon,\n Task01Icon,\n Tick01Icon,\n UserGroupIcon,\n UserIcon,\n} from \"@hugeicons/core-free-icons\"\nimport { HugeiconsIcon } from \"@hugeicons/react\"\n\nimport { Avatar, AvatarFallback, AvatarImage } from \"@loveui/ui/ui/avatar\"\nimport { Button } from \"@loveui/ui/ui/button\"\nimport { Input } from \"@loveui/ui/ui/input\"\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@loveui/ui/ui/menu\"\n\nimport { cn } from \"../../lib/utils\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarGroup,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarHeader,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n} from \"../ui/sidebar\"\n\nconst menuItems = [\n { icon: DashboardSquare01Icon, label: \"Dashboard\", active: true },\n { icon: Notification01Icon, label: \"Clinical Alerts\", badge: \"6\" },\n { icon: UserGroupIcon, label: \"Care Teams\" },\n { icon: Calendar01Icon, label: \"Shift Planner\" },\n { icon: Coins01Icon, label: \"Unit Budgets\" },\n { icon: Invoice01Icon, label: \"Claims\" },\n { icon: Task01Icon, label: \"Safety Checks\" },\n]\n\nconst favorites = [\n { icon: Folder01Icon, label: \"ER Coverage\" },\n { icon: Folder01Icon, label: \"ICU Staffing\" },\n { icon: Folder01Icon, label: \"Discharge Ops\" },\n]\n\nconst footerItems = [\n { icon: Comment01Icon, label: \"Feedback\" },\n { icon: Settings01Icon, label: \"Settings\" },\n { icon: HelpCircleIcon, label: \"Help Center\" },\n]\n\nexport function DashboardSidebar({\n ...props\n}: React.ComponentProps<typeof Sidebar>) {\n const [favoritesOpen, setFavoritesOpen] = React.useState(true)\n const [showUpgradeModal, setShowUpgradeModal] = React.useState(true)\n\n return (\n <Sidebar collapsible=\"offExamples\" className=\"lg:border-r-0!\" {...props}>\n <SidebarHeader className=\"p-5 pb-0\">\n <div className=\"flex items-center justify-between\">\n <DropdownMenu>\n <DropdownMenuTrigger className=\"flex items-center gap-2 outline-none\">\n <div className=\"flex size-7 items-center justify-center overflow-hidden rounded-full bg-linear-to-br from-purple-400 via-pink-500 to-red-500 shadow-lg ring-1 ring-white/40\" />\n <span className=\"font-medium text-muted-foreground\">\n Riverbend Health\n </span>\n <HugeiconsIcon\n icon={ArrowDown01Icon}\n className=\"size-3 text-muted-foreground\"\n />\n </DropdownMenuTrigger>\n <DropdownMenuContent align=\"start\" className=\"w-56\">\n <DropdownMenuGroup>\n <p className=\"px-2 py-1.5 text-xs font-medium text-muted-foreground\">\n Workspaces\n </p>\n <DropdownMenuItem>\n <div className=\"mr-2 size-5 rounded-full bg-linear-to-br from-purple-400 via-pink-500 to-red-500\" />\n Main Campus\n <HugeiconsIcon icon={Tick01Icon} className=\"ml-auto size-4\" />\n </DropdownMenuItem>\n <DropdownMenuItem>\n <div className=\"mr-2 size-5 rounded-full bg-linear-to-br from-blue-400 to-cyan-500\" />\n East Wing\n </DropdownMenuItem>\n <DropdownMenuItem>\n <div className=\"mr-2 size-5 rounded-full bg-linear-to-br from-green-400 to-emerald-500\" />\n Outpatient Center\n </DropdownMenuItem>\n </DropdownMenuGroup>\n\n <DropdownMenuSeparator />\n\n <DropdownMenuItem>\n <HugeiconsIcon icon={Add01Icon} className=\"mr-2 size-4\" />\n Create Workspace\n </DropdownMenuItem>\n\n <DropdownMenuSeparator />\n\n <DropdownMenuGroup>\n <DropdownMenuItem>\n <HugeiconsIcon icon={UserIcon} className=\"mr-2 size-4\" />\n Account Settings\n </DropdownMenuItem>\n <DropdownMenuItem>\n <HugeiconsIcon\n icon={Settings01Icon}\n className=\"mr-2 size-4\"\n />\n Workspace Settings\n </DropdownMenuItem>\n </DropdownMenuGroup>\n\n <DropdownMenuSeparator />\n\n <DropdownMenuItem className=\"text-destructive\">\n <HugeiconsIcon icon={Logout01Icon} className=\"mr-2 size-4\" />\n Log out\n </DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n <Avatar className=\"size-7\">\n <AvatarImage src=\"/ln.png\" />\n <AvatarFallback>AD</AvatarFallback>\n </Avatar>\n </div>\n </SidebarHeader>\n\n <SidebarContent className=\"px-5 pt-5\">\n <div className=\"relative mb-4\">\n <HugeiconsIcon\n icon={Search01Icon}\n className=\"pointer-events-none absolute top-1/2 left-3 z-10 size-4 -translate-y-1/2 text-muted-foreground\"\n />\n <Input\n placeholder=\"Search Anything...\"\n className=\"h-9 bg-background pr-10 pl-9\"\n />\n <div className=\"absolute top-1/2 right-2 -translate-y-1/2 rounded bg-muted px-1.5 py-0.5 text-[11px] font-medium text-muted-foreground\">\n ⌘K\n </div>\n </div>\n\n <SidebarGroup className=\"p-0\">\n <SidebarGroupContent>\n <SidebarMenu>\n {menuItems.map((item) => (\n <SidebarMenuItem key={item.label}>\n <SidebarMenuButton\n isActive={item.active}\n className=\"h-[38px]\"\n >\n <HugeiconsIcon icon={item.icon} className=\"size-5\" />\n <span className=\"flex-1\">{item.label}</span>\n {item.badge && (\n <span className=\"rounded-full bg-red-500 px-1.5 py-0.5 text-[10px] font-semibold text-white\">\n {item.badge}\n </span>\n )}\n {item.active && (\n <HugeiconsIcon\n icon={ArrowRight01Icon}\n className=\"size-4 text-muted-foreground opacity-60\"\n />\n )}\n </SidebarMenuButton>\n </SidebarMenuItem>\n ))}\n </SidebarMenu>\n </SidebarGroupContent>\n </SidebarGroup>\n\n <SidebarGroup className=\"p-0\">\n <SidebarGroupLabel className=\"flex items-center gap-1.5 px-0 text-[10px] font-semibold tracking-wider text-muted-foreground\">\n <button\n onClick={() => setFavoritesOpen(!favoritesOpen)}\n className=\"flex cursor-pointer items-center gap-1.5\"\n >\n <HugeiconsIcon\n icon={ArrowDown01Icon}\n className={cn(\n \"size-3.5 transition-transform\",\n !favoritesOpen && \"-rotate-90\"\n )}\n />\n FAVORITES\n </button>\n </SidebarGroupLabel>\n {favoritesOpen && (\n <SidebarGroupContent>\n <SidebarMenu className=\"mt-2\">\n {favorites.map((item) => (\n <SidebarMenuItem key={item.label}>\n <SidebarMenuButton className=\"h-[38px]\">\n <HugeiconsIcon\n icon={item.icon}\n className=\"size-5 text-foreground\"\n />\n <span className=\"text-muted-foreground\">\n {item.label}\n </span>\n </SidebarMenuButton>\n </SidebarMenuItem>\n ))}\n </SidebarMenu>\n </SidebarGroupContent>\n )}\n </SidebarGroup>\n\n {showUpgradeModal && (\n <div className=\"relative mt-4 rounded-2xl border bg-card p-5 shadow-lg\">\n <Button\n variant=\"ghost\"\n size=\"icon-sm\"\n className=\"absolute top-3 right-3 bg-muted\"\n onClick={() => setShowUpgradeModal(false)}\n >\n <HugeiconsIcon icon={Cancel01Icon} className=\"size-3\" />\n </Button>\n <p className=\"mb-2 text-sm font-semibold\">\n 🏥 3 high-priority units\n </p>\n <div className=\"mb-2 h-1.5 w-full rounded-sm bg-muted\">\n <div className=\"h-full w-[62%] rounded-sm bg-foreground\" />\n </div>\n <p className=\"mb-4 text-sm text-muted-foreground\">\n Reassign floating nurses to maintain patient-to-staff ratios\n </p>\n <Link\n href=\"#\"\n className=\"flex items-center gap-1 text-sm font-medium\"\n >\n Optimize coverage\n <HugeiconsIcon icon={ArrowRight01Icon} className=\"size-3.5\" />\n </Link>\n </div>\n )}\n\n <SidebarGroup className=\"p-0\">\n <SidebarGroupContent>\n <SidebarMenu>\n {footerItems.map((item) => (\n <SidebarMenuItem key={item.label}>\n <SidebarMenuButton className=\"h-[38px]\">\n <HugeiconsIcon icon={item.icon} className=\"size-5\" />\n <span>{item.label}</span>\n </SidebarMenuButton>\n </SidebarMenuItem>\n ))}\n </SidebarMenu>\n </SidebarGroupContent>\n </SidebarGroup>\n </SidebarContent>\n </Sidebar>\n )\n}\n"
|
|
43
|
-
},
|
|
44
|
-
{
|
|
45
|
-
"path": "registry/example-apps/default/dashboard-1/components/dashboard/stats-cards.tsx",
|
|
46
|
-
"type": "registry:component",
|
|
47
|
-
"target": "components/example-apps/dashboard-1/components/dashboard/stats-cards.tsx",
|
|
48
|
-
"content": "\"use client\"\n\nimport {\n Calendar01Icon,\n File01Icon,\n InformationCircleIcon,\n Invoice01Icon,\n UserGroupIcon,\n} from \"@hugeicons/core-free-icons\"\nimport { HugeiconsIcon } from \"@hugeicons/react\"\n\nimport { Button } from \"@loveui/ui/ui/button\"\n\nconst stats = [\n {\n title: \"On-Duty Staff\",\n value: \"182\",\n subtitle: \"27 currently on night shift\",\n icon: UserGroupIcon,\n subtitleIcon: File01Icon,\n },\n {\n title: \"Shift Budget\",\n value: \"$412,800\",\n subtitle: \"Weekly staffing spend\",\n icon: Invoice01Icon,\n subtitleIcon: File01Icon,\n },\n {\n title: \"Patient Coverage\",\n value: \"96.3%\",\n subtitle: \"Across all care units\",\n icon: Calendar01Icon,\n subtitleIcon: InformationCircleIcon,\n },\n]\n\nexport function StatsCards() {\n return (\n <div className=\"grid grid-cols-1 gap-4 sm:grid-cols-2 sm:gap-6 lg:grid-cols-3\">\n {stats.map((stat) => (\n <div\n key={stat.title}\n className=\"relative overflow-hidden rounded-xl border bg-card p-5\"\n >\n <div className=\"pointer-events-none absolute inset-0 bg-linear-to-br from-black/5 to-transparent\" />\n <div className=\"relative flex items-start justify-between\">\n <div className=\"flex flex-col gap-6\">\n <p className=\"text-sm font-medium text-muted-foreground\">\n {stat.title}\n </p>\n <p className=\"text-2xl font-semibold tracking-tight sm:text-[26px]\">\n {stat.value}\n </p>\n <div className=\"flex items-center gap-1.5 text-muted-foreground\">\n <HugeiconsIcon icon={stat.subtitleIcon} className=\"size-4\" />\n <span className=\"text-sm font-medium\">{stat.subtitle}</span>\n </div>\n </div>\n <Button variant=\"outline\" size=\"icon\" className=\"size-10\">\n <HugeiconsIcon icon={stat.icon} className=\"size-5\" />\n </Button>\n </div>\n </div>\n ))}\n </div>\n )\n}\n"
|
|
49
|
-
},
|
|
50
|
-
{
|
|
51
|
-
"path": "registry/example-apps/default/dashboard-1/components/theme-provider.tsx",
|
|
52
|
-
"type": "registry:component",
|
|
53
|
-
"target": "components/example-apps/dashboard-1/components/theme-provider.tsx",
|
|
54
|
-
"content": "\"use client\"\n\nimport * as React from \"react\"\nimport { ThemeProvider as NextThemesProvider } from \"next-themes\"\n\nexport function ThemeProvider({\n children,\n ...props\n}: React.ComponentProps<typeof NextThemesProvider>) {\n return <NextThemesProvider {...props}>{children}</NextThemesProvider>\n}\n"
|
|
55
|
-
},
|
|
56
|
-
{
|
|
57
|
-
"path": "registry/example-apps/default/dashboard-1/components/theme-toggle.tsx",
|
|
58
|
-
"type": "registry:component",
|
|
59
|
-
"target": "components/example-apps/dashboard-1/components/theme-toggle.tsx",
|
|
60
|
-
"content": "\"use client\"\n\nimport * as React from \"react\"\nimport { Moon01Icon, Sun01Icon } from \"@hugeicons/core-free-icons\"\nimport { HugeiconsIcon } from \"@hugeicons/react\"\nimport { useTheme } from \"next-themes\"\n\nimport { Button } from \"@loveui/ui/ui/button\"\n\nexport function ThemeToggle() {\n const { setTheme, theme } = useTheme()\n\n return (\n <Button\n variant=\"ghost\"\n size=\"icon\"\n onClick={() => setTheme(theme === \"light\" ? \"dark\" : \"light\")}\n >\n <HugeiconsIcon\n icon={Sun01Icon}\n className=\"size-5 scale-100 rotate-0 transition-all dark:scale-0 dark:-rotate-90\"\n />\n <HugeiconsIcon\n icon={Moon01Icon}\n className=\"absolute size-5 scale-0 rotate-90 transition-all dark:scale-100 dark:rotate-0\"\n />\n <span className=\"sr-only\">Toggle theme</span>\n </Button>\n )\n}\n"
|
|
61
|
-
},
|
|
62
|
-
{
|
|
63
|
-
"path": "registry/example-apps/default/dashboard-1/components/ui/alert-dialog.tsx",
|
|
64
|
-
"type": "registry:ui",
|
|
65
|
-
"target": "components/example-apps/dashboard-1/components/ui/alert-dialog.tsx",
|
|
66
|
-
"content": "\"use client\"\n\nimport * as React from \"react\"\nimport { AlertDialog as AlertDialogPrimitive } from \"@base-ui/react/alert-dialog\"\n\nimport { cn } from \"../../lib/utils\"\nimport { Button } from \"./button\"\n\nfunction AlertDialog({ ...props }: AlertDialogPrimitive.Root.Props) {\n return <AlertDialogPrimitive.Root data-slot=\"alert-dialog\" {...props} />\n}\n\nfunction AlertDialogTrigger({ ...props }: AlertDialogPrimitive.Trigger.Props) {\n return (\n <AlertDialogPrimitive.Trigger data-slot=\"alert-dialog-trigger\" {...props} />\n )\n}\n\nfunction AlertDialogPortal({ ...props }: AlertDialogPrimitive.Portal.Props) {\n return (\n <AlertDialogPrimitive.Portal data-slot=\"alert-dialog-portal\" {...props} />\n )\n}\n\nfunction AlertDialogOverlay({\n className,\n ...props\n}: AlertDialogPrimitive.Backdrop.Props) {\n return (\n <AlertDialogPrimitive.Backdrop\n data-slot=\"alert-dialog-overlay\"\n className={cn(\n \"data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 fixed inset-0 isolate z-50 bg-black/10 duration-100 supports-backdrop-filter:backdrop-blur-xs\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction AlertDialogContent({\n className,\n size = \"default\",\n ...props\n}: AlertDialogPrimitive.Popup.Props & {\n size?: \"default\" | \"sm\"\n}) {\n return (\n <AlertDialogPortal>\n <AlertDialogOverlay />\n <AlertDialogPrimitive.Popup\n data-slot=\"alert-dialog-content\"\n data-size={size}\n className={cn(\n \"data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-open:zoom-in-95 group/alert-dialog-content fixed top-1/2 left-1/2 z-50 grid w-full -translate-x-1/2 -translate-y-1/2 gap-6 rounded-xl bg-background p-6 ring-1 ring-foreground/10 duration-100 outline-none data-[size=default]:max-w-xs data-[size=sm]:max-w-xs data-[size=default]:sm:max-w-lg\",\n className\n )}\n {...props}\n />\n </AlertDialogPortal>\n )\n}\n\nfunction AlertDialogHeader({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"alert-dialog-header\"\n className={cn(\n \"grid grid-rows-[auto_1fr] place-items-center gap-1.5 text-center has-data-[slot=alert-dialog-media]:grid-rows-[auto_auto_1fr] has-data-[slot=alert-dialog-media]:gap-x-6 sm:group-data-[size=default]/alert-dialog-content:place-items-start sm:group-data-[size=default]/alert-dialog-content:text-left sm:group-data-[size=default]/alert-dialog-content:has-data-[slot=alert-dialog-media]:grid-rows-[auto_1fr]\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction AlertDialogFooter({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"alert-dialog-footer\"\n className={cn(\n \"flex flex-col-reverse gap-2 group-data-[size=sm]/alert-dialog-content:grid group-data-[size=sm]/alert-dialog-content:grid-cols-2 sm:flex-row sm:justify-end\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction AlertDialogMedia({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"alert-dialog-media\"\n className={cn(\n \"mb-2 inline-flex size-16 items-center justify-center rounded-md bg-muted sm:group-data-[size=default]/alert-dialog-content:row-span-2 *:[svg:not([class*='size-'])]:size-8\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction AlertDialogTitle({\n className,\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Title>) {\n return (\n <AlertDialogPrimitive.Title\n data-slot=\"alert-dialog-title\"\n className={cn(\n \"text-lg font-medium sm:group-data-[size=default]/alert-dialog-content:group-has-data-[slot=alert-dialog-media]/alert-dialog-content:col-start-2\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction AlertDialogDescription({\n className,\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Description>) {\n return (\n <AlertDialogPrimitive.Description\n data-slot=\"alert-dialog-description\"\n className={cn(\n \"text-sm text-balance text-muted-foreground md:text-pretty *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction AlertDialogAction({\n className,\n ...props\n}: React.ComponentProps<typeof Button>) {\n return (\n <Button\n data-slot=\"alert-dialog-action\"\n className={cn(className)}\n {...props}\n />\n )\n}\n\nfunction AlertDialogCancel({\n className,\n variant = \"outline\",\n size = \"default\",\n ...props\n}: AlertDialogPrimitive.Close.Props &\n Pick<React.ComponentProps<typeof Button>, \"variant\" | \"size\">) {\n return (\n <AlertDialogPrimitive.Close\n data-slot=\"alert-dialog-cancel\"\n className={cn(className)}\n render={<Button variant={variant} size={size} />}\n {...props}\n />\n )\n}\n\nexport {\n AlertDialog,\n AlertDialogAction,\n AlertDialogCancel,\n AlertDialogContent,\n AlertDialogDescription,\n AlertDialogFooter,\n AlertDialogHeader,\n AlertDialogMedia,\n AlertDialogOverlay,\n AlertDialogPortal,\n AlertDialogTitle,\n AlertDialogTrigger,\n}\n"
|
|
67
|
-
},
|
|
68
|
-
{
|
|
69
|
-
"path": "registry/example-apps/default/dashboard-1/components/ui/avatar.tsx",
|
|
70
|
-
"type": "registry:ui",
|
|
71
|
-
"target": "components/example-apps/dashboard-1/components/ui/avatar.tsx",
|
|
72
|
-
"content": "\"use client\"\n\nimport * as React from \"react\"\nimport { Avatar as AvatarPrimitive } from \"@base-ui/react/avatar\"\n\nimport { cn } from \"../../lib/utils\"\n\nfunction Avatar({\n className,\n size = \"default\",\n ...props\n}: AvatarPrimitive.Root.Props & {\n size?: \"default\" | \"sm\" | \"lg\"\n}) {\n return (\n <AvatarPrimitive.Root\n data-slot=\"avatar\"\n data-size={size}\n className={cn(\n \"group/avatar relative flex size-8 shrink-0 rounded-full select-none after:absolute after:inset-0 after:rounded-full after:border after:border-border after:mix-blend-darken data-[size=lg]:size-10 data-[size=sm]:size-6 dark:after:mix-blend-lighten\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction AvatarImage({ className, ...props }: AvatarPrimitive.Image.Props) {\n return (\n <AvatarPrimitive.Image\n data-slot=\"avatar-image\"\n className={cn(\n \"aspect-square size-full rounded-full object-cover\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction AvatarFallback({\n className,\n ...props\n}: AvatarPrimitive.Fallback.Props) {\n return (\n <AvatarPrimitive.Fallback\n data-slot=\"avatar-fallback\"\n className={cn(\n \"flex size-full items-center justify-center rounded-full bg-muted text-sm text-muted-foreground group-data-[size=sm]/avatar:text-xs\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction AvatarBadge({ className, ...props }: React.ComponentProps<\"span\">) {\n return (\n <span\n data-slot=\"avatar-badge\"\n className={cn(\n \"absolute right-0 bottom-0 z-10 inline-flex items-center justify-center rounded-full bg-primary text-primary-foreground bg-blend-color ring-2 ring-background select-none\",\n \"group-data-[size=sm]/avatar:size-2 group-data-[size=sm]/avatar:[&>svg]:hidden\",\n \"group-data-[size=default]/avatar:size-2.5 group-data-[size=default]/avatar:[&>svg]:size-2\",\n \"group-data-[size=lg]/avatar:size-3 group-data-[size=lg]/avatar:[&>svg]:size-2\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction AvatarGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"avatar-group\"\n className={cn(\n \"group/avatar-group flex -space-x-2 *:data-[slot=avatar]:ring-2 *:data-[slot=avatar]:ring-background\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction AvatarGroupCount({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"avatar-group-count\"\n className={cn(\n \"relative flex size-8 shrink-0 items-center justify-center rounded-full bg-muted text-sm text-muted-foreground ring-2 ring-background group-has-data-[size=lg]/avatar-group:size-10 group-has-data-[size=sm]/avatar-group:size-6 [&>svg]:size-4 group-has-data-[size=lg]/avatar-group:[&>svg]:size-5 group-has-data-[size=sm]/avatar-group:[&>svg]:size-3\",\n className\n )}\n {...props}\n />\n )\n}\n\nexport {\n Avatar,\n AvatarImage,\n AvatarFallback,\n AvatarGroup,\n AvatarGroupCount,\n AvatarBadge,\n}\n"
|
|
73
|
-
},
|
|
74
|
-
{
|
|
75
|
-
"path": "registry/example-apps/default/dashboard-1/components/ui/badge.tsx",
|
|
76
|
-
"type": "registry:ui",
|
|
77
|
-
"target": "components/example-apps/dashboard-1/components/ui/badge.tsx",
|
|
78
|
-
"content": "import { mergeProps } from \"@base-ui/react/merge-props\"\nimport { useRender } from \"@base-ui/react/use-render\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\nimport { cn } from \"../../lib/utils\"\n\nconst badgeVariants = cva(\n \"group/badge inline-flex h-5 w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-4xl border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-all transition-colors focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3!\",\n {\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground [a]:hover:bg-primary/80\",\n secondary:\n \"bg-secondary text-secondary-foreground [a]:hover:bg-secondary/80\",\n destructive:\n \"bg-destructive/10 text-destructive focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:focus-visible:ring-destructive/40 [a]:hover:bg-destructive/20\",\n outline:\n \"border-border text-foreground [a]:hover:bg-muted [a]:hover:text-muted-foreground\",\n ghost:\n \"hover:bg-muted hover:text-muted-foreground dark:hover:bg-muted/50\",\n link: \"text-primary underline-offset-4 hover:underline\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n)\n\nfunction Badge({\n className,\n variant = \"default\",\n render,\n ...props\n}: useRender.ComponentProps<\"span\"> & VariantProps<typeof badgeVariants>) {\n return useRender({\n defaultTagName: \"span\",\n props: mergeProps<\"span\">(\n {\n className: cn(badgeVariants({ className, variant })),\n },\n props\n ),\n render,\n state: {\n slot: \"badge\",\n variant,\n },\n })\n}\n\nexport { Badge, badgeVariants }\n"
|
|
79
|
-
},
|
|
80
|
-
{
|
|
81
|
-
"path": "registry/example-apps/default/dashboard-1/components/ui/button.tsx",
|
|
82
|
-
"type": "registry:ui",
|
|
83
|
-
"target": "components/example-apps/dashboard-1/components/ui/button.tsx",
|
|
84
|
-
"content": "import { Button as ButtonPrimitive } from \"@base-ui/react/button\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\nimport { cn } from \"../../lib/utils\"\n\nconst buttonVariants = cva(\n \"group/button inline-flex shrink-0 items-center justify-center rounded-md border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n {\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground hover:bg-primary/80\",\n outline:\n \"border-border bg-background shadow-xs hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50\",\n secondary:\n \"bg-secondary text-secondary-foreground hover:bg-secondary/80 aria-expanded:bg-secondary aria-expanded:text-secondary-foreground\",\n ghost:\n \"hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:hover:bg-muted/50\",\n destructive:\n \"bg-destructive/10 text-destructive hover:bg-destructive/20 focus-visible:border-destructive/40 focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:hover:bg-destructive/30 dark:focus-visible:ring-destructive/40\",\n link: \"text-primary underline-offset-4 hover:underline\",\n },\n size: {\n default:\n \"h-9 gap-1.5 px-2.5 in-data-[slot=button-group]:rounded-md has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2\",\n xs: \"h-6 gap-1 rounded-[min(var(--radius-md),8px)] px-2 text-xs in-data-[slot=button-group]:rounded-md has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3\",\n sm: \"h-8 gap-1 rounded-[min(var(--radius-md),10px)] px-2.5 in-data-[slot=button-group]:rounded-md has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5\",\n lg: \"h-10 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-3 has-data-[icon=inline-start]:pl-3\",\n icon: \"size-9\",\n \"icon-xs\":\n \"size-6 rounded-[min(var(--radius-md),8px)] in-data-[slot=button-group]:rounded-md [&_svg:not([class*='size-'])]:size-3\",\n \"icon-sm\":\n \"size-8 rounded-[min(var(--radius-md),10px)] in-data-[slot=button-group]:rounded-md\",\n \"icon-lg\": \"size-10\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n }\n)\n\nfunction Button({\n className,\n variant = \"default\",\n size = \"default\",\n ...props\n}: ButtonPrimitive.Props & VariantProps<typeof buttonVariants>) {\n return (\n <ButtonPrimitive\n data-slot=\"button\"\n className={cn(buttonVariants({ variant, size, className }))}\n {...props}\n />\n )\n}\n\nexport { Button, buttonVariants }\n"
|
|
85
|
-
},
|
|
86
|
-
{
|
|
87
|
-
"path": "registry/example-apps/default/dashboard-1/components/ui/card.tsx",
|
|
88
|
-
"type": "registry:ui",
|
|
89
|
-
"target": "components/example-apps/dashboard-1/components/ui/card.tsx",
|
|
90
|
-
"content": "import * as React from \"react\"\n\nimport { cn } from \"../../lib/utils\"\n\nfunction Card({\n className,\n size = \"default\",\n ...props\n}: React.ComponentProps<\"div\"> & { size?: \"default\" | \"sm\" }) {\n return (\n <div\n data-slot=\"card\"\n data-size={size}\n className={cn(\n \"group/card flex flex-col gap-6 overflow-hidden rounded-xl bg-card py-6 text-sm text-card-foreground shadow-xs ring-1 ring-foreground/10 has-[>img:first-child]:pt-0 data-[size=sm]:gap-4 data-[size=sm]:py-4 *:[img:first-child]:rounded-t-xl *:[img:last-child]:rounded-b-xl\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CardHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-header\"\n className={cn(\n \"group/card-header @container/card-header grid auto-rows-min items-start gap-1 rounded-t-xl px-6 group-data-[size=sm]/card:px-4 has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto] [.border-b]:pb-6 group-data-[size=sm]/card:[.border-b]:pb-4\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CardTitle({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-title\"\n className={cn(\n \"text-base leading-normal font-medium group-data-[size=sm]/card:text-sm\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CardDescription({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-description\"\n className={cn(\"text-sm text-muted-foreground\", className)}\n {...props}\n />\n )\n}\n\nfunction CardAction({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-action\"\n className={cn(\n \"col-start-2 row-span-2 row-start-1 self-start justify-self-end\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CardContent({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-content\"\n className={cn(\"px-6 group-data-[size=sm]/card:px-4\", className)}\n {...props}\n />\n )\n}\n\nfunction CardFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-footer\"\n className={cn(\n \"flex items-center rounded-b-xl px-6 group-data-[size=sm]/card:px-4 [.border-t]:pt-6 group-data-[size=sm]/card:[.border-t]:pt-4\",\n className\n )}\n {...props}\n />\n )\n}\n\nexport {\n Card,\n CardHeader,\n CardFooter,\n CardTitle,\n CardAction,\n CardDescription,\n CardContent,\n}\n"
|
|
91
|
-
},
|
|
92
|
-
{
|
|
93
|
-
"path": "registry/example-apps/default/dashboard-1/components/ui/chart.tsx",
|
|
94
|
-
"type": "registry:ui",
|
|
95
|
-
"target": "components/example-apps/dashboard-1/components/ui/chart.tsx",
|
|
96
|
-
"content": "\"use client\"\n\nimport * as React from \"react\"\nimport * as RechartsPrimitive from \"recharts\"\n\nimport { cn } from \"../../lib/utils\"\n\n// Format: { THEME_NAME: CSS_SELECTOR }\nconst THEMES = { light: \"\", dark: \".dark\" } as const\n\nexport type ChartConfig = {\n [k in string]: {\n label?: React.ReactNode\n icon?: React.ComponentType\n } & (\n | { color?: string; theme?: never }\n | { color?: never; theme: Record<keyof typeof THEMES, string> }\n )\n}\n\ntype ChartContextProps = {\n config: ChartConfig\n}\n\nconst ChartContext = React.createContext<ChartContextProps | null>(null)\n\nfunction useChart() {\n const context = React.useContext(ChartContext)\n\n if (!context) {\n throw new Error(\"useChart must be used within a <ChartContainer />\")\n }\n\n return context\n}\n\nfunction ChartContainer({\n id,\n className,\n children,\n config,\n ...props\n}: React.ComponentProps<\"div\"> & {\n config: ChartConfig\n children: React.ComponentProps<\n typeof RechartsPrimitive.ResponsiveContainer\n >[\"children\"]\n}) {\n const uniqueId = React.useId()\n const chartId = `chart-${id || uniqueId.replace(/:/g, \"\")}`\n\n return (\n <ChartContext.Provider value={{ config }}>\n <div\n data-slot=\"chart\"\n data-chart={chartId}\n className={cn(\n \"flex aspect-video justify-center text-xs [&_.recharts-cartesian-axis-tick_text]:fill-muted-foreground [&_.recharts-cartesian-grid_line[stroke='#ccc']]:stroke-border/50 [&_.recharts-curve.recharts-tooltip-cursor]:stroke-border [&_.recharts-dot[stroke='#fff']]:stroke-transparent [&_.recharts-layer]:outline-hidden [&_.recharts-polar-grid_[stroke='#ccc']]:stroke-border [&_.recharts-radial-bar-background-sector]:fill-muted [&_.recharts-rectangle.recharts-tooltip-cursor]:fill-muted [&_.recharts-reference-line_[stroke='#ccc']]:stroke-border [&_.recharts-sector]:outline-hidden [&_.recharts-sector[stroke='#fff']]:stroke-transparent [&_.recharts-surface]:outline-hidden\",\n className\n )}\n {...props}\n >\n <ChartStyle id={chartId} config={config} />\n <RechartsPrimitive.ResponsiveContainer>\n {children}\n </RechartsPrimitive.ResponsiveContainer>\n </div>\n </ChartContext.Provider>\n )\n}\n\nconst ChartStyle = ({ id, config }: { id: string; config: ChartConfig }) => {\n const colorConfig = Object.entries(config).filter(\n ([, config]) => config.theme || config.color\n )\n\n if (!colorConfig.length) {\n return null\n }\n\n return (\n <style\n dangerouslySetInnerHTML={{\n __html: Object.entries(THEMES)\n .map(\n ([theme, prefix]) => `\n${prefix} [data-chart=${id}] {\n${colorConfig\n .map(([key, itemConfig]) => {\n const color =\n itemConfig.theme?.[theme as keyof typeof itemConfig.theme] ||\n itemConfig.color\n return color ? ` --color-${key}: ${color};` : null\n })\n .join(\"\\n\")}\n}\n`\n )\n .join(\"\\n\"),\n }}\n />\n )\n}\n\nconst ChartTooltip = RechartsPrimitive.Tooltip\n\nfunction ChartTooltipContent({\n active,\n payload,\n className,\n indicator = \"dot\",\n hideLabel = false,\n hideIndicator = false,\n label,\n labelFormatter,\n labelClassName,\n formatter,\n color,\n nameKey,\n labelKey,\n}: React.ComponentProps<typeof RechartsPrimitive.Tooltip> &\n React.ComponentProps<\"div\"> & {\n hideLabel?: boolean\n hideIndicator?: boolean\n indicator?: \"line\" | \"dot\" | \"dashed\"\n nameKey?: string\n labelKey?: string\n }) {\n const { config } = useChart()\n\n const tooltipLabel = React.useMemo(() => {\n if (hideLabel || !payload?.length) {\n return null\n }\n\n const [item] = payload\n const key = `${labelKey || item?.dataKey || item?.name || \"value\"}`\n const itemConfig = getPayloadConfigFromPayload(config, item, key)\n const value =\n !labelKey && typeof label === \"string\"\n ? config[label as keyof typeof config]?.label || label\n : itemConfig?.label\n\n if (labelFormatter) {\n return (\n <div className={cn(\"font-medium\", labelClassName)}>\n {labelFormatter(value, payload)}\n </div>\n )\n }\n\n if (!value) {\n return null\n }\n\n return <div className={cn(\"font-medium\", labelClassName)}>{value}</div>\n }, [\n label,\n labelFormatter,\n payload,\n hideLabel,\n labelClassName,\n config,\n labelKey,\n ])\n\n if (!active || !payload?.length) {\n return null\n }\n\n const nestLabel = payload.length === 1 && indicator !== \"dot\"\n\n return (\n <div\n className={cn(\n \"grid min-w-[8rem] items-start gap-1.5 rounded-lg border border-border/50 bg-background px-2.5 py-1.5 text-xs shadow-xl\",\n className\n )}\n >\n {!nestLabel ? tooltipLabel : null}\n <div className=\"grid gap-1.5\">\n {payload\n .filter((item) => item.type !== \"none\")\n .map((item, index) => {\n const key = `${nameKey || item.name || item.dataKey || \"value\"}`\n const itemConfig = getPayloadConfigFromPayload(config, item, key)\n const indicatorColor = color || item.payload.fill || item.color\n\n return (\n <div\n key={item.dataKey}\n className={cn(\n \"flex w-full flex-wrap items-stretch gap-2 [&>svg]:h-2.5 [&>svg]:w-2.5 [&>svg]:text-muted-foreground\",\n indicator === \"dot\" && \"items-center\"\n )}\n >\n {formatter && item?.value !== undefined && item.name ? (\n formatter(item.value, item.name, item, index, item.payload)\n ) : (\n <>\n {itemConfig?.icon ? (\n <itemConfig.icon />\n ) : (\n !hideIndicator && (\n <div\n className={cn(\n \"shrink-0 rounded-[2px] border-(--color-border) bg-(--color-bg)\",\n {\n \"h-2.5 w-2.5\": indicator === \"dot\",\n \"w-1\": indicator === \"line\",\n \"w-0 border-[1.5px] border-dashed bg-transparent\":\n indicator === \"dashed\",\n \"my-0.5\": nestLabel && indicator === \"dashed\",\n }\n )}\n style={\n {\n \"--color-bg\": indicatorColor,\n \"--color-border\": indicatorColor,\n } as any\n }\n />\n )\n )}\n <div\n className={cn(\n \"flex flex-1 justify-between leading-none\",\n nestLabel ? \"items-end\" : \"items-center\"\n )}\n >\n <div className=\"grid gap-1.5\">\n {nestLabel ? tooltipLabel : null}\n <span className=\"text-muted-foreground\">\n {itemConfig?.label || item.name}\n </span>\n </div>\n {item.value && (\n <span className=\"font-mono font-medium text-foreground tabular-nums\">\n {item.value.toLocaleString()}\n </span>\n )}\n </div>\n </>\n )}\n </div>\n )\n })}\n </div>\n </div>\n )\n}\n\nconst ChartLegend = RechartsPrimitive.Legend\n\nfunction ChartLegendContent({\n className,\n hideIcon = false,\n payload,\n verticalAlign = \"bottom\",\n nameKey,\n}: React.ComponentProps<\"div\"> &\n Pick<RechartsPrimitive.LegendProps, \"payload\" | \"verticalAlign\"> & {\n hideIcon?: boolean\n nameKey?: string\n }) {\n const { config } = useChart()\n\n if (!payload?.length) {\n return null\n }\n\n return (\n <div\n className={cn(\n \"flex items-center justify-center gap-4\",\n verticalAlign === \"top\" ? \"pb-3\" : \"pt-3\",\n className\n )}\n >\n {payload\n .filter((item) => item.type !== \"none\")\n .map((item) => {\n const key = `${nameKey || item.dataKey || \"value\"}`\n const itemConfig = getPayloadConfigFromPayload(config, item, key)\n\n return (\n <div\n key={item.value}\n className={cn(\n \"flex items-center gap-1.5 [&>svg]:h-3 [&>svg]:w-3 [&>svg]:text-muted-foreground\"\n )}\n >\n {itemConfig?.icon && !hideIcon ? (\n <itemConfig.icon />\n ) : (\n <div\n className=\"h-2 w-2 shrink-0 rounded-[2px]\"\n style={{\n backgroundColor: item.color,\n }}\n />\n )}\n {itemConfig?.label}\n </div>\n )\n })}\n </div>\n )\n}\n\nfunction getPayloadConfigFromPayload(\n config: ChartConfig,\n payload: unknown,\n key: string\n) {\n if (typeof payload !== \"object\" || payload === null) {\n return undefined\n }\n\n const payloadPayload =\n \"payload\" in payload &&\n typeof payload.payload === \"object\" &&\n payload.payload !== null\n ? payload.payload\n : undefined\n\n let configLabelKey: string = key\n\n if (\n key in payload &&\n typeof payload[key as keyof typeof payload] === \"string\"\n ) {\n configLabelKey = payload[key as keyof typeof payload] as string\n } else if (\n payloadPayload &&\n key in payloadPayload &&\n typeof payloadPayload[key as keyof typeof payloadPayload] === \"string\"\n ) {\n configLabelKey = payloadPayload[\n key as keyof typeof payloadPayload\n ] as string\n }\n\n return configLabelKey in config\n ? config[configLabelKey]\n : config[key as keyof typeof config]\n}\n\nexport {\n ChartContainer,\n ChartTooltip,\n ChartTooltipContent,\n ChartLegend,\n ChartLegendContent,\n ChartStyle,\n}\n"
|
|
97
|
-
},
|
|
98
|
-
{
|
|
99
|
-
"path": "registry/example-apps/default/dashboard-1/components/ui/checkbox.tsx",
|
|
100
|
-
"type": "registry:ui",
|
|
101
|
-
"target": "components/example-apps/dashboard-1/components/ui/checkbox.tsx",
|
|
102
|
-
"content": "\"use client\"\n\nimport { Checkbox as CheckboxPrimitive } from \"@base-ui/react/checkbox\"\nimport { Tick02Icon } from \"@hugeicons/core-free-icons\"\nimport { HugeiconsIcon } from \"@hugeicons/react\"\n\nimport { cn } from \"../../lib/utils\"\n\nfunction Checkbox({ className, ...props }: CheckboxPrimitive.Root.Props) {\n return (\n <CheckboxPrimitive.Root\n data-slot=\"checkbox\"\n className={cn(\n \"peer relative flex size-4 shrink-0 items-center justify-center rounded-[4px] border border-input shadow-xs transition-shadow outline-none group-has-disabled/field:opacity-50 after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-[3px] aria-invalid:ring-destructive/20 aria-invalid:aria-checked:border-primary data-checked:border-primary data-checked:bg-primary data-checked:text-primary-foreground dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 dark:data-checked:bg-primary\",\n className\n )}\n {...props}\n >\n <CheckboxPrimitive.Indicator\n data-slot=\"checkbox-indicator\"\n className=\"grid place-content-center text-current transition-none [&>svg]:size-3.5\"\n >\n <HugeiconsIcon icon={Tick02Icon} strokeWidth={2} />\n </CheckboxPrimitive.Indicator>\n </CheckboxPrimitive.Root>\n )\n}\n\nexport { Checkbox }\n"
|
|
103
|
-
},
|
|
104
|
-
{
|
|
105
|
-
"path": "registry/example-apps/default/dashboard-1/components/ui/collapsible.tsx",
|
|
106
|
-
"type": "registry:ui",
|
|
107
|
-
"target": "components/example-apps/dashboard-1/components/ui/collapsible.tsx",
|
|
108
|
-
"content": "\"use client\"\n\nimport { Collapsible as CollapsiblePrimitive } from \"@base-ui/react/collapsible\"\n\nfunction Collapsible({ ...props }: CollapsiblePrimitive.Root.Props) {\n return <CollapsiblePrimitive.Root data-slot=\"collapsible\" {...props} />\n}\n\nfunction CollapsibleTrigger({ ...props }: CollapsiblePrimitive.Trigger.Props) {\n return (\n <CollapsiblePrimitive.Trigger data-slot=\"collapsible-trigger\" {...props} />\n )\n}\n\nfunction CollapsibleContent({ ...props }: CollapsiblePrimitive.Panel.Props) {\n return (\n <CollapsiblePrimitive.Panel data-slot=\"collapsible-content\" {...props} />\n )\n}\n\nexport { Collapsible, CollapsibleTrigger, CollapsibleContent }\n"
|
|
109
|
-
},
|
|
110
|
-
{
|
|
111
|
-
"path": "registry/example-apps/default/dashboard-1/components/ui/combobox.tsx",
|
|
112
|
-
"type": "registry:ui",
|
|
113
|
-
"target": "components/example-apps/dashboard-1/components/ui/combobox.tsx",
|
|
114
|
-
"content": "\"use client\"\n\nimport * as React from \"react\"\nimport { Combobox as ComboboxPrimitive } from \"@base-ui/react\"\nimport {\n ArrowDown01Icon,\n Cancel01Icon,\n Tick02Icon,\n} from \"@hugeicons/core-free-icons\"\nimport { HugeiconsIcon } from \"@hugeicons/react\"\n\nimport { cn } from \"../../lib/utils\"\nimport { Button } from \"./button\"\nimport {\n InputGroup,\n InputGroupAddon,\n InputGroupButton,\n InputGroupInput,\n} from \"./input-group\"\n\nconst Combobox = ComboboxPrimitive.Root\n\nfunction ComboboxValue({ ...props }: ComboboxPrimitive.Value.Props) {\n return <ComboboxPrimitive.Value data-slot=\"combobox-value\" {...props} />\n}\n\nfunction ComboboxTrigger({\n className,\n children,\n ...props\n}: ComboboxPrimitive.Trigger.Props) {\n return (\n <ComboboxPrimitive.Trigger\n data-slot=\"combobox-trigger\"\n className={cn(\"[&_svg:not([class*='size-'])]:size-4\", className)}\n {...props}\n >\n {children}\n <HugeiconsIcon\n icon={ArrowDown01Icon}\n strokeWidth={2}\n className=\"pointer-events-none size-4 text-muted-foreground\"\n />\n </ComboboxPrimitive.Trigger>\n )\n}\n\nfunction ComboboxClear({ className, ...props }: ComboboxPrimitive.Clear.Props) {\n return (\n <ComboboxPrimitive.Clear\n data-slot=\"combobox-clear\"\n render={<InputGroupButton variant=\"ghost\" size=\"icon-xs\" />}\n className={cn(className)}\n {...props}\n >\n <HugeiconsIcon\n icon={Cancel01Icon}\n strokeWidth={2}\n className=\"pointer-events-none\"\n />\n </ComboboxPrimitive.Clear>\n )\n}\n\nfunction ComboboxInput({\n className,\n children,\n disabled = false,\n showTrigger = true,\n showClear = false,\n ...props\n}: ComboboxPrimitive.Input.Props & {\n showTrigger?: boolean\n showClear?: boolean\n}) {\n return (\n <InputGroup className={cn(\"w-auto\", className)}>\n <ComboboxPrimitive.Input\n render={<InputGroupInput disabled={disabled} />}\n {...props}\n />\n <InputGroupAddon align=\"inline-end\">\n {showTrigger && (\n <InputGroupButton\n size=\"icon-xs\"\n variant=\"ghost\"\n render={<ComboboxTrigger />}\n data-slot=\"input-group-button\"\n className=\"group-has-data-[slot=combobox-clear]/input-group:hidden data-pressed:bg-transparent\"\n disabled={disabled}\n />\n )}\n {showClear && <ComboboxClear disabled={disabled} />}\n </InputGroupAddon>\n {children}\n </InputGroup>\n )\n}\n\nfunction ComboboxContent({\n className,\n side = \"bottom\",\n sideOffset = 6,\n align = \"start\",\n alignOffset = 0,\n anchor,\n ...props\n}: ComboboxPrimitive.Popup.Props &\n Pick<\n ComboboxPrimitive.Positioner.Props,\n \"side\" | \"align\" | \"sideOffset\" | \"alignOffset\" | \"anchor\"\n >) {\n return (\n <ComboboxPrimitive.Portal>\n <ComboboxPrimitive.Positioner\n side={side}\n sideOffset={sideOffset}\n align={align}\n alignOffset={alignOffset}\n anchor={anchor}\n className=\"isolate z-50\"\n >\n <ComboboxPrimitive.Popup\n data-slot=\"combobox-content\"\n data-chips={!!anchor}\n className={cn(\n \"data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-open:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 group/combobox-content relative max-h-(--available-height) max-h-72 w-(--anchor-width) max-w-(--available-width) min-w-36 min-w-[calc(var(--anchor-width)+--spacing(7))] origin-(--transform-origin) overflow-hidden rounded-md bg-popover text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 data-[chips=true]:min-w-(--anchor-width) *:data-[slot=input-group]:m-1 *:data-[slot=input-group]:mb-0 *:data-[slot=input-group]:h-8 *:data-[slot=input-group]:border-input/30 *:data-[slot=input-group]:bg-input/30 *:data-[slot=input-group]:shadow-none\",\n className\n )}\n {...props}\n />\n </ComboboxPrimitive.Positioner>\n </ComboboxPrimitive.Portal>\n )\n}\n\nfunction ComboboxList({ className, ...props }: ComboboxPrimitive.List.Props) {\n return (\n <ComboboxPrimitive.List\n data-slot=\"combobox-list\"\n className={cn(\n \"no-scrollbar max-h-[min(calc(--spacing(72)---spacing(9)),calc(var(--available-height)---spacing(9)))] scroll-py-1 overflow-y-auto overscroll-contain p-1 data-empty:p-0\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction ComboboxItem({\n className,\n children,\n ...props\n}: ComboboxPrimitive.Item.Props) {\n return (\n <ComboboxPrimitive.Item\n data-slot=\"combobox-item\"\n className={cn(\n \"relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-highlighted:bg-accent data-highlighted:text-accent-foreground not-data-[variant=destructive]:data-highlighted:**:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className\n )}\n {...props}\n >\n {children}\n <ComboboxPrimitive.ItemIndicator\n render={\n <span className=\"pointer-events-none absolute right-2 flex size-4 items-center justify-center\" />\n }\n >\n <HugeiconsIcon\n icon={Tick02Icon}\n strokeWidth={2}\n className=\"pointer-events-none\"\n />\n </ComboboxPrimitive.ItemIndicator>\n </ComboboxPrimitive.Item>\n )\n}\n\nfunction ComboboxGroup({ className, ...props }: ComboboxPrimitive.Group.Props) {\n return (\n <ComboboxPrimitive.Group\n data-slot=\"combobox-group\"\n className={cn(className)}\n {...props}\n />\n )\n}\n\nfunction ComboboxLabel({\n className,\n ...props\n}: ComboboxPrimitive.GroupLabel.Props) {\n return (\n <ComboboxPrimitive.GroupLabel\n data-slot=\"combobox-label\"\n className={cn(\"px-2 py-1.5 text-xs text-muted-foreground\", className)}\n {...props}\n />\n )\n}\n\nfunction ComboboxCollection({ ...props }: ComboboxPrimitive.Collection.Props) {\n return (\n <ComboboxPrimitive.Collection data-slot=\"combobox-collection\" {...props} />\n )\n}\n\nfunction ComboboxEmpty({ className, ...props }: ComboboxPrimitive.Empty.Props) {\n return (\n <ComboboxPrimitive.Empty\n data-slot=\"combobox-empty\"\n className={cn(\n \"hidden w-full justify-center py-2 text-center text-sm text-muted-foreground group-data-empty/combobox-content:flex\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction ComboboxSeparator({\n className,\n ...props\n}: ComboboxPrimitive.Separator.Props) {\n return (\n <ComboboxPrimitive.Separator\n data-slot=\"combobox-separator\"\n className={cn(\"-mx-1 my-1 h-px bg-border\", className)}\n {...props}\n />\n )\n}\n\nfunction ComboboxChips({\n className,\n ...props\n}: React.ComponentPropsWithRef<typeof ComboboxPrimitive.Chips> &\n ComboboxPrimitive.Chips.Props) {\n return (\n <ComboboxPrimitive.Chips\n data-slot=\"combobox-chips\"\n className={cn(\n \"flex min-h-9 flex-wrap items-center gap-1.5 rounded-md border border-input bg-transparent bg-clip-padding px-2.5 py-1.5 text-sm shadow-xs transition-[color,box-shadow] focus-within:border-ring focus-within:ring-[3px] focus-within:ring-ring/50 has-aria-invalid:border-destructive has-aria-invalid:ring-[3px] has-aria-invalid:ring-destructive/20 has-data-[slot=combobox-chip]:px-1.5 dark:bg-input/30 dark:has-aria-invalid:border-destructive/50 dark:has-aria-invalid:ring-destructive/40\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction ComboboxChip({\n className,\n children,\n showRemove = true,\n ...props\n}: ComboboxPrimitive.Chip.Props & {\n showRemove?: boolean\n}) {\n return (\n <ComboboxPrimitive.Chip\n data-slot=\"combobox-chip\"\n className={cn(\n \"flex h-[calc(--spacing(5.5))] w-fit items-center justify-center gap-1 rounded-sm bg-muted px-1.5 text-xs font-medium whitespace-nowrap text-foreground has-disabled:pointer-events-none has-disabled:cursor-not-allowed has-disabled:opacity-50 has-data-[slot=combobox-chip-remove]:pr-0\",\n className\n )}\n {...props}\n >\n {children}\n {showRemove && (\n <ComboboxPrimitive.ChipRemove\n render={<Button variant=\"ghost\" size=\"icon-xs\" />}\n className=\"-ml-1 opacity-50 hover:opacity-100\"\n data-slot=\"combobox-chip-remove\"\n >\n <HugeiconsIcon\n icon={Cancel01Icon}\n strokeWidth={2}\n className=\"pointer-events-none\"\n />\n </ComboboxPrimitive.ChipRemove>\n )}\n </ComboboxPrimitive.Chip>\n )\n}\n\nfunction ComboboxChipsInput({\n className,\n children,\n ...props\n}: ComboboxPrimitive.Input.Props) {\n return (\n <ComboboxPrimitive.Input\n data-slot=\"combobox-chip-input\"\n className={cn(\"min-w-16 flex-1 outline-none\", className)}\n {...props}\n />\n )\n}\n\nfunction useComboboxAnchor() {\n return React.useRef<HTMLDivElement | null>(null)\n}\n\nexport {\n Combobox,\n ComboboxInput,\n ComboboxContent,\n ComboboxList,\n ComboboxItem,\n ComboboxGroup,\n ComboboxLabel,\n ComboboxCollection,\n ComboboxEmpty,\n ComboboxSeparator,\n ComboboxChips,\n ComboboxChip,\n ComboboxChipsInput,\n ComboboxTrigger,\n ComboboxValue,\n useComboboxAnchor,\n}\n"
|
|
115
|
-
},
|
|
116
|
-
{
|
|
117
|
-
"path": "registry/example-apps/default/dashboard-1/components/ui/dropdown-menu.tsx",
|
|
118
|
-
"type": "registry:ui",
|
|
119
|
-
"target": "components/example-apps/dashboard-1/components/ui/dropdown-menu.tsx",
|
|
120
|
-
"content": "\"use client\"\n\nimport * as React from \"react\"\nimport { Menu as MenuPrimitive } from \"@base-ui/react/menu\"\nimport { ArrowRight01Icon, Tick02Icon } from \"@hugeicons/core-free-icons\"\nimport { HugeiconsIcon } from \"@hugeicons/react\"\n\nimport { cn } from \"../../lib/utils\"\n\nfunction DropdownMenu({ ...props }: MenuPrimitive.Root.Props) {\n return <MenuPrimitive.Root data-slot=\"dropdown-menu\" {...props} />\n}\n\nfunction DropdownMenuPortal({ ...props }: MenuPrimitive.Portal.Props) {\n return <MenuPrimitive.Portal data-slot=\"dropdown-menu-portal\" {...props} />\n}\n\nfunction DropdownMenuTrigger({ ...props }: MenuPrimitive.Trigger.Props) {\n return <MenuPrimitive.Trigger data-slot=\"dropdown-menu-trigger\" {...props} />\n}\n\nfunction DropdownMenuContent({\n align = \"start\",\n alignOffset = 0,\n side = \"bottom\",\n sideOffset = 4,\n className,\n ...props\n}: MenuPrimitive.Popup.Props &\n Pick<\n MenuPrimitive.Positioner.Props,\n \"align\" | \"alignOffset\" | \"side\" | \"sideOffset\"\n >) {\n return (\n <MenuPrimitive.Portal>\n <MenuPrimitive.Positioner\n className=\"isolate z-50 outline-none\"\n align={align}\n alignOffset={alignOffset}\n side={side}\n sideOffset={sideOffset}\n >\n <MenuPrimitive.Popup\n data-slot=\"dropdown-menu-content\"\n className={cn(\n \"data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-open:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--available-height) w-(--anchor-width) min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-md bg-popover p-1 text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 outline-none data-closed:overflow-hidden\",\n className\n )}\n {...props}\n />\n </MenuPrimitive.Positioner>\n </MenuPrimitive.Portal>\n )\n}\n\nfunction DropdownMenuGroup({ ...props }: MenuPrimitive.Group.Props) {\n return <MenuPrimitive.Group data-slot=\"dropdown-menu-group\" {...props} />\n}\n\nfunction DropdownMenuLabel({\n className,\n inset,\n ...props\n}: MenuPrimitive.GroupLabel.Props & {\n inset?: boolean\n}) {\n return (\n <MenuPrimitive.GroupLabel\n data-slot=\"dropdown-menu-label\"\n data-inset={inset}\n className={cn(\n \"px-2 py-1.5 text-xs font-medium text-muted-foreground data-[inset]:pl-8\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction DropdownMenuItem({\n className,\n inset,\n variant = \"default\",\n ...props\n}: MenuPrimitive.Item.Props & {\n inset?: boolean\n variant?: \"default\" | \"destructive\"\n}) {\n return (\n <MenuPrimitive.Item\n data-slot=\"dropdown-menu-item\"\n data-inset={inset}\n data-variant={variant}\n className={cn(\n \"group/dropdown-menu-item relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-disabled:pointer-events-none data-disabled:opacity-50 data-[inset]:pl-8 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-[variant=destructive]:*:[svg]:text-destructive\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction DropdownMenuSub({ ...props }: MenuPrimitive.SubmenuRoot.Props) {\n return <MenuPrimitive.SubmenuRoot data-slot=\"dropdown-menu-sub\" {...props} />\n}\n\nfunction DropdownMenuSubTrigger({\n className,\n inset,\n children,\n ...props\n}: MenuPrimitive.SubmenuTrigger.Props & {\n inset?: boolean\n}) {\n return (\n <MenuPrimitive.SubmenuTrigger\n data-slot=\"dropdown-menu-sub-trigger\"\n data-inset={inset}\n className={cn(\n \"flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-open:bg-accent data-open:text-accent-foreground data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className\n )}\n {...props}\n >\n {children}\n <HugeiconsIcon\n icon={ArrowRight01Icon}\n strokeWidth={2}\n className=\"ml-auto\"\n />\n </MenuPrimitive.SubmenuTrigger>\n )\n}\n\nfunction DropdownMenuSubContent({\n align = \"start\",\n alignOffset = -3,\n side = \"right\",\n sideOffset = 0,\n className,\n ...props\n}: React.ComponentProps<typeof DropdownMenuContent>) {\n return (\n <DropdownMenuContent\n data-slot=\"dropdown-menu-sub-content\"\n className={cn(\n \"data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-open:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 w-auto min-w-[96px] rounded-md bg-popover p-1 text-popover-foreground shadow-lg ring-1 ring-foreground/10 duration-100\",\n className\n )}\n align={align}\n alignOffset={alignOffset}\n side={side}\n sideOffset={sideOffset}\n {...props}\n />\n )\n}\n\nfunction DropdownMenuCheckboxItem({\n className,\n children,\n checked,\n ...props\n}: MenuPrimitive.CheckboxItem.Props) {\n return (\n <MenuPrimitive.CheckboxItem\n data-slot=\"dropdown-menu-checkbox-item\"\n className={cn(\n \"relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className\n )}\n checked={checked}\n {...props}\n >\n <span\n className=\"pointer-events-none absolute right-2 flex items-center justify-center\"\n data-slot=\"dropdown-menu-checkbox-item-indicator\"\n >\n <MenuPrimitive.CheckboxItemIndicator>\n <HugeiconsIcon icon={Tick02Icon} strokeWidth={2} />\n </MenuPrimitive.CheckboxItemIndicator>\n </span>\n {children}\n </MenuPrimitive.CheckboxItem>\n )\n}\n\nfunction DropdownMenuRadioGroup({ ...props }: MenuPrimitive.RadioGroup.Props) {\n return (\n <MenuPrimitive.RadioGroup\n data-slot=\"dropdown-menu-radio-group\"\n {...props}\n />\n )\n}\n\nfunction DropdownMenuRadioItem({\n className,\n children,\n ...props\n}: MenuPrimitive.RadioItem.Props) {\n return (\n <MenuPrimitive.RadioItem\n data-slot=\"dropdown-menu-radio-item\"\n className={cn(\n \"relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className\n )}\n {...props}\n >\n <span\n className=\"pointer-events-none absolute right-2 flex items-center justify-center\"\n data-slot=\"dropdown-menu-radio-item-indicator\"\n >\n <MenuPrimitive.RadioItemIndicator>\n <HugeiconsIcon icon={Tick02Icon} strokeWidth={2} />\n </MenuPrimitive.RadioItemIndicator>\n </span>\n {children}\n </MenuPrimitive.RadioItem>\n )\n}\n\nfunction DropdownMenuSeparator({\n className,\n ...props\n}: MenuPrimitive.Separator.Props) {\n return (\n <MenuPrimitive.Separator\n data-slot=\"dropdown-menu-separator\"\n className={cn(\"-mx-1 my-1 h-px bg-border\", className)}\n {...props}\n />\n )\n}\n\nfunction DropdownMenuShortcut({\n className,\n ...props\n}: React.ComponentProps<\"span\">) {\n return (\n <span\n data-slot=\"dropdown-menu-shortcut\"\n className={cn(\n \"ml-auto text-xs tracking-widest text-muted-foreground group-focus/dropdown-menu-item:text-accent-foreground\",\n className\n )}\n {...props}\n />\n )\n}\n\nexport {\n DropdownMenu,\n DropdownMenuPortal,\n DropdownMenuTrigger,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuLabel,\n DropdownMenuItem,\n DropdownMenuCheckboxItem,\n DropdownMenuRadioGroup,\n DropdownMenuRadioItem,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuSub,\n DropdownMenuSubTrigger,\n DropdownMenuSubContent,\n}\n"
|
|
121
|
-
},
|
|
122
|
-
{
|
|
123
|
-
"path": "registry/example-apps/default/dashboard-1/components/ui/field.tsx",
|
|
124
|
-
"type": "registry:ui",
|
|
125
|
-
"target": "components/example-apps/dashboard-1/components/ui/field.tsx",
|
|
126
|
-
"content": "\"use client\"\n\nimport { useMemo, type ComponentPropsWithoutRef, type ReactNode } from \"react\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\nimport { cn } from \"../../lib/utils\"\nimport { Label } from \"./label\"\nimport { Separator } from \"./separator\"\n\nfunction FieldSet({\n className,\n ...props\n}: ComponentPropsWithoutRef<\"fieldset\">) {\n return (\n <fieldset\n data-slot=\"field-set\"\n className={cn(\n \"flex flex-col gap-6 has-[>[data-slot=checkbox-group]]:gap-3 has-[>[data-slot=radio-group]]:gap-3\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction FieldLegend({\n className,\n variant = \"legend\",\n ...props\n}: ComponentPropsWithoutRef<\"legend\"> & { variant?: \"legend\" | \"label\" }) {\n return (\n <legend\n data-slot=\"field-legend\"\n data-variant={variant}\n className={cn(\n \"mb-3 font-medium data-[variant=label]:text-sm data-[variant=legend]:text-base\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction FieldGroup({ className, ...props }: ComponentPropsWithoutRef<\"div\">) {\n return (\n <div\n data-slot=\"field-group\"\n className={cn(\n \"group/field-group @container/field-group flex w-full flex-col gap-7 data-[slot=checkbox-group]:gap-3 [&>[data-slot=field-group]]:gap-4\",\n className\n )}\n {...props}\n />\n )\n}\n\nconst fieldVariants = cva(\n \"group/field flex w-full gap-3 data-[invalid=true]:text-destructive\",\n {\n variants: {\n orientation: {\n vertical: \"flex-col [&>*]:w-full [&>.sr-only]:w-auto\",\n horizontal:\n \"flex-row items-center has-[>[data-slot=field-content]]:items-start [&>[data-slot=field-label]]:flex-auto has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px\",\n responsive:\n \"flex-col @md/field-group:flex-row @md/field-group:items-center @md/field-group:has-[>[data-slot=field-content]]:items-start [&>*]:w-full @md/field-group:[&>*]:w-auto [&>.sr-only]:w-auto @md/field-group:[&>[data-slot=field-label]]:flex-auto @md/field-group:has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px\",\n },\n },\n defaultVariants: {\n orientation: \"vertical\",\n },\n }\n)\n\nfunction Field({\n className,\n orientation = \"vertical\",\n ...props\n}: ComponentPropsWithoutRef<\"div\"> & VariantProps<typeof fieldVariants>) {\n return (\n <div\n role=\"group\"\n data-slot=\"field\"\n data-orientation={orientation}\n className={cn(fieldVariants({ orientation }), className)}\n {...props}\n />\n )\n}\n\nfunction FieldContent({\n className,\n ...props\n}: ComponentPropsWithoutRef<\"div\">) {\n return (\n <div\n data-slot=\"field-content\"\n className={cn(\n \"group/field-content flex flex-1 flex-col gap-1 leading-snug\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction FieldLabel({\n className,\n ...props\n}: ComponentPropsWithoutRef<typeof Label>) {\n return (\n <Label\n data-slot=\"field-label\"\n className={cn(\n \"group/field-label peer/field-label flex w-fit gap-2 leading-snug group-data-[disabled=true]/field:opacity-50 has-data-checked:border-primary has-data-checked:bg-primary/5 has-[>[data-slot=field]]:rounded-md has-[>[data-slot=field]]:border dark:has-data-checked:bg-primary/10 [&>*]:data-[slot=field]:p-3\",\n \"has-[>[data-slot=field]]:w-full has-[>[data-slot=field]]:flex-col\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction FieldTitle({ className, ...props }: ComponentPropsWithoutRef<\"div\">) {\n return (\n <div\n data-slot=\"field-label\"\n className={cn(\n \"flex w-fit items-center gap-2 text-sm leading-snug font-medium group-data-[disabled=true]/field:opacity-50\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction FieldDescription({\n className,\n ...props\n}: ComponentPropsWithoutRef<\"p\">) {\n return (\n <p\n data-slot=\"field-description\"\n className={cn(\n \"text-left text-sm leading-normal font-normal text-muted-foreground group-has-[[data-orientation=horizontal]]/field:text-balance [[data-variant=legend]+&]:-mt-1.5\",\n \"last:mt-0 nth-last-2:-mt-1\",\n \"[&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction FieldSeparator({\n children,\n className,\n ...props\n}: ComponentPropsWithoutRef<\"div\"> & {\n children?: ReactNode\n}) {\n return (\n <div\n data-slot=\"field-separator\"\n data-content={!!children}\n className={cn(\n \"relative -my-2 h-5 text-sm group-data-[variant=outline]/field-group:-mb-2\",\n className\n )}\n {...props}\n >\n <Separator className=\"absolute inset-0 top-1/2\" />\n {children && (\n <span\n className=\"relative mx-auto block w-fit bg-background px-2 text-muted-foreground\"\n data-slot=\"field-separator-content\"\n >\n {children}\n </span>\n )}\n </div>\n )\n}\n\nfunction FieldError({\n className,\n children,\n errors,\n ...props\n}: ComponentPropsWithoutRef<\"div\"> & {\n errors?: Array<{ message?: string } | undefined>\n}) {\n const content = useMemo(() => {\n if (children) {\n return children\n }\n\n if (!errors?.length) {\n return null\n }\n\n const uniqueErrors = [\n ...new Map(errors.map((error) => [error?.message, error])).values(),\n ]\n\n if (uniqueErrors?.length == 1) {\n return uniqueErrors[0]?.message\n }\n\n return (\n <ul className=\"ml-4 flex list-disc flex-col gap-1\">\n {uniqueErrors.map(\n (error, index) =>\n error?.message && <li key={index}>{error.message}</li>\n )}\n </ul>\n )\n }, [children, errors])\n\n if (!content) {\n return null\n }\n\n return (\n <div\n role=\"alert\"\n data-slot=\"field-error\"\n className={cn(\"text-sm font-normal text-destructive\", className)}\n {...props}\n >\n {content}\n </div>\n )\n}\n\nexport {\n Field,\n FieldLabel,\n FieldDescription,\n FieldError,\n FieldGroup,\n FieldLegend,\n FieldSeparator,\n FieldSet,\n FieldContent,\n FieldTitle,\n}\n"
|
|
127
|
-
},
|
|
128
|
-
{
|
|
129
|
-
"path": "registry/example-apps/default/dashboard-1/components/ui/input-group.tsx",
|
|
130
|
-
"type": "registry:ui",
|
|
131
|
-
"target": "components/example-apps/dashboard-1/components/ui/input-group.tsx",
|
|
132
|
-
"content": "\"use client\"\n\nimport * as React from \"react\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\nimport { cn } from \"../../lib/utils\"\nimport { Button } from \"./button\"\nimport { Input } from \"./input\"\nimport { Textarea } from \"./textarea\"\n\nfunction InputGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"input-group\"\n role=\"group\"\n className={cn(\n \"group/input-group relative flex h-9 w-full min-w-0 items-center rounded-md border border-input shadow-xs transition-[color,box-shadow] outline-none has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot=input-group-control]:focus-visible]:ring-[3px] has-[[data-slot=input-group-control]:focus-visible]:ring-ring/50 has-[[data-slot][aria-invalid=true]]:border-destructive has-[[data-slot][aria-invalid=true]]:ring-[3px] has-[[data-slot][aria-invalid=true]]:ring-destructive/20 has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-start]]:h-auto has-[>[data-align=block-start]]:flex-col has-[>textarea]:h-auto dark:bg-input/30 dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40 has-[>[data-align=block-end]]:[&>input]:pt-3 has-[>[data-align=block-start]]:[&>input]:pb-3 has-[>[data-align=inline-end]]:[&>input]:pr-1.5 has-[>[data-align=inline-start]]:[&>input]:pl-1.5 [[data-slot=combobox-content]_&]:focus-within:border-inherit [[data-slot=combobox-content]_&]:focus-within:ring-0\",\n className\n )}\n {...props}\n />\n )\n}\n\nconst inputGroupAddonVariants = cva(\n \"flex h-auto cursor-text items-center justify-center gap-2 py-1.5 text-sm font-medium text-muted-foreground select-none group-data-[disabled=true]/input-group:opacity-50 [&>kbd]:rounded-[calc(var(--radius)-5px)] [&>svg:not([class*='size-'])]:size-4\",\n {\n variants: {\n align: {\n \"inline-start\":\n \"order-first pl-2 has-[>button]:ml-[-0.25rem] has-[>kbd]:ml-[-0.15rem]\",\n \"inline-end\":\n \"order-last pr-2 has-[>button]:mr-[-0.25rem] has-[>kbd]:mr-[-0.15rem]\",\n \"block-start\":\n \"order-first w-full justify-start px-2.5 pt-2 group-has-[>input]/input-group:pt-2 [.border-b]:pb-2\",\n \"block-end\":\n \"order-last w-full justify-start px-2.5 pb-2 group-has-[>input]/input-group:pb-2 [.border-t]:pt-2\",\n },\n },\n defaultVariants: {\n align: \"inline-start\",\n },\n }\n)\n\nfunction InputGroupAddon({\n className,\n align = \"inline-start\",\n ...props\n}: React.ComponentProps<\"div\"> & VariantProps<typeof inputGroupAddonVariants>) {\n return (\n <div\n role=\"group\"\n data-slot=\"input-group-addon\"\n data-align={align}\n className={cn(inputGroupAddonVariants({ align }), className)}\n onClick={(e) => {\n if ((e.target as HTMLElement).closest(\"button\")) {\n return\n }\n e.currentTarget.parentElement?.querySelector(\"input\")?.focus()\n }}\n {...props}\n />\n )\n}\n\nconst inputGroupButtonVariants = cva(\n \"flex items-center gap-2 text-sm shadow-none\",\n {\n variants: {\n size: {\n xs: \"h-6 gap-1 rounded-[calc(var(--radius)-5px)] px-1.5 [&>svg:not([class*='size-'])]:size-3.5\",\n sm: \"\",\n \"icon-xs\":\n \"size-6 rounded-[calc(var(--radius)-5px)] p-0 has-[>svg]:p-0\",\n \"icon-sm\": \"size-8 p-0 has-[>svg]:p-0\",\n },\n },\n defaultVariants: {\n size: \"xs\",\n },\n }\n)\n\nfunction InputGroupButton({\n className,\n type = \"button\",\n variant = \"ghost\",\n size = \"xs\",\n ...props\n}: Omit<React.ComponentProps<typeof Button>, \"size\" | \"type\"> &\n VariantProps<typeof inputGroupButtonVariants> & {\n type?: \"button\" | \"submit\" | \"reset\"\n }) {\n return (\n <Button\n type={type}\n data-size={size}\n variant={variant}\n className={cn(inputGroupButtonVariants({ size }), className)}\n {...props}\n />\n )\n}\n\nfunction InputGroupText({ className, ...props }: React.ComponentProps<\"span\">) {\n return (\n <span\n className={cn(\n \"flex items-center gap-2 text-sm text-muted-foreground [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction InputGroupInput({\n className,\n ...props\n}: React.ComponentProps<\"input\">) {\n return (\n <Input\n data-slot=\"input-group-control\"\n className={cn(\n \"flex-1 rounded-none border-0 bg-transparent shadow-none ring-0 focus-visible:ring-0 aria-invalid:ring-0 dark:bg-transparent\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction InputGroupTextarea({\n className,\n ...props\n}: React.ComponentProps<\"textarea\">) {\n return (\n <Textarea\n data-slot=\"input-group-control\"\n className={cn(\n \"flex-1 resize-none rounded-none border-0 bg-transparent py-2 shadow-none ring-0 focus-visible:ring-0 aria-invalid:ring-0 dark:bg-transparent\",\n className\n )}\n {...props}\n />\n )\n}\n\nexport {\n InputGroup,\n InputGroupAddon,\n InputGroupButton,\n InputGroupText,\n InputGroupInput,\n InputGroupTextarea,\n}\n"
|
|
133
|
-
},
|
|
134
|
-
{
|
|
135
|
-
"path": "registry/example-apps/default/dashboard-1/components/ui/input.tsx",
|
|
136
|
-
"type": "registry:ui",
|
|
137
|
-
"target": "components/example-apps/dashboard-1/components/ui/input.tsx",
|
|
138
|
-
"content": "import * as React from \"react\"\nimport { Input as InputPrimitive } from \"@base-ui/react/input\"\n\nimport { cn } from \"../../lib/utils\"\n\nfunction Input({ className, type, ...props }: React.ComponentProps<\"input\">) {\n return (\n <InputPrimitive\n type={type}\n data-slot=\"input\"\n className={cn(\n \"h-9 w-full min-w-0 rounded-md border border-input bg-transparent px-2.5 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-[3px] aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40\",\n className\n )}\n {...props}\n />\n )\n}\n\nexport { Input }\n"
|
|
139
|
-
},
|
|
140
|
-
{
|
|
141
|
-
"path": "registry/example-apps/default/dashboard-1/components/ui/label.tsx",
|
|
142
|
-
"type": "registry:ui",
|
|
143
|
-
"target": "components/example-apps/dashboard-1/components/ui/label.tsx",
|
|
144
|
-
"content": "\"use client\"\n\nimport * as React from \"react\"\n\nimport { cn } from \"../../lib/utils\"\n\nfunction Label({ className, ...props }: React.ComponentProps<\"label\">) {\n return (\n <label\n data-slot=\"label\"\n className={cn(\n \"flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50\",\n className\n )}\n {...props}\n />\n )\n}\n\nexport { Label }\n"
|
|
145
|
-
},
|
|
146
|
-
{
|
|
147
|
-
"path": "registry/example-apps/default/dashboard-1/components/ui/select.tsx",
|
|
148
|
-
"type": "registry:ui",
|
|
149
|
-
"target": "components/example-apps/dashboard-1/components/ui/select.tsx",
|
|
150
|
-
"content": "\"use client\"\n\nimport * as React from \"react\"\nimport { Select as SelectPrimitive } from \"@base-ui/react/select\"\nimport {\n ArrowDown01Icon,\n ArrowUp01Icon,\n Tick02Icon,\n UnfoldMoreIcon,\n} from \"@hugeicons/core-free-icons\"\nimport { HugeiconsIcon } from \"@hugeicons/react\"\n\nimport { cn } from \"../../lib/utils\"\n\nconst Select = SelectPrimitive.Root\n\nfunction SelectGroup({ className, ...props }: SelectPrimitive.Group.Props) {\n return (\n <SelectPrimitive.Group\n data-slot=\"select-group\"\n className={cn(\"scroll-my-1 p-1\", className)}\n {...props}\n />\n )\n}\n\nfunction SelectValue({ className, ...props }: SelectPrimitive.Value.Props) {\n return (\n <SelectPrimitive.Value\n data-slot=\"select-value\"\n className={cn(\"flex flex-1 text-left\", className)}\n {...props}\n />\n )\n}\n\nfunction SelectTrigger({\n className,\n size = \"default\",\n children,\n ...props\n}: SelectPrimitive.Trigger.Props & {\n size?: \"sm\" | \"default\"\n}) {\n return (\n <SelectPrimitive.Trigger\n data-slot=\"select-trigger\"\n data-size={size}\n className={cn(\n \"flex w-fit items-center justify-between gap-1.5 rounded-md border border-input bg-transparent py-2 pr-2 pl-2.5 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-[3px] aria-invalid:ring-destructive/20 data-[placeholder]:text-muted-foreground data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-1.5 dark:bg-input/30 dark:hover:bg-input/50 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className\n )}\n {...props}\n >\n {children}\n <SelectPrimitive.Icon\n render={\n <HugeiconsIcon\n icon={UnfoldMoreIcon}\n strokeWidth={2}\n className=\"pointer-events-none size-4 text-muted-foreground\"\n />\n }\n />\n </SelectPrimitive.Trigger>\n )\n}\n\nfunction SelectContent({\n className,\n children,\n side = \"bottom\",\n sideOffset = 4,\n align = \"center\",\n alignOffset = 0,\n alignItemWithTrigger = true,\n ...props\n}: SelectPrimitive.Popup.Props &\n Pick<\n SelectPrimitive.Positioner.Props,\n \"align\" | \"alignOffset\" | \"side\" | \"sideOffset\" | \"alignItemWithTrigger\"\n >) {\n return (\n <SelectPrimitive.Portal>\n <SelectPrimitive.Positioner\n side={side}\n sideOffset={sideOffset}\n align={align}\n alignOffset={alignOffset}\n alignItemWithTrigger={alignItemWithTrigger}\n className=\"isolate z-50\"\n >\n <SelectPrimitive.Popup\n data-slot=\"select-content\"\n className={cn(\n \"data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-open:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative isolate z-50 max-h-(--available-height) w-(--anchor-width) min-w-36 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-md bg-popover text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100\",\n className\n )}\n {...props}\n >\n <SelectScrollUpButton />\n <SelectPrimitive.List>{children}</SelectPrimitive.List>\n <SelectScrollDownButton />\n </SelectPrimitive.Popup>\n </SelectPrimitive.Positioner>\n </SelectPrimitive.Portal>\n )\n}\n\nfunction SelectLabel({\n className,\n ...props\n}: SelectPrimitive.GroupLabel.Props) {\n return (\n <SelectPrimitive.GroupLabel\n data-slot=\"select-label\"\n className={cn(\"px-2 py-1.5 text-xs text-muted-foreground\", className)}\n {...props}\n />\n )\n}\n\nfunction SelectItem({\n className,\n children,\n ...props\n}: SelectPrimitive.Item.Props) {\n return (\n <SelectPrimitive.Item\n data-slot=\"select-item\"\n className={cn(\n \"relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2\",\n className\n )}\n {...props}\n >\n <SelectPrimitive.ItemText className=\"flex flex-1 shrink-0 gap-2 whitespace-nowrap\">\n {children}\n </SelectPrimitive.ItemText>\n <SelectPrimitive.ItemIndicator\n render={\n <span className=\"pointer-events-none absolute right-2 flex size-4 items-center justify-center\" />\n }\n >\n <HugeiconsIcon\n icon={Tick02Icon}\n strokeWidth={2}\n className=\"pointer-events-none\"\n />\n </SelectPrimitive.ItemIndicator>\n </SelectPrimitive.Item>\n )\n}\n\nfunction SelectSeparator({\n className,\n ...props\n}: SelectPrimitive.Separator.Props) {\n return (\n <SelectPrimitive.Separator\n data-slot=\"select-separator\"\n className={cn(\"pointer-events-none -mx-1 my-1 h-px bg-border\", className)}\n {...props}\n />\n )\n}\n\nfunction SelectScrollUpButton({\n className,\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.ScrollUpArrow>) {\n return (\n <SelectPrimitive.ScrollUpArrow\n data-slot=\"select-scroll-up-button\"\n className={cn(\n \"top-0 z-10 flex w-full cursor-default items-center justify-center bg-popover py-1 [&_svg:not([class*='size-'])]:size-4\",\n className\n )}\n {...props}\n >\n <HugeiconsIcon icon={ArrowUp01Icon} strokeWidth={2} />\n </SelectPrimitive.ScrollUpArrow>\n )\n}\n\nfunction SelectScrollDownButton({\n className,\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.ScrollDownArrow>) {\n return (\n <SelectPrimitive.ScrollDownArrow\n data-slot=\"select-scroll-down-button\"\n className={cn(\n \"bottom-0 z-10 flex w-full cursor-default items-center justify-center bg-popover py-1 [&_svg:not([class*='size-'])]:size-4\",\n className\n )}\n {...props}\n >\n <HugeiconsIcon icon={ArrowDown01Icon} strokeWidth={2} />\n </SelectPrimitive.ScrollDownArrow>\n )\n}\n\nexport {\n Select,\n SelectContent,\n SelectGroup,\n SelectItem,\n SelectLabel,\n SelectScrollDownButton,\n SelectScrollUpButton,\n SelectSeparator,\n SelectTrigger,\n SelectValue,\n}\n"
|
|
151
|
-
},
|
|
152
|
-
{
|
|
153
|
-
"path": "registry/example-apps/default/dashboard-1/components/ui/separator.tsx",
|
|
154
|
-
"type": "registry:ui",
|
|
155
|
-
"target": "components/example-apps/dashboard-1/components/ui/separator.tsx",
|
|
156
|
-
"content": "\"use client\"\n\nimport { Separator as SeparatorPrimitive } from \"@base-ui/react/separator\"\n\nimport { cn } from \"../../lib/utils\"\n\nfunction Separator({\n className,\n orientation = \"horizontal\",\n ...props\n}: SeparatorPrimitive.Props) {\n return (\n <SeparatorPrimitive\n data-slot=\"separator\"\n orientation={orientation}\n className={cn(\n \"shrink-0 bg-border data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:w-px data-[orientation=vertical]:self-stretch\",\n className\n )}\n {...props}\n />\n )\n}\n\nexport { Separator }\n"
|
|
157
|
-
},
|
|
158
|
-
{
|
|
159
|
-
"path": "registry/example-apps/default/dashboard-1/components/ui/sheet.tsx",
|
|
160
|
-
"type": "registry:ui",
|
|
161
|
-
"target": "components/example-apps/dashboard-1/components/ui/sheet.tsx",
|
|
162
|
-
"content": "\"use client\"\n\nimport * as React from \"react\"\nimport { Dialog as SheetPrimitive } from \"@base-ui/react/dialog\"\nimport { Cancel01Icon } from \"@hugeicons/core-free-icons\"\nimport { HugeiconsIcon } from \"@hugeicons/react\"\n\nimport { cn } from \"../../lib/utils\"\nimport { Button } from \"./button\"\n\nfunction Sheet({ ...props }: SheetPrimitive.Root.Props) {\n return <SheetPrimitive.Root data-slot=\"sheet\" {...props} />\n}\n\nfunction SheetTrigger({ ...props }: SheetPrimitive.Trigger.Props) {\n return <SheetPrimitive.Trigger data-slot=\"sheet-trigger\" {...props} />\n}\n\nfunction SheetClose({ ...props }: SheetPrimitive.Close.Props) {\n return <SheetPrimitive.Close data-slot=\"sheet-close\" {...props} />\n}\n\nfunction SheetPortal({ ...props }: SheetPrimitive.Portal.Props) {\n return <SheetPrimitive.Portal data-slot=\"sheet-portal\" {...props} />\n}\n\nfunction SheetOverlay({ className, ...props }: SheetPrimitive.Backdrop.Props) {\n return (\n <SheetPrimitive.Backdrop\n data-slot=\"sheet-overlay\"\n className={cn(\n \"data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 fixed inset-0 z-50 bg-black/10 duration-100 data-ending-style:opacity-0 data-starting-style:opacity-0 supports-backdrop-filter:backdrop-blur-xs\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SheetContent({\n className,\n children,\n side = \"right\",\n showCloseButton = true,\n ...props\n}: SheetPrimitive.Popup.Props & {\n side?: \"top\" | \"right\" | \"bottom\" | \"left\"\n showCloseButton?: boolean\n}) {\n return (\n <SheetPortal>\n <SheetOverlay />\n <SheetPrimitive.Popup\n data-slot=\"sheet-content\"\n data-side={side}\n className={cn(\n \"data-open:animate-in data-closed:animate-out data-[side=right]:data-closed:slide-out-to-right-10 data-[side=right]:data-open:slide-in-from-right-10 data-[side=left]:data-closed:slide-out-to-left-10 data-[side=left]:data-open:slide-in-from-left-10 data-[side=top]:data-closed:slide-out-to-top-10 data-[side=top]:data-open:slide-in-from-top-10 data-closed:fade-out-0 data-open:fade-in-0 data-[side=bottom]:data-closed:slide-out-to-bottom-10 data-[side=bottom]:data-open:slide-in-from-bottom-10 fixed z-50 flex flex-col gap-4 bg-background bg-clip-padding text-sm shadow-lg transition duration-200 ease-in-out data-[side=bottom]:inset-x-0 data-[side=bottom]:bottom-0 data-[side=bottom]:h-auto data-[side=bottom]:border-t data-[side=left]:inset-y-0 data-[side=left]:left-0 data-[side=left]:h-full data-[side=left]:w-3/4 data-[side=left]:border-r data-[side=right]:inset-y-0 data-[side=right]:right-0 data-[side=right]:h-full data-[side=right]:w-3/4 data-[side=right]:border-l data-[side=top]:inset-x-0 data-[side=top]:top-0 data-[side=top]:h-auto data-[side=top]:border-b data-[side=left]:sm:max-w-sm data-[side=right]:sm:max-w-sm\",\n className\n )}\n {...props}\n >\n {children}\n {showCloseButton && (\n <SheetPrimitive.Close\n data-slot=\"sheet-close\"\n render={\n <Button\n variant=\"ghost\"\n className=\"absolute top-4 right-4\"\n size=\"icon-sm\"\n />\n }\n >\n <HugeiconsIcon icon={Cancel01Icon} strokeWidth={2} />\n <span className=\"sr-only\">Close</span>\n </SheetPrimitive.Close>\n )}\n </SheetPrimitive.Popup>\n </SheetPortal>\n )\n}\n\nfunction SheetHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sheet-header\"\n className={cn(\"flex flex-col gap-1.5 p-4\", className)}\n {...props}\n />\n )\n}\n\nfunction SheetFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sheet-footer\"\n className={cn(\"mt-auto flex flex-col gap-2 p-4\", className)}\n {...props}\n />\n )\n}\n\nfunction SheetTitle({ className, ...props }: SheetPrimitive.Title.Props) {\n return (\n <SheetPrimitive.Title\n data-slot=\"sheet-title\"\n className={cn(\"font-medium text-foreground\", className)}\n {...props}\n />\n )\n}\n\nfunction SheetDescription({\n className,\n ...props\n}: SheetPrimitive.Description.Props) {\n return (\n <SheetPrimitive.Description\n data-slot=\"sheet-description\"\n className={cn(\"text-sm text-muted-foreground\", className)}\n {...props}\n />\n )\n}\n\nexport {\n Sheet,\n SheetTrigger,\n SheetClose,\n SheetContent,\n SheetHeader,\n SheetFooter,\n SheetTitle,\n SheetDescription,\n}\n"
|
|
163
|
-
},
|
|
164
|
-
{
|
|
165
|
-
"path": "registry/example-apps/default/dashboard-1/components/ui/sidebar.tsx",
|
|
166
|
-
"type": "registry:ui",
|
|
167
|
-
"target": "components/example-apps/dashboard-1/components/ui/sidebar.tsx",
|
|
168
|
-
"content": "\"use client\"\n\nimport * as React from \"react\"\nimport { mergeProps } from \"@base-ui/react/merge-props\"\nimport { useRender } from \"@base-ui/react/use-render\"\nimport { SidebarLeftIcon } from \"@hugeicons/core-free-icons\"\nimport { HugeiconsIcon } from \"@hugeicons/react\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\nimport { useIsMobile } from \"../../hooks/use-mobile\"\nimport { cn } from \"../../lib/utils\"\nimport { Button } from \"./button\"\nimport { Input } from \"./input\"\nimport { Separator } from \"./separator\"\nimport {\n Sheet,\n SheetContent,\n SheetDescription,\n SheetHeader,\n SheetTitle,\n} from \"./sheet\"\nimport { Skeleton } from \"./skeleton\"\nimport { Tooltip, TooltipContent, TooltipTrigger } from \"./tooltip\"\n\nconst SIDEBAR_COOKIE_NAME = \"sidebar_state\"\nconst SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7\nconst SIDEBAR_WIDTH = \"16rem\"\nconst SIDEBAR_WIDTH_MOBILE = \"18rem\"\nconst SIDEBAR_WIDTH_ICON = \"3rem\"\nconst SIDEBAR_KEYBOARD_SHORTCUT = \"b\"\n\ntype SidebarContextProps = {\n state: \"expanded\" | \"collapsed\"\n open: boolean\n setOpen: (open: boolean) => void\n openMobile: boolean\n setOpenMobile: (open: boolean) => void\n isMobile: boolean\n toggleSidebar: () => void\n}\n\nconst SidebarContext = React.createContext<SidebarContextProps | null>(null)\n\nfunction useSidebar() {\n const context = React.useContext(SidebarContext)\n if (!context) {\n throw new Error(\"useSidebar must be used within a SidebarProvider.\")\n }\n\n return context\n}\n\nfunction SidebarProvider({\n defaultOpen = true,\n open: openProp,\n onOpenChange: setOpenProp,\n className,\n style,\n children,\n ...props\n}: React.ComponentProps<\"div\"> & {\n defaultOpen?: boolean\n open?: boolean\n onOpenChange?: (open: boolean) => void\n}) {\n const isMobile = useIsMobile()\n const [openMobile, setOpenMobile] = React.useState(false)\n\n // This is the internal state of the sidebar.\n // We use openProp and setOpenProp for control from outside the component.\n const [_open, _setOpen] = React.useState(defaultOpen)\n const open = openProp ?? _open\n const setOpen = React.useCallback(\n (value: boolean | ((value: boolean) => boolean)) => {\n const openState = typeof value === \"function\" ? value(open) : value\n if (setOpenProp) {\n setOpenProp(openState)\n } else {\n _setOpen(openState)\n }\n\n // This sets the cookie to keep the sidebar state.\n document.cookie = `${SIDEBAR_COOKIE_NAME}=${openState}; path=/; max-age=${SIDEBAR_COOKIE_MAX_AGE}`\n },\n [setOpenProp, open]\n )\n\n // Helper to toggle the sidebar.\n const toggleSidebar = React.useCallback(() => {\n return isMobile ? setOpenMobile((open) => !open) : setOpen((open) => !open)\n }, [isMobile, setOpen, setOpenMobile])\n\n // Adds a keyboard shortcut to toggle the sidebar.\n React.useEffect(() => {\n const handleKeyDown = (event: KeyboardEvent) => {\n if (\n event.key === SIDEBAR_KEYBOARD_SHORTCUT &&\n (event.metaKey || event.ctrlKey)\n ) {\n event.preventDefault()\n toggleSidebar()\n }\n }\n\n window.addEventListener(\"keydown\", handleKeyDown)\n return () => window.removeEventListener(\"keydown\", handleKeyDown)\n }, [toggleSidebar])\n\n // We add a state so that we can do data-state=\"expanded\" or \"collapsed\".\n // This makes it easier to style the sidebar with Tailwind classes.\n const state = open ? \"expanded\" : \"collapsed\"\n\n const contextValue = React.useMemo<SidebarContextProps>(\n () => ({\n state,\n open,\n setOpen,\n isMobile,\n openMobile,\n setOpenMobile,\n toggleSidebar,\n }),\n [state, open, setOpen, isMobile, openMobile, setOpenMobile, toggleSidebar]\n )\n\n return (\n <SidebarContext.Provider value={contextValue}>\n <div\n data-slot=\"sidebar-wrapper\"\n style={\n {\n \"--sidebar-width\": SIDEBAR_WIDTH,\n \"--sidebar-width-icon\": SIDEBAR_WIDTH_ICON,\n ...style,\n } as any\n }\n className={cn(\n \"group/sidebar-wrapper flex min-h-svh w-full has-data-[variant=inset]:bg-sidebar\",\n className\n )}\n {...props}\n >\n {children}\n </div>\n </SidebarContext.Provider>\n )\n}\n\nfunction Sidebar({\n side = \"left\",\n variant = \"sidebar\",\n collapsible = \"offExamples\",\n className,\n children,\n ...props\n}: React.ComponentProps<\"div\"> & {\n side?: \"left\" | \"right\"\n variant?: \"sidebar\" | \"floating\" | \"inset\"\n collapsible?: \"offExamples\" | \"icon\" | \"none\"\n}) {\n const { isMobile, state, openMobile, setOpenMobile } = useSidebar()\n\n if (collapsible === \"none\") {\n return (\n <div\n data-slot=\"sidebar\"\n className={cn(\n \"flex h-full w-(--sidebar-width) flex-col bg-sidebar text-sidebar-foreground\",\n className\n )}\n {...props}\n >\n {children}\n </div>\n )\n }\n\n if (isMobile) {\n return (\n <Sheet open={openMobile} onOpenChange={setOpenMobile} {...props}>\n <SheetContent\n data-sidebar=\"sidebar\"\n data-slot=\"sidebar\"\n data-mobile=\"true\"\n className=\"top-[var(--sidebar-top-offset,0px)] h-[calc(100svh-var(--sidebar-top-offset,0px))] w-(--sidebar-width) bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden\"\n style={\n {\n \"--sidebar-width\": SIDEBAR_WIDTH_MOBILE,\n } as any\n }\n side={side}\n >\n <SheetHeader className=\"sr-only\">\n <SheetTitle>Sidebar</SheetTitle>\n <SheetDescription>Displays the mobile sidebar.</SheetDescription>\n </SheetHeader>\n <div className=\"flex h-full w-full flex-col\">{children}</div>\n </SheetContent>\n </Sheet>\n )\n }\n\n return (\n <div\n className=\"group peer hidden text-sidebar-foreground md:block\"\n data-state={state}\n data-collapsible={state === \"collapsed\" ? collapsible : \"\"}\n data-variant={variant}\n data-side={side}\n data-slot=\"sidebar\"\n >\n {/* This is what handles the sidebar gap on desktop */}\n <div\n data-slot=\"sidebar-gap\"\n className={cn(\n \"relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear\",\n \"group-data-[collapsible=offExamples]:w-0\",\n \"group-data-[side=right]:rotate-180\",\n variant === \"floating\" || variant === \"inset\"\n ? \"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]\"\n : \"group-data-[collapsible=icon]:w-(--sidebar-width-icon)\"\n )}\n />\n <div\n data-slot=\"sidebar-container\"\n className={cn(\n \"fixed top-[var(--sidebar-top-offset,0px)] bottom-0 z-10 hidden h-[calc(100svh-var(--sidebar-top-offset,0px))] w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear md:flex\",\n side === \"left\"\n ? \"left-0 group-data-[collapsible=offExamples]:left-[calc(var(--sidebar-width)*-1)]\"\n : \"right-0 group-data-[collapsible=offExamples]:right-[calc(var(--sidebar-width)*-1)]\",\n // Adjust the padding for floating and inset variants.\n variant === \"floating\" || variant === \"inset\"\n ? \"p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]\"\n : \"group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l\",\n className\n )}\n {...props}\n >\n <div\n data-sidebar=\"sidebar\"\n data-slot=\"sidebar-inner\"\n className=\"flex size-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:shadow-sm group-data-[variant=floating]:ring-1 group-data-[variant=floating]:ring-sidebar-border\"\n >\n {children}\n </div>\n </div>\n </div>\n )\n}\n\nfunction SidebarTrigger({\n className,\n onClick,\n ...props\n}: React.ComponentProps<typeof Button>) {\n const { toggleSidebar } = useSidebar()\n\n return (\n <Button\n data-sidebar=\"trigger\"\n data-slot=\"sidebar-trigger\"\n variant=\"ghost\"\n size=\"icon-sm\"\n className={cn(className)}\n onClick={(event) => {\n onClick?.(event)\n toggleSidebar()\n }}\n {...props}\n >\n <HugeiconsIcon icon={SidebarLeftIcon} strokeWidth={2} />\n <span className=\"sr-only\">Toggle Sidebar</span>\n </Button>\n )\n}\n\nfunction SidebarRail({ className, ...props }: React.ComponentProps<\"button\">) {\n const { toggleSidebar } = useSidebar()\n\n return (\n <button\n data-sidebar=\"rail\"\n data-slot=\"sidebar-rail\"\n aria-label=\"Toggle Sidebar\"\n tabIndex={-1}\n onClick={toggleSidebar}\n title=\"Toggle Sidebar\"\n className={cn(\n \"absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] hover:after:bg-sidebar-border sm:flex\",\n \"in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize\",\n \"[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize\",\n \"group-data-[collapsible=offExamples]:translate-x-0 group-data-[collapsible=offExamples]:after:left-full hover:group-data-[collapsible=offExamples]:bg-sidebar\",\n \"[[data-side=left][data-collapsible=offExamples]_&]:-right-2\",\n \"[[data-side=right][data-collapsible=offExamples]_&]:-left-2\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarInset({ className, ...props }: React.ComponentProps<\"main\">) {\n return (\n <main\n data-slot=\"sidebar-inset\"\n className={cn(\n \"relative flex w-full flex-1 flex-col bg-background md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarInput({\n className,\n ...props\n}: React.ComponentProps<typeof Input>) {\n return (\n <Input\n data-slot=\"sidebar-input\"\n data-sidebar=\"input\"\n className={cn(\"h-8 w-full bg-background shadow-none\", className)}\n {...props}\n />\n )\n}\n\nfunction SidebarHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-header\"\n data-sidebar=\"header\"\n className={cn(\"flex flex-col gap-2 p-2\", className)}\n {...props}\n />\n )\n}\n\nfunction SidebarFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-footer\"\n data-sidebar=\"footer\"\n className={cn(\"flex flex-col gap-2 p-2\", className)}\n {...props}\n />\n )\n}\n\nfunction SidebarSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof Separator>) {\n return (\n <Separator\n data-slot=\"sidebar-separator\"\n data-sidebar=\"separator\"\n className={cn(\"mx-2 w-auto bg-sidebar-border\", className)}\n {...props}\n />\n )\n}\n\nfunction SidebarContent({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-content\"\n data-sidebar=\"content\"\n className={cn(\n \"no-scrollbar flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-group\"\n data-sidebar=\"group\"\n className={cn(\"relative flex w-full min-w-0 flex-col p-2\", className)}\n {...props}\n />\n )\n}\n\nfunction SidebarGroupLabel({\n className,\n render,\n ...props\n}: useRender.ComponentProps<\"div\"> & React.ComponentProps<\"div\">) {\n return useRender({\n defaultTagName: \"div\",\n props: mergeProps<\"div\">(\n {\n className: cn(\n \"flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium text-sidebar-foreground/70 ring-sidebar-ring outline-hidden transition-[margin,opacity] duration-200 ease-linear group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0 focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0\",\n className\n ),\n },\n props\n ),\n render,\n state: {\n slot: \"sidebar-group-label\",\n sidebar: \"group-label\",\n },\n })\n}\n\nfunction SidebarGroupAction({\n className,\n render,\n ...props\n}: useRender.ComponentProps<\"button\"> & React.ComponentProps<\"button\">) {\n return useRender({\n defaultTagName: \"button\",\n props: mergeProps<\"button\">(\n {\n className: cn(\n \"absolute top-3.5 right-3 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform group-data-[collapsible=icon]:hidden after:absolute after:-inset-2 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 md:after:hidden [&>svg]:size-4 [&>svg]:shrink-0\",\n className\n ),\n },\n props\n ),\n render,\n state: {\n slot: \"sidebar-group-action\",\n sidebar: \"group-action\",\n },\n })\n}\n\nfunction SidebarGroupContent({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-group-content\"\n data-sidebar=\"group-content\"\n className={cn(\"w-full text-sm\", className)}\n {...props}\n />\n )\n}\n\nfunction SidebarMenu({ className, ...props }: React.ComponentProps<\"ul\">) {\n return (\n <ul\n data-slot=\"sidebar-menu\"\n data-sidebar=\"menu\"\n className={cn(\"flex w-full min-w-0 flex-col gap-1\", className)}\n {...props}\n />\n )\n}\n\nfunction SidebarMenuItem({ className, ...props }: React.ComponentProps<\"li\">) {\n return (\n <li\n data-slot=\"sidebar-menu-item\"\n data-sidebar=\"menu-item\"\n className={cn(\"group/menu-item relative\", className)}\n {...props}\n />\n )\n}\n\nconst sidebarMenuButtonVariants = cva(\n \"peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm ring-sidebar-ring outline-hidden transition-[width,height,padding] group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate\",\n {\n variants: {\n variant: {\n default: \"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground\",\n outline:\n \"bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]\",\n },\n size: {\n default: \"h-8 text-sm\",\n sm: \"h-7 text-xs\",\n lg: \"h-12 text-sm group-data-[collapsible=icon]:p-0!\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n }\n)\n\nfunction SidebarMenuButton({\n render,\n isActive = false,\n variant = \"default\",\n size = \"default\",\n tooltip,\n className,\n ...props\n}: useRender.ComponentProps<\"button\"> &\n React.ComponentProps<\"button\"> & {\n isActive?: boolean\n tooltip?: string | React.ComponentProps<typeof TooltipContent>\n } & VariantProps<typeof sidebarMenuButtonVariants>) {\n const { isMobile, state } = useSidebar()\n const comp = useRender({\n defaultTagName: \"button\",\n props: mergeProps<\"button\">(\n {\n className: cn(sidebarMenuButtonVariants({ variant, size }), className),\n },\n props\n ),\n render: !tooltip ? render : TooltipTrigger,\n state: {\n slot: \"sidebar-menu-button\",\n sidebar: \"menu-button\",\n size,\n active: isActive,\n },\n })\n\n if (!tooltip) {\n return comp\n }\n\n if (typeof tooltip === \"string\") {\n tooltip = {\n children: tooltip,\n }\n }\n\n return (\n <Tooltip>\n {comp}\n <TooltipContent\n side=\"right\"\n align=\"center\"\n hidden={state !== \"collapsed\" || isMobile}\n {...tooltip}\n />\n </Tooltip>\n )\n}\n\nfunction SidebarMenuAction({\n className,\n render,\n showOnHover = false,\n ...props\n}: useRender.ComponentProps<\"button\"> &\n React.ComponentProps<\"button\"> & {\n showOnHover?: boolean\n }) {\n return useRender({\n defaultTagName: \"button\",\n props: mergeProps<\"button\">(\n {\n className: cn(\n \"absolute top-1.5 right-1 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform group-data-[collapsible=icon]:hidden peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[size=default]/menu-button:top-1.5 peer-data-[size=lg]/menu-button:top-2.5 peer-data-[size=sm]/menu-button:top-1 after:absolute after:-inset-2 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 md:after:hidden [&>svg]:size-4 [&>svg]:shrink-0\",\n showOnHover &&\n \"group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 peer-data-active/menu-button:text-sidebar-accent-foreground data-open:opacity-100 md:opacity-0\",\n className\n ),\n },\n props\n ),\n render,\n state: {\n slot: \"sidebar-menu-action\",\n sidebar: \"menu-action\",\n },\n })\n}\n\nfunction SidebarMenuBadge({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-menu-badge\"\n data-sidebar=\"menu-badge\"\n className={cn(\n \"pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium text-sidebar-foreground tabular-nums select-none group-data-[collapsible=icon]:hidden peer-hover/menu-button:text-sidebar-accent-foreground peer-data-active/menu-button:text-sidebar-accent-foreground peer-data-[size=default]/menu-button:top-1.5 peer-data-[size=lg]/menu-button:top-2.5 peer-data-[size=sm]/menu-button:top-1\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarMenuSkeleton({\n className,\n showIcon = false,\n ...props\n}: React.ComponentProps<\"div\"> & {\n showIcon?: boolean\n}) {\n // Random width between 50 to 90%.\n const [width] = React.useState(() => {\n return `${Math.floor(Math.random() * 40) + 50}%`\n })\n\n return (\n <div\n data-slot=\"sidebar-menu-skeleton\"\n data-sidebar=\"menu-skeleton\"\n className={cn(\"flex h-8 items-center gap-2 rounded-md px-2\", className)}\n {...props}\n >\n {showIcon && (\n <Skeleton\n className=\"size-4 rounded-md\"\n data-sidebar=\"menu-skeleton-icon\"\n />\n )}\n <Skeleton\n className=\"h-4 max-w-(--skeleton-width) flex-1\"\n data-sidebar=\"menu-skeleton-text\"\n style={\n {\n \"--skeleton-width\": width,\n } as any\n }\n />\n </div>\n )\n}\n\nfunction SidebarMenuSub({ className, ...props }: React.ComponentProps<\"ul\">) {\n return (\n <ul\n data-slot=\"sidebar-menu-sub\"\n data-sidebar=\"menu-sub\"\n className={cn(\n \"mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l border-sidebar-border px-2.5 py-0.5 group-data-[collapsible=icon]:hidden\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarMenuSubItem({\n className,\n ...props\n}: React.ComponentProps<\"li\">) {\n return (\n <li\n data-slot=\"sidebar-menu-sub-item\"\n data-sidebar=\"menu-sub-item\"\n className={cn(\"group/menu-sub-item relative\", className)}\n {...props}\n />\n )\n}\n\nfunction SidebarMenuSubButton({\n render,\n size = \"md\",\n isActive = false,\n className,\n ...props\n}: useRender.ComponentProps<\"a\"> &\n React.ComponentProps<\"a\"> & {\n size?: \"sm\" | \"md\"\n isActive?: boolean\n }) {\n return useRender({\n defaultTagName: \"a\",\n props: mergeProps<\"a\">(\n {\n className: cn(\n \"flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 text-sidebar-foreground ring-sidebar-ring outline-hidden group-data-[collapsible=icon]:hidden hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-active:bg-sidebar-accent data-active:text-sidebar-accent-foreground data-[size=md]:text-sm data-[size=sm]:text-xs [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:text-sidebar-accent-foreground\",\n className\n ),\n },\n props\n ),\n render,\n state: {\n slot: \"sidebar-menu-sub-button\",\n sidebar: \"menu-sub-button\",\n size,\n active: isActive,\n },\n })\n}\n\nexport {\n Sidebar,\n SidebarContent,\n SidebarFooter,\n SidebarGroup,\n SidebarGroupAction,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarHeader,\n SidebarInput,\n SidebarInset,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuBadge,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSkeleton,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n SidebarProvider,\n SidebarRail,\n SidebarSeparator,\n SidebarTrigger,\n useSidebar,\n}\n"
|
|
169
|
-
},
|
|
170
|
-
{
|
|
171
|
-
"path": "registry/example-apps/default/dashboard-1/components/ui/skeleton.tsx",
|
|
172
|
-
"type": "registry:ui",
|
|
173
|
-
"target": "components/example-apps/dashboard-1/components/ui/skeleton.tsx",
|
|
174
|
-
"content": "import type { ComponentPropsWithoutRef } from \"react\"\n\nimport { cn } from \"../../lib/utils\"\n\nfunction Skeleton({ className, ...props }: ComponentPropsWithoutRef<\"div\">) {\n return (\n <div\n data-slot=\"skeleton\"\n className={cn(\"animate-pulse rounded-md bg-muted\", className)}\n {...props}\n />\n )\n}\n\nexport { Skeleton }\n"
|
|
175
|
-
},
|
|
176
|
-
{
|
|
177
|
-
"path": "registry/example-apps/default/dashboard-1/components/ui/table.tsx",
|
|
178
|
-
"type": "registry:ui",
|
|
179
|
-
"target": "components/example-apps/dashboard-1/components/ui/table.tsx",
|
|
180
|
-
"content": "\"use client\"\n\nimport * as React from \"react\"\n\nimport { cn } from \"../../lib/utils\"\n\nfunction Table({ className, ...props }: React.ComponentProps<\"table\">) {\n return (\n <div\n data-slot=\"table-container\"\n className=\"relative w-full overflow-x-auto\"\n >\n <table\n data-slot=\"table\"\n className={cn(\"w-full caption-bottom text-sm\", className)}\n {...props}\n />\n </div>\n )\n}\n\nfunction TableHeader({ className, ...props }: React.ComponentProps<\"thead\">) {\n return (\n <thead\n data-slot=\"table-header\"\n className={cn(\"[&_tr]:border-b\", className)}\n {...props}\n />\n )\n}\n\nfunction TableBody({ className, ...props }: React.ComponentProps<\"tbody\">) {\n return (\n <tbody\n data-slot=\"table-body\"\n className={cn(\"[&_tr:last-child]:border-0\", className)}\n {...props}\n />\n )\n}\n\nfunction TableFooter({ className, ...props }: React.ComponentProps<\"tfoot\">) {\n return (\n <tfoot\n data-slot=\"table-footer\"\n className={cn(\n \"border-t bg-muted/50 font-medium [&>tr]:last:border-b-0\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction TableRow({ className, ...props }: React.ComponentProps<\"tr\">) {\n return (\n <tr\n data-slot=\"table-row\"\n className={cn(\n \"border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction TableHead({ className, ...props }: React.ComponentProps<\"th\">) {\n return (\n <th\n data-slot=\"table-head\"\n className={cn(\n \"h-10 px-2 text-left align-middle font-medium whitespace-nowrap text-foreground [&:has([role=checkbox])]:pr-0\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction TableCell({ className, ...props }: React.ComponentProps<\"td\">) {\n return (\n <td\n data-slot=\"table-cell\"\n className={cn(\n \"p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction TableCaption({\n className,\n ...props\n}: React.ComponentProps<\"caption\">) {\n return (\n <caption\n data-slot=\"table-caption\"\n className={cn(\"mt-4 text-sm text-muted-foreground\", className)}\n {...props}\n />\n )\n}\n\nexport {\n Table,\n TableHeader,\n TableBody,\n TableFooter,\n TableHead,\n TableRow,\n TableCell,\n TableCaption,\n}\n"
|
|
181
|
-
},
|
|
182
|
-
{
|
|
183
|
-
"path": "registry/example-apps/default/dashboard-1/components/ui/textarea.tsx",
|
|
184
|
-
"type": "registry:ui",
|
|
185
|
-
"target": "components/example-apps/dashboard-1/components/ui/textarea.tsx",
|
|
186
|
-
"content": "import * as React from \"react\"\n\nimport { cn } from \"../../lib/utils\"\n\nfunction Textarea({ className, ...props }: React.ComponentProps<\"textarea\">) {\n return (\n <textarea\n data-slot=\"textarea\"\n className={cn(\n \"flex field-sizing-content min-h-16 w-full rounded-md border border-input bg-transparent px-2.5 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-[3px] aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40\",\n className\n )}\n {...props}\n />\n )\n}\n\nexport { Textarea }\n"
|
|
187
|
-
},
|
|
188
|
-
{
|
|
189
|
-
"path": "registry/example-apps/default/dashboard-1/components/ui/tooltip.tsx",
|
|
190
|
-
"type": "registry:ui",
|
|
191
|
-
"target": "components/example-apps/dashboard-1/components/ui/tooltip.tsx",
|
|
192
|
-
"content": "\"use client\"\n\nimport { Tooltip as TooltipPrimitive } from \"@base-ui/react/tooltip\"\n\nimport { cn } from \"../../lib/utils\"\n\nfunction TooltipProvider({\n delay = 0,\n ...props\n}: TooltipPrimitive.Provider.Props) {\n return (\n <TooltipPrimitive.Provider\n data-slot=\"tooltip-provider\"\n delay={delay}\n {...props}\n />\n )\n}\n\nfunction Tooltip({ ...props }: TooltipPrimitive.Root.Props) {\n return (\n <TooltipProvider>\n <TooltipPrimitive.Root data-slot=\"tooltip\" {...props} />\n </TooltipProvider>\n )\n}\n\nfunction TooltipTrigger({ ...props }: TooltipPrimitive.Trigger.Props) {\n return <TooltipPrimitive.Trigger data-slot=\"tooltip-trigger\" {...props} />\n}\n\nfunction TooltipContent({\n className,\n side = \"top\",\n sideOffset = 4,\n align = \"center\",\n alignOffset = 0,\n children,\n ...props\n}: TooltipPrimitive.Popup.Props &\n Pick<\n TooltipPrimitive.Positioner.Props,\n \"align\" | \"alignOffset\" | \"side\" | \"sideOffset\"\n >) {\n return (\n <TooltipPrimitive.Portal>\n <TooltipPrimitive.Positioner\n align={align}\n alignOffset={alignOffset}\n side={side}\n sideOffset={sideOffset}\n className=\"isolate z-50\"\n >\n <TooltipPrimitive.Popup\n data-slot=\"tooltip-content\"\n className={cn(\n \"data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-[state=delayed-open]:animate-in data-[state=delayed-open]:fade-in-0 data-[state=delayed-open]:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit max-w-xs origin-(--transform-origin) rounded-md bg-foreground px-3 py-1.5 text-xs text-background\",\n className\n )}\n {...props}\n >\n {children}\n <TooltipPrimitive.Arrow className=\"z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px] bg-foreground fill-foreground data-[side=bottom]:top-1 data-[side=left]:top-1/2! data-[side=left]:-right-1 data-[side=left]:-translate-y-1/2 data-[side=right]:top-1/2! data-[side=right]:-left-1 data-[side=right]:-translate-y-1/2 data-[side=top]:-bottom-2.5\" />\n </TooltipPrimitive.Popup>\n </TooltipPrimitive.Positioner>\n </TooltipPrimitive.Portal>\n )\n}\n\nexport { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider }\n"
|
|
193
|
-
},
|
|
194
|
-
{
|
|
195
|
-
"path": "registry/example-apps/default/dashboard-1/hooks/use-mobile.ts",
|
|
196
|
-
"type": "registry:hook",
|
|
197
|
-
"target": "components/example-apps/dashboard-1/hooks/use-mobile.ts",
|
|
198
|
-
"content": "import * as React from \"react\"\n\nconst MOBILE_BREAKPOINT = 768\n\nexport function useIsMobile() {\n const [isMobile, setIsMobile] = React.useState<boolean | undefined>(undefined)\n\n React.useEffect(() => {\n const mql = window.matchMedia(`(max-width: ${MOBILE_BREAKPOINT - 1}px)`)\n const onChange = () => {\n setIsMobile(window.innerWidth < MOBILE_BREAKPOINT)\n }\n mql.addEventListener(\"change\", onChange)\n setIsMobile(window.innerWidth < MOBILE_BREAKPOINT)\n return () => mql.removeEventListener(\"change\", onChange)\n }, [])\n\n return !!isMobile\n}\n"
|
|
199
|
-
},
|
|
200
|
-
{
|
|
201
|
-
"path": "registry/example-apps/default/dashboard-1/index.tsx",
|
|
202
|
-
"type": "registry:file",
|
|
203
|
-
"target": "components/example-apps/dashboard-1/index.tsx",
|
|
204
|
-
"content": "/**\n * Wrapper export for embedding the dashboard in the docs app\n */\n\"use client\"\n\nimport { DashboardContent } from \"./components/dashboard/content\"\nimport { DashboardHeader } from \"./components/dashboard/header\"\nimport { DashboardSidebar } from \"./components/dashboard/sidebar\"\nimport { SidebarProvider } from \"./components/ui/sidebar\"\n\nexport default function Dashboard1Wrapper() {\n return (\n <SidebarProvider className=\"bg-sidebar\">\n <DashboardSidebar />\n <div className=\"h-full min-h-0 w-full overflow-hidden lg:px-2 lg:pb-2\">\n <div className=\"bg-container flex h-full min-h-0 w-full flex-col items-center justify-start overflow-hidden bg-background lg:rounded-md lg:border\">\n <DashboardHeader />\n <DashboardContent />\n </div>\n </div>\n </SidebarProvider>\n )\n}\n"
|
|
205
|
-
},
|
|
206
|
-
{
|
|
207
|
-
"path": "registry/example-apps/default/dashboard-1/lib/utils.ts",
|
|
208
|
-
"type": "registry:lib",
|
|
209
|
-
"target": "components/example-apps/dashboard-1/lib/utils.ts",
|
|
210
|
-
"content": "import { clsx, type ClassValue } from \"clsx\"\nimport { twMerge } from \"tailwind-merge\"\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs))\n}\n"
|
|
211
|
-
},
|
|
212
|
-
{
|
|
213
|
-
"path": "registry/example-apps/default/dashboard-1/mock-data/employees.ts",
|
|
214
|
-
"type": "registry:lib",
|
|
215
|
-
"target": "components/example-apps/dashboard-1/mock-data/employees.ts",
|
|
216
|
-
"content": "export interface Employee {\n id: string\n userId: string\n name: string\n email: string\n department: \"Nursing\" | \"Clinical\" | \"Operations\" | \"Admin\" | \"Support\"\n jobTitle: string\n joinedDate: string\n status: \"Active\" | \"On Leave\" | \"Probation\" | \"Inactive\"\n avatar?: string\n}\n\nconst departments: Employee[\"department\"][] = [\n \"Nursing\",\n \"Clinical\",\n \"Operations\",\n \"Admin\",\n \"Support\",\n]\nconst statuses: Employee[\"status\"][] = [\n \"Active\",\n \"On Leave\",\n \"Probation\",\n \"Inactive\",\n]\n\nconst jobTitles: Record<Employee[\"department\"], string[]> = {\n Nursing: [\n \"Charge Nurse\",\n \"ICU Nurse\",\n \"ER Nurse\",\n \"Ward Nurse\",\n \"Float Nurse\",\n ],\n Clinical: [\n \"Resident Physician\",\n \"Lab Technician\",\n \"Pharmacist\",\n \"Radiology Tech\",\n \"Respiratory Therapist\",\n ],\n Operations: [\n \"Facility Coordinator\",\n \"Supply Chain Lead\",\n \"Shift Scheduler\",\n \"Transport Supervisor\",\n \"Safety Officer\",\n ],\n Admin: [\n \"Front Desk Lead\",\n \"Billing Specialist\",\n \"Records Coordinator\",\n \"Admissions Manager\",\n \"Compliance Admin\",\n ],\n Support: [\n \"IT Support\",\n \"Patient Services\",\n \"Social Worker\",\n \"Interpreter\",\n \"Nutrition Coordinator\",\n ],\n}\n\nconst firstNames = [\n \"Ariana\",\n \"Brandon\",\n \"Camila\",\n \"Diego\",\n \"Elena\",\n \"Felix\",\n \"Gia\",\n \"Hector\",\n \"Iris\",\n \"Jonah\",\n \"Kara\",\n \"Leo\",\n \"Marta\",\n \"Nico\",\n \"Opal\",\n \"Pablo\",\n \"Quinn\",\n \"Raina\",\n \"Soren\",\n \"Talia\",\n \"Uma\",\n \"Vince\",\n \"Willa\",\n \"Xavier\",\n \"Yara\",\n \"Zane\",\n]\n\nconst lastNames = [\n \"Abbott\",\n \"Bennett\",\n \"Carver\",\n \"Delgado\",\n \"Esposito\",\n \"Fulton\",\n \"Graves\",\n \"Hale\",\n \"Ibrahim\",\n \"Jensen\",\n \"Kline\",\n \"Larsen\",\n \"Mendoza\",\n \"Nolan\",\n \"Ortiz\",\n \"Patel\",\n \"Quintero\",\n \"Russo\",\n \"Silva\",\n \"Tran\",\n \"Usman\",\n \"Valdez\",\n \"Webb\",\n \"Xu\",\n \"Yates\",\n \"Zimmer\",\n]\n\nconst dates = [\n \"07 Jan 2025\",\n \"16 Jan 2025\",\n \"30 Jan 2025\",\n \"11 Feb 2025\",\n \"24 Feb 2025\",\n \"06 Mar 2025\",\n \"18 Mar 2025\",\n \"27 Mar 2025\",\n \"08 Apr 2025\",\n \"22 Apr 2025\",\n \"07 May 2025\",\n \"19 May 2025\",\n \"04 Jun 2025\",\n \"17 Jun 2025\",\n \"01 Jul 2025\",\n \"15 Jul 2025\",\n \"29 Jul 2025\",\n \"12 Aug 2025\",\n \"26 Aug 2025\",\n \"09 Sep 2025\",\n \"23 Sep 2025\",\n \"08 Oct 2025\",\n \"21 Oct 2025\",\n \"05 Nov 2025\",\n \"19 Nov 2025\",\n \"03 Dec 2025\",\n \"17 Dec 2025\",\n \"06 Jan 2026\",\n]\n\nconst statusPattern = [\n \"Active\",\n \"Active\",\n \"Active\",\n \"On Leave\",\n \"Active\",\n \"Probation\",\n \"Active\",\n \"Inactive\",\n \"Active\",\n \"Active\",\n \"On Leave\",\n \"Active\",\n \"Probation\",\n \"Active\",\n \"Active\",\n \"Active\",\n \"Inactive\",\n \"Active\",\n \"Active\",\n \"On Leave\",\n \"Active\",\n \"Active\",\n \"Probation\",\n \"Active\",\n \"Active\",\n \"Active\",\n \"On Leave\",\n \"Active\",\n \"Active\",\n \"Inactive\",\n \"Active\",\n \"Active\",\n \"Active\",\n \"Probation\",\n \"Active\",\n \"On Leave\",\n \"Active\",\n \"Active\",\n \"Active\",\n \"Active\",\n \"Inactive\",\n \"Active\",\n \"On Leave\",\n \"Active\",\n \"Probation\",\n \"Active\",\n \"Active\",\n \"Active\",\n \"On Leave\",\n \"Active\",\n] as Employee[\"status\"][]\n\nconst jobTitleIndices = [\n 0, 1, 2, 3, 4, 0, 1, 2, 3, 4, 0, 1, 2, 3, 4, 0, 1, 2, 3, 4, 0, 1, 2, 3, 4, 0,\n 1, 2, 3, 4, 0, 1, 2, 3, 4, 0, 1, 2, 3, 4, 0, 1, 2, 3, 4, 0, 1, 2, 3, 4,\n]\n\nconst hasAvatar = [\n true,\n true,\n true,\n false,\n true,\n true,\n true,\n true,\n false,\n true,\n true,\n false,\n true,\n true,\n true,\n true,\n true,\n false,\n true,\n true,\n false,\n true,\n true,\n true,\n true,\n true,\n false,\n true,\n true,\n true,\n true,\n true,\n true,\n false,\n true,\n true,\n true,\n false,\n true,\n true,\n true,\n true,\n false,\n true,\n true,\n true,\n true,\n true,\n false,\n true,\n]\n\nexport const employees: Employee[] = Array.from({ length: 50 }, (_, i) => {\n const firstName = firstNames[i % firstNames.length]\n const lastName = lastNames[i % lastNames.length]\n const department = departments[i % departments.length]\n const jobTitle =\n jobTitles[department][jobTitleIndices[i] % jobTitles[department].length]\n const status = statusPattern[i]\n\n return {\n id: (i + 1).toString(),\n userId: `MED-${(4201 + i).toString()}`,\n name: `${firstName} ${lastName}`,\n email: `${firstName.toLowerCase()}.${lastName.toLowerCase()}@riverbend.health`,\n department,\n jobTitle,\n joinedDate: dates[i % dates.length],\n status,\n avatar: hasAvatar[i]\n ? `https://api.dicebear.com/9.x/glass/svg?seed=ops-${firstName}${lastName}`\n : undefined,\n }\n})\n\nexport const financialFlowData = [\n { month: \"Jan\", moneyIn: 198000, moneyOut: 142000 },\n { month: \"Feb\", moneyIn: 205000, moneyOut: 151000 },\n { month: \"Mar\", moneyIn: 226000, moneyOut: 158000 },\n { month: \"Apr\", moneyIn: 232000, moneyOut: 163000 },\n { month: \"May\", moneyIn: 241000, moneyOut: 169000 },\n { month: \"Jun\", moneyIn: 248000, moneyOut: 172000 },\n { month: \"Jul\", moneyIn: 256000, moneyOut: 178000 },\n { month: \"Aug\", moneyIn: 264000, moneyOut: 181000 },\n { month: \"Sep\", moneyIn: 258000, moneyOut: 176000 },\n { month: \"Oct\", moneyIn: 271000, moneyOut: 184000 },\n { month: \"Nov\", moneyIn: 279000, moneyOut: 191000 },\n { month: \"Dec\", moneyIn: 292000, moneyOut: 198000 },\n]\n"
|
|
217
|
-
},
|
|
218
|
-
{
|
|
219
|
-
"path": "registry/example-apps/default/dashboard-1/store/dashboard-store.ts",
|
|
220
|
-
"type": "registry:lib",
|
|
221
|
-
"target": "components/example-apps/dashboard-1/store/dashboard-store.ts",
|
|
222
|
-
"content": "import { create } from \"zustand\"\n\nexport type LayoutDensity = \"default\" | \"compact\" | \"comfortable\"\n\ninterface DashboardState {\n searchQuery: string\n departmentFilter: string\n statusFilter: string\n setSearchQuery: (query: string) => void\n setDepartmentFilter: (filter: string) => void\n setStatusFilter: (filter: string) => void\n clearFilters: () => void\n\n // Layout options\n showAlertBanner: boolean\n showStatsCards: boolean\n showChart: boolean\n showTable: boolean\n layoutDensity: LayoutDensity\n setShowAlertBanner: (show: boolean) => void\n setShowStatsCards: (show: boolean) => void\n setShowChart: (show: boolean) => void\n setShowTable: (show: boolean) => void\n setLayoutDensity: (density: LayoutDensity) => void\n resetLayout: () => void\n}\n\nexport const useDashboardStore = create<DashboardState>((set) => ({\n searchQuery: \"\",\n departmentFilter: \"all\",\n statusFilter: \"all\",\n setSearchQuery: (query) => set({ searchQuery: query }),\n setDepartmentFilter: (filter) => set({ departmentFilter: filter }),\n setStatusFilter: (filter) => set({ statusFilter: filter }),\n clearFilters: () =>\n set({\n searchQuery: \"\",\n departmentFilter: \"all\",\n statusFilter: \"all\",\n }),\n\n // Layout options\n showAlertBanner: true,\n showStatsCards: true,\n showChart: true,\n showTable: true,\n layoutDensity: \"default\",\n setShowAlertBanner: (show) => set({ showAlertBanner: show }),\n setShowStatsCards: (show) => set({ showStatsCards: show }),\n setShowChart: (show) => set({ showChart: show }),\n setShowTable: (show) => set({ showTable: show }),\n setLayoutDensity: (density) => set({ layoutDensity: density }),\n resetLayout: () =>\n set({\n showAlertBanner: true,\n showStatsCards: true,\n showChart: true,\n showTable: true,\n layoutDensity: \"default\",\n }),\n}))\n"
|
|
223
|
-
}
|
|
224
|
-
],
|
|
225
|
-
"categories": [
|
|
226
|
-
"example-app",
|
|
227
|
-
"dashboards",
|
|
228
|
-
"analytics",
|
|
229
|
-
"charts",
|
|
230
|
-
"tables",
|
|
231
|
-
"data-visualization"
|
|
232
|
-
],
|
|
233
|
-
"dependencies": [
|
|
234
|
-
"@base-ui/react",
|
|
235
|
-
"@hugeicons/core-free-icons",
|
|
236
|
-
"@hugeicons/react",
|
|
237
|
-
"class-variance-authority",
|
|
238
|
-
"clsx",
|
|
239
|
-
"next-themes",
|
|
240
|
-
"recharts",
|
|
241
|
-
"tailwind-merge",
|
|
242
|
-
"zustand"
|
|
243
|
-
],
|
|
244
|
-
"registryDependencies": [
|
|
245
|
-
"https://www.loveui.dev/r/avatar.json",
|
|
246
|
-
"https://www.loveui.dev/r/button.json",
|
|
247
|
-
"https://www.loveui.dev/r/checkbox.json",
|
|
248
|
-
"https://www.loveui.dev/r/input.json",
|
|
249
|
-
"https://www.loveui.dev/r/menu.json",
|
|
250
|
-
"https://www.loveui.dev/r/table.json"
|
|
251
|
-
],
|
|
252
|
-
"meta": {
|
|
253
|
-
"source": "example-app",
|
|
254
|
-
"appName": "dashboard-1",
|
|
255
|
-
"routes": [
|
|
256
|
-
{
|
|
257
|
-
"path": "/",
|
|
258
|
-
"title": "Dashboard",
|
|
259
|
-
"description": "Main analytics dashboard with charts and tables"
|
|
260
|
-
}
|
|
261
|
-
]
|
|
262
|
-
}
|
|
263
|
-
}
|