@nexara/nativeflow 0.1.8 → 0.1.10
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/lib/commonjs/assets/svg/Check.js.map +1 -1
- package/lib/commonjs/assets/svg/X.js.map +1 -1
- package/lib/commonjs/assets/svg/index.js.map +1 -1
- package/lib/commonjs/components/Avatar/AvatarImage.js.map +1 -1
- package/lib/commonjs/components/Avatar/AvatarText.js.map +1 -1
- package/lib/commonjs/components/Avatar/index.js.map +1 -1
- package/lib/commonjs/components/Button/Button.js +9 -4
- package/lib/commonjs/components/Button/Button.js.map +1 -1
- package/lib/commonjs/components/Button/utils.js +17 -10
- package/lib/commonjs/components/Button/utils.js.map +1 -1
- package/lib/commonjs/components/CheckBox/CheckBox.js.map +1 -1
- package/lib/commonjs/components/Chip/Chip.js.map +1 -1
- package/lib/commonjs/components/Chip/utils.js.map +1 -1
- package/lib/commonjs/components/Dialog/Dialog.js.map +1 -1
- package/lib/commonjs/components/Dialog/DialogBody.js.map +1 -1
- package/lib/commonjs/components/Dialog/DialogDescription.js.map +1 -1
- package/lib/commonjs/components/Dialog/DialogFoot.js.map +1 -1
- package/lib/commonjs/components/Dialog/DialogHead.js.map +1 -1
- package/lib/commonjs/components/Dialog/index.js.map +1 -1
- package/lib/commonjs/components/Divider/Divider.js.map +1 -1
- package/lib/commonjs/components/Grid/Grid.js.map +1 -1
- package/lib/commonjs/components/Icon/Icon.js.map +1 -1
- package/lib/commonjs/components/IconButton/IconButton.js.map +1 -1
- package/lib/commonjs/components/Link/Link.js.map +1 -1
- package/lib/commonjs/components/Menu/Menu.js.map +1 -1
- package/lib/commonjs/components/Menu/MenuItem.js.map +1 -1
- package/lib/commonjs/components/Menu/MenuItemLabel.js.map +1 -1
- package/lib/commonjs/components/Menu/calculations.js.map +1 -1
- package/lib/commonjs/components/Menu/index.js.map +1 -1
- package/lib/commonjs/components/Portal/Portal.js.map +1 -1
- package/lib/commonjs/components/Portal/PortalContext.js.map +1 -1
- package/lib/commonjs/components/Portal/PortalProvider.js.map +1 -1
- package/lib/commonjs/components/Progress/Progress.js.map +1 -1
- package/lib/commonjs/components/Provider/ContextManager.js.map +1 -1
- package/lib/commonjs/components/Provider/NativeProvider.js.map +1 -1
- package/lib/commonjs/components/Radio/RadioGroup.js.map +1 -1
- package/lib/commonjs/components/Radio/RadioItem.js.map +1 -1
- package/lib/commonjs/components/Radio/index.js.map +1 -1
- package/lib/commonjs/components/Slider/Slider.js.map +1 -1
- package/lib/commonjs/components/Stack/HStack.js.map +1 -1
- package/lib/commonjs/components/Stack/VStack.js.map +1 -1
- package/lib/commonjs/components/Stack/index.js.map +1 -1
- package/lib/commonjs/components/StyledComponents/StyledText.js +3 -1
- package/lib/commonjs/components/StyledComponents/StyledText.js.map +1 -1
- package/lib/commonjs/components/StyledComponents/StyledView.js.map +1 -1
- package/lib/commonjs/components/StyledComponents/index.js.map +1 -1
- package/lib/commonjs/components/Surface/Surface.js +3 -3
- package/lib/commonjs/components/Surface/Surface.js.map +1 -1
- package/lib/commonjs/components/Switch/Switch.js.map +1 -1
- package/lib/commonjs/components/TouchableRipple/TouchableRipple.js.map +1 -1
- package/lib/commonjs/components/UserInput/UserInput.js.map +1 -1
- package/lib/commonjs/components/UserInput/UserInputV2.js.map +1 -1
- package/lib/commonjs/components/UserInput/generateColors.js.map +1 -1
- package/lib/commonjs/constants/breakPoints.js.map +1 -1
- package/lib/commonjs/constants/dialogSizes.js.map +1 -1
- package/lib/commonjs/constants/index.js.map +1 -1
- package/lib/commonjs/constants/theme.js.map +1 -1
- package/lib/commonjs/constants/typographySizes.js.map +1 -1
- package/lib/commonjs/helpers/CalculateGridSize.js +1 -1
- package/lib/commonjs/helpers/CalculateGridSize.js.map +1 -1
- package/lib/commonjs/helpers/DeviceSizeCategory.js.map +1 -1
- package/lib/commonjs/helpers/ResponsiveCalculations.js +4 -1
- package/lib/commonjs/helpers/ResponsiveCalculations.js.map +1 -1
- package/lib/commonjs/helpers/index.js.map +1 -1
- package/lib/commonjs/hooks/index.js.map +1 -1
- package/lib/commonjs/hooks/useColorScheme.js.map +1 -1
- package/lib/commonjs/hooks/useConditionalWindowDimension.js.map +1 -1
- package/lib/commonjs/hooks/useScalingMode.js.map +1 -1
- package/lib/commonjs/hooks/useTheme.js.map +1 -1
- package/lib/commonjs/index.d.js.map +1 -1
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/themes/DarkTheme.js.map +1 -1
- package/lib/commonjs/themes/LightTheme.js.map +1 -1
- package/lib/commonjs/themes/index.js.map +1 -1
- package/lib/commonjs/types/avatar.type.js.map +1 -1
- package/lib/commonjs/types/button.type.js.map +1 -1
- package/lib/commonjs/types/checkbox.type.js.map +1 -1
- package/lib/commonjs/types/chip.type.js.map +1 -1
- package/lib/commonjs/types/common.type.js.map +1 -1
- package/lib/commonjs/types/dialog.type.js.map +1 -1
- package/lib/commonjs/types/divider.type.js.map +1 -1
- package/lib/commonjs/types/grid.type.js.map +1 -1
- package/lib/commonjs/types/index.js.map +1 -1
- package/lib/commonjs/types/link.type.js.map +1 -1
- package/lib/commonjs/types/menu.type.js.map +1 -1
- package/lib/commonjs/types/progress.type.js.map +1 -1
- package/lib/commonjs/types/radio.type.js.map +1 -1
- package/lib/commonjs/types/stack.type.js.map +1 -1
- package/lib/commonjs/types/styledComponents.type.js.map +1 -1
- package/lib/commonjs/types/surface.type.js.map +1 -1
- package/lib/commonjs/types/switch.type.js.map +1 -1
- package/lib/commonjs/types/userInput.type.js.map +1 -1
- package/lib/commonjs/utils/index.js.map +1 -1
- package/lib/module/assets/svg/Check.js.map +1 -1
- package/lib/module/assets/svg/X.js.map +1 -1
- package/lib/module/assets/svg/index.js.map +1 -1
- package/lib/module/components/Avatar/AvatarImage.js.map +1 -1
- package/lib/module/components/Avatar/AvatarText.js.map +1 -1
- package/lib/module/components/Avatar/index.js.map +1 -1
- package/lib/module/components/Button/Button.js +10 -5
- package/lib/module/components/Button/Button.js.map +1 -1
- package/lib/module/components/Button/utils.js +17 -10
- package/lib/module/components/Button/utils.js.map +1 -1
- package/lib/module/components/CheckBox/CheckBox.js.map +1 -1
- package/lib/module/components/Chip/Chip.js.map +1 -1
- package/lib/module/components/Chip/utils.js.map +1 -1
- package/lib/module/components/Dialog/Dialog.js.map +1 -1
- package/lib/module/components/Dialog/DialogBody.js.map +1 -1
- package/lib/module/components/Dialog/DialogDescription.js.map +1 -1
- package/lib/module/components/Dialog/DialogFoot.js.map +1 -1
- package/lib/module/components/Dialog/DialogHead.js.map +1 -1
- package/lib/module/components/Dialog/index.js.map +1 -1
- package/lib/module/components/Divider/Divider.js.map +1 -1
- package/lib/module/components/Grid/Grid.js.map +1 -1
- package/lib/module/components/Icon/Icon.js.map +1 -1
- package/lib/module/components/IconButton/IconButton.js.map +1 -1
- package/lib/module/components/Link/Link.js.map +1 -1
- package/lib/module/components/Menu/Menu.js.map +1 -1
- package/lib/module/components/Menu/MenuItem.js.map +1 -1
- package/lib/module/components/Menu/MenuItemLabel.js.map +1 -1
- package/lib/module/components/Menu/calculations.js.map +1 -1
- package/lib/module/components/Menu/index.js.map +1 -1
- package/lib/module/components/Portal/Portal.js.map +1 -1
- package/lib/module/components/Portal/PortalContext.js.map +1 -1
- package/lib/module/components/Portal/PortalProvider.js.map +1 -1
- package/lib/module/components/Progress/Progress.js.map +1 -1
- package/lib/module/components/Provider/ContextManager.js.map +1 -1
- package/lib/module/components/Provider/NativeProvider.js.map +1 -1
- package/lib/module/components/Radio/RadioGroup.js.map +1 -1
- package/lib/module/components/Radio/RadioItem.js.map +1 -1
- package/lib/module/components/Radio/index.js.map +1 -1
- package/lib/module/components/Slider/Slider.js.map +1 -1
- package/lib/module/components/Stack/HStack.js.map +1 -1
- package/lib/module/components/Stack/VStack.js.map +1 -1
- package/lib/module/components/Stack/index.js.map +1 -1
- package/lib/module/components/StyledComponents/StyledText.js +3 -1
- package/lib/module/components/StyledComponents/StyledText.js.map +1 -1
- package/lib/module/components/StyledComponents/StyledView.js.map +1 -1
- package/lib/module/components/StyledComponents/index.js.map +1 -1
- package/lib/module/components/Surface/Surface.js +3 -3
- package/lib/module/components/Surface/Surface.js.map +1 -1
- package/lib/module/components/Switch/Switch.js.map +1 -1
- package/lib/module/components/TouchableRipple/TouchableRipple.js.map +1 -1
- package/lib/module/components/UserInput/UserInput.js.map +1 -1
- package/lib/module/components/UserInput/UserInputV2.js.map +1 -1
- package/lib/module/components/UserInput/generateColors.js.map +1 -1
- package/lib/module/constants/breakPoints.js.map +1 -1
- package/lib/module/constants/dialogSizes.js.map +1 -1
- package/lib/module/constants/index.js.map +1 -1
- package/lib/module/constants/theme.js.map +1 -1
- package/lib/module/constants/typographySizes.js.map +1 -1
- package/lib/module/helpers/CalculateGridSize.js +1 -1
- package/lib/module/helpers/CalculateGridSize.js.map +1 -1
- package/lib/module/helpers/DeviceSizeCategory.js.map +1 -1
- package/lib/module/helpers/ResponsiveCalculations.js +4 -1
- package/lib/module/helpers/ResponsiveCalculations.js.map +1 -1
- package/lib/module/helpers/index.js.map +1 -1
- package/lib/module/hooks/index.js.map +1 -1
- package/lib/module/hooks/useColorScheme.js.map +1 -1
- package/lib/module/hooks/useConditionalWindowDimension.js.map +1 -1
- package/lib/module/hooks/useScalingMode.js.map +1 -1
- package/lib/module/hooks/useTheme.js.map +1 -1
- package/lib/module/index.d.js.map +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/themes/DarkTheme.js.map +1 -1
- package/lib/module/themes/LightTheme.js.map +1 -1
- package/lib/module/themes/index.js.map +1 -1
- package/lib/module/types/avatar.type.js.map +1 -1
- package/lib/module/types/button.type.js.map +1 -1
- package/lib/module/types/checkbox.type.js.map +1 -1
- package/lib/module/types/chip.type.js.map +1 -1
- package/lib/module/types/common.type.js.map +1 -1
- package/lib/module/types/dialog.type.js.map +1 -1
- package/lib/module/types/divider.type.js.map +1 -1
- package/lib/module/types/grid.type.js.map +1 -1
- package/lib/module/types/index.js.map +1 -1
- package/lib/module/types/link.type.js.map +1 -1
- package/lib/module/types/menu.type.js.map +1 -1
- package/lib/module/types/progress.type.js.map +1 -1
- package/lib/module/types/radio.type.js.map +1 -1
- package/lib/module/types/stack.type.js.map +1 -1
- package/lib/module/types/styledComponents.type.js.map +1 -1
- package/lib/module/types/surface.type.js.map +1 -1
- package/lib/module/types/switch.type.js.map +1 -1
- package/lib/module/types/userInput.type.js.map +1 -1
- package/lib/module/utils/index.js.map +1 -1
- package/lib/typescript/commonjs/src/components/Button/Button.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/Button/utils.d.ts +2 -1
- package/lib/typescript/commonjs/src/components/Button/utils.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/UserInput/UserInput.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/helpers/ResponsiveCalculations.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/types/button.type.d.ts +2 -0
- package/lib/typescript/commonjs/src/types/button.type.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/types/surface.type.d.ts +1 -1
- package/lib/typescript/commonjs/src/types/surface.type.d.ts.map +1 -1
- package/lib/typescript/module/src/components/Button/Button.d.ts.map +1 -1
- package/lib/typescript/module/src/components/Button/utils.d.ts +2 -1
- package/lib/typescript/module/src/components/Button/utils.d.ts.map +1 -1
- package/lib/typescript/module/src/components/UserInput/UserInput.d.ts.map +1 -1
- package/lib/typescript/module/src/helpers/ResponsiveCalculations.d.ts.map +1 -1
- package/lib/typescript/module/src/types/button.type.d.ts +2 -0
- package/lib/typescript/module/src/types/button.type.d.ts.map +1 -1
- package/lib/typescript/module/src/types/surface.type.d.ts +1 -1
- package/lib/typescript/module/src/types/surface.type.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/assets/svg/Check.tsx +16 -16
- package/src/assets/svg/X.tsx +15 -15
- package/src/assets/svg/index.ts +1 -1
- package/src/components/Avatar/AvatarImage.tsx +33 -33
- package/src/components/Avatar/AvatarText.tsx +34 -34
- package/src/components/Avatar/index.ts +8 -8
- package/src/components/Button/Button.tsx +216 -205
- package/src/components/Button/utils.ts +152 -141
- package/src/components/CheckBox/CheckBox.tsx +118 -118
- package/src/components/Chip/Chip.tsx +82 -82
- package/src/components/Chip/utils.ts +109 -109
- package/src/components/Dialog/Dialog.tsx +124 -124
- package/src/components/Dialog/DialogBody.tsx +31 -31
- package/src/components/Dialog/DialogDescription.tsx +27 -27
- package/src/components/Dialog/DialogFoot.tsx +35 -35
- package/src/components/Dialog/DialogHead.tsx +50 -50
- package/src/components/Dialog/index.ts +10 -10
- package/src/components/Divider/Divider.tsx +22 -22
- package/src/components/Grid/Grid.tsx +61 -61
- package/src/components/Icon/Icon.tsx +31 -31
- package/src/components/IconButton/IconButton.tsx +44 -44
- package/src/components/Link/Link.tsx +38 -38
- package/src/components/Menu/Menu.tsx +142 -142
- package/src/components/Menu/MenuItem.tsx +33 -33
- package/src/components/Menu/MenuItemLabel.tsx +21 -21
- package/src/components/Menu/calculations.ts +33 -33
- package/src/components/Menu/index.ts +7 -7
- package/src/components/Portal/Portal.tsx +18 -18
- package/src/components/Portal/PortalContext.tsx +9 -9
- package/src/components/Portal/PortalProvider.tsx +36 -36
- package/src/components/Progress/Progress.tsx +66 -66
- package/src/components/Provider/ContextManager.tsx +8 -8
- package/src/components/Provider/NativeProvider.tsx +72 -72
- package/src/components/Radio/RadioGroup.tsx +39 -39
- package/src/components/Radio/RadioItem.tsx +72 -72
- package/src/components/Radio/index.ts +8 -8
- package/src/components/Slider/Slider.tsx +45 -45
- package/src/components/Stack/HStack.tsx +32 -32
- package/src/components/Stack/VStack.tsx +26 -26
- package/src/components/Stack/index.ts +8 -8
- package/src/components/StyledComponents/StyledText.tsx +49 -49
- package/src/components/StyledComponents/StyledView.tsx +44 -44
- package/src/components/StyledComponents/index.tsx +5 -5
- package/src/components/Surface/Surface.tsx +31 -31
- package/src/components/Switch/Switch.tsx +36 -36
- package/src/components/TouchableRipple/TouchableRipple.tsx +92 -92
- package/src/components/UserInput/UserInput.tsx +135 -135
- package/src/components/UserInput/UserInputV2.tsx +132 -132
- package/src/components/UserInput/generateColors.ts +13 -13
- package/src/constants/breakPoints.ts +17 -17
- package/src/constants/dialogSizes.ts +11 -11
- package/src/constants/index.ts +2 -2
- package/src/constants/theme.ts +32 -32
- package/src/constants/typographySizes.ts +19 -19
- package/src/helpers/CalculateGridSize.ts +25 -25
- package/src/helpers/DeviceSizeCategory.ts +21 -21
- package/src/helpers/ResponsiveCalculations.ts +107 -104
- package/src/helpers/index.ts +2 -2
- package/src/hooks/index.ts +3 -3
- package/src/hooks/useColorScheme.tsx +11 -11
- package/src/hooks/useConditionalWindowDimension.tsx +7 -7
- package/src/hooks/useScalingMode.tsx +6 -6
- package/src/hooks/useTheme.tsx +12 -12
- package/src/index.d.ts +2 -2
- package/src/index.ts +52 -52
- package/src/themes/DarkTheme.ts +177 -177
- package/src/themes/LightTheme.ts +88 -88
- package/src/themes/index.ts +3 -3
- package/src/types/avatar.type.ts +40 -40
- package/src/types/button.type.ts +79 -76
- package/src/types/checkbox.type.ts +64 -64
- package/src/types/chip.type.ts +65 -65
- package/src/types/common.type.ts +109 -109
- package/src/types/dialog.type.ts +89 -89
- package/src/types/divider.type.ts +15 -15
- package/src/types/grid.type.ts +71 -71
- package/src/types/index.ts +16 -16
- package/src/types/link.type.ts +14 -14
- package/src/types/menu.type.ts +100 -100
- package/src/types/progress.type.ts +15 -15
- package/src/types/radio.type.ts +78 -78
- package/src/types/stack.type.ts +46 -46
- package/src/types/styledComponents.type.ts +70 -70
- package/src/types/surface.type.ts +19 -19
- package/src/types/switch.type.ts +39 -39
- package/src/types/userInput.type.ts +98 -98
package/src/types/button.type.ts
CHANGED
|
@@ -1,77 +1,80 @@
|
|
|
1
|
-
import type { StyleProp, TextStyle, TouchableOpacityProps, ViewStyle } from "react-native";
|
|
2
|
-
import type { ButtonVariant, TypographyScale } from "./common.type";
|
|
3
|
-
import type { JSX } from "react";
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* @see https://rn-nativeflow-docs.onrender.com/docs/components/button
|
|
7
|
-
*/
|
|
8
|
-
export type ButtonProps = TouchableOpacityProps & {
|
|
9
|
-
/** Specifies the button style variant (e.g., 'contained', 'outlined') */
|
|
10
|
-
variant?: ButtonVariant;
|
|
11
|
-
|
|
12
|
-
/** Determines button shape - 'round' or 'flat' */
|
|
13
|
-
type?: 'round' | 'flat';
|
|
14
|
-
|
|
15
|
-
/** Expands the button to occupy the full available width */
|
|
16
|
-
fullWidth?: boolean;
|
|
17
|
-
|
|
18
|
-
/** Horizontal padding inside the button */
|
|
19
|
-
paddingH?: number;
|
|
20
|
-
|
|
21
|
-
/** Vertical padding inside the button */
|
|
22
|
-
paddingV?: number;
|
|
23
|
-
|
|
24
|
-
/** Custom background color (applies to contained buttons) */
|
|
25
|
-
bg?: string;
|
|
26
|
-
|
|
27
|
-
/** Border radius of the button */
|
|
28
|
-
br?: number;
|
|
29
|
-
|
|
30
|
-
/** Border width (used in outlined variant) */
|
|
31
|
-
stroke?: number;
|
|
32
|
-
|
|
33
|
-
/** Border color (used in outlined variant) */
|
|
34
|
-
strokeColor?: string;
|
|
35
|
-
|
|
36
|
-
/** Text (label) color */
|
|
37
|
-
titleColor?: string;
|
|
38
|
-
|
|
39
|
-
/** Text (label) displayed on the button */
|
|
40
|
-
title?: string;
|
|
41
|
-
|
|
42
|
-
/** Font size of the button text */
|
|
43
|
-
fs?: number;
|
|
44
|
-
|
|
45
|
-
/** Typography scale (h1, h2, body, caption, etc.) */
|
|
46
|
-
fScale?: TypographyScale;
|
|
47
|
-
|
|
48
|
-
/** Font family for the button text */
|
|
49
|
-
ff?: string;
|
|
50
|
-
|
|
51
|
-
/** Size of the button (applies when `type="round"`) */
|
|
52
|
-
size?: number;
|
|
53
|
-
|
|
54
|
-
/** Ripple effect color for button press feedback */
|
|
55
|
-
rippleColor?: string;
|
|
56
|
-
|
|
57
|
-
/** Single icon element placed at the center (used mostly in round buttons) */
|
|
58
|
-
renderIcon?: JSX.Element;
|
|
59
|
-
|
|
60
|
-
/** Icon displayed before the button text */
|
|
61
|
-
renderLeftIcon?: JSX.Element;
|
|
62
|
-
|
|
63
|
-
/** Icon displayed after the button text */
|
|
64
|
-
renderRightIcon?: JSX.Element;
|
|
65
|
-
|
|
66
|
-
/** Disables the button when true */
|
|
67
|
-
disabled?: boolean;
|
|
68
|
-
|
|
69
|
-
/**
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
/** Custom styles for the
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
/**
|
|
76
|
-
|
|
1
|
+
import type { StyleProp, TextStyle, TouchableOpacityProps, ViewStyle } from "react-native";
|
|
2
|
+
import type { ButtonVariant, TypographyScale } from "./common.type";
|
|
3
|
+
import type { JSX } from "react";
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* @see https://rn-nativeflow-docs.onrender.com/docs/components/button
|
|
7
|
+
*/
|
|
8
|
+
export type ButtonProps = TouchableOpacityProps & {
|
|
9
|
+
/** Specifies the button style variant (e.g., 'contained', 'outlined') */
|
|
10
|
+
variant?: ButtonVariant;
|
|
11
|
+
|
|
12
|
+
/** Determines button shape - 'round' or 'flat' */
|
|
13
|
+
type?: 'round' | 'flat';
|
|
14
|
+
|
|
15
|
+
/** Expands the button to occupy the full available width */
|
|
16
|
+
fullWidth?: boolean;
|
|
17
|
+
|
|
18
|
+
/** Horizontal padding inside the button */
|
|
19
|
+
paddingH?: number;
|
|
20
|
+
|
|
21
|
+
/** Vertical padding inside the button */
|
|
22
|
+
paddingV?: number;
|
|
23
|
+
|
|
24
|
+
/** Custom background color (applies to contained buttons) */
|
|
25
|
+
bg?: string;
|
|
26
|
+
|
|
27
|
+
/** Border radius of the button */
|
|
28
|
+
br?: number;
|
|
29
|
+
|
|
30
|
+
/** Border width (used in outlined variant) */
|
|
31
|
+
stroke?: number;
|
|
32
|
+
|
|
33
|
+
/** Border color (used in outlined variant) */
|
|
34
|
+
strokeColor?: string;
|
|
35
|
+
|
|
36
|
+
/** Text (label) color */
|
|
37
|
+
titleColor?: string;
|
|
38
|
+
|
|
39
|
+
/** Text (label) displayed on the button */
|
|
40
|
+
title?: string;
|
|
41
|
+
|
|
42
|
+
/** Font size of the button text */
|
|
43
|
+
fs?: number;
|
|
44
|
+
|
|
45
|
+
/** Typography scale (h1, h2, body, caption, etc.) */
|
|
46
|
+
fScale?: TypographyScale;
|
|
47
|
+
|
|
48
|
+
/** Font family for the button text */
|
|
49
|
+
ff?: string;
|
|
50
|
+
|
|
51
|
+
/** Size of the button (applies when `type="round"`) */
|
|
52
|
+
size?: number;
|
|
53
|
+
|
|
54
|
+
/** Ripple effect color for button press feedback */
|
|
55
|
+
rippleColor?: string;
|
|
56
|
+
|
|
57
|
+
/** Single icon element placed at the center (used mostly in round buttons) */
|
|
58
|
+
renderIcon?: JSX.Element;
|
|
59
|
+
|
|
60
|
+
/** Icon displayed before the button text */
|
|
61
|
+
renderLeftIcon?: JSX.Element;
|
|
62
|
+
|
|
63
|
+
/** Icon displayed after the button text */
|
|
64
|
+
renderRightIcon?: JSX.Element;
|
|
65
|
+
|
|
66
|
+
/** Disables the button when true */
|
|
67
|
+
disabled?: boolean;
|
|
68
|
+
|
|
69
|
+
/** Shows loading state when true */
|
|
70
|
+
loading?: boolean;
|
|
71
|
+
|
|
72
|
+
/** Custom styles for the button container */
|
|
73
|
+
containerStyle?: StyleProp<ViewStyle>;
|
|
74
|
+
|
|
75
|
+
/** Custom styles for the title text */
|
|
76
|
+
titleStyle?: StyleProp<TextStyle>;
|
|
77
|
+
|
|
78
|
+
/** Function to execute when button is pressed */
|
|
79
|
+
onPress?: () => void;
|
|
77
80
|
};
|
|
@@ -1,64 +1,64 @@
|
|
|
1
|
-
import type { StyleProp, TextStyle, ViewStyle } from "react-native";
|
|
2
|
-
import type { TypographyScale } from "./common.type";
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Props for the CheckBox component
|
|
6
|
-
*/
|
|
7
|
-
export type CheckBoxProps = {
|
|
8
|
-
/** Shape of the checkbox: 'square' or 'round' */
|
|
9
|
-
variant?: 'square' | 'round';
|
|
10
|
-
|
|
11
|
-
/** Current checked state (for controlled component) */
|
|
12
|
-
isChecked?: boolean;
|
|
13
|
-
|
|
14
|
-
/** Default checked state (for uncontrolled component) */
|
|
15
|
-
defaultValue?: boolean;
|
|
16
|
-
|
|
17
|
-
/** Background color when the checkbox is active (checked) */
|
|
18
|
-
activeBgColor?: string;
|
|
19
|
-
|
|
20
|
-
/** Background color when the checkbox is inactive (unchecked) */
|
|
21
|
-
inActiveBgColor?: string;
|
|
22
|
-
|
|
23
|
-
/** Color of the checkmark icon */
|
|
24
|
-
iconColor?: string;
|
|
25
|
-
|
|
26
|
-
/** Disables built-in state handling (for controlled usage) */
|
|
27
|
-
disableBuiltInState?: boolean;
|
|
28
|
-
|
|
29
|
-
/** Disables the checkbox, preventing user interaction */
|
|
30
|
-
disabled?: boolean;
|
|
31
|
-
|
|
32
|
-
/** Text label displayed next to the checkbox */
|
|
33
|
-
label?: string;
|
|
34
|
-
|
|
35
|
-
/** Typography scale for the label text (maps to your design system) */
|
|
36
|
-
fScale?: TypographyScale;
|
|
37
|
-
|
|
38
|
-
/** Font size of the label text (overrides fScale if provided) */
|
|
39
|
-
fs?: number;
|
|
40
|
-
|
|
41
|
-
/** Font family for the label text */
|
|
42
|
-
ff?: string;
|
|
43
|
-
|
|
44
|
-
/** Size of the checkbox (width & height) */
|
|
45
|
-
size?: number;
|
|
46
|
-
|
|
47
|
-
/** Size of the checkmark icon inside the checkbox */
|
|
48
|
-
iconSize?: number;
|
|
49
|
-
|
|
50
|
-
/** Custom styles for the outer container of checkbox + label */
|
|
51
|
-
containerStyle?: StyleProp<ViewStyle>;
|
|
52
|
-
|
|
53
|
-
/** Custom styles for the checkbox itself */
|
|
54
|
-
checkBoxStyle?: StyleProp<ViewStyle>;
|
|
55
|
-
|
|
56
|
-
/** Custom styles for the label text */
|
|
57
|
-
labelStyle?: StyleProp<TextStyle>;
|
|
58
|
-
|
|
59
|
-
/**
|
|
60
|
-
* Callback triggered when the checkbox is pressed.
|
|
61
|
-
* @param checked - The new checked state (true/false)
|
|
62
|
-
*/
|
|
63
|
-
onPress?: (checked: boolean) => void;
|
|
64
|
-
};
|
|
1
|
+
import type { StyleProp, TextStyle, ViewStyle } from "react-native";
|
|
2
|
+
import type { TypographyScale } from "./common.type";
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Props for the CheckBox component
|
|
6
|
+
*/
|
|
7
|
+
export type CheckBoxProps = {
|
|
8
|
+
/** Shape of the checkbox: 'square' or 'round' */
|
|
9
|
+
variant?: 'square' | 'round';
|
|
10
|
+
|
|
11
|
+
/** Current checked state (for controlled component) */
|
|
12
|
+
isChecked?: boolean;
|
|
13
|
+
|
|
14
|
+
/** Default checked state (for uncontrolled component) */
|
|
15
|
+
defaultValue?: boolean;
|
|
16
|
+
|
|
17
|
+
/** Background color when the checkbox is active (checked) */
|
|
18
|
+
activeBgColor?: string;
|
|
19
|
+
|
|
20
|
+
/** Background color when the checkbox is inactive (unchecked) */
|
|
21
|
+
inActiveBgColor?: string;
|
|
22
|
+
|
|
23
|
+
/** Color of the checkmark icon */
|
|
24
|
+
iconColor?: string;
|
|
25
|
+
|
|
26
|
+
/** Disables built-in state handling (for controlled usage) */
|
|
27
|
+
disableBuiltInState?: boolean;
|
|
28
|
+
|
|
29
|
+
/** Disables the checkbox, preventing user interaction */
|
|
30
|
+
disabled?: boolean;
|
|
31
|
+
|
|
32
|
+
/** Text label displayed next to the checkbox */
|
|
33
|
+
label?: string;
|
|
34
|
+
|
|
35
|
+
/** Typography scale for the label text (maps to your design system) */
|
|
36
|
+
fScale?: TypographyScale;
|
|
37
|
+
|
|
38
|
+
/** Font size of the label text (overrides fScale if provided) */
|
|
39
|
+
fs?: number;
|
|
40
|
+
|
|
41
|
+
/** Font family for the label text */
|
|
42
|
+
ff?: string;
|
|
43
|
+
|
|
44
|
+
/** Size of the checkbox (width & height) */
|
|
45
|
+
size?: number;
|
|
46
|
+
|
|
47
|
+
/** Size of the checkmark icon inside the checkbox */
|
|
48
|
+
iconSize?: number;
|
|
49
|
+
|
|
50
|
+
/** Custom styles for the outer container of checkbox + label */
|
|
51
|
+
containerStyle?: StyleProp<ViewStyle>;
|
|
52
|
+
|
|
53
|
+
/** Custom styles for the checkbox itself */
|
|
54
|
+
checkBoxStyle?: StyleProp<ViewStyle>;
|
|
55
|
+
|
|
56
|
+
/** Custom styles for the label text */
|
|
57
|
+
labelStyle?: StyleProp<TextStyle>;
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* Callback triggered when the checkbox is pressed.
|
|
61
|
+
* @param checked - The new checked state (true/false)
|
|
62
|
+
*/
|
|
63
|
+
onPress?: (checked: boolean) => void;
|
|
64
|
+
};
|
package/src/types/chip.type.ts
CHANGED
|
@@ -1,65 +1,65 @@
|
|
|
1
|
-
import type { JSX } from "react";
|
|
2
|
-
import type { StyleProp, TextStyle, ViewStyle, TouchableOpacityProps } from "react-native";
|
|
3
|
-
import type { TypographyScale } from "./common.type";
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Props for the Chip component
|
|
7
|
-
*/
|
|
8
|
-
export type ChipProps = TouchableOpacityProps & {
|
|
9
|
-
/** Text displayed inside the chip */
|
|
10
|
-
label?: string;
|
|
11
|
-
|
|
12
|
-
/** Background color of the chip */
|
|
13
|
-
bg?: string;
|
|
14
|
-
|
|
15
|
-
/** Color of the label text */
|
|
16
|
-
labelColor?: string;
|
|
17
|
-
|
|
18
|
-
/** Font size of the label text (overrides fScale if provided) */
|
|
19
|
-
fs?: number;
|
|
20
|
-
|
|
21
|
-
/** Typography scale of the label text (e.g., xs, sm, md, lg, xl) */
|
|
22
|
-
fScale?: TypographyScale;
|
|
23
|
-
|
|
24
|
-
/** Font family for the label text */
|
|
25
|
-
ff?: string;
|
|
26
|
-
|
|
27
|
-
/** Border radius of the chip */
|
|
28
|
-
br?: number;
|
|
29
|
-
|
|
30
|
-
/** Spacing between elements inside the chip */
|
|
31
|
-
gap?: number;
|
|
32
|
-
|
|
33
|
-
/** Vertical padding inside the chip */
|
|
34
|
-
paddingV?: number;
|
|
35
|
-
|
|
36
|
-
/** Horizontal padding inside the chip */
|
|
37
|
-
paddingH?: number;
|
|
38
|
-
|
|
39
|
-
/** Border width of the chip */
|
|
40
|
-
stroke?: number;
|
|
41
|
-
|
|
42
|
-
/** Border color of the chip */
|
|
43
|
-
strokeColor?: string;
|
|
44
|
-
|
|
45
|
-
/** Ripple effect color when pressed */
|
|
46
|
-
rippleColor?: string;
|
|
47
|
-
|
|
48
|
-
/** Disables the chip, preventing interaction */
|
|
49
|
-
disabled?: boolean;
|
|
50
|
-
|
|
51
|
-
/** Indicates the chip is active (for styling purposes) */
|
|
52
|
-
active?: boolean;
|
|
53
|
-
|
|
54
|
-
/** Icon element to render on the left side of the chip */
|
|
55
|
-
renderLeftIcon?: JSX.Element;
|
|
56
|
-
|
|
57
|
-
/** Icon element to render on the right side of the chip */
|
|
58
|
-
renderRightIcon?: JSX.Element;
|
|
59
|
-
|
|
60
|
-
/** Custom styles for the chip container */
|
|
61
|
-
containerStyle?: StyleProp<ViewStyle>;
|
|
62
|
-
|
|
63
|
-
/** Custom styles for the label text */
|
|
64
|
-
textStyle?: StyleProp<TextStyle>;
|
|
65
|
-
};
|
|
1
|
+
import type { JSX } from "react";
|
|
2
|
+
import type { StyleProp, TextStyle, ViewStyle, TouchableOpacityProps } from "react-native";
|
|
3
|
+
import type { TypographyScale } from "./common.type";
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Props for the Chip component
|
|
7
|
+
*/
|
|
8
|
+
export type ChipProps = TouchableOpacityProps & {
|
|
9
|
+
/** Text displayed inside the chip */
|
|
10
|
+
label?: string;
|
|
11
|
+
|
|
12
|
+
/** Background color of the chip */
|
|
13
|
+
bg?: string;
|
|
14
|
+
|
|
15
|
+
/** Color of the label text */
|
|
16
|
+
labelColor?: string;
|
|
17
|
+
|
|
18
|
+
/** Font size of the label text (overrides fScale if provided) */
|
|
19
|
+
fs?: number;
|
|
20
|
+
|
|
21
|
+
/** Typography scale of the label text (e.g., xs, sm, md, lg, xl) */
|
|
22
|
+
fScale?: TypographyScale;
|
|
23
|
+
|
|
24
|
+
/** Font family for the label text */
|
|
25
|
+
ff?: string;
|
|
26
|
+
|
|
27
|
+
/** Border radius of the chip */
|
|
28
|
+
br?: number;
|
|
29
|
+
|
|
30
|
+
/** Spacing between elements inside the chip */
|
|
31
|
+
gap?: number;
|
|
32
|
+
|
|
33
|
+
/** Vertical padding inside the chip */
|
|
34
|
+
paddingV?: number;
|
|
35
|
+
|
|
36
|
+
/** Horizontal padding inside the chip */
|
|
37
|
+
paddingH?: number;
|
|
38
|
+
|
|
39
|
+
/** Border width of the chip */
|
|
40
|
+
stroke?: number;
|
|
41
|
+
|
|
42
|
+
/** Border color of the chip */
|
|
43
|
+
strokeColor?: string;
|
|
44
|
+
|
|
45
|
+
/** Ripple effect color when pressed */
|
|
46
|
+
rippleColor?: string;
|
|
47
|
+
|
|
48
|
+
/** Disables the chip, preventing interaction */
|
|
49
|
+
disabled?: boolean;
|
|
50
|
+
|
|
51
|
+
/** Indicates the chip is active (for styling purposes) */
|
|
52
|
+
active?: boolean;
|
|
53
|
+
|
|
54
|
+
/** Icon element to render on the left side of the chip */
|
|
55
|
+
renderLeftIcon?: JSX.Element;
|
|
56
|
+
|
|
57
|
+
/** Icon element to render on the right side of the chip */
|
|
58
|
+
renderRightIcon?: JSX.Element;
|
|
59
|
+
|
|
60
|
+
/** Custom styles for the chip container */
|
|
61
|
+
containerStyle?: StyleProp<ViewStyle>;
|
|
62
|
+
|
|
63
|
+
/** Custom styles for the label text */
|
|
64
|
+
textStyle?: StyleProp<TextStyle>;
|
|
65
|
+
};
|
package/src/types/common.type.ts
CHANGED
|
@@ -1,109 +1,109 @@
|
|
|
1
|
-
import type { typographySizeTypes } from "../constants/typographySizes";
|
|
2
|
-
|
|
3
|
-
export type UserInputVariant = 'outlined' | 'standard';
|
|
4
|
-
export type DialogVariant = 'classic' | 'default';
|
|
5
|
-
export type ButtonVariant = 'outlined' | 'contained';
|
|
6
|
-
// export type TypographyVariant = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'h7';
|
|
7
|
-
export type TypographyScale = 'xxs' | 'xs' | 'sm' | 'base' | 'lg' | 'xl' | '2xl' | '3xl' | '4xl' | '5xl' | '6xl';
|
|
8
|
-
export type TypographyVariant = keyof ThemeColorTypes['typography'];
|
|
9
|
-
export type themeModeTypes = 'light' | 'dark';
|
|
10
|
-
export type scalingModeTypes = 'full' | 'partial';
|
|
11
|
-
|
|
12
|
-
export type dialogSizesTypes = {
|
|
13
|
-
xs: number,
|
|
14
|
-
sm: number,
|
|
15
|
-
md: number,
|
|
16
|
-
lg: number,
|
|
17
|
-
full: number,
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
type ColorPalette = {
|
|
21
|
-
natural: {
|
|
22
|
-
0: string;
|
|
23
|
-
50: string;
|
|
24
|
-
100: string;
|
|
25
|
-
200: string;
|
|
26
|
-
300: string;
|
|
27
|
-
400: string;
|
|
28
|
-
500: string;
|
|
29
|
-
600: string;
|
|
30
|
-
700: string;
|
|
31
|
-
800: string;
|
|
32
|
-
900: string;
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
type ThemeColorTypes = {
|
|
36
|
-
|
|
37
|
-
palette: ColorPalette;
|
|
38
|
-
|
|
39
|
-
brand: {
|
|
40
|
-
primary: string; // Main brand color (buttons, highlights)
|
|
41
|
-
onPrimary: string; // Text/icons on primary background
|
|
42
|
-
secondary: string; // Secondary brand color (accents)
|
|
43
|
-
onSecondary: string; // Text/icons on secondary background
|
|
44
|
-
tertiary: string; // Optional brand accent (extra highlight)
|
|
45
|
-
onTertiary: string; // Text/icons on tertiary background
|
|
46
|
-
};
|
|
47
|
-
|
|
48
|
-
semantic: {
|
|
49
|
-
success: string; // Success indicators (green states)
|
|
50
|
-
onSuccess: string; // Text/icons on success background
|
|
51
|
-
warning: string; // Warning indicators (yellow states)
|
|
52
|
-
onWarning: string; // Text/icons on warning background
|
|
53
|
-
danger: string; // Error/destructive indicators (red states)
|
|
54
|
-
onDanger: string; // Text/icons on danger background
|
|
55
|
-
info: string; // Informational highlights (blue states)
|
|
56
|
-
onInfo: string; // Text/icons on info background
|
|
57
|
-
};
|
|
58
|
-
|
|
59
|
-
background: {
|
|
60
|
-
default: string; // App/page root background
|
|
61
|
-
surface: string; // Surfaces like cards, sections
|
|
62
|
-
elevated: string; // Floating UI (menus, dialogs)
|
|
63
|
-
backdrop: string; // Dimmed overlay behind modals
|
|
64
|
-
};
|
|
65
|
-
|
|
66
|
-
border: {
|
|
67
|
-
subtle: string; // For dividers, separators, very low-emphasis outlines like Card dividers.
|
|
68
|
-
default: string; // The “go-to” border color for most components. like Button borders, Input fields when idle, Container outlines.
|
|
69
|
-
strong: string; // High-contrast, visible borders that must stand out, Modals or cards against busy backgrounds.
|
|
70
|
-
focus: string; //Special border color for focus rings or interactive states, Input fields when focused.
|
|
71
|
-
};
|
|
72
|
-
|
|
73
|
-
typography: {
|
|
74
|
-
primary: string;
|
|
75
|
-
secondary: string;
|
|
76
|
-
tertiary: string;
|
|
77
|
-
disabled: string;
|
|
78
|
-
inverse: string; // for text over dark backgrounds
|
|
79
|
-
};
|
|
80
|
-
|
|
81
|
-
states: {
|
|
82
|
-
hover: string;
|
|
83
|
-
pressed: string;
|
|
84
|
-
focus: string;
|
|
85
|
-
disabled: string;
|
|
86
|
-
};
|
|
87
|
-
|
|
88
|
-
elevation?: {
|
|
89
|
-
level0: string; // shadow for flat
|
|
90
|
-
level1: string; // small cards
|
|
91
|
-
level2: string; // dialogs
|
|
92
|
-
level3: string; // modals
|
|
93
|
-
level4: string; // modals
|
|
94
|
-
};
|
|
95
|
-
};
|
|
96
|
-
|
|
97
|
-
export type ThemeTypes = {
|
|
98
|
-
isDark: boolean,
|
|
99
|
-
colors: ThemeColorTypes;
|
|
100
|
-
sizes: {
|
|
101
|
-
typography: typographySizeTypes;
|
|
102
|
-
dialog: dialogSizesTypes;
|
|
103
|
-
};
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
export type Theme = {
|
|
107
|
-
light: ThemeTypes;
|
|
108
|
-
dark: ThemeTypes;
|
|
109
|
-
};
|
|
1
|
+
import type { typographySizeTypes } from "../constants/typographySizes";
|
|
2
|
+
|
|
3
|
+
export type UserInputVariant = 'outlined' | 'standard';
|
|
4
|
+
export type DialogVariant = 'classic' | 'default';
|
|
5
|
+
export type ButtonVariant = 'outlined' | 'contained';
|
|
6
|
+
// export type TypographyVariant = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'h7';
|
|
7
|
+
export type TypographyScale = 'xxs' | 'xs' | 'sm' | 'base' | 'lg' | 'xl' | '2xl' | '3xl' | '4xl' | '5xl' | '6xl';
|
|
8
|
+
export type TypographyVariant = keyof ThemeColorTypes['typography'];
|
|
9
|
+
export type themeModeTypes = 'light' | 'dark';
|
|
10
|
+
export type scalingModeTypes = 'full' | 'partial';
|
|
11
|
+
|
|
12
|
+
export type dialogSizesTypes = {
|
|
13
|
+
xs: number,
|
|
14
|
+
sm: number,
|
|
15
|
+
md: number,
|
|
16
|
+
lg: number,
|
|
17
|
+
full: number,
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
type ColorPalette = {
|
|
21
|
+
natural: {
|
|
22
|
+
0: string;
|
|
23
|
+
50: string;
|
|
24
|
+
100: string;
|
|
25
|
+
200: string;
|
|
26
|
+
300: string;
|
|
27
|
+
400: string;
|
|
28
|
+
500: string;
|
|
29
|
+
600: string;
|
|
30
|
+
700: string;
|
|
31
|
+
800: string;
|
|
32
|
+
900: string;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
type ThemeColorTypes = {
|
|
36
|
+
|
|
37
|
+
palette: ColorPalette;
|
|
38
|
+
|
|
39
|
+
brand: {
|
|
40
|
+
primary: string; // Main brand color (buttons, highlights)
|
|
41
|
+
onPrimary: string; // Text/icons on primary background
|
|
42
|
+
secondary: string; // Secondary brand color (accents)
|
|
43
|
+
onSecondary: string; // Text/icons on secondary background
|
|
44
|
+
tertiary: string; // Optional brand accent (extra highlight)
|
|
45
|
+
onTertiary: string; // Text/icons on tertiary background
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
semantic: {
|
|
49
|
+
success: string; // Success indicators (green states)
|
|
50
|
+
onSuccess: string; // Text/icons on success background
|
|
51
|
+
warning: string; // Warning indicators (yellow states)
|
|
52
|
+
onWarning: string; // Text/icons on warning background
|
|
53
|
+
danger: string; // Error/destructive indicators (red states)
|
|
54
|
+
onDanger: string; // Text/icons on danger background
|
|
55
|
+
info: string; // Informational highlights (blue states)
|
|
56
|
+
onInfo: string; // Text/icons on info background
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
background: {
|
|
60
|
+
default: string; // App/page root background
|
|
61
|
+
surface: string; // Surfaces like cards, sections
|
|
62
|
+
elevated: string; // Floating UI (menus, dialogs)
|
|
63
|
+
backdrop: string; // Dimmed overlay behind modals
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
border: {
|
|
67
|
+
subtle: string; // For dividers, separators, very low-emphasis outlines like Card dividers.
|
|
68
|
+
default: string; // The “go-to” border color for most components. like Button borders, Input fields when idle, Container outlines.
|
|
69
|
+
strong: string; // High-contrast, visible borders that must stand out, Modals or cards against busy backgrounds.
|
|
70
|
+
focus: string; //Special border color for focus rings or interactive states, Input fields when focused.
|
|
71
|
+
};
|
|
72
|
+
|
|
73
|
+
typography: {
|
|
74
|
+
primary: string;
|
|
75
|
+
secondary: string;
|
|
76
|
+
tertiary: string;
|
|
77
|
+
disabled: string;
|
|
78
|
+
inverse: string; // for text over dark backgrounds
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
states: {
|
|
82
|
+
hover: string;
|
|
83
|
+
pressed: string;
|
|
84
|
+
focus: string;
|
|
85
|
+
disabled: string;
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
elevation?: {
|
|
89
|
+
level0: string; // shadow for flat
|
|
90
|
+
level1: string; // small cards
|
|
91
|
+
level2: string; // dialogs
|
|
92
|
+
level3: string; // modals
|
|
93
|
+
level4: string; // modals
|
|
94
|
+
};
|
|
95
|
+
};
|
|
96
|
+
|
|
97
|
+
export type ThemeTypes = {
|
|
98
|
+
isDark: boolean,
|
|
99
|
+
colors: ThemeColorTypes;
|
|
100
|
+
sizes: {
|
|
101
|
+
typography: typographySizeTypes;
|
|
102
|
+
dialog: dialogSizesTypes;
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
export type Theme = {
|
|
107
|
+
light: ThemeTypes;
|
|
108
|
+
dark: ThemeTypes;
|
|
109
|
+
};
|