@frosted-ui/react-native 0.0.1-canary.100

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 (207) hide show
  1. package/README.md +160 -0
  2. package/dist/components/accordion.d.ts +21 -0
  3. package/dist/components/accordion.d.ts.map +1 -0
  4. package/dist/components/accordion.js +94 -0
  5. package/dist/components/accordion.js.map +1 -0
  6. package/dist/components/alert-dialog.d.ts +67 -0
  7. package/dist/components/alert-dialog.d.ts.map +1 -0
  8. package/dist/components/alert-dialog.js +170 -0
  9. package/dist/components/alert-dialog.js.map +1 -0
  10. package/dist/components/aspect-ratio.d.ts +4 -0
  11. package/dist/components/aspect-ratio.d.ts.map +1 -0
  12. package/dist/components/aspect-ratio.js +4 -0
  13. package/dist/components/aspect-ratio.js.map +1 -0
  14. package/dist/components/avatar.d.ts +23 -0
  15. package/dist/components/avatar.d.ts.map +1 -0
  16. package/dist/components/avatar.js +128 -0
  17. package/dist/components/avatar.js.map +1 -0
  18. package/dist/components/badge.d.ts +15 -0
  19. package/dist/components/badge.d.ts.map +1 -0
  20. package/dist/components/badge.js +81 -0
  21. package/dist/components/badge.js.map +1 -0
  22. package/dist/components/button.d.ts +14 -0
  23. package/dist/components/button.d.ts.map +1 -0
  24. package/dist/components/button.js +81 -0
  25. package/dist/components/button.js.map +1 -0
  26. package/dist/components/callout.d.ts +23 -0
  27. package/dist/components/callout.d.ts.map +1 -0
  28. package/dist/components/callout.js +128 -0
  29. package/dist/components/callout.js.map +1 -0
  30. package/dist/components/card.d.ts +9 -0
  31. package/dist/components/card.d.ts.map +1 -0
  32. package/dist/components/card.js +41 -0
  33. package/dist/components/card.js.map +1 -0
  34. package/dist/components/checkbox.d.ts +12 -0
  35. package/dist/components/checkbox.d.ts.map +1 -0
  36. package/dist/components/checkbox.js +100 -0
  37. package/dist/components/checkbox.js.map +1 -0
  38. package/dist/components/circular-progress.d.ts +21 -0
  39. package/dist/components/circular-progress.d.ts.map +1 -0
  40. package/dist/components/circular-progress.js +78 -0
  41. package/dist/components/circular-progress.js.map +1 -0
  42. package/dist/components/code.d.ts +18 -0
  43. package/dist/components/code.d.ts.map +1 -0
  44. package/dist/components/code.js +83 -0
  45. package/dist/components/code.js.map +1 -0
  46. package/dist/components/context-menu.d.ts +65 -0
  47. package/dist/components/context-menu.d.ts.map +1 -0
  48. package/dist/components/context-menu.js +441 -0
  49. package/dist/components/context-menu.js.map +1 -0
  50. package/dist/components/dialog.d.ts +49 -0
  51. package/dist/components/dialog.d.ts.map +1 -0
  52. package/dist/components/dialog.js +141 -0
  53. package/dist/components/dialog.js.map +1 -0
  54. package/dist/components/dropdown-menu.d.ts +65 -0
  55. package/dist/components/dropdown-menu.d.ts.map +1 -0
  56. package/dist/components/dropdown-menu.js +441 -0
  57. package/dist/components/dropdown-menu.js.map +1 -0
  58. package/dist/components/heading.d.ts +15 -0
  59. package/dist/components/heading.d.ts.map +1 -0
  60. package/dist/components/heading.js +8 -0
  61. package/dist/components/heading.js.map +1 -0
  62. package/dist/components/hover-card.d.ts +24 -0
  63. package/dist/components/hover-card.d.ts.map +1 -0
  64. package/dist/components/hover-card.js +49 -0
  65. package/dist/components/hover-card.js.map +1 -0
  66. package/dist/components/icon-button.d.ts +14 -0
  67. package/dist/components/icon-button.d.ts.map +1 -0
  68. package/dist/components/icon-button.js +81 -0
  69. package/dist/components/icon-button.js.map +1 -0
  70. package/dist/components/icon.d.ts +27 -0
  71. package/dist/components/icon.d.ts.map +1 -0
  72. package/dist/components/icon.js +30 -0
  73. package/dist/components/icon.js.map +1 -0
  74. package/dist/components/index.d.ts +37 -0
  75. package/dist/components/index.d.ts.map +1 -0
  76. package/dist/components/index.js +49 -0
  77. package/dist/components/index.js.map +1 -0
  78. package/dist/components/label.d.ts +8 -0
  79. package/dist/components/label.d.ts.map +1 -0
  80. package/dist/components/label.js +26 -0
  81. package/dist/components/label.js.map +1 -0
  82. package/dist/components/link.d.ts +19 -0
  83. package/dist/components/link.d.ts.map +1 -0
  84. package/dist/components/link.js +68 -0
  85. package/dist/components/link.js.map +1 -0
  86. package/dist/components/list.d.ts +37 -0
  87. package/dist/components/list.d.ts.map +1 -0
  88. package/dist/components/list.js +112 -0
  89. package/dist/components/list.js.map +1 -0
  90. package/dist/components/native-only-animated-view.d.ts +219 -0
  91. package/dist/components/native-only-animated-view.d.ts.map +1 -0
  92. package/dist/components/native-only-animated-view.js +26 -0
  93. package/dist/components/native-only-animated-view.js.map +1 -0
  94. package/dist/components/popover.d.ts +24 -0
  95. package/dist/components/popover.d.ts.map +1 -0
  96. package/dist/components/popover.js +52 -0
  97. package/dist/components/popover.js.map +1 -0
  98. package/dist/components/progress.d.ts +14 -0
  99. package/dist/components/progress.d.ts.map +1 -0
  100. package/dist/components/progress.js +52 -0
  101. package/dist/components/progress.js.map +1 -0
  102. package/dist/components/radio-group.d.ts +18 -0
  103. package/dist/components/radio-group.d.ts.map +1 -0
  104. package/dist/components/radio-group.js +122 -0
  105. package/dist/components/radio-group.js.map +1 -0
  106. package/dist/components/segmented-control.d.ts +21 -0
  107. package/dist/components/segmented-control.d.ts.map +1 -0
  108. package/dist/components/segmented-control.js +113 -0
  109. package/dist/components/segmented-control.js.map +1 -0
  110. package/dist/components/select.d.ts +58 -0
  111. package/dist/components/select.d.ts.map +1 -0
  112. package/dist/components/select.js +491 -0
  113. package/dist/components/select.js.map +1 -0
  114. package/dist/components/separator.d.ts +12 -0
  115. package/dist/components/separator.d.ts.map +1 -0
  116. package/dist/components/separator.js +47 -0
  117. package/dist/components/separator.js.map +1 -0
  118. package/dist/components/skeleton.d.ts +28 -0
  119. package/dist/components/skeleton.d.ts.map +1 -0
  120. package/dist/components/skeleton.js +137 -0
  121. package/dist/components/skeleton.js.map +1 -0
  122. package/dist/components/slider.d.ts +30 -0
  123. package/dist/components/slider.d.ts.map +1 -0
  124. package/dist/components/slider.js +248 -0
  125. package/dist/components/slider.js.map +1 -0
  126. package/dist/components/spinner.d.ts +17 -0
  127. package/dist/components/spinner.d.ts.map +1 -0
  128. package/dist/components/spinner.js +199 -0
  129. package/dist/components/spinner.js.map +1 -0
  130. package/dist/components/switch.d.ts +12 -0
  131. package/dist/components/switch.d.ts.map +1 -0
  132. package/dist/components/switch.js +188 -0
  133. package/dist/components/switch.js.map +1 -0
  134. package/dist/components/tabs.d.ts +26 -0
  135. package/dist/components/tabs.d.ts.map +1 -0
  136. package/dist/components/tabs.js +125 -0
  137. package/dist/components/tabs.js.map +1 -0
  138. package/dist/components/text-area.d.ts +16 -0
  139. package/dist/components/text-area.d.ts.map +1 -0
  140. package/dist/components/text-area.js +121 -0
  141. package/dist/components/text-area.js.map +1 -0
  142. package/dist/components/text-field.d.ts +35 -0
  143. package/dist/components/text-field.d.ts.map +1 -0
  144. package/dist/components/text-field.js +300 -0
  145. package/dist/components/text-field.js.map +1 -0
  146. package/dist/components/text.d.ts +23 -0
  147. package/dist/components/text.d.ts.map +1 -0
  148. package/dist/components/text.js +44 -0
  149. package/dist/components/text.js.map +1 -0
  150. package/dist/components/tooltip.d.ts +24 -0
  151. package/dist/components/tooltip.d.ts.map +1 -0
  152. package/dist/components/tooltip.js +63 -0
  153. package/dist/components/tooltip.js.map +1 -0
  154. package/dist/index.d.ts +9 -0
  155. package/dist/index.d.ts.map +1 -0
  156. package/dist/index.js +18 -0
  157. package/dist/index.js.map +1 -0
  158. package/dist/lib/button-styles.d.ts +13 -0
  159. package/dist/lib/button-styles.d.ts.map +1 -0
  160. package/dist/lib/button-styles.js +115 -0
  161. package/dist/lib/button-styles.js.map +1 -0
  162. package/dist/lib/color-utils.d.ts +26 -0
  163. package/dist/lib/color-utils.d.ts.map +1 -0
  164. package/dist/lib/color-utils.js +48 -0
  165. package/dist/lib/color-utils.js.map +1 -0
  166. package/dist/lib/dialog-styles.d.ts +42 -0
  167. package/dist/lib/dialog-styles.d.ts.map +1 -0
  168. package/dist/lib/dialog-styles.js +162 -0
  169. package/dist/lib/dialog-styles.js.map +1 -0
  170. package/dist/lib/full-window-overlay.d.ts +11 -0
  171. package/dist/lib/full-window-overlay.d.ts.map +1 -0
  172. package/dist/lib/full-window-overlay.js +16 -0
  173. package/dist/lib/full-window-overlay.js.map +1 -0
  174. package/dist/lib/panel-styles.d.ts +32 -0
  175. package/dist/lib/panel-styles.d.ts.map +1 -0
  176. package/dist/lib/panel-styles.js +96 -0
  177. package/dist/lib/panel-styles.js.map +1 -0
  178. package/dist/lib/text-input-styles.d.ts +36 -0
  179. package/dist/lib/text-input-styles.d.ts.map +1 -0
  180. package/dist/lib/text-input-styles.js +88 -0
  181. package/dist/lib/text-input-styles.js.map +1 -0
  182. package/dist/lib/theme-context.d.ts +80 -0
  183. package/dist/lib/theme-context.d.ts.map +1 -0
  184. package/dist/lib/theme-context.js +97 -0
  185. package/dist/lib/theme-context.js.map +1 -0
  186. package/dist/lib/theme-tokens.d.ts +222 -0
  187. package/dist/lib/theme-tokens.d.ts.map +1 -0
  188. package/dist/lib/theme-tokens.js +158 -0
  189. package/dist/lib/theme-tokens.js.map +1 -0
  190. package/dist/lib/theme.d.ts +40 -0
  191. package/dist/lib/theme.d.ts.map +1 -0
  192. package/dist/lib/theme.js +194 -0
  193. package/dist/lib/theme.js.map +1 -0
  194. package/dist/lib/types.d.ts +18 -0
  195. package/dist/lib/types.d.ts.map +1 -0
  196. package/dist/lib/types.js +2 -0
  197. package/dist/lib/types.js.map +1 -0
  198. package/dist/lib/use-theme-tokens.d.ts +593 -0
  199. package/dist/lib/use-theme-tokens.d.ts.map +1 -0
  200. package/dist/lib/use-theme-tokens.js +44 -0
  201. package/dist/lib/use-theme-tokens.js.map +1 -0
  202. package/docs/llm/COLOR_SYSTEM.md +799 -0
  203. package/docs/llm/COMPONENTS.md +1329 -0
  204. package/docs/llm/DESIGN_PATTERNS.md +2567 -0
  205. package/docs/llm/README.md +118 -0
  206. package/docs/llm/TYPOGRAPHY.md +516 -0
  207. package/package.json +106 -0
@@ -0,0 +1,158 @@
1
+ /* eslint-disable @typescript-eslint/no-var-requires */
2
+ // Typography steps (0-9) based on Frosted UI design system tokens.
3
+ // Values are in px; React Native treats them as logical pixels.
4
+ const typography = {
5
+ '0': { fontSize: 10, lineHeight: 12, letterSpacing: 0.01 },
6
+ '1': { fontSize: 12, lineHeight: 16, letterSpacing: 0.01 },
7
+ '2': { fontSize: 14, lineHeight: 20, letterSpacing: 0.01 },
8
+ '3': { fontSize: 16, lineHeight: 24, letterSpacing: 0.01 },
9
+ '4': { fontSize: 18, lineHeight: 26, letterSpacing: 0.01 },
10
+ '5': { fontSize: 20, lineHeight: 28, letterSpacing: 0.01 },
11
+ '6': { fontSize: 24, lineHeight: 30, letterSpacing: 0.01 },
12
+ '7': { fontSize: 28, lineHeight: 34, letterSpacing: 0.005 },
13
+ '8': { fontSize: 32, lineHeight: 38, letterSpacing: 0 },
14
+ '9': { fontSize: 40, lineHeight: 48, letterSpacing: 0 },
15
+ };
16
+ const fontWeights = {
17
+ light: '300',
18
+ regular: '400',
19
+ medium: '500',
20
+ 'semi-bold': '600',
21
+ bold: '700',
22
+ };
23
+ // Color palettes from @frosted-ui/colors for light/dark schemes
24
+ const frostedColors = require('@frosted-ui/colors');
25
+ const contrastColors = {
26
+ tomato: 'white',
27
+ red: 'white',
28
+ ruby: 'white',
29
+ crimson: 'white',
30
+ pink: 'white',
31
+ plum: 'white',
32
+ purple: 'white',
33
+ violet: 'white',
34
+ iris: 'white',
35
+ cyan: 'white',
36
+ teal: 'white',
37
+ jade: 'white',
38
+ green: 'white',
39
+ grass: 'white',
40
+ brown: 'white',
41
+ sky: '#1C2024',
42
+ mint: '#1A211E',
43
+ yellow: '#21201C',
44
+ amber: '#21201C',
45
+ gold: 'white',
46
+ bronze: 'white',
47
+ gray: 'white',
48
+ blue: 'white',
49
+ orange: 'white',
50
+ indigo: 'white',
51
+ magenta: '#141212',
52
+ lemon: '#20240D',
53
+ lime: '#162715',
54
+ };
55
+ function buildPalette(color, mode) {
56
+ const baseKey = mode === 'light' ? color : `${color}Dark`;
57
+ const alphaKey = mode === 'light' ? `${color}A` : `${color}DarkA`;
58
+ const base = frostedColors[baseKey];
59
+ const alpha = frostedColors[alphaKey];
60
+ const result = {};
61
+ ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12'].forEach((shade) => {
62
+ const key = `${color}${shade}`;
63
+ result[shade] = base?.[key] ?? '';
64
+ });
65
+ ['a1', 'a2', 'a3', 'a4', 'a5', 'a6', 'a7', 'a8', 'a9', 'a10', 'a11', 'a12'].forEach((aShade) => {
66
+ const numeric = aShade.slice(1);
67
+ const key = `${color}A${numeric}`;
68
+ result[aShade] = alpha?.[key] ?? '';
69
+ });
70
+ result['9-contrast'] = contrastColors[color];
71
+ return result;
72
+ }
73
+ const accentColors = [
74
+ 'tomato',
75
+ 'red',
76
+ 'ruby',
77
+ 'crimson',
78
+ 'pink',
79
+ 'plum',
80
+ 'purple',
81
+ 'violet',
82
+ 'iris',
83
+ 'cyan',
84
+ 'teal',
85
+ 'jade',
86
+ 'green',
87
+ 'grass',
88
+ 'brown',
89
+ 'blue',
90
+ 'orange',
91
+ 'indigo',
92
+ 'sky',
93
+ 'mint',
94
+ 'yellow',
95
+ 'amber',
96
+ 'lime',
97
+ 'lemon',
98
+ 'magenta',
99
+ 'gold',
100
+ 'bronze',
101
+ 'gray',
102
+ ];
103
+ const lightPalettes = accentColors.reduce((acc, color) => {
104
+ acc[color] = buildPalette(color, 'light');
105
+ return acc;
106
+ }, {});
107
+ const darkPalettes = accentColors.reduce((acc, color) => {
108
+ acc[color] = buildPalette(color, 'dark');
109
+ return acc;
110
+ }, {});
111
+ // Semantic surface tokens for light/dark modes
112
+ // Resolve overlay / stroke from raw color palettes so native can use real values
113
+ const blackA = frostedColors.blackA;
114
+ const whiteA = frostedColors.whiteA;
115
+ const grayDark = frostedColors.grayDark;
116
+ function buildAlphaPalette(alphaColors, prefix) {
117
+ const result = {};
118
+ ['a1', 'a2', 'a3', 'a4', 'a5', 'a6', 'a7', 'a8', 'a9', 'a10', 'a11', 'a12'].forEach((aShade) => {
119
+ const numeric = aShade.slice(1);
120
+ const key = `${prefix}A${numeric}`;
121
+ result[aShade] = alphaColors?.[key] ?? '';
122
+ });
123
+ return result;
124
+ }
125
+ const blackAlpha = buildAlphaPalette(blackA, 'black');
126
+ const whiteAlpha = buildAlphaPalette(whiteA, 'white');
127
+ // Black and white palettes (same for light and dark mode)
128
+ export function blackAndWhitePalettes() {
129
+ return {
130
+ black: blackAlpha,
131
+ white: whiteAlpha,
132
+ };
133
+ }
134
+ export const themeTokens = {
135
+ typography,
136
+ fontWeights,
137
+ colors: {
138
+ light: {
139
+ palettes: { ...lightPalettes, ...blackAndWhitePalettes() },
140
+ background: 'white',
141
+ overlay: blackA?.blackA6 ?? 'rgba(0, 0, 0, 0.35)',
142
+ panelSolid: 'white',
143
+ panelTranslucent: 'rgba(255, 255, 255, 0.85)',
144
+ surface: 'rgba(255, 255, 255, 0.9)',
145
+ stroke: lightPalettes.gray.a5,
146
+ },
147
+ dark: {
148
+ palettes: { ...darkPalettes, ...blackAndWhitePalettes() },
149
+ background: grayDark?.gray1 ?? '#111111',
150
+ overlay: blackA?.blackA8 ?? 'rgba(0, 0, 0, 0.5)',
151
+ panelSolid: grayDark?.gray2 ?? '#181818',
152
+ panelTranslucent: '#1D1D1DD9', // --gray-2-translucent
153
+ surface: 'rgba(0, 0, 0, 0.25)',
154
+ stroke: darkPalettes.gray.a4,
155
+ },
156
+ },
157
+ };
158
+ //# sourceMappingURL=theme-tokens.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme-tokens.js","sourceRoot":"","sources":["../../src/lib/theme-tokens.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ type FontWeight = 'normal' | 'bold' | '100' | '200' | '300' | '400' | '500' | '600' | '700' | '800' | '900';
2
+ type FontStyle = {
3
+ fontFamily: string;
4
+ fontWeight: FontWeight;
5
+ };
6
+ interface Theme {
7
+ dark: boolean;
8
+ colors: {
9
+ primary: string;
10
+ background: string;
11
+ card: string;
12
+ text: string;
13
+ border: string;
14
+ notification: string;
15
+ };
16
+ fonts: {
17
+ regular: FontStyle;
18
+ medium: FontStyle;
19
+ bold: FontStyle;
20
+ heavy: FontStyle;
21
+ };
22
+ }
23
+ export declare const fonts: Theme['fonts'];
24
+ /**
25
+ * Hook to get navigation theme using Frosted UI design system colors.
26
+ * Reacts to the accent color from ThemeProvider.
27
+ *
28
+ * React Navigation uses these colors to style the navigation UI elements
29
+ * (headers, tab bars, drawers, etc.) throughout your app.
30
+ *
31
+ * @see https://reactnavigation.org/docs/themes
32
+ */
33
+ export declare function useNavTheme(): Record<'light' | 'dark', Theme>;
34
+ /**
35
+ * @deprecated Use useNavTheme() hook instead for dynamic accent color support.
36
+ * Static navigation theme with hardcoded blue accent.
37
+ */
38
+ export declare const NAV_THEME: Record<'light' | 'dark', Theme>;
39
+ export {};
40
+ //# sourceMappingURL=theme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../src/lib/theme.ts"],"names":[],"mappings":"AASA,KAAK,UAAU,GACX,QAAQ,GACR,MAAM,GACN,KAAK,GACL,KAAK,GACL,KAAK,GACL,KAAK,GACL,KAAK,GACL,KAAK,GACL,KAAK,GACL,KAAK,GACL,KAAK,CAAC;AAEV,KAAK,SAAS,GAAG;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,UAAU,CAAC;CACxB,CAAC;AAEF,UAAU,KAAK;IACb,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE;QACN,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,KAAK,EAAE;QACL,OAAO,EAAE,SAAS,CAAC;QACnB,MAAM,EAAE,SAAS,CAAC;QAClB,IAAI,EAAE,SAAS,CAAC;QAChB,KAAK,EAAE,SAAS,CAAC;KAClB,CAAC;CACH;AA8DD,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,OAAO,CAC4B,CAAC;AA6B9D;;;;;;;;GAQG;AACH,wBAAgB,WAAW,IAAI,MAAM,CAAC,OAAO,GAAG,MAAM,EAAE,KAAK,CAAC,CA+E7D;AAED;;;GAGG;AACH,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,OAAO,GAAG,MAAM,EAAE,KAAK,CAuBrD,CAAC"}
@@ -0,0 +1,194 @@
1
+ import { useMemo } from 'react';
2
+ import { useSemanticColors } from './theme-context';
3
+ import { themeTokens } from './theme-tokens';
4
+ const light = themeTokens.colors.light;
5
+ const dark = themeTokens.colors.dark;
6
+ import { Platform } from 'react-native';
7
+ const WEB_FONT_STACK = 'system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"';
8
+ const fontsByPlatform = {
9
+ web: {
10
+ regular: {
11
+ fontFamily: WEB_FONT_STACK,
12
+ fontWeight: '400',
13
+ },
14
+ medium: {
15
+ fontFamily: WEB_FONT_STACK,
16
+ fontWeight: '500',
17
+ },
18
+ bold: {
19
+ fontFamily: WEB_FONT_STACK,
20
+ fontWeight: '600',
21
+ },
22
+ heavy: {
23
+ fontFamily: WEB_FONT_STACK,
24
+ fontWeight: '700',
25
+ },
26
+ },
27
+ ios: {
28
+ regular: {
29
+ fontFamily: 'System',
30
+ fontWeight: '400',
31
+ },
32
+ medium: {
33
+ fontFamily: 'System',
34
+ fontWeight: '500',
35
+ },
36
+ bold: {
37
+ fontFamily: 'System',
38
+ fontWeight: '600',
39
+ },
40
+ heavy: {
41
+ fontFamily: 'System',
42
+ fontWeight: '700',
43
+ },
44
+ },
45
+ default: {
46
+ regular: {
47
+ fontFamily: 'sans-serif',
48
+ fontWeight: 'normal',
49
+ },
50
+ medium: {
51
+ fontFamily: 'sans-serif-medium',
52
+ fontWeight: 'normal',
53
+ },
54
+ bold: {
55
+ fontFamily: 'sans-serif',
56
+ fontWeight: '600',
57
+ },
58
+ heavy: {
59
+ fontFamily: 'sans-serif',
60
+ fontWeight: '700',
61
+ },
62
+ },
63
+ };
64
+ export const fonts = Platform.select(fontsByPlatform) ?? fontsByPlatform.default;
65
+ const DefaultTheme = {
66
+ dark: false,
67
+ colors: {
68
+ primary: 'rgb(0, 122, 255)',
69
+ background: 'rgb(242, 242, 242)',
70
+ card: 'rgb(255, 255, 255)',
71
+ text: 'rgb(28, 28, 30)',
72
+ border: 'rgb(216, 216, 216)',
73
+ notification: 'rgb(255, 59, 48)',
74
+ },
75
+ fonts,
76
+ };
77
+ const DarkTheme = {
78
+ dark: true,
79
+ colors: {
80
+ primary: 'rgb(10, 132, 255)',
81
+ background: 'rgb(1, 1, 1)',
82
+ card: 'rgb(18, 18, 18)',
83
+ text: 'rgb(229, 229, 231)',
84
+ border: 'rgb(39, 39, 41)',
85
+ notification: 'rgb(255, 69, 58)',
86
+ },
87
+ fonts,
88
+ };
89
+ /**
90
+ * Hook to get navigation theme using Frosted UI design system colors.
91
+ * Reacts to the accent color from ThemeProvider.
92
+ *
93
+ * React Navigation uses these colors to style the navigation UI elements
94
+ * (headers, tab bars, drawers, etc.) throughout your app.
95
+ *
96
+ * @see https://reactnavigation.org/docs/themes
97
+ */
98
+ export function useNavTheme() {
99
+ const { accentColor, dangerColor } = useSemanticColors();
100
+ return useMemo(() => {
101
+ const lightAccent = light.palettes[accentColor];
102
+ const darkAccent = dark.palettes[accentColor];
103
+ const lightDanger = light.palettes[dangerColor];
104
+ const darkDanger = dark.palettes[dangerColor];
105
+ return {
106
+ light: {
107
+ ...DefaultTheme,
108
+ colors: {
109
+ /**
110
+ * background - The main background color of screens.
111
+ * Used for: Screen backgrounds, the area behind content.
112
+ */
113
+ background: light.background,
114
+ /**
115
+ * border - Color for borders and dividers.
116
+ * Used for: Header bottom border, tab bar top border,
117
+ * separator lines between list items.
118
+ */
119
+ border: light.stroke,
120
+ /**
121
+ * card - Background color for card-like elements.
122
+ * Used for: Header background, tab bar background,
123
+ * drawer background, modal backgrounds.
124
+ */
125
+ card: light.panelSolid,
126
+ /**
127
+ * notification - Color for notification badges.
128
+ * Used for: Badge dots on tab bar icons (e.g., unread count),
129
+ * uses the danger color from ThemeProvider.
130
+ */
131
+ notification: lightDanger['9'],
132
+ /**
133
+ * primary - The primary/accent color for interactive elements.
134
+ * Used for: Active tab icon tint, focused input borders,
135
+ * header button colors, link colors.
136
+ */
137
+ primary: lightAccent['a11'],
138
+ /**
139
+ * text - Default text color.
140
+ * Used for: Header title, tab bar labels, drawer item text,
141
+ * and any navigation-related text.
142
+ */
143
+ text: light.palettes.gray['12'],
144
+ },
145
+ },
146
+ dark: {
147
+ ...DarkTheme,
148
+ colors: {
149
+ /** background - Screen backgrounds in dark mode */
150
+ background: dark.background,
151
+ /** border - Borders/dividers in dark mode */
152
+ border: dark.stroke,
153
+ /** card - Header/tab bar backgrounds in dark mode */
154
+ card: dark.panelSolid,
155
+ /** notification - Badge color uses danger color */
156
+ notification: darkDanger['9'],
157
+ /** primary - Active/accent color in dark mode */
158
+ primary: darkAccent['a11'],
159
+ /** text - Text color in dark mode */
160
+ text: dark.palettes.gray['12'],
161
+ },
162
+ },
163
+ };
164
+ }, [accentColor, dangerColor]);
165
+ }
166
+ /**
167
+ * @deprecated Use useNavTheme() hook instead for dynamic accent color support.
168
+ * Static navigation theme with hardcoded blue accent.
169
+ */
170
+ export const NAV_THEME = {
171
+ light: {
172
+ ...DefaultTheme,
173
+ colors: {
174
+ background: light.background,
175
+ border: light.stroke,
176
+ card: light.panelSolid,
177
+ notification: light.palettes.red['9'],
178
+ primary: light.palettes.blue['a11'],
179
+ text: light.palettes.gray['12'],
180
+ },
181
+ },
182
+ dark: {
183
+ ...DarkTheme,
184
+ colors: {
185
+ background: dark.background,
186
+ border: dark.stroke,
187
+ card: dark.panelSolid,
188
+ notification: dark.palettes.red['9'],
189
+ primary: dark.palettes.blue['a11'],
190
+ text: dark.palettes.gray['12'],
191
+ },
192
+ },
193
+ };
194
+ //# sourceMappingURL=theme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme.js","sourceRoot":"","sources":["../../src/lib/theme.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Accent colors available in Frosted UI
3
+ * These match the web version's accentColor values
4
+ */
5
+ export type AccentColor = 'tomato' | 'red' | 'ruby' | 'crimson' | 'pink' | 'plum' | 'purple' | 'violet' | 'iris' | 'cyan' | 'teal' | 'jade' | 'green' | 'grass' | 'brown' | 'blue' | 'orange' | 'indigo' | 'sky' | 'mint' | 'yellow' | 'amber' | 'lime' | 'lemon' | 'magenta' | 'gold' | 'bronze' | 'gray';
6
+ /**
7
+ * Semantic colors that map to accent colors based on ThemeProvider settings
8
+ */
9
+ export type SemanticColor = 'danger' | 'warning' | 'success' | 'info';
10
+ /**
11
+ * Special color that uses the ThemeProvider's accentColor setting
12
+ */
13
+ export type DynamicAccentColor = 'accent';
14
+ /**
15
+ * All available color values for component color props
16
+ */
17
+ export type Color = AccentColor | SemanticColor | DynamicAccentColor;
18
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/lib/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,MAAM,WAAW,GACnB,QAAQ,GACR,KAAK,GACL,MAAM,GACN,SAAS,GACT,MAAM,GACN,MAAM,GACN,QAAQ,GACR,QAAQ,GACR,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GACN,OAAO,GACP,OAAO,GACP,OAAO,GACP,MAAM,GACN,QAAQ,GACR,QAAQ,GACR,KAAK,GACL,MAAM,GACN,QAAQ,GACR,OAAO,GACP,MAAM,GACN,OAAO,GACP,SAAS,GACT,MAAM,GACN,QAAQ,GACR,MAAM,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC;AAEtE;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,QAAQ,CAAC;AAE1C;;GAEG;AACH,MAAM,MAAM,KAAK,GAAG,WAAW,GAAG,aAAa,GAAG,kBAAkB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/lib/types.ts"],"names":[],"mappings":""}