Shared Types
Kurzer Index der Theme- und Shared Unions aus pomikit-ui.
Design
ts
type ThemeDesign = 'linear' | 'glass' | 'editorial' | 'soft' | 'playful'Siehe DESIGNS und Design Kits.
Theme Axes
ts
type ThemeRadius = 'sharp' | 'soft' | 'round'
type ThemeDensity = 'compact' | 'comfortable' | 'spacious'
type ThemeMotion = 'none' | 'normal' | 'expressive'
type ThemeElevation = 'flat' | 'soft' | 'floating'
type ThemeMode = 'light' | 'dark' | 'system'Theme Objects
ts
type CreateThemeOptions = {
accent?: string
design?: ThemeDesign
radius?: ThemeRadius
density?: ThemeDensity
motion?: ThemeMotion
elevation?: ThemeElevation
mode?: ThemeMode
}
type PomikitTheme = {
vars: Record<string, string>
attrs: { /* data-pomi-* */ }
resolved: { /* accent, design, axes, colorScheme */ }
}Plugin / Root
ts
type PomikitPluginOptions = {
theme?: CreateThemeOptions | PomikitTheme
toastDuration?: number
toastLabel?: string
overlays?: boolean
}
type PomikitRootProps = {
toastDuration?: number
toastLabel?: string
}Component Helpers
Kleine Shared Unions (auch von Escape-Hatch Style Props genutzt):
ts
type PomiSize = 'sm' | 'md' | 'lg'
type PomiTone = 'primary' | 'neutral' | 'danger' | 'success'
type PomiVariant = 'solid' | 'outline' | 'ghost' | 'soft'Bevorzuge Intent Props und Design Kits statt mit diesen im App-Code zu stylen.
