prime-ui-kit 0.0.1
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/LICENSE +21 -0
- package/README.md +270 -0
- package/dist/components/accordion/Accordion.d.ts +70 -0
- package/dist/components/accordion/Accordion.d.ts.map +1 -0
- 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/Avatar.d.ts +58 -0
- package/dist/components/avatar/Avatar.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/group-three.d.ts +5 -0
- package/dist/components/avatar/examples/group-three.d.ts.map +1 -0
- package/dist/components/avatar/examples/sizes.d.ts +5 -0
- package/dist/components/avatar/examples/sizes.d.ts.map +1 -0
- package/dist/components/avatar/examples/src-from-state.d.ts +5 -0
- package/dist/components/avatar/examples/src-from-state.d.ts.map +1 -0
- package/dist/components/avatar/examples/states.d.ts +5 -0
- package/dist/components/avatar/examples/states.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/Badge.d.ts +51 -0
- package/dist/components/badge/Badge.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/Banner.d.ts +78 -0
- package/dist/components/banner/Banner.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/controlled-visibility.d.ts +3 -0
- package/dist/components/banner/examples/controlled-visibility.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/dismiss-close-button.d.ts +6 -0
- package/dist/components/banner/examples/dismiss-close-button.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/Breadcrumb.d.ts +47 -0
- package/dist/components/breadcrumb/Breadcrumb.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/composition.d.ts +3 -0
- package/dist/components/breadcrumb/examples/composition.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/full-width.d.ts +5 -0
- package/dist/components/breadcrumb/examples/full-width.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/breadcrumb/examples/sizes.d.ts +3 -0
- package/dist/components/breadcrumb/examples/sizes.d.ts.map +1 -0
- package/dist/components/breadcrumb/examples/states.d.ts +6 -0
- package/dist/components/breadcrumb/examples/states.d.ts.map +1 -0
- package/dist/components/button/Button.d.ts +57 -0
- package/dist/components/button/Button.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/full-width-stack.d.ts +5 -0
- package/dist/components/button/examples/full-width-stack.d.ts.map +1 -0
- package/dist/components/button/examples/icon-composition.d.ts +6 -0
- package/dist/components/button/examples/icon-composition.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/sizes-ladder.d.ts +5 -0
- package/dist/components/button/examples/sizes-ladder.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/ButtonGroup.d.ts +34 -0
- package/dist/components/button-group/ButtonGroup.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/full-width.d.ts +5 -0
- package/dist/components/button-group/examples/full-width.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/Card.d.ts +234 -0
- package/dist/components/card/Card.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/mini-kpi.d.ts +3 -0
- package/dist/components/card/examples/mini-kpi.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/Checkbox.d.ts +42 -0
- package/dist/components/checkbox/Checkbox.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/empty-label-form.d.ts +6 -0
- package/dist/components/checkbox/examples/empty-label-form.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/CodeBlock.d.ts +17 -0
- package/dist/components/code-block/CodeBlock.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/controlled.d.ts +3 -0
- package/dist/components/code-block/examples/controlled.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/ColorPicker.d.ts +76 -0
- package/dist/components/color-picker/ColorPicker.d.ts.map +1 -0
- package/dist/components/color-picker/ColorPickerRac.d.ts +76 -0
- package/dist/components/color-picker/ColorPickerRac.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/field-eyedropper.d.ts +3 -0
- package/dist/components/color-picker/examples/field-eyedropper.d.ts.map +1 -0
- package/dist/components/color-picker/examples/format-variants.d.ts +3 -0
- package/dist/components/color-picker/examples/format-variants.d.ts.map +1 -0
- package/dist/components/color-picker/examples/full-width.d.ts +3 -0
- package/dist/components/color-picker/examples/full-width.d.ts.map +1 -0
- package/dist/components/color-picker/examples/hex-input-sizes.d.ts +3 -0
- package/dist/components/color-picker/examples/hex-input-sizes.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/panel-placement.d.ts +3 -0
- package/dist/components/color-picker/examples/panel-placement.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/readout-trigger.d.ts +6 -0
- package/dist/components/color-picker/examples/readout-trigger.d.ts.map +1 -0
- package/dist/components/color-picker/examples/states.d.ts +3 -0
- package/dist/components/color-picker/examples/states.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/CommandMenu.d.ts +74 -0
- package/dist/components/command-menu/CommandMenu.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/composition-tags-footer.d.ts +5 -0
- package/dist/components/command-menu/examples/composition-tags-footer.d.ts.map +1 -0
- package/dist/components/command-menu/examples/controlled-open-search.d.ts +5 -0
- package/dist/components/command-menu/examples/controlled-open-search.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/full-width-panel.d.ts +6 -0
- package/dist/components/command-menu/examples/full-width-panel.d.ts.map +1 -0
- package/dist/components/command-menu/examples/item-icon-as.d.ts +5 -0
- package/dist/components/command-menu/examples/item-icon-as.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/command-menu/examples/variants-density-items.d.ts +5 -0
- package/dist/components/command-menu/examples/variants-density-items.d.ts.map +1 -0
- package/dist/components/data-table/DataTable.d.ts +78 -0
- package/dist/components/data-table/DataTable.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/composition.d.ts +3 -0
- package/dist/components/data-table/examples/composition.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/divider-styles.d.ts +3 -0
- package/dist/components/data-table/examples/divider-styles.d.ts.map +1 -0
- package/dist/components/data-table/examples/full-width.d.ts +3 -0
- package/dist/components/data-table/examples/full-width.d.ts.map +1 -0
- package/dist/components/data-table/examples/highlight-and-striped.d.ts +3 -0
- package/dist/components/data-table/examples/highlight-and-striped.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/sizes.d.ts +3 -0
- package/dist/components/data-table/examples/sizes.d.ts.map +1 -0
- package/dist/components/data-table/examples/sorting-pagination.d.ts +3 -0
- package/dist/components/data-table/examples/sorting-pagination.d.ts.map +1 -0
- package/dist/components/data-table/examples/states.d.ts +3 -0
- package/dist/components/data-table/examples/states.d.ts.map +1 -0
- package/dist/components/data-table/examples/sticky-and-headers.d.ts +3 -0
- package/dist/components/data-table/examples/sticky-and-headers.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/Datepicker.d.ts +104 -0
- package/dist/components/datepicker/Datepicker.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/DigitInput.d.ts +21 -0
- package/dist/components/digit-input/DigitInput.d.ts.map +1 -0
- package/dist/components/digit-input/examples/composition.d.ts +6 -0
- package/dist/components/digit-input/examples/composition.d.ts.map +1 -0
- package/dist/components/digit-input/examples/controlled.d.ts +6 -0
- package/dist/components/digit-input/examples/controlled.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/features.d.ts +6 -0
- package/dist/components/digit-input/examples/features.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/sizes.d.ts +6 -0
- package/dist/components/digit-input/examples/sizes.d.ts.map +1 -0
- package/dist/components/digit-input/examples/states.d.ts +6 -0
- package/dist/components/digit-input/examples/states.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/Divider.d.ts +26 -0
- package/dist/components/divider/Divider.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/Drawer.d.ts +16 -0
- package/dist/components/drawer/Drawer.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/Dropdown.d.ts +133 -0
- package/dist/components/dropdown/Dropdown.d.ts.map +1 -0
- package/dist/components/dropdown/dropdownGeometry.d.ts +10 -0
- package/dist/components/dropdown/dropdownGeometry.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/as-child.d.ts +3 -0
- package/dist/components/dropdown/examples/as-child.d.ts.map +1 -0
- package/dist/components/dropdown/examples/composition.d.ts +3 -0
- package/dist/components/dropdown/examples/composition.d.ts.map +1 -0
- package/dist/components/dropdown/examples/controlled.d.ts +3 -0
- package/dist/components/dropdown/examples/controlled.d.ts.map +1 -0
- package/dist/components/dropdown/examples/full-width.d.ts +3 -0
- package/dist/components/dropdown/examples/full-width.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/dropdown/examples/sizes.d.ts +3 -0
- package/dist/components/dropdown/examples/sizes.d.ts.map +1 -0
- package/dist/components/dropdown/examples/states.d.ts +3 -0
- package/dist/components/dropdown/examples/states.d.ts.map +1 -0
- package/dist/components/dropdown/examples/variants.d.ts +3 -0
- package/dist/components/dropdown/examples/variants.d.ts.map +1 -0
- package/dist/components/dropdown/menuKeyboard.d.ts +4 -0
- package/dist/components/dropdown/menuKeyboard.d.ts.map +1 -0
- package/dist/components/dropdown/useDropdownPosition.d.ts +18 -0
- package/dist/components/dropdown/useDropdownPosition.d.ts.map +1 -0
- package/dist/components/empty-page/EmptyPage.d.ts +63 -0
- package/dist/components/empty-page/EmptyPage.d.ts.map +1 -0
- package/dist/components/empty-page/examples/canonical.d.ts +3 -0
- package/dist/components/empty-page/examples/canonical.d.ts.map +1 -0
- package/dist/components/empty-page/examples/sizes.d.ts +3 -0
- package/dist/components/empty-page/examples/sizes.d.ts.map +1 -0
- package/dist/components/empty-page/examples/table-region.d.ts +6 -0
- package/dist/components/empty-page/examples/table-region.d.ts.map +1 -0
- package/dist/components/example-frame/ExampleFrame.d.ts +53 -0
- package/dist/components/example-frame/ExampleFrame.d.ts.map +1 -0
- package/dist/components/file-upload/FileUpload.d.ts +176 -0
- package/dist/components/file-upload/FileUpload.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/custom-children.d.ts +6 -0
- package/dist/components/file-upload/examples/custom-children.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/file-upload/examples/full-width.d.ts +6 -0
- package/dist/components/file-upload/examples/full-width.d.ts.map +1 -0
- package/dist/components/hint/Hint.d.ts +27 -0
- package/dist/components/hint/Hint.d.ts.map +1 -0
- package/dist/components/hint/examples/a11y-describedby.d.ts +3 -0
- package/dist/components/hint/examples/a11y-describedby.d.ts.map +1 -0
- package/dist/components/hint/examples/controlled-variant.d.ts +3 -0
- package/dist/components/hint/examples/controlled-variant.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/field-states.d.ts +3 -0
- package/dist/components/hint/examples/field-states.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/sizes.d.ts +3 -0
- package/dist/components/hint/examples/sizes.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/variants.d.ts +3 -0
- package/dist/components/hint/examples/variants.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/index.css +8680 -0
- package/dist/components/index.css.map +7 -0
- package/dist/components/index.d.ts +97 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/index.js +10361 -0
- package/dist/components/index.js.map +7 -0
- package/dist/components/input/Input.d.ts +73 -0
- package/dist/components/input/Input.d.ts.map +1 -0
- package/dist/components/input/examples/affix-url-and-amount.d.ts +5 -0
- package/dist/components/input/examples/affix-url-and-amount.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/Kbd.d.ts +15 -0
- package/dist/components/kbd/Kbd.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/composition-chord-icon.d.ts +3 -0
- package/dist/components/kbd/examples/composition-chord-icon.d.ts.map +1 -0
- package/dist/components/kbd/examples/context-inherit-size.d.ts +6 -0
- package/dist/components/kbd/examples/context-inherit-size.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/sizes-ladder.d.ts +3 -0
- package/dist/components/kbd/examples/sizes-ladder.d.ts.map +1 -0
- package/dist/components/kbd/examples/states-title.d.ts +3 -0
- package/dist/components/kbd/examples/states-title.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/Label.d.ts +29 -0
- package/dist/components/label/Label.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/mixed-required-optional.d.ts +3 -0
- package/dist/components/label/examples/mixed-required-optional.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/sizes.d.ts +3 -0
- package/dist/components/label/examples/sizes.d.ts.map +1 -0
- package/dist/components/label/examples/states.d.ts +3 -0
- package/dist/components/label/examples/states.d.ts.map +1 -0
- package/dist/components/label/examples/sub-line.d.ts +3 -0
- package/dist/components/label/examples/sub-line.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/LinkButton.d.ts +18 -0
- package/dist/components/link-button/LinkButton.d.ts.map +1 -0
- package/dist/components/link-button/examples/composition.d.ts +3 -0
- package/dist/components/link-button/examples/composition.d.ts.map +1 -0
- package/dist/components/link-button/examples/disabled.d.ts +7 -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/link-button/examples/sizes.d.ts +3 -0
- package/dist/components/link-button/examples/sizes.d.ts.map +1 -0
- package/dist/components/modal/Modal.d.ts +79 -0
- package/dist/components/modal/Modal.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/pattern-close-behavior.d.ts +3 -0
- package/dist/components/modal/examples/pattern-close-behavior.d.ts.map +1 -0
- package/dist/components/modal/examples/pattern-controlled.d.ts +3 -0
- package/dist/components/modal/examples/pattern-controlled.d.ts.map +1 -0
- package/dist/components/modal/examples/pattern-full-width-footer.d.ts +3 -0
- package/dist/components/modal/examples/pattern-full-width-footer.d.ts.map +1 -0
- package/dist/components/modal/examples/pattern-portal-and-scroll.d.ts +3 -0
- package/dist/components/modal/examples/pattern-portal-and-scroll.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/Notification.d.ts +42 -0
- package/dist/components/notification/Notification.d.ts.map +1 -0
- package/dist/components/notification/NotificationStore.d.ts +18 -0
- package/dist/components/notification/NotificationStore.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/composition.d.ts +2 -0
- package/dist/components/notification/examples/composition.d.ts.map +1 -0
- package/dist/components/notification/examples/controlled.d.ts +2 -0
- package/dist/components/notification/examples/controlled.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/features.d.ts +2 -0
- package/dist/components/notification/examples/features.d.ts.map +1 -0
- package/dist/components/notification/examples/notification-store.d.ts +5 -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/sizes.d.ts +2 -0
- package/dist/components/notification/examples/sizes.d.ts.map +1 -0
- package/dist/components/notification/examples/states.d.ts +2 -0
- package/dist/components/notification/examples/states.d.ts.map +1 -0
- package/dist/components/notification/examples/toast-queue.d.ts +5 -0
- package/dist/components/notification/examples/toast-queue.d.ts.map +1 -0
- package/dist/components/notification/examples/variants.d.ts +2 -0
- package/dist/components/notification/examples/variants.d.ts.map +1 -0
- package/dist/components/page-content/PageContent.d.ts +64 -0
- package/dist/components/page-content/PageContent.d.ts.map +1 -0
- package/dist/components/pagination/Pagination.d.ts +19 -0
- package/dist/components/pagination/Pagination.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/features.d.ts +6 -0
- package/dist/components/pagination/examples/features.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/range-modes.d.ts +6 -0
- package/dist/components/pagination/examples/range-modes.d.ts.map +1 -0
- package/dist/components/pagination/examples/sizes.d.ts +6 -0
- package/dist/components/pagination/examples/sizes.d.ts.map +1 -0
- package/dist/components/pagination/examples/states.d.ts +6 -0
- package/dist/components/pagination/examples/states.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/Popover.d.ts +48 -0
- package/dist/components/popover/Popover.d.ts.map +1 -0
- package/dist/components/popover/examples/as-child.d.ts +5 -0
- package/dist/components/popover/examples/as-child.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/composition.d.ts +5 -0
- package/dist/components/popover/examples/composition.d.ts.map +1 -0
- package/dist/components/popover/examples/controlled.d.ts +5 -0
- package/dist/components/popover/examples/controlled.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/features.d.ts +5 -0
- package/dist/components/popover/examples/features.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/full-width.d.ts +5 -0
- package/dist/components/popover/examples/full-width.d.ts.map +1 -0
- package/dist/components/popover/examples/inset-variants.d.ts +5 -0
- package/dist/components/popover/examples/inset-variants.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/popover/examples/sizes.d.ts +5 -0
- package/dist/components/popover/examples/sizes.d.ts.map +1 -0
- package/dist/components/popover/examples/states.d.ts +5 -0
- package/dist/components/popover/examples/states.d.ts.map +1 -0
- package/dist/components/popover/popoverGeometry.d.ts +6 -0
- package/dist/components/popover/popoverGeometry.d.ts.map +1 -0
- package/dist/components/popover/usePopoverPosition.d.ts +18 -0
- package/dist/components/popover/usePopoverPosition.d.ts.map +1 -0
- package/dist/components/progress-bar/ProgressBar.d.ts +14 -0
- package/dist/components/progress-bar/ProgressBar.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/sizes.d.ts +3 -0
- package/dist/components/progress-bar/examples/sizes.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/values.d.ts +3 -0
- package/dist/components/progress-bar/examples/values.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/ProgressCircle.d.ts +33 -0
- package/dist/components/progress-circle/ProgressCircle.d.ts.map +1 -0
- package/dist/components/progress-circle/examples/a11y-label.d.ts +7 -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/progress-circle/examples/sizes.d.ts +3 -0
- package/dist/components/progress-circle/examples/sizes.d.ts.map +1 -0
- package/dist/components/progress-circle/examples/states.d.ts +6 -0
- package/dist/components/progress-circle/examples/states.d.ts.map +1 -0
- package/dist/components/radio/Radio.d.ts +40 -0
- package/dist/components/radio/Radio.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/scroll-container/ScrollContainer.d.ts +42 -0
- package/dist/components/scroll-container/ScrollContainer.d.ts.map +1 -0
- package/dist/components/segmented-control/SegmentedControl.d.ts +40 -0
- package/dist/components/segmented-control/SegmentedControl.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/composition.d.ts +3 -0
- package/dist/components/segmented-control/examples/composition.d.ts.map +1 -0
- package/dist/components/segmented-control/examples/controlled.d.ts +3 -0
- package/dist/components/segmented-control/examples/controlled.d.ts.map +1 -0
- package/dist/components/segmented-control/examples/features.d.ts +3 -0
- package/dist/components/segmented-control/examples/features.d.ts.map +1 -0
- package/dist/components/segmented-control/examples/full-width.d.ts +3 -0
- package/dist/components/segmented-control/examples/full-width.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/sizes.d.ts +3 -0
- package/dist/components/segmented-control/examples/sizes.d.ts.map +1 -0
- package/dist/components/segmented-control/examples/states.d.ts +3 -0
- package/dist/components/segmented-control/examples/states.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/SegmentedProgressBar.d.ts +22 -0
- package/dist/components/segmented-progress-bar/SegmentedProgressBar.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/Select.d.ts +84 -0
- package/dist/components/select/Select.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/select/examples/pattern-composition.d.ts +3 -0
- package/dist/components/select/examples/pattern-composition.d.ts.map +1 -0
- package/dist/components/select/examples/pattern-controlled.d.ts +3 -0
- package/dist/components/select/examples/pattern-controlled.d.ts.map +1 -0
- package/dist/components/select/examples/pattern-features.d.ts +3 -0
- package/dist/components/select/examples/pattern-features.d.ts.map +1 -0
- package/dist/components/select/examples/pattern-full-width.d.ts +3 -0
- package/dist/components/select/examples/pattern-full-width.d.ts.map +1 -0
- package/dist/components/select/examples/pattern-native.d.ts +3 -0
- package/dist/components/select/examples/pattern-native.d.ts.map +1 -0
- package/dist/components/select/examples/pattern-sizes.d.ts +3 -0
- package/dist/components/select/examples/pattern-sizes.d.ts.map +1 -0
- package/dist/components/select/examples/pattern-states.d.ts +3 -0
- package/dist/components/select/examples/pattern-states.d.ts.map +1 -0
- package/dist/components/select/selectListbox.d.ts +13 -0
- package/dist/components/select/selectListbox.d.ts.map +1 -0
- package/dist/components/slider/Slider.d.ts +23 -0
- package/dist/components/slider/Slider.d.ts.map +1 -0
- package/dist/components/slider/examples/composition.d.ts +6 -0
- package/dist/components/slider/examples/composition.d.ts.map +1 -0
- package/dist/components/slider/examples/controlled.d.ts +3 -0
- package/dist/components/slider/examples/controlled.d.ts.map +1 -0
- package/dist/components/slider/examples/features.d.ts +3 -0
- package/dist/components/slider/examples/features.d.ts.map +1 -0
- package/dist/components/slider/examples/full-width.d.ts +3 -0
- package/dist/components/slider/examples/full-width.d.ts.map +1 -0
- package/dist/components/slider/examples/sizes.d.ts +5 -0
- package/dist/components/slider/examples/sizes.d.ts.map +1 -0
- package/dist/components/slider/examples/states.d.ts +3 -0
- package/dist/components/slider/examples/states.d.ts.map +1 -0
- package/dist/components/stepper/HorizontalStepper.d.ts +41 -0
- package/dist/components/stepper/HorizontalStepper.d.ts.map +1 -0
- package/dist/components/stepper/Stepper.d.ts +77 -0
- package/dist/components/stepper/Stepper.d.ts.map +1 -0
- package/dist/components/stepper/VerticalStepper.d.ts +41 -0
- package/dist/components/stepper/VerticalStepper.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/stepper/examples/composition.d.ts +3 -0
- package/dist/components/stepper/examples/composition.d.ts.map +1 -0
- package/dist/components/stepper/examples/controlled.d.ts +3 -0
- package/dist/components/stepper/examples/controlled.d.ts.map +1 -0
- package/dist/components/stepper/examples/features.d.ts +3 -0
- package/dist/components/stepper/examples/features.d.ts.map +1 -0
- package/dist/components/stepper/examples/full-width.d.ts +3 -0
- package/dist/components/stepper/examples/full-width.d.ts.map +1 -0
- package/dist/components/stepper/examples/low-level-api.d.ts +3 -0
- package/dist/components/stepper/examples/low-level-api.d.ts.map +1 -0
- package/dist/components/stepper/examples/orientation.d.ts +3 -0
- package/dist/components/stepper/examples/orientation.d.ts.map +1 -0
- package/dist/components/stepper/examples/polymorphic-as.d.ts +3 -0
- package/dist/components/stepper/examples/polymorphic-as.d.ts.map +1 -0
- package/dist/components/stepper/examples/sizes.d.ts +3 -0
- package/dist/components/stepper/examples/sizes.d.ts.map +1 -0
- package/dist/components/stepper/examples/states.d.ts +3 -0
- package/dist/components/stepper/examples/states.d.ts.map +1 -0
- package/dist/components/stepper/stepperAlignContext.d.ts +11 -0
- package/dist/components/stepper/stepperAlignContext.d.ts.map +1 -0
- package/dist/components/switch/Switch.d.ts +48 -0
- package/dist/components/switch/Switch.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/composition.d.ts +3 -0
- package/dist/components/switch/examples/composition.d.ts.map +1 -0
- package/dist/components/switch/examples/controlled.d.ts +3 -0
- package/dist/components/switch/examples/controlled.d.ts.map +1 -0
- package/dist/components/switch/examples/form-features.d.ts +3 -0
- package/dist/components/switch/examples/form-features.d.ts.map +1 -0
- package/dist/components/switch/examples/full-width.d.ts +3 -0
- package/dist/components/switch/examples/full-width.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/switch/examples/sizes.d.ts +3 -0
- package/dist/components/switch/examples/sizes.d.ts.map +1 -0
- package/dist/components/switch/examples/states.d.ts +3 -0
- package/dist/components/switch/examples/states.d.ts.map +1 -0
- package/dist/components/switch/examples/variants.d.ts +3 -0
- package/dist/components/switch/examples/variants.d.ts.map +1 -0
- package/dist/components/tabs/Tabs.d.ts +69 -0
- package/dist/components/tabs/Tabs.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 +7 -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/tabs/examples/06-sizes-s-m-l-xl.d.ts +6 -0
- package/dist/components/tabs/examples/06-sizes-s-m-l-xl.d.ts.map +1 -0
- package/dist/components/tabs/examples/07-horizontal-disabled.d.ts +6 -0
- package/dist/components/tabs/examples/07-horizontal-disabled.d.ts.map +1 -0
- package/dist/components/tag/Tag.d.ts +29 -0
- package/dist/components/tag/Tag.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/basic.d.ts +3 -0
- package/dist/components/tag/examples/basic.d.ts.map +1 -0
- package/dist/components/tag/examples/composition.d.ts +3 -0
- package/dist/components/tag/examples/composition.d.ts.map +1 -0
- package/dist/components/tag/examples/context-size.d.ts +3 -0
- package/dist/components/tag/examples/context-size.d.ts.map +1 -0
- package/dist/components/tag/examples/controlled.d.ts +3 -0
- package/dist/components/tag/examples/controlled.d.ts.map +1 -0
- package/dist/components/tag/examples/disabled.d.ts +3 -0
- package/dist/components/tag/examples/disabled.d.ts.map +1 -0
- package/dist/components/tag/examples/removable.d.ts +3 -0
- package/dist/components/tag/examples/removable.d.ts.map +1 -0
- package/dist/components/tag/examples/sizes.d.ts +3 -0
- package/dist/components/tag/examples/sizes.d.ts.map +1 -0
- package/dist/components/tag/examples/states.d.ts +3 -0
- package/dist/components/tag/examples/states.d.ts.map +1 -0
- package/dist/components/tag/examples/with-icon.d.ts +3 -0
- package/dist/components/tag/examples/with-icon.d.ts.map +1 -0
- package/dist/components/textarea/Textarea.d.ts +43 -0
- package/dist/components/textarea/Textarea.d.ts.map +1 -0
- package/dist/components/textarea/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/composition.d.ts +3 -0
- package/dist/components/textarea/examples/composition.d.ts.map +1 -0
- package/dist/components/textarea/examples/controlled.d.ts +3 -0
- package/dist/components/textarea/examples/controlled.d.ts.map +1 -0
- package/dist/components/textarea/examples/features.d.ts +3 -0
- package/dist/components/textarea/examples/features.d.ts.map +1 -0
- package/dist/components/textarea/examples/full-width.d.ts +3 -0
- package/dist/components/textarea/examples/full-width.d.ts.map +1 -0
- package/dist/components/textarea/examples/sizes.d.ts +3 -0
- package/dist/components/textarea/examples/sizes.d.ts.map +1 -0
- package/dist/components/textarea/examples/states.d.ts +3 -0
- package/dist/components/textarea/examples/states.d.ts.map +1 -0
- package/dist/components/textarea/examples/variants.d.ts +3 -0
- package/dist/components/textarea/examples/variants.d.ts.map +1 -0
- package/dist/components/tooltip/Tooltip.d.ts +47 -0
- package/dist/components/tooltip/Tooltip.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/composition.d.ts +3 -0
- package/dist/components/tooltip/examples/composition.d.ts.map +1 -0
- package/dist/components/tooltip/examples/controlled.d.ts +3 -0
- package/dist/components/tooltip/examples/controlled.d.ts.map +1 -0
- package/dist/components/tooltip/examples/delay.d.ts +3 -0
- package/dist/components/tooltip/examples/delay.d.ts.map +1 -0
- package/dist/components/tooltip/examples/long-content.d.ts +3 -0
- package/dist/components/tooltip/examples/long-content.d.ts.map +1 -0
- package/dist/components/tooltip/examples/side.d.ts +3 -0
- package/dist/components/tooltip/examples/side.d.ts.map +1 -0
- package/dist/components/tooltip/examples/sizes.d.ts +3 -0
- package/dist/components/tooltip/examples/sizes.d.ts.map +1 -0
- package/dist/components/tooltip/examples/states.d.ts +3 -0
- package/dist/components/tooltip/examples/states.d.ts.map +1 -0
- package/dist/components/tooltip/examples/surfaces.d.ts +3 -0
- package/dist/components/tooltip/examples/surfaces.d.ts.map +1 -0
- package/dist/components/typography/Typography.d.ts +30 -0
- package/dist/components/typography/Typography.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/components/typography/examples/as-prop.d.ts +3 -0
- package/dist/components/typography/examples/as-prop.d.ts.map +1 -0
- package/dist/components/typography/examples/composition.d.ts +6 -0
- package/dist/components/typography/examples/composition.d.ts.map +1 -0
- package/dist/components/typography/examples/full-width.d.ts +6 -0
- package/dist/components/typography/examples/full-width.d.ts.map +1 -0
- package/dist/components/typography/examples/reading-and-form.d.ts +6 -0
- package/dist/components/typography/examples/reading-and-form.d.ts.map +1 -0
- package/dist/components/typography/examples/states.d.ts +3 -0
- package/dist/components/typography/examples/states.d.ts.map +1 -0
- package/dist/components/typography/examples/variant-catalog.d.ts +3 -0
- package/dist/components/typography/examples/variant-catalog.d.ts.map +1 -0
- package/dist/components/typography/examples/variants.d.ts +3 -0
- package/dist/components/typography/examples/variants.d.ts.map +1 -0
- package/dist/hooks/useControllableState.d.ts +8 -0
- package/dist/hooks/useControllableState.d.ts.map +1 -0
- package/dist/hooks/useEscapeKey.d.ts +7 -0
- package/dist/hooks/useEscapeKey.d.ts.map +1 -0
- package/dist/hooks/useFieldIds.d.ts +17 -0
- package/dist/hooks/useFieldIds.d.ts.map +1 -0
- package/dist/hooks/useFocusTrap.d.ts +16 -0
- package/dist/hooks/useFocusTrap.d.ts.map +1 -0
- package/dist/hooks/useMergedRefs.d.ts +3 -0
- package/dist/hooks/useMergedRefs.d.ts.map +1 -0
- package/dist/hooks/useModalKeyboard.d.ts +14 -0
- package/dist/hooks/useModalKeyboard.d.ts.map +1 -0
- package/dist/hooks/useOutsideClick.d.ts +16 -0
- package/dist/hooks/useOutsideClick.d.ts.map +1 -0
- package/dist/hooks/useOverlayModal.d.ts +7 -0
- package/dist/hooks/useOverlayModal.d.ts.map +1 -0
- package/dist/hooks/usePosition.d.ts +41 -0
- package/dist/hooks/usePosition.d.ts.map +1 -0
- package/dist/hooks/useResponsiveMonths.d.ts +18 -0
- package/dist/hooks/useResponsiveMonths.d.ts.map +1 -0
- package/dist/hooks/useScrollLock.d.ts +8 -0
- package/dist/hooks/useScrollLock.d.ts.map +1 -0
- package/dist/icons/Icon.d.ts +13 -0
- package/dist/icons/Icon.d.ts.map +1 -0
- package/dist/icons/index.d.ts +40 -0
- package/dist/icons/index.d.ts.map +1 -0
- package/dist/index.css +10101 -0
- package/dist/index.css.map +7 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +10442 -0
- package/dist/index.js.map +7 -0
- package/dist/internal/ControlSizeContext.d.ts +17 -0
- package/dist/internal/ControlSizeContext.d.ts.map +1 -0
- package/dist/internal/DividerContentContext.d.ts +4 -0
- package/dist/internal/DividerContentContext.d.ts.map +1 -0
- package/dist/internal/OverlayPortalLayerContext.d.ts +13 -0
- package/dist/internal/OverlayPortalLayerContext.d.ts.map +1 -0
- package/dist/internal/Portal.d.ts +8 -0
- package/dist/internal/Portal.d.ts.map +1 -0
- package/dist/internal/context.d.ts +11 -0
- package/dist/internal/context.d.ts.map +1 -0
- package/dist/internal/cx.d.ts +2 -0
- package/dist/internal/cx.d.ts.map +1 -0
- package/dist/internal/data-attributes.d.ts +6 -0
- package/dist/internal/data-attributes.d.ts.map +1 -0
- package/dist/internal/highlightTsxHtml.d.ts +3 -0
- package/dist/internal/highlightTsxHtml.d.ts.map +1 -0
- package/dist/internal/layoutPxFromPrimitives.d.ts +13 -0
- package/dist/internal/layoutPxFromPrimitives.d.ts.map +1 -0
- package/dist/internal/mergeRefs.d.ts +4 -0
- package/dist/internal/mergeRefs.d.ts.map +1 -0
- package/dist/internal/runtimeUnits.d.ts +3 -0
- package/dist/internal/runtimeUnits.d.ts.map +1 -0
- package/dist/internal/scrollAncestors.d.ts +3 -0
- package/dist/internal/scrollAncestors.d.ts.map +1 -0
- package/dist/internal/slot.d.ts +19 -0
- package/dist/internal/slot.d.ts.map +1 -0
- package/dist/internal/states.d.ts +89 -0
- package/dist/internal/states.d.ts.map +1 -0
- package/dist/layout/app-shell/AppShell.d.ts +50 -0
- package/dist/layout/app-shell/AppShell.d.ts.map +1 -0
- package/dist/layout/index.d.ts +7 -0
- package/dist/layout/index.d.ts.map +1 -0
- package/dist/layout/sidebar/Sidebar.d.ts +244 -0
- package/dist/layout/sidebar/Sidebar.d.ts.map +1 -0
- package/dist/layout/sidebar/SidebarRoot.d.ts +51 -0
- package/dist/layout/sidebar/SidebarRoot.d.ts.map +1 -0
- package/dist/layout/sidebar/examples/01-app-shell-nav.d.ts +6 -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/dist/layout/sidebar/sidebar-context.d.ts +19 -0
- package/dist/layout/sidebar/sidebar-context.d.ts.map +1 -0
- package/dist/layout/sidebar/sidebarLayout.d.ts +12 -0
- package/dist/layout/sidebar/sidebarLayout.d.ts.map +1 -0
- package/dist/tokens/primitives.d.ts +390 -0
- package/dist/tokens/primitives.d.ts.map +1 -0
- package/dist/tokens/semantic.d.ts +732 -0
- package/dist/tokens/semantic.d.ts.map +1 -0
- package/dist/tokens/themes/dark.d.ts +143 -0
- package/dist/tokens/themes/dark.d.ts.map +1 -0
- package/dist/tokens/themes/light.d.ts +16 -0
- package/dist/tokens/themes/light.d.ts.map +1 -0
- package/package.json +143 -0
- package/src/components/accordion/COMPONENT.md +213 -0
- package/src/components/accordion/examples/01-faq-marketing.tsx +63 -0
- package/src/components/accordion/examples/02-settings-panels.tsx +63 -0
- package/src/components/accordion/examples/03-checkout-order-summary.tsx +89 -0
- package/src/components/accordion/examples/04-api-docs-sections.tsx +88 -0
- package/src/components/accordion/examples/05-knowledge-base-categories.tsx +60 -0
- package/src/components/accordion/examples/examples.module.css +30 -0
- package/src/components/avatar/COMPONENT.md +160 -0
- package/src/components/avatar/examples/app-header-nav.tsx +33 -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/group-three.tsx +28 -0
- package/src/components/avatar/examples/sizes.tsx +24 -0
- package/src/components/avatar/examples/src-from-state.tsx +34 -0
- package/src/components/avatar/examples/states.tsx +26 -0
- package/src/components/avatar/examples/team-list.tsx +45 -0
- package/src/components/badge/COMPONENT.md +115 -0
- 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 +172 -0
- package/src/components/banner/examples/billing-alert.tsx +35 -0
- package/src/components/banner/examples/controlled-visibility.tsx +42 -0
- package/src/components/banner/examples/cookie-consent-row.tsx +35 -0
- package/src/components/banner/examples/dismiss-close-button.tsx +26 -0
- package/src/components/banner/examples/feature-promo.tsx +35 -0
- package/src/components/banner/examples/maintenance.tsx +23 -0
- package/src/components/breadcrumb/COMPONENT.md +139 -0
- package/src/components/breadcrumb/examples/canonical.tsx +12 -0
- package/src/components/breadcrumb/examples/composition.tsx +25 -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/full-width.tsx +24 -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/breadcrumb/examples/sizes.tsx +25 -0
- package/src/components/breadcrumb/examples/states.tsx +26 -0
- package/src/components/button/COMPONENT.md +106 -0
- package/src/components/button/examples/canonical-composition.tsx +46 -0
- package/src/components/button/examples/destructive-confirm.tsx +40 -0
- package/src/components/button/examples/form-submit-row.tsx +33 -0
- package/src/components/button/examples/full-width-stack.tsx +23 -0
- package/src/components/button/examples/icon-composition.tsx +63 -0
- package/src/components/button/examples/marketing-cta.tsx +26 -0
- package/src/components/button/examples/sizes-ladder.tsx +30 -0
- package/src/components/button/examples/toolbar.tsx +38 -0
- package/src/components/button-group/COMPONENT.md +143 -0
- 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/full-width.tsx +22 -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 +327 -0
- 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/mini-kpi.tsx +16 -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 +139 -0
- package/src/components/checkbox/examples/bulk-select-rows.tsx +52 -0
- package/src/components/checkbox/examples/empty-label-form.tsx +23 -0
- package/src/components/checkbox/examples/feature-flags-list.tsx +42 -0
- package/src/components/checkbox/examples/settings-panel.tsx +47 -0
- package/src/components/checkbox/examples/terms-acceptance.tsx +42 -0
- package/src/components/code-block/COMPONENT.md +103 -0
- 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/controlled.tsx +43 -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 +195 -0
- package/src/components/color-picker/examples/brand-kit.tsx +48 -0
- package/src/components/color-picker/examples/controlled-form-field.tsx +38 -0
- package/src/components/color-picker/examples/field-eyedropper.tsx +58 -0
- package/src/components/color-picker/examples/format-variants.tsx +58 -0
- package/src/components/color-picker/examples/full-width.tsx +49 -0
- package/src/components/color-picker/examples/hex-input-sizes.tsx +34 -0
- package/src/components/color-picker/examples/minimal-popover.tsx +26 -0
- package/src/components/color-picker/examples/panel-placement.tsx +68 -0
- package/src/components/color-picker/examples/product-variant-swatch.tsx +42 -0
- package/src/components/color-picker/examples/readout-trigger.tsx +70 -0
- package/src/components/color-picker/examples/states.tsx +79 -0
- package/src/components/color-picker/examples/theme-accent.tsx +41 -0
- package/src/components/command-menu/COMPONENT.md +214 -0
- package/src/components/command-menu/examples/app-palette.tsx +129 -0
- package/src/components/command-menu/examples/composition-tags-footer.tsx +131 -0
- package/src/components/command-menu/examples/controlled-open-search.tsx +76 -0
- package/src/components/command-menu/examples/disabled-items.tsx +77 -0
- package/src/components/command-menu/examples/file-search.tsx +98 -0
- package/src/components/command-menu/examples/full-width-panel.tsx +52 -0
- package/src/components/command-menu/examples/item-icon-as.tsx +48 -0
- package/src/components/command-menu/examples/quick-actions.tsx +74 -0
- package/src/components/command-menu/examples/variants-density-items.tsx +83 -0
- package/src/components/data-table/COMPONENT.md +140 -0
- package/src/components/data-table/examples/canonical-orders.tsx +107 -0
- package/src/components/data-table/examples/composition.tsx +91 -0
- package/src/components/data-table/examples/controlled-sort-and-page.tsx +66 -0
- package/src/components/data-table/examples/divider-styles.tsx +67 -0
- package/src/components/data-table/examples/examples-demos.module.css +78 -0
- package/src/components/data-table/examples/full-width.tsx +39 -0
- package/src/components/data-table/examples/highlight-and-striped.tsx +71 -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/sizes.tsx +85 -0
- package/src/components/data-table/examples/sorting-pagination.tsx +76 -0
- package/src/components/data-table/examples/states.tsx +44 -0
- package/src/components/data-table/examples/sticky-and-headers.tsx +113 -0
- package/src/components/data-table/examples/sticky-header-first-column.tsx +55 -0
- package/src/components/datepicker/COMPONENT.md +192 -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 +52 -0
- package/src/components/datepicker/examples/range-report.tsx +54 -0
- package/src/components/digit-input/COMPONENT.md +116 -0
- package/src/components/digit-input/examples/composition.tsx +24 -0
- package/src/components/digit-input/examples/controlled.tsx +26 -0
- package/src/components/digit-input/examples/error-state.tsx +12 -0
- package/src/components/digit-input/examples/features.tsx +30 -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 +17 -0
- package/src/components/digit-input/examples/sizes.tsx +23 -0
- package/src/components/digit-input/examples/states.tsx +22 -0
- package/src/components/digit-input/examples/verification-step.tsx +21 -0
- package/src/components/divider/COMPONENT.md +102 -0
- 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 +23 -0
- package/src/components/drawer/COMPONENT.md +130 -0
- package/src/components/drawer/examples/cart-preview.tsx +60 -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 +58 -0
- package/src/components/drawer/examples/mobile-nav-sheet.tsx +48 -0
- package/src/components/drawer/examples/settings-side.tsx +59 -0
- package/src/components/dropdown/COMPONENT.md +242 -0
- package/src/components/dropdown/examples/account-menu.tsx +50 -0
- package/src/components/dropdown/examples/actions-menu.tsx +36 -0
- package/src/components/dropdown/examples/as-child.tsx +26 -0
- package/src/components/dropdown/examples/composition.tsx +93 -0
- package/src/components/dropdown/examples/controlled.tsx +31 -0
- package/src/components/dropdown/examples/dropdown-examples.module.css +29 -0
- package/src/components/dropdown/examples/full-width.tsx +27 -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/dropdown/examples/sizes.tsx +99 -0
- package/src/components/dropdown/examples/states.tsx +20 -0
- package/src/components/dropdown/examples/variants.tsx +21 -0
- package/src/components/empty-page/COMPONENT.md +143 -0
- package/src/components/empty-page/examples/canonical.tsx +22 -0
- package/src/components/empty-page/examples/examples-demos.module.css +25 -0
- package/src/components/empty-page/examples/sizes.tsx +23 -0
- package/src/components/empty-page/examples/table-region.tsx +35 -0
- package/src/components/file-upload/COMPONENT.md +250 -0
- 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/custom-children.tsx +21 -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/file-upload/examples/full-width.tsx +32 -0
- package/src/components/hint/COMPONENT.md +111 -0
- package/src/components/hint/examples/a11y-describedby.tsx +21 -0
- package/src/components/hint/examples/controlled-variant.tsx +23 -0
- package/src/components/hint/examples/error-hint.tsx +20 -0
- package/src/components/hint/examples/field-help.tsx +25 -0
- package/src/components/hint/examples/field-states.tsx +34 -0
- package/src/components/hint/examples/inline-tip-form.tsx +40 -0
- package/src/components/hint/examples/sizes.tsx +13 -0
- package/src/components/hint/examples/success-confirmation.tsx +28 -0
- package/src/components/hint/examples/variants.tsx +12 -0
- package/src/components/hint/examples/with-icon.tsx +13 -0
- package/src/components/input/COMPONENT.md +140 -0
- package/src/components/input/examples/affix-url-and-amount.tsx +24 -0
- 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 +29 -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 +91 -0
- package/src/components/kbd/examples/combination-keys.tsx +22 -0
- package/src/components/kbd/examples/composition-chord-icon.tsx +34 -0
- package/src/components/kbd/examples/context-inherit-size.tsx +46 -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/sizes-ladder.tsx +21 -0
- package/src/components/kbd/examples/states-title.tsx +19 -0
- package/src/components/kbd/examples/toolbar-hints.tsx +31 -0
- package/src/components/label/COMPONENT.md +155 -0
- 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/mixed-required-optional.tsx +17 -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/sizes.tsx +37 -0
- package/src/components/label/examples/states.tsx +17 -0
- package/src/components/label/examples/sub-line.tsx +11 -0
- package/src/components/label/examples/with-icon.tsx +16 -0
- package/src/components/link-button/COMPONENT.md +108 -0
- package/src/components/link-button/examples/composition.tsx +27 -0
- package/src/components/link-button/examples/disabled.tsx +17 -0
- package/src/components/link-button/examples/external.tsx +13 -0
- package/src/components/link-button/examples/footer-legal.tsx +22 -0
- package/src/components/link-button/examples/inline-text-link.tsx +12 -0
- package/src/components/link-button/examples/navigation-cluster.tsx +16 -0
- package/src/components/link-button/examples/sizes.tsx +21 -0
- package/src/components/modal/COMPONENT.md +208 -0
- package/src/components/modal/examples/canonical-maximal.tsx +47 -0
- package/src/components/modal/examples/examples.module.css +13 -0
- package/src/components/modal/examples/pattern-close-behavior.tsx +56 -0
- package/src/components/modal/examples/pattern-controlled.tsx +41 -0
- package/src/components/modal/examples/pattern-full-width-footer.tsx +46 -0
- package/src/components/modal/examples/pattern-portal-and-scroll.tsx +84 -0
- package/src/components/modal/examples/scenario-confirm-delete.tsx +42 -0
- package/src/components/modal/examples/scenario-edit-entity.tsx +54 -0
- package/src/components/modal/examples/scenario-legal-consent.tsx +40 -0
- package/src/components/modal/examples/scenario-multi-field-form.tsx +73 -0
- package/src/components/notification/COMPONENT.md +156 -0
- package/src/components/notification/examples/action-toast.tsx +82 -0
- package/src/components/notification/examples/composition.tsx +90 -0
- package/src/components/notification/examples/controlled.tsx +87 -0
- package/src/components/notification/examples/error-success.tsx +68 -0
- package/src/components/notification/examples/features.tsx +102 -0
- package/src/components/notification/examples/notification-store.tsx +5 -0
- package/src/components/notification/examples/positions.tsx +73 -0
- package/src/components/notification/examples/sizes.tsx +53 -0
- package/src/components/notification/examples/states.tsx +143 -0
- package/src/components/notification/examples/toast-queue.tsx +5 -0
- package/src/components/notification/examples/variants.tsx +68 -0
- package/src/components/page-content/COMPONENT.md +128 -0
- package/src/components/pagination/COMPONENT.md +123 -0
- 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/features.tsx +107 -0
- package/src/components/pagination/examples/full-width-list.tsx +37 -0
- package/src/components/pagination/examples/range-modes.tsx +60 -0
- package/src/components/pagination/examples/sizes.tsx +50 -0
- package/src/components/pagination/examples/states.tsx +80 -0
- package/src/components/pagination/examples/table-footer.tsx +74 -0
- package/src/components/popover/COMPONENT.md +146 -0
- package/src/components/popover/examples/as-child.tsx +24 -0
- package/src/components/popover/examples/canonical-panel.tsx +24 -0
- package/src/components/popover/examples/composition.tsx +42 -0
- package/src/components/popover/examples/controlled.tsx +40 -0
- package/src/components/popover/examples/date-trigger.tsx +26 -0
- package/src/components/popover/examples/features.tsx +58 -0
- package/src/components/popover/examples/form-in-popover.tsx +71 -0
- package/src/components/popover/examples/full-width.tsx +27 -0
- package/src/components/popover/examples/inset-variants.tsx +46 -0
- package/src/components/popover/examples/placement.tsx +37 -0
- package/src/components/popover/examples/popover-examples.module.css +104 -0
- package/src/components/popover/examples/rich-content.tsx +37 -0
- package/src/components/popover/examples/sizes.tsx +30 -0
- package/src/components/popover/examples/states.tsx +36 -0
- package/src/components/progress-bar/COMPONENT.md +101 -0
- 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/sizes.tsx +13 -0
- package/src/components/progress-bar/examples/step-progress.tsx +22 -0
- package/src/components/progress-bar/examples/upload-progress.tsx +27 -0
- package/src/components/progress-bar/examples/values.tsx +13 -0
- package/src/components/progress-bar/examples/wizard-composition.tsx +18 -0
- package/src/components/progress-circle/COMPONENT.md +97 -0
- package/src/components/progress-circle/examples/a11y-label.tsx +33 -0
- package/src/components/progress-circle/examples/composition.tsx +66 -0
- package/src/components/progress-circle/examples/controlled.tsx +53 -0
- package/src/components/progress-circle/examples/dashboard-ring.tsx +31 -0
- package/src/components/progress-circle/examples/max-scale.tsx +61 -0
- package/src/components/progress-circle/examples/sizes.tsx +77 -0
- package/src/components/progress-circle/examples/states.tsx +87 -0
- package/src/components/radio/COMPONENT.md +137 -0
- package/src/components/radio/examples/notification-channel.tsx +29 -0
- package/src/components/radio/examples/plan-picker.tsx +50 -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 +121 -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/composition.tsx +55 -0
- package/src/components/segmented-control/examples/controlled.tsx +23 -0
- package/src/components/segmented-control/examples/features.tsx +45 -0
- package/src/components/segmented-control/examples/full-width.tsx +16 -0
- package/src/components/segmented-control/examples/pricing-toggle.tsx +39 -0
- package/src/components/segmented-control/examples/segmented-examples.module.css +41 -0
- package/src/components/segmented-control/examples/sizes.tsx +51 -0
- package/src/components/segmented-control/examples/states.tsx +43 -0
- package/src/components/segmented-control/examples/view-mode.tsx +52 -0
- package/src/components/segmented-progress-bar/COMPONENT.md +119 -0
- 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 +232 -0
- package/src/components/select/examples/01-country.tsx +35 -0
- package/src/components/select/examples/02-controlled.tsx +33 -0
- package/src/components/select/examples/03-groups.tsx +43 -0
- package/src/components/select/examples/04-full-width-form.tsx +47 -0
- package/src/components/select/examples/examples.module.css +48 -0
- package/src/components/select/examples/pattern-composition.tsx +40 -0
- package/src/components/select/examples/pattern-controlled.tsx +29 -0
- package/src/components/select/examples/pattern-features.tsx +33 -0
- package/src/components/select/examples/pattern-full-width.tsx +21 -0
- package/src/components/select/examples/pattern-native.tsx +14 -0
- package/src/components/select/examples/pattern-sizes.tsx +51 -0
- package/src/components/select/examples/pattern-states.tsx +47 -0
- package/src/components/slider/COMPONENT.md +86 -0
- package/src/components/slider/examples/composition.tsx +14 -0
- package/src/components/slider/examples/controlled.tsx +23 -0
- package/src/components/slider/examples/examples.module.css +37 -0
- package/src/components/slider/examples/features.tsx +17 -0
- package/src/components/slider/examples/full-width.tsx +12 -0
- package/src/components/slider/examples/sizes.tsx +15 -0
- package/src/components/slider/examples/states.tsx +11 -0
- package/src/components/stepper/COMPONENT.md +221 -0
- 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/composition.tsx +31 -0
- package/src/components/stepper/examples/controlled.tsx +49 -0
- package/src/components/stepper/examples/examples.module.css +81 -0
- package/src/components/stepper/examples/features.tsx +29 -0
- package/src/components/stepper/examples/full-width.tsx +34 -0
- package/src/components/stepper/examples/low-level-api.tsx +58 -0
- package/src/components/stepper/examples/orientation.tsx +52 -0
- package/src/components/stepper/examples/polymorphic-as.tsx +51 -0
- package/src/components/stepper/examples/sizes.tsx +71 -0
- package/src/components/stepper/examples/states.tsx +44 -0
- package/src/components/switch/COMPONENT.md +156 -0
- package/src/components/switch/examples/canonical-maximal.tsx +19 -0
- package/src/components/switch/examples/composition.tsx +23 -0
- package/src/components/switch/examples/controlled.tsx +18 -0
- package/src/components/switch/examples/examples.module.css +65 -0
- package/src/components/switch/examples/form-features.tsx +31 -0
- package/src/components/switch/examples/full-width.tsx +15 -0
- package/src/components/switch/examples/scenario-billing-annual.tsx +27 -0
- package/src/components/switch/examples/scenario-feature-flag.tsx +25 -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/switch/examples/sizes.tsx +23 -0
- package/src/components/switch/examples/states.tsx +32 -0
- package/src/components/switch/examples/variants.tsx +19 -0
- package/src/components/tabs/COMPONENT.md +147 -0
- package/src/components/tabs/examples/01-settings-vertical-rail.tsx +44 -0
- package/src/components/tabs/examples/02-dashboard-subviews.tsx +42 -0
- package/src/components/tabs/examples/03-tab-triggers-with-icons.tsx +62 -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/06-sizes-s-m-l-xl.tsx +58 -0
- package/src/components/tabs/examples/07-horizontal-disabled.tsx +40 -0
- package/src/components/tabs/examples/examples.module.css +79 -0
- package/src/components/tag/COMPONENT.md +97 -0
- 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/basic.tsx +14 -0
- package/src/components/tag/examples/composition.tsx +19 -0
- package/src/components/tag/examples/context-size.tsx +17 -0
- package/src/components/tag/examples/controlled.tsx +26 -0
- package/src/components/tag/examples/disabled.tsx +15 -0
- package/src/components/tag/examples/examples.module.css +20 -0
- package/src/components/tag/examples/removable.tsx +22 -0
- package/src/components/tag/examples/sizes.tsx +15 -0
- package/src/components/tag/examples/states.tsx +17 -0
- package/src/components/tag/examples/with-icon.tsx +23 -0
- package/src/components/textarea/COMPONENT.md +132 -0
- package/src/components/textarea/examples/01-support-ticket.tsx +34 -0
- package/src/components/textarea/examples/02-comment.tsx +34 -0
- package/src/components/textarea/examples/composition.tsx +21 -0
- package/src/components/textarea/examples/controlled.tsx +17 -0
- package/src/components/textarea/examples/examples.module.css +33 -0
- package/src/components/textarea/examples/features.tsx +56 -0
- package/src/components/textarea/examples/full-width.tsx +14 -0
- package/src/components/textarea/examples/sizes.tsx +21 -0
- package/src/components/textarea/examples/states.tsx +19 -0
- package/src/components/textarea/examples/variants.tsx +15 -0
- package/src/components/tooltip/COMPONENT.md +148 -0
- package/src/components/tooltip/examples/canonical-icon-hint.tsx +19 -0
- package/src/components/tooltip/examples/composition.tsx +38 -0
- package/src/components/tooltip/examples/controlled.tsx +31 -0
- package/src/components/tooltip/examples/delay.tsx +31 -0
- package/src/components/tooltip/examples/examples.module.css +67 -0
- package/src/components/tooltip/examples/long-content.tsx +34 -0
- package/src/components/tooltip/examples/side.tsx +69 -0
- package/src/components/tooltip/examples/sizes.tsx +69 -0
- package/src/components/tooltip/examples/states.tsx +57 -0
- package/src/components/tooltip/examples/surfaces.tsx +54 -0
- package/src/components/typography/COMPONENT.md +127 -0
- 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/as-prop.tsx +25 -0
- package/src/components/typography/examples/composition.tsx +29 -0
- package/src/components/typography/examples/examples.module.css +95 -0
- package/src/components/typography/examples/full-width.tsx +32 -0
- package/src/components/typography/examples/reading-and-form.tsx +40 -0
- package/src/components/typography/examples/states.tsx +27 -0
- package/src/components/typography/examples/variant-catalog.tsx +107 -0
- package/src/components/typography/examples/variants.tsx +61 -0
- package/src/layout/app-shell/COMPONENT.md +140 -0
- package/src/layout/sidebar/COMPONENT.md +160 -0
- package/src/layout/sidebar/examples/01-app-shell-nav.tsx +89 -0
- package/src/layout/sidebar/examples/02-collapsible-desktop.tsx +74 -0
- package/src/layout/sidebar/examples/03-controlled-state.tsx +82 -0
- package/src/layout/sidebar/examples/04-router-navigation.tsx +80 -0
- package/src/layout/sidebar/examples/05-responsive-behavior.tsx +56 -0
- package/src/layout/sidebar/examples/examples.module.css +67 -0
- package/src/styles/globals.css +91 -0
- package/src/styles/reset.css +35 -0
- package/src/styles/theme-dark.css +465 -0
- package/src/styles/theme-light.css +466 -0
- package/src/styles/tokens.css +267 -0
- package/src/styles/units.css +106 -0
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
# Checkbox
|
|
2
|
+
|
|
3
|
+
**Проектирование по умолчанию:** при проектировании экранов и примеров изначально выбирай **`m`** для `size` (где есть ось размера), если явно не оговорено иное.
|
|
4
|
+
|
|
5
|
+
## Canonical
|
|
6
|
+
|
|
7
|
+
- **Export:** `Checkbox` namespace — **`Checkbox.Root`**, **`Checkbox.Label`**, **`Checkbox.Hint`**, **`Checkbox.Error`**.
|
|
8
|
+
- **Pattern:** compound field — native **`input type="checkbox"`** (visually hidden) + decorative box; **`Checkbox.Label`** is required for the interactive row and wires **`htmlFor`** to the input id.
|
|
9
|
+
- **State:** **controlled** (`checked` + `onChange`) or **uncontrolled** (`defaultChecked`); internal checked state updates before consumer **`onChange`** runs.
|
|
10
|
+
- **`indeterminate`:** boolean on **`Root`** — sets DOM **`input.indeterminate`** and mixed visual; not a third form value — clear or resync in your **`onChange`** when the user toggles.
|
|
11
|
+
- **Sizing:** **`size`** `s` | `m` | `l` | `xl` on **`Root`** (default **`m`**); propagates via **`ControlSizeProvider`** to label/hint typography.
|
|
12
|
+
- **Validation chrome:** **`variant="error"`** on **`Root`** and/or mounted **`Checkbox.Error`** → **`aria-invalid`**, error styling; **`Checkbox.Hint`** contributes to **`aria-describedby`** when mounted.
|
|
13
|
+
- **Forwarding:** **`Root`** accepts **`Omit<InputHTMLAttributes<HTMLInputElement>, "type" | "size">`** spread onto the real input — use **`name`**, **`value`**, **`required`**, **`form`**, etc. Ref on **`Root`** targets the **input** element.
|
|
14
|
+
- **Not supported:** **`asChild`**, loading state, or custom checkbox markup.
|
|
15
|
+
|
|
16
|
+
## Extended
|
|
17
|
+
|
|
18
|
+
### About
|
|
19
|
+
|
|
20
|
+
A compound checkbox: a visually hidden native `input type="checkbox"`, a decorative box with check or indeterminate mark, and optional label, hint, and error text wired to `aria-describedby` and invalid state.
|
|
21
|
+
|
|
22
|
+
- **When to use** — explicit consent, terms, or other “yes/no” fields that submit with the form (`name`, `value`, `required`); row or “select all” patterns where the parent shows **indeterminate** when only some children are checked; independent toggles (feature flags, optional features, settings) rather than one-of-many choices; hint text or inline validation aligned under the label column.
|
|
23
|
+
- **When not to use** — exactly one option from a set of alternatives (prefer [Radio](../radio/COMPONENT.md)); a single binary setting where a switch fits the product language (prefer [Switch](../switch/COMPONENT.md)); you need `asChild` or fully custom markup; the control is a fixed [Label](../label/COMPONENT.md) row with a hidden input and SVG.
|
|
24
|
+
|
|
25
|
+
### Playground snippets
|
|
26
|
+
|
|
27
|
+
Demos match **`playground/sections/CheckboxSection.tsx`** (order and intent). Sources use `@/` imports under **`playground/snippets/checkbox/`**:
|
|
28
|
+
|
|
29
|
+
| Block | File | What it shows |
|
|
30
|
+
|-------|------|----------------|
|
|
31
|
+
| **Sizes** | [`sizes.tsx`](../../../playground/snippets/checkbox/sizes.tsx) | **`size`** **`s`**, **`m`**, **`l`**, **`xl`** — box, gap, and label scale from control tokens. |
|
|
32
|
+
| **Variants** | [`variants.tsx`](../../../playground/snippets/checkbox/variants.tsx) | **`variant="default"`** vs **`variant="error"`**; mounting **`Checkbox.Error`** also drives invalid (see **Composition** + recipes). |
|
|
33
|
+
| **States** | [`states.tsx`](../../../playground/snippets/checkbox/states.tsx) | Unchecked, **`defaultChecked`**, **`indeterminate`**, native **`required`**, **`disabled`** (off and on). |
|
|
34
|
+
| **Controlled** | [`controlled.tsx`](../../../playground/snippets/checkbox/controlled.tsx) | **`checked`** + **`onChange`**; **`indeterminate`** from parent state cleared on user change (table “select all” pattern). |
|
|
35
|
+
| **Composition** | [`composition.tsx`](../../../playground/snippets/checkbox/composition.tsx) | **`Hint`** only; **`Error`** without **`variant="error"`** on root; full **`Hint`** + **`Error`** with **`variant="error"`**. |
|
|
36
|
+
| **Full width** | [`full-width.tsx`](../../../playground/snippets/checkbox/full-width.tsx) (+ [`full-width.module.css`](../../../playground/snippets/checkbox/full-width.module.css)) | Narrow container: field root is **`width: 100%`**; long label wraps in the text column; hint aligned under label. |
|
|
37
|
+
| **Specific** | [`specific.tsx`](../../../playground/snippets/checkbox/specific.tsx) | Empty **`Checkbox.Label`** with **`aria-label`** on **`Root`**; **`name`** / **`value`** / **`defaultChecked`** for form submit. |
|
|
38
|
+
|
|
39
|
+
### Scenarios (recipes)
|
|
40
|
+
|
|
41
|
+
| Scenario | Approach |
|
|
42
|
+
|----------|----------|
|
|
43
|
+
| **Terms acceptance** | **`required`** on **`Root`**; optional **`Checkbox.Hint`** for legal context; show **`Checkbox.Error`** or **`variant="error"`** after validation when unchecked. → [`examples/terms-acceptance.tsx`](examples/terms-acceptance.tsx) |
|
|
44
|
+
| **Feature flags list** | One **`Checkbox.Root` per flag**; independent **controlled** booleans or a small state map; no indeterminate unless a parent “enable all” exists. → [`examples/feature-flags-list.tsx`](examples/feature-flags-list.tsx) |
|
|
45
|
+
| **Bulk select (row / table)** | **Header** checkbox: **`checked`** when all rows selected, **`indeterminate`** when some; **`onChange`** selects or clears all row ids. **Row** checkboxes toggle one id each. → [`examples/bulk-select-rows.tsx`](examples/bulk-select-rows.tsx) |
|
|
46
|
+
| **Settings panel** | Stack of **`Root` → `Label` → optional `Hint`** rows; same **`size`** across the panel for rhythm; **`disabled`** for plan-gated options. → [`examples/settings-panel.tsx`](examples/settings-panel.tsx) |
|
|
47
|
+
| **Empty label + form attrs** | Icon-only / compact cell: **`aria-label`** (or **`aria-labelledby`**) on **`Root`**; optional **`name`** / **`value`** for submission. → [`examples/empty-label-form.tsx`](examples/empty-label-form.tsx) |
|
|
48
|
+
|
|
49
|
+
Runnable recipe examples use **`prime-ui-kit`** imports under **`examples/`**. Snippet-level demos (internal imports) are listed in **Playground snippets** above.
|
|
50
|
+
|
|
51
|
+
### Composition
|
|
52
|
+
|
|
53
|
+
- **`Checkbox.Root`** — wraps the field in a `div` with `data-size`, `data-variant`, `data-disabled`, `data-invalid`, `data-checked`, `data-indeterminate`; provides context and `ControlSizeProvider` for child parts.
|
|
54
|
+
- **`Checkbox.Label`** — required for the control: hosts the native checkbox and decorative SVG, then optional text in a trailing column; sets `htmlFor` to the input id.
|
|
55
|
+
- **`Checkbox.Hint`** — optional; registers hint text and contributes its id to the input’s `aria-describedby`.
|
|
56
|
+
- **`Checkbox.Error`** — optional; error-styled [Hint](../hint/COMPONENT.md) and registers invalid state when mounted (with `variant="error"` on the root when you want error chrome without the slot).
|
|
57
|
+
- **Order:** `Root` → `Label` (always) → `Hint` / `Error` below when needed.
|
|
58
|
+
|
|
59
|
+
### Minimal example
|
|
60
|
+
|
|
61
|
+
```tsx
|
|
62
|
+
import { Checkbox } from "prime-ui-kit";
|
|
63
|
+
|
|
64
|
+
export function Example() {
|
|
65
|
+
return (
|
|
66
|
+
<Checkbox.Root name="terms" value="yes">
|
|
67
|
+
<Checkbox.Label>Accept terms</Checkbox.Label>
|
|
68
|
+
</Checkbox.Root>
|
|
69
|
+
);
|
|
70
|
+
}
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
### Rules
|
|
74
|
+
|
|
75
|
+
- Vertical rhythm between **label and hint** is owned by the component; avoid inserting extra [Typography](../typography/Typography.tsx) between them unless the design explicitly requires a different reading role.
|
|
76
|
+
- **`indeterminate`** only affects visuals and the DOM `indeterminate` property; it is not a separate submitted value—clear or sync it in your handler when the user clicks.
|
|
77
|
+
- Set **`aria-label`** or **`aria-labelledby`** on **`Checkbox.Root`** (forwarded to the input via rest props) when **`Checkbox.Label`** has no visible text (icon-only or compact “select all” cell).
|
|
78
|
+
- **`aria-describedby`** on **`Root`** is merged with hint and error ids when those slots are mounted; include your own ids in `aria-describedby` if you need extra descriptors.
|
|
79
|
+
- **`variant="error"`** or a mounted **`Checkbox.Error`** sets `aria-invalid` and error styling; **`disabled`** disables the input and dims hint styling.
|
|
80
|
+
- Focus and keyboard activation use the native checkbox; the visible focus ring targets the decorative control via `focus-visible`.
|
|
81
|
+
- There is no loading or `asChild` API; **`size`** on the root does not forward as a DOM attribute on the wrapper (layout/visual token axis only).
|
|
82
|
+
|
|
83
|
+
## API
|
|
84
|
+
|
|
85
|
+
### Checkbox.Root
|
|
86
|
+
|
|
87
|
+
| Prop | Type | Default | Required | Description |
|
|
88
|
+
|------|------|---------|----------|-------------|
|
|
89
|
+
| variant | `"default" \| "error"` | `"default"` | no | Error-colored outline for `error`; `invalid` is also true when `Checkbox.Error` is mounted. |
|
|
90
|
+
| size | `"s" \| "m" \| "l" \| "xl"` | `"m"` | no | Box and typography scale. |
|
|
91
|
+
| indeterminate | `boolean` | `false` | no | Indeterminate visuals; syncs `input.indeterminate`. |
|
|
92
|
+
| id | `string` | auto (`useId`) | no | Stable input id; paired with `Checkbox.Label` via `htmlFor`. |
|
|
93
|
+
| className | `string` | — | no | Class on the field wrapper `div`. |
|
|
94
|
+
| checked | `boolean` | — | no | Controlled checked state. |
|
|
95
|
+
| defaultChecked | `boolean` | `false` | no | Initial checked state when uncontrolled. |
|
|
96
|
+
| onChange | `React.ChangeEventHandler<HTMLInputElement>` | — | no | Fired on toggle; internal checked state updates before this runs. |
|
|
97
|
+
| disabled | `boolean` | — | no | Disables the input and label row. |
|
|
98
|
+
| aria-describedby | `string` | — | no | Combined with hint and error ids when those slots exist. |
|
|
99
|
+
| children | `React.ReactNode` | — | no | Typically `Label`, optional `Hint` / `Error`. |
|
|
100
|
+
| ref | `React.Ref<HTMLInputElement>` | — | no | Ref to the native checkbox input. |
|
|
101
|
+
| …rest | `Omit<React.InputHTMLAttributes<HTMLInputElement>, "type" \| "size">` | — | no | Other native attributes forwarded to the hidden `input` (e.g. `name`, `value`, `required`, `readOnly`, `form`). `type` is always `checkbox`. |
|
|
102
|
+
|
|
103
|
+
### Checkbox.Label
|
|
104
|
+
|
|
105
|
+
| Prop | Type | Default | Required | Description |
|
|
106
|
+
|------|------|---------|----------|-------------|
|
|
107
|
+
| children | `React.ReactNode` | — | no | Label text beside the box; omit for a box-only control and set an accessible name on `Root`. |
|
|
108
|
+
| className | `string` | — | no | Class on the label row. |
|
|
109
|
+
| …rest | `Omit<React.HTMLAttributes<HTMLLabelElement>, "htmlFor" \| "size">` | — | no | Other label attributes; `htmlFor` is managed internally. |
|
|
110
|
+
|
|
111
|
+
### Checkbox.Hint
|
|
112
|
+
|
|
113
|
+
| Prop | Type | Default | Required | Description |
|
|
114
|
+
|------|------|---------|----------|-------------|
|
|
115
|
+
| children | `React.ReactNode` | — | yes | Supplementary text below the label. |
|
|
116
|
+
| className | `string` | — | no | Additional class on the hint. |
|
|
117
|
+
| …rest | `Omit<React.HTMLAttributes<HTMLParagraphElement>, "id">` | — | no | Paragraph attributes; `id` is managed internally. |
|
|
118
|
+
|
|
119
|
+
### Checkbox.Error
|
|
120
|
+
|
|
121
|
+
| Prop | Type | Default | Required | Description |
|
|
122
|
+
|------|------|---------|----------|-------------|
|
|
123
|
+
| children | `React.ReactNode` | — | yes | Error message text. |
|
|
124
|
+
| className | `string` | — | no | Additional class on the message. |
|
|
125
|
+
| …rest | `Omit<React.HTMLAttributes<HTMLParagraphElement>, "id">` | — | no | Paragraph attributes; `id` is managed internally. |
|
|
126
|
+
|
|
127
|
+
## Related
|
|
128
|
+
|
|
129
|
+
- [Radio](../radio/COMPONENT.md) — one-of-many choice with the same validation variants.
|
|
130
|
+
- [Switch](../switch/COMPONENT.md) — binary setting with a different control pattern.
|
|
131
|
+
- [Label](../label/COMPONENT.md), [Hint](../hint/COMPONENT.md) — primitives used inside the checkbox; pair with [Input](../input/COMPONENT.md) in larger forms.
|
|
132
|
+
|
|
133
|
+
## LLM note
|
|
134
|
+
|
|
135
|
+
- Prefer **`Checkbox.Label`** with visible text; if the label slot is empty or icon-only, set **`aria-label`** (or **`aria-labelledby`**) via **`Checkbox.Root`** rest props so the native input has a name.
|
|
136
|
+
- **`indeterminate`** is purely visual + DOM hinting — parent “select all” logic must derive **`checked`** / **`indeterminate`** from child selection state and normalize **`onChange`** (e.g. indeterminate click → select all).
|
|
137
|
+
- Use **`Checkbox.Error`** or **`variant="error"`** for validation feedback; mounting **`Checkbox.Error`** registers invalid state even without **`variant`** on **`Root`**.
|
|
138
|
+
- Do not substitute **Radio** or **Switch** based on “sounds nicer” — **Radio** is for mutually exclusive options; **Switch** for settings that read as on/off system toggles.
|
|
139
|
+
- Keep composition order **`Root` → `Label` → `Hint`/`Error`**; refs on **`Root`** attach to the **`<input>`**, not the wrapper `div`.
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { Checkbox } from "prime-ui-kit";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
|
|
4
|
+
const ROW_IDS = ["row-1", "row-2", "row-3"] as const;
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Header “select all” with indeterminate when partially selected; row checkboxes toggle membership.
|
|
8
|
+
*/
|
|
9
|
+
export function BulkSelectRowsExample() {
|
|
10
|
+
const [selected, setSelected] = React.useState<Set<string>>(() => new Set());
|
|
11
|
+
|
|
12
|
+
const allSelected = selected.size === ROW_IDS.length;
|
|
13
|
+
const noneSelected = selected.size === 0;
|
|
14
|
+
const headerIndeterminate = !noneSelected && !allSelected;
|
|
15
|
+
|
|
16
|
+
function toggleRow(id: string, checked: boolean) {
|
|
17
|
+
setSelected((prev) => {
|
|
18
|
+
const next = new Set(prev);
|
|
19
|
+
if (checked) {
|
|
20
|
+
next.add(id);
|
|
21
|
+
} else {
|
|
22
|
+
next.delete(id);
|
|
23
|
+
}
|
|
24
|
+
return next;
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
function toggleAll(checked: boolean) {
|
|
29
|
+
setSelected(checked ? new Set(ROW_IDS) : new Set());
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
return (
|
|
33
|
+
<>
|
|
34
|
+
<Checkbox.Root
|
|
35
|
+
checked={allSelected}
|
|
36
|
+
indeterminate={headerIndeterminate}
|
|
37
|
+
onChange={(e) => toggleAll(e.target.checked)}
|
|
38
|
+
>
|
|
39
|
+
<Checkbox.Label>Select all rows</Checkbox.Label>
|
|
40
|
+
</Checkbox.Root>
|
|
41
|
+
{ROW_IDS.map((id) => (
|
|
42
|
+
<Checkbox.Root
|
|
43
|
+
key={id}
|
|
44
|
+
checked={selected.has(id)}
|
|
45
|
+
onChange={(e) => toggleRow(id, e.target.checked)}
|
|
46
|
+
>
|
|
47
|
+
<Checkbox.Label>Row {id}</Checkbox.Label>
|
|
48
|
+
</Checkbox.Root>
|
|
49
|
+
))}
|
|
50
|
+
</>
|
|
51
|
+
);
|
|
52
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Checkbox } from "prime-ui-kit";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Matches playground `snippets/checkbox/specific.tsx`: no visible label text — set an accessible name on
|
|
5
|
+
* Root; optional name/value for form submission.
|
|
6
|
+
*/
|
|
7
|
+
export function EmptyLabelFormExample() {
|
|
8
|
+
return (
|
|
9
|
+
<>
|
|
10
|
+
<Checkbox.Root aria-label="Receive digest by email (no visible label)">
|
|
11
|
+
<Checkbox.Label />
|
|
12
|
+
</Checkbox.Root>
|
|
13
|
+
<Checkbox.Root
|
|
14
|
+
name="newsletter"
|
|
15
|
+
value="weekly"
|
|
16
|
+
defaultChecked
|
|
17
|
+
aria-label="Subscribe to weekly newsletter"
|
|
18
|
+
>
|
|
19
|
+
<Checkbox.Label />
|
|
20
|
+
</Checkbox.Root>
|
|
21
|
+
</>
|
|
22
|
+
);
|
|
23
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Checkbox } from "prime-ui-kit";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
|
|
4
|
+
const FLAGS = [
|
|
5
|
+
{ id: "analytics", label: "Product analytics", hint: "Usage events to improve the app." },
|
|
6
|
+
{ id: "beta", label: "Beta features", hint: "Early access; may be unstable." },
|
|
7
|
+
{ id: "marketing", label: "Marketing emails", hint: "Tips and offers; no spam." },
|
|
8
|
+
] as const;
|
|
9
|
+
|
|
10
|
+
type FlagId = (typeof FLAGS)[number]["id"];
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Independent feature toggles: one checkbox per flag, shared controlled map.
|
|
14
|
+
*/
|
|
15
|
+
export function FeatureFlagsListExample() {
|
|
16
|
+
const [flags, setFlags] = React.useState<Record<FlagId, boolean>>({
|
|
17
|
+
analytics: true,
|
|
18
|
+
beta: false,
|
|
19
|
+
marketing: false,
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
function setFlag(id: FlagId, checked: boolean) {
|
|
23
|
+
setFlags((prev) => ({ ...prev, [id]: checked }));
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
return (
|
|
27
|
+
<>
|
|
28
|
+
{FLAGS.map((f) => (
|
|
29
|
+
<Checkbox.Root
|
|
30
|
+
key={f.id}
|
|
31
|
+
name={`flag_${f.id}`}
|
|
32
|
+
value="on"
|
|
33
|
+
checked={flags[f.id]}
|
|
34
|
+
onChange={(e) => setFlag(f.id, e.target.checked)}
|
|
35
|
+
>
|
|
36
|
+
<Checkbox.Label>{f.label}</Checkbox.Label>
|
|
37
|
+
<Checkbox.Hint>{f.hint}</Checkbox.Hint>
|
|
38
|
+
</Checkbox.Root>
|
|
39
|
+
))}
|
|
40
|
+
</>
|
|
41
|
+
);
|
|
42
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { Checkbox } from "prime-ui-kit";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Settings-style list: optional features with hints; one option disabled (e.g. plan-gated).
|
|
6
|
+
*/
|
|
7
|
+
export function SettingsPanelExample() {
|
|
8
|
+
const [desktopNotify, setDesktopNotify] = React.useState(true);
|
|
9
|
+
const [sound, setSound] = React.useState(false);
|
|
10
|
+
const [weeklyDigest, setWeeklyDigest] = React.useState(true);
|
|
11
|
+
|
|
12
|
+
return (
|
|
13
|
+
<>
|
|
14
|
+
<Checkbox.Root
|
|
15
|
+
name="notify_desktop"
|
|
16
|
+
value="on"
|
|
17
|
+
checked={desktopNotify}
|
|
18
|
+
onChange={(e) => setDesktopNotify(e.target.checked)}
|
|
19
|
+
>
|
|
20
|
+
<Checkbox.Label>Desktop notifications</Checkbox.Label>
|
|
21
|
+
<Checkbox.Hint>Show alerts when the app is in the background.</Checkbox.Hint>
|
|
22
|
+
</Checkbox.Root>
|
|
23
|
+
<Checkbox.Root
|
|
24
|
+
name="sound"
|
|
25
|
+
value="on"
|
|
26
|
+
checked={sound}
|
|
27
|
+
onChange={(e) => setSound(e.target.checked)}
|
|
28
|
+
>
|
|
29
|
+
<Checkbox.Label>Sound effects</Checkbox.Label>
|
|
30
|
+
<Checkbox.Hint>Short UI sounds for sends and errors.</Checkbox.Hint>
|
|
31
|
+
</Checkbox.Root>
|
|
32
|
+
<Checkbox.Root name="sso" value="on" disabled>
|
|
33
|
+
<Checkbox.Label>SSO / SAML (Enterprise)</Checkbox.Label>
|
|
34
|
+
<Checkbox.Hint>Contact sales to enable single sign-on.</Checkbox.Hint>
|
|
35
|
+
</Checkbox.Root>
|
|
36
|
+
<Checkbox.Root
|
|
37
|
+
name="digest"
|
|
38
|
+
value="on"
|
|
39
|
+
checked={weeklyDigest}
|
|
40
|
+
onChange={(e) => setWeeklyDigest(e.target.checked)}
|
|
41
|
+
>
|
|
42
|
+
<Checkbox.Label>Weekly activity summary</Checkbox.Label>
|
|
43
|
+
<Checkbox.Hint>Email recap of mentions and tasks.</Checkbox.Hint>
|
|
44
|
+
</Checkbox.Root>
|
|
45
|
+
</>
|
|
46
|
+
);
|
|
47
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Checkbox } from "prime-ui-kit";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Terms / consent: required submission, hint for context, error after failed validation.
|
|
6
|
+
*/
|
|
7
|
+
export function TermsAcceptanceExample() {
|
|
8
|
+
const [accepted, setAccepted] = React.useState(false);
|
|
9
|
+
const [showError, setShowError] = React.useState(false);
|
|
10
|
+
|
|
11
|
+
function handleSubmit(e: React.FormEvent<HTMLFormElement>) {
|
|
12
|
+
e.preventDefault();
|
|
13
|
+
if (!accepted) {
|
|
14
|
+
setShowError(true);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
return (
|
|
19
|
+
<form onSubmit={handleSubmit}>
|
|
20
|
+
<Checkbox.Root
|
|
21
|
+
name="terms"
|
|
22
|
+
value="accept"
|
|
23
|
+
required
|
|
24
|
+
checked={accepted}
|
|
25
|
+
onChange={(e) => {
|
|
26
|
+
setAccepted(e.target.checked);
|
|
27
|
+
if (e.target.checked) {
|
|
28
|
+
setShowError(false);
|
|
29
|
+
}
|
|
30
|
+
}}
|
|
31
|
+
variant={showError ? "error" : "default"}
|
|
32
|
+
>
|
|
33
|
+
<Checkbox.Label>I accept the Terms of Service and Privacy Policy</Checkbox.Label>
|
|
34
|
+
<Checkbox.Hint>
|
|
35
|
+
Required to create an account. You can withdraw consent in settings.
|
|
36
|
+
</Checkbox.Hint>
|
|
37
|
+
{showError ? <Checkbox.Error>Please accept the terms to continue.</Checkbox.Error> : null}
|
|
38
|
+
</Checkbox.Root>
|
|
39
|
+
<button type="submit">Continue</button>
|
|
40
|
+
</form>
|
|
41
|
+
);
|
|
42
|
+
}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
# CodeBlock
|
|
2
|
+
|
|
3
|
+
## Canonical
|
|
4
|
+
|
|
5
|
+
- **API:** `CodeBlock.Root` only. Required prop: **`code`** (string). Optional **`colorScheme`**: `"light"` (default) or `"dark"` for `data-theme` on the root `pre`.
|
|
6
|
+
- **Rendering:** `pre` + inner `code` filled via **`highlightTsxHtml(code.trimEnd())`** and **`dangerouslySetInnerHTML`**. Do not pass **`children`** or **`dangerouslySetInnerHTML`** (omitted from props).
|
|
7
|
+
- **Trust:** only **trusted** `code` strings (constants, vetted CMS, sanitized server output). Never pass raw user HTML/TSX here.
|
|
8
|
+
- **Language:** heuristic **TS/TSX** highlighting — not a full grammar. JSON, stacks, and other text still render; token classes may be partial.
|
|
9
|
+
- **Sizing:** no **`size`** prop; **`font-size`** / **`line-height`** inherit from the parent. Layout wrappers and typography tokens control rhythm.
|
|
10
|
+
- **Extras:** **`className`** and native **`pre`** attributes ( **`id`**, ARIA, **`data-*`**, handlers) via **`…rest`**.
|
|
11
|
+
|
|
12
|
+
## Extended
|
|
13
|
+
|
|
14
|
+
### About
|
|
15
|
+
|
|
16
|
+
`CodeBlock` is a static, read-only presentation component: it shows a source string with kit-aligned monospace and a light or dark token palette.
|
|
17
|
+
|
|
18
|
+
- **Use** for partner docs, marketing, in-app help, API reference cards, integration guides, or internal tools when the snippet is **trusted** and TS/TSX-oriented highlighting is enough.
|
|
19
|
+
- **Use** with surrounding copy ([Typography](../typography/COMPONENT.md), headings, captions) for documentation-style layouts.
|
|
20
|
+
- **Do not use** for **untrusted** input (inner HTML is injected).
|
|
21
|
+
- **Do not use** when you need another language grammar, line numbers, copy-to-clipboard, or tabs — implement those in the app layer.
|
|
22
|
+
- **Do not use** for an editable or primary focus target for typing (use inputs or an editor).
|
|
23
|
+
|
|
24
|
+
### Composition
|
|
25
|
+
|
|
26
|
+
- Public API: **`CodeBlock`** object with **`Root`**.
|
|
27
|
+
- **`Root`** renders a **`pre`**; highlighted markup is a single inner **`code`** (do not supply **`children`**).
|
|
28
|
+
- Pass source as **`code`**. Optional **`colorScheme`** sets highlighting palette / **`data-theme`** on **`pre`**.
|
|
29
|
+
|
|
30
|
+
### Scenarios (playground)
|
|
31
|
+
|
|
32
|
+
Same order as `playground/sections/CodeBlockSection.tsx`. Snippets use the `@/` alias and may use `usePlaygroundTheme` for `colorScheme`.
|
|
33
|
+
|
|
34
|
+
| Scenario | Snippet |
|
|
35
|
+
|----------|---------|
|
|
36
|
+
| Sizes — wrapper `font-size` / `line-height`; no `size` prop | [`sizes.tsx`](../../../playground/snippets/code-block/sizes.tsx) |
|
|
37
|
+
| Variants — `colorScheme` light and dark side by side | [`variants.tsx`](../../../playground/snippets/code-block/variants.tsx) |
|
|
38
|
+
| Controlled — `code` from parent state; switch between snippets | [`controlled.tsx`](../../../playground/snippets/code-block/controlled.tsx) |
|
|
39
|
+
| Composition — documentation-style card (Typography + code) | [`composition.tsx`](../../../playground/snippets/code-block/composition.tsx) |
|
|
40
|
+
| Full width — narrow column, `codeBlockFullBleed`, horizontal scroll | [`full-width.tsx`](../../../playground/snippets/code-block/full-width.tsx) |
|
|
41
|
+
| Features — `id`, `aria-label`, `data-*`, trailing spaces + `trimEnd` | [`features.tsx`](../../../playground/snippets/code-block/features.tsx) |
|
|
42
|
+
|
|
43
|
+
### Package examples (`examples/`)
|
|
44
|
+
|
|
45
|
+
Recipes import **`prime-ui-kit`** (no playground path alias).
|
|
46
|
+
|
|
47
|
+
| Scenario | File |
|
|
48
|
+
|----------|------|
|
|
49
|
+
| Minimal usage | [`minimal.tsx`](./examples/minimal.tsx) |
|
|
50
|
+
| Controlled — `code` из состояния (рецепт на `ButtonGroup`) | [`controlled.tsx`](./examples/controlled.tsx) |
|
|
51
|
+
| API response preview (JSON body) | [`api-response-preview.tsx`](./examples/api-response-preview.tsx) |
|
|
52
|
+
| Config snippet (TS config) | [`config-snippet.tsx`](./examples/config-snippet.tsx) |
|
|
53
|
+
| Error stack / log | [`error-stack.tsx`](./examples/error-stack.tsx) |
|
|
54
|
+
| Tutorial step (copy + snippet) | [`tutorial-step.tsx`](./examples/tutorial-step.tsx) |
|
|
55
|
+
|
|
56
|
+
### Minimal example
|
|
57
|
+
|
|
58
|
+
```tsx
|
|
59
|
+
import { CodeBlock } from "prime-ui-kit";
|
|
60
|
+
|
|
61
|
+
export function Example() {
|
|
62
|
+
return <CodeBlock.Root code='export const n = 1;' />;
|
|
63
|
+
}
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
### Rules
|
|
67
|
+
|
|
68
|
+
- **`code`** is required. The implementation applies **`trimEnd()`** on the whole string before highlighting; per-line content is preserved except trailing whitespace at the end of the string.
|
|
69
|
+
- **`colorScheme`** defaults to **`"light"`**; use **`"dark"`** on dark surfaces so tokens stay readable.
|
|
70
|
+
- **Security:** HTML comes from **`highlightTsxHtml`** only as wrapped **`code`** content; treat **`code`** as trusted.
|
|
71
|
+
- **Highlighting** is TS/TSX-oriented; edge syntax may not match expectations.
|
|
72
|
+
- **Accessibility:** static prose; add **`aria-label`**, **`aria-describedby`**, or headings via **`…rest`** when assistive tech needs an explicit name.
|
|
73
|
+
- **Focus:** no default **`tabIndex`**; add only if your UX requires a focusable static block.
|
|
74
|
+
|
|
75
|
+
### API
|
|
76
|
+
|
|
77
|
+
#### CodeBlock.Root
|
|
78
|
+
|
|
79
|
+
| Prop | Type | Default | Required | Description |
|
|
80
|
+
|------|------|---------|----------|-------------|
|
|
81
|
+
| `code` | `string` | — | Yes | TS/TSX-oriented source; trailing whitespace trimmed with `trimEnd()` before highlighting. |
|
|
82
|
+
| `colorScheme` | `CodeBlockColorScheme` (`"light" \| "dark"`) | `"light"` | No | Token palette / `data-theme` on the root `pre`. |
|
|
83
|
+
| `className` | `string` | — | No | Additional class on the root `pre`. |
|
|
84
|
+
| `…rest` | `Omit<React.HTMLAttributes<HTMLPreElement>, "children" \| "dangerouslySetInnerHTML">` | — | No | Other native `pre` attributes. `children` and `dangerouslySetInnerHTML` are omitted. |
|
|
85
|
+
|
|
86
|
+
The package also exports **`CodeBlockColorScheme`** and **`CodeBlockRootProps`**.
|
|
87
|
+
|
|
88
|
+
### Related
|
|
89
|
+
|
|
90
|
+
- [Typography](../typography/COMPONENT.md) — headings and body around snippets.
|
|
91
|
+
- [Button](../button/COMPONENT.md) — switching the active snippet from parent state (playground `controlled.tsx`).
|
|
92
|
+
- [ButtonGroup](../button-group/COMPONENT.md) — segmented control for switching `code` ([`examples/controlled.tsx`](./examples/controlled.tsx)).
|
|
93
|
+
- [Segmented control](../segmented-control/COMPONENT.md) — compact scenario switching.
|
|
94
|
+
- [Kbd](../kbd/COMPONENT.md) — shortcut hints beside prose.
|
|
95
|
+
|
|
96
|
+
## Note for LLM assistants
|
|
97
|
+
|
|
98
|
+
- Recommend **`CodeBlock.Root`** only; **`code`** must be a **trusted** string — flag any pattern that pipes user or CMS content without sanitization.
|
|
99
|
+
- Do not suggest **`children`**, **`dangerouslySetInnerHTML`**, or wrapping the kit block to replace inner HTML.
|
|
100
|
+
- Prefer **`colorScheme="dark"`** when the parent surface uses dark **`data-theme`** or dark backgrounds so contrast stays valid.
|
|
101
|
+
- If the user asks for copy button, line numbers, tabs, or non-TS languages, say these are **out of kit scope** and belong in the app (or a different library).
|
|
102
|
+
- For JSON-only bodies, remind that highlighting is **TS/TSX heuristic**; formatting as a template or TS-adjacent string is fine.
|
|
103
|
+
- **`trimEnd()`** applies to the **entire** `code` string once, not each line.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { CodeBlock } from "prime-ui-kit";
|
|
2
|
+
|
|
3
|
+
const RESPONSE_BODY = `{
|
|
4
|
+
"id": "ord_8f2a",
|
|
5
|
+
"status": "paid",
|
|
6
|
+
"total": 14990,
|
|
7
|
+
"currency": "RUB",
|
|
8
|
+
"items": [{ "sku": "sku-12", "qty": 2 }]
|
|
9
|
+
}
|
|
10
|
+
`;
|
|
11
|
+
|
|
12
|
+
/** Превью тела ответа API (JSON как текст; подсветка эвристическая, как для TS-подобного синтаксиса). */
|
|
13
|
+
export default function CodeBlockApiResponsePreview() {
|
|
14
|
+
return (
|
|
15
|
+
<CodeBlock.Root
|
|
16
|
+
code={RESPONSE_BODY}
|
|
17
|
+
colorScheme="light"
|
|
18
|
+
aria-label="Пример JSON ответа GET /orders/:id"
|
|
19
|
+
/>
|
|
20
|
+
);
|
|
21
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { CodeBlock } from "prime-ui-kit";
|
|
2
|
+
|
|
3
|
+
const CONFIG_TS = `// vite.config.ts — фрагмент
|
|
4
|
+
import { defineConfig } from "vite";
|
|
5
|
+
import react from "@vitejs/plugin-react";
|
|
6
|
+
|
|
7
|
+
export default defineConfig({
|
|
8
|
+
plugins: [react()],
|
|
9
|
+
server: { port: 5173, strictPort: true },
|
|
10
|
+
build: { outDir: "dist", sourcemap: true },
|
|
11
|
+
});
|
|
12
|
+
`;
|
|
13
|
+
|
|
14
|
+
/** Фрагмент конфигурации как TS-исходник (предпочтительный формат для подсветки кита). */
|
|
15
|
+
export default function CodeBlockConfigSnippet() {
|
|
16
|
+
return <CodeBlock.Root code={CONFIG_TS} colorScheme="dark" />;
|
|
17
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { ButtonGroup, CodeBlock, Typography } from "prime-ui-kit";
|
|
2
|
+
import { useState } from "react";
|
|
3
|
+
|
|
4
|
+
const SNIPPETS: [string, string][] = [
|
|
5
|
+
[
|
|
6
|
+
"Утилита",
|
|
7
|
+
`export function clamp(n: number, min: number, max: number) {
|
|
8
|
+
return Math.min(max, Math.max(min, n));
|
|
9
|
+
}
|
|
10
|
+
`,
|
|
11
|
+
],
|
|
12
|
+
[
|
|
13
|
+
"React",
|
|
14
|
+
`import { useMemo } from "react";
|
|
15
|
+
|
|
16
|
+
export function useStableId(prefix: string) {
|
|
17
|
+
return useMemo(() => \`\${prefix}-\${Math.random().toString(36).slice(2)}\`, [prefix]);
|
|
18
|
+
}
|
|
19
|
+
`,
|
|
20
|
+
],
|
|
21
|
+
];
|
|
22
|
+
|
|
23
|
+
/** Проп `code` из состояния родителя: сегменты переключают два разных фрагмента (как в playground `controlled.tsx`). */
|
|
24
|
+
export default function CodeBlockControlledExample() {
|
|
25
|
+
const [index, setIndex] = useState(0);
|
|
26
|
+
const [label, code] = SNIPPETS[index] ?? SNIPPETS[0];
|
|
27
|
+
|
|
28
|
+
return (
|
|
29
|
+
<div>
|
|
30
|
+
<Typography.Root variant="body-compact" tone="muted" as="p">
|
|
31
|
+
Активный фрагмент: <strong>{label}</strong> (проп <code>code</code> из состояния).
|
|
32
|
+
</Typography.Root>
|
|
33
|
+
<ButtonGroup.Root size="s" aria-label="Выбор фрагмента кода">
|
|
34
|
+
{SNIPPETS.map(([title], i) => (
|
|
35
|
+
<ButtonGroup.Item key={title} pressed={i === index} onClick={() => setIndex(i)}>
|
|
36
|
+
{title}
|
|
37
|
+
</ButtonGroup.Item>
|
|
38
|
+
))}
|
|
39
|
+
</ButtonGroup.Root>
|
|
40
|
+
<CodeBlock.Root code={code} colorScheme="light" />
|
|
41
|
+
</div>
|
|
42
|
+
);
|
|
43
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { CodeBlock } from "prime-ui-kit";
|
|
2
|
+
|
|
3
|
+
const STACK = `Error: connect ECONNREFUSED 127.0.0.1:5432
|
|
4
|
+
at createConnectionError (node:net:1234:5)
|
|
5
|
+
at afterConnect (node:net:567:8)
|
|
6
|
+
at Query.run (/app/node_modules/pg/lib/query.js:42:10)
|
|
7
|
+
at async fetchUserById (/app/src/users.ts:18:20)
|
|
8
|
+
`;
|
|
9
|
+
|
|
10
|
+
/** Стек ошибки или лог — многострочная строка; читабельность на тёмной подложке через colorScheme. */
|
|
11
|
+
export default function CodeBlockErrorStack() {
|
|
12
|
+
return (
|
|
13
|
+
<CodeBlock.Root
|
|
14
|
+
code={STACK}
|
|
15
|
+
colorScheme="dark"
|
|
16
|
+
aria-label="Пример стека ошибки подключения к БД"
|
|
17
|
+
/>
|
|
18
|
+
);
|
|
19
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { CodeBlock, Typography } from "prime-ui-kit";
|
|
2
|
+
|
|
3
|
+
const STEP_CODE = `import { useState } from "react";
|
|
4
|
+
|
|
5
|
+
export function Counter() {
|
|
6
|
+
const [n, setN] = useState(0);
|
|
7
|
+
return (
|
|
8
|
+
<button type="button" onClick={() => setN((c) => c + 1)}>
|
|
9
|
+
Счёт: {n}
|
|
10
|
+
</button>
|
|
11
|
+
);
|
|
12
|
+
}
|
|
13
|
+
`;
|
|
14
|
+
|
|
15
|
+
/** Шаг туториала: короткий контекст в Typography и код ниже. */
|
|
16
|
+
export default function CodeBlockTutorialStep() {
|
|
17
|
+
return (
|
|
18
|
+
<div>
|
|
19
|
+
<Typography.Root variant="body-small" weight="semibold" as="p">
|
|
20
|
+
Шаг 3 — счётчик на состоянии
|
|
21
|
+
</Typography.Root>
|
|
22
|
+
<Typography.Root variant="body-compact" tone="muted" as="p">
|
|
23
|
+
Добавьте компонент и вызовите setN в обработчике клика.
|
|
24
|
+
</Typography.Root>
|
|
25
|
+
<CodeBlock.Root code={STEP_CODE} colorScheme="light" />
|
|
26
|
+
</div>
|
|
27
|
+
);
|
|
28
|
+
}
|