prime-ui-kit 0.3.1 → 0.3.2
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 -2
- package/dist/components/accordion/examples/01-faq-marketing.d.ts +5 -0
- package/dist/components/accordion/examples/01-faq-marketing.d.ts.map +1 -0
- package/dist/components/accordion/examples/02-settings-panels.d.ts +6 -0
- package/dist/components/accordion/examples/02-settings-panels.d.ts.map +1 -0
- package/dist/components/accordion/examples/03-checkout-order-summary.d.ts +5 -0
- package/dist/components/accordion/examples/03-checkout-order-summary.d.ts.map +1 -0
- package/dist/components/accordion/examples/04-api-docs-sections.d.ts +6 -0
- package/dist/components/accordion/examples/04-api-docs-sections.d.ts.map +1 -0
- package/dist/components/accordion/examples/05-knowledge-base-categories.d.ts +6 -0
- package/dist/components/accordion/examples/05-knowledge-base-categories.d.ts.map +1 -0
- package/dist/components/avatar/examples/app-header-nav.d.ts +5 -0
- package/dist/components/avatar/examples/app-header-nav.d.ts.map +1 -0
- package/dist/components/avatar/examples/comment-thread.d.ts +5 -0
- package/dist/components/avatar/examples/comment-thread.d.ts.map +1 -0
- package/dist/components/avatar/examples/fallback-variants.d.ts +5 -0
- package/dist/components/avatar/examples/fallback-variants.d.ts.map +1 -0
- package/dist/components/avatar/examples/group-overflow.d.ts +5 -0
- package/dist/components/avatar/examples/group-overflow.d.ts.map +1 -0
- package/dist/components/avatar/examples/team-list.d.ts +5 -0
- package/dist/components/avatar/examples/team-list.d.ts.map +1 -0
- package/dist/components/badge/examples/admin-tags.d.ts +3 -0
- package/dist/components/badge/examples/admin-tags.d.ts.map +1 -0
- package/dist/components/badge/examples/canonical.d.ts +3 -0
- package/dist/components/badge/examples/canonical.d.ts.map +1 -0
- package/dist/components/badge/examples/ecommerce-inventory.d.ts +3 -0
- package/dist/components/badge/examples/ecommerce-inventory.d.ts.map +1 -0
- package/dist/components/badge/examples/inbox-labels.d.ts +3 -0
- package/dist/components/badge/examples/inbox-labels.d.ts.map +1 -0
- package/dist/components/badge/examples/status-presence.d.ts +6 -0
- package/dist/components/badge/examples/status-presence.d.ts.map +1 -0
- package/dist/components/banner/examples/billing-alert.d.ts +3 -0
- package/dist/components/banner/examples/billing-alert.d.ts.map +1 -0
- package/dist/components/banner/examples/cookie-consent-row.d.ts +3 -0
- package/dist/components/banner/examples/cookie-consent-row.d.ts.map +1 -0
- package/dist/components/banner/examples/feature-promo.d.ts +3 -0
- package/dist/components/banner/examples/feature-promo.d.ts.map +1 -0
- package/dist/components/banner/examples/maintenance.d.ts +3 -0
- package/dist/components/banner/examples/maintenance.d.ts.map +1 -0
- package/dist/components/breadcrumb/examples/canonical.d.ts +3 -0
- package/dist/components/breadcrumb/examples/canonical.d.ts.map +1 -0
- package/dist/components/breadcrumb/examples/deep-documentation.d.ts +3 -0
- package/dist/components/breadcrumb/examples/deep-documentation.d.ts.map +1 -0
- package/dist/components/breadcrumb/examples/ecommerce-product.d.ts +3 -0
- package/dist/components/breadcrumb/examples/ecommerce-product.d.ts.map +1 -0
- package/dist/components/breadcrumb/examples/long-path-ellipsis.d.ts +6 -0
- package/dist/components/breadcrumb/examples/long-path-ellipsis.d.ts.map +1 -0
- package/dist/components/breadcrumb/examples/saas-settings.d.ts +3 -0
- package/dist/components/breadcrumb/examples/saas-settings.d.ts.map +1 -0
- package/dist/components/button/examples/canonical-composition.d.ts +5 -0
- package/dist/components/button/examples/canonical-composition.d.ts.map +1 -0
- package/dist/components/button/examples/destructive-confirm.d.ts +5 -0
- package/dist/components/button/examples/destructive-confirm.d.ts.map +1 -0
- package/dist/components/button/examples/form-submit-row.d.ts +5 -0
- package/dist/components/button/examples/form-submit-row.d.ts.map +1 -0
- package/dist/components/button/examples/marketing-cta.d.ts +5 -0
- package/dist/components/button/examples/marketing-cta.d.ts.map +1 -0
- package/dist/components/button/examples/toolbar.d.ts +5 -0
- package/dist/components/button/examples/toolbar.d.ts.map +1 -0
- package/dist/components/button-group/examples/editor-toolbar.d.ts +6 -0
- package/dist/components/button-group/examples/editor-toolbar.d.ts.map +1 -0
- package/dist/components/button-group/examples/form-footer.d.ts +5 -0
- package/dist/components/button-group/examples/form-footer.d.ts.map +1 -0
- package/dist/components/button-group/examples/view-switcher.d.ts +5 -0
- package/dist/components/button-group/examples/view-switcher.d.ts.map +1 -0
- package/dist/components/button-group/examples/wizard-actions.d.ts +5 -0
- package/dist/components/button-group/examples/wizard-actions.d.ts.map +1 -0
- package/dist/components/card/examples/cta-cover.d.ts +5 -0
- package/dist/components/card/examples/cta-cover.d.ts.map +1 -0
- package/dist/components/card/examples/list-card.d.ts +3 -0
- package/dist/components/card/examples/list-card.d.ts.map +1 -0
- package/dist/components/card/examples/media-mini.d.ts +3 -0
- package/dist/components/card/examples/media-mini.d.ts.map +1 -0
- package/dist/components/card/examples/metric-dashboard.d.ts +3 -0
- package/dist/components/card/examples/metric-dashboard.d.ts.map +1 -0
- package/dist/components/card/examples/split-layout.d.ts +3 -0
- package/dist/components/card/examples/split-layout.d.ts.map +1 -0
- package/dist/components/checkbox/examples/bulk-select-rows.d.ts +5 -0
- package/dist/components/checkbox/examples/bulk-select-rows.d.ts.map +1 -0
- package/dist/components/checkbox/examples/feature-flags-list.d.ts +5 -0
- package/dist/components/checkbox/examples/feature-flags-list.d.ts.map +1 -0
- package/dist/components/checkbox/examples/settings-panel.d.ts +5 -0
- package/dist/components/checkbox/examples/settings-panel.d.ts.map +1 -0
- package/dist/components/checkbox/examples/terms-acceptance.d.ts +5 -0
- package/dist/components/checkbox/examples/terms-acceptance.d.ts.map +1 -0
- package/dist/components/code-block/examples/api-response-preview.d.ts +3 -0
- package/dist/components/code-block/examples/api-response-preview.d.ts.map +1 -0
- package/dist/components/code-block/examples/config-snippet.d.ts +3 -0
- package/dist/components/code-block/examples/config-snippet.d.ts.map +1 -0
- package/dist/components/code-block/examples/error-stack.d.ts +3 -0
- package/dist/components/code-block/examples/error-stack.d.ts.map +1 -0
- package/dist/components/code-block/examples/minimal.d.ts +3 -0
- package/dist/components/code-block/examples/minimal.d.ts.map +1 -0
- package/dist/components/code-block/examples/tutorial-step.d.ts +3 -0
- package/dist/components/code-block/examples/tutorial-step.d.ts.map +1 -0
- package/dist/components/color-picker/examples/brand-kit.d.ts +3 -0
- package/dist/components/color-picker/examples/brand-kit.d.ts.map +1 -0
- package/dist/components/color-picker/examples/controlled-form-field.d.ts +3 -0
- package/dist/components/color-picker/examples/controlled-form-field.d.ts.map +1 -0
- package/dist/components/color-picker/examples/minimal-popover.d.ts +3 -0
- package/dist/components/color-picker/examples/minimal-popover.d.ts.map +1 -0
- package/dist/components/color-picker/examples/product-variant-swatch.d.ts +3 -0
- package/dist/components/color-picker/examples/product-variant-swatch.d.ts.map +1 -0
- package/dist/components/color-picker/examples/theme-accent.d.ts +3 -0
- package/dist/components/color-picker/examples/theme-accent.d.ts.map +1 -0
- package/dist/components/command-menu/examples/app-palette.d.ts +5 -0
- package/dist/components/command-menu/examples/app-palette.d.ts.map +1 -0
- package/dist/components/command-menu/examples/disabled-items.d.ts +6 -0
- package/dist/components/command-menu/examples/disabled-items.d.ts.map +1 -0
- package/dist/components/command-menu/examples/file-search.d.ts +5 -0
- package/dist/components/command-menu/examples/file-search.d.ts.map +1 -0
- package/dist/components/command-menu/examples/quick-actions.d.ts +5 -0
- package/dist/components/command-menu/examples/quick-actions.d.ts.map +1 -0
- package/dist/components/data-table/examples/canonical-orders.d.ts +6 -0
- package/dist/components/data-table/examples/canonical-orders.d.ts.map +1 -0
- package/dist/components/data-table/examples/controlled-sort-and-page.d.ts +5 -0
- package/dist/components/data-table/examples/controlled-sort-and-page.d.ts.map +1 -0
- package/dist/components/data-table/examples/infinite-scroll-load-more.d.ts +6 -0
- package/dist/components/data-table/examples/infinite-scroll-load-more.d.ts.map +1 -0
- package/dist/components/data-table/examples/row-selection.d.ts +6 -0
- package/dist/components/data-table/examples/row-selection.d.ts.map +1 -0
- package/dist/components/data-table/examples/sticky-header-first-column.d.ts +6 -0
- package/dist/components/data-table/examples/sticky-header-first-column.d.ts.map +1 -0
- package/dist/components/datepicker/examples/birthdate.d.ts +5 -0
- package/dist/components/datepicker/examples/birthdate.d.ts.map +1 -0
- package/dist/components/datepicker/examples/booking.d.ts +5 -0
- package/dist/components/datepicker/examples/booking.d.ts.map +1 -0
- package/dist/components/datepicker/examples/full-width-form.d.ts +5 -0
- package/dist/components/datepicker/examples/full-width-form.d.ts.map +1 -0
- package/dist/components/datepicker/examples/range-report.d.ts +5 -0
- package/dist/components/datepicker/examples/range-report.d.ts.map +1 -0
- package/dist/components/digit-input/examples/error-state.d.ts +3 -0
- package/dist/components/digit-input/examples/error-state.d.ts.map +1 -0
- package/dist/components/digit-input/examples/otp-login.d.ts +3 -0
- package/dist/components/digit-input/examples/otp-login.d.ts.map +1 -0
- package/dist/components/digit-input/examples/pin.d.ts +3 -0
- package/dist/components/digit-input/examples/pin.d.ts.map +1 -0
- package/dist/components/digit-input/examples/resend-and-clear.d.ts +3 -0
- package/dist/components/digit-input/examples/resend-and-clear.d.ts.map +1 -0
- package/dist/components/digit-input/examples/verification-step.d.ts +3 -0
- package/dist/components/digit-input/examples/verification-step.d.ts.map +1 -0
- package/dist/components/divider/examples/card-splits.d.ts +3 -0
- package/dist/components/divider/examples/card-splits.d.ts.map +1 -0
- package/dist/components/divider/examples/inset-stack.d.ts +6 -0
- package/dist/components/divider/examples/inset-stack.d.ts.map +1 -0
- package/dist/components/divider/examples/line-spacing-column.d.ts +6 -0
- package/dist/components/divider/examples/line-spacing-column.d.ts.map +1 -0
- package/dist/components/divider/examples/list-separators.d.ts +3 -0
- package/dist/components/divider/examples/list-separators.d.ts.map +1 -0
- package/dist/components/divider/examples/section-breaks.d.ts +3 -0
- package/dist/components/divider/examples/section-breaks.d.ts.map +1 -0
- package/dist/components/drawer/examples/cart-preview.d.ts +5 -0
- package/dist/components/drawer/examples/cart-preview.d.ts.map +1 -0
- package/dist/components/drawer/examples/explicit-panel.d.ts +5 -0
- package/dist/components/drawer/examples/explicit-panel.d.ts.map +1 -0
- package/dist/components/drawer/examples/filters-panel.d.ts +5 -0
- package/dist/components/drawer/examples/filters-panel.d.ts.map +1 -0
- package/dist/components/drawer/examples/mobile-nav-sheet.d.ts +5 -0
- package/dist/components/drawer/examples/mobile-nav-sheet.d.ts.map +1 -0
- package/dist/components/drawer/examples/settings-side.d.ts +5 -0
- package/dist/components/drawer/examples/settings-side.d.ts.map +1 -0
- package/dist/components/dropdown/examples/account-menu.d.ts +3 -0
- package/dist/components/dropdown/examples/account-menu.d.ts.map +1 -0
- package/dist/components/dropdown/examples/actions-menu.d.ts +3 -0
- package/dist/components/dropdown/examples/actions-menu.d.ts.map +1 -0
- package/dist/components/dropdown/examples/placement-demo.d.ts +3 -0
- package/dist/components/dropdown/examples/placement-demo.d.ts.map +1 -0
- package/dist/components/dropdown/examples/select-like-list.d.ts +7 -0
- package/dist/components/dropdown/examples/select-like-list.d.ts.map +1 -0
- package/dist/components/file-upload/examples/avatar-upload.d.ts +6 -0
- package/dist/components/file-upload/examples/avatar-upload.d.ts.map +1 -0
- package/dist/components/file-upload/examples/controlled-list.d.ts +5 -0
- package/dist/components/file-upload/examples/controlled-list.d.ts.map +1 -0
- package/dist/components/file-upload/examples/document-attach.d.ts +5 -0
- package/dist/components/file-upload/examples/document-attach.d.ts.map +1 -0
- package/dist/components/file-upload/examples/drag-area.d.ts +5 -0
- package/dist/components/file-upload/examples/drag-area.d.ts.map +1 -0
- package/dist/components/hint/examples/error-hint.d.ts +3 -0
- package/dist/components/hint/examples/error-hint.d.ts.map +1 -0
- package/dist/components/hint/examples/field-help.d.ts +3 -0
- package/dist/components/hint/examples/field-help.d.ts.map +1 -0
- package/dist/components/hint/examples/inline-tip-form.d.ts +3 -0
- package/dist/components/hint/examples/inline-tip-form.d.ts.map +1 -0
- package/dist/components/hint/examples/success-confirmation.d.ts +6 -0
- package/dist/components/hint/examples/success-confirmation.d.ts.map +1 -0
- package/dist/components/hint/examples/with-icon.d.ts +3 -0
- package/dist/components/hint/examples/with-icon.d.ts.map +1 -0
- package/dist/components/input/examples/checkout-full-width.d.ts +5 -0
- package/dist/components/input/examples/checkout-full-width.d.ts.map +1 -0
- package/dist/components/input/examples/login-email.d.ts +5 -0
- package/dist/components/input/examples/login-email.d.ts.map +1 -0
- package/dist/components/input/examples/password-with-hint.d.ts +5 -0
- package/dist/components/input/examples/password-with-hint.d.ts.map +1 -0
- package/dist/components/input/examples/search.d.ts +5 -0
- package/dist/components/input/examples/search.d.ts.map +1 -0
- package/dist/components/kbd/examples/combination-keys.d.ts +3 -0
- package/dist/components/kbd/examples/combination-keys.d.ts.map +1 -0
- package/dist/components/kbd/examples/docs-legend.d.ts +3 -0
- package/dist/components/kbd/examples/docs-legend.d.ts.map +1 -0
- package/dist/components/kbd/examples/inline-doc-hint.d.ts +3 -0
- package/dist/components/kbd/examples/inline-doc-hint.d.ts.map +1 -0
- package/dist/components/kbd/examples/shortcut-row.d.ts +3 -0
- package/dist/components/kbd/examples/shortcut-row.d.ts.map +1 -0
- package/dist/components/kbd/examples/toolbar-hints.d.ts +3 -0
- package/dist/components/kbd/examples/toolbar-hints.d.ts.map +1 -0
- package/dist/components/label/examples/accessibility-pattern.d.ts +6 -0
- package/dist/components/label/examples/accessibility-pattern.d.ts.map +1 -0
- package/dist/components/label/examples/grouped-labels.d.ts +6 -0
- package/dist/components/label/examples/grouped-labels.d.ts.map +1 -0
- package/dist/components/label/examples/optional-field.d.ts +3 -0
- package/dist/components/label/examples/optional-field.d.ts.map +1 -0
- package/dist/components/label/examples/required-field.d.ts +3 -0
- package/dist/components/label/examples/required-field.d.ts.map +1 -0
- package/dist/components/label/examples/with-icon.d.ts +3 -0
- package/dist/components/label/examples/with-icon.d.ts.map +1 -0
- package/dist/components/link-button/examples/disabled.d.ts +6 -0
- package/dist/components/link-button/examples/disabled.d.ts.map +1 -0
- package/dist/components/link-button/examples/external.d.ts +3 -0
- package/dist/components/link-button/examples/external.d.ts.map +1 -0
- package/dist/components/link-button/examples/footer-legal.d.ts +3 -0
- package/dist/components/link-button/examples/footer-legal.d.ts.map +1 -0
- package/dist/components/link-button/examples/inline-text-link.d.ts +3 -0
- package/dist/components/link-button/examples/inline-text-link.d.ts.map +1 -0
- package/dist/components/link-button/examples/navigation-cluster.d.ts +3 -0
- package/dist/components/link-button/examples/navigation-cluster.d.ts.map +1 -0
- package/dist/components/modal/examples/canonical-maximal.d.ts +6 -0
- package/dist/components/modal/examples/canonical-maximal.d.ts.map +1 -0
- package/dist/components/modal/examples/scenario-confirm-delete.d.ts +3 -0
- package/dist/components/modal/examples/scenario-confirm-delete.d.ts.map +1 -0
- package/dist/components/modal/examples/scenario-edit-entity.d.ts +3 -0
- package/dist/components/modal/examples/scenario-edit-entity.d.ts.map +1 -0
- package/dist/components/modal/examples/scenario-legal-consent.d.ts +3 -0
- package/dist/components/modal/examples/scenario-legal-consent.d.ts.map +1 -0
- package/dist/components/modal/examples/scenario-multi-field-form.d.ts +3 -0
- package/dist/components/modal/examples/scenario-multi-field-form.d.ts.map +1 -0
- package/dist/components/notification/examples/action-toast.d.ts +2 -0
- package/dist/components/notification/examples/action-toast.d.ts.map +1 -0
- package/dist/components/notification/examples/error-success.d.ts +2 -0
- package/dist/components/notification/examples/error-success.d.ts.map +1 -0
- package/dist/components/notification/examples/notification-store.d.ts +2 -0
- package/dist/components/notification/examples/notification-store.d.ts.map +1 -0
- package/dist/components/notification/examples/positions.d.ts +2 -0
- package/dist/components/notification/examples/positions.d.ts.map +1 -0
- package/dist/components/notification/examples/toast-queue.d.ts +2 -0
- package/dist/components/notification/examples/toast-queue.d.ts.map +1 -0
- package/dist/components/pagination/examples/canonical-composition.d.ts +5 -0
- package/dist/components/pagination/examples/canonical-composition.d.ts.map +1 -0
- package/dist/components/pagination/examples/compact.d.ts +3 -0
- package/dist/components/pagination/examples/compact.d.ts.map +1 -0
- package/dist/components/pagination/examples/controlled-page.d.ts +3 -0
- package/dist/components/pagination/examples/controlled-page.d.ts.map +1 -0
- package/dist/components/pagination/examples/full-width-list.d.ts +3 -0
- package/dist/components/pagination/examples/full-width-list.d.ts.map +1 -0
- package/dist/components/pagination/examples/table-footer.d.ts +3 -0
- package/dist/components/pagination/examples/table-footer.d.ts.map +1 -0
- package/dist/components/popover/examples/canonical-panel.d.ts +5 -0
- package/dist/components/popover/examples/canonical-panel.d.ts.map +1 -0
- package/dist/components/popover/examples/date-trigger.d.ts +5 -0
- package/dist/components/popover/examples/date-trigger.d.ts.map +1 -0
- package/dist/components/popover/examples/form-in-popover.d.ts +5 -0
- package/dist/components/popover/examples/form-in-popover.d.ts.map +1 -0
- package/dist/components/popover/examples/placement.d.ts +5 -0
- package/dist/components/popover/examples/placement.d.ts.map +1 -0
- package/dist/components/popover/examples/rich-content.d.ts +5 -0
- package/dist/components/popover/examples/rich-content.d.ts.map +1 -0
- package/dist/components/progress-bar/examples/indeterminate-busy-state.d.ts +6 -0
- package/dist/components/progress-bar/examples/indeterminate-busy-state.d.ts.map +1 -0
- package/dist/components/progress-bar/examples/labeled.d.ts +3 -0
- package/dist/components/progress-bar/examples/labeled.d.ts.map +1 -0
- package/dist/components/progress-bar/examples/step-progress.d.ts +3 -0
- package/dist/components/progress-bar/examples/step-progress.d.ts.map +1 -0
- package/dist/components/progress-bar/examples/upload-progress.d.ts +3 -0
- package/dist/components/progress-bar/examples/upload-progress.d.ts.map +1 -0
- package/dist/components/progress-bar/examples/wizard-composition.d.ts +3 -0
- package/dist/components/progress-bar/examples/wizard-composition.d.ts.map +1 -0
- package/dist/components/progress-circle/examples/a11y-label.d.ts +6 -0
- package/dist/components/progress-circle/examples/a11y-label.d.ts.map +1 -0
- package/dist/components/progress-circle/examples/composition.d.ts +3 -0
- package/dist/components/progress-circle/examples/composition.d.ts.map +1 -0
- package/dist/components/progress-circle/examples/controlled.d.ts +3 -0
- package/dist/components/progress-circle/examples/controlled.d.ts.map +1 -0
- package/dist/components/progress-circle/examples/dashboard-ring.d.ts +3 -0
- package/dist/components/progress-circle/examples/dashboard-ring.d.ts.map +1 -0
- package/dist/components/progress-circle/examples/max-scale.d.ts +3 -0
- package/dist/components/progress-circle/examples/max-scale.d.ts.map +1 -0
- package/dist/components/radio/examples/notification-channel.d.ts +3 -0
- package/dist/components/radio/examples/notification-channel.d.ts.map +1 -0
- package/dist/components/radio/examples/plan-picker.d.ts +3 -0
- package/dist/components/radio/examples/plan-picker.d.ts.map +1 -0
- package/dist/components/radio/examples/settings-group.d.ts +3 -0
- package/dist/components/radio/examples/settings-group.d.ts.map +1 -0
- package/dist/components/radio/examples/shipping-method.d.ts +3 -0
- package/dist/components/radio/examples/shipping-method.d.ts.map +1 -0
- package/dist/components/segmented-control/examples/canonical-composition.d.ts +5 -0
- package/dist/components/segmented-control/examples/canonical-composition.d.ts.map +1 -0
- package/dist/components/segmented-control/examples/catalog-filters.d.ts +5 -0
- package/dist/components/segmented-control/examples/catalog-filters.d.ts.map +1 -0
- package/dist/components/segmented-control/examples/pricing-toggle.d.ts +5 -0
- package/dist/components/segmented-control/examples/pricing-toggle.d.ts.map +1 -0
- package/dist/components/segmented-control/examples/view-mode.d.ts +5 -0
- package/dist/components/segmented-control/examples/view-mode.d.ts.map +1 -0
- package/dist/components/segmented-progress-bar/examples/distribution-breakdown.d.ts +3 -0
- package/dist/components/segmented-progress-bar/examples/distribution-breakdown.d.ts.map +1 -0
- package/dist/components/segmented-progress-bar/examples/multi-phase-rollout.d.ts +3 -0
- package/dist/components/segmented-progress-bar/examples/multi-phase-rollout.d.ts.map +1 -0
- package/dist/components/segmented-progress-bar/examples/segment-gaps.d.ts +3 -0
- package/dist/components/segmented-progress-bar/examples/segment-gaps.d.ts.map +1 -0
- package/dist/components/segmented-progress-bar/examples/size-ladder.d.ts +3 -0
- package/dist/components/segmented-progress-bar/examples/size-ladder.d.ts.map +1 -0
- package/dist/components/segmented-progress-bar/examples/storage-mix.d.ts +3 -0
- package/dist/components/segmented-progress-bar/examples/storage-mix.d.ts.map +1 -0
- package/dist/components/select/examples/01-country.d.ts +6 -0
- package/dist/components/select/examples/01-country.d.ts.map +1 -0
- package/dist/components/select/examples/02-controlled.d.ts +5 -0
- package/dist/components/select/examples/02-controlled.d.ts.map +1 -0
- package/dist/components/select/examples/03-groups.d.ts +5 -0
- package/dist/components/select/examples/03-groups.d.ts.map +1 -0
- package/dist/components/select/examples/04-full-width-form.d.ts +6 -0
- package/dist/components/select/examples/04-full-width-form.d.ts.map +1 -0
- package/dist/components/slider/examples/01-volume.d.ts +5 -0
- package/dist/components/slider/examples/01-volume.d.ts.map +1 -0
- package/dist/components/slider/examples/02-price-range.d.ts +5 -0
- package/dist/components/slider/examples/02-price-range.d.ts.map +1 -0
- package/dist/components/slider/examples/03-controlled.d.ts +5 -0
- package/dist/components/slider/examples/03-controlled.d.ts.map +1 -0
- package/dist/components/slider/examples/04-disabled.d.ts +5 -0
- package/dist/components/slider/examples/04-disabled.d.ts.map +1 -0
- package/dist/components/stepper/examples/01-checkout-horizontal.d.ts +5 -0
- package/dist/components/stepper/examples/01-checkout-horizontal.d.ts.map +1 -0
- package/dist/components/stepper/examples/02-onboarding-vertical.d.ts +5 -0
- package/dist/components/stepper/examples/02-onboarding-vertical.d.ts.map +1 -0
- package/dist/components/stepper/examples/03-vertical-primitive-rail.d.ts +5 -0
- package/dist/components/stepper/examples/03-vertical-primitive-rail.d.ts.map +1 -0
- package/dist/components/stepper/examples/04-checkout-step-error.d.ts +6 -0
- package/dist/components/stepper/examples/04-checkout-step-error.d.ts.map +1 -0
- package/dist/components/stepper/examples/05-horizontal-primitive.d.ts +5 -0
- package/dist/components/stepper/examples/05-horizontal-primitive.d.ts.map +1 -0
- package/dist/components/switch/examples/canonical-maximal.d.ts +5 -0
- package/dist/components/switch/examples/canonical-maximal.d.ts.map +1 -0
- package/dist/components/switch/examples/scenario-billing-annual.d.ts +5 -0
- package/dist/components/switch/examples/scenario-billing-annual.d.ts.map +1 -0
- package/dist/components/switch/examples/scenario-feature-flag.d.ts +5 -0
- package/dist/components/switch/examples/scenario-feature-flag.d.ts.map +1 -0
- package/dist/components/switch/examples/scenario-form-consent.d.ts +5 -0
- package/dist/components/switch/examples/scenario-form-consent.d.ts.map +1 -0
- package/dist/components/switch/examples/scenario-settings-toggle.d.ts +5 -0
- package/dist/components/switch/examples/scenario-settings-toggle.d.ts.map +1 -0
- package/dist/components/tabs/examples/01-settings-vertical-rail.d.ts +6 -0
- package/dist/components/tabs/examples/01-settings-vertical-rail.d.ts.map +1 -0
- package/dist/components/tabs/examples/02-dashboard-subviews.d.ts +6 -0
- package/dist/components/tabs/examples/02-dashboard-subviews.d.ts.map +1 -0
- package/dist/components/tabs/examples/03-tab-triggers-with-icons.d.ts +6 -0
- package/dist/components/tabs/examples/03-tab-triggers-with-icons.d.ts.map +1 -0
- package/dist/components/tabs/examples/04-long-labels-narrow.d.ts +6 -0
- package/dist/components/tabs/examples/04-long-labels-narrow.d.ts.map +1 -0
- package/dist/components/tabs/examples/05-controlled-active-tab.d.ts +6 -0
- package/dist/components/tabs/examples/05-controlled-active-tab.d.ts.map +1 -0
- package/dist/components/tag/examples/01-filter-chips.d.ts +5 -0
- package/dist/components/tag/examples/01-filter-chips.d.ts.map +1 -0
- package/dist/components/tag/examples/02-removable-selected-values.d.ts +6 -0
- package/dist/components/tag/examples/02-removable-selected-values.d.ts.map +1 -0
- package/dist/components/tag/examples/03-status-metadata.d.ts +5 -0
- package/dist/components/tag/examples/03-status-metadata.d.ts.map +1 -0
- package/dist/components/tag/examples/04-tag-sizes.d.ts +3 -0
- package/dist/components/tag/examples/04-tag-sizes.d.ts.map +1 -0
- package/dist/components/textarea/examples/01-support-ticket.d.ts +5 -0
- package/dist/components/textarea/examples/01-support-ticket.d.ts.map +1 -0
- package/dist/components/textarea/examples/02-comment.d.ts +5 -0
- package/dist/components/textarea/examples/02-comment.d.ts.map +1 -0
- package/dist/components/textarea/examples/03-controlled.d.ts +5 -0
- package/dist/components/textarea/examples/03-controlled.d.ts.map +1 -0
- package/dist/components/textarea/examples/04-full-width.d.ts +5 -0
- package/dist/components/textarea/examples/04-full-width.d.ts.map +1 -0
- package/dist/components/tooltip/examples/canonical-icon-hint.d.ts +5 -0
- package/dist/components/tooltip/examples/canonical-icon-hint.d.ts.map +1 -0
- package/dist/components/tooltip/examples/scenario-controlled-programmatic.d.ts +5 -0
- package/dist/components/tooltip/examples/scenario-controlled-programmatic.d.ts.map +1 -0
- package/dist/components/tooltip/examples/scenario-delay-provider.d.ts +5 -0
- package/dist/components/tooltip/examples/scenario-delay-provider.d.ts.map +1 -0
- package/dist/components/tooltip/examples/scenario-long-content.d.ts +5 -0
- package/dist/components/tooltip/examples/scenario-long-content.d.ts.map +1 -0
- package/dist/components/tooltip/examples/scenario-side-bottom.d.ts +5 -0
- package/dist/components/tooltip/examples/scenario-side-bottom.d.ts.map +1 -0
- package/dist/components/typography/examples/01-article.d.ts +5 -0
- package/dist/components/typography/examples/01-article.d.ts.map +1 -0
- package/dist/components/typography/examples/02-form-labels-contrast.d.ts +6 -0
- package/dist/components/typography/examples/02-form-labels-contrast.d.ts.map +1 -0
- package/dist/components/typography/examples/03-marketing-hero.d.ts +3 -0
- package/dist/components/typography/examples/03-marketing-hero.d.ts.map +1 -0
- package/dist/components/typography/examples/04-reading-scale.d.ts +3 -0
- package/dist/components/typography/examples/04-reading-scale.d.ts.map +1 -0
- package/dist/components/typography/examples/05-inline-emphasis.d.ts +3 -0
- package/dist/components/typography/examples/05-inline-emphasis.d.ts.map +1 -0
- package/dist/layout/sidebar/examples/01-app-shell-nav.d.ts +5 -0
- package/dist/layout/sidebar/examples/01-app-shell-nav.d.ts.map +1 -0
- package/dist/layout/sidebar/examples/02-collapsible-desktop.d.ts +6 -0
- package/dist/layout/sidebar/examples/02-collapsible-desktop.d.ts.map +1 -0
- package/dist/layout/sidebar/examples/03-controlled-state.d.ts +5 -0
- package/dist/layout/sidebar/examples/03-controlled-state.d.ts.map +1 -0
- package/dist/layout/sidebar/examples/04-router-navigation.d.ts +6 -0
- package/dist/layout/sidebar/examples/04-router-navigation.d.ts.map +1 -0
- package/dist/layout/sidebar/examples/05-responsive-behavior.d.ts +7 -0
- package/dist/layout/sidebar/examples/05-responsive-behavior.d.ts.map +1 -0
- package/package.json +4 -1
- package/src/components/accordion/COMPONENT.md +60 -7
- package/src/components/accordion/examples/01-faq-marketing.tsx +62 -0
- package/src/components/accordion/examples/02-settings-panels.tsx +67 -0
- package/src/components/accordion/examples/03-checkout-order-summary.tsx +87 -0
- package/src/components/accordion/examples/04-api-docs-sections.tsx +86 -0
- package/src/components/accordion/examples/05-knowledge-base-categories.tsx +65 -0
- package/src/components/accordion/examples/examples.module.css +30 -0
- package/src/components/avatar/COMPONENT.md +59 -7
- package/src/components/avatar/examples/app-header-nav.tsx +41 -0
- package/src/components/avatar/examples/comment-thread.tsx +57 -0
- package/src/components/avatar/examples/examples.module.css +72 -0
- package/src/components/avatar/examples/fallback-variants.tsx +33 -0
- package/src/components/avatar/examples/group-overflow.tsx +32 -0
- package/src/components/avatar/examples/team-list.tsx +45 -0
- package/src/components/badge/COMPONENT.md +35 -12
- package/src/components/badge/examples/admin-tags.tsx +35 -0
- package/src/components/badge/examples/canonical.tsx +6 -0
- package/src/components/badge/examples/ecommerce-inventory.tsx +35 -0
- package/src/components/badge/examples/inbox-labels.tsx +36 -0
- package/src/components/badge/examples/status-presence.tsx +32 -0
- package/src/components/banner/COMPONENT.md +56 -29
- package/src/components/banner/examples/billing-alert.tsx +35 -0
- package/src/components/banner/examples/cookie-consent-row.tsx +36 -0
- package/src/components/banner/examples/feature-promo.tsx +36 -0
- package/src/components/banner/examples/maintenance.tsx +23 -0
- package/src/components/breadcrumb/COMPONENT.md +71 -38
- package/src/components/breadcrumb/examples/canonical.tsx +12 -0
- package/src/components/breadcrumb/examples/deep-documentation.tsx +16 -0
- package/src/components/breadcrumb/examples/ecommerce-product.tsx +18 -0
- package/src/components/breadcrumb/examples/long-path-ellipsis.tsx +21 -0
- package/src/components/breadcrumb/examples/saas-settings.tsx +16 -0
- package/src/components/button/COMPONENT.md +33 -12
- package/src/components/button/examples/canonical-composition.tsx +46 -0
- package/src/components/button/examples/destructive-confirm.tsx +36 -0
- package/src/components/button/examples/form-submit-row.tsx +33 -0
- package/src/components/button/examples/marketing-cta.tsx +26 -0
- package/src/components/button/examples/toolbar.tsx +38 -0
- package/src/components/button-group/COMPONENT.md +56 -8
- package/src/components/button-group/examples/editor-toolbar.tsx +46 -0
- package/src/components/button-group/examples/form-footer.tsx +19 -0
- package/src/components/button-group/examples/view-switcher.tsx +25 -0
- package/src/components/button-group/examples/wizard-actions.tsx +30 -0
- package/src/components/card/COMPONENT.md +61 -243
- package/src/components/card/examples/cover-banner.module.css +8 -0
- package/src/components/card/examples/cta-cover.tsx +44 -0
- package/src/components/card/examples/layout.module.css +7 -0
- package/src/components/card/examples/list-card.tsx +20 -0
- package/src/components/card/examples/media-mini.tsx +55 -0
- package/src/components/card/examples/metric-dashboard.tsx +60 -0
- package/src/components/card/examples/sparkline.module.css +10 -0
- package/src/components/card/examples/split-layout.tsx +29 -0
- package/src/components/checkbox/COMPONENT.md +41 -10
- package/src/components/checkbox/examples/bulk-select-rows.tsx +54 -0
- package/src/components/checkbox/examples/feature-flags-list.tsx +43 -0
- package/src/components/checkbox/examples/settings-panel.tsx +50 -0
- package/src/components/checkbox/examples/terms-acceptance.tsx +42 -0
- package/src/components/code-block/COMPONENT.md +60 -30
- package/src/components/code-block/examples/api-response-preview.tsx +21 -0
- package/src/components/code-block/examples/config-snippet.tsx +17 -0
- package/src/components/code-block/examples/error-stack.tsx +19 -0
- package/src/components/code-block/examples/minimal.tsx +6 -0
- package/src/components/code-block/examples/tutorial-step.tsx +28 -0
- package/src/components/color-picker/COMPONENT.md +74 -52
- package/src/components/color-picker/examples/brand-kit.tsx +48 -0
- package/src/components/color-picker/examples/controlled-form-field.tsx +40 -0
- package/src/components/color-picker/examples/minimal-popover.tsx +26 -0
- package/src/components/color-picker/examples/product-variant-swatch.tsx +42 -0
- package/src/components/color-picker/examples/theme-accent.tsx +46 -0
- package/src/components/command-menu/COMPONENT.md +33 -5
- package/src/components/command-menu/examples/app-palette.tsx +129 -0
- package/src/components/command-menu/examples/disabled-items.tsx +73 -0
- package/src/components/command-menu/examples/file-search.tsx +98 -0
- package/src/components/command-menu/examples/quick-actions.tsx +74 -0
- package/src/components/data-table/COMPONENT.md +1 -0
- package/src/components/data-table/examples/canonical-orders.tsx +107 -0
- package/src/components/data-table/examples/controlled-sort-and-page.tsx +66 -0
- package/src/components/data-table/examples/infinite-scroll-load-more.tsx +63 -0
- package/src/components/data-table/examples/row-selection.tsx +90 -0
- package/src/components/data-table/examples/sticky-header-first-column.tsx +55 -0
- package/src/components/datepicker/COMPONENT.md +32 -0
- package/src/components/datepicker/examples/birthdate.tsx +43 -0
- package/src/components/datepicker/examples/booking.tsx +71 -0
- package/src/components/datepicker/examples/full-width-form.tsx +59 -0
- package/src/components/datepicker/examples/range-report.tsx +54 -0
- package/src/components/digit-input/COMPONENT.md +36 -4
- package/src/components/digit-input/examples/error-state.tsx +14 -0
- package/src/components/digit-input/examples/otp-login.tsx +17 -0
- package/src/components/digit-input/examples/pin.tsx +11 -0
- package/src/components/digit-input/examples/resend-and-clear.tsx +23 -0
- package/src/components/digit-input/examples/verification-step.tsx +21 -0
- package/src/components/divider/COMPONENT.md +74 -46
- package/src/components/divider/examples/card-splits.tsx +27 -0
- package/src/components/divider/examples/divider-examples.module.css +137 -0
- package/src/components/divider/examples/inset-stack.tsx +33 -0
- package/src/components/divider/examples/line-spacing-column.tsx +27 -0
- package/src/components/divider/examples/list-separators.tsx +20 -0
- package/src/components/divider/examples/section-breaks.tsx +27 -0
- package/src/components/drawer/examples/cart-preview.tsx +55 -0
- package/src/components/drawer/examples/examples-scenarios.module.css +79 -0
- package/src/components/drawer/examples/explicit-panel.tsx +40 -0
- package/src/components/drawer/examples/filters-panel.tsx +53 -0
- package/src/components/drawer/examples/mobile-nav-sheet.tsx +43 -0
- package/src/components/drawer/examples/settings-side.tsx +54 -0
- package/src/components/dropdown/COMPONENT.md +77 -38
- package/src/components/dropdown/examples/account-menu.tsx +52 -0
- package/src/components/dropdown/examples/actions-menu.tsx +37 -0
- package/src/components/dropdown/examples/placement-demo.tsx +59 -0
- package/src/components/dropdown/examples/select-like-list.tsx +31 -0
- package/src/components/file-upload/COMPONENT.md +32 -3
- package/src/components/file-upload/examples/avatar-upload.tsx +54 -0
- package/src/components/file-upload/examples/controlled-list.tsx +103 -0
- package/src/components/file-upload/examples/document-attach.tsx +70 -0
- package/src/components/file-upload/examples/drag-area.tsx +49 -0
- package/src/components/hint/COMPONENT.md +54 -22
- package/src/components/hint/examples/error-hint.tsx +22 -0
- package/src/components/hint/examples/field-help.tsx +27 -0
- package/src/components/hint/examples/inline-tip-form.tsx +44 -0
- package/src/components/hint/examples/success-confirmation.tsx +30 -0
- package/src/components/hint/examples/with-icon.tsx +13 -0
- package/src/components/input/COMPONENT.md +48 -28
- package/src/components/input/examples/checkout-full-width.module.css +8 -0
- package/src/components/input/examples/checkout-full-width.tsx +39 -0
- package/src/components/input/examples/login-email.tsx +33 -0
- package/src/components/input/examples/password-with-hint.tsx +28 -0
- package/src/components/input/examples/search.tsx +30 -0
- package/src/components/kbd/COMPONENT.md +61 -33
- package/src/components/kbd/examples/combination-keys.tsx +22 -0
- package/src/components/kbd/examples/docs-legend.tsx +44 -0
- package/src/components/kbd/examples/inline-doc-hint.tsx +18 -0
- package/src/components/kbd/examples/shortcut-row.tsx +21 -0
- package/src/components/kbd/examples/toolbar-hints.tsx +31 -0
- package/src/components/label/COMPONENT.md +40 -9
- package/src/components/label/examples/accessibility-pattern.tsx +28 -0
- package/src/components/label/examples/grouped-labels.tsx +30 -0
- package/src/components/label/examples/optional-field.tsx +14 -0
- package/src/components/label/examples/required-field.tsx +20 -0
- package/src/components/label/examples/with-icon.tsx +16 -0
- package/src/components/link-button/COMPONENT.md +43 -24
- package/src/components/link-button/examples/disabled.tsx +18 -0
- package/src/components/link-button/examples/external.tsx +18 -0
- package/src/components/link-button/examples/footer-legal.tsx +22 -0
- package/src/components/link-button/examples/inline-text-link.tsx +14 -0
- package/src/components/link-button/examples/navigation-cluster.tsx +24 -0
- package/src/components/modal/COMPONENT.md +72 -1
- package/src/components/modal/examples/canonical-maximal.tsx +43 -0
- package/src/components/modal/examples/examples.module.css +13 -0
- package/src/components/modal/examples/scenario-confirm-delete.tsx +38 -0
- package/src/components/modal/examples/scenario-edit-entity.tsx +50 -0
- package/src/components/modal/examples/scenario-legal-consent.tsx +36 -0
- package/src/components/modal/examples/scenario-multi-field-form.tsx +75 -0
- package/src/components/notification/COMPONENT.md +45 -15
- package/src/components/notification/examples/action-toast.tsx +84 -0
- package/src/components/notification/examples/error-success.tsx +70 -0
- package/src/components/notification/examples/notification-store.tsx +58 -0
- package/src/components/notification/examples/positions.tsx +73 -0
- package/src/components/notification/examples/toast-queue.tsx +63 -0
- package/src/components/pagination/COMPONENT.md +63 -23
- package/src/components/pagination/examples/canonical-composition.tsx +20 -0
- package/src/components/pagination/examples/compact.tsx +32 -0
- package/src/components/pagination/examples/controlled-page.tsx +57 -0
- package/src/components/pagination/examples/full-width-list.tsx +37 -0
- package/src/components/pagination/examples/table-footer.tsx +74 -0
- package/src/components/popover/COMPONENT.md +67 -3
- package/src/components/popover/examples/canonical-panel.tsx +24 -0
- package/src/components/popover/examples/date-trigger.tsx +33 -0
- package/src/components/popover/examples/form-in-popover.tsx +79 -0
- package/src/components/popover/examples/placement.tsx +42 -0
- package/src/components/popover/examples/rich-content.tsx +39 -0
- package/src/components/progress-bar/COMPONENT.md +49 -24
- package/src/components/progress-bar/examples/indeterminate-busy-state.tsx +21 -0
- package/src/components/progress-bar/examples/labeled.tsx +6 -0
- package/src/components/progress-bar/examples/progress-bar-examples.module.css +22 -0
- package/src/components/progress-bar/examples/step-progress.tsx +23 -0
- package/src/components/progress-bar/examples/upload-progress.tsx +27 -0
- package/src/components/progress-bar/examples/wizard-composition.tsx +18 -0
- package/src/components/progress-circle/COMPONENT.md +58 -28
- package/src/components/progress-circle/examples/a11y-label.tsx +32 -0
- package/src/components/progress-circle/examples/composition.tsx +66 -0
- package/src/components/progress-circle/examples/controlled.tsx +58 -0
- package/src/components/progress-circle/examples/dashboard-ring.tsx +36 -0
- package/src/components/progress-circle/examples/max-scale.tsx +61 -0
- package/src/components/radio/COMPONENT.md +49 -21
- package/src/components/radio/examples/notification-channel.tsx +29 -0
- package/src/components/radio/examples/plan-picker.tsx +53 -0
- package/src/components/radio/examples/radio-examples.module.css +31 -0
- package/src/components/radio/examples/settings-group.tsx +30 -0
- package/src/components/radio/examples/shipping-method.tsx +26 -0
- package/src/components/segmented-control/COMPONENT.md +22 -0
- package/src/components/segmented-control/examples/canonical-composition.tsx +70 -0
- package/src/components/segmented-control/examples/catalog-filters.tsx +41 -0
- package/src/components/segmented-control/examples/pricing-toggle.tsx +40 -0
- package/src/components/segmented-control/examples/segmented-examples.module.css +12 -0
- package/src/components/segmented-control/examples/view-mode.tsx +53 -0
- package/src/components/segmented-progress-bar/COMPONENT.md +54 -25
- package/src/components/segmented-progress-bar/examples/distribution-breakdown.tsx +16 -0
- package/src/components/segmented-progress-bar/examples/multi-phase-rollout.tsx +15 -0
- package/src/components/segmented-progress-bar/examples/segment-gaps.tsx +23 -0
- package/src/components/segmented-progress-bar/examples/size-ladder.tsx +19 -0
- package/src/components/segmented-progress-bar/examples/storage-mix.tsx +16 -0
- package/src/components/select/COMPONENT.md +46 -19
- package/src/components/select/examples/01-country.tsx +37 -0
- package/src/components/select/examples/02-controlled.tsx +35 -0
- package/src/components/select/examples/03-groups.tsx +45 -0
- package/src/components/select/examples/04-full-width-form.tsx +51 -0
- package/src/components/select/examples/examples.module.css +37 -0
- package/src/components/slider/COMPONENT.md +30 -14
- package/src/components/slider/examples/01-volume.tsx +17 -0
- package/src/components/slider/examples/02-price-range.tsx +18 -0
- package/src/components/slider/examples/03-controlled.tsx +30 -0
- package/src/components/slider/examples/04-disabled.tsx +25 -0
- package/src/components/slider/examples/examples.module.css +17 -0
- package/src/components/stepper/COMPONENT.md +40 -15
- package/src/components/stepper/examples/01-checkout-horizontal.tsx +32 -0
- package/src/components/stepper/examples/02-onboarding-vertical.tsx +51 -0
- package/src/components/stepper/examples/03-vertical-primitive-rail.tsx +36 -0
- package/src/components/stepper/examples/04-checkout-step-error.tsx +30 -0
- package/src/components/stepper/examples/05-horizontal-primitive.tsx +37 -0
- package/src/components/stepper/examples/examples.module.css +16 -0
- package/src/components/switch/COMPONENT.md +61 -15
- package/src/components/switch/examples/canonical-maximal.tsx +19 -0
- package/src/components/switch/examples/examples.module.css +56 -0
- package/src/components/switch/examples/scenario-billing-annual.tsx +27 -0
- package/src/components/switch/examples/scenario-feature-flag.tsx +30 -0
- package/src/components/switch/examples/scenario-form-consent.tsx +34 -0
- package/src/components/switch/examples/scenario-settings-toggle.tsx +26 -0
- package/src/components/tabs/COMPONENT.md +44 -17
- package/src/components/tabs/examples/01-settings-vertical-rail.tsx +49 -0
- package/src/components/tabs/examples/02-dashboard-subviews.tsx +42 -0
- package/src/components/tabs/examples/03-tab-triggers-with-icons.tsx +49 -0
- package/src/components/tabs/examples/04-long-labels-narrow.tsx +35 -0
- package/src/components/tabs/examples/05-controlled-active-tab.tsx +48 -0
- package/src/components/tabs/examples/examples.module.css +58 -0
- package/src/components/tag/COMPONENT.md +25 -10
- package/src/components/tag/examples/01-filter-chips.tsx +36 -0
- package/src/components/tag/examples/02-removable-selected-values.tsx +33 -0
- package/src/components/tag/examples/03-status-metadata.tsx +24 -0
- package/src/components/tag/examples/04-tag-sizes.tsx +18 -0
- package/src/components/tag/examples/examples.module.css +20 -0
- package/src/components/textarea/COMPONENT.md +41 -19
- package/src/components/textarea/examples/01-support-ticket.tsx +35 -0
- package/src/components/textarea/examples/02-comment.tsx +35 -0
- package/src/components/textarea/examples/03-controlled.tsx +27 -0
- package/src/components/textarea/examples/04-full-width.tsx +23 -0
- package/src/components/textarea/examples/examples.module.css +21 -0
- package/src/components/tooltip/COMPONENT.md +57 -0
- package/src/components/tooltip/examples/canonical-icon-hint.tsx +19 -0
- package/src/components/tooltip/examples/examples.module.css +6 -0
- package/src/components/tooltip/examples/scenario-controlled-programmatic.tsx +32 -0
- package/src/components/tooltip/examples/scenario-delay-provider.tsx +19 -0
- package/src/components/tooltip/examples/scenario-long-content.tsx +22 -0
- package/src/components/tooltip/examples/scenario-side-bottom.tsx +21 -0
- package/src/components/typography/COMPONENT.md +63 -39
- package/src/components/typography/examples/01-article.tsx +45 -0
- package/src/components/typography/examples/02-form-labels-contrast.tsx +61 -0
- package/src/components/typography/examples/03-marketing-hero.tsx +25 -0
- package/src/components/typography/examples/04-reading-scale.tsx +47 -0
- package/src/components/typography/examples/05-inline-emphasis.tsx +30 -0
- package/src/components/typography/examples/examples.module.css +30 -0
- package/src/layout/sidebar/COMPONENT.md +138 -0
- package/src/layout/sidebar/examples/01-app-shell-nav.tsx +79 -0
- package/src/layout/sidebar/examples/02-collapsible-desktop.tsx +64 -0
- package/src/layout/sidebar/examples/03-controlled-state.tsx +72 -0
- package/src/layout/sidebar/examples/04-router-navigation.tsx +70 -0
- package/src/layout/sidebar/examples/05-responsive-behavior.tsx +46 -0
- package/src/layout/sidebar/examples/examples.module.css +67 -0
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { Bold, Italic, Underline } from "lucide-react";
|
|
2
|
+
import { ButtonGroup } from "prime-ui-kit";
|
|
3
|
+
import * as React from "react";
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Editor toolbar: icon segments share one outline; active format uses `pressed`.
|
|
7
|
+
* Meaning for assistive tech: `aria-label` on each icon-only `Item`.
|
|
8
|
+
*/
|
|
9
|
+
export default function EditorToolbarExample() {
|
|
10
|
+
const [marks, setMarks] = React.useState({ bold: true, italic: false, underline: false });
|
|
11
|
+
|
|
12
|
+
return (
|
|
13
|
+
<ButtonGroup.Root aria-label="Text formatting" size="m">
|
|
14
|
+
<ButtonGroup.Item
|
|
15
|
+
aria-label="Bold"
|
|
16
|
+
pressed={marks.bold}
|
|
17
|
+
type="button"
|
|
18
|
+
onClick={() => setMarks((m) => ({ ...m, bold: !m.bold }))}
|
|
19
|
+
>
|
|
20
|
+
<ButtonGroup.Icon>
|
|
21
|
+
<Bold />
|
|
22
|
+
</ButtonGroup.Icon>
|
|
23
|
+
</ButtonGroup.Item>
|
|
24
|
+
<ButtonGroup.Item
|
|
25
|
+
aria-label="Italic"
|
|
26
|
+
pressed={marks.italic}
|
|
27
|
+
type="button"
|
|
28
|
+
onClick={() => setMarks((m) => ({ ...m, italic: !m.italic }))}
|
|
29
|
+
>
|
|
30
|
+
<ButtonGroup.Icon>
|
|
31
|
+
<Italic />
|
|
32
|
+
</ButtonGroup.Icon>
|
|
33
|
+
</ButtonGroup.Item>
|
|
34
|
+
<ButtonGroup.Item
|
|
35
|
+
aria-label="Underline"
|
|
36
|
+
pressed={marks.underline}
|
|
37
|
+
type="button"
|
|
38
|
+
onClick={() => setMarks((m) => ({ ...m, underline: !m.underline }))}
|
|
39
|
+
>
|
|
40
|
+
<ButtonGroup.Icon>
|
|
41
|
+
<Underline />
|
|
42
|
+
</ButtonGroup.Icon>
|
|
43
|
+
</ButtonGroup.Item>
|
|
44
|
+
</ButtonGroup.Root>
|
|
45
|
+
);
|
|
46
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { ButtonGroup } from "prime-ui-kit";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Form footer: native submit + reset in one segmented control.
|
|
5
|
+
*/
|
|
6
|
+
export default function FormFooterExample() {
|
|
7
|
+
return (
|
|
8
|
+
<form
|
|
9
|
+
onSubmit={(e) => {
|
|
10
|
+
e.preventDefault();
|
|
11
|
+
}}
|
|
12
|
+
>
|
|
13
|
+
<ButtonGroup.Root aria-label="Save or reset draft" size="m">
|
|
14
|
+
<ButtonGroup.Item type="submit">Save</ButtonGroup.Item>
|
|
15
|
+
<ButtonGroup.Item type="reset">Reset</ButtonGroup.Item>
|
|
16
|
+
</ButtonGroup.Root>
|
|
17
|
+
</form>
|
|
18
|
+
);
|
|
19
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { ButtonGroup } from "prime-ui-kit";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
|
|
4
|
+
type ViewMode = "list" | "grid" | "board";
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* View switcher: one active segment; state lives in the parent.
|
|
8
|
+
*/
|
|
9
|
+
export default function ViewSwitcherExample() {
|
|
10
|
+
const [mode, setMode] = React.useState<ViewMode>("list");
|
|
11
|
+
|
|
12
|
+
return (
|
|
13
|
+
<ButtonGroup.Root aria-label="View layout" size="m">
|
|
14
|
+
<ButtonGroup.Item pressed={mode === "list"} type="button" onClick={() => setMode("list")}>
|
|
15
|
+
List
|
|
16
|
+
</ButtonGroup.Item>
|
|
17
|
+
<ButtonGroup.Item pressed={mode === "grid"} type="button" onClick={() => setMode("grid")}>
|
|
18
|
+
Grid
|
|
19
|
+
</ButtonGroup.Item>
|
|
20
|
+
<ButtonGroup.Item pressed={mode === "board"} type="button" onClick={() => setMode("board")}>
|
|
21
|
+
Board
|
|
22
|
+
</ButtonGroup.Item>
|
|
23
|
+
</ButtonGroup.Root>
|
|
24
|
+
);
|
|
25
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { ButtonGroup } from "prime-ui-kit";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
|
|
4
|
+
const STEP_LAST = 2;
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Wizard step actions: Back disabled on first step; Next advances (demo stops at last step).
|
|
8
|
+
*/
|
|
9
|
+
export default function WizardActionsExample() {
|
|
10
|
+
const [step, setStep] = React.useState(0);
|
|
11
|
+
|
|
12
|
+
return (
|
|
13
|
+
<ButtonGroup.Root aria-label="Wizard navigation" size="m">
|
|
14
|
+
<ButtonGroup.Item
|
|
15
|
+
disabled={step === 0}
|
|
16
|
+
type="button"
|
|
17
|
+
onClick={() => setStep((s) => Math.max(0, s - 1))}
|
|
18
|
+
>
|
|
19
|
+
Back
|
|
20
|
+
</ButtonGroup.Item>
|
|
21
|
+
<ButtonGroup.Item
|
|
22
|
+
disabled={step >= STEP_LAST}
|
|
23
|
+
type="button"
|
|
24
|
+
onClick={() => setStep((s) => Math.min(STEP_LAST, s + 1))}
|
|
25
|
+
>
|
|
26
|
+
Next
|
|
27
|
+
</ButtonGroup.Item>
|
|
28
|
+
</ButtonGroup.Root>
|
|
29
|
+
);
|
|
30
|
+
}
|
|
@@ -1,286 +1,104 @@
|
|
|
1
1
|
# Card
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
**Defaults:** use **`variant`** and documented slots as in the canonical example below. Set **`flat`** when the card should read as a flat surface on the page (no elevation shadow).
|
|
4
4
|
|
|
5
5
|
## About
|
|
6
6
|
|
|
7
|
-
Composable surfaces for **dashboard KPIs**, **lists**, **CTA tiles**, **split metrics**, **media headers**, and **chart shells**: layout presets driven by **`variant`** on **`Card.Root`**. Typography and spacing use semantic tokens (`--prime-sys-*`). The kit does not ship chart primitives —
|
|
7
|
+
Composable surfaces for **dashboard KPIs**, **lists**, **CTA tiles**, **split metrics**, **media headers**, and **chart shells**: layout presets are driven by **`variant`** on **`Card.Root`**. Typography and spacing use semantic tokens (`--prime-sys-*`). The kit does not ship chart primitives — mount a chart library root, SVG, or [ProgressBar](../progress-bar/COMPONENT.md) inside **`Card.Media`**, **`Card.Chart`** (**`panel`**, edge-to-edge), padded **`Card.Body`**, or **`Card.Cover`**.
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
1. [Material Design 3 — Cards (guidelines)](https://m3.material.io/components/cards/guidelines)
|
|
12
|
-
2. [IBM Carbon — Tile (usage)](https://carbondesignsystem.com/components/tile/usage/)
|
|
13
|
-
3. [Ant Design — Card](https://ant.design/components/card)
|
|
14
|
-
4. [Shopify Polaris — Legacy Card](https://polaris.shopify.com/components/layout-and-structure/legacy-card)
|
|
15
|
-
5. [shadcn/ui — Card](https://ui.shadcn.com/docs/components/card)
|
|
16
|
-
6. [Atlassian Design — Composition](https://atlassian.design/get-started/develop/composition)
|
|
17
|
-
7. [PatternFly — Card](https://www.patternfly.org/components/card/)
|
|
18
|
-
8. [GOV.UK Design System — Card](https://design-system.service.gov.uk/components/card/)
|
|
19
|
-
9. [Nielsen Norman Group — Dashboard Design](https://www.nngroup.com/articles/dashboard-design/)
|
|
20
|
-
10. [GitHub Primer — Card](https://primer.style/product/components/card/)
|
|
21
|
-
|
|
22
|
-
**Кратко по смыслу:** MD3 и большинство дизайн-систем описывают карточку как контейнер с заголовком, опциональным медиа и действиями; Carbon использует **tile** для группировки на сетке; в дашбордах часто выделяют KPI, списки активности, CTA и сравнение метрик — см. NN/g про структуру дашборда. **Responsive dashboards (prime-ui-kit):** CSS Grid для рядов KPI (`repeat(auto-fill, minmax(...))`) — [prime-ui skill](https://github.com/esurkov1/prime-ui/blob/main/SKILL/SKILL.md).
|
|
9
|
+
Further reading: [Material Design 3 — Cards](https://m3.material.io/components/cards/guidelines), [IBM Carbon — Tile](https://carbondesignsystem.com/components/tile/usage/), [Nielsen Norman Group — Dashboard Design](https://www.nngroup.com/articles/dashboard-design/).
|
|
23
10
|
|
|
24
11
|
- **Use** **`variant="mini"`** for a compact KPI: optional **`IconBox`** + **`Stack`** with **`Label`** and **`Value`**.
|
|
25
|
-
- **Use** **`variant="mini-media"`** for the same
|
|
12
|
+
- **Use** **`variant="mini-media"`** for the same leading row as **`mini`**, then **`Media`** for a sparkline, ring, or thin progress strip.
|
|
26
13
|
- **Use** **`variant="metric"`** for a title row: **`HeaderRow`** with **`Lead`** (badge or icon) and **`Value`**, plus **`Description`** underneath.
|
|
27
14
|
- **Use** **`variant="panel"`** for a titled block: **`SectionHeader`** + **`Body`** (padded copy or tables) and/or **`Chart`** (full-width chart area, no inner padding).
|
|
28
15
|
- **Use** **`variant="stat-trend"`** for a large KPI with period delta: **`Label`**, **`Value`**, **`Delta`** (`trend`: `up` | `down` | `neutral`).
|
|
29
|
-
- **Use** **`variant="cta"`** for a call-to-action tile: **`Title`**, **`CtaBody`**, **`Actions
|
|
30
|
-
- **Use** **`variant="list"`** for activity or alerts: **`ListHeader
|
|
31
|
-
- **Use** **`variant="split"`** for two related metrics: **`Split`** with two **`SplitCell`** blocks (
|
|
32
|
-
- **Use** **`variant="cover"`** for media on top: **`Cover
|
|
33
|
-
- **Do not use** as the only focus target for navigation;
|
|
34
|
-
- **Do not use** decorative icons without **`aria-hidden`** when the text
|
|
35
|
-
|
|
36
|
-
## Composition
|
|
37
|
-
|
|
38
|
-
- **`Card.Root`** — required **`variant`**: `"mini"` \| `"mini-media"` \| `"metric"` \| `"panel"` \| `"stat-trend"` \| `"cta"` \| `"list"` \| `"split"` \| `"cover"`. Optional **`flat`** removes the default surface shadow (tile-like). Sets `data-variant` / `data-flat` for styling.
|
|
39
|
-
- **`Card.IconBox`** — square leading area in **`mini`** and **`mini-media`**: background **`status-information-background`**, radius **`size-control-m-radius`**, icon color via **`status-information-foreground`** (decorative icons: **`aria-hidden`**).
|
|
40
|
-
- **`Card.Lead`** — left cluster in **`HeaderRow`** (badge from [Badge](../badge/COMPONENT.md), raw icon, or both).
|
|
41
|
-
- **`Card.HeaderRow`** — top row for **`metric`**: typically **`Lead`** + **`Value`**.
|
|
42
|
-
- **`Card.Stack`** — vertical block for **`Label`** + **`Value`** in **`mini`** and **`mini-media`**.
|
|
43
|
-
- **`Card.Label`** — secondary line (muted).
|
|
44
|
-
- **`Card.Value`** — primary metric string.
|
|
45
|
-
- **`Card.Description`** — supporting line under the header row (`p`).
|
|
46
|
-
- **`Card.Media`** — bottom region with top border; place charts/progress here.
|
|
47
|
-
- **`Card.SectionHeader`** — bar with bottom border for **`panel`**.
|
|
48
|
-
- **`Card.SectionTitle`** — `h3` title.
|
|
49
|
-
- **`Card.SectionTrailing`** — optional actions or icon on the right.
|
|
50
|
-
- **`Card.Body`** — **`panel`**: padded region for text, summaries, or tables. With **`variant="panel"`**, the shell has a **minimum height**; a **single element child** can stretch inside the padded box. Override height via **`className`** on **`Root`** if needed.
|
|
51
|
-
- **`Card.Chart`** — **`panel`**: **no** horizontal or vertical inner padding; mount the chart library root here for **edge-to-edge** drawing under the header. Optional after **`Body`**; then **`Chart`** fills remaining height.
|
|
52
|
-
- **`Card.Title`** — **`h3`** with **`title`** styles; use in **`cta`**, **`list`** header, **`cover`** stack.
|
|
53
|
-
- **`Card.Delta`** — supporting line for **`stat-trend`**; optional **`trend`** sets `data-trend` for color (`up` \| `down` \| `neutral`).
|
|
54
|
-
- **`Card.CtaBody`** — body copy in **`cta`**.
|
|
55
|
-
- **`Card.Actions`** — row of actions (border-top); use in **`cta`** and **`cover`**.
|
|
56
|
-
- **`Card.Cover`** — top media region for **`cover`** (image or decorative block; keep meaningful images described elsewhere for a11y).
|
|
57
|
-
- **`Card.Split`** / **`Card.SplitCell`** — two-column grid for **`split`**.
|
|
58
|
-
- **`Card.ListHeader`** — top bar for **`list`** (border-bottom).
|
|
59
|
-
- **`Card.List`** / **`Card.ListItem`** — semantic **`ul`** / **`li`** for **`list`**.
|
|
16
|
+
- **Use** **`variant="cta"`** for a call-to-action tile: **`Title`**, **`CtaBody`**, **`Actions`**.
|
|
17
|
+
- **Use** **`variant="list"`** for activity or alerts: **`ListHeader`**, **`List`** / **`ListItem`**.
|
|
18
|
+
- **Use** **`variant="split"`** for two related metrics: **`Split`** with two **`SplitCell`** blocks (often **`IconBox`** + **`Stack`** each).
|
|
19
|
+
- **Use** **`variant="cover"`** for media on top: **`Cover`**, then **`Stack`** and optional **`Actions`**.
|
|
20
|
+
- **Do not use** the whole card as the only focus target for navigation; prefer [LinkButton](../link-button/COMPONENT.md) or an inner control, unless you add explicit `role` / `tabIndex` and keyboard handling.
|
|
21
|
+
- **Do not use** decorative icons without **`aria-hidden`** when the text already conveys the meaning.
|
|
60
22
|
|
|
61
|
-
|
|
23
|
+
## Canonical example
|
|
62
24
|
|
|
63
|
-
|
|
64
|
-
import { Card } from "prime-ui-kit";
|
|
65
|
-
|
|
66
|
-
export function MiniKpi() {
|
|
67
|
-
return (
|
|
68
|
-
<Card.Root variant="mini">
|
|
69
|
-
<Card.IconBox aria-hidden>…</Card.IconBox>
|
|
70
|
-
<Card.Stack>
|
|
71
|
-
<Card.Label>Age</Card.Label>
|
|
72
|
-
<Card.Value>36 years</Card.Value>
|
|
73
|
-
</Card.Stack>
|
|
74
|
-
</Card.Root>
|
|
75
|
-
);
|
|
76
|
-
}
|
|
77
|
-
```
|
|
78
|
-
|
|
79
|
-
### Mini + media example
|
|
25
|
+
Rich **`panel`**: section header with trailing control, padded intro in **`Body`**, and an edge-to-edge **`Chart`** region for a real chart root.
|
|
80
26
|
|
|
81
27
|
```tsx
|
|
82
|
-
import { Card } from "prime-ui-kit";
|
|
28
|
+
import { Card, Icon, Typography } from "prime-ui-kit";
|
|
83
29
|
|
|
84
|
-
export function
|
|
85
|
-
return (
|
|
86
|
-
<Card.Root variant="mini-media">
|
|
87
|
-
<Card.IconBox aria-hidden>…</Card.IconBox>
|
|
88
|
-
<Card.Stack>
|
|
89
|
-
<Card.Label>Glucose</Card.Label>
|
|
90
|
-
<Card.Value>5.4 mmol/L</Card.Value>
|
|
91
|
-
</Card.Stack>
|
|
92
|
-
<Card.Media>
|
|
93
|
-
<svg aria-hidden viewBox="0 0 120 40" />
|
|
94
|
-
</Card.Media>
|
|
95
|
-
</Card.Root>
|
|
96
|
-
);
|
|
97
|
-
}
|
|
98
|
-
```
|
|
99
|
-
|
|
100
|
-
### Metric example
|
|
101
|
-
|
|
102
|
-
```tsx
|
|
103
|
-
import { Badge } from "prime-ui-kit";
|
|
104
|
-
import { Card } from "prime-ui-kit";
|
|
105
|
-
|
|
106
|
-
export function MetricCard() {
|
|
107
|
-
return (
|
|
108
|
-
<Card.Root variant="metric">
|
|
109
|
-
<Card.HeaderRow>
|
|
110
|
-
<Card.Lead>
|
|
111
|
-
<Badge.Root color="blue" variant="filled" size="s">
|
|
112
|
-
CRP
|
|
113
|
-
</Badge.Root>
|
|
114
|
-
</Card.Lead>
|
|
115
|
-
<Card.Value>1.8 mg/L</Card.Value>
|
|
116
|
-
</Card.HeaderRow>
|
|
117
|
-
<Card.Description>Slightly elevated</Card.Description>
|
|
118
|
-
</Card.Root>
|
|
119
|
-
);
|
|
120
|
-
}
|
|
121
|
-
```
|
|
122
|
-
|
|
123
|
-
### Panel example (chart only)
|
|
124
|
-
|
|
125
|
-
```tsx
|
|
126
|
-
import { Card } from "prime-ui-kit";
|
|
127
|
-
|
|
128
|
-
export function ChartSection() {
|
|
129
|
-
return (
|
|
130
|
-
<Card.Root variant="panel">
|
|
131
|
-
<Card.SectionHeader>
|
|
132
|
-
<Card.SectionTitle>Revenue</Card.SectionTitle>
|
|
133
|
-
</Card.SectionHeader>
|
|
134
|
-
<Card.Chart>
|
|
135
|
-
<div id="revenue-chart" />
|
|
136
|
-
</Card.Chart>
|
|
137
|
-
</Card.Root>
|
|
138
|
-
);
|
|
139
|
-
}
|
|
140
|
-
```
|
|
141
|
-
|
|
142
|
-
### Panel example (padded content + chart)
|
|
143
|
-
|
|
144
|
-
```tsx
|
|
145
|
-
import { Card } from "prime-ui-kit";
|
|
146
|
-
|
|
147
|
-
export function ChartSectionWithIntro() {
|
|
30
|
+
export function RevenuePanelCard() {
|
|
148
31
|
return (
|
|
149
32
|
<Card.Root variant="panel">
|
|
150
33
|
<Card.SectionHeader>
|
|
151
34
|
<Card.SectionTitle>Revenue</Card.SectionTitle>
|
|
35
|
+
<Card.SectionTrailing>
|
|
36
|
+
<Icon name="nav.layoutGrid" aria-hidden />
|
|
37
|
+
</Card.SectionTrailing>
|
|
152
38
|
</Card.SectionHeader>
|
|
153
39
|
<Card.Body>
|
|
154
|
-
<
|
|
40
|
+
<Typography.Root variant="body-small" tone="muted">
|
|
41
|
+
Quarter-to-date summary; the chart mounts below with no horizontal or vertical padding inside
|
|
42
|
+
Card.Chart.
|
|
43
|
+
</Typography.Root>
|
|
155
44
|
</Card.Body>
|
|
156
45
|
<Card.Chart>
|
|
157
|
-
<div id="revenue-chart" />
|
|
46
|
+
<div id="revenue-chart" aria-hidden />
|
|
158
47
|
</Card.Chart>
|
|
159
48
|
</Card.Root>
|
|
160
49
|
);
|
|
161
50
|
}
|
|
162
51
|
```
|
|
163
52
|
|
|
164
|
-
|
|
53
|
+
## Extended examples
|
|
165
54
|
|
|
166
|
-
|
|
167
|
-
import { Card } from "prime-ui-kit";
|
|
168
|
-
|
|
169
|
-
export function StatTrendCard() {
|
|
170
|
-
return (
|
|
171
|
-
<Card.Root variant="stat-trend">
|
|
172
|
-
<Card.Label>Revenue (30d)</Card.Label>
|
|
173
|
-
<Card.Value>$420k</Card.Value>
|
|
174
|
-
<Card.Delta trend="up">+18% vs prior month</Card.Delta>
|
|
175
|
-
</Card.Root>
|
|
176
|
-
);
|
|
177
|
-
}
|
|
178
|
-
```
|
|
179
|
-
|
|
180
|
-
### CTA example
|
|
181
|
-
|
|
182
|
-
```tsx
|
|
183
|
-
import { Button, Card, LinkButton } from "prime-ui-kit";
|
|
184
|
-
|
|
185
|
-
export function CtaCard() {
|
|
186
|
-
return (
|
|
187
|
-
<Card.Root variant="cta">
|
|
188
|
-
<Card.Title>Export report</Card.Title>
|
|
189
|
-
<Card.CtaBody>Download a CSV for the selected period.</Card.CtaBody>
|
|
190
|
-
<Card.Actions>
|
|
191
|
-
<LinkButton.Root href="#">Download</LinkButton.Root>
|
|
192
|
-
<Button.Root mode="ghost" type="button" variant="neutral">
|
|
193
|
-
Cancel
|
|
194
|
-
</Button.Root>
|
|
195
|
-
</Card.Actions>
|
|
196
|
-
</Card.Root>
|
|
197
|
-
);
|
|
198
|
-
}
|
|
199
|
-
```
|
|
200
|
-
|
|
201
|
-
### List example
|
|
202
|
-
|
|
203
|
-
```tsx
|
|
204
|
-
import { Card } from "prime-ui-kit";
|
|
205
|
-
import { LinkButton } from "prime-ui-kit";
|
|
206
|
-
|
|
207
|
-
export function ListCard() {
|
|
208
|
-
return (
|
|
209
|
-
<Card.Root variant="list">
|
|
210
|
-
<Card.ListHeader>
|
|
211
|
-
<Card.Title>Recent activity</Card.Title>
|
|
212
|
-
<LinkButton.Root href="#">View all</LinkButton.Root>
|
|
213
|
-
</Card.ListHeader>
|
|
214
|
-
<Card.List>
|
|
215
|
-
<Card.ListItem>Payment received</Card.ListItem>
|
|
216
|
-
<Card.ListItem>New comment on ticket #12</Card.ListItem>
|
|
217
|
-
</Card.List>
|
|
218
|
-
</Card.Root>
|
|
219
|
-
);
|
|
220
|
-
}
|
|
221
|
-
```
|
|
222
|
-
|
|
223
|
-
### Split example
|
|
224
|
-
|
|
225
|
-
```tsx
|
|
226
|
-
import { Card } from "prime-ui-kit";
|
|
55
|
+
Copy-oriented scenarios (English copy) live next to this file:
|
|
227
56
|
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
<Card.Label>Conversion</Card.Label>
|
|
236
|
-
<Card.Value>3.8%</Card.Value>
|
|
237
|
-
</Card.Stack>
|
|
238
|
-
</Card.SplitCell>
|
|
239
|
-
<Card.SplitCell>
|
|
240
|
-
<Card.IconBox>{/* icon */}</Card.IconBox>
|
|
241
|
-
<Card.Stack>
|
|
242
|
-
<Card.Label>AOV</Card.Label>
|
|
243
|
-
<Card.Value>$64</Card.Value>
|
|
244
|
-
</Card.Stack>
|
|
245
|
-
</Card.SplitCell>
|
|
246
|
-
</Card.Split>
|
|
247
|
-
</Card.Root>
|
|
248
|
-
);
|
|
249
|
-
}
|
|
250
|
-
```
|
|
57
|
+
| File | Scenario |
|
|
58
|
+
|------|----------|
|
|
59
|
+
| [examples/metric-dashboard.tsx](./examples/metric-dashboard.tsx) | KPI row: **`stat-trend`**, **`metric`**, **`mini-media`** |
|
|
60
|
+
| [examples/list-card.tsx](./examples/list-card.tsx) | Activity list with header link |
|
|
61
|
+
| [examples/media-mini.tsx](./examples/media-mini.tsx) | **`mini-media`**: sparkline and **`ProgressBar`** |
|
|
62
|
+
| [examples/split-layout.tsx](./examples/split-layout.tsx) | **`split`**: two metrics in one tile |
|
|
63
|
+
| [examples/cta-cover.tsx](./examples/cta-cover.tsx) | **`cta`** tile and **`cover`** with gradient banner |
|
|
251
64
|
|
|
252
|
-
|
|
65
|
+
Playground: more live variants under `playground/snippets/card/` (e.g. **`flat`**, **`row`**, **`stat-trend`**, chart-only panel).
|
|
253
66
|
|
|
254
|
-
|
|
255
|
-
import { Card } from "prime-ui-kit";
|
|
67
|
+
## Composition
|
|
256
68
|
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
69
|
+
- **`Card.Root`** — required **`variant`**: `"mini"` \| `"mini-media"` \| `"metric"` \| `"panel"` \| `"stat-trend"` \| `"cta"` \| `"list"` \| `"split"` \| `"cover"`. Optional **`flat`** removes the default surface shadow. Sets `data-variant` / `data-flat` for styling.
|
|
70
|
+
- **`Card.IconBox`** — square leading area in **`mini`** and **`mini-media`**: background **`status-information-background`**, radius **`size-control-m-radius`**, icon color via **`status-information-foreground`** (decorative icons: **`aria-hidden`**).
|
|
71
|
+
- **`Card.Lead`** — left cluster in **`HeaderRow`** (badge from [Badge](../badge/COMPONENT.md), raw icon, or both).
|
|
72
|
+
- **`Card.HeaderRow`** — top row for **`metric`**: typically **`Lead`** + **`Value`**.
|
|
73
|
+
- **`Card.Stack`** — vertical block for **`Label`** + **`Value`** in **`mini`** and **`mini-media`**.
|
|
74
|
+
- **`Card.Label`** — secondary line (muted).
|
|
75
|
+
- **`Card.Value`** — primary metric string.
|
|
76
|
+
- **`Card.Description`** — supporting line under the header row (`p`).
|
|
77
|
+
- **`Card.Media`** — bottom region with top border; place charts or progress here.
|
|
78
|
+
- **`Card.SectionHeader`** — bar with bottom border for **`panel`**.
|
|
79
|
+
- **`Card.SectionTitle`** — `h3` title.
|
|
80
|
+
- **`Card.SectionTrailing`** — optional actions or icon on the right.
|
|
81
|
+
- **`Card.Body`** — **`panel`**: padded region for text, summaries, or tables. With **`variant="panel"`**, the shell has a **minimum height**; a **single element child** can stretch inside the padded box. Override height via **`className`** on **`Root`** if needed.
|
|
82
|
+
- **`Card.Chart`** — **`panel`**: **no** horizontal or vertical inner padding; mount the chart library root here for **edge-to-edge** drawing under the header. Optional after **`Body`**; then **`Chart`** fills remaining height.
|
|
83
|
+
- **`Card.Title`** — **`h3`** with **`title`** styles; use in **`cta`**, **`list`** header, **`cover`** stack.
|
|
84
|
+
- **`Card.Delta`** — supporting line for **`stat-trend`**; optional **`trend`** sets `data-trend` for color (`up` \| `down` \| `neutral`).
|
|
85
|
+
- **`Card.CtaBody`** — body copy in **`cta`**.
|
|
86
|
+
- **`Card.Actions`** — row of actions (border-top); use in **`cta`** and **`cover`**.
|
|
87
|
+
- **`Card.Cover`** — top media region for **`cover`** (image or decorative block; keep meaningful images described in text for a11y).
|
|
88
|
+
- **`Card.Split`** / **`Card.SplitCell`** — two-column grid for **`split`**.
|
|
89
|
+
- **`Card.ListHeader`** — top bar for **`list`** (border-bottom).
|
|
90
|
+
- **`Card.List`** / **`Card.ListItem`** — semantic **`ul`** / **`li`** for **`list`**.
|
|
272
91
|
|
|
273
92
|
## Rules
|
|
274
93
|
|
|
275
|
-
- Typography follows the **control `m` tier** (`--prime-sys-size-control-m-text` for values and section titles, `--prime-sys-size-control-m-supportText` for labels and descriptions), aligned with [Label](../label/COMPONENT.md) / [Input](../input/COMPONENT.md) defaults
|
|
94
|
+
- Typography follows the **control `m` tier** (`--prime-sys-size-control-m-text` for values and section titles, `--prime-sys-size-control-m-supportText` for labels and descriptions), aligned with [Label](../label/COMPONENT.md) / [Input](../input/COMPONENT.md) defaults.
|
|
276
95
|
- Prefer **`flat`** on dense dashboards if shadows feel noisy; default shadow uses **`--prime-sys-elevation-shadow-surface`**.
|
|
277
|
-
- **`SectionTitle`**
|
|
96
|
+
- **`SectionTitle`** and **`Title`** are **`h3`**; match heading levels to the page outline.
|
|
278
97
|
- **`Description`** is a **`p`** — only one block per card unless you compose custom markup inside **`Body`** for **`panel`**.
|
|
279
|
-
- **`variant="panel"`** sets a **minimum height** on **`Root`**. Order after **`SectionHeader`**: optional **`Body
|
|
280
|
-
- For **`mini-media`**, keep **`Media`** height predictable so
|
|
98
|
+
- **`variant="panel"`** sets a **minimum height** on **`Root`**. Order after **`SectionHeader`**: optional **`Body`**, optional **`Chart`**. If both are present, **`Body`** sizes to its content and **`Chart`** takes the **remaining height**. A **single element child** in **`Chart`** (or in **`Body`** when it is the only block) stretches within that region.
|
|
99
|
+
- For **`mini-media`**, keep **`Media`** height predictable so grid rows align, or use one column on narrow viewports.
|
|
281
100
|
- Icons in **`IconBox`** / **`Lead`** should not be the sole carrier of meaning; pair with visible text.
|
|
282
|
-
-
|
|
283
|
-
- Decorative content in **`Cover`** should not rely on **`img alt`** alone for critical information — repeat key facts in **`Stack`**.
|
|
101
|
+
- Decorative content in **`Cover`** should not rely on imagery alone for critical information — repeat key facts in **`Stack`**.
|
|
284
102
|
- **`List`** uses a real **`ul`**; keep **`ListItem`** text meaningful for screen readers.
|
|
285
103
|
|
|
286
104
|
## API
|
|
@@ -413,7 +231,7 @@ export function CoverCard() {
|
|
|
413
231
|
| Prop | Type | Default | Required | Description |
|
|
414
232
|
|------|------|---------|----------|-------------|
|
|
415
233
|
| className | `string` | — | No | Extra class. |
|
|
416
|
-
| children | `React.ReactNode` | — | No | One metric column: **`Label`** + **`Value`**, or **`IconBox`** + **`Stack
|
|
234
|
+
| children | `React.ReactNode` | — | No | One metric column: **`Label`** + **`Value`**, or **`IconBox`** + **`Stack`**. |
|
|
417
235
|
| …rest | `React.HTMLAttributes<HTMLDivElement>` | — | No | Attributes on the cell `div`. |
|
|
418
236
|
|
|
419
237
|
### Card.ListHeader
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { Button, Card, LinkButton } from "prime-ui-kit";
|
|
2
|
+
|
|
3
|
+
import bannerStyles from "./cover-banner.module.css";
|
|
4
|
+
|
|
5
|
+
/** CTA tile: title, supporting copy, actions. */
|
|
6
|
+
export function CtaCardExample() {
|
|
7
|
+
return (
|
|
8
|
+
<Card.Root variant="cta">
|
|
9
|
+
<Card.Title>Export workspace report</Card.Title>
|
|
10
|
+
<Card.CtaBody>
|
|
11
|
+
Download a CSV of segments and metrics for the selected date range.
|
|
12
|
+
</Card.CtaBody>
|
|
13
|
+
<Card.Actions>
|
|
14
|
+
<LinkButton.Root href="#" size="s">
|
|
15
|
+
Download CSV
|
|
16
|
+
</LinkButton.Root>
|
|
17
|
+
<Button.Root mode="ghost" size="s" type="button" variant="neutral">
|
|
18
|
+
Configure columns
|
|
19
|
+
</Button.Root>
|
|
20
|
+
</Card.Actions>
|
|
21
|
+
</Card.Root>
|
|
22
|
+
);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
/** Cover: decorative top region, then stack and primary action. */
|
|
26
|
+
export function CoverCardExample() {
|
|
27
|
+
return (
|
|
28
|
+
<Card.Root variant="cover">
|
|
29
|
+
<Card.Cover aria-hidden>
|
|
30
|
+
<div className={bannerStyles.banner} />
|
|
31
|
+
</Card.Cover>
|
|
32
|
+
<Card.Stack>
|
|
33
|
+
<Card.Title>Spring campaign</Card.Title>
|
|
34
|
+
<Card.Label>Reach and clicks — last 7 days</Card.Label>
|
|
35
|
+
<Card.Description>Compared to the control group.</Card.Description>
|
|
36
|
+
</Card.Stack>
|
|
37
|
+
<Card.Actions>
|
|
38
|
+
<Button.Root mode="filled" size="s" type="button" variant="primary">
|
|
39
|
+
Open report
|
|
40
|
+
</Button.Root>
|
|
41
|
+
</Card.Actions>
|
|
42
|
+
</Card.Root>
|
|
43
|
+
);
|
|
44
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Card, LinkButton } from "prime-ui-kit";
|
|
2
|
+
|
|
3
|
+
/** Activity feed with header action. */
|
|
4
|
+
export function ListCardExample() {
|
|
5
|
+
return (
|
|
6
|
+
<Card.Root variant="list">
|
|
7
|
+
<Card.ListHeader>
|
|
8
|
+
<Card.Title>Recent activity</Card.Title>
|
|
9
|
+
<LinkButton.Root href="#" size="s">
|
|
10
|
+
View all
|
|
11
|
+
</LinkButton.Root>
|
|
12
|
+
</Card.ListHeader>
|
|
13
|
+
<Card.List>
|
|
14
|
+
<Card.ListItem>Payment received — order #4821 · 12:04</Card.ListItem>
|
|
15
|
+
<Card.ListItem>New review on “Tablet Pro”</Card.ListItem>
|
|
16
|
+
<Card.ListItem>Warehouse sync completed</Card.ListItem>
|
|
17
|
+
</Card.List>
|
|
18
|
+
</Card.Root>
|
|
19
|
+
);
|
|
20
|
+
}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { Card, Icon, ProgressBar } from "prime-ui-kit";
|
|
2
|
+
|
|
3
|
+
import layoutStyles from "./layout.module.css";
|
|
4
|
+
import sparkStyles from "./sparkline.module.css";
|
|
5
|
+
|
|
6
|
+
function MiniSparkline() {
|
|
7
|
+
return (
|
|
8
|
+
<svg
|
|
9
|
+
className={sparkStyles.spark}
|
|
10
|
+
viewBox="0 0 120 40"
|
|
11
|
+
preserveAspectRatio="none"
|
|
12
|
+
aria-hidden="true"
|
|
13
|
+
>
|
|
14
|
+
<path
|
|
15
|
+
d="M0 28 L20 24 L40 26 L60 14 L80 18 L100 10 L120 6"
|
|
16
|
+
fill="none"
|
|
17
|
+
strokeWidth="2"
|
|
18
|
+
vectorEffect="non-scaling-stroke"
|
|
19
|
+
/>
|
|
20
|
+
</svg>
|
|
21
|
+
);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
/** Compact KPI rows with chart or progress in `Card.Media`. */
|
|
25
|
+
export function MediaMiniExample() {
|
|
26
|
+
return (
|
|
27
|
+
<div className={layoutStyles.grid}>
|
|
28
|
+
<Card.Root variant="mini-media">
|
|
29
|
+
<Card.IconBox aria-hidden>
|
|
30
|
+
<Icon name="field.email" aria-hidden />
|
|
31
|
+
</Card.IconBox>
|
|
32
|
+
<Card.Stack>
|
|
33
|
+
<Card.Label>Glucose</Card.Label>
|
|
34
|
+
<Card.Value>5.4 mmol/L</Card.Value>
|
|
35
|
+
</Card.Stack>
|
|
36
|
+
<Card.Media>
|
|
37
|
+
<MiniSparkline />
|
|
38
|
+
</Card.Media>
|
|
39
|
+
</Card.Root>
|
|
40
|
+
|
|
41
|
+
<Card.Root variant="mini-media">
|
|
42
|
+
<Card.IconBox aria-hidden>
|
|
43
|
+
<Icon name="nav.layoutGrid" aria-hidden />
|
|
44
|
+
</Card.IconBox>
|
|
45
|
+
<Card.Stack>
|
|
46
|
+
<Card.Label>API usage</Card.Label>
|
|
47
|
+
<Card.Value>72%</Card.Value>
|
|
48
|
+
</Card.Stack>
|
|
49
|
+
<Card.Media>
|
|
50
|
+
<ProgressBar.Root value={72} size="s" />
|
|
51
|
+
</Card.Media>
|
|
52
|
+
</Card.Root>
|
|
53
|
+
</div>
|
|
54
|
+
);
|
|
55
|
+
}
|