@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.
Files changed (291) hide show
  1. package/lib/commonjs/assets/svg/Check.js.map +1 -1
  2. package/lib/commonjs/assets/svg/X.js.map +1 -1
  3. package/lib/commonjs/assets/svg/index.js.map +1 -1
  4. package/lib/commonjs/components/Avatar/AvatarImage.js.map +1 -1
  5. package/lib/commonjs/components/Avatar/AvatarText.js.map +1 -1
  6. package/lib/commonjs/components/Avatar/index.js.map +1 -1
  7. package/lib/commonjs/components/Button/Button.js +9 -4
  8. package/lib/commonjs/components/Button/Button.js.map +1 -1
  9. package/lib/commonjs/components/Button/utils.js +17 -10
  10. package/lib/commonjs/components/Button/utils.js.map +1 -1
  11. package/lib/commonjs/components/CheckBox/CheckBox.js.map +1 -1
  12. package/lib/commonjs/components/Chip/Chip.js.map +1 -1
  13. package/lib/commonjs/components/Chip/utils.js.map +1 -1
  14. package/lib/commonjs/components/Dialog/Dialog.js.map +1 -1
  15. package/lib/commonjs/components/Dialog/DialogBody.js.map +1 -1
  16. package/lib/commonjs/components/Dialog/DialogDescription.js.map +1 -1
  17. package/lib/commonjs/components/Dialog/DialogFoot.js.map +1 -1
  18. package/lib/commonjs/components/Dialog/DialogHead.js.map +1 -1
  19. package/lib/commonjs/components/Dialog/index.js.map +1 -1
  20. package/lib/commonjs/components/Divider/Divider.js.map +1 -1
  21. package/lib/commonjs/components/Grid/Grid.js.map +1 -1
  22. package/lib/commonjs/components/Icon/Icon.js.map +1 -1
  23. package/lib/commonjs/components/IconButton/IconButton.js.map +1 -1
  24. package/lib/commonjs/components/Link/Link.js.map +1 -1
  25. package/lib/commonjs/components/Menu/Menu.js.map +1 -1
  26. package/lib/commonjs/components/Menu/MenuItem.js.map +1 -1
  27. package/lib/commonjs/components/Menu/MenuItemLabel.js.map +1 -1
  28. package/lib/commonjs/components/Menu/calculations.js.map +1 -1
  29. package/lib/commonjs/components/Menu/index.js.map +1 -1
  30. package/lib/commonjs/components/Portal/Portal.js.map +1 -1
  31. package/lib/commonjs/components/Portal/PortalContext.js.map +1 -1
  32. package/lib/commonjs/components/Portal/PortalProvider.js.map +1 -1
  33. package/lib/commonjs/components/Progress/Progress.js.map +1 -1
  34. package/lib/commonjs/components/Provider/ContextManager.js.map +1 -1
  35. package/lib/commonjs/components/Provider/NativeProvider.js.map +1 -1
  36. package/lib/commonjs/components/Radio/RadioGroup.js.map +1 -1
  37. package/lib/commonjs/components/Radio/RadioItem.js.map +1 -1
  38. package/lib/commonjs/components/Radio/index.js.map +1 -1
  39. package/lib/commonjs/components/Slider/Slider.js.map +1 -1
  40. package/lib/commonjs/components/Stack/HStack.js.map +1 -1
  41. package/lib/commonjs/components/Stack/VStack.js.map +1 -1
  42. package/lib/commonjs/components/Stack/index.js.map +1 -1
  43. package/lib/commonjs/components/StyledComponents/StyledText.js +3 -1
  44. package/lib/commonjs/components/StyledComponents/StyledText.js.map +1 -1
  45. package/lib/commonjs/components/StyledComponents/StyledView.js.map +1 -1
  46. package/lib/commonjs/components/StyledComponents/index.js.map +1 -1
  47. package/lib/commonjs/components/Surface/Surface.js +3 -3
  48. package/lib/commonjs/components/Surface/Surface.js.map +1 -1
  49. package/lib/commonjs/components/Switch/Switch.js.map +1 -1
  50. package/lib/commonjs/components/TouchableRipple/TouchableRipple.js.map +1 -1
  51. package/lib/commonjs/components/UserInput/UserInput.js.map +1 -1
  52. package/lib/commonjs/components/UserInput/UserInputV2.js.map +1 -1
  53. package/lib/commonjs/components/UserInput/generateColors.js.map +1 -1
  54. package/lib/commonjs/constants/breakPoints.js.map +1 -1
  55. package/lib/commonjs/constants/dialogSizes.js.map +1 -1
  56. package/lib/commonjs/constants/index.js.map +1 -1
  57. package/lib/commonjs/constants/theme.js.map +1 -1
  58. package/lib/commonjs/constants/typographySizes.js.map +1 -1
  59. package/lib/commonjs/helpers/CalculateGridSize.js +1 -1
  60. package/lib/commonjs/helpers/CalculateGridSize.js.map +1 -1
  61. package/lib/commonjs/helpers/DeviceSizeCategory.js.map +1 -1
  62. package/lib/commonjs/helpers/ResponsiveCalculations.js +4 -1
  63. package/lib/commonjs/helpers/ResponsiveCalculations.js.map +1 -1
  64. package/lib/commonjs/helpers/index.js.map +1 -1
  65. package/lib/commonjs/hooks/index.js.map +1 -1
  66. package/lib/commonjs/hooks/useColorScheme.js.map +1 -1
  67. package/lib/commonjs/hooks/useConditionalWindowDimension.js.map +1 -1
  68. package/lib/commonjs/hooks/useScalingMode.js.map +1 -1
  69. package/lib/commonjs/hooks/useTheme.js.map +1 -1
  70. package/lib/commonjs/index.d.js.map +1 -1
  71. package/lib/commonjs/index.js.map +1 -1
  72. package/lib/commonjs/themes/DarkTheme.js.map +1 -1
  73. package/lib/commonjs/themes/LightTheme.js.map +1 -1
  74. package/lib/commonjs/themes/index.js.map +1 -1
  75. package/lib/commonjs/types/avatar.type.js.map +1 -1
  76. package/lib/commonjs/types/button.type.js.map +1 -1
  77. package/lib/commonjs/types/checkbox.type.js.map +1 -1
  78. package/lib/commonjs/types/chip.type.js.map +1 -1
  79. package/lib/commonjs/types/common.type.js.map +1 -1
  80. package/lib/commonjs/types/dialog.type.js.map +1 -1
  81. package/lib/commonjs/types/divider.type.js.map +1 -1
  82. package/lib/commonjs/types/grid.type.js.map +1 -1
  83. package/lib/commonjs/types/index.js.map +1 -1
  84. package/lib/commonjs/types/link.type.js.map +1 -1
  85. package/lib/commonjs/types/menu.type.js.map +1 -1
  86. package/lib/commonjs/types/progress.type.js.map +1 -1
  87. package/lib/commonjs/types/radio.type.js.map +1 -1
  88. package/lib/commonjs/types/stack.type.js.map +1 -1
  89. package/lib/commonjs/types/styledComponents.type.js.map +1 -1
  90. package/lib/commonjs/types/surface.type.js.map +1 -1
  91. package/lib/commonjs/types/switch.type.js.map +1 -1
  92. package/lib/commonjs/types/userInput.type.js.map +1 -1
  93. package/lib/commonjs/utils/index.js.map +1 -1
  94. package/lib/module/assets/svg/Check.js.map +1 -1
  95. package/lib/module/assets/svg/X.js.map +1 -1
  96. package/lib/module/assets/svg/index.js.map +1 -1
  97. package/lib/module/components/Avatar/AvatarImage.js.map +1 -1
  98. package/lib/module/components/Avatar/AvatarText.js.map +1 -1
  99. package/lib/module/components/Avatar/index.js.map +1 -1
  100. package/lib/module/components/Button/Button.js +10 -5
  101. package/lib/module/components/Button/Button.js.map +1 -1
  102. package/lib/module/components/Button/utils.js +17 -10
  103. package/lib/module/components/Button/utils.js.map +1 -1
  104. package/lib/module/components/CheckBox/CheckBox.js.map +1 -1
  105. package/lib/module/components/Chip/Chip.js.map +1 -1
  106. package/lib/module/components/Chip/utils.js.map +1 -1
  107. package/lib/module/components/Dialog/Dialog.js.map +1 -1
  108. package/lib/module/components/Dialog/DialogBody.js.map +1 -1
  109. package/lib/module/components/Dialog/DialogDescription.js.map +1 -1
  110. package/lib/module/components/Dialog/DialogFoot.js.map +1 -1
  111. package/lib/module/components/Dialog/DialogHead.js.map +1 -1
  112. package/lib/module/components/Dialog/index.js.map +1 -1
  113. package/lib/module/components/Divider/Divider.js.map +1 -1
  114. package/lib/module/components/Grid/Grid.js.map +1 -1
  115. package/lib/module/components/Icon/Icon.js.map +1 -1
  116. package/lib/module/components/IconButton/IconButton.js.map +1 -1
  117. package/lib/module/components/Link/Link.js.map +1 -1
  118. package/lib/module/components/Menu/Menu.js.map +1 -1
  119. package/lib/module/components/Menu/MenuItem.js.map +1 -1
  120. package/lib/module/components/Menu/MenuItemLabel.js.map +1 -1
  121. package/lib/module/components/Menu/calculations.js.map +1 -1
  122. package/lib/module/components/Menu/index.js.map +1 -1
  123. package/lib/module/components/Portal/Portal.js.map +1 -1
  124. package/lib/module/components/Portal/PortalContext.js.map +1 -1
  125. package/lib/module/components/Portal/PortalProvider.js.map +1 -1
  126. package/lib/module/components/Progress/Progress.js.map +1 -1
  127. package/lib/module/components/Provider/ContextManager.js.map +1 -1
  128. package/lib/module/components/Provider/NativeProvider.js.map +1 -1
  129. package/lib/module/components/Radio/RadioGroup.js.map +1 -1
  130. package/lib/module/components/Radio/RadioItem.js.map +1 -1
  131. package/lib/module/components/Radio/index.js.map +1 -1
  132. package/lib/module/components/Slider/Slider.js.map +1 -1
  133. package/lib/module/components/Stack/HStack.js.map +1 -1
  134. package/lib/module/components/Stack/VStack.js.map +1 -1
  135. package/lib/module/components/Stack/index.js.map +1 -1
  136. package/lib/module/components/StyledComponents/StyledText.js +3 -1
  137. package/lib/module/components/StyledComponents/StyledText.js.map +1 -1
  138. package/lib/module/components/StyledComponents/StyledView.js.map +1 -1
  139. package/lib/module/components/StyledComponents/index.js.map +1 -1
  140. package/lib/module/components/Surface/Surface.js +3 -3
  141. package/lib/module/components/Surface/Surface.js.map +1 -1
  142. package/lib/module/components/Switch/Switch.js.map +1 -1
  143. package/lib/module/components/TouchableRipple/TouchableRipple.js.map +1 -1
  144. package/lib/module/components/UserInput/UserInput.js.map +1 -1
  145. package/lib/module/components/UserInput/UserInputV2.js.map +1 -1
  146. package/lib/module/components/UserInput/generateColors.js.map +1 -1
  147. package/lib/module/constants/breakPoints.js.map +1 -1
  148. package/lib/module/constants/dialogSizes.js.map +1 -1
  149. package/lib/module/constants/index.js.map +1 -1
  150. package/lib/module/constants/theme.js.map +1 -1
  151. package/lib/module/constants/typographySizes.js.map +1 -1
  152. package/lib/module/helpers/CalculateGridSize.js +1 -1
  153. package/lib/module/helpers/CalculateGridSize.js.map +1 -1
  154. package/lib/module/helpers/DeviceSizeCategory.js.map +1 -1
  155. package/lib/module/helpers/ResponsiveCalculations.js +4 -1
  156. package/lib/module/helpers/ResponsiveCalculations.js.map +1 -1
  157. package/lib/module/helpers/index.js.map +1 -1
  158. package/lib/module/hooks/index.js.map +1 -1
  159. package/lib/module/hooks/useColorScheme.js.map +1 -1
  160. package/lib/module/hooks/useConditionalWindowDimension.js.map +1 -1
  161. package/lib/module/hooks/useScalingMode.js.map +1 -1
  162. package/lib/module/hooks/useTheme.js.map +1 -1
  163. package/lib/module/index.d.js.map +1 -1
  164. package/lib/module/index.js.map +1 -1
  165. package/lib/module/themes/DarkTheme.js.map +1 -1
  166. package/lib/module/themes/LightTheme.js.map +1 -1
  167. package/lib/module/themes/index.js.map +1 -1
  168. package/lib/module/types/avatar.type.js.map +1 -1
  169. package/lib/module/types/button.type.js.map +1 -1
  170. package/lib/module/types/checkbox.type.js.map +1 -1
  171. package/lib/module/types/chip.type.js.map +1 -1
  172. package/lib/module/types/common.type.js.map +1 -1
  173. package/lib/module/types/dialog.type.js.map +1 -1
  174. package/lib/module/types/divider.type.js.map +1 -1
  175. package/lib/module/types/grid.type.js.map +1 -1
  176. package/lib/module/types/index.js.map +1 -1
  177. package/lib/module/types/link.type.js.map +1 -1
  178. package/lib/module/types/menu.type.js.map +1 -1
  179. package/lib/module/types/progress.type.js.map +1 -1
  180. package/lib/module/types/radio.type.js.map +1 -1
  181. package/lib/module/types/stack.type.js.map +1 -1
  182. package/lib/module/types/styledComponents.type.js.map +1 -1
  183. package/lib/module/types/surface.type.js.map +1 -1
  184. package/lib/module/types/switch.type.js.map +1 -1
  185. package/lib/module/types/userInput.type.js.map +1 -1
  186. package/lib/module/utils/index.js.map +1 -1
  187. package/lib/typescript/commonjs/src/components/Button/Button.d.ts.map +1 -1
  188. package/lib/typescript/commonjs/src/components/Button/utils.d.ts +2 -1
  189. package/lib/typescript/commonjs/src/components/Button/utils.d.ts.map +1 -1
  190. package/lib/typescript/commonjs/src/components/UserInput/UserInput.d.ts.map +1 -1
  191. package/lib/typescript/commonjs/src/helpers/ResponsiveCalculations.d.ts.map +1 -1
  192. package/lib/typescript/commonjs/src/types/button.type.d.ts +2 -0
  193. package/lib/typescript/commonjs/src/types/button.type.d.ts.map +1 -1
  194. package/lib/typescript/commonjs/src/types/surface.type.d.ts +1 -1
  195. package/lib/typescript/commonjs/src/types/surface.type.d.ts.map +1 -1
  196. package/lib/typescript/module/src/components/Button/Button.d.ts.map +1 -1
  197. package/lib/typescript/module/src/components/Button/utils.d.ts +2 -1
  198. package/lib/typescript/module/src/components/Button/utils.d.ts.map +1 -1
  199. package/lib/typescript/module/src/components/UserInput/UserInput.d.ts.map +1 -1
  200. package/lib/typescript/module/src/helpers/ResponsiveCalculations.d.ts.map +1 -1
  201. package/lib/typescript/module/src/types/button.type.d.ts +2 -0
  202. package/lib/typescript/module/src/types/button.type.d.ts.map +1 -1
  203. package/lib/typescript/module/src/types/surface.type.d.ts +1 -1
  204. package/lib/typescript/module/src/types/surface.type.d.ts.map +1 -1
  205. package/package.json +2 -2
  206. package/src/assets/svg/Check.tsx +16 -16
  207. package/src/assets/svg/X.tsx +15 -15
  208. package/src/assets/svg/index.ts +1 -1
  209. package/src/components/Avatar/AvatarImage.tsx +33 -33
  210. package/src/components/Avatar/AvatarText.tsx +34 -34
  211. package/src/components/Avatar/index.ts +8 -8
  212. package/src/components/Button/Button.tsx +216 -205
  213. package/src/components/Button/utils.ts +152 -141
  214. package/src/components/CheckBox/CheckBox.tsx +118 -118
  215. package/src/components/Chip/Chip.tsx +82 -82
  216. package/src/components/Chip/utils.ts +109 -109
  217. package/src/components/Dialog/Dialog.tsx +124 -124
  218. package/src/components/Dialog/DialogBody.tsx +31 -31
  219. package/src/components/Dialog/DialogDescription.tsx +27 -27
  220. package/src/components/Dialog/DialogFoot.tsx +35 -35
  221. package/src/components/Dialog/DialogHead.tsx +50 -50
  222. package/src/components/Dialog/index.ts +10 -10
  223. package/src/components/Divider/Divider.tsx +22 -22
  224. package/src/components/Grid/Grid.tsx +61 -61
  225. package/src/components/Icon/Icon.tsx +31 -31
  226. package/src/components/IconButton/IconButton.tsx +44 -44
  227. package/src/components/Link/Link.tsx +38 -38
  228. package/src/components/Menu/Menu.tsx +142 -142
  229. package/src/components/Menu/MenuItem.tsx +33 -33
  230. package/src/components/Menu/MenuItemLabel.tsx +21 -21
  231. package/src/components/Menu/calculations.ts +33 -33
  232. package/src/components/Menu/index.ts +7 -7
  233. package/src/components/Portal/Portal.tsx +18 -18
  234. package/src/components/Portal/PortalContext.tsx +9 -9
  235. package/src/components/Portal/PortalProvider.tsx +36 -36
  236. package/src/components/Progress/Progress.tsx +66 -66
  237. package/src/components/Provider/ContextManager.tsx +8 -8
  238. package/src/components/Provider/NativeProvider.tsx +72 -72
  239. package/src/components/Radio/RadioGroup.tsx +39 -39
  240. package/src/components/Radio/RadioItem.tsx +72 -72
  241. package/src/components/Radio/index.ts +8 -8
  242. package/src/components/Slider/Slider.tsx +45 -45
  243. package/src/components/Stack/HStack.tsx +32 -32
  244. package/src/components/Stack/VStack.tsx +26 -26
  245. package/src/components/Stack/index.ts +8 -8
  246. package/src/components/StyledComponents/StyledText.tsx +49 -49
  247. package/src/components/StyledComponents/StyledView.tsx +44 -44
  248. package/src/components/StyledComponents/index.tsx +5 -5
  249. package/src/components/Surface/Surface.tsx +31 -31
  250. package/src/components/Switch/Switch.tsx +36 -36
  251. package/src/components/TouchableRipple/TouchableRipple.tsx +92 -92
  252. package/src/components/UserInput/UserInput.tsx +135 -135
  253. package/src/components/UserInput/UserInputV2.tsx +132 -132
  254. package/src/components/UserInput/generateColors.ts +13 -13
  255. package/src/constants/breakPoints.ts +17 -17
  256. package/src/constants/dialogSizes.ts +11 -11
  257. package/src/constants/index.ts +2 -2
  258. package/src/constants/theme.ts +32 -32
  259. package/src/constants/typographySizes.ts +19 -19
  260. package/src/helpers/CalculateGridSize.ts +25 -25
  261. package/src/helpers/DeviceSizeCategory.ts +21 -21
  262. package/src/helpers/ResponsiveCalculations.ts +107 -104
  263. package/src/helpers/index.ts +2 -2
  264. package/src/hooks/index.ts +3 -3
  265. package/src/hooks/useColorScheme.tsx +11 -11
  266. package/src/hooks/useConditionalWindowDimension.tsx +7 -7
  267. package/src/hooks/useScalingMode.tsx +6 -6
  268. package/src/hooks/useTheme.tsx +12 -12
  269. package/src/index.d.ts +2 -2
  270. package/src/index.ts +52 -52
  271. package/src/themes/DarkTheme.ts +177 -177
  272. package/src/themes/LightTheme.ts +88 -88
  273. package/src/themes/index.ts +3 -3
  274. package/src/types/avatar.type.ts +40 -40
  275. package/src/types/button.type.ts +79 -76
  276. package/src/types/checkbox.type.ts +64 -64
  277. package/src/types/chip.type.ts +65 -65
  278. package/src/types/common.type.ts +109 -109
  279. package/src/types/dialog.type.ts +89 -89
  280. package/src/types/divider.type.ts +15 -15
  281. package/src/types/grid.type.ts +71 -71
  282. package/src/types/index.ts +16 -16
  283. package/src/types/link.type.ts +14 -14
  284. package/src/types/menu.type.ts +100 -100
  285. package/src/types/progress.type.ts +15 -15
  286. package/src/types/radio.type.ts +78 -78
  287. package/src/types/stack.type.ts +46 -46
  288. package/src/types/styledComponents.type.ts +70 -70
  289. package/src/types/surface.type.ts +19 -19
  290. package/src/types/switch.type.ts +39 -39
  291. package/src/types/userInput.type.ts +98 -98
@@ -1,178 +1,178 @@
1
- import Color from "color";
2
- import { dialogSizes, typographySizes } from "../constants";
3
- import type { ThemeTypes } from "../types";
4
-
5
- const darkColorPalette = {
6
- natural: {
7
- 0: "#000000", // pure black
8
- 50: "#0D1117", // GitHub-inspired dark background
9
- 100: "#161B22", // elevated surfaces
10
- 200: "#21262D", // card backgrounds
11
- 300: "#30363D", // borders and dividers
12
- 400: "#484F58", // muted elements
13
- 500: "#6E7681", // tertiary text
14
- 600: "#8B949E", // secondary text
15
- 700: "#C9D1D9", // primary text
16
- 800: "#F0F6FC", // high contrast text
17
- 900: "#FFFFFF", // pure white
18
- }
19
- };
20
-
21
- // Option 1: Purple & Emerald (Elegant & Professional)
22
- const DarkTheme: ThemeTypes = {
23
- isDark: true,
24
- colors: {
25
- palette: darkColorPalette,
26
- brand: {
27
- primary: "#8B5CF6", // Rich violet - elegant and professional
28
- onPrimary: "#FFFFFF",
29
- secondary: "#10B981", // Emerald green - fresh and modern
30
- onSecondary: "#FFFFFF",
31
- tertiary: "#F59E0B", // Amber - warm and inviting
32
- onTertiary: "#000000",
33
- },
34
- semantic: {
35
- success: "#34D399", // Bright emerald success
36
- onSuccess: "#000000",
37
- warning: "#FBBF24", // Warm amber warning
38
- onWarning: "#000000",
39
- danger: "#F87171", // Soft red - less harsh than bright red
40
- onDanger: "#000000",
41
- info: "#60A5FA", // Sky blue info
42
- onInfo: "#000000",
43
- },
44
- background: {
45
- default: "#0D1117", // Deep professional background
46
- surface: "#161B22", // Card surfaces
47
- elevated: "#21262D", // Modal and elevated components
48
- backdrop: "rgba(13,17,23,0.8)",
49
- },
50
- border: {
51
- subtle: "#21262D",
52
- default: "#30363D",
53
- strong: "#484F58",
54
- focus: "#8B5CF6", // Primary violet focus
55
- },
56
- typography: {
57
- primary: "#F0F6FC", // Crisp white text
58
- secondary: "#C9D1D9", // Soft gray text
59
- tertiary: "#8B949E", // Muted text
60
- disabled: "#484F58",
61
- inverse: "#0D1117"
62
- },
63
- states: {
64
- hover: "rgba(139, 92, 246, 0.1)", // Subtle violet hover
65
- pressed: "rgba(139, 92, 246, 0.2)", // Stronger violet press
66
- focus: '',
67
- disabled: "rgba(72, 79, 88, 0.6)"
68
- },
69
- elevation: {
70
- level0: "none",
71
- level1: "0px 2px 4px rgba(0,0,0,0.55), 0px 1px 2px rgba(139,92,246,0.08)",
72
- level2: "0px 4px 8px rgba(0,0,0,0.65), 0px 2px 4px rgba(139,92,246,0.07)",
73
- level3: "0px 8px 16px rgba(0,0,0,0.75), 0px 4px 8px rgba(139,92,246,0.05)",
74
- level4: "0px 16px 32px rgba(0,0,0,0.85), 0px 8px 16px rgba(139,92,246,0.03)",
75
- }
76
- },
77
- sizes: {
78
- typography: typographySizes,
79
- dialog: dialogSizes
80
- }
81
- };
82
-
83
- DarkTheme.colors.states.focus = Color(DarkTheme.colors.brand.primary)
84
- .alpha(0.05)
85
- .rgb()
86
- .string();
87
-
88
-
89
- export default DarkTheme;
90
- // import Color from "color";
91
- // import { dialogSizes, typographySizes } from "../constants";
92
- // import type { ThemeTypes } from "../types";
93
-
94
- // const colorPalette = {
95
- // natural: {
96
- // 0: "#FFFFFF", // pure white
97
- // 50: "#F9FAFB", // very light gray (default page background)
98
- // 100: "#F3F4F6", // light gray (elevated surfaces)
99
- // 200: "#E5E7EB", // subtle borders, dividers
100
- // 300: "#D1D5DB", // default borders, secondary text
101
- // 400: "#9CA3AF", // strong borders, muted text
102
- // 500: "#6B7280", // tertiary text
103
- // 600: "#4B5563", // secondary text
104
- // 700: "#374151", // primary text on light backgrounds
105
- // 800: "#1F2937", // strong primary text
106
- // 900: "#111827", // almost black
107
- // }
108
- // }
109
-
110
- // const DarkTheme: ThemeTypes = {
111
- // isDark: true,
112
- // colors: {
113
- // palette: colorPalette,
114
- // brand: {
115
- // primary: "#22D3EE", // teal accent
116
- // onPrimary: "#111827",
117
- // secondary: "#818CF8", // indigo
118
- // onSecondary: "#111827",
119
- // tertiary: "#F59E0B", // amber
120
- // onTertiary: "#111827",
121
- // },
122
- // semantic: {
123
- // success: "#22C55E",
124
- // onSuccess: "#111827",
125
- // warning: "#FACC15",
126
- // onWarning: "#111827",
127
- // danger: "#EF4444",
128
- // onDanger: "#FFFFFF",
129
- // info: "#3B82F6",
130
- // onInfo: "#FFFFFF",
131
- // },
132
- // background: {
133
- // default: "#111827", // app background
134
- // surface: "#1F2937", // cards, sections
135
- // elevated: "#272B33", // menus, dialogs
136
- // backdrop: "rgba(0,0,0,0.6)", // darker scrim
137
- // },
138
- // border: {
139
- // subtle: "#272B33",
140
- // default: "#374151",
141
- // strong: "#4B5563",
142
- // focus: "#22D3EE", // brand primary
143
- // },
144
- // typography: {
145
- // primary: "#F9FAFB", // main text
146
- // secondary: "#D1D5DB", // muted text
147
- // tertiary: "#9CA3AF", // tertiary text
148
- // disabled: "#808892", // disabled gray
149
- // inverse: "#111827", // inverse on bright backgrounds
150
- // },
151
- // states: {
152
- // hover: "rgba(255, 255, 255, 0.04)",
153
- // pressed: "rgba(255, 255, 255, 0.08)",
154
- // focus: "",
155
- // active: "",
156
- // disabled: "rgba(255, 255, 255, 0.3)"
157
- // },
158
- // elevation: {
159
- // level0: "none",
160
- // level1: "0px 1px 3px rgba(0,0,0,0.4), 0px 1px 1px rgba(0,0,0,0.24), 0px 2px 1px -1px rgba(0,0,0,0.2)",
161
- // level2: "0px 2px 4px rgba(0,0,0,0.36), 0px 2px 3px rgba(0,0,0,0.32)",
162
- // level4: "0px 4px 6px rgba(0,0,0,0.3), 0px 2px 4px rgba(0,0,0,0.28)",
163
- // level8: "0px 8px 12px rgba(0,0,0,0.28), 0px 4px 8px rgba(0,0,0,0.24)",
164
- // level12: "0px 12px 17px rgba(0,0,0,0.26), 0px 5px 12px rgba(0,0,0,0.22)",
165
- // level16: "0px 16px 24px rgba(0,0,0,0.25), 0px 6px 16px rgba(0,0,0,0.2)",
166
- // level24: "0px 24px 38px rgba(0,0,0,0.24), 0px 9px 46px rgba(0,0,0,0.18)",
167
- // }
168
- // },
169
- // sizes: {
170
- // typography: typographySizes,
171
- // dialog: dialogSizes
172
- // }
173
- // };
174
-
175
- // DarkTheme.colors.states.focus = Color(DarkTheme.colors.brand.primary).mix(Color("white"), 0.8).alpha(0.1).rgb().string();
176
- // DarkTheme.colors.states.active = Color(DarkTheme.colors.brand.primary).lighten(0).alpha(0.3).rgb().string();
177
-
1
+ import Color from "color";
2
+ import { dialogSizes, typographySizes } from "../constants";
3
+ import type { ThemeTypes } from "../types";
4
+
5
+ const darkColorPalette = {
6
+ natural: {
7
+ 0: "#000000", // pure black
8
+ 50: "#0D1117", // GitHub-inspired dark background
9
+ 100: "#161B22", // elevated surfaces
10
+ 200: "#21262D", // card backgrounds
11
+ 300: "#30363D", // borders and dividers
12
+ 400: "#484F58", // muted elements
13
+ 500: "#6E7681", // tertiary text
14
+ 600: "#8B949E", // secondary text
15
+ 700: "#C9D1D9", // primary text
16
+ 800: "#F0F6FC", // high contrast text
17
+ 900: "#FFFFFF", // pure white
18
+ }
19
+ };
20
+
21
+ // Option 1: Purple & Emerald (Elegant & Professional)
22
+ const DarkTheme: ThemeTypes = {
23
+ isDark: true,
24
+ colors: {
25
+ palette: darkColorPalette,
26
+ brand: {
27
+ primary: "#8B5CF6", // Rich violet - elegant and professional
28
+ onPrimary: "#FFFFFF",
29
+ secondary: "#10B981", // Emerald green - fresh and modern
30
+ onSecondary: "#FFFFFF",
31
+ tertiary: "#F59E0B", // Amber - warm and inviting
32
+ onTertiary: "#000000",
33
+ },
34
+ semantic: {
35
+ success: "#34D399", // Bright emerald success
36
+ onSuccess: "#000000",
37
+ warning: "#FBBF24", // Warm amber warning
38
+ onWarning: "#000000",
39
+ danger: "#F87171", // Soft red - less harsh than bright red
40
+ onDanger: "#000000",
41
+ info: "#60A5FA", // Sky blue info
42
+ onInfo: "#000000",
43
+ },
44
+ background: {
45
+ default: "#0D1117", // Deep professional background
46
+ surface: "#161B22", // Card surfaces
47
+ elevated: "#21262D", // Modal and elevated components
48
+ backdrop: "rgba(13,17,23,0.8)",
49
+ },
50
+ border: {
51
+ subtle: "#21262D",
52
+ default: "#30363D",
53
+ strong: "#484F58",
54
+ focus: "#8B5CF6", // Primary violet focus
55
+ },
56
+ typography: {
57
+ primary: "#F0F6FC", // Crisp white text
58
+ secondary: "#C9D1D9", // Soft gray text
59
+ tertiary: "#8B949E", // Muted text
60
+ disabled: "#484F58",
61
+ inverse: "#0D1117"
62
+ },
63
+ states: {
64
+ hover: "rgba(139, 92, 246, 0.1)", // Subtle violet hover
65
+ pressed: "rgba(139, 92, 246, 0.2)", // Stronger violet press
66
+ focus: '',
67
+ disabled: "rgba(72, 79, 88, 0.6)"
68
+ },
69
+ elevation: {
70
+ level0: "none",
71
+ level1: "0px 2px 4px rgba(0,0,0,0.55), 0px 1px 2px rgba(139,92,246,0.08)",
72
+ level2: "0px 4px 8px rgba(0,0,0,0.65), 0px 2px 4px rgba(139,92,246,0.07)",
73
+ level3: "0px 8px 16px rgba(0,0,0,0.75), 0px 4px 8px rgba(139,92,246,0.05)",
74
+ level4: "0px 16px 32px rgba(0,0,0,0.85), 0px 8px 16px rgba(139,92,246,0.03)",
75
+ }
76
+ },
77
+ sizes: {
78
+ typography: typographySizes,
79
+ dialog: dialogSizes
80
+ }
81
+ };
82
+
83
+ DarkTheme.colors.states.focus = Color(DarkTheme.colors.brand.primary)
84
+ .alpha(0.05)
85
+ .rgb()
86
+ .string();
87
+
88
+
89
+ export default DarkTheme;
90
+ // import Color from "color";
91
+ // import { dialogSizes, typographySizes } from "../constants";
92
+ // import type { ThemeTypes } from "../types";
93
+
94
+ // const colorPalette = {
95
+ // natural: {
96
+ // 0: "#FFFFFF", // pure white
97
+ // 50: "#F9FAFB", // very light gray (default page background)
98
+ // 100: "#F3F4F6", // light gray (elevated surfaces)
99
+ // 200: "#E5E7EB", // subtle borders, dividers
100
+ // 300: "#D1D5DB", // default borders, secondary text
101
+ // 400: "#9CA3AF", // strong borders, muted text
102
+ // 500: "#6B7280", // tertiary text
103
+ // 600: "#4B5563", // secondary text
104
+ // 700: "#374151", // primary text on light backgrounds
105
+ // 800: "#1F2937", // strong primary text
106
+ // 900: "#111827", // almost black
107
+ // }
108
+ // }
109
+
110
+ // const DarkTheme: ThemeTypes = {
111
+ // isDark: true,
112
+ // colors: {
113
+ // palette: colorPalette,
114
+ // brand: {
115
+ // primary: "#22D3EE", // teal accent
116
+ // onPrimary: "#111827",
117
+ // secondary: "#818CF8", // indigo
118
+ // onSecondary: "#111827",
119
+ // tertiary: "#F59E0B", // amber
120
+ // onTertiary: "#111827",
121
+ // },
122
+ // semantic: {
123
+ // success: "#22C55E",
124
+ // onSuccess: "#111827",
125
+ // warning: "#FACC15",
126
+ // onWarning: "#111827",
127
+ // danger: "#EF4444",
128
+ // onDanger: "#FFFFFF",
129
+ // info: "#3B82F6",
130
+ // onInfo: "#FFFFFF",
131
+ // },
132
+ // background: {
133
+ // default: "#111827", // app background
134
+ // surface: "#1F2937", // cards, sections
135
+ // elevated: "#272B33", // menus, dialogs
136
+ // backdrop: "rgba(0,0,0,0.6)", // darker scrim
137
+ // },
138
+ // border: {
139
+ // subtle: "#272B33",
140
+ // default: "#374151",
141
+ // strong: "#4B5563",
142
+ // focus: "#22D3EE", // brand primary
143
+ // },
144
+ // typography: {
145
+ // primary: "#F9FAFB", // main text
146
+ // secondary: "#D1D5DB", // muted text
147
+ // tertiary: "#9CA3AF", // tertiary text
148
+ // disabled: "#808892", // disabled gray
149
+ // inverse: "#111827", // inverse on bright backgrounds
150
+ // },
151
+ // states: {
152
+ // hover: "rgba(255, 255, 255, 0.04)",
153
+ // pressed: "rgba(255, 255, 255, 0.08)",
154
+ // focus: "",
155
+ // active: "",
156
+ // disabled: "rgba(255, 255, 255, 0.3)"
157
+ // },
158
+ // elevation: {
159
+ // level0: "none",
160
+ // level1: "0px 1px 3px rgba(0,0,0,0.4), 0px 1px 1px rgba(0,0,0,0.24), 0px 2px 1px -1px rgba(0,0,0,0.2)",
161
+ // level2: "0px 2px 4px rgba(0,0,0,0.36), 0px 2px 3px rgba(0,0,0,0.32)",
162
+ // level4: "0px 4px 6px rgba(0,0,0,0.3), 0px 2px 4px rgba(0,0,0,0.28)",
163
+ // level8: "0px 8px 12px rgba(0,0,0,0.28), 0px 4px 8px rgba(0,0,0,0.24)",
164
+ // level12: "0px 12px 17px rgba(0,0,0,0.26), 0px 5px 12px rgba(0,0,0,0.22)",
165
+ // level16: "0px 16px 24px rgba(0,0,0,0.25), 0px 6px 16px rgba(0,0,0,0.2)",
166
+ // level24: "0px 24px 38px rgba(0,0,0,0.24), 0px 9px 46px rgba(0,0,0,0.18)",
167
+ // }
168
+ // },
169
+ // sizes: {
170
+ // typography: typographySizes,
171
+ // dialog: dialogSizes
172
+ // }
173
+ // };
174
+
175
+ // DarkTheme.colors.states.focus = Color(DarkTheme.colors.brand.primary).mix(Color("white"), 0.8).alpha(0.1).rgb().string();
176
+ // DarkTheme.colors.states.active = Color(DarkTheme.colors.brand.primary).lighten(0).alpha(0.3).rgb().string();
177
+
178
178
  // export default DarkTheme;
@@ -1,89 +1,89 @@
1
- import Color from "color";
2
- import { dialogSizes, typographySizes } from "../constants";
3
- import type { ThemeTypes } from "../types";
4
-
5
- const colorPalette = {
6
- natural: {
7
- 0: "#FFFFFF", // pure white
8
- 50: "#F9FAFB", // very light gray (default page background)
9
- 100: "#F3F4F6", // light gray (elevated surfaces)
10
- 200: "#E5E7EB", // subtle borders, dividers
11
- 300: "#D1D5DB", // default borders, secondary text
12
- 400: "#9CA3AF", // strong borders, muted text
13
- 500: "#6B7280", // tertiary text
14
- 600: "#4B5563", // secondary text
15
- 700: "#374151", // primary text on light backgrounds
16
- 800: "#1F2937", // strong primary text
17
- 900: "#111827", // almost black
18
- }
19
- }
20
-
21
- const LightTheme: ThemeTypes = {
22
- isDark: false,
23
- colors: {
24
- palette: colorPalette,
25
- brand: {
26
- primary: "#034C53",
27
- onPrimary: "#FFFFFF",
28
- secondary: "#6366F1",
29
- onSecondary: "#FFFFFF",
30
- tertiary: "#F59E0B",
31
- onTertiary: "#111827",
32
- },
33
- semantic: {
34
- success: "#22C55E",
35
- onSuccess: "#FFFFFF",
36
- warning: "#FACC15",
37
- onWarning: "#111827",
38
- danger: "#EF4444",
39
- onDanger: "#FFFFFF",
40
- info: "#3B82F6",
41
- onInfo: "#FFFFFF",
42
- },
43
- background: {
44
- default: "#F9FAFB",
45
- // default: "#FFFFFF",
46
- surface: "#FFFFFF",
47
- // elevated: "#F3F4F6",
48
- // elevated: "#FAFAFA",
49
- elevated: "#FFFFFF",
50
- backdrop: "rgba(0,0,0,0.4)",
51
- },
52
- border: {
53
- subtle: "#E5E7EB",
54
- default: "#D1D5DB",
55
- // default: colorPalette.natural[300],
56
- strong: "#9CA3AF",
57
- focus: "#F97316",
58
- },
59
- typography: {
60
- primary: "#1A1A1A",
61
- secondary: "#4D4D4D",
62
- tertiary: "#808080",
63
- // disabled: "#B3B3B3",
64
- disabled: "#808080",
65
- inverse: "#FFFFFF"
66
- },
67
- states: {
68
- hover: "rgba(0, 0, 0, 0.04)",
69
- pressed: "rgba(0, 0, 0, 0.08)",
70
- focus: '',
71
- // disabled: "rgba(0, 0, 0, 0.26)"
72
- disabled: "rgb(184, 184, 184)"
73
- },
74
- elevation: {
75
- level0: "none",
76
- level1: "0px 1px 3px rgba(0,0,0,0.2), 0px 1px 1px rgba(0,0,0,0.14), 0px 2px 1px -1px rgba(0,0,0,0.12)",
77
- level2: "0px 2px 4px rgba(0,0,0,0.12), 0px 2px 3px rgba(0,0,0,0.18)",
78
- level3: "0px 4px 6px rgba(0,0,0,0.15), 0px 2px 4px rgba(0,0,0,0.12)",
79
- level4: "0px 8px 12px rgba(0,0,0,0.16), 0px 4px 8px rgba(0,0,0,0.12)"
80
- }
81
- },
82
- sizes: {
83
- typography: typographySizes,
84
- dialog: dialogSizes
85
- }
86
- }
87
- LightTheme.colors.states.focus = Color(LightTheme.colors.brand.primary).mix(Color("white"), 0.8).alpha(0.3).rgb().string();
88
-
1
+ import Color from "color";
2
+ import { dialogSizes, typographySizes } from "../constants";
3
+ import type { ThemeTypes } from "../types";
4
+
5
+ const colorPalette = {
6
+ natural: {
7
+ 0: "#FFFFFF", // pure white
8
+ 50: "#F9FAFB", // very light gray (default page background)
9
+ 100: "#F3F4F6", // light gray (elevated surfaces)
10
+ 200: "#E5E7EB", // subtle borders, dividers
11
+ 300: "#D1D5DB", // default borders, secondary text
12
+ 400: "#9CA3AF", // strong borders, muted text
13
+ 500: "#6B7280", // tertiary text
14
+ 600: "#4B5563", // secondary text
15
+ 700: "#374151", // primary text on light backgrounds
16
+ 800: "#1F2937", // strong primary text
17
+ 900: "#111827", // almost black
18
+ }
19
+ }
20
+
21
+ const LightTheme: ThemeTypes = {
22
+ isDark: false,
23
+ colors: {
24
+ palette: colorPalette,
25
+ brand: {
26
+ primary: "#034C53",
27
+ onPrimary: "#FFFFFF",
28
+ secondary: "#6366F1",
29
+ onSecondary: "#FFFFFF",
30
+ tertiary: "#F59E0B",
31
+ onTertiary: "#111827",
32
+ },
33
+ semantic: {
34
+ success: "#22C55E",
35
+ onSuccess: "#FFFFFF",
36
+ warning: "#FACC15",
37
+ onWarning: "#111827",
38
+ danger: "#EF4444",
39
+ onDanger: "#FFFFFF",
40
+ info: "#3B82F6",
41
+ onInfo: "#FFFFFF",
42
+ },
43
+ background: {
44
+ default: "#F9FAFB",
45
+ // default: "#FFFFFF",
46
+ surface: "#FFFFFF",
47
+ // elevated: "#F3F4F6",
48
+ // elevated: "#FAFAFA",
49
+ elevated: "#FFFFFF",
50
+ backdrop: "rgba(0,0,0,0.4)",
51
+ },
52
+ border: {
53
+ subtle: "#E5E7EB",
54
+ default: "#D1D5DB",
55
+ // default: colorPalette.natural[300],
56
+ strong: "#9CA3AF",
57
+ focus: "#F97316",
58
+ },
59
+ typography: {
60
+ primary: "#1A1A1A",
61
+ secondary: "#4D4D4D",
62
+ tertiary: "#808080",
63
+ // disabled: "#B3B3B3",
64
+ disabled: "#808080",
65
+ inverse: "#FFFFFF"
66
+ },
67
+ states: {
68
+ hover: "rgba(0, 0, 0, 0.04)",
69
+ pressed: "rgba(0, 0, 0, 0.08)",
70
+ focus: '',
71
+ // disabled: "rgba(0, 0, 0, 0.26)"
72
+ disabled: "rgb(184, 184, 184)"
73
+ },
74
+ elevation: {
75
+ level0: "none",
76
+ level1: "0px 1px 3px rgba(0,0,0,0.2), 0px 1px 1px rgba(0,0,0,0.14), 0px 2px 1px -1px rgba(0,0,0,0.12)",
77
+ level2: "0px 2px 4px rgba(0,0,0,0.12), 0px 2px 3px rgba(0,0,0,0.18)",
78
+ level3: "0px 4px 6px rgba(0,0,0,0.15), 0px 2px 4px rgba(0,0,0,0.12)",
79
+ level4: "0px 8px 12px rgba(0,0,0,0.16), 0px 4px 8px rgba(0,0,0,0.12)"
80
+ }
81
+ },
82
+ sizes: {
83
+ typography: typographySizes,
84
+ dialog: dialogSizes
85
+ }
86
+ }
87
+ LightTheme.colors.states.focus = Color(LightTheme.colors.brand.primary).mix(Color("white"), 0.8).alpha(0.3).rgb().string();
88
+
89
89
  export default LightTheme;
@@ -1,3 +1,3 @@
1
- export { default as LightTheme } from './LightTheme';
2
- export { default as DarkTheme } from './DarkTheme';
3
-
1
+ export { default as LightTheme } from './LightTheme';
2
+ export { default as DarkTheme } from './DarkTheme';
3
+
@@ -1,40 +1,40 @@
1
- import type { ImageProps, StyleProp, ViewStyle, ImageStyle, TextStyle } from "react-native";
2
-
3
- /** Props for the AvatarImage component */
4
- export type AvatarImageProps = {
5
- /** Size of the avatar (width & height) */
6
- size?: number;
7
-
8
- /** Image source (can be a remote URI or a local asset reference) */
9
- source?: { uri?: string } | number;
10
-
11
- /** Defines how the image should be resized to fit its container */
12
- resizeMode?: NonNullable<ImageProps['resizeMode']>;
13
-
14
- /** Custom styles for the avatar container */
15
- containerStyle?: StyleProp<ViewStyle>;
16
-
17
- /** Custom styles for the image inside the avatar */
18
- imageStyle?: StyleProp<ImageStyle>;
19
- };
20
-
21
- /** Props for the AvatarText component */
22
- export type AvatarTextProps = {
23
- /** Size of the avatar (width & height) */
24
- size?: number;
25
-
26
- /** Font size of the text inside the avatar */
27
- fs?: number;
28
-
29
- /** Text to be displayed inside the avatar (e.g., initials) */
30
- text?: string;
31
-
32
- /** Background color of the avatar */
33
- bg?: string;
34
-
35
- /** Custom styles for the avatar container */
36
- containerStyle?: StyleProp<ViewStyle>;
37
-
38
- /** Custom styles for the text inside the avatar */
39
- textStyle?: StyleProp<TextStyle>;
40
- };
1
+ import type { ImageProps, StyleProp, ViewStyle, ImageStyle, TextStyle } from "react-native";
2
+
3
+ /** Props for the AvatarImage component */
4
+ export type AvatarImageProps = {
5
+ /** Size of the avatar (width & height) */
6
+ size?: number;
7
+
8
+ /** Image source (can be a remote URI or a local asset reference) */
9
+ source?: { uri?: string } | number;
10
+
11
+ /** Defines how the image should be resized to fit its container */
12
+ resizeMode?: NonNullable<ImageProps['resizeMode']>;
13
+
14
+ /** Custom styles for the avatar container */
15
+ containerStyle?: StyleProp<ViewStyle>;
16
+
17
+ /** Custom styles for the image inside the avatar */
18
+ imageStyle?: StyleProp<ImageStyle>;
19
+ };
20
+
21
+ /** Props for the AvatarText component */
22
+ export type AvatarTextProps = {
23
+ /** Size of the avatar (width & height) */
24
+ size?: number;
25
+
26
+ /** Font size of the text inside the avatar */
27
+ fs?: number;
28
+
29
+ /** Text to be displayed inside the avatar (e.g., initials) */
30
+ text?: string;
31
+
32
+ /** Background color of the avatar */
33
+ bg?: string;
34
+
35
+ /** Custom styles for the avatar container */
36
+ containerStyle?: StyleProp<ViewStyle>;
37
+
38
+ /** Custom styles for the text inside the avatar */
39
+ textStyle?: StyleProp<TextStyle>;
40
+ };