@adminiumjs/ui 0.1.0-rc.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 +661 -0
- package/dist/components/alert/Alert.d.ts +27 -0
- package/dist/components/alert/Alert.d.ts.map +1 -0
- package/dist/components/alert/Alert.js +25 -0
- package/dist/components/alert/Alert.js.map +1 -0
- package/dist/components/alert/index.d.ts +3 -0
- package/dist/components/alert/index.d.ts.map +1 -0
- package/dist/components/alert/index.js +2 -0
- package/dist/components/alert/index.js.map +1 -0
- package/dist/components/auth-layout/AuthLayout.d.ts +54 -0
- package/dist/components/auth-layout/AuthLayout.d.ts.map +1 -0
- package/dist/components/auth-layout/AuthLayout.js +30 -0
- package/dist/components/auth-layout/AuthLayout.js.map +1 -0
- package/dist/components/auth-layout/index.d.ts +3 -0
- package/dist/components/auth-layout/index.d.ts.map +1 -0
- package/dist/components/auth-layout/index.js +2 -0
- package/dist/components/auth-layout/index.js.map +1 -0
- package/dist/components/auth-screens/ForgotPasswordForm.d.ts +80 -0
- package/dist/components/auth-screens/ForgotPasswordForm.d.ts.map +1 -0
- package/dist/components/auth-screens/ForgotPasswordForm.js +50 -0
- package/dist/components/auth-screens/ForgotPasswordForm.js.map +1 -0
- package/dist/components/auth-screens/ResetPasswordForm.d.ts +55 -0
- package/dist/components/auth-screens/ResetPasswordForm.d.ts.map +1 -0
- package/dist/components/auth-screens/ResetPasswordForm.js +45 -0
- package/dist/components/auth-screens/ResetPasswordForm.js.map +1 -0
- package/dist/components/auth-screens/SignInForm.d.ts +67 -0
- package/dist/components/auth-screens/SignInForm.d.ts.map +1 -0
- package/dist/components/auth-screens/SignInForm.js +47 -0
- package/dist/components/auth-screens/SignInForm.js.map +1 -0
- package/dist/components/auth-screens/TwoFactorForm.d.ts +54 -0
- package/dist/components/auth-screens/TwoFactorForm.d.ts.map +1 -0
- package/dist/components/auth-screens/TwoFactorForm.js +47 -0
- package/dist/components/auth-screens/TwoFactorForm.js.map +1 -0
- package/dist/components/auth-screens/index.d.ts +9 -0
- package/dist/components/auth-screens/index.d.ts.map +1 -0
- package/dist/components/auth-screens/index.js +5 -0
- package/dist/components/auth-screens/index.js.map +1 -0
- package/dist/components/autosave-indicator/AutosaveIndicator.d.ts +28 -0
- package/dist/components/autosave-indicator/AutosaveIndicator.d.ts.map +1 -0
- package/dist/components/autosave-indicator/AutosaveIndicator.js +14 -0
- package/dist/components/autosave-indicator/AutosaveIndicator.js.map +1 -0
- package/dist/components/autosave-indicator/index.d.ts +3 -0
- package/dist/components/autosave-indicator/index.d.ts.map +1 -0
- package/dist/components/autosave-indicator/index.js +2 -0
- package/dist/components/autosave-indicator/index.js.map +1 -0
- package/dist/components/avatar/Avatar.d.ts +48 -0
- package/dist/components/avatar/Avatar.d.ts.map +1 -0
- package/dist/components/avatar/Avatar.js +104 -0
- package/dist/components/avatar/Avatar.js.map +1 -0
- package/dist/components/avatar/index.d.ts +3 -0
- package/dist/components/avatar/index.d.ts.map +1 -0
- package/dist/components/avatar/index.js +2 -0
- package/dist/components/avatar/index.js.map +1 -0
- package/dist/components/avatar-stack/AvatarStack.d.ts +21 -0
- package/dist/components/avatar-stack/AvatarStack.d.ts.map +1 -0
- package/dist/components/avatar-stack/AvatarStack.js +16 -0
- package/dist/components/avatar-stack/AvatarStack.js.map +1 -0
- package/dist/components/avatar-stack/index.d.ts +3 -0
- package/dist/components/avatar-stack/index.d.ts.map +1 -0
- package/dist/components/avatar-stack/index.js +2 -0
- package/dist/components/avatar-stack/index.js.map +1 -0
- package/dist/components/badge/Badge.d.ts +22 -0
- package/dist/components/badge/Badge.d.ts.map +1 -0
- package/dist/components/badge/Badge.js +21 -0
- package/dist/components/badge/Badge.js.map +1 -0
- package/dist/components/badge/index.d.ts +3 -0
- package/dist/components/badge/index.d.ts.map +1 -0
- package/dist/components/badge/index.js +6 -0
- package/dist/components/badge/index.js.map +1 -0
- package/dist/components/banner/Banner.d.ts +21 -0
- package/dist/components/banner/Banner.d.ts.map +1 -0
- package/dist/components/banner/Banner.js +24 -0
- package/dist/components/banner/Banner.js.map +1 -0
- package/dist/components/banner/index.d.ts +3 -0
- package/dist/components/banner/index.d.ts.map +1 -0
- package/dist/components/banner/index.js +2 -0
- package/dist/components/banner/index.js.map +1 -0
- package/dist/components/breadcrumbs/Breadcrumbs.d.ts +22 -0
- package/dist/components/breadcrumbs/Breadcrumbs.d.ts.map +1 -0
- package/dist/components/breadcrumbs/Breadcrumbs.js +24 -0
- package/dist/components/breadcrumbs/Breadcrumbs.js.map +1 -0
- package/dist/components/breadcrumbs/index.d.ts +3 -0
- package/dist/components/breadcrumbs/index.d.ts.map +1 -0
- package/dist/components/breadcrumbs/index.js +2 -0
- package/dist/components/breadcrumbs/index.js.map +1 -0
- package/dist/components/bulk-action-bar/BulkActionBar.d.ts +35 -0
- package/dist/components/bulk-action-bar/BulkActionBar.d.ts.map +1 -0
- package/dist/components/bulk-action-bar/BulkActionBar.js +17 -0
- package/dist/components/bulk-action-bar/BulkActionBar.js.map +1 -0
- package/dist/components/bulk-action-bar/index.d.ts +3 -0
- package/dist/components/bulk-action-bar/index.d.ts.map +1 -0
- package/dist/components/bulk-action-bar/index.js +2 -0
- package/dist/components/bulk-action-bar/index.js.map +1 -0
- package/dist/components/button/Button.d.ts +27 -0
- package/dist/components/button/Button.d.ts.map +1 -0
- package/dist/components/button/Button.js +43 -0
- package/dist/components/button/Button.js.map +1 -0
- package/dist/components/button/index.d.ts +3 -0
- package/dist/components/button/index.d.ts.map +1 -0
- package/dist/components/button/index.js +2 -0
- package/dist/components/button/index.js.map +1 -0
- package/dist/components/card/Card.d.ts +27 -0
- package/dist/components/card/Card.d.ts.map +1 -0
- package/dist/components/card/Card.js +41 -0
- package/dist/components/card/Card.js.map +1 -0
- package/dist/components/card/index.d.ts +3 -0
- package/dist/components/card/index.d.ts.map +1 -0
- package/dist/components/card/index.js +2 -0
- package/dist/components/card/index.js.map +1 -0
- package/dist/components/checkbox/Checkbox.d.ts +13 -0
- package/dist/components/checkbox/Checkbox.d.ts.map +1 -0
- package/dist/components/checkbox/Checkbox.js +16 -0
- package/dist/components/checkbox/Checkbox.js.map +1 -0
- package/dist/components/checkbox/index.d.ts +3 -0
- package/dist/components/checkbox/index.d.ts.map +1 -0
- package/dist/components/checkbox/index.js +2 -0
- package/dist/components/checkbox/index.js.map +1 -0
- package/dist/components/chip-input/ChipInput.d.ts +29 -0
- package/dist/components/chip-input/ChipInput.d.ts.map +1 -0
- package/dist/components/chip-input/ChipInput.js +96 -0
- package/dist/components/chip-input/ChipInput.js.map +1 -0
- package/dist/components/chip-input/index.d.ts +3 -0
- package/dist/components/chip-input/index.d.ts.map +1 -0
- package/dist/components/chip-input/index.js +2 -0
- package/dist/components/chip-input/index.js.map +1 -0
- package/dist/components/choice-chips/ChoiceChips.d.ts +40 -0
- package/dist/components/choice-chips/ChoiceChips.d.ts.map +1 -0
- package/dist/components/choice-chips/ChoiceChips.js +76 -0
- package/dist/components/choice-chips/ChoiceChips.js.map +1 -0
- package/dist/components/choice-chips/index.d.ts +3 -0
- package/dist/components/choice-chips/index.d.ts.map +1 -0
- package/dist/components/choice-chips/index.js +2 -0
- package/dist/components/choice-chips/index.js.map +1 -0
- package/dist/components/combobox/Combobox.d.ts +54 -0
- package/dist/components/combobox/Combobox.d.ts.map +1 -0
- package/dist/components/combobox/Combobox.js +127 -0
- package/dist/components/combobox/Combobox.js.map +1 -0
- package/dist/components/combobox/index.d.ts +3 -0
- package/dist/components/combobox/index.d.ts.map +1 -0
- package/dist/components/combobox/index.js +2 -0
- package/dist/components/combobox/index.js.map +1 -0
- package/dist/components/command-palette/CommandPalette.d.ts +62 -0
- package/dist/components/command-palette/CommandPalette.d.ts.map +1 -0
- package/dist/components/command-palette/CommandPalette.js +91 -0
- package/dist/components/command-palette/CommandPalette.js.map +1 -0
- package/dist/components/command-palette/index.d.ts +4 -0
- package/dist/components/command-palette/index.d.ts.map +1 -0
- package/dist/components/command-palette/index.js +3 -0
- package/dist/components/command-palette/index.js.map +1 -0
- package/dist/components/command-palette/useCommandK.d.ts +9 -0
- package/dist/components/command-palette/useCommandK.d.ts.map +1 -0
- package/dist/components/command-palette/useCommandK.js +24 -0
- package/dist/components/command-palette/useCommandK.js.map +1 -0
- package/dist/components/confirm-modal/ConfirmModal.d.ts +38 -0
- package/dist/components/confirm-modal/ConfirmModal.d.ts.map +1 -0
- package/dist/components/confirm-modal/ConfirmModal.js +40 -0
- package/dist/components/confirm-modal/ConfirmModal.js.map +1 -0
- package/dist/components/confirm-modal/index.d.ts +3 -0
- package/dist/components/confirm-modal/index.d.ts.map +1 -0
- package/dist/components/confirm-modal/index.js +2 -0
- package/dist/components/confirm-modal/index.js.map +1 -0
- package/dist/components/count-badge/CountBadge.d.ts +13 -0
- package/dist/components/count-badge/CountBadge.d.ts.map +1 -0
- package/dist/components/count-badge/CountBadge.js +20 -0
- package/dist/components/count-badge/CountBadge.js.map +1 -0
- package/dist/components/count-badge/index.d.ts +3 -0
- package/dist/components/count-badge/index.d.ts.map +1 -0
- package/dist/components/count-badge/index.js +2 -0
- package/dist/components/count-badge/index.js.map +1 -0
- package/dist/components/date-input/DateInput.d.ts +53 -0
- package/dist/components/date-input/DateInput.d.ts.map +1 -0
- package/dist/components/date-input/DateInput.js +38 -0
- package/dist/components/date-input/DateInput.js.map +1 -0
- package/dist/components/date-input/index.d.ts +3 -0
- package/dist/components/date-input/index.d.ts.map +1 -0
- package/dist/components/date-input/index.js +2 -0
- package/dist/components/date-input/index.js.map +1 -0
- package/dist/components/delta-pill/DeltaPill.d.ts +25 -0
- package/dist/components/delta-pill/DeltaPill.d.ts.map +1 -0
- package/dist/components/delta-pill/DeltaPill.js +36 -0
- package/dist/components/delta-pill/DeltaPill.js.map +1 -0
- package/dist/components/delta-pill/index.d.ts +3 -0
- package/dist/components/delta-pill/index.d.ts.map +1 -0
- package/dist/components/delta-pill/index.js +2 -0
- package/dist/components/delta-pill/index.js.map +1 -0
- package/dist/components/divider/Divider.d.ts +15 -0
- package/dist/components/divider/Divider.d.ts.map +1 -0
- package/dist/components/divider/Divider.js +23 -0
- package/dist/components/divider/Divider.js.map +1 -0
- package/dist/components/divider/index.d.ts +3 -0
- package/dist/components/divider/index.d.ts.map +1 -0
- package/dist/components/divider/index.js +2 -0
- package/dist/components/divider/index.js.map +1 -0
- package/dist/components/drawer/Drawer.d.ts +44 -0
- package/dist/components/drawer/Drawer.d.ts.map +1 -0
- package/dist/components/drawer/Drawer.js +45 -0
- package/dist/components/drawer/Drawer.js.map +1 -0
- package/dist/components/drawer/index.d.ts +3 -0
- package/dist/components/drawer/index.d.ts.map +1 -0
- package/dist/components/drawer/index.js +2 -0
- package/dist/components/drawer/index.js.map +1 -0
- package/dist/components/dropdown-menu/DropdownMenu.d.ts +35 -0
- package/dist/components/dropdown-menu/DropdownMenu.d.ts.map +1 -0
- package/dist/components/dropdown-menu/DropdownMenu.js +38 -0
- package/dist/components/dropdown-menu/DropdownMenu.js.map +1 -0
- package/dist/components/dropdown-menu/index.d.ts +3 -0
- package/dist/components/dropdown-menu/index.d.ts.map +1 -0
- package/dist/components/dropdown-menu/index.js +2 -0
- package/dist/components/dropdown-menu/index.js.map +1 -0
- package/dist/components/empty-state/EmptyState.d.ts +26 -0
- package/dist/components/empty-state/EmptyState.d.ts.map +1 -0
- package/dist/components/empty-state/EmptyState.js +24 -0
- package/dist/components/empty-state/EmptyState.js.map +1 -0
- package/dist/components/empty-state/index.d.ts +3 -0
- package/dist/components/empty-state/index.d.ts.map +1 -0
- package/dist/components/empty-state/index.js +2 -0
- package/dist/components/empty-state/index.js.map +1 -0
- package/dist/components/filter-chip/FilterChip.d.ts +26 -0
- package/dist/components/filter-chip/FilterChip.d.ts.map +1 -0
- package/dist/components/filter-chip/FilterChip.js +17 -0
- package/dist/components/filter-chip/FilterChip.js.map +1 -0
- package/dist/components/filter-chip/index.d.ts +3 -0
- package/dist/components/filter-chip/index.d.ts.map +1 -0
- package/dist/components/filter-chip/index.js +2 -0
- package/dist/components/filter-chip/index.js.map +1 -0
- package/dist/components/form-field/FormField.d.ts +50 -0
- package/dist/components/form-field/FormField.d.ts.map +1 -0
- package/dist/components/form-field/FormField.js +31 -0
- package/dist/components/form-field/FormField.js.map +1 -0
- package/dist/components/form-field/index.d.ts +3 -0
- package/dist/components/form-field/index.d.ts.map +1 -0
- package/dist/components/form-field/index.js +2 -0
- package/dist/components/form-field/index.js.map +1 -0
- package/dist/components/icon/Icon.d.ts +36 -0
- package/dist/components/icon/Icon.d.ts.map +1 -0
- package/dist/components/icon/Icon.js +24 -0
- package/dist/components/icon/Icon.js.map +1 -0
- package/dist/components/icon/index.d.ts +3 -0
- package/dist/components/icon/index.d.ts.map +1 -0
- package/dist/components/icon/index.js +2 -0
- package/dist/components/icon/index.js.map +1 -0
- package/dist/components/icon-button/IconButton.d.ts +19 -0
- package/dist/components/icon-button/IconButton.d.ts.map +1 -0
- package/dist/components/icon-button/IconButton.js +31 -0
- package/dist/components/icon-button/IconButton.js.map +1 -0
- package/dist/components/icon-button/index.d.ts +3 -0
- package/dist/components/icon-button/index.d.ts.map +1 -0
- package/dist/components/icon-button/index.js +2 -0
- package/dist/components/icon-button/index.js.map +1 -0
- package/dist/components/icon-tile/IconTile.d.ts +24 -0
- package/dist/components/icon-tile/IconTile.d.ts.map +1 -0
- package/dist/components/icon-tile/IconTile.js +32 -0
- package/dist/components/icon-tile/IconTile.js.map +1 -0
- package/dist/components/icon-tile/index.d.ts +3 -0
- package/dist/components/icon-tile/index.d.ts.map +1 -0
- package/dist/components/icon-tile/index.js +2 -0
- package/dist/components/icon-tile/index.js.map +1 -0
- package/dist/components/input/Input.d.ts +28 -0
- package/dist/components/input/Input.d.ts.map +1 -0
- package/dist/components/input/Input.js +34 -0
- package/dist/components/input/Input.js.map +1 -0
- package/dist/components/input/index.d.ts +3 -0
- package/dist/components/input/index.d.ts.map +1 -0
- package/dist/components/input/index.js +2 -0
- package/dist/components/input/index.js.map +1 -0
- package/dist/components/input-group/InputGroup.d.ts +34 -0
- package/dist/components/input-group/InputGroup.d.ts.map +1 -0
- package/dist/components/input-group/InputGroup.js +23 -0
- package/dist/components/input-group/InputGroup.js.map +1 -0
- package/dist/components/input-group/index.d.ts +3 -0
- package/dist/components/input-group/index.d.ts.map +1 -0
- package/dist/components/input-group/index.js +2 -0
- package/dist/components/input-group/index.js.map +1 -0
- package/dist/components/kbd/Kbd.d.ts +8 -0
- package/dist/components/kbd/Kbd.d.ts.map +1 -0
- package/dist/components/kbd/Kbd.js +10 -0
- package/dist/components/kbd/Kbd.js.map +1 -0
- package/dist/components/kbd/index.d.ts +3 -0
- package/dist/components/kbd/index.d.ts.map +1 -0
- package/dist/components/kbd/index.js +2 -0
- package/dist/components/kbd/index.js.map +1 -0
- package/dist/components/key-value-list/KeyValueList.d.ts +27 -0
- package/dist/components/key-value-list/KeyValueList.d.ts.map +1 -0
- package/dist/components/key-value-list/KeyValueList.js +16 -0
- package/dist/components/key-value-list/KeyValueList.js.map +1 -0
- package/dist/components/key-value-list/index.d.ts +3 -0
- package/dist/components/key-value-list/index.d.ts.map +1 -0
- package/dist/components/key-value-list/index.js +2 -0
- package/dist/components/key-value-list/index.js.map +1 -0
- package/dist/components/label/Label.d.ts +14 -0
- package/dist/components/label/Label.d.ts.map +1 -0
- package/dist/components/label/Label.js +17 -0
- package/dist/components/label/Label.js.map +1 -0
- package/dist/components/label/index.d.ts +3 -0
- package/dist/components/label/index.d.ts.map +1 -0
- package/dist/components/label/index.js +2 -0
- package/dist/components/label/index.js.map +1 -0
- package/dist/components/modal/Modal.d.ts +48 -0
- package/dist/components/modal/Modal.d.ts.map +1 -0
- package/dist/components/modal/Modal.js +48 -0
- package/dist/components/modal/Modal.js.map +1 -0
- package/dist/components/modal/index.d.ts +3 -0
- package/dist/components/modal/index.d.ts.map +1 -0
- package/dist/components/modal/index.js +2 -0
- package/dist/components/modal/index.js.map +1 -0
- package/dist/components/mono-text/MonoText.d.ts +13 -0
- package/dist/components/mono-text/MonoText.d.ts.map +1 -0
- package/dist/components/mono-text/MonoText.js +14 -0
- package/dist/components/mono-text/MonoText.js.map +1 -0
- package/dist/components/mono-text/index.d.ts +3 -0
- package/dist/components/mono-text/index.d.ts.map +1 -0
- package/dist/components/mono-text/index.js +2 -0
- package/dist/components/mono-text/index.js.map +1 -0
- package/dist/components/number-stepper/NumberStepper.d.ts +29 -0
- package/dist/components/number-stepper/NumberStepper.d.ts.map +1 -0
- package/dist/components/number-stepper/NumberStepper.js +50 -0
- package/dist/components/number-stepper/NumberStepper.js.map +1 -0
- package/dist/components/number-stepper/index.d.ts +3 -0
- package/dist/components/number-stepper/index.d.ts.map +1 -0
- package/dist/components/number-stepper/index.js +2 -0
- package/dist/components/number-stepper/index.js.map +1 -0
- package/dist/components/otp-input/OtpInput.d.ts +30 -0
- package/dist/components/otp-input/OtpInput.d.ts.map +1 -0
- package/dist/components/otp-input/OtpInput.js +35 -0
- package/dist/components/otp-input/OtpInput.js.map +1 -0
- package/dist/components/otp-input/index.d.ts +3 -0
- package/dist/components/otp-input/index.d.ts.map +1 -0
- package/dist/components/otp-input/index.js +2 -0
- package/dist/components/otp-input/index.js.map +1 -0
- package/dist/components/pagination/Pagination.d.ts +26 -0
- package/dist/components/pagination/Pagination.d.ts.map +1 -0
- package/dist/components/pagination/Pagination.js +34 -0
- package/dist/components/pagination/Pagination.js.map +1 -0
- package/dist/components/pagination/index.d.ts +3 -0
- package/dist/components/pagination/index.d.ts.map +1 -0
- package/dist/components/pagination/index.js +2 -0
- package/dist/components/pagination/index.js.map +1 -0
- package/dist/components/password-strength/PasswordStrength.d.ts +29 -0
- package/dist/components/password-strength/PasswordStrength.d.ts.map +1 -0
- package/dist/components/password-strength/PasswordStrength.js +43 -0
- package/dist/components/password-strength/PasswordStrength.js.map +1 -0
- package/dist/components/password-strength/index.d.ts +3 -0
- package/dist/components/password-strength/index.d.ts.map +1 -0
- package/dist/components/password-strength/index.js +2 -0
- package/dist/components/password-strength/index.js.map +1 -0
- package/dist/components/permission-matrix/PermissionMatrix.d.ts +90 -0
- package/dist/components/permission-matrix/PermissionMatrix.d.ts.map +1 -0
- package/dist/components/permission-matrix/PermissionMatrix.js +62 -0
- package/dist/components/permission-matrix/PermissionMatrix.js.map +1 -0
- package/dist/components/permission-matrix/index.d.ts +3 -0
- package/dist/components/permission-matrix/index.d.ts.map +1 -0
- package/dist/components/permission-matrix/index.js +2 -0
- package/dist/components/permission-matrix/index.js.map +1 -0
- package/dist/components/popover/Popover.d.ts +19 -0
- package/dist/components/popover/Popover.d.ts.map +1 -0
- package/dist/components/popover/Popover.js +21 -0
- package/dist/components/popover/Popover.js.map +1 -0
- package/dist/components/popover/index.d.ts +3 -0
- package/dist/components/popover/index.d.ts.map +1 -0
- package/dist/components/popover/index.js +2 -0
- package/dist/components/popover/index.js.map +1 -0
- package/dist/components/progress-bar/ProgressBar.d.ts +24 -0
- package/dist/components/progress-bar/ProgressBar.d.ts.map +1 -0
- package/dist/components/progress-bar/ProgressBar.js +35 -0
- package/dist/components/progress-bar/ProgressBar.js.map +1 -0
- package/dist/components/progress-bar/index.d.ts +3 -0
- package/dist/components/progress-bar/index.d.ts.map +1 -0
- package/dist/components/progress-bar/index.js +2 -0
- package/dist/components/progress-bar/index.js.map +1 -0
- package/dist/components/radio/Radio.d.ts +25 -0
- package/dist/components/radio/Radio.d.ts.map +1 -0
- package/dist/components/radio/Radio.js +28 -0
- package/dist/components/radio/Radio.js.map +1 -0
- package/dist/components/radio/index.d.ts +3 -0
- package/dist/components/radio/index.d.ts.map +1 -0
- package/dist/components/radio/index.js +2 -0
- package/dist/components/radio/index.js.map +1 -0
- package/dist/components/radio-card/RadioCard.d.ts +22 -0
- package/dist/components/radio-card/RadioCard.d.ts.map +1 -0
- package/dist/components/radio-card/RadioCard.js +16 -0
- package/dist/components/radio-card/RadioCard.js.map +1 -0
- package/dist/components/radio-card/index.d.ts +3 -0
- package/dist/components/radio-card/index.d.ts.map +1 -0
- package/dist/components/radio-card/index.js +2 -0
- package/dist/components/radio-card/index.js.map +1 -0
- package/dist/components/runtime-chip/RuntimeChip.d.ts +54 -0
- package/dist/components/runtime-chip/RuntimeChip.d.ts.map +1 -0
- package/dist/components/runtime-chip/RuntimeChip.js +46 -0
- package/dist/components/runtime-chip/RuntimeChip.js.map +1 -0
- package/dist/components/runtime-chip/index.d.ts +3 -0
- package/dist/components/runtime-chip/index.d.ts.map +1 -0
- package/dist/components/runtime-chip/index.js +2 -0
- package/dist/components/runtime-chip/index.js.map +1 -0
- package/dist/components/search-input/SearchInput.d.ts +27 -0
- package/dist/components/search-input/SearchInput.d.ts.map +1 -0
- package/dist/components/search-input/SearchInput.js +36 -0
- package/dist/components/search-input/SearchInput.js.map +1 -0
- package/dist/components/search-input/index.d.ts +3 -0
- package/dist/components/search-input/index.d.ts.map +1 -0
- package/dist/components/search-input/index.js +2 -0
- package/dist/components/search-input/index.js.map +1 -0
- package/dist/components/secret-input/SecretInput.d.ts +27 -0
- package/dist/components/secret-input/SecretInput.d.ts.map +1 -0
- package/dist/components/secret-input/SecretInput.js +49 -0
- package/dist/components/secret-input/SecretInput.js.map +1 -0
- package/dist/components/secret-input/index.d.ts +3 -0
- package/dist/components/secret-input/index.d.ts.map +1 -0
- package/dist/components/secret-input/index.js +2 -0
- package/dist/components/secret-input/index.js.map +1 -0
- package/dist/components/segmented-control/SegmentedControl.d.ts +35 -0
- package/dist/components/segmented-control/SegmentedControl.d.ts.map +1 -0
- package/dist/components/segmented-control/SegmentedControl.js +67 -0
- package/dist/components/segmented-control/SegmentedControl.js.map +1 -0
- package/dist/components/segmented-control/index.d.ts +3 -0
- package/dist/components/segmented-control/index.d.ts.map +1 -0
- package/dist/components/segmented-control/index.js +2 -0
- package/dist/components/segmented-control/index.js.map +1 -0
- package/dist/components/select/Select.d.ts +17 -0
- package/dist/components/select/Select.d.ts.map +1 -0
- package/dist/components/select/Select.js +14 -0
- package/dist/components/select/Select.js.map +1 -0
- package/dist/components/select/index.d.ts +3 -0
- package/dist/components/select/index.d.ts.map +1 -0
- package/dist/components/select/index.js +2 -0
- package/dist/components/select/index.js.map +1 -0
- package/dist/components/skeleton/Skeleton.d.ts +18 -0
- package/dist/components/skeleton/Skeleton.d.ts.map +1 -0
- package/dist/components/skeleton/Skeleton.js +30 -0
- package/dist/components/skeleton/Skeleton.js.map +1 -0
- package/dist/components/skeleton/index.d.ts +3 -0
- package/dist/components/skeleton/index.d.ts.map +1 -0
- package/dist/components/skeleton/index.js +2 -0
- package/dist/components/skeleton/index.js.map +1 -0
- package/dist/components/slider/Slider.d.ts +17 -0
- package/dist/components/slider/Slider.d.ts.map +1 -0
- package/dist/components/slider/Slider.js +14 -0
- package/dist/components/slider/Slider.js.map +1 -0
- package/dist/components/slider/index.d.ts +3 -0
- package/dist/components/slider/index.d.ts.map +1 -0
- package/dist/components/slider/index.js +2 -0
- package/dist/components/slider/index.js.map +1 -0
- package/dist/components/snackbar/Snackbar.d.ts +21 -0
- package/dist/components/snackbar/Snackbar.d.ts.map +1 -0
- package/dist/components/snackbar/Snackbar.js +12 -0
- package/dist/components/snackbar/Snackbar.js.map +1 -0
- package/dist/components/snackbar/index.d.ts +3 -0
- package/dist/components/snackbar/index.d.ts.map +1 -0
- package/dist/components/snackbar/index.js +2 -0
- package/dist/components/snackbar/index.js.map +1 -0
- package/dist/components/spinner/Spinner.d.ts +22 -0
- package/dist/components/spinner/Spinner.d.ts.map +1 -0
- package/dist/components/spinner/Spinner.js +28 -0
- package/dist/components/spinner/Spinner.js.map +1 -0
- package/dist/components/spinner/index.d.ts +3 -0
- package/dist/components/spinner/index.d.ts.map +1 -0
- package/dist/components/spinner/index.js +2 -0
- package/dist/components/spinner/index.js.map +1 -0
- package/dist/components/status-pill/StatusPill.d.ts +19 -0
- package/dist/components/status-pill/StatusPill.d.ts.map +1 -0
- package/dist/components/status-pill/StatusPill.js +16 -0
- package/dist/components/status-pill/StatusPill.js.map +1 -0
- package/dist/components/status-pill/index.d.ts +3 -0
- package/dist/components/status-pill/index.d.ts.map +1 -0
- package/dist/components/status-pill/index.js +2 -0
- package/dist/components/status-pill/index.js.map +1 -0
- package/dist/components/stepper/Stepper.d.ts +31 -0
- package/dist/components/stepper/Stepper.d.ts.map +1 -0
- package/dist/components/stepper/Stepper.js +49 -0
- package/dist/components/stepper/Stepper.js.map +1 -0
- package/dist/components/stepper/index.d.ts +3 -0
- package/dist/components/stepper/index.d.ts.map +1 -0
- package/dist/components/stepper/index.js +2 -0
- package/dist/components/stepper/index.js.map +1 -0
- package/dist/components/success-state/SuccessState.d.ts +27 -0
- package/dist/components/success-state/SuccessState.d.ts.map +1 -0
- package/dist/components/success-state/SuccessState.js +14 -0
- package/dist/components/success-state/SuccessState.js.map +1 -0
- package/dist/components/success-state/index.d.ts +3 -0
- package/dist/components/success-state/index.d.ts.map +1 -0
- package/dist/components/success-state/index.js +2 -0
- package/dist/components/success-state/index.js.map +1 -0
- package/dist/components/switch/Switch.d.ts +11 -0
- package/dist/components/switch/Switch.d.ts.map +1 -0
- package/dist/components/switch/Switch.js +13 -0
- package/dist/components/switch/Switch.js.map +1 -0
- package/dist/components/switch/index.d.ts +3 -0
- package/dist/components/switch/index.d.ts.map +1 -0
- package/dist/components/switch/index.js +2 -0
- package/dist/components/switch/index.js.map +1 -0
- package/dist/components/tabs/Tabs.d.ts +32 -0
- package/dist/components/tabs/Tabs.d.ts.map +1 -0
- package/dist/components/tabs/Tabs.js +43 -0
- package/dist/components/tabs/Tabs.js.map +1 -0
- package/dist/components/tabs/index.d.ts +3 -0
- package/dist/components/tabs/index.d.ts.map +1 -0
- package/dist/components/tabs/index.js +2 -0
- package/dist/components/tabs/index.js.map +1 -0
- package/dist/components/tag/Tag.d.ts +30 -0
- package/dist/components/tag/Tag.d.ts.map +1 -0
- package/dist/components/tag/Tag.js +35 -0
- package/dist/components/tag/Tag.js.map +1 -0
- package/dist/components/tag/index.d.ts +3 -0
- package/dist/components/tag/index.d.ts.map +1 -0
- package/dist/components/tag/index.js +2 -0
- package/dist/components/tag/index.js.map +1 -0
- package/dist/components/textarea/Textarea.d.ts +19 -0
- package/dist/components/textarea/Textarea.d.ts.map +1 -0
- package/dist/components/textarea/Textarea.js +11 -0
- package/dist/components/textarea/Textarea.js.map +1 -0
- package/dist/components/textarea/index.d.ts +3 -0
- package/dist/components/textarea/index.d.ts.map +1 -0
- package/dist/components/textarea/index.js +2 -0
- package/dist/components/textarea/index.js.map +1 -0
- package/dist/components/toast/Toast.d.ts +67 -0
- package/dist/components/toast/Toast.d.ts.map +1 -0
- package/dist/components/toast/Toast.js +63 -0
- package/dist/components/toast/Toast.js.map +1 -0
- package/dist/components/toast/index.d.ts +5 -0
- package/dist/components/toast/index.d.ts.map +1 -0
- package/dist/components/toast/index.js +3 -0
- package/dist/components/toast/index.js.map +1 -0
- package/dist/components/toast/useToastQueue.d.ts +73 -0
- package/dist/components/toast/useToastQueue.d.ts.map +1 -0
- package/dist/components/toast/useToastQueue.js +191 -0
- package/dist/components/toast/useToastQueue.js.map +1 -0
- package/dist/components/toggle-matrix/ToggleMatrix.d.ts +58 -0
- package/dist/components/toggle-matrix/ToggleMatrix.d.ts.map +1 -0
- package/dist/components/toggle-matrix/ToggleMatrix.js +95 -0
- package/dist/components/toggle-matrix/ToggleMatrix.js.map +1 -0
- package/dist/components/toggle-matrix/index.d.ts +3 -0
- package/dist/components/toggle-matrix/index.d.ts.map +1 -0
- package/dist/components/toggle-matrix/index.js +2 -0
- package/dist/components/toggle-matrix/index.js.map +1 -0
- package/dist/components/tooltip/Tooltip.d.ts +33 -0
- package/dist/components/tooltip/Tooltip.d.ts.map +1 -0
- package/dist/components/tooltip/Tooltip.js +19 -0
- package/dist/components/tooltip/Tooltip.js.map +1 -0
- package/dist/components/tooltip/index.d.ts +3 -0
- package/dist/components/tooltip/index.d.ts.map +1 -0
- package/dist/components/tooltip/index.js +2 -0
- package/dist/components/tooltip/index.js.map +1 -0
- package/dist/components/two-phase-modal/TwoPhaseModal.d.ts +45 -0
- package/dist/components/two-phase-modal/TwoPhaseModal.d.ts.map +1 -0
- package/dist/components/two-phase-modal/TwoPhaseModal.js +50 -0
- package/dist/components/two-phase-modal/TwoPhaseModal.js.map +1 -0
- package/dist/components/two-phase-modal/index.d.ts +3 -0
- package/dist/components/two-phase-modal/index.d.ts.map +1 -0
- package/dist/components/two-phase-modal/index.js +2 -0
- package/dist/components/two-phase-modal/index.js.map +1 -0
- package/dist/hooks/index.d.ts +3 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/index.js +2 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/hooks/useUndoableAction.d.ts +62 -0
- package/dist/hooks/useUndoableAction.d.ts.map +1 -0
- package/dist/hooks/useUndoableAction.js +85 -0
- package/dist/hooks/useUndoableAction.js.map +1 -0
- package/dist/index.d.ts +69 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +72 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/cn.d.ts +33 -0
- package/dist/lib/cn.d.ts.map +1 -0
- package/dist/lib/cn.js +59 -0
- package/dist/lib/cn.js.map +1 -0
- package/dist/lib/index.d.ts +3 -0
- package/dist/lib/index.d.ts.map +1 -0
- package/dist/lib/index.js +2 -0
- package/dist/lib/index.js.map +1 -0
- package/dist/lib/tones.d.ts +40 -0
- package/dist/lib/tones.d.ts.map +1 -0
- package/dist/lib/tones.js +91 -0
- package/dist/lib/tones.js.map +1 -0
- package/dist/theme/ThemeProvider.d.ts +15 -0
- package/dist/theme/ThemeProvider.d.ts.map +1 -0
- package/dist/theme/ThemeProvider.js +186 -0
- package/dist/theme/ThemeProvider.js.map +1 -0
- package/dist/theme/context.d.ts +21 -0
- package/dist/theme/context.d.ts.map +1 -0
- package/dist/theme/context.js +7 -0
- package/dist/theme/context.js.map +1 -0
- package/dist/theme/index.d.ts +9 -0
- package/dist/theme/index.d.ts.map +1 -0
- package/dist/theme/index.js +5 -0
- package/dist/theme/index.js.map +1 -0
- package/dist/theme/subscribe.d.ts +12 -0
- package/dist/theme/subscribe.d.ts.map +1 -0
- package/dist/theme/subscribe.js +14 -0
- package/dist/theme/subscribe.js.map +1 -0
- package/dist/theme/types.d.ts +32 -0
- package/dist/theme/types.d.ts.map +1 -0
- package/dist/theme/types.js +23 -0
- package/dist/theme/types.js.map +1 -0
- package/dist/theme/useTheme.d.ts +14 -0
- package/dist/theme/useTheme.d.ts.map +1 -0
- package/dist/theme/useTheme.js +27 -0
- package/dist/theme/useTheme.js.map +1 -0
- package/package.json +48 -0
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Check, Copy, Eye, EyeOff } from 'lucide-react';
|
|
3
|
+
import { useEffect, useRef, useState } from 'react';
|
|
4
|
+
import { cn } from '../../lib/cn.js';
|
|
5
|
+
import { IconButton } from '../icon-button/index.js';
|
|
6
|
+
import { inputGroupContainerClasses } from '../input-group/index.js';
|
|
7
|
+
/** How long the "copied" confirmation shows (design: 1.4s). */
|
|
8
|
+
export const SECRET_COPIED_MS = 1400;
|
|
9
|
+
/**
|
|
10
|
+
* SecretInput — masked mono value (API keys, tokens) with an eye reveal
|
|
11
|
+
* toggle and a copy button that flips to a check + announces `copiedLabel`
|
|
12
|
+
* through a polite `aria-live` region for 1.4s
|
|
13
|
+
* (research/design-system.md §3 Tier 2).
|
|
14
|
+
*/
|
|
15
|
+
export function SecretInput({ className, inputClassName, revealLabel, hideLabel, copyLabel, copiedLabel, error = false, onCopy, ref, ...inputProps }) {
|
|
16
|
+
const innerRef = useRef(null);
|
|
17
|
+
const timerRef = useRef(null);
|
|
18
|
+
const [revealed, setRevealed] = useState(false);
|
|
19
|
+
const [copied, setCopied] = useState(false);
|
|
20
|
+
const setRef = (node) => {
|
|
21
|
+
innerRef.current = node;
|
|
22
|
+
if (typeof ref === 'function')
|
|
23
|
+
ref(node);
|
|
24
|
+
else if (ref)
|
|
25
|
+
ref.current = node;
|
|
26
|
+
};
|
|
27
|
+
useEffect(() => () => {
|
|
28
|
+
if (timerRef.current !== null)
|
|
29
|
+
window.clearTimeout(timerRef.current);
|
|
30
|
+
}, []);
|
|
31
|
+
const handleCopy = async () => {
|
|
32
|
+
const text = innerRef.current?.value ?? '';
|
|
33
|
+
try {
|
|
34
|
+
await navigator.clipboard?.writeText(text);
|
|
35
|
+
}
|
|
36
|
+
catch {
|
|
37
|
+
// Clipboard unavailable (permissions/insecure context): still show the
|
|
38
|
+
// feedback so the interaction is not a dead click; consumers can hook
|
|
39
|
+
// `onCopy` for a fallback.
|
|
40
|
+
}
|
|
41
|
+
onCopy?.();
|
|
42
|
+
setCopied(true);
|
|
43
|
+
if (timerRef.current !== null)
|
|
44
|
+
window.clearTimeout(timerRef.current);
|
|
45
|
+
timerRef.current = window.setTimeout(() => setCopied(false), SECRET_COPIED_MS);
|
|
46
|
+
};
|
|
47
|
+
return (_jsxs("div", { "data-invalid": error ? '' : undefined, className: cn(inputGroupContainerClasses, 'pe-1.5', className), children: [_jsx("input", { ref: setRef, type: revealed ? 'text' : 'password', ...(error ? { 'aria-invalid': true } : {}), className: cn('h-full w-full min-w-0 flex-1 bg-transparent font-mono text-[13px] tabular-nums text-fg placeholder:text-fg-subtle focus:outline-none', inputClassName), ...inputProps }), _jsx(IconButton, { label: revealed ? hideLabel : revealLabel, size: "sm", "aria-pressed": revealed, onClick: () => setRevealed((current) => !current), children: revealed ? _jsx(EyeOff, { "aria-hidden": "true", className: "size-3.5" }) : _jsx(Eye, { "aria-hidden": "true", className: "size-3.5" }) }), _jsx(IconButton, { label: copyLabel, size: "sm", "data-copied": copied ? '' : undefined, onClick: () => void handleCopy(), children: copied ? _jsx(Check, { "aria-hidden": "true", className: "size-3.5 text-pos" }) : _jsx(Copy, { "aria-hidden": "true", className: "size-3.5" }) }), _jsx("span", { role: "status", "aria-live": "polite", className: "sr-only", children: copied ? copiedLabel : '' })] }));
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=SecretInput.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SecretInput.js","sourceRoot":"","sources":["../../../src/components/secret-input/SecretInput.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAGpD,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAErE,+DAA+D;AAC/D,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC;AAoBrC;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,EAC1B,SAAS,EACT,cAAc,EACd,WAAW,EACX,SAAS,EACT,SAAS,EACT,WAAW,EACX,KAAK,GAAG,KAAK,EACb,MAAM,EACN,GAAG,EACH,GAAG,UAAU,EACI;IACjB,MAAM,QAAQ,GAAG,MAAM,CAA0B,IAAI,CAAC,CAAC;IACvD,MAAM,QAAQ,GAAG,MAAM,CAAgB,IAAI,CAAC,CAAC;IAC7C,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE5C,MAAM,MAAM,GAAG,CAAC,IAA6B,EAAE,EAAE;QAC/C,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;QACxB,IAAI,OAAO,GAAG,KAAK,UAAU;YAAE,GAAG,CAAC,IAAI,CAAC,CAAC;aACpC,IAAI,GAAG;YAAE,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC;IACnC,CAAC,CAAC;IAEF,SAAS,CACP,GAAG,EAAE,CAAC,GAAG,EAAE;QACT,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI;YAAE,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACvE,CAAC,EACD,EAAE,CACH,CAAC;IAEF,MAAM,UAAU,GAAG,KAAK,IAAI,EAAE;QAC5B,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC;QAC3C,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;QAC7C,CAAC;QAAC,MAAM,CAAC;YACP,uEAAuE;YACvE,sEAAsE;YACtE,2BAA2B;QAC7B,CAAC;QACD,MAAM,EAAE,EAAE,CAAC;QACX,SAAS,CAAC,IAAI,CAAC,CAAC;QAChB,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI;YAAE,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrE,QAAQ,CAAC,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,CAAC;IACjF,CAAC,CAAC;IAEF,OAAO,CACL,+BAAmB,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,EAAE,CAAC,0BAA0B,EAAE,QAAQ,EAAE,SAAS,CAAC,aACvG,gBACE,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,KAChC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EACpD,SAAS,EAAE,EAAE,CACX,sIAAsI,EACtI,cAAc,CACf,KACG,UAAU,GACd,EACF,KAAC,UAAU,IACT,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,EACzC,IAAI,EAAC,IAAI,kBACK,QAAQ,EACtB,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,YAEhD,QAAQ,CAAC,CAAC,CAAC,KAAC,MAAM,mBAAa,MAAM,EAAC,SAAS,EAAC,UAAU,GAAG,CAAC,CAAC,CAAC,KAAC,GAAG,mBAAa,MAAM,EAAC,SAAS,EAAC,UAAU,GAAG,GACrG,EACb,KAAC,UAAU,IAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAC,IAAI,iBAAc,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,UAAU,EAAE,YAC3G,MAAM,CAAC,CAAC,CAAC,KAAC,KAAK,mBAAa,MAAM,EAAC,SAAS,EAAC,mBAAmB,GAAG,CAAC,CAAC,CAAC,KAAC,IAAI,mBAAa,MAAM,EAAC,SAAS,EAAC,UAAU,GAAG,GAC5G,EACb,eAAM,IAAI,EAAC,QAAQ,eAAW,QAAQ,EAAC,SAAS,EAAC,SAAS,YACvD,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,GACrB,IACH,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/secret-input/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACjE,YAAY,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/secret-input/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type * as React from 'react';
|
|
2
|
+
import type { Tone } from '../../lib/tones.js';
|
|
3
|
+
export interface SegmentedControlOption {
|
|
4
|
+
value: string;
|
|
5
|
+
/** Segment text. Omit for icon-only segments (then set `ariaLabel`). */
|
|
6
|
+
label?: React.ReactNode | undefined;
|
|
7
|
+
/** Required accessible name when `label` is omitted (icon-only). */
|
|
8
|
+
ariaLabel?: string | undefined;
|
|
9
|
+
/** Leading Lucide icon (decorative). */
|
|
10
|
+
icon?: React.ReactNode | undefined;
|
|
11
|
+
/** Mono count pill (surface-3; accent fill on the active segment). */
|
|
12
|
+
count?: number | undefined;
|
|
13
|
+
/** Leading status dot in the given tone. */
|
|
14
|
+
dot?: Tone | undefined;
|
|
15
|
+
disabled?: boolean | undefined;
|
|
16
|
+
}
|
|
17
|
+
export interface SegmentedControlProps extends Omit<React.ComponentPropsWithRef<'div'>, 'style' | 'defaultValue' | 'onChange'> {
|
|
18
|
+
options: readonly SegmentedControlOption[];
|
|
19
|
+
/** Controlled selected value. */
|
|
20
|
+
value?: string | undefined;
|
|
21
|
+
/** Uncontrolled initial value (defaults to the first enabled option). */
|
|
22
|
+
defaultValue?: string | undefined;
|
|
23
|
+
onValueChange?: ((value: string) => void) | undefined;
|
|
24
|
+
/** Disables the whole tray. */
|
|
25
|
+
disabled?: boolean | undefined;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* SegmentedControl — 3px-padded `--surface-2` tray; active segment =
|
|
29
|
+
* `--surface` bg + card shadow (research/design-system.md §3 Tier 2).
|
|
30
|
+
* Variants come from the option shape: text, icon-only, with count pill,
|
|
31
|
+
* with status dot. Radiogroup semantics with a single tab stop; arrow keys
|
|
32
|
+
* move AND select (RTL-mirrored); Home/End jump.
|
|
33
|
+
*/
|
|
34
|
+
export declare function SegmentedControl({ options, value, defaultValue, onValueChange, disabled, className, ...props }: SegmentedControlProps): React.JSX.Element;
|
|
35
|
+
//# sourceMappingURL=SegmentedControl.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SegmentedControl.d.ts","sourceRoot":"","sources":["../../../src/components/segmented-control/SegmentedControl.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAGpC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE/C,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,wEAAwE;IACxE,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;IACpC,oEAAoE;IACpE,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,wCAAwC;IACxC,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;IACnC,sEAAsE;IACtE,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,4CAA4C;IAC5C,GAAG,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAChC;AAWD,MAAM,WAAW,qBACf,SAAQ,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,cAAc,GAAG,UAAU,CAAC;IACvF,OAAO,EAAE,SAAS,sBAAsB,EAAE,CAAC;IAC3C,iCAAiC;IACjC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,yEAAyE;IACzE,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,aAAa,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IACtD,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAChC;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,EAC/B,OAAO,EACP,KAAK,EACL,YAAY,EACZ,aAAa,EACb,QAAgB,EAChB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,qBAAqB,qBAgGvB"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useDirection } from '@radix-ui/react-direction';
|
|
3
|
+
import { useRef, useState } from 'react';
|
|
4
|
+
import { cn } from '../../lib/cn.js';
|
|
5
|
+
const dotToneClasses = {
|
|
6
|
+
neutral: 'bg-fg-subtle',
|
|
7
|
+
accent: 'bg-accent',
|
|
8
|
+
pos: 'bg-pos',
|
|
9
|
+
warn: 'bg-warn',
|
|
10
|
+
danger: 'bg-danger',
|
|
11
|
+
info: 'bg-info',
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* SegmentedControl — 3px-padded `--surface-2` tray; active segment =
|
|
15
|
+
* `--surface` bg + card shadow (research/design-system.md §3 Tier 2).
|
|
16
|
+
* Variants come from the option shape: text, icon-only, with count pill,
|
|
17
|
+
* with status dot. Radiogroup semantics with a single tab stop; arrow keys
|
|
18
|
+
* move AND select (RTL-mirrored); Home/End jump.
|
|
19
|
+
*/
|
|
20
|
+
export function SegmentedControl({ options, value, defaultValue, onValueChange, disabled = false, className, ...props }) {
|
|
21
|
+
const direction = useDirection();
|
|
22
|
+
const trayRef = useRef(null);
|
|
23
|
+
const firstEnabled = options.find((option) => !option.disabled)?.value;
|
|
24
|
+
const [internal, setInternal] = useState(defaultValue ?? firstEnabled);
|
|
25
|
+
const current = value !== undefined ? value : internal;
|
|
26
|
+
const select = (nextValue, focus = false) => {
|
|
27
|
+
if (value === undefined)
|
|
28
|
+
setInternal(nextValue);
|
|
29
|
+
onValueChange?.(nextValue);
|
|
30
|
+
if (focus) {
|
|
31
|
+
trayRef.current
|
|
32
|
+
?.querySelector(`[data-value="${CSS.escape(nextValue)}"]`)
|
|
33
|
+
?.focus();
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
const handleKeyDown = (event) => {
|
|
37
|
+
const enabled = options.filter((option) => !option.disabled);
|
|
38
|
+
if (enabled.length === 0)
|
|
39
|
+
return;
|
|
40
|
+
const forwardKeys = direction === 'rtl' ? ['ArrowLeft', 'ArrowDown'] : ['ArrowRight', 'ArrowDown'];
|
|
41
|
+
const backwardKeys = direction === 'rtl' ? ['ArrowRight', 'ArrowUp'] : ['ArrowLeft', 'ArrowUp'];
|
|
42
|
+
let next;
|
|
43
|
+
if (event.key === 'Home') {
|
|
44
|
+
next = enabled[0];
|
|
45
|
+
}
|
|
46
|
+
else if (event.key === 'End') {
|
|
47
|
+
next = enabled[enabled.length - 1];
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
const delta = forwardKeys.includes(event.key) ? 1 : backwardKeys.includes(event.key) ? -1 : 0;
|
|
51
|
+
if (delta === 0)
|
|
52
|
+
return;
|
|
53
|
+
const fromIndex = enabled.findIndex((option) => option.value === current);
|
|
54
|
+
next = enabled[(fromIndex + delta + enabled.length) % enabled.length];
|
|
55
|
+
}
|
|
56
|
+
if (!next)
|
|
57
|
+
return;
|
|
58
|
+
event.preventDefault();
|
|
59
|
+
select(next.value, true);
|
|
60
|
+
};
|
|
61
|
+
return (_jsx("div", { ref: trayRef, role: "radiogroup", onKeyDown: handleKeyDown, className: cn('inline-flex items-center gap-0.5 rounded-md bg-surface-2 p-[3px]', className), ...props, children: options.map((option) => {
|
|
62
|
+
const selected = option.value === current;
|
|
63
|
+
const tabbable = selected || (current === undefined && option.value === firstEnabled);
|
|
64
|
+
return (_jsxs("button", { type: "button", role: "radio", "aria-checked": selected, ...(option.ariaLabel === undefined ? {} : { 'aria-label': option.ariaLabel }), tabIndex: tabbable ? 0 : -1, "data-value": option.value, "data-selected": selected ? '' : undefined, disabled: disabled || option.disabled, onClick: () => select(option.value), className: cn('group inline-flex h-7 select-none items-center justify-center gap-1.5 whitespace-nowrap rounded-[8px] px-3 ', 'text-[12.5px] font-semibold text-fg-muted transition-colors duration-150 hover:text-fg ', 'focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-accent ', 'disabled:pointer-events-none disabled:opacity-40 ', 'data-[selected]:bg-surface data-[selected]:text-fg data-[selected]:shadow-card ', '[&_svg]:size-3.5 [&_svg]:shrink-0', option.label === undefined || option.label === null ? 'px-2' : ''), children: [option.dot === undefined ? null : (_jsx("span", { "aria-hidden": "true", className: cn('size-1.5 shrink-0 rounded-full', dotToneClasses[option.dot]) })), option.icon === undefined || option.icon === null ? null : (_jsx("span", { "aria-hidden": "true", className: "flex items-center", children: option.icon })), option.label, option.count === undefined ? null : (_jsx("span", { className: cn('inline-flex min-w-[18px] items-center justify-center rounded-full bg-surface-3 px-1.5 py-px ', 'font-mono text-[10px] font-bold tabular-nums text-fg-muted ', 'group-data-[selected]:bg-accent group-data-[selected]:text-accent-fg'), children: option.count }))] }, option.value));
|
|
65
|
+
}) }));
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=SegmentedControl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SegmentedControl.js","sourceRoot":"","sources":["../../../src/components/segmented-control/SegmentedControl.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/segmented-control/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,YAAY,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/segmented-control/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type * as React from 'react';
|
|
2
|
+
export interface SelectProps extends Omit<React.ComponentPropsWithRef<'select'>, 'style' | 'size'> {
|
|
3
|
+
/** Danger border + focus ring + `aria-invalid`. */
|
|
4
|
+
error?: boolean | undefined;
|
|
5
|
+
/** JetBrains Mono value (enum/technical values). */
|
|
6
|
+
mono?: boolean | undefined;
|
|
7
|
+
/** Extra classes for the positioning wrapper (className styles the `<select>`). */
|
|
8
|
+
wrapperClassName?: string | undefined;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Native `<select>` in the Input chrome with a chevron-down affordance
|
|
12
|
+
* (research/design-system.md §3 Tier 2). Kept native for plain forms —
|
|
13
|
+
* searchable/rich cases (avatar rows, empty state) are `Combobox`.
|
|
14
|
+
* Children are regular `<option>`/`<optgroup>` elements.
|
|
15
|
+
*/
|
|
16
|
+
export declare function Select({ className, wrapperClassName, error, mono, children, ...props }: SelectProps): React.JSX.Element;
|
|
17
|
+
//# sourceMappingURL=Select.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../src/components/select/Select.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAKpC,MAAM,WAAW,WAAY,SAAQ,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAChG,mDAAmD;IACnD,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,oDAAoD;IACpD,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3B,mFAAmF;IACnF,gBAAgB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACvC;AAED;;;;;GAKG;AACH,wBAAgB,MAAM,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE,KAAa,EAAE,IAAY,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,WAAW,qBAoBnH"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { ChevronDown } from 'lucide-react';
|
|
3
|
+
import { cn } from '../../lib/cn.js';
|
|
4
|
+
import { inputVariants } from '../input/index.js';
|
|
5
|
+
/**
|
|
6
|
+
* Native `<select>` in the Input chrome with a chevron-down affordance
|
|
7
|
+
* (research/design-system.md §3 Tier 2). Kept native for plain forms —
|
|
8
|
+
* searchable/rich cases (avatar rows, empty state) are `Combobox`.
|
|
9
|
+
* Children are regular `<option>`/`<optgroup>` elements.
|
|
10
|
+
*/
|
|
11
|
+
export function Select({ className, wrapperClassName, error = false, mono = false, children, ...props }) {
|
|
12
|
+
return (_jsxs("span", { className: cn('relative inline-block w-full', wrapperClassName), children: [_jsx("select", { ...(error ? { 'aria-invalid': true, 'data-invalid': '' } : {}), className: cn(inputVariants({ mono }), 'cursor-pointer appearance-none pe-8', className), ...props, children: children }), _jsx(ChevronDown, { "aria-hidden": "true", className: "pointer-events-none absolute end-2.5 top-1/2 size-4 -translate-y-1/2 text-fg-subtle" })] }));
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=Select.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Select.js","sourceRoot":"","sources":["../../../src/components/select/Select.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAG3C,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAWlD;;;;;GAKG;AACH,MAAM,UAAU,MAAM,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE,KAAK,GAAG,KAAK,EAAE,IAAI,GAAG,KAAK,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAe;IAClH,OAAO,CACL,gBAAM,SAAS,EAAE,EAAE,CAAC,8BAA8B,EAAE,gBAAgB,CAAC,aACnE,oBACM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAa,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EACxE,SAAS,EAAE,EAAE,CACX,aAAa,CAAC,EAAE,IAAI,EAAE,CAAC,EACvB,qCAAqC,EACrC,SAAS,CACV,KACG,KAAK,YAER,QAAQ,GACF,EACT,KAAC,WAAW,mBACE,MAAM,EAClB,SAAS,EAAC,qFAAqF,GAC/F,IACG,CACR,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/select/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/select/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { VariantProps } from 'class-variance-authority';
|
|
2
|
+
import type * as React from 'react';
|
|
3
|
+
/**
|
|
4
|
+
* Shimmer placeholder using the tokens `.nb-skel` sweep (surface-3 ↔
|
|
5
|
+
* surface-2, 1.4s; static under reduced motion). `aria-hidden` — the loading
|
|
6
|
+
* *container* carries `aria-busy` (workplan/03-component-library.md §5.1).
|
|
7
|
+
*/
|
|
8
|
+
export declare const skeletonVariants: (props?: ({
|
|
9
|
+
rounded?: "sm" | "md" | "lg" | "full" | null | undefined;
|
|
10
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
11
|
+
export interface SkeletonProps extends Omit<React.ComponentPropsWithRef<'div'>, 'style' | 'children'>, VariantProps<typeof skeletonVariants> {
|
|
12
|
+
/** Width — number = px, string = any CSS length. Omit to size via className. */
|
|
13
|
+
width?: number | string;
|
|
14
|
+
/** Height — number = px, string = any CSS length. Omit to size via className. */
|
|
15
|
+
height?: number | string;
|
|
16
|
+
}
|
|
17
|
+
export declare function Skeleton({ className, rounded, width, height, ...props }: SkeletonProps): React.JSX.Element;
|
|
18
|
+
//# sourceMappingURL=Skeleton.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Skeleton.d.ts","sourceRoot":"","sources":["../../../src/components/skeleton/Skeleton.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAIpC;;;;GAIG;AACH,eAAO,MAAM,gBAAgB;;8EAU3B,CAAC;AAEH,MAAM,WAAW,aACf,SAAQ,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC,EACpE,YAAY,CAAC,OAAO,gBAAgB,CAAC;IACvC,gFAAgF;IAChF,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,iFAAiF;IACjF,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC1B;AAOD,wBAAgB,QAAQ,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,EAAE,aAAa,qBAetF"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { cva } from 'class-variance-authority';
|
|
3
|
+
import { cn } from '../../lib/cn.js';
|
|
4
|
+
/**
|
|
5
|
+
* Shimmer placeholder using the tokens `.nb-skel` sweep (surface-3 ↔
|
|
6
|
+
* surface-2, 1.4s; static under reduced motion). `aria-hidden` — the loading
|
|
7
|
+
* *container* carries `aria-busy` (workplan/03-component-library.md §5.1).
|
|
8
|
+
*/
|
|
9
|
+
export const skeletonVariants = cva('nb-skel block', {
|
|
10
|
+
variants: {
|
|
11
|
+
rounded: {
|
|
12
|
+
sm: 'rounded-sm',
|
|
13
|
+
md: 'rounded-md',
|
|
14
|
+
lg: 'rounded-lg',
|
|
15
|
+
full: 'rounded-full',
|
|
16
|
+
},
|
|
17
|
+
},
|
|
18
|
+
defaultVariants: { rounded: 'md' },
|
|
19
|
+
});
|
|
20
|
+
function toCssSize(value) {
|
|
21
|
+
if (value === undefined)
|
|
22
|
+
return undefined;
|
|
23
|
+
return typeof value === 'number' ? `${value}px` : value;
|
|
24
|
+
}
|
|
25
|
+
export function Skeleton({ className, rounded, width, height, ...props }) {
|
|
26
|
+
return (_jsx("div", { "aria-hidden": "true", className: cn(skeletonVariants({ rounded }), width !== undefined && 'w-[var(--adm-w)]', height !== undefined && 'h-[var(--adm-h)]', className),
|
|
27
|
+
// Sanctioned escape hatch: CSS custom properties only (02-design-system.md §8).
|
|
28
|
+
style: { '--adm-w': toCssSize(width), '--adm-h': toCssSize(height) }, ...props }));
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=Skeleton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Skeleton.js","sourceRoot":"","sources":["../../../src/components/skeleton/Skeleton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAC;AAI/C,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAErC;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAC,eAAe,EAAE;IACnD,QAAQ,EAAE;QACR,OAAO,EAAE;YACP,EAAE,EAAE,YAAY;YAChB,EAAE,EAAE,YAAY;YAChB,EAAE,EAAE,YAAY;YAChB,IAAI,EAAE,cAAc;SACrB;KACF;IACD,eAAe,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;CACnC,CAAC,CAAC;AAWH,SAAS,SAAS,CAAC,KAAkC;IACnD,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC1C,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;AAC1D,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,EAAiB;IACrF,OAAO,CACL,6BACc,MAAM,EAClB,SAAS,EAAE,EAAE,CACX,gBAAgB,CAAC,EAAE,OAAO,EAAE,CAAC,EAC7B,KAAK,KAAK,SAAS,IAAI,kBAAkB,EACzC,MAAM,KAAK,SAAS,IAAI,kBAAkB,EAC1C,SAAS,CACV;QACD,gFAAgF;QAChF,KAAK,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,KAChE,KAAK,GACT,CACH,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/skeleton/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAC3D,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/skeleton/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import * as SliderPrimitive from '@radix-ui/react-slider';
|
|
2
|
+
import type * as React from 'react';
|
|
3
|
+
export interface SliderProps extends Omit<React.ComponentPropsWithRef<typeof SliderPrimitive.Root>, 'style' | 'asChild'> {
|
|
4
|
+
/**
|
|
5
|
+
* Accessible name per thumb (`aria-label`), in value order. Range sliders
|
|
6
|
+
* (two-element `value`) need two labels.
|
|
7
|
+
*/
|
|
8
|
+
thumbLabels?: readonly string[] | undefined;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Slider — Radix slider with an accent range on a `--surface-3` track
|
|
12
|
+
* (research/design-system.md §3 Tier 2). Arrow keys step (RTL-mirrored),
|
|
13
|
+
* PageUp/Down large-step, Home/End clamp. Pass a two-element `value`/
|
|
14
|
+
* `defaultValue` for a range slider.
|
|
15
|
+
*/
|
|
16
|
+
export declare function Slider({ className, thumbLabels, value, defaultValue, ...props }: SliderProps): React.JSX.Element;
|
|
17
|
+
//# sourceMappingURL=Slider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Slider.d.ts","sourceRoot":"","sources":["../../../src/components/slider/Slider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAIpC,MAAM,WAAW,WACf,SAAQ,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3F;;;OAGG;IACH,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;CAC7C;AAED;;;;;GAKG;AACH,wBAAgB,MAAM,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,KAAK,EAAE,EAAE,WAAW,qBA4B5F"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as SliderPrimitive from '@radix-ui/react-slider';
|
|
3
|
+
import { cn } from '../../lib/cn.js';
|
|
4
|
+
/**
|
|
5
|
+
* Slider — Radix slider with an accent range on a `--surface-3` track
|
|
6
|
+
* (research/design-system.md §3 Tier 2). Arrow keys step (RTL-mirrored),
|
|
7
|
+
* PageUp/Down large-step, Home/End clamp. Pass a two-element `value`/
|
|
8
|
+
* `defaultValue` for a range slider.
|
|
9
|
+
*/
|
|
10
|
+
export function Slider({ className, thumbLabels, value, defaultValue, ...props }) {
|
|
11
|
+
const thumbCount = (value ?? defaultValue ?? [0]).length;
|
|
12
|
+
return (_jsxs(SliderPrimitive.Root, { ...(value === undefined ? {} : { value }), ...(defaultValue === undefined ? {} : { defaultValue }), className: cn('relative flex h-5 w-full touch-none select-none items-center data-[disabled]:pointer-events-none data-[disabled]:opacity-40', className), ...props, children: [_jsx(SliderPrimitive.Track, { className: "relative h-1.5 grow overflow-hidden rounded-full bg-surface-3", children: _jsx(SliderPrimitive.Range, { className: "absolute h-full bg-accent" }) }), Array.from({ length: thumbCount }, (_, index) => (_jsx(SliderPrimitive.Thumb, { ...(thumbLabels?.[index] === undefined ? {} : { 'aria-label': thumbLabels[index] }), className: cn('block size-4 rounded-full border-2 border-accent bg-surface shadow-card ', 'transition-shadow duration-150 ', 'focus-visible:outline-none focus-visible:ring-[3px] focus-visible:ring-accent-soft') }, index)))] }));
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=Slider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Slider.js","sourceRoot":"","sources":["../../../src/components/slider/Slider.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAG1D,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAWrC;;;;;GAKG;AACH,MAAM,UAAU,MAAM,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,KAAK,EAAe;IAC3F,MAAM,UAAU,GAAG,CAAC,KAAK,IAAI,YAAY,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACzD,OAAO,CACL,MAAC,eAAe,CAAC,IAAI,OACf,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,KACtC,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EACxD,SAAS,EAAE,EAAE,CACX,6HAA6H,EAC7H,SAAS,CACV,KACG,KAAK,aAET,KAAC,eAAe,CAAC,KAAK,IAAC,SAAS,EAAC,+DAA+D,YAC9F,KAAC,eAAe,CAAC,KAAK,IAAC,SAAS,EAAC,2BAA2B,GAAG,GACzC,EACvB,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAChD,KAAC,eAAe,CAAC,KAAK,OAEhB,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,EACpF,SAAS,EAAE,EAAE,CACX,0EAA0E,EAC1E,iCAAiC,EACjC,oFAAoF,CACrF,IANI,KAAK,CAOV,CACH,CAAC,IACmB,CACxB,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/slider/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/slider/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { ComponentPropsWithRef, ReactNode } from 'react';
|
|
2
|
+
import type { ToastActionSpec } from '../toast/Toast.js';
|
|
3
|
+
export interface SnackbarProps extends ComponentPropsWithRef<'div'> {
|
|
4
|
+
/** Message text. */
|
|
5
|
+
children: ReactNode;
|
|
6
|
+
/** Optional action (Undo). */
|
|
7
|
+
action?: ToastActionSpec | undefined;
|
|
8
|
+
/**
|
|
9
|
+
* Pin to the bottom / inline-center of the viewport (default). Set false
|
|
10
|
+
* to position it yourself.
|
|
11
|
+
*/
|
|
12
|
+
floating?: boolean | undefined;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Snackbar — inverted dark pill (`fg` background / `bg` text) with an inline
|
|
16
|
+
* Undo action (research/design-system.md §3 Tier 3). For queued, tonal
|
|
17
|
+
* notifications use `Toast`/`useToastQueue`; Snackbar is the single
|
|
18
|
+
* lightweight confirmation.
|
|
19
|
+
*/
|
|
20
|
+
export declare function Snackbar({ children, action, floating, className, ...props }: SnackbarProps): import("react").JSX.Element;
|
|
21
|
+
//# sourceMappingURL=Snackbar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Snackbar.d.ts","sourceRoot":"","sources":["../../../src/components/snackbar/Snackbar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAG9D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEzD,MAAM,WAAW,aAAc,SAAQ,qBAAqB,CAAC,KAAK,CAAC;IACjE,oBAAoB;IACpB,QAAQ,EAAE,SAAS,CAAC;IACpB,8BAA8B;IAC9B,MAAM,CAAC,EAAE,eAAe,GAAG,SAAS,CAAC;IACrC;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAChC;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAe,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,aAAa,+BA2BjG"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { cn } from '../../lib/cn.js';
|
|
3
|
+
/**
|
|
4
|
+
* Snackbar — inverted dark pill (`fg` background / `bg` text) with an inline
|
|
5
|
+
* Undo action (research/design-system.md §3 Tier 3). For queued, tonal
|
|
6
|
+
* notifications use `Toast`/`useToastQueue`; Snackbar is the single
|
|
7
|
+
* lightweight confirmation.
|
|
8
|
+
*/
|
|
9
|
+
export function Snackbar({ children, action, floating = true, className, ...props }) {
|
|
10
|
+
return (_jsxs("div", { role: "status", className: cn('inline-flex w-fit max-w-[calc(100vw-32px)] items-center gap-3 rounded-full bg-fg py-2.5 text-body-sm font-semibold text-bg shadow-menu', action === undefined ? 'px-4' : 'ps-4 pe-2', floating ? 'fixed bottom-6 inset-x-0 z-[90] mx-auto animate-[nb-fade_.24s_cubic-bezier(.2,.7,.3,1)]' : undefined, className), ...props, children: [_jsx("span", { className: "min-w-0 truncate", children: children }), action === undefined ? null : (_jsx("button", { type: "button", onClick: action.onAction, className: cn('shrink-0 rounded-full px-2.5 py-1 text-[12.5px] font-bold text-bg/90 hover:bg-bg/15 hover:text-bg', 'focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-bg'), children: action.label }))] }));
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=Snackbar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Snackbar.js","sourceRoot":"","sources":["../../../src/components/snackbar/Snackbar.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAerC;;;;;GAKG;AACH,MAAM,UAAU,QAAQ,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,GAAG,IAAI,EAAE,SAAS,EAAE,GAAG,KAAK,EAAiB;IAChG,OAAO,CACL,eACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,EAAE,CACX,wIAAwI,EACxI,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,EAC3C,QAAQ,CAAC,CAAC,CAAC,yFAAyF,CAAC,CAAC,CAAC,SAAS,EAChH,SAAS,CACV,KACG,KAAK,aAET,eAAM,SAAS,EAAC,kBAAkB,YAAE,QAAQ,GAAQ,EACnD,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAC7B,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,MAAM,CAAC,QAAQ,EACxB,SAAS,EAAE,EAAE,CACX,mGAAmG,EACnG,iFAAiF,CAClF,YAEA,MAAM,CAAC,KAAK,GACN,CACV,IACG,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/snackbar/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/snackbar/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { VariantProps } from 'class-variance-authority';
|
|
2
|
+
import type * as React from 'react';
|
|
3
|
+
/**
|
|
4
|
+
* Rotating ring: currentColor top segment on a 25%-alpha ring, `nb-spin`
|
|
5
|
+
* keyframe from @adminium/tokens. Sizes 14/18/24px
|
|
6
|
+
* (research/design-system.md §3 Tier 1). Inherits its color, so it adapts to
|
|
7
|
+
* `text-accent-fg` inside primary buttons; set `text-accent` (default) via
|
|
8
|
+
* className on standalone usage.
|
|
9
|
+
*/
|
|
10
|
+
export declare const spinnerVariants: (props?: ({
|
|
11
|
+
size?: "sm" | "md" | "lg" | null | undefined;
|
|
12
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
13
|
+
export interface SpinnerProps extends Omit<React.ComponentPropsWithRef<'span'>, 'style' | 'children' | 'aria-label'>, VariantProps<typeof spinnerVariants> {
|
|
14
|
+
/**
|
|
15
|
+
* Accessible name. When provided the spinner announces as `role="status"`;
|
|
16
|
+
* without it the spinner is decorative (`aria-hidden`) — the parent should
|
|
17
|
+
* carry `aria-busy` (e.g. a loading Button).
|
|
18
|
+
*/
|
|
19
|
+
label?: string;
|
|
20
|
+
}
|
|
21
|
+
export declare function Spinner({ className, size, label, ...props }: SpinnerProps): React.JSX.Element;
|
|
22
|
+
//# sourceMappingURL=Spinner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Spinner.d.ts","sourceRoot":"","sources":["../../../src/components/spinner/Spinner.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAIpC;;;;;;GAMG;AACH,eAAO,MAAM,eAAe;;8EAc3B,CAAC;AAEF,MAAM,WAAW,YACf,SAAQ,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,MAAM,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,YAAY,CAAC,EACpF,YAAY,CAAC,OAAO,eAAe,CAAC;IACtC;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,OAAO,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,EAAE,YAAY,qBAGzE"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { cva } from 'class-variance-authority';
|
|
3
|
+
import { cn } from '../../lib/cn.js';
|
|
4
|
+
/**
|
|
5
|
+
* Rotating ring: currentColor top segment on a 25%-alpha ring, `nb-spin`
|
|
6
|
+
* keyframe from @adminium/tokens. Sizes 14/18/24px
|
|
7
|
+
* (research/design-system.md §3 Tier 1). Inherits its color, so it adapts to
|
|
8
|
+
* `text-accent-fg` inside primary buttons; set `text-accent` (default) via
|
|
9
|
+
* className on standalone usage.
|
|
10
|
+
*/
|
|
11
|
+
export const spinnerVariants = cva(
|
|
12
|
+
// The literal `nb-spin` class keeps the tokens' reduced-motion policy in
|
|
13
|
+
// effect (spinner keeps rotating, slower, instead of freezing).
|
|
14
|
+
'nb-spin inline-block animate-[nb-spin_0.8s_linear_infinite] rounded-full border-2 border-current/25 border-t-current', {
|
|
15
|
+
variants: {
|
|
16
|
+
size: {
|
|
17
|
+
sm: 'size-3.5',
|
|
18
|
+
md: 'size-[18px]',
|
|
19
|
+
lg: 'size-6',
|
|
20
|
+
},
|
|
21
|
+
},
|
|
22
|
+
defaultVariants: { size: 'sm' },
|
|
23
|
+
});
|
|
24
|
+
export function Spinner({ className, size, label, ...props }) {
|
|
25
|
+
const a11y = label !== undefined ? { role: 'status', 'aria-label': label } : { 'aria-hidden': true };
|
|
26
|
+
return _jsx("span", { ...a11y, className: cn(spinnerVariants({ size }), className), ...props });
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=Spinner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Spinner.js","sourceRoot":"","sources":["../../../src/components/spinner/Spinner.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAC;AAI/C,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAErC;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG;AAChC,yEAAyE;AACzE,gEAAgE;AAChE,sHAAsH,EACtH;IACE,QAAQ,EAAE;QACR,IAAI,EAAE;YACJ,EAAE,EAAE,UAAU;YACd,EAAE,EAAE,aAAa;YACjB,EAAE,EAAE,QAAQ;SACb;KACF;IACD,eAAe,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;CAChC,CACF,CAAC;AAaF,MAAM,UAAU,OAAO,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,KAAK,EAAgB;IACxE,MAAM,IAAI,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAY,CAAC,CAAC,CAAE,EAAE,aAAa,EAAE,IAAI,EAAY,CAAC;IAC3H,OAAO,kBAAU,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,CAAC,KAAM,KAAK,GAAI,CAAC;AAC5F,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/spinner/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACxD,YAAY,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/spinner/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type * as React from 'react';
|
|
2
|
+
import type { BadgeProps, Tone } from '../badge/Badge.js';
|
|
3
|
+
export { DEFAULT_STATUS_TONES, registerStatusTones, statusTone } from '../../lib/tones.js';
|
|
4
|
+
export interface StatusPillProps extends Omit<BadgeProps, 'tone' | 'dot' | 'asChild'> {
|
|
5
|
+
/** Status key resolved through the status→tone registry (`statusTone`). */
|
|
6
|
+
status: string;
|
|
7
|
+
/** Explicit tone override — skips the registry lookup. */
|
|
8
|
+
tone?: Tone;
|
|
9
|
+
/** Tone used when the status is not in the registry. Default `neutral`. */
|
|
10
|
+
fallbackTone?: Tone;
|
|
11
|
+
/** Localized label. Defaults to the raw status key (developer fallback). */
|
|
12
|
+
children?: React.ReactNode;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Badge preset with a status dot; tone driven by the semantic status→tone
|
|
16
|
+
* registry (research/design-system.md §3 Tier 1).
|
|
17
|
+
*/
|
|
18
|
+
export declare function StatusPill({ status, tone, fallbackTone, children, ...props }: StatusPillProps): React.JSX.Element;
|
|
19
|
+
//# sourceMappingURL=StatusPill.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StatusPill.d.ts","sourceRoot":"","sources":["../../../src/components/status-pill/StatusPill.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAGpC,OAAO,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAO1D,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAE3F,MAAM,WAAW,eAAgB,SAAQ,IAAI,CAAC,UAAU,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS,CAAC;IACnF,2EAA2E;IAC3E,MAAM,EAAE,MAAM,CAAC;IACf,0DAA0D;IAC1D,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,2EAA2E;IAC3E,YAAY,CAAC,EAAE,IAAI,CAAC;IACpB,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,YAAwB,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,eAAe,qBAMzG"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { Badge } from '../badge/Badge.js';
|
|
3
|
+
import { statusTone } from '../../lib/tones.js';
|
|
4
|
+
// The status→tone registry lives in lib/tones.ts (03-component-library.md
|
|
5
|
+
// §7.6) — ONE registry instance package-wide, so a `registerStatusTones`
|
|
6
|
+
// caller and every consumer resolve through the same map. Re-exported here
|
|
7
|
+
// because this module was the barrel's historical source.
|
|
8
|
+
export { DEFAULT_STATUS_TONES, registerStatusTones, statusTone } from '../../lib/tones.js';
|
|
9
|
+
/**
|
|
10
|
+
* Badge preset with a status dot; tone driven by the semantic status→tone
|
|
11
|
+
* registry (research/design-system.md §3 Tier 1).
|
|
12
|
+
*/
|
|
13
|
+
export function StatusPill({ status, tone, fallbackTone = 'neutral', children, ...props }) {
|
|
14
|
+
return (_jsx(Badge, { tone: tone ?? statusTone(status, fallbackTone), dot: true, "data-status": status, ...props, children: children ?? status }));
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=StatusPill.js.map
|