@praxiis/ui 0.0.2 → 0.0.3
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/dist/index.d.mts +3 -111
- package/dist/index.d.ts +3 -111
- package/dist/index.js +6 -200
- package/dist/index.mjs +6 -192
- package/package.json +1 -1
- package/src/core/index.ts +1 -1
- package/src/core/restyle/index.ts +1 -1
- package/src/core/restyle/restylePresetRegistry.ts +7 -7
- package/src/index.tsx +2 -11
- package/src/providers/ThemeProvider/index.ts +0 -12
- package/src/providers/index.ts +0 -8
- package/src/providers/ThemeProvider/createTheme.ts +0 -304
package/dist/index.d.mts
CHANGED
|
@@ -4758,11 +4758,11 @@ type RestyleThemePair = {
|
|
|
4758
4758
|
dark: typeof restyleDarkTheme;
|
|
4759
4759
|
};
|
|
4760
4760
|
/**
|
|
4761
|
-
*
|
|
4761
|
+
* Create light + dark Restyle themes from ThemeColors overrides.
|
|
4762
4762
|
* The most convenient way to create a custom theme pair — only specify
|
|
4763
4763
|
* what differs from the default semantic colors.
|
|
4764
4764
|
*/
|
|
4765
|
-
declare function
|
|
4765
|
+
declare function createThemePair(lightOverrides: DeepPartial<ThemeColors>, darkOverrides: DeepPartial<ThemeColors>): RestyleThemePair;
|
|
4766
4766
|
/**
|
|
4767
4767
|
* Map of all preset Restyle themes, keyed by preset name.
|
|
4768
4768
|
*/
|
|
@@ -5009,114 +5009,6 @@ declare const lightTheme: Theme;
|
|
|
5009
5009
|
declare const darkTheme: Theme;
|
|
5010
5010
|
declare const defaultTheme: Theme;
|
|
5011
5011
|
|
|
5012
|
-
/**
|
|
5013
|
-
* El Sendero Design System - Theme Factory
|
|
5014
|
-
*
|
|
5015
|
-
* Create custom themes by extending the base theme with overrides.
|
|
5016
|
-
*
|
|
5017
|
-
* @example
|
|
5018
|
-
* const myTheme = createTheme(defaultTheme, {
|
|
5019
|
-
* colors: {
|
|
5020
|
-
* accent: {
|
|
5021
|
-
* primary: '#8B5CF6', // Purple accent
|
|
5022
|
-
* }
|
|
5023
|
-
* }
|
|
5024
|
-
* });
|
|
5025
|
-
*/
|
|
5026
|
-
|
|
5027
|
-
/**
|
|
5028
|
-
* Create a custom theme by extending a base theme with overrides.
|
|
5029
|
-
*
|
|
5030
|
-
* @param baseTheme - The theme to extend (usually defaultTheme)
|
|
5031
|
-
* @param overrides - Partial theme object with your customizations
|
|
5032
|
-
* @returns A complete Theme object with your overrides applied
|
|
5033
|
-
*
|
|
5034
|
-
* @example
|
|
5035
|
-
* // Create a sage-accented theme
|
|
5036
|
-
* const sageTheme = createTheme(defaultTheme, {
|
|
5037
|
-
* name: 'Sage',
|
|
5038
|
-
* colors: {
|
|
5039
|
-
* accent: {
|
|
5040
|
-
* primary: '#6B8F6B',
|
|
5041
|
-
* primaryHover: '#557255',
|
|
5042
|
-
* primaryPressed: '#445944',
|
|
5043
|
-
* }
|
|
5044
|
-
* }
|
|
5045
|
-
* });
|
|
5046
|
-
*
|
|
5047
|
-
* @example
|
|
5048
|
-
* // Create a more rounded theme
|
|
5049
|
-
* const softTheme = createTheme(defaultTheme, {
|
|
5050
|
-
* radii: {
|
|
5051
|
-
* md: 16,
|
|
5052
|
-
* lg: 24,
|
|
5053
|
-
* xl: 32,
|
|
5054
|
-
* }
|
|
5055
|
-
* });
|
|
5056
|
-
*/
|
|
5057
|
-
declare function createTheme(baseTheme: Theme, overrides: ThemeOverrides): Theme;
|
|
5058
|
-
/**
|
|
5059
|
-
* Create both light and dark versions of a custom theme.
|
|
5060
|
-
*
|
|
5061
|
-
* @param overrides - Overrides to apply to both light and dark themes
|
|
5062
|
-
* @param lightOverrides - Additional overrides for light theme only
|
|
5063
|
-
* @param darkOverrides - Additional overrides for dark theme only
|
|
5064
|
-
* @returns Object with light and dark theme variants
|
|
5065
|
-
*
|
|
5066
|
-
* @example
|
|
5067
|
-
* const { light, dark } = createThemePair(
|
|
5068
|
-
* { name: 'MyBrand' },
|
|
5069
|
-
* { colors: { accent: { primary: '#A68B6A' } } }, // Light-specific
|
|
5070
|
-
* { colors: { accent: { primary: '#C4A285' } } } // Dark-specific
|
|
5071
|
-
* );
|
|
5072
|
-
*/
|
|
5073
|
-
declare function createThemePair(overrides?: ThemeOverrides, lightOverrides?: ThemeOverrides, darkOverrides?: ThemeOverrides): {
|
|
5074
|
-
light: Theme;
|
|
5075
|
-
dark: Theme;
|
|
5076
|
-
};
|
|
5077
|
-
/**
|
|
5078
|
-
* Horizon Default - Blue with a calming feel
|
|
5079
|
-
*/
|
|
5080
|
-
declare const horizonTheme: {
|
|
5081
|
-
light: Theme;
|
|
5082
|
-
dark: Theme;
|
|
5083
|
-
};
|
|
5084
|
-
/**
|
|
5085
|
-
* Sage Theme - Green-focused for hope and growth
|
|
5086
|
-
*/
|
|
5087
|
-
declare const sageTheme: {
|
|
5088
|
-
light: Theme;
|
|
5089
|
-
dark: Theme;
|
|
5090
|
-
};
|
|
5091
|
-
/**
|
|
5092
|
-
* Sunset Theme - Warm coral/peach for energy and comfort
|
|
5093
|
-
*/
|
|
5094
|
-
declare const sunsetTheme: {
|
|
5095
|
-
light: Theme;
|
|
5096
|
-
dark: Theme;
|
|
5097
|
-
};
|
|
5098
|
-
/**
|
|
5099
|
-
* Ocean Theme - Teal/cyan accents, calming water vibes
|
|
5100
|
-
*/
|
|
5101
|
-
declare const oceanTheme: {
|
|
5102
|
-
light: Theme;
|
|
5103
|
-
dark: Theme;
|
|
5104
|
-
};
|
|
5105
|
-
/**
|
|
5106
|
-
* Lavender Theme - Soft purple accents, relaxing and spiritual
|
|
5107
|
-
*/
|
|
5108
|
-
declare const lavenderTheme: {
|
|
5109
|
-
light: Theme;
|
|
5110
|
-
dark: Theme;
|
|
5111
|
-
};
|
|
5112
|
-
/**
|
|
5113
|
-
* Rose Theme - Warm pink/rose accents, gentle and nurturing
|
|
5114
|
-
*/
|
|
5115
|
-
declare const roseTheme: {
|
|
5116
|
-
light: Theme;
|
|
5117
|
-
dark: Theme;
|
|
5118
|
-
};
|
|
5119
|
-
|
|
5120
5012
|
/**
|
|
5121
5013
|
* StayEasy Design System - Reduced Motion Hook
|
|
5122
5014
|
*
|
|
@@ -52553,4 +52445,4 @@ interface ScheduleItemProps extends Omit<BaseScheduleItemProps, "style"> {
|
|
|
52553
52445
|
declare function ScheduleItemComponent({ task, onPress, size, testID, ...rest }: ScheduleItemProps): react_jsx_runtime.JSX.Element;
|
|
52554
52446
|
declare const ScheduleItem: React__default.MemoExoticComponent<typeof ScheduleItemComponent>;
|
|
52555
52447
|
|
|
52556
|
-
export { AnimatedBox, type AppThemeColors, Avatar, type AvatarProps, type AvatarSize, type AvatarStatus, Badge, type BadgeProps, type BadgeSize, type BadgeVariant, type BaseColors, type BaseThemeColor, Box, type BoxRestyleProps, Button, type ButtonProps, type ButtonRef, type ButtonSize, type ButtonVariant, CalendarStrip, type CalendarStripProps, type CalendarStripSize, Card, type CardProps, type CardVariant, Checkbox, type CheckboxProps, type CheckboxRef, type CheckboxSize, Chip, type ChipProps, type ChipSize, type ChipVariant, DayCard, type DayCardProps, type DeepPartial, type DesignSystemLabels, type DesignSystemLabelsOverride, type DesignSystemLanguage, DesignSystemProvider, type DesignSystemProviderProps, Divider, type DividerColor, type DividerOrientation, type DividerProps, type DividerSpacing, type DividerThickness, type Duration, type DurationKey, type Easing, type EasingKey, type Elevation, type ElevationKey, EmptyState, type EmptyStateProps, type EmptyStateVariant, type EntranceAnimationConfig, type EntranceAnimationResult, FlatList, type FlatListProps, type FlatListRef, type FlatListRestyleProps, type FontFamily, type FontSize, type FontWeight, HStack, type HStackProps, Header, type HeaderProps, HeaderRightItems, type HeaderRightItemsProps, type HeaderSize, type HeaderVariant, Icon, IconButton, type IconButtonProps, type IconButtonSize, type IconButtonVariant, type IconName, type IconProps, type IconSize$1 as IconSize, type IconSizeKey, MIN_TOUCH_TARGET, type MaterialIconName, Modal, type ModalAction, type ModalPosition, type ModalProps, type Opacity, Pressable, type PressableProps, type PressableRestyleProps, ProgressBar, type ProgressBarProps, type ProgressBarSize, type PulseAnimationConfig, type Radii, type RadiiKey, RadioButton, type RadioButtonProps, type RadioButtonRef, type RadioButtonSize, type RestyleColor, type RestyleTheme, type RestyleThemePair, ScheduleItem, type ScheduleItemData, type ScheduleItemProps, type ScheduleItemSize, ScrollView, type ScrollViewProps, type ScrollViewRef, type ScrollViewRestyleProps, type SegmentOption, SegmentedControl, type SegmentedControlProps, type SegmentedControlSize, type SegmentedControlVariant, SelectSheet, type SelectSheetIndicatorPosition, type SelectSheetMode, type SelectSheetOption, type SelectSheetPosition, type SelectSheetProps, type SemanticColors, type SemanticColorsInput, type SemanticSpacing, type ShadowStyle, type ShowToastOptions, Skeleton, type SkeletonAnimation, type SkeletonProps, type SkeletonSize, type SkeletonVariant, type Spacing, type SpacingKey, Spinner, type SpinnerProps, type SpinnerSize, type SpringConfig, Switch, type SwitchProps, type SwitchRef, type SwitchSize, Text, TextInput, type TextInputProps, type TextInputRef, type TextInputSize, type TextInputVariant, type Theme, type ThemeColors, type ThemeElevation, type ThemeMode, type ThemeMotion, type ThemeOverrides, type ThemeTypography, Toast, type ToastAction, type ToastConfig, type ToastContainerProps, ToastContext, type ToastContextValue, type ToastPosition, type ToastProps, ToastProvider, type ToastVariant, type TypographyPresets, type TypographyStyle, type TypographyVariant, VStack, type VStackProps, type ZIndex, a11yRoles, a11yState, androidOnly, baseColors,
|
|
52448
|
+
export { AnimatedBox, type AppThemeColors, Avatar, type AvatarProps, type AvatarSize, type AvatarStatus, Badge, type BadgeProps, type BadgeSize, type BadgeVariant, type BaseColors, type BaseThemeColor, Box, type BoxRestyleProps, Button, type ButtonProps, type ButtonRef, type ButtonSize, type ButtonVariant, CalendarStrip, type CalendarStripProps, type CalendarStripSize, Card, type CardProps, type CardVariant, Checkbox, type CheckboxProps, type CheckboxRef, type CheckboxSize, Chip, type ChipProps, type ChipSize, type ChipVariant, DayCard, type DayCardProps, type DeepPartial, type DesignSystemLabels, type DesignSystemLabelsOverride, type DesignSystemLanguage, DesignSystemProvider, type DesignSystemProviderProps, Divider, type DividerColor, type DividerOrientation, type DividerProps, type DividerSpacing, type DividerThickness, type Duration, type DurationKey, type Easing, type EasingKey, type Elevation, type ElevationKey, EmptyState, type EmptyStateProps, type EmptyStateVariant, type EntranceAnimationConfig, type EntranceAnimationResult, FlatList, type FlatListProps, type FlatListRef, type FlatListRestyleProps, type FontFamily, type FontSize, type FontWeight, HStack, type HStackProps, Header, type HeaderProps, HeaderRightItems, type HeaderRightItemsProps, type HeaderSize, type HeaderVariant, Icon, IconButton, type IconButtonProps, type IconButtonSize, type IconButtonVariant, type IconName, type IconProps, type IconSize$1 as IconSize, type IconSizeKey, MIN_TOUCH_TARGET, type MaterialIconName, Modal, type ModalAction, type ModalPosition, type ModalProps, type Opacity, Pressable, type PressableProps, type PressableRestyleProps, ProgressBar, type ProgressBarProps, type ProgressBarSize, type PulseAnimationConfig, type Radii, type RadiiKey, RadioButton, type RadioButtonProps, type RadioButtonRef, type RadioButtonSize, type RestyleColor, type RestyleTheme, type RestyleThemePair, ScheduleItem, type ScheduleItemData, type ScheduleItemProps, type ScheduleItemSize, ScrollView, type ScrollViewProps, type ScrollViewRef, type ScrollViewRestyleProps, type SegmentOption, SegmentedControl, type SegmentedControlProps, type SegmentedControlSize, type SegmentedControlVariant, SelectSheet, type SelectSheetIndicatorPosition, type SelectSheetMode, type SelectSheetOption, type SelectSheetPosition, type SelectSheetProps, type SemanticColors, type SemanticColorsInput, type SemanticSpacing, type ShadowStyle, type ShowToastOptions, Skeleton, type SkeletonAnimation, type SkeletonProps, type SkeletonSize, type SkeletonVariant, type Spacing, type SpacingKey, Spinner, type SpinnerProps, type SpinnerSize, type SpringConfig, Switch, type SwitchProps, type SwitchRef, type SwitchSize, Text, TextInput, type TextInputProps, type TextInputRef, type TextInputSize, type TextInputVariant, type Theme, type ThemeColors, type ThemeElevation, type ThemeMode, type ThemeMotion, type ThemeOverrides, type ThemeTypography, Toast, type ToastAction, type ToastConfig, type ToastContainerProps, ToastContext, type ToastContextValue, type ToastPosition, type ToastProps, ToastProvider, type ToastVariant, type TypographyPresets, type TypographyStyle, type TypographyVariant, VStack, type VStackProps, type ZIndex, a11yRoles, a11yState, androidOnly, baseColors, buildRestyleTheme, buildRestyleThemeFromThemeColors, buttonA11yProps, checkboxA11yProps, createThemePair, darkSemanticColors, darkTheme, defaultTheme, duration, easing, elevation, en, es, fontFamily, fontSize, fontWeight, generateToastId, getContrastRatio, getStatusBarHeight, headingA11yProps, hitSlop, iconSize, imageA11yProps, iosOnly, isAndroid, isIOS, letterSpacing, lightSemanticColors, lightTheme, lineHeight, lineHeightValues, meetsContrastAA, meetsContrastAALarge, opacity, platformSelect, radii, restyleDarkTheme, restyleLightTheme, restylePresetThemes, restyleTheme, semanticElevation, semanticMotion, semanticRadii, semanticSpacing, spacing, springConfig, touchTarget, typographyPresets, useAnimatedValue, useDesignSystem, useEntranceAnimation, useMotionSafeDuration, usePulseAnimation, useReducedMotion, useRestyleTheme, useToast, zIndex };
|
package/dist/index.d.ts
CHANGED
|
@@ -4758,11 +4758,11 @@ type RestyleThemePair = {
|
|
|
4758
4758
|
dark: typeof restyleDarkTheme;
|
|
4759
4759
|
};
|
|
4760
4760
|
/**
|
|
4761
|
-
*
|
|
4761
|
+
* Create light + dark Restyle themes from ThemeColors overrides.
|
|
4762
4762
|
* The most convenient way to create a custom theme pair — only specify
|
|
4763
4763
|
* what differs from the default semantic colors.
|
|
4764
4764
|
*/
|
|
4765
|
-
declare function
|
|
4765
|
+
declare function createThemePair(lightOverrides: DeepPartial<ThemeColors>, darkOverrides: DeepPartial<ThemeColors>): RestyleThemePair;
|
|
4766
4766
|
/**
|
|
4767
4767
|
* Map of all preset Restyle themes, keyed by preset name.
|
|
4768
4768
|
*/
|
|
@@ -5009,114 +5009,6 @@ declare const lightTheme: Theme;
|
|
|
5009
5009
|
declare const darkTheme: Theme;
|
|
5010
5010
|
declare const defaultTheme: Theme;
|
|
5011
5011
|
|
|
5012
|
-
/**
|
|
5013
|
-
* El Sendero Design System - Theme Factory
|
|
5014
|
-
*
|
|
5015
|
-
* Create custom themes by extending the base theme with overrides.
|
|
5016
|
-
*
|
|
5017
|
-
* @example
|
|
5018
|
-
* const myTheme = createTheme(defaultTheme, {
|
|
5019
|
-
* colors: {
|
|
5020
|
-
* accent: {
|
|
5021
|
-
* primary: '#8B5CF6', // Purple accent
|
|
5022
|
-
* }
|
|
5023
|
-
* }
|
|
5024
|
-
* });
|
|
5025
|
-
*/
|
|
5026
|
-
|
|
5027
|
-
/**
|
|
5028
|
-
* Create a custom theme by extending a base theme with overrides.
|
|
5029
|
-
*
|
|
5030
|
-
* @param baseTheme - The theme to extend (usually defaultTheme)
|
|
5031
|
-
* @param overrides - Partial theme object with your customizations
|
|
5032
|
-
* @returns A complete Theme object with your overrides applied
|
|
5033
|
-
*
|
|
5034
|
-
* @example
|
|
5035
|
-
* // Create a sage-accented theme
|
|
5036
|
-
* const sageTheme = createTheme(defaultTheme, {
|
|
5037
|
-
* name: 'Sage',
|
|
5038
|
-
* colors: {
|
|
5039
|
-
* accent: {
|
|
5040
|
-
* primary: '#6B8F6B',
|
|
5041
|
-
* primaryHover: '#557255',
|
|
5042
|
-
* primaryPressed: '#445944',
|
|
5043
|
-
* }
|
|
5044
|
-
* }
|
|
5045
|
-
* });
|
|
5046
|
-
*
|
|
5047
|
-
* @example
|
|
5048
|
-
* // Create a more rounded theme
|
|
5049
|
-
* const softTheme = createTheme(defaultTheme, {
|
|
5050
|
-
* radii: {
|
|
5051
|
-
* md: 16,
|
|
5052
|
-
* lg: 24,
|
|
5053
|
-
* xl: 32,
|
|
5054
|
-
* }
|
|
5055
|
-
* });
|
|
5056
|
-
*/
|
|
5057
|
-
declare function createTheme(baseTheme: Theme, overrides: ThemeOverrides): Theme;
|
|
5058
|
-
/**
|
|
5059
|
-
* Create both light and dark versions of a custom theme.
|
|
5060
|
-
*
|
|
5061
|
-
* @param overrides - Overrides to apply to both light and dark themes
|
|
5062
|
-
* @param lightOverrides - Additional overrides for light theme only
|
|
5063
|
-
* @param darkOverrides - Additional overrides for dark theme only
|
|
5064
|
-
* @returns Object with light and dark theme variants
|
|
5065
|
-
*
|
|
5066
|
-
* @example
|
|
5067
|
-
* const { light, dark } = createThemePair(
|
|
5068
|
-
* { name: 'MyBrand' },
|
|
5069
|
-
* { colors: { accent: { primary: '#A68B6A' } } }, // Light-specific
|
|
5070
|
-
* { colors: { accent: { primary: '#C4A285' } } } // Dark-specific
|
|
5071
|
-
* );
|
|
5072
|
-
*/
|
|
5073
|
-
declare function createThemePair(overrides?: ThemeOverrides, lightOverrides?: ThemeOverrides, darkOverrides?: ThemeOverrides): {
|
|
5074
|
-
light: Theme;
|
|
5075
|
-
dark: Theme;
|
|
5076
|
-
};
|
|
5077
|
-
/**
|
|
5078
|
-
* Horizon Default - Blue with a calming feel
|
|
5079
|
-
*/
|
|
5080
|
-
declare const horizonTheme: {
|
|
5081
|
-
light: Theme;
|
|
5082
|
-
dark: Theme;
|
|
5083
|
-
};
|
|
5084
|
-
/**
|
|
5085
|
-
* Sage Theme - Green-focused for hope and growth
|
|
5086
|
-
*/
|
|
5087
|
-
declare const sageTheme: {
|
|
5088
|
-
light: Theme;
|
|
5089
|
-
dark: Theme;
|
|
5090
|
-
};
|
|
5091
|
-
/**
|
|
5092
|
-
* Sunset Theme - Warm coral/peach for energy and comfort
|
|
5093
|
-
*/
|
|
5094
|
-
declare const sunsetTheme: {
|
|
5095
|
-
light: Theme;
|
|
5096
|
-
dark: Theme;
|
|
5097
|
-
};
|
|
5098
|
-
/**
|
|
5099
|
-
* Ocean Theme - Teal/cyan accents, calming water vibes
|
|
5100
|
-
*/
|
|
5101
|
-
declare const oceanTheme: {
|
|
5102
|
-
light: Theme;
|
|
5103
|
-
dark: Theme;
|
|
5104
|
-
};
|
|
5105
|
-
/**
|
|
5106
|
-
* Lavender Theme - Soft purple accents, relaxing and spiritual
|
|
5107
|
-
*/
|
|
5108
|
-
declare const lavenderTheme: {
|
|
5109
|
-
light: Theme;
|
|
5110
|
-
dark: Theme;
|
|
5111
|
-
};
|
|
5112
|
-
/**
|
|
5113
|
-
* Rose Theme - Warm pink/rose accents, gentle and nurturing
|
|
5114
|
-
*/
|
|
5115
|
-
declare const roseTheme: {
|
|
5116
|
-
light: Theme;
|
|
5117
|
-
dark: Theme;
|
|
5118
|
-
};
|
|
5119
|
-
|
|
5120
5012
|
/**
|
|
5121
5013
|
* StayEasy Design System - Reduced Motion Hook
|
|
5122
5014
|
*
|
|
@@ -52553,4 +52445,4 @@ interface ScheduleItemProps extends Omit<BaseScheduleItemProps, "style"> {
|
|
|
52553
52445
|
declare function ScheduleItemComponent({ task, onPress, size, testID, ...rest }: ScheduleItemProps): react_jsx_runtime.JSX.Element;
|
|
52554
52446
|
declare const ScheduleItem: React__default.MemoExoticComponent<typeof ScheduleItemComponent>;
|
|
52555
52447
|
|
|
52556
|
-
export { AnimatedBox, type AppThemeColors, Avatar, type AvatarProps, type AvatarSize, type AvatarStatus, Badge, type BadgeProps, type BadgeSize, type BadgeVariant, type BaseColors, type BaseThemeColor, Box, type BoxRestyleProps, Button, type ButtonProps, type ButtonRef, type ButtonSize, type ButtonVariant, CalendarStrip, type CalendarStripProps, type CalendarStripSize, Card, type CardProps, type CardVariant, Checkbox, type CheckboxProps, type CheckboxRef, type CheckboxSize, Chip, type ChipProps, type ChipSize, type ChipVariant, DayCard, type DayCardProps, type DeepPartial, type DesignSystemLabels, type DesignSystemLabelsOverride, type DesignSystemLanguage, DesignSystemProvider, type DesignSystemProviderProps, Divider, type DividerColor, type DividerOrientation, type DividerProps, type DividerSpacing, type DividerThickness, type Duration, type DurationKey, type Easing, type EasingKey, type Elevation, type ElevationKey, EmptyState, type EmptyStateProps, type EmptyStateVariant, type EntranceAnimationConfig, type EntranceAnimationResult, FlatList, type FlatListProps, type FlatListRef, type FlatListRestyleProps, type FontFamily, type FontSize, type FontWeight, HStack, type HStackProps, Header, type HeaderProps, HeaderRightItems, type HeaderRightItemsProps, type HeaderSize, type HeaderVariant, Icon, IconButton, type IconButtonProps, type IconButtonSize, type IconButtonVariant, type IconName, type IconProps, type IconSize$1 as IconSize, type IconSizeKey, MIN_TOUCH_TARGET, type MaterialIconName, Modal, type ModalAction, type ModalPosition, type ModalProps, type Opacity, Pressable, type PressableProps, type PressableRestyleProps, ProgressBar, type ProgressBarProps, type ProgressBarSize, type PulseAnimationConfig, type Radii, type RadiiKey, RadioButton, type RadioButtonProps, type RadioButtonRef, type RadioButtonSize, type RestyleColor, type RestyleTheme, type RestyleThemePair, ScheduleItem, type ScheduleItemData, type ScheduleItemProps, type ScheduleItemSize, ScrollView, type ScrollViewProps, type ScrollViewRef, type ScrollViewRestyleProps, type SegmentOption, SegmentedControl, type SegmentedControlProps, type SegmentedControlSize, type SegmentedControlVariant, SelectSheet, type SelectSheetIndicatorPosition, type SelectSheetMode, type SelectSheetOption, type SelectSheetPosition, type SelectSheetProps, type SemanticColors, type SemanticColorsInput, type SemanticSpacing, type ShadowStyle, type ShowToastOptions, Skeleton, type SkeletonAnimation, type SkeletonProps, type SkeletonSize, type SkeletonVariant, type Spacing, type SpacingKey, Spinner, type SpinnerProps, type SpinnerSize, type SpringConfig, Switch, type SwitchProps, type SwitchRef, type SwitchSize, Text, TextInput, type TextInputProps, type TextInputRef, type TextInputSize, type TextInputVariant, type Theme, type ThemeColors, type ThemeElevation, type ThemeMode, type ThemeMotion, type ThemeOverrides, type ThemeTypography, Toast, type ToastAction, type ToastConfig, type ToastContainerProps, ToastContext, type ToastContextValue, type ToastPosition, type ToastProps, ToastProvider, type ToastVariant, type TypographyPresets, type TypographyStyle, type TypographyVariant, VStack, type VStackProps, type ZIndex, a11yRoles, a11yState, androidOnly, baseColors,
|
|
52448
|
+
export { AnimatedBox, type AppThemeColors, Avatar, type AvatarProps, type AvatarSize, type AvatarStatus, Badge, type BadgeProps, type BadgeSize, type BadgeVariant, type BaseColors, type BaseThemeColor, Box, type BoxRestyleProps, Button, type ButtonProps, type ButtonRef, type ButtonSize, type ButtonVariant, CalendarStrip, type CalendarStripProps, type CalendarStripSize, Card, type CardProps, type CardVariant, Checkbox, type CheckboxProps, type CheckboxRef, type CheckboxSize, Chip, type ChipProps, type ChipSize, type ChipVariant, DayCard, type DayCardProps, type DeepPartial, type DesignSystemLabels, type DesignSystemLabelsOverride, type DesignSystemLanguage, DesignSystemProvider, type DesignSystemProviderProps, Divider, type DividerColor, type DividerOrientation, type DividerProps, type DividerSpacing, type DividerThickness, type Duration, type DurationKey, type Easing, type EasingKey, type Elevation, type ElevationKey, EmptyState, type EmptyStateProps, type EmptyStateVariant, type EntranceAnimationConfig, type EntranceAnimationResult, FlatList, type FlatListProps, type FlatListRef, type FlatListRestyleProps, type FontFamily, type FontSize, type FontWeight, HStack, type HStackProps, Header, type HeaderProps, HeaderRightItems, type HeaderRightItemsProps, type HeaderSize, type HeaderVariant, Icon, IconButton, type IconButtonProps, type IconButtonSize, type IconButtonVariant, type IconName, type IconProps, type IconSize$1 as IconSize, type IconSizeKey, MIN_TOUCH_TARGET, type MaterialIconName, Modal, type ModalAction, type ModalPosition, type ModalProps, type Opacity, Pressable, type PressableProps, type PressableRestyleProps, ProgressBar, type ProgressBarProps, type ProgressBarSize, type PulseAnimationConfig, type Radii, type RadiiKey, RadioButton, type RadioButtonProps, type RadioButtonRef, type RadioButtonSize, type RestyleColor, type RestyleTheme, type RestyleThemePair, ScheduleItem, type ScheduleItemData, type ScheduleItemProps, type ScheduleItemSize, ScrollView, type ScrollViewProps, type ScrollViewRef, type ScrollViewRestyleProps, type SegmentOption, SegmentedControl, type SegmentedControlProps, type SegmentedControlSize, type SegmentedControlVariant, SelectSheet, type SelectSheetIndicatorPosition, type SelectSheetMode, type SelectSheetOption, type SelectSheetPosition, type SelectSheetProps, type SemanticColors, type SemanticColorsInput, type SemanticSpacing, type ShadowStyle, type ShowToastOptions, Skeleton, type SkeletonAnimation, type SkeletonProps, type SkeletonSize, type SkeletonVariant, type Spacing, type SpacingKey, Spinner, type SpinnerProps, type SpinnerSize, type SpringConfig, Switch, type SwitchProps, type SwitchRef, type SwitchSize, Text, TextInput, type TextInputProps, type TextInputRef, type TextInputSize, type TextInputVariant, type Theme, type ThemeColors, type ThemeElevation, type ThemeMode, type ThemeMotion, type ThemeOverrides, type ThemeTypography, Toast, type ToastAction, type ToastConfig, type ToastContainerProps, ToastContext, type ToastContextValue, type ToastPosition, type ToastProps, ToastProvider, type ToastVariant, type TypographyPresets, type TypographyStyle, type TypographyVariant, VStack, type VStackProps, type ZIndex, a11yRoles, a11yState, androidOnly, baseColors, buildRestyleTheme, buildRestyleThemeFromThemeColors, buttonA11yProps, checkboxA11yProps, createThemePair, darkSemanticColors, darkTheme, defaultTheme, duration, easing, elevation, en, es, fontFamily, fontSize, fontWeight, generateToastId, getContrastRatio, getStatusBarHeight, headingA11yProps, hitSlop, iconSize, imageA11yProps, iosOnly, isAndroid, isIOS, letterSpacing, lightSemanticColors, lightTheme, lineHeight, lineHeightValues, meetsContrastAA, meetsContrastAALarge, opacity, platformSelect, radii, restyleDarkTheme, restyleLightTheme, restylePresetThemes, restyleTheme, semanticElevation, semanticMotion, semanticRadii, semanticSpacing, spacing, springConfig, touchTarget, typographyPresets, useAnimatedValue, useDesignSystem, useEntranceAnimation, useMotionSafeDuration, usePulseAnimation, useReducedMotion, useRestyleTheme, useToast, zIndex };
|
package/dist/index.js
CHANGED
|
@@ -72,12 +72,10 @@ __export(index_exports, {
|
|
|
72
72
|
a11yState: () => a11yState,
|
|
73
73
|
androidOnly: () => androidOnly,
|
|
74
74
|
baseColors: () => baseColors,
|
|
75
|
-
buildPair: () => buildPair,
|
|
76
75
|
buildRestyleTheme: () => buildRestyleTheme,
|
|
77
76
|
buildRestyleThemeFromThemeColors: () => buildRestyleThemeFromThemeColors,
|
|
78
77
|
buttonA11yProps: () => buttonA11yProps,
|
|
79
78
|
checkboxA11yProps: () => checkboxA11yProps,
|
|
80
|
-
createTheme: () => createTheme2,
|
|
81
79
|
createThemePair: () => createThemePair,
|
|
82
80
|
darkSemanticColors: () => darkSemanticColors,
|
|
83
81
|
darkTheme: () => darkTheme,
|
|
@@ -95,13 +93,11 @@ __export(index_exports, {
|
|
|
95
93
|
getStatusBarHeight: () => getStatusBarHeight,
|
|
96
94
|
headingA11yProps: () => headingA11yProps,
|
|
97
95
|
hitSlop: () => hitSlop,
|
|
98
|
-
horizonTheme: () => horizonTheme,
|
|
99
96
|
iconSize: () => iconSize,
|
|
100
97
|
imageA11yProps: () => imageA11yProps,
|
|
101
98
|
iosOnly: () => iosOnly,
|
|
102
99
|
isAndroid: () => isAndroid,
|
|
103
100
|
isIOS: () => isIOS,
|
|
104
|
-
lavenderTheme: () => lavenderTheme,
|
|
105
101
|
letterSpacing: () => letterSpacing,
|
|
106
102
|
lightSemanticColors: () => lightSemanticColors,
|
|
107
103
|
lightTheme: () => lightTheme,
|
|
@@ -109,7 +105,6 @@ __export(index_exports, {
|
|
|
109
105
|
lineHeightValues: () => lineHeightValues,
|
|
110
106
|
meetsContrastAA: () => meetsContrastAA,
|
|
111
107
|
meetsContrastAALarge: () => meetsContrastAALarge,
|
|
112
|
-
oceanTheme: () => oceanTheme,
|
|
113
108
|
opacity: () => opacity,
|
|
114
109
|
platformSelect: () => platformSelect,
|
|
115
110
|
radii: () => radii,
|
|
@@ -117,15 +112,12 @@ __export(index_exports, {
|
|
|
117
112
|
restyleLightTheme: () => restyleLightTheme,
|
|
118
113
|
restylePresetThemes: () => restylePresetThemes,
|
|
119
114
|
restyleTheme: () => restyleTheme,
|
|
120
|
-
roseTheme: () => roseTheme,
|
|
121
|
-
sageTheme: () => sageTheme,
|
|
122
115
|
semanticElevation: () => semanticElevation,
|
|
123
116
|
semanticMotion: () => semanticMotion,
|
|
124
117
|
semanticRadii: () => semanticRadii,
|
|
125
118
|
semanticSpacing: () => semanticSpacing,
|
|
126
119
|
spacing: () => spacing,
|
|
127
120
|
springConfig: () => springConfig,
|
|
128
|
-
sunsetTheme: () => sunsetTheme,
|
|
129
121
|
touchTarget: () => touchTarget,
|
|
130
122
|
typographyPresets: () => typographyPresets,
|
|
131
123
|
useAnimatedValue: () => useAnimatedValue,
|
|
@@ -2443,7 +2435,7 @@ var import_restyle2 = require("@shopify/restyle");
|
|
|
2443
2435
|
var useRestyleTheme = () => (0, import_restyle2.useTheme)();
|
|
2444
2436
|
|
|
2445
2437
|
// src/core/restyle/restylePresetRegistry.ts
|
|
2446
|
-
function
|
|
2438
|
+
function createThemePair(lightOverrides, darkOverrides) {
|
|
2447
2439
|
return {
|
|
2448
2440
|
light: buildRestyleThemeFromThemeColors(lightSemanticColors, lightOverrides),
|
|
2449
2441
|
dark: buildRestyleThemeFromThemeColors(darkSemanticColors, darkOverrides)
|
|
@@ -2453,7 +2445,7 @@ var horizon = {
|
|
|
2453
2445
|
light: restyleLightTheme,
|
|
2454
2446
|
dark: restyleDarkTheme
|
|
2455
2447
|
};
|
|
2456
|
-
var sage =
|
|
2448
|
+
var sage = createThemePair(
|
|
2457
2449
|
{
|
|
2458
2450
|
accent: {
|
|
2459
2451
|
primary: "#6B8F6B",
|
|
@@ -2479,7 +2471,7 @@ var sage = buildPair(
|
|
|
2479
2471
|
border: { focus: "#8FAF8F" }
|
|
2480
2472
|
}
|
|
2481
2473
|
);
|
|
2482
|
-
var sunset =
|
|
2474
|
+
var sunset = createThemePair(
|
|
2483
2475
|
{
|
|
2484
2476
|
accent: {
|
|
2485
2477
|
primary: "#E8836B",
|
|
@@ -2505,7 +2497,7 @@ var sunset = buildPair(
|
|
|
2505
2497
|
border: { focus: "#FF9B85" }
|
|
2506
2498
|
}
|
|
2507
2499
|
);
|
|
2508
|
-
var ocean =
|
|
2500
|
+
var ocean = createThemePair(
|
|
2509
2501
|
{
|
|
2510
2502
|
accent: {
|
|
2511
2503
|
primary: "#0E9AA5",
|
|
@@ -2531,7 +2523,7 @@ var ocean = buildPair(
|
|
|
2531
2523
|
border: { focus: "#2DD4BF" }
|
|
2532
2524
|
}
|
|
2533
2525
|
);
|
|
2534
|
-
var lavender =
|
|
2526
|
+
var lavender = createThemePair(
|
|
2535
2527
|
{
|
|
2536
2528
|
accent: {
|
|
2537
2529
|
primary: "#8B5CF6",
|
|
@@ -2557,7 +2549,7 @@ var lavender = buildPair(
|
|
|
2557
2549
|
border: { focus: "#A78BFA" }
|
|
2558
2550
|
}
|
|
2559
2551
|
);
|
|
2560
|
-
var rose =
|
|
2552
|
+
var rose = createThemePair(
|
|
2561
2553
|
{
|
|
2562
2554
|
accent: {
|
|
2563
2555
|
primary: "#E11D6C",
|
|
@@ -2923,184 +2915,6 @@ var darkTheme = {
|
|
|
2923
2915
|
};
|
|
2924
2916
|
var defaultTheme = lightTheme;
|
|
2925
2917
|
|
|
2926
|
-
// src/providers/ThemeProvider/createTheme.ts
|
|
2927
|
-
function deepMerge2(target, source) {
|
|
2928
|
-
const result = { ...target };
|
|
2929
|
-
for (const key in source) {
|
|
2930
|
-
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
2931
|
-
const sourceValue = source[key];
|
|
2932
|
-
const targetValue = target[key];
|
|
2933
|
-
if (sourceValue !== null && typeof sourceValue === "object" && !Array.isArray(sourceValue) && targetValue !== null && typeof targetValue === "object" && !Array.isArray(targetValue)) {
|
|
2934
|
-
result[key] = deepMerge2(
|
|
2935
|
-
targetValue,
|
|
2936
|
-
sourceValue
|
|
2937
|
-
);
|
|
2938
|
-
} else if (sourceValue !== void 0) {
|
|
2939
|
-
result[key] = sourceValue;
|
|
2940
|
-
}
|
|
2941
|
-
}
|
|
2942
|
-
}
|
|
2943
|
-
return result;
|
|
2944
|
-
}
|
|
2945
|
-
function createTheme2(baseTheme, overrides) {
|
|
2946
|
-
return deepMerge2(baseTheme, overrides);
|
|
2947
|
-
}
|
|
2948
|
-
function createThemePair(overrides = {}, lightOverrides = {}, darkOverrides = {}) {
|
|
2949
|
-
return {
|
|
2950
|
-
light: createTheme2(
|
|
2951
|
-
createTheme2(lightTheme, overrides),
|
|
2952
|
-
lightOverrides
|
|
2953
|
-
),
|
|
2954
|
-
dark: createTheme2(
|
|
2955
|
-
createTheme2(darkTheme, overrides),
|
|
2956
|
-
darkOverrides
|
|
2957
|
-
)
|
|
2958
|
-
};
|
|
2959
|
-
}
|
|
2960
|
-
var horizonTheme = createThemePair({
|
|
2961
|
-
name: "Horizon"
|
|
2962
|
-
});
|
|
2963
|
-
var sageTheme = createThemePair(
|
|
2964
|
-
{ name: "Sage" },
|
|
2965
|
-
{
|
|
2966
|
-
colors: {
|
|
2967
|
-
accent: {
|
|
2968
|
-
primary: "#6B8F6B",
|
|
2969
|
-
primaryHover: "#557255",
|
|
2970
|
-
primaryPressed: "#445944"
|
|
2971
|
-
},
|
|
2972
|
-
text: {
|
|
2973
|
-
link: "#6B8F6B"
|
|
2974
|
-
},
|
|
2975
|
-
border: {
|
|
2976
|
-
focus: "#6B8F6B"
|
|
2977
|
-
}
|
|
2978
|
-
}
|
|
2979
|
-
},
|
|
2980
|
-
{
|
|
2981
|
-
colors: {
|
|
2982
|
-
accent: {
|
|
2983
|
-
primary: "#8FAF8F",
|
|
2984
|
-
primaryHover: "#B3C7B3",
|
|
2985
|
-
primaryPressed: "#6B8F6B"
|
|
2986
|
-
},
|
|
2987
|
-
text: {
|
|
2988
|
-
link: "#8FAF8F"
|
|
2989
|
-
},
|
|
2990
|
-
border: {
|
|
2991
|
-
focus: "#8FAF8F"
|
|
2992
|
-
}
|
|
2993
|
-
}
|
|
2994
|
-
}
|
|
2995
|
-
);
|
|
2996
|
-
var sunsetTheme = createThemePair(
|
|
2997
|
-
{ name: "Sunset" },
|
|
2998
|
-
{
|
|
2999
|
-
colors: {
|
|
3000
|
-
accent: {
|
|
3001
|
-
primary: "#E8836B",
|
|
3002
|
-
primaryHover: "#CC6B55",
|
|
3003
|
-
primaryPressed: "#A85545"
|
|
3004
|
-
},
|
|
3005
|
-
text: {
|
|
3006
|
-
link: "#E8836B"
|
|
3007
|
-
},
|
|
3008
|
-
border: {
|
|
3009
|
-
focus: "#E8836B"
|
|
3010
|
-
}
|
|
3011
|
-
}
|
|
3012
|
-
},
|
|
3013
|
-
{
|
|
3014
|
-
colors: {
|
|
3015
|
-
accent: {
|
|
3016
|
-
primary: "#FF9B85",
|
|
3017
|
-
primaryHover: "#FFBAA8",
|
|
3018
|
-
primaryPressed: "#E8836B"
|
|
3019
|
-
},
|
|
3020
|
-
text: {
|
|
3021
|
-
link: "#FF9B85"
|
|
3022
|
-
},
|
|
3023
|
-
border: {
|
|
3024
|
-
focus: "#FF9B85"
|
|
3025
|
-
}
|
|
3026
|
-
}
|
|
3027
|
-
}
|
|
3028
|
-
);
|
|
3029
|
-
var oceanTheme = createThemePair(
|
|
3030
|
-
{
|
|
3031
|
-
colors: {
|
|
3032
|
-
accent: {
|
|
3033
|
-
primary: "#0E9AA5",
|
|
3034
|
-
primaryHover: "#0B7E87",
|
|
3035
|
-
primaryPressed: "#086269"
|
|
3036
|
-
},
|
|
3037
|
-
text: { link: "#0E9AA5" },
|
|
3038
|
-
border: { focus: "#0E9AA5" }
|
|
3039
|
-
}
|
|
3040
|
-
},
|
|
3041
|
-
{
|
|
3042
|
-
colors: {
|
|
3043
|
-
accent: {
|
|
3044
|
-
primary: "#2DD4BF",
|
|
3045
|
-
primaryHover: "#5EEAD4",
|
|
3046
|
-
primaryPressed: "#0E9AA5"
|
|
3047
|
-
},
|
|
3048
|
-
text: { link: "#2DD4BF" },
|
|
3049
|
-
border: { focus: "#2DD4BF" }
|
|
3050
|
-
}
|
|
3051
|
-
}
|
|
3052
|
-
);
|
|
3053
|
-
var lavenderTheme = createThemePair(
|
|
3054
|
-
{ name: "Lavender" },
|
|
3055
|
-
{
|
|
3056
|
-
colors: {
|
|
3057
|
-
accent: {
|
|
3058
|
-
primary: "#8B5CF6",
|
|
3059
|
-
primaryHover: "#7C3AED",
|
|
3060
|
-
primaryPressed: "#6D28D9"
|
|
3061
|
-
},
|
|
3062
|
-
text: { link: "#8B5CF6" },
|
|
3063
|
-
border: { focus: "#8B5CF6" }
|
|
3064
|
-
}
|
|
3065
|
-
},
|
|
3066
|
-
{
|
|
3067
|
-
colors: {
|
|
3068
|
-
accent: {
|
|
3069
|
-
primary: "#A78BFA",
|
|
3070
|
-
primaryHover: "#C4B5FD",
|
|
3071
|
-
primaryPressed: "#8B5CF6"
|
|
3072
|
-
},
|
|
3073
|
-
text: { link: "#A78BFA" },
|
|
3074
|
-
border: { focus: "#A78BFA" }
|
|
3075
|
-
}
|
|
3076
|
-
}
|
|
3077
|
-
);
|
|
3078
|
-
var roseTheme = createThemePair(
|
|
3079
|
-
{ name: "Rose" },
|
|
3080
|
-
{
|
|
3081
|
-
colors: {
|
|
3082
|
-
accent: {
|
|
3083
|
-
primary: "#E11D6C",
|
|
3084
|
-
primaryHover: "#BE185D",
|
|
3085
|
-
primaryPressed: "#9D174D"
|
|
3086
|
-
},
|
|
3087
|
-
text: { link: "#E11D6C" },
|
|
3088
|
-
border: { focus: "#E11D6C" }
|
|
3089
|
-
}
|
|
3090
|
-
},
|
|
3091
|
-
{
|
|
3092
|
-
colors: {
|
|
3093
|
-
accent: {
|
|
3094
|
-
primary: "#F472B6",
|
|
3095
|
-
primaryHover: "#F9A8D4",
|
|
3096
|
-
primaryPressed: "#E11D6C"
|
|
3097
|
-
},
|
|
3098
|
-
text: { link: "#F472B6" },
|
|
3099
|
-
border: { focus: "#F472B6" }
|
|
3100
|
-
}
|
|
3101
|
-
}
|
|
3102
|
-
);
|
|
3103
|
-
|
|
3104
2918
|
// src/hooks/useReducedMotion.ts
|
|
3105
2919
|
var import_react3 = require("react");
|
|
3106
2920
|
var import_react_native4 = require("react-native");
|
|
@@ -8684,12 +8498,10 @@ ScheduleItem.displayName = "ScheduleItem";
|
|
|
8684
8498
|
a11yState,
|
|
8685
8499
|
androidOnly,
|
|
8686
8500
|
baseColors,
|
|
8687
|
-
buildPair,
|
|
8688
8501
|
buildRestyleTheme,
|
|
8689
8502
|
buildRestyleThemeFromThemeColors,
|
|
8690
8503
|
buttonA11yProps,
|
|
8691
8504
|
checkboxA11yProps,
|
|
8692
|
-
createTheme,
|
|
8693
8505
|
createThemePair,
|
|
8694
8506
|
darkSemanticColors,
|
|
8695
8507
|
darkTheme,
|
|
@@ -8707,13 +8519,11 @@ ScheduleItem.displayName = "ScheduleItem";
|
|
|
8707
8519
|
getStatusBarHeight,
|
|
8708
8520
|
headingA11yProps,
|
|
8709
8521
|
hitSlop,
|
|
8710
|
-
horizonTheme,
|
|
8711
8522
|
iconSize,
|
|
8712
8523
|
imageA11yProps,
|
|
8713
8524
|
iosOnly,
|
|
8714
8525
|
isAndroid,
|
|
8715
8526
|
isIOS,
|
|
8716
|
-
lavenderTheme,
|
|
8717
8527
|
letterSpacing,
|
|
8718
8528
|
lightSemanticColors,
|
|
8719
8529
|
lightTheme,
|
|
@@ -8721,7 +8531,6 @@ ScheduleItem.displayName = "ScheduleItem";
|
|
|
8721
8531
|
lineHeightValues,
|
|
8722
8532
|
meetsContrastAA,
|
|
8723
8533
|
meetsContrastAALarge,
|
|
8724
|
-
oceanTheme,
|
|
8725
8534
|
opacity,
|
|
8726
8535
|
platformSelect,
|
|
8727
8536
|
radii,
|
|
@@ -8729,15 +8538,12 @@ ScheduleItem.displayName = "ScheduleItem";
|
|
|
8729
8538
|
restyleLightTheme,
|
|
8730
8539
|
restylePresetThemes,
|
|
8731
8540
|
restyleTheme,
|
|
8732
|
-
roseTheme,
|
|
8733
|
-
sageTheme,
|
|
8734
8541
|
semanticElevation,
|
|
8735
8542
|
semanticMotion,
|
|
8736
8543
|
semanticRadii,
|
|
8737
8544
|
semanticSpacing,
|
|
8738
8545
|
spacing,
|
|
8739
8546
|
springConfig,
|
|
8740
|
-
sunsetTheme,
|
|
8741
8547
|
touchTarget,
|
|
8742
8548
|
typographyPresets,
|
|
8743
8549
|
useAnimatedValue,
|
package/dist/index.mjs
CHANGED
|
@@ -2301,7 +2301,7 @@ import { useTheme } from "@shopify/restyle";
|
|
|
2301
2301
|
var useRestyleTheme = () => useTheme();
|
|
2302
2302
|
|
|
2303
2303
|
// src/core/restyle/restylePresetRegistry.ts
|
|
2304
|
-
function
|
|
2304
|
+
function createThemePair(lightOverrides, darkOverrides) {
|
|
2305
2305
|
return {
|
|
2306
2306
|
light: buildRestyleThemeFromThemeColors(lightSemanticColors, lightOverrides),
|
|
2307
2307
|
dark: buildRestyleThemeFromThemeColors(darkSemanticColors, darkOverrides)
|
|
@@ -2311,7 +2311,7 @@ var horizon = {
|
|
|
2311
2311
|
light: restyleLightTheme,
|
|
2312
2312
|
dark: restyleDarkTheme
|
|
2313
2313
|
};
|
|
2314
|
-
var sage =
|
|
2314
|
+
var sage = createThemePair(
|
|
2315
2315
|
{
|
|
2316
2316
|
accent: {
|
|
2317
2317
|
primary: "#6B8F6B",
|
|
@@ -2337,7 +2337,7 @@ var sage = buildPair(
|
|
|
2337
2337
|
border: { focus: "#8FAF8F" }
|
|
2338
2338
|
}
|
|
2339
2339
|
);
|
|
2340
|
-
var sunset =
|
|
2340
|
+
var sunset = createThemePair(
|
|
2341
2341
|
{
|
|
2342
2342
|
accent: {
|
|
2343
2343
|
primary: "#E8836B",
|
|
@@ -2363,7 +2363,7 @@ var sunset = buildPair(
|
|
|
2363
2363
|
border: { focus: "#FF9B85" }
|
|
2364
2364
|
}
|
|
2365
2365
|
);
|
|
2366
|
-
var ocean =
|
|
2366
|
+
var ocean = createThemePair(
|
|
2367
2367
|
{
|
|
2368
2368
|
accent: {
|
|
2369
2369
|
primary: "#0E9AA5",
|
|
@@ -2389,7 +2389,7 @@ var ocean = buildPair(
|
|
|
2389
2389
|
border: { focus: "#2DD4BF" }
|
|
2390
2390
|
}
|
|
2391
2391
|
);
|
|
2392
|
-
var lavender =
|
|
2392
|
+
var lavender = createThemePair(
|
|
2393
2393
|
{
|
|
2394
2394
|
accent: {
|
|
2395
2395
|
primary: "#8B5CF6",
|
|
@@ -2415,7 +2415,7 @@ var lavender = buildPair(
|
|
|
2415
2415
|
border: { focus: "#A78BFA" }
|
|
2416
2416
|
}
|
|
2417
2417
|
);
|
|
2418
|
-
var rose =
|
|
2418
|
+
var rose = createThemePair(
|
|
2419
2419
|
{
|
|
2420
2420
|
accent: {
|
|
2421
2421
|
primary: "#E11D6C",
|
|
@@ -2781,184 +2781,6 @@ var darkTheme = {
|
|
|
2781
2781
|
};
|
|
2782
2782
|
var defaultTheme = lightTheme;
|
|
2783
2783
|
|
|
2784
|
-
// src/providers/ThemeProvider/createTheme.ts
|
|
2785
|
-
function deepMerge2(target, source) {
|
|
2786
|
-
const result = { ...target };
|
|
2787
|
-
for (const key in source) {
|
|
2788
|
-
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
2789
|
-
const sourceValue = source[key];
|
|
2790
|
-
const targetValue = target[key];
|
|
2791
|
-
if (sourceValue !== null && typeof sourceValue === "object" && !Array.isArray(sourceValue) && targetValue !== null && typeof targetValue === "object" && !Array.isArray(targetValue)) {
|
|
2792
|
-
result[key] = deepMerge2(
|
|
2793
|
-
targetValue,
|
|
2794
|
-
sourceValue
|
|
2795
|
-
);
|
|
2796
|
-
} else if (sourceValue !== void 0) {
|
|
2797
|
-
result[key] = sourceValue;
|
|
2798
|
-
}
|
|
2799
|
-
}
|
|
2800
|
-
}
|
|
2801
|
-
return result;
|
|
2802
|
-
}
|
|
2803
|
-
function createTheme2(baseTheme, overrides) {
|
|
2804
|
-
return deepMerge2(baseTheme, overrides);
|
|
2805
|
-
}
|
|
2806
|
-
function createThemePair(overrides = {}, lightOverrides = {}, darkOverrides = {}) {
|
|
2807
|
-
return {
|
|
2808
|
-
light: createTheme2(
|
|
2809
|
-
createTheme2(lightTheme, overrides),
|
|
2810
|
-
lightOverrides
|
|
2811
|
-
),
|
|
2812
|
-
dark: createTheme2(
|
|
2813
|
-
createTheme2(darkTheme, overrides),
|
|
2814
|
-
darkOverrides
|
|
2815
|
-
)
|
|
2816
|
-
};
|
|
2817
|
-
}
|
|
2818
|
-
var horizonTheme = createThemePair({
|
|
2819
|
-
name: "Horizon"
|
|
2820
|
-
});
|
|
2821
|
-
var sageTheme = createThemePair(
|
|
2822
|
-
{ name: "Sage" },
|
|
2823
|
-
{
|
|
2824
|
-
colors: {
|
|
2825
|
-
accent: {
|
|
2826
|
-
primary: "#6B8F6B",
|
|
2827
|
-
primaryHover: "#557255",
|
|
2828
|
-
primaryPressed: "#445944"
|
|
2829
|
-
},
|
|
2830
|
-
text: {
|
|
2831
|
-
link: "#6B8F6B"
|
|
2832
|
-
},
|
|
2833
|
-
border: {
|
|
2834
|
-
focus: "#6B8F6B"
|
|
2835
|
-
}
|
|
2836
|
-
}
|
|
2837
|
-
},
|
|
2838
|
-
{
|
|
2839
|
-
colors: {
|
|
2840
|
-
accent: {
|
|
2841
|
-
primary: "#8FAF8F",
|
|
2842
|
-
primaryHover: "#B3C7B3",
|
|
2843
|
-
primaryPressed: "#6B8F6B"
|
|
2844
|
-
},
|
|
2845
|
-
text: {
|
|
2846
|
-
link: "#8FAF8F"
|
|
2847
|
-
},
|
|
2848
|
-
border: {
|
|
2849
|
-
focus: "#8FAF8F"
|
|
2850
|
-
}
|
|
2851
|
-
}
|
|
2852
|
-
}
|
|
2853
|
-
);
|
|
2854
|
-
var sunsetTheme = createThemePair(
|
|
2855
|
-
{ name: "Sunset" },
|
|
2856
|
-
{
|
|
2857
|
-
colors: {
|
|
2858
|
-
accent: {
|
|
2859
|
-
primary: "#E8836B",
|
|
2860
|
-
primaryHover: "#CC6B55",
|
|
2861
|
-
primaryPressed: "#A85545"
|
|
2862
|
-
},
|
|
2863
|
-
text: {
|
|
2864
|
-
link: "#E8836B"
|
|
2865
|
-
},
|
|
2866
|
-
border: {
|
|
2867
|
-
focus: "#E8836B"
|
|
2868
|
-
}
|
|
2869
|
-
}
|
|
2870
|
-
},
|
|
2871
|
-
{
|
|
2872
|
-
colors: {
|
|
2873
|
-
accent: {
|
|
2874
|
-
primary: "#FF9B85",
|
|
2875
|
-
primaryHover: "#FFBAA8",
|
|
2876
|
-
primaryPressed: "#E8836B"
|
|
2877
|
-
},
|
|
2878
|
-
text: {
|
|
2879
|
-
link: "#FF9B85"
|
|
2880
|
-
},
|
|
2881
|
-
border: {
|
|
2882
|
-
focus: "#FF9B85"
|
|
2883
|
-
}
|
|
2884
|
-
}
|
|
2885
|
-
}
|
|
2886
|
-
);
|
|
2887
|
-
var oceanTheme = createThemePair(
|
|
2888
|
-
{
|
|
2889
|
-
colors: {
|
|
2890
|
-
accent: {
|
|
2891
|
-
primary: "#0E9AA5",
|
|
2892
|
-
primaryHover: "#0B7E87",
|
|
2893
|
-
primaryPressed: "#086269"
|
|
2894
|
-
},
|
|
2895
|
-
text: { link: "#0E9AA5" },
|
|
2896
|
-
border: { focus: "#0E9AA5" }
|
|
2897
|
-
}
|
|
2898
|
-
},
|
|
2899
|
-
{
|
|
2900
|
-
colors: {
|
|
2901
|
-
accent: {
|
|
2902
|
-
primary: "#2DD4BF",
|
|
2903
|
-
primaryHover: "#5EEAD4",
|
|
2904
|
-
primaryPressed: "#0E9AA5"
|
|
2905
|
-
},
|
|
2906
|
-
text: { link: "#2DD4BF" },
|
|
2907
|
-
border: { focus: "#2DD4BF" }
|
|
2908
|
-
}
|
|
2909
|
-
}
|
|
2910
|
-
);
|
|
2911
|
-
var lavenderTheme = createThemePair(
|
|
2912
|
-
{ name: "Lavender" },
|
|
2913
|
-
{
|
|
2914
|
-
colors: {
|
|
2915
|
-
accent: {
|
|
2916
|
-
primary: "#8B5CF6",
|
|
2917
|
-
primaryHover: "#7C3AED",
|
|
2918
|
-
primaryPressed: "#6D28D9"
|
|
2919
|
-
},
|
|
2920
|
-
text: { link: "#8B5CF6" },
|
|
2921
|
-
border: { focus: "#8B5CF6" }
|
|
2922
|
-
}
|
|
2923
|
-
},
|
|
2924
|
-
{
|
|
2925
|
-
colors: {
|
|
2926
|
-
accent: {
|
|
2927
|
-
primary: "#A78BFA",
|
|
2928
|
-
primaryHover: "#C4B5FD",
|
|
2929
|
-
primaryPressed: "#8B5CF6"
|
|
2930
|
-
},
|
|
2931
|
-
text: { link: "#A78BFA" },
|
|
2932
|
-
border: { focus: "#A78BFA" }
|
|
2933
|
-
}
|
|
2934
|
-
}
|
|
2935
|
-
);
|
|
2936
|
-
var roseTheme = createThemePair(
|
|
2937
|
-
{ name: "Rose" },
|
|
2938
|
-
{
|
|
2939
|
-
colors: {
|
|
2940
|
-
accent: {
|
|
2941
|
-
primary: "#E11D6C",
|
|
2942
|
-
primaryHover: "#BE185D",
|
|
2943
|
-
primaryPressed: "#9D174D"
|
|
2944
|
-
},
|
|
2945
|
-
text: { link: "#E11D6C" },
|
|
2946
|
-
border: { focus: "#E11D6C" }
|
|
2947
|
-
}
|
|
2948
|
-
},
|
|
2949
|
-
{
|
|
2950
|
-
colors: {
|
|
2951
|
-
accent: {
|
|
2952
|
-
primary: "#F472B6",
|
|
2953
|
-
primaryHover: "#F9A8D4",
|
|
2954
|
-
primaryPressed: "#E11D6C"
|
|
2955
|
-
},
|
|
2956
|
-
text: { link: "#F472B6" },
|
|
2957
|
-
border: { focus: "#F472B6" }
|
|
2958
|
-
}
|
|
2959
|
-
}
|
|
2960
|
-
);
|
|
2961
|
-
|
|
2962
2784
|
// src/hooks/useReducedMotion.ts
|
|
2963
2785
|
import { useEffect, useState } from "react";
|
|
2964
2786
|
import { AccessibilityInfo } from "react-native";
|
|
@@ -8708,12 +8530,10 @@ export {
|
|
|
8708
8530
|
a11yState,
|
|
8709
8531
|
androidOnly,
|
|
8710
8532
|
baseColors,
|
|
8711
|
-
buildPair,
|
|
8712
8533
|
buildRestyleTheme,
|
|
8713
8534
|
buildRestyleThemeFromThemeColors,
|
|
8714
8535
|
buttonA11yProps,
|
|
8715
8536
|
checkboxA11yProps,
|
|
8716
|
-
createTheme2 as createTheme,
|
|
8717
8537
|
createThemePair,
|
|
8718
8538
|
darkSemanticColors,
|
|
8719
8539
|
darkTheme,
|
|
@@ -8731,13 +8551,11 @@ export {
|
|
|
8731
8551
|
getStatusBarHeight,
|
|
8732
8552
|
headingA11yProps,
|
|
8733
8553
|
hitSlop,
|
|
8734
|
-
horizonTheme,
|
|
8735
8554
|
iconSize,
|
|
8736
8555
|
imageA11yProps,
|
|
8737
8556
|
iosOnly,
|
|
8738
8557
|
isAndroid,
|
|
8739
8558
|
isIOS,
|
|
8740
|
-
lavenderTheme,
|
|
8741
8559
|
letterSpacing,
|
|
8742
8560
|
lightSemanticColors,
|
|
8743
8561
|
lightTheme,
|
|
@@ -8745,7 +8563,6 @@ export {
|
|
|
8745
8563
|
lineHeightValues,
|
|
8746
8564
|
meetsContrastAA,
|
|
8747
8565
|
meetsContrastAALarge,
|
|
8748
|
-
oceanTheme,
|
|
8749
8566
|
opacity,
|
|
8750
8567
|
platformSelect,
|
|
8751
8568
|
radii,
|
|
@@ -8753,15 +8570,12 @@ export {
|
|
|
8753
8570
|
restyleLightTheme,
|
|
8754
8571
|
restylePresetThemes,
|
|
8755
8572
|
restyleTheme,
|
|
8756
|
-
roseTheme,
|
|
8757
|
-
sageTheme,
|
|
8758
8573
|
semanticElevation,
|
|
8759
8574
|
semanticMotion,
|
|
8760
8575
|
semanticRadii,
|
|
8761
8576
|
semanticSpacing,
|
|
8762
8577
|
spacing,
|
|
8763
8578
|
springConfig,
|
|
8764
|
-
sunsetTheme,
|
|
8765
8579
|
touchTarget,
|
|
8766
8580
|
typographyPresets,
|
|
8767
8581
|
useAnimatedValue,
|
package/package.json
CHANGED
package/src/core/index.ts
CHANGED
|
@@ -22,11 +22,11 @@ export type RestyleThemePair = {
|
|
|
22
22
|
};
|
|
23
23
|
|
|
24
24
|
/**
|
|
25
|
-
*
|
|
25
|
+
* Create light + dark Restyle themes from ThemeColors overrides.
|
|
26
26
|
* The most convenient way to create a custom theme pair — only specify
|
|
27
27
|
* what differs from the default semantic colors.
|
|
28
28
|
*/
|
|
29
|
-
export function
|
|
29
|
+
export function createThemePair(
|
|
30
30
|
lightOverrides: DeepPartial<ThemeColors>,
|
|
31
31
|
darkOverrides: DeepPartial<ThemeColors>,
|
|
32
32
|
): RestyleThemePair {
|
|
@@ -43,7 +43,7 @@ const horizon: RestyleThemePair = {
|
|
|
43
43
|
};
|
|
44
44
|
|
|
45
45
|
// Sage — green accents
|
|
46
|
-
const sage =
|
|
46
|
+
const sage = createThemePair(
|
|
47
47
|
{
|
|
48
48
|
accent: {
|
|
49
49
|
primary: "#6B8F6B",
|
|
@@ -71,7 +71,7 @@ const sage = buildPair(
|
|
|
71
71
|
);
|
|
72
72
|
|
|
73
73
|
// Sunset — warm coral accents
|
|
74
|
-
const sunset =
|
|
74
|
+
const sunset = createThemePair(
|
|
75
75
|
{
|
|
76
76
|
accent: {
|
|
77
77
|
primary: "#E8836B",
|
|
@@ -99,7 +99,7 @@ const sunset = buildPair(
|
|
|
99
99
|
);
|
|
100
100
|
|
|
101
101
|
// Ocean — teal accents
|
|
102
|
-
const ocean =
|
|
102
|
+
const ocean = createThemePair(
|
|
103
103
|
{
|
|
104
104
|
accent: {
|
|
105
105
|
primary: "#0E9AA5",
|
|
@@ -127,7 +127,7 @@ const ocean = buildPair(
|
|
|
127
127
|
);
|
|
128
128
|
|
|
129
129
|
// Lavender — purple accents
|
|
130
|
-
const lavender =
|
|
130
|
+
const lavender = createThemePair(
|
|
131
131
|
{
|
|
132
132
|
accent: {
|
|
133
133
|
primary: "#8B5CF6",
|
|
@@ -155,7 +155,7 @@ const lavender = buildPair(
|
|
|
155
155
|
);
|
|
156
156
|
|
|
157
157
|
// Rose — pink accents
|
|
158
|
-
const rose =
|
|
158
|
+
const rose = createThemePair(
|
|
159
159
|
{
|
|
160
160
|
accent: {
|
|
161
161
|
primary: "#E11D6C",
|
package/src/index.tsx
CHANGED
|
@@ -110,7 +110,7 @@ export {
|
|
|
110
110
|
ThemeProvider,
|
|
111
111
|
useRestyleTheme,
|
|
112
112
|
// Theme building utilities
|
|
113
|
-
|
|
113
|
+
createThemePair,
|
|
114
114
|
buildRestyleTheme,
|
|
115
115
|
buildRestyleThemeFromThemeColors,
|
|
116
116
|
restylePresetThemes,
|
|
@@ -140,19 +140,10 @@ export { en, es } from "./i18n";
|
|
|
140
140
|
// =============================================================================
|
|
141
141
|
|
|
142
142
|
export {
|
|
143
|
-
//
|
|
144
|
-
createTheme,
|
|
145
|
-
createThemePair,
|
|
146
|
-
// Built-in theme presets
|
|
143
|
+
// Default themes
|
|
147
144
|
darkTheme,
|
|
148
145
|
defaultTheme,
|
|
149
|
-
horizonTheme,
|
|
150
|
-
lavenderTheme,
|
|
151
146
|
lightTheme,
|
|
152
|
-
oceanTheme,
|
|
153
|
-
roseTheme,
|
|
154
|
-
sageTheme,
|
|
155
|
-
sunsetTheme,
|
|
156
147
|
type DeepPartial,
|
|
157
148
|
type ShadowStyle,
|
|
158
149
|
// Types
|
|
@@ -20,15 +20,3 @@ export type {
|
|
|
20
20
|
|
|
21
21
|
// Default themes
|
|
22
22
|
export { lightTheme, darkTheme, defaultTheme } from './defaultTheme';
|
|
23
|
-
|
|
24
|
-
// Theme factory
|
|
25
|
-
export {
|
|
26
|
-
createTheme,
|
|
27
|
-
createThemePair,
|
|
28
|
-
horizonTheme,
|
|
29
|
-
sageTheme,
|
|
30
|
-
sunsetTheme,
|
|
31
|
-
oceanTheme,
|
|
32
|
-
lavenderTheme,
|
|
33
|
-
roseTheme,
|
|
34
|
-
} from './createTheme';
|
package/src/providers/index.ts
CHANGED
|
@@ -1,304 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* El Sendero Design System - Theme Factory
|
|
3
|
-
*
|
|
4
|
-
* Create custom themes by extending the base theme with overrides.
|
|
5
|
-
*
|
|
6
|
-
* @example
|
|
7
|
-
* const myTheme = createTheme(defaultTheme, {
|
|
8
|
-
* colors: {
|
|
9
|
-
* accent: {
|
|
10
|
-
* primary: '#8B5CF6', // Purple accent
|
|
11
|
-
* }
|
|
12
|
-
* }
|
|
13
|
-
* });
|
|
14
|
-
*/
|
|
15
|
-
|
|
16
|
-
import { Theme, ThemeOverrides, DeepPartial } from './types';
|
|
17
|
-
import { lightTheme, darkTheme } from './defaultTheme';
|
|
18
|
-
|
|
19
|
-
// =============================================================================
|
|
20
|
-
// DEEP MERGE UTILITY
|
|
21
|
-
// =============================================================================
|
|
22
|
-
|
|
23
|
-
/**
|
|
24
|
-
* Deep merge two objects, with source values overriding target
|
|
25
|
-
*/
|
|
26
|
-
function deepMerge<T extends object>(
|
|
27
|
-
target: T,
|
|
28
|
-
source: DeepPartial<T>
|
|
29
|
-
): T {
|
|
30
|
-
const result = { ...target };
|
|
31
|
-
|
|
32
|
-
for (const key in source) {
|
|
33
|
-
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
34
|
-
const sourceValue = source[key as keyof typeof source];
|
|
35
|
-
const targetValue = (target as Record<string, unknown>)[key];
|
|
36
|
-
|
|
37
|
-
if (
|
|
38
|
-
sourceValue !== null &&
|
|
39
|
-
typeof sourceValue === 'object' &&
|
|
40
|
-
!Array.isArray(sourceValue) &&
|
|
41
|
-
targetValue !== null &&
|
|
42
|
-
typeof targetValue === 'object' &&
|
|
43
|
-
!Array.isArray(targetValue)
|
|
44
|
-
) {
|
|
45
|
-
result[key as keyof T] = deepMerge(
|
|
46
|
-
targetValue as Record<string, unknown>,
|
|
47
|
-
sourceValue as DeepPartial<Record<string, unknown>>
|
|
48
|
-
) as T[keyof T];
|
|
49
|
-
} else if (sourceValue !== undefined) {
|
|
50
|
-
result[key as keyof T] = sourceValue as T[keyof T];
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
return result;
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
// =============================================================================
|
|
59
|
-
// CREATE THEME
|
|
60
|
-
// =============================================================================
|
|
61
|
-
|
|
62
|
-
/**
|
|
63
|
-
* Create a custom theme by extending a base theme with overrides.
|
|
64
|
-
*
|
|
65
|
-
* @param baseTheme - The theme to extend (usually defaultTheme)
|
|
66
|
-
* @param overrides - Partial theme object with your customizations
|
|
67
|
-
* @returns A complete Theme object with your overrides applied
|
|
68
|
-
*
|
|
69
|
-
* @example
|
|
70
|
-
* // Create a sage-accented theme
|
|
71
|
-
* const sageTheme = createTheme(defaultTheme, {
|
|
72
|
-
* name: 'Sage',
|
|
73
|
-
* colors: {
|
|
74
|
-
* accent: {
|
|
75
|
-
* primary: '#6B8F6B',
|
|
76
|
-
* primaryHover: '#557255',
|
|
77
|
-
* primaryPressed: '#445944',
|
|
78
|
-
* }
|
|
79
|
-
* }
|
|
80
|
-
* });
|
|
81
|
-
*
|
|
82
|
-
* @example
|
|
83
|
-
* // Create a more rounded theme
|
|
84
|
-
* const softTheme = createTheme(defaultTheme, {
|
|
85
|
-
* radii: {
|
|
86
|
-
* md: 16,
|
|
87
|
-
* lg: 24,
|
|
88
|
-
* xl: 32,
|
|
89
|
-
* }
|
|
90
|
-
* });
|
|
91
|
-
*/
|
|
92
|
-
export function createTheme(
|
|
93
|
-
baseTheme: Theme,
|
|
94
|
-
overrides: ThemeOverrides
|
|
95
|
-
): Theme {
|
|
96
|
-
return deepMerge(baseTheme, overrides);
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
// =============================================================================
|
|
100
|
-
// CREATE THEME PAIR
|
|
101
|
-
// =============================================================================
|
|
102
|
-
|
|
103
|
-
/**
|
|
104
|
-
* Create both light and dark versions of a custom theme.
|
|
105
|
-
*
|
|
106
|
-
* @param overrides - Overrides to apply to both light and dark themes
|
|
107
|
-
* @param lightOverrides - Additional overrides for light theme only
|
|
108
|
-
* @param darkOverrides - Additional overrides for dark theme only
|
|
109
|
-
* @returns Object with light and dark theme variants
|
|
110
|
-
*
|
|
111
|
-
* @example
|
|
112
|
-
* const { light, dark } = createThemePair(
|
|
113
|
-
* { name: 'MyBrand' },
|
|
114
|
-
* { colors: { accent: { primary: '#A68B6A' } } }, // Light-specific
|
|
115
|
-
* { colors: { accent: { primary: '#C4A285' } } } // Dark-specific
|
|
116
|
-
* );
|
|
117
|
-
*/
|
|
118
|
-
export function createThemePair(
|
|
119
|
-
overrides: ThemeOverrides = {},
|
|
120
|
-
lightOverrides: ThemeOverrides = {},
|
|
121
|
-
darkOverrides: ThemeOverrides = {}
|
|
122
|
-
): { light: Theme; dark: Theme } {
|
|
123
|
-
return {
|
|
124
|
-
light: createTheme(
|
|
125
|
-
createTheme(lightTheme, overrides),
|
|
126
|
-
lightOverrides
|
|
127
|
-
),
|
|
128
|
-
dark: createTheme(
|
|
129
|
-
createTheme(darkTheme, overrides),
|
|
130
|
-
darkOverrides
|
|
131
|
-
),
|
|
132
|
-
};
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
// =============================================================================
|
|
136
|
-
// PRESET THEMES
|
|
137
|
-
// =============================================================================
|
|
138
|
-
|
|
139
|
-
/**
|
|
140
|
-
* Horizon Default - Blue with a calming feel
|
|
141
|
-
*/
|
|
142
|
-
export const horizonTheme = createThemePair({
|
|
143
|
-
name: 'Horizon',
|
|
144
|
-
});
|
|
145
|
-
|
|
146
|
-
/**
|
|
147
|
-
* Sage Theme - Green-focused for hope and growth
|
|
148
|
-
*/
|
|
149
|
-
export const sageTheme = createThemePair(
|
|
150
|
-
{ name: 'Sage' },
|
|
151
|
-
{
|
|
152
|
-
colors: {
|
|
153
|
-
accent: {
|
|
154
|
-
primary: '#6B8F6B',
|
|
155
|
-
primaryHover: '#557255',
|
|
156
|
-
primaryPressed: '#445944',
|
|
157
|
-
},
|
|
158
|
-
text: {
|
|
159
|
-
link: '#6B8F6B',
|
|
160
|
-
},
|
|
161
|
-
border: {
|
|
162
|
-
focus: '#6B8F6B',
|
|
163
|
-
},
|
|
164
|
-
},
|
|
165
|
-
},
|
|
166
|
-
{
|
|
167
|
-
colors: {
|
|
168
|
-
accent: {
|
|
169
|
-
primary: '#8FAF8F',
|
|
170
|
-
primaryHover: '#B3C7B3',
|
|
171
|
-
primaryPressed: '#6B8F6B',
|
|
172
|
-
},
|
|
173
|
-
text: {
|
|
174
|
-
link: '#8FAF8F',
|
|
175
|
-
},
|
|
176
|
-
border: {
|
|
177
|
-
focus: '#8FAF8F',
|
|
178
|
-
},
|
|
179
|
-
},
|
|
180
|
-
}
|
|
181
|
-
);
|
|
182
|
-
|
|
183
|
-
/**
|
|
184
|
-
* Sunset Theme - Warm coral/peach for energy and comfort
|
|
185
|
-
*/
|
|
186
|
-
export const sunsetTheme = createThemePair(
|
|
187
|
-
{ name: 'Sunset' },
|
|
188
|
-
{
|
|
189
|
-
colors: {
|
|
190
|
-
accent: {
|
|
191
|
-
primary: '#E8836B',
|
|
192
|
-
primaryHover: '#CC6B55',
|
|
193
|
-
primaryPressed: '#A85545',
|
|
194
|
-
},
|
|
195
|
-
text: {
|
|
196
|
-
link: '#E8836B',
|
|
197
|
-
},
|
|
198
|
-
border: {
|
|
199
|
-
focus: '#E8836B',
|
|
200
|
-
},
|
|
201
|
-
},
|
|
202
|
-
},
|
|
203
|
-
{
|
|
204
|
-
colors: {
|
|
205
|
-
accent: {
|
|
206
|
-
primary: '#FF9B85',
|
|
207
|
-
primaryHover: '#FFBAA8',
|
|
208
|
-
primaryPressed: '#E8836B',
|
|
209
|
-
},
|
|
210
|
-
text: {
|
|
211
|
-
link: '#FF9B85',
|
|
212
|
-
},
|
|
213
|
-
border: {
|
|
214
|
-
focus: '#FF9B85',
|
|
215
|
-
},
|
|
216
|
-
},
|
|
217
|
-
}
|
|
218
|
-
);
|
|
219
|
-
|
|
220
|
-
/**
|
|
221
|
-
* Ocean Theme - Teal/cyan accents, calming water vibes
|
|
222
|
-
*/
|
|
223
|
-
export const oceanTheme = createThemePair(
|
|
224
|
-
{
|
|
225
|
-
colors: {
|
|
226
|
-
accent: {
|
|
227
|
-
primary: '#0E9AA5',
|
|
228
|
-
primaryHover: '#0B7E87',
|
|
229
|
-
primaryPressed: '#086269',
|
|
230
|
-
},
|
|
231
|
-
text: { link: '#0E9AA5' },
|
|
232
|
-
border: { focus: '#0E9AA5' },
|
|
233
|
-
},
|
|
234
|
-
},
|
|
235
|
-
{
|
|
236
|
-
colors: {
|
|
237
|
-
accent: {
|
|
238
|
-
primary: '#2DD4BF',
|
|
239
|
-
primaryHover: '#5EEAD4',
|
|
240
|
-
primaryPressed: '#0E9AA5',
|
|
241
|
-
},
|
|
242
|
-
text: { link: '#2DD4BF' },
|
|
243
|
-
border: { focus: '#2DD4BF' },
|
|
244
|
-
},
|
|
245
|
-
}
|
|
246
|
-
);
|
|
247
|
-
|
|
248
|
-
/**
|
|
249
|
-
* Lavender Theme - Soft purple accents, relaxing and spiritual
|
|
250
|
-
*/
|
|
251
|
-
export const lavenderTheme = createThemePair(
|
|
252
|
-
{ name: 'Lavender' },
|
|
253
|
-
{
|
|
254
|
-
colors: {
|
|
255
|
-
accent: {
|
|
256
|
-
primary: '#8B5CF6',
|
|
257
|
-
primaryHover: '#7C3AED',
|
|
258
|
-
primaryPressed: '#6D28D9',
|
|
259
|
-
},
|
|
260
|
-
text: { link: '#8B5CF6' },
|
|
261
|
-
border: { focus: '#8B5CF6' },
|
|
262
|
-
},
|
|
263
|
-
},
|
|
264
|
-
{
|
|
265
|
-
colors: {
|
|
266
|
-
accent: {
|
|
267
|
-
primary: '#A78BFA',
|
|
268
|
-
primaryHover: '#C4B5FD',
|
|
269
|
-
primaryPressed: '#8B5CF6',
|
|
270
|
-
},
|
|
271
|
-
text: { link: '#A78BFA' },
|
|
272
|
-
border: { focus: '#A78BFA' },
|
|
273
|
-
},
|
|
274
|
-
}
|
|
275
|
-
);
|
|
276
|
-
|
|
277
|
-
/**
|
|
278
|
-
* Rose Theme - Warm pink/rose accents, gentle and nurturing
|
|
279
|
-
*/
|
|
280
|
-
export const roseTheme = createThemePair(
|
|
281
|
-
{ name: 'Rose' },
|
|
282
|
-
{
|
|
283
|
-
colors: {
|
|
284
|
-
accent: {
|
|
285
|
-
primary: '#E11D6C',
|
|
286
|
-
primaryHover: '#BE185D',
|
|
287
|
-
primaryPressed: '#9D174D',
|
|
288
|
-
},
|
|
289
|
-
text: { link: '#E11D6C' },
|
|
290
|
-
border: { focus: '#E11D6C' },
|
|
291
|
-
},
|
|
292
|
-
},
|
|
293
|
-
{
|
|
294
|
-
colors: {
|
|
295
|
-
accent: {
|
|
296
|
-
primary: '#F472B6',
|
|
297
|
-
primaryHover: '#F9A8D4',
|
|
298
|
-
primaryPressed: '#E11D6C',
|
|
299
|
-
},
|
|
300
|
-
text: { link: '#F472B6' },
|
|
301
|
-
border: { focus: '#F472B6' },
|
|
302
|
-
},
|
|
303
|
-
}
|
|
304
|
-
);
|