Skip to content
Clone
f0a1552
49 lines 1.6 KB
// Public API of the shared/ui segment.
// Shared has no slices, so the boundary is defined per segment —
// consumers import from '@/shared/ui', never from deeper files.
export { Button, type ButtonProps, type ButtonVariant, type ButtonSize } from './button'
export { TextField, type TextFieldProps } from './text-field'
export { Checkbox, type CheckboxProps } from './checkbox'
export { LabeledDivider, type LabeledDividerProps } from './labeled-divider'
export { parseList } from './form-values'
export { OtpInput, type OtpInputProps } from './otp-input'
export { RevealToggle, type RevealToggleProps } from './reveal-toggle'
export { Alert, type AlertProps, type AlertTone } from './alert'
export { PanelNote, ErrorPanel, CopyChip } from './panels'
export { AppShell, ShellTopBar, type AppShellProps, type ShellTopBarProps } from './app-shell'
export {
FormModal,
type FormField,
type FormModalProps,
type FormValues,
} from './form-modal'
export { SettingsModalShell, type SettingsModalShellProps, type SettingsSection } from './settings-modal'
export {
SectionTitle,
Field,
Toggle,
SaveBar,
CopyButton,
Busy,
SettingRow,
EmptyNote,
InitialAvatar,
Chip,
} from './settings-primitives'
export {
inputCls,
errText,
useSave,
parseDate,
fmtDate,
toDateInput,
fileToBase64,
} from './settings-utils'
export {
Modal,
dialogInputClass as modalInputClass,
dialogTextareaClass as modalTextareaClass,
dialogLabelClass as modalLabelClass,
} from './modal'
export { ThemeContext, useThemeContext, type ThemeContextValue } from './theme-context'
export { ThemeProvider } from './theme-provider'