@frosted-ui/react-native 0.0.1-canary.91 → 0.0.1-canary.94

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 (172) hide show
  1. package/README.md +72 -14
  2. package/dist/components/accordion.js +2 -2
  3. package/dist/components/accordion.js.map +1 -1
  4. package/dist/components/alert-dialog.js +2 -2
  5. package/dist/components/alert-dialog.js.map +1 -1
  6. package/dist/components/avatar.d.ts.map +1 -1
  7. package/dist/components/avatar.js +5 -20
  8. package/dist/components/avatar.js.map +1 -1
  9. package/dist/components/badge.d.ts +2 -4
  10. package/dist/components/badge.d.ts.map +1 -1
  11. package/dist/components/badge.js +8 -22
  12. package/dist/components/badge.js.map +1 -1
  13. package/dist/components/button.d.ts +1 -1
  14. package/dist/components/button.d.ts.map +1 -1
  15. package/dist/components/button.js +13 -17
  16. package/dist/components/button.js.map +1 -1
  17. package/dist/components/callout.d.ts +2 -4
  18. package/dist/components/callout.d.ts.map +1 -1
  19. package/dist/components/callout.js +6 -24
  20. package/dist/components/callout.js.map +1 -1
  21. package/dist/components/card.d.ts +1 -2
  22. package/dist/components/card.d.ts.map +1 -1
  23. package/dist/components/card.js +4 -4
  24. package/dist/components/card.js.map +1 -1
  25. package/dist/components/checkbox.d.ts +1 -2
  26. package/dist/components/checkbox.d.ts.map +1 -1
  27. package/dist/components/checkbox.js +5 -21
  28. package/dist/components/checkbox.js.map +1 -1
  29. package/dist/components/code.d.ts +6 -8
  30. package/dist/components/code.d.ts.map +1 -1
  31. package/dist/components/code.js +7 -7
  32. package/dist/components/code.js.map +1 -1
  33. package/dist/components/context-menu.js +9 -9
  34. package/dist/components/context-menu.js.map +1 -1
  35. package/dist/components/dialog.js +2 -2
  36. package/dist/components/dialog.js.map +1 -1
  37. package/dist/components/dropdown-menu.js +9 -9
  38. package/dist/components/dropdown-menu.js.map +1 -1
  39. package/dist/components/heading.d.ts +6 -6
  40. package/dist/components/heading.d.ts.map +1 -1
  41. package/dist/components/heading.js +2 -2
  42. package/dist/components/heading.js.map +1 -1
  43. package/dist/components/hover-card.js +2 -2
  44. package/dist/components/hover-card.js.map +1 -1
  45. package/dist/components/icon-button.d.ts +2 -2
  46. package/dist/components/icon-button.d.ts.map +1 -1
  47. package/dist/components/icon-button.js +13 -17
  48. package/dist/components/icon-button.js.map +1 -1
  49. package/dist/components/icon.d.ts +6 -7
  50. package/dist/components/icon.d.ts.map +1 -1
  51. package/dist/components/icon.js +9 -24
  52. package/dist/components/icon.js.map +1 -1
  53. package/dist/components/index.d.ts +2 -0
  54. package/dist/components/index.d.ts.map +1 -1
  55. package/dist/components/index.js +2 -0
  56. package/dist/components/index.js.map +1 -1
  57. package/dist/components/label.js +2 -2
  58. package/dist/components/label.js.map +1 -1
  59. package/dist/components/link.d.ts +19 -0
  60. package/dist/components/link.d.ts.map +1 -0
  61. package/dist/components/link.js +68 -0
  62. package/dist/components/link.js.map +1 -0
  63. package/dist/components/list.d.ts +37 -0
  64. package/dist/components/list.d.ts.map +1 -0
  65. package/dist/components/list.js +112 -0
  66. package/dist/components/list.js.map +1 -0
  67. package/dist/components/native-only-animated-view.d.ts +0 -4
  68. package/dist/components/native-only-animated-view.d.ts.map +1 -1
  69. package/dist/components/popover.js +2 -2
  70. package/dist/components/popover.js.map +1 -1
  71. package/dist/components/progress.d.ts +1 -2
  72. package/dist/components/progress.d.ts.map +1 -1
  73. package/dist/components/progress.js +5 -21
  74. package/dist/components/progress.js.map +1 -1
  75. package/dist/components/radio-group.d.ts +1 -2
  76. package/dist/components/radio-group.d.ts.map +1 -1
  77. package/dist/components/radio-group.js +7 -23
  78. package/dist/components/radio-group.js.map +1 -1
  79. package/dist/components/segmented-control.js +3 -3
  80. package/dist/components/segmented-control.js.map +1 -1
  81. package/dist/components/select.d.ts.map +1 -1
  82. package/dist/components/select.js +11 -13
  83. package/dist/components/select.js.map +1 -1
  84. package/dist/components/separator.d.ts +1 -1
  85. package/dist/components/separator.d.ts.map +1 -1
  86. package/dist/components/separator.js +4 -21
  87. package/dist/components/separator.js.map +1 -1
  88. package/dist/components/skeleton.d.ts.map +1 -1
  89. package/dist/components/skeleton.js +10 -26
  90. package/dist/components/skeleton.js.map +1 -1
  91. package/dist/components/spinner.js +2 -2
  92. package/dist/components/spinner.js.map +1 -1
  93. package/dist/components/switch.d.ts +1 -2
  94. package/dist/components/switch.d.ts.map +1 -1
  95. package/dist/components/switch.js +5 -21
  96. package/dist/components/switch.js.map +1 -1
  97. package/dist/components/tabs.d.ts +4 -3
  98. package/dist/components/tabs.d.ts.map +1 -1
  99. package/dist/components/tabs.js +10 -9
  100. package/dist/components/tabs.js.map +1 -1
  101. package/dist/components/text-area.d.ts.map +1 -1
  102. package/dist/components/text-area.js +13 -9
  103. package/dist/components/text-area.js.map +1 -1
  104. package/dist/components/text-field.d.ts.map +1 -1
  105. package/dist/components/text-field.js +62 -18
  106. package/dist/components/text-field.js.map +1 -1
  107. package/dist/components/text.d.ts +6 -6
  108. package/dist/components/text.d.ts.map +1 -1
  109. package/dist/components/text.js +22 -11
  110. package/dist/components/text.js.map +1 -1
  111. package/dist/components/tooltip.js +2 -2
  112. package/dist/components/tooltip.js.map +1 -1
  113. package/dist/index.d.ts +6 -1
  114. package/dist/index.d.ts.map +1 -1
  115. package/dist/index.js +11 -1
  116. package/dist/index.js.map +1 -1
  117. package/dist/lib/button-styles.d.ts +6 -6
  118. package/dist/lib/button-styles.d.ts.map +1 -1
  119. package/dist/lib/button-styles.js +1 -17
  120. package/dist/lib/button-styles.js.map +1 -1
  121. package/dist/lib/color-utils.d.ts +19 -14
  122. package/dist/lib/color-utils.d.ts.map +1 -1
  123. package/dist/lib/color-utils.js +37 -73
  124. package/dist/lib/color-utils.js.map +1 -1
  125. package/dist/lib/full-window-overlay.d.ts +11 -0
  126. package/dist/lib/full-window-overlay.d.ts.map +1 -0
  127. package/dist/lib/full-window-overlay.js +16 -0
  128. package/dist/lib/full-window-overlay.js.map +1 -0
  129. package/dist/lib/text-input-styles.d.ts +9 -8
  130. package/dist/lib/text-input-styles.d.ts.map +1 -1
  131. package/dist/lib/text-input-styles.js +4 -23
  132. package/dist/lib/text-input-styles.js.map +1 -1
  133. package/dist/lib/theme-context.d.ts +80 -0
  134. package/dist/lib/theme-context.d.ts.map +1 -0
  135. package/dist/lib/theme-context.js +97 -0
  136. package/dist/lib/theme-context.js.map +1 -0
  137. package/dist/lib/{theme-vars.d.ts → theme-tokens.d.ts} +2 -2
  138. package/dist/lib/theme-tokens.d.ts.map +1 -0
  139. package/dist/lib/{theme-vars.js → theme-tokens.js} +4 -19
  140. package/dist/lib/theme-tokens.js.map +1 -0
  141. package/dist/lib/theme.d.ts +14 -54
  142. package/dist/lib/theme.d.ts.map +1 -1
  143. package/dist/lib/theme.js +98 -66
  144. package/dist/lib/theme.js.map +1 -1
  145. package/dist/lib/types.d.ts +6 -2
  146. package/dist/lib/types.d.ts.map +1 -1
  147. package/dist/lib/use-theme-tokens.d.ts +593 -0
  148. package/dist/lib/use-theme-tokens.d.ts.map +1 -0
  149. package/dist/lib/use-theme-tokens.js +44 -0
  150. package/dist/lib/use-theme-tokens.js.map +1 -0
  151. package/docs/llm/COLOR_SYSTEM.md +799 -0
  152. package/docs/llm/COMPONENTS.md +1183 -0
  153. package/docs/llm/DESIGN_PATTERNS.md +2466 -0
  154. package/docs/llm/README.md +117 -0
  155. package/docs/llm/TYPOGRAPHY.md +516 -0
  156. package/package.json +11 -21
  157. package/dist/lib/native-colors.d.ts +0 -8
  158. package/dist/lib/native-colors.d.ts.map +0 -1
  159. package/dist/lib/native-colors.js +0 -67
  160. package/dist/lib/native-colors.js.map +0 -1
  161. package/dist/lib/theme-vars.d.ts.map +0 -1
  162. package/dist/lib/theme-vars.js.map +0 -1
  163. package/dist/lib/use-theme-vars.d.ts +0 -325
  164. package/dist/lib/use-theme-vars.d.ts.map +0 -1
  165. package/dist/lib/use-theme-vars.js +0 -17
  166. package/dist/lib/use-theme-vars.js.map +0 -1
  167. package/dist/lib/utils.d.ts +0 -3
  168. package/dist/lib/utils.d.ts.map +0 -1
  169. package/dist/lib/utils.js +0 -17
  170. package/dist/lib/utils.js.map +0 -1
  171. package/global.css +0 -1813
  172. package/tailwind-preset.js +0 -310
@@ -1,23 +1,4 @@
1
1
  import { Platform } from 'react-native';
2
- // ============================================================================
3
- // Helpers
4
- // ============================================================================
5
- export function resolveAccentFromColor(color) {
6
- if (!color)
7
- return 'gray';
8
- switch (color) {
9
- case 'danger':
10
- return 'red';
11
- case 'warning':
12
- return 'amber';
13
- case 'success':
14
- return 'green';
15
- case 'info':
16
- return 'blue';
17
- default:
18
- return color;
19
- }
20
- }
21
2
  /**
22
3
  * Convert hex color to rgba with specified opacity
23
4
  */
@@ -56,17 +37,17 @@ export function getSurfaceVariantStyle(colors) {
56
37
  /**
57
38
  * Get background style for soft variant
58
39
  */
59
- export function getSoftVariantStyle(colors, accentColor) {
40
+ export function getSoftVariantStyle(colors, paletteKey) {
60
41
  return {
61
- backgroundColor: colors.palettes[accentColor].a3,
42
+ backgroundColor: colors.palettes[paletteKey].a3,
62
43
  };
63
44
  }
64
45
  /**
65
46
  * Get text and placeholder colors based on variant
66
47
  */
67
- export function getTextInputColors(variant, colors, accentColor, disabled) {
48
+ export function getTextInputColors(variant, colors, paletteKey, disabled) {
68
49
  const grayPalette = colors.palettes.gray;
69
- const palette = colors.palettes[accentColor];
50
+ const palette = colors.palettes[paletteKey];
70
51
  // Disabled state: always use gray-a11 for text
71
52
  // Placeholder uses gray-a5 (lighter alpha shade approximating gray-a11 at 0.5 opacity)
72
53
  if (disabled) {
@@ -1 +1 @@
1
- {"version":3,"file":"text-input-styles.js","sourceRoot":"","sources":["../../src/lib/text-input-styles.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"text-input-styles.js","sourceRoot":"","sources":["../../src/lib/text-input-styles.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,80 @@
1
+ import * as React from 'react';
2
+ import type { AccentColor } from './types';
3
+ type ColorScheme = 'light' | 'dark';
4
+ type DangerColor = 'tomato' | 'red' | 'ruby';
5
+ type WarningColor = 'yellow' | 'amber';
6
+ type SuccessColor = 'teal' | 'jade' | 'green' | 'grass';
7
+ type InfoColor = 'blue' | 'sky';
8
+ type SemanticColorConfig = {
9
+ accentColor: AccentColor;
10
+ dangerColor: DangerColor;
11
+ warningColor: WarningColor;
12
+ successColor: SuccessColor;
13
+ infoColor: InfoColor;
14
+ };
15
+ declare const defaultSemanticColors: SemanticColorConfig;
16
+ type ThemeContextValue = {
17
+ colorScheme: ColorScheme;
18
+ setColorScheme: (scheme: ColorScheme) => void;
19
+ toggleColorScheme: () => void;
20
+ } & SemanticColorConfig;
21
+ declare const ThemeContext: React.Context<ThemeContextValue | undefined>;
22
+ type ThemeProviderProps = {
23
+ children: React.ReactNode;
24
+ /** Initial color scheme. Defaults to system preference. */
25
+ defaultColorScheme?: ColorScheme;
26
+ /** Accent color for primary actions and highlights. Defaults to 'blue'. */
27
+ accentColor?: AccentColor;
28
+ /** Color for danger/error states. Defaults to 'red'. */
29
+ dangerColor?: DangerColor;
30
+ /** Color for warning states. Defaults to 'amber'. */
31
+ warningColor?: WarningColor;
32
+ /** Color for success states. Defaults to 'green'. */
33
+ successColor?: SuccessColor;
34
+ /** Color for informational states. Defaults to 'sky'. */
35
+ infoColor?: InfoColor;
36
+ };
37
+ /**
38
+ * Provider for theme context that allows programmatic color scheme control
39
+ * and semantic color customization.
40
+ *
41
+ * Wrap your app with this provider to enable theme toggling and custom colors.
42
+ *
43
+ * @example
44
+ * function App() {
45
+ * return (
46
+ * <ThemeProvider
47
+ * accentColor="purple"
48
+ * dangerColor="tomato"
49
+ * warningColor="yellow"
50
+ * successColor="teal"
51
+ * infoColor="blue"
52
+ * >
53
+ * <YourApp />
54
+ * </ThemeProvider>
55
+ * );
56
+ * }
57
+ */
58
+ declare function ThemeProvider({ children, defaultColorScheme, accentColor, dangerColor, warningColor, successColor, infoColor, }: ThemeProviderProps): React.JSX.Element;
59
+ /**
60
+ * Hook to access and control the current color scheme.
61
+ * Must be used within a ThemeProvider.
62
+ *
63
+ * @example
64
+ * const { colorScheme, toggleColorScheme, accentColor } = useTheme();
65
+ */
66
+ declare function useTheme(): ThemeContextValue;
67
+ /**
68
+ * Internal hook to get the current color scheme.
69
+ * Checks ThemeContext first, falls back to system preference.
70
+ * Used by useThemeTokens.
71
+ */
72
+ declare function useColorScheme(): ColorScheme;
73
+ /**
74
+ * Internal hook to get the semantic color configuration.
75
+ * Returns defaults if not within a ThemeProvider.
76
+ */
77
+ declare function useSemanticColors(): SemanticColorConfig;
78
+ export { defaultSemanticColors, ThemeContext, ThemeProvider, useColorScheme, useSemanticColors, useTheme, };
79
+ export type { ColorScheme, DangerColor, InfoColor, SemanticColorConfig, SuccessColor, ThemeContextValue, ThemeProviderProps, WarningColor, };
80
+ //# sourceMappingURL=theme-context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme-context.d.ts","sourceRoot":"","sources":["../../src/lib/theme-context.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,KAAK,WAAW,GAAG,OAAO,GAAG,MAAM,CAAC;AAGpC,KAAK,WAAW,GAAG,QAAQ,GAAG,KAAK,GAAG,MAAM,CAAC;AAC7C,KAAK,YAAY,GAAG,QAAQ,GAAG,OAAO,CAAC;AACvC,KAAK,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;AACxD,KAAK,SAAS,GAAG,MAAM,GAAG,KAAK,CAAC;AAGhC,KAAK,mBAAmB,GAAG;IACzB,WAAW,EAAE,WAAW,CAAC;IACzB,WAAW,EAAE,WAAW,CAAC;IACzB,YAAY,EAAE,YAAY,CAAC;IAC3B,YAAY,EAAE,YAAY,CAAC;IAC3B,SAAS,EAAE,SAAS,CAAC;CACtB,CAAC;AAGF,QAAA,MAAM,qBAAqB,EAAE,mBAM5B,CAAC;AAEF,KAAK,iBAAiB,GAAG;IACvB,WAAW,EAAE,WAAW,CAAC;IACzB,cAAc,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC;IAC9C,iBAAiB,EAAE,MAAM,IAAI,CAAC;CAC/B,GAAG,mBAAmB,CAAC;AAExB,QAAA,MAAM,YAAY,8CAAgE,CAAC;AAEnF,KAAK,kBAAkB,GAAG;IACxB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,2DAA2D;IAC3D,kBAAkB,CAAC,EAAE,WAAW,CAAC;IACjC,2EAA2E;IAC3E,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,wDAAwD;IACxD,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,qDAAqD;IACrD,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,qDAAqD;IACrD,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,yDAAyD;IACzD,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,iBAAS,aAAa,CAAC,EACrB,QAAQ,EACR,kBAAkB,EAClB,WAA+C,EAC/C,WAA+C,EAC/C,YAAiD,EACjD,YAAiD,EACjD,SAA2C,GAC5C,EAAE,kBAAkB,qBAiCpB;AAED;;;;;;GAMG;AACH,iBAAS,QAAQ,IAAI,iBAAiB,CAMrC;AAED;;;;GAIG;AACH,iBAAS,cAAc,IAAI,WAAW,CAWrC;AAED;;;GAGG;AACH,iBAAS,iBAAiB,IAAI,mBAAmB,CAGhD;AAED,OAAO,EACL,qBAAqB,EACrB,YAAY,EACZ,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,QAAQ,GACT,CAAC;AACF,YAAY,EACV,WAAW,EACX,WAAW,EACX,SAAS,EACT,mBAAmB,EACnB,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,YAAY,GACb,CAAC"}
@@ -0,0 +1,97 @@
1
+ import * as React from 'react';
2
+ import { useColorScheme as useSystemColorScheme } from 'react-native';
3
+ // Default semantic colors (matching web defaults)
4
+ const defaultSemanticColors = {
5
+ accentColor: 'blue',
6
+ dangerColor: 'red',
7
+ warningColor: 'amber',
8
+ successColor: 'green',
9
+ infoColor: 'sky',
10
+ };
11
+ const ThemeContext = React.createContext(undefined);
12
+ /**
13
+ * Provider for theme context that allows programmatic color scheme control
14
+ * and semantic color customization.
15
+ *
16
+ * Wrap your app with this provider to enable theme toggling and custom colors.
17
+ *
18
+ * @example
19
+ * function App() {
20
+ * return (
21
+ * <ThemeProvider
22
+ * accentColor="purple"
23
+ * dangerColor="tomato"
24
+ * warningColor="yellow"
25
+ * successColor="teal"
26
+ * infoColor="blue"
27
+ * >
28
+ * <YourApp />
29
+ * </ThemeProvider>
30
+ * );
31
+ * }
32
+ */
33
+ function ThemeProvider({ children, defaultColorScheme, accentColor = defaultSemanticColors.accentColor, dangerColor = defaultSemanticColors.dangerColor, warningColor = defaultSemanticColors.warningColor, successColor = defaultSemanticColors.successColor, infoColor = defaultSemanticColors.infoColor, }) {
34
+ const systemColorScheme = useSystemColorScheme();
35
+ const [colorScheme, setColorScheme] = React.useState(defaultColorScheme ?? (systemColorScheme === 'dark' ? 'dark' : 'light'));
36
+ const toggleColorScheme = React.useCallback(() => {
37
+ setColorScheme((prev) => (prev === 'dark' ? 'light' : 'dark'));
38
+ }, []);
39
+ const value = React.useMemo(() => ({
40
+ colorScheme,
41
+ setColorScheme,
42
+ toggleColorScheme,
43
+ accentColor,
44
+ dangerColor,
45
+ warningColor,
46
+ successColor,
47
+ infoColor,
48
+ }), [
49
+ colorScheme,
50
+ toggleColorScheme,
51
+ accentColor,
52
+ dangerColor,
53
+ warningColor,
54
+ successColor,
55
+ infoColor,
56
+ ]);
57
+ return <ThemeContext.Provider value={value}>{children}</ThemeContext.Provider>;
58
+ }
59
+ /**
60
+ * Hook to access and control the current color scheme.
61
+ * Must be used within a ThemeProvider.
62
+ *
63
+ * @example
64
+ * const { colorScheme, toggleColorScheme, accentColor } = useTheme();
65
+ */
66
+ function useTheme() {
67
+ const context = React.useContext(ThemeContext);
68
+ if (!context) {
69
+ throw new Error('useTheme must be used within a ThemeProvider');
70
+ }
71
+ return context;
72
+ }
73
+ /**
74
+ * Internal hook to get the current color scheme.
75
+ * Checks ThemeContext first, falls back to system preference.
76
+ * Used by useThemeTokens.
77
+ */
78
+ function useColorScheme() {
79
+ const context = React.useContext(ThemeContext);
80
+ const systemColorScheme = useSystemColorScheme();
81
+ // If ThemeProvider is used, respect the programmatic value
82
+ if (context) {
83
+ return context.colorScheme;
84
+ }
85
+ // Otherwise fall back to system preference
86
+ return systemColorScheme === 'dark' ? 'dark' : 'light';
87
+ }
88
+ /**
89
+ * Internal hook to get the semantic color configuration.
90
+ * Returns defaults if not within a ThemeProvider.
91
+ */
92
+ function useSemanticColors() {
93
+ const context = React.useContext(ThemeContext);
94
+ return context ?? defaultSemanticColors;
95
+ }
96
+ export { defaultSemanticColors, ThemeContext, ThemeProvider, useColorScheme, useSemanticColors, useTheme, };
97
+ //# sourceMappingURL=theme-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme-context.js","sourceRoot":"","sources":["../../src/lib/theme-context.tsx"],"names":[],"mappings":"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"}
@@ -75,7 +75,7 @@ export declare function blackAndWhitePalettes(): {
75
75
  black: AlphaOnlyShades;
76
76
  white: AlphaOnlyShades;
77
77
  };
78
- export declare const themeVars: {
78
+ export declare const themeTokens: {
79
79
  typography: {
80
80
  readonly '0': {
81
81
  readonly fontSize: 10;
@@ -219,4 +219,4 @@ export declare const themeVars: {
219
219
  };
220
220
  };
221
221
  export type { ColorShades, FontWeightKey, TypographyStepKey };
222
- //# sourceMappingURL=theme-vars.d.ts.map
222
+ //# sourceMappingURL=theme-tokens.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme-tokens.d.ts","sourceRoot":"","sources":["../../src/lib/theme-tokens.ts"],"names":[],"mappings":"AAMA,QAAA,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAWN,CAAC;AAEX,KAAK,iBAAiB,GAAG,MAAM,OAAO,UAAU,CAAC;AAEjD,QAAA,MAAM,WAAW;;;;;;CAMP,CAAC;AAEX,KAAK,aAAa,GAAG,MAAM,OAAO,WAAW,CAAC;AAK9C,KAAK,QAAQ,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAEzF,KAAK,aAAa,GACd,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,KAAK,GACL,KAAK,GACL,KAAK,CAAC;AAEV,KAAK,WAAW,GAAG;KAChB,CAAC,IAAI,QAAQ,GAAG,MAAM;CACxB,GAAG;IACF,YAAY,EAAE,MAAM,CAAC;CACtB,GAAG;KACD,CAAC,IAAI,aAAa,GAAG,MAAM;CAC7B,CAAC;AAqHF,KAAK,eAAe,GAAG;KAAG,CAAC,IAAI,aAAa,GAAG,MAAM;CAAE,CAAC;AAqBxD,wBAAgB,qBAAqB;;;EAKpC;AAED,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuBvB,CAAC;AAEF,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,iBAAiB,EAAE,CAAC"}
@@ -1,5 +1,5 @@
1
1
  /* eslint-disable @typescript-eslint/no-var-requires */
2
- // Typography steps (0-9) based on typography.css / global.css tokens.
2
+ // Typography steps (0-9) based on Frosted UI design system tokens.
3
3
  // Values are in px; React Native treats them as logical pixels.
4
4
  const typography = {
5
5
  '0': { fontSize: 10, lineHeight: 12, letterSpacing: 0.01 },
@@ -108,22 +108,7 @@ const darkPalettes = accentColors.reduce((acc, color) => {
108
108
  acc[color] = buildPalette(color, 'dark');
109
109
  return acc;
110
110
  }, {});
111
- // Semantic surface tokens (mirroring global.css)
112
- // Light mode:
113
- // --color-background: white;
114
- // --color-overlay: var(--black-a6);
115
- // --color-panel-solid: white;
116
- // --color-panel-translucent: rgba(255, 255, 255, 0.85);
117
- // --color-surface: rgba(255, 255, 255, 0.9);
118
- // --color-stroke: var(--gray-a5);
119
- //
120
- // Dark mode:
121
- // --color-background: var(--gray-1);
122
- // --color-overlay: var(--black-a8);
123
- // --color-panel-solid: var(--gray-2);
124
- // --color-panel-translucent: var(--gray-2-translucent);
125
- // --color-surface: rgba(0, 0, 0, 0.25);
126
- // --color-stroke: var(--gray-a4);
111
+ // Semantic surface tokens for light/dark modes
127
112
  // Resolve overlay / stroke from raw color palettes so native can use real values
128
113
  const blackA = frostedColors.blackA;
129
114
  const whiteA = frostedColors.whiteA;
@@ -146,7 +131,7 @@ export function blackAndWhitePalettes() {
146
131
  white: whiteAlpha,
147
132
  };
148
133
  }
149
- export const themeVars = {
134
+ export const themeTokens = {
150
135
  typography,
151
136
  fontWeights,
152
137
  colors: {
@@ -170,4 +155,4 @@ export const themeVars = {
170
155
  },
171
156
  },
172
157
  };
173
- //# sourceMappingURL=theme-vars.js.map
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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"}
@@ -1,57 +1,17 @@
1
1
  import { type Theme } from '@react-navigation/native';
2
- export declare const THEME: {
3
- light: {
4
- background: string;
5
- foreground: string;
6
- card: string;
7
- cardForeground: string;
8
- popover: string;
9
- popoverForeground: string;
10
- primary: string;
11
- primaryForeground: string;
12
- secondary: string;
13
- secondaryForeground: string;
14
- muted: string;
15
- mutedForeground: string;
16
- accent: string;
17
- accentForeground: string;
18
- destructive: string;
19
- border: string;
20
- input: string;
21
- ring: string;
22
- radius: string;
23
- chart1: string;
24
- chart2: string;
25
- chart3: string;
26
- chart4: string;
27
- chart5: string;
28
- };
29
- dark: {
30
- background: string;
31
- foreground: string;
32
- card: string;
33
- cardForeground: string;
34
- popover: string;
35
- popoverForeground: string;
36
- primary: string;
37
- primaryForeground: string;
38
- secondary: string;
39
- secondaryForeground: string;
40
- muted: string;
41
- mutedForeground: string;
42
- accent: string;
43
- accentForeground: string;
44
- destructive: string;
45
- border: string;
46
- input: string;
47
- ring: string;
48
- radius: string;
49
- chart1: string;
50
- chart2: string;
51
- chart3: string;
52
- chart4: string;
53
- chart5: string;
54
- };
55
- };
2
+ /**
3
+ * Hook to get navigation theme using Frosted UI design system colors.
4
+ * Reacts to the accent color from ThemeProvider.
5
+ *
6
+ * React Navigation uses these colors to style the navigation UI elements
7
+ * (headers, tab bars, drawers, etc.) throughout your app.
8
+ *
9
+ * @see https://reactnavigation.org/docs/themes
10
+ */
11
+ export declare function useNavTheme(): Record<'light' | 'dark', Theme>;
12
+ /**
13
+ * @deprecated Use useNavTheme() hook instead for dynamic accent color support.
14
+ * Static navigation theme with hardcoded blue accent.
15
+ */
56
16
  export declare const NAV_THEME: Record<'light' | 'dark', Theme>;
57
17
  //# sourceMappingURL=theme.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../src/lib/theme.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAE/E,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqDjB,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,OAAO,GAAG,MAAM,EAAE,KAAK,CAuBrD,CAAC"}
1
+ {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../src/lib/theme.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAQ/E;;;;;;;;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"}
package/dist/lib/theme.js CHANGED
@@ -1,79 +1,111 @@
1
1
  import { DarkTheme, DefaultTheme } from '@react-navigation/native';
2
- export const THEME = {
3
- light: {
4
- background: 'hsl(0 0% 100%)',
5
- foreground: 'hsl(0 0% 3.9%)',
6
- card: 'hsl(0 0% 100%)',
7
- cardForeground: 'hsl(0 0% 3.9%)',
8
- popover: 'hsl(0 0% 100%)',
9
- popoverForeground: 'hsl(0 0% 3.9%)',
10
- primary: 'hsl(0 0% 9%)',
11
- primaryForeground: 'hsl(0 0% 98%)',
12
- secondary: 'hsl(0 0% 96.1%)',
13
- secondaryForeground: 'hsl(0 0% 9%)',
14
- muted: 'hsl(0 0% 96.1%)',
15
- mutedForeground: 'hsl(0 0% 45.1%)',
16
- accent: 'hsl(0 0% 96.1%)',
17
- accentForeground: 'hsl(0 0% 9%)',
18
- destructive: 'hsl(0 84.2% 60.2%)',
19
- border: 'hsl(0 0% 89.8%)',
20
- input: 'hsl(0 0% 89.8%)',
21
- ring: 'hsl(0 0% 63%)',
22
- radius: '0.625rem',
23
- chart1: 'hsl(12 76% 61%)',
24
- chart2: 'hsl(173 58% 39%)',
25
- chart3: 'hsl(197 37% 24%)',
26
- chart4: 'hsl(43 74% 66%)',
27
- chart5: 'hsl(27 87% 67%)',
28
- },
29
- dark: {
30
- background: 'hsl(0 0% 3.9%)',
31
- foreground: 'hsl(0 0% 98%)',
32
- card: 'hsl(0 0% 3.9%)',
33
- cardForeground: 'hsl(0 0% 98%)',
34
- popover: 'hsl(0 0% 3.9%)',
35
- popoverForeground: 'hsl(0 0% 98%)',
36
- primary: 'hsl(0 0% 98%)',
37
- primaryForeground: 'hsl(0 0% 9%)',
38
- secondary: 'hsl(0 0% 14.9%)',
39
- secondaryForeground: 'hsl(0 0% 98%)',
40
- muted: 'hsl(0 0% 14.9%)',
41
- mutedForeground: 'hsl(0 0% 63.9%)',
42
- accent: 'hsl(0 0% 14.9%)',
43
- accentForeground: 'hsl(0 0% 98%)',
44
- destructive: 'hsl(0 70.9% 59.4%)',
45
- border: 'hsl(0 0% 14.9%)',
46
- input: 'hsl(0 0% 14.9%)',
47
- ring: 'hsl(300 0% 45%)',
48
- radius: '0.625rem',
49
- chart1: 'hsl(220 70% 50%)',
50
- chart2: 'hsl(160 60% 45%)',
51
- chart3: 'hsl(30 80% 55%)',
52
- chart4: 'hsl(280 65% 60%)',
53
- chart5: 'hsl(340 75% 55%)',
54
- },
55
- };
2
+ import { useMemo } from 'react';
3
+ import { useSemanticColors } from './theme-context';
4
+ import { themeTokens } from './theme-tokens';
5
+ const light = themeTokens.colors.light;
6
+ const dark = themeTokens.colors.dark;
7
+ /**
8
+ * Hook to get navigation theme using Frosted UI design system colors.
9
+ * Reacts to the accent color from ThemeProvider.
10
+ *
11
+ * React Navigation uses these colors to style the navigation UI elements
12
+ * (headers, tab bars, drawers, etc.) throughout your app.
13
+ *
14
+ * @see https://reactnavigation.org/docs/themes
15
+ */
16
+ export function useNavTheme() {
17
+ const { accentColor, dangerColor } = useSemanticColors();
18
+ return useMemo(() => {
19
+ const lightAccent = light.palettes[accentColor];
20
+ const darkAccent = dark.palettes[accentColor];
21
+ const lightDanger = light.palettes[dangerColor];
22
+ const darkDanger = dark.palettes[dangerColor];
23
+ return {
24
+ light: {
25
+ ...DefaultTheme,
26
+ colors: {
27
+ /**
28
+ * background - The main background color of screens.
29
+ * Used for: Screen backgrounds, the area behind content.
30
+ */
31
+ background: light.background,
32
+ /**
33
+ * border - Color for borders and dividers.
34
+ * Used for: Header bottom border, tab bar top border,
35
+ * separator lines between list items.
36
+ */
37
+ border: light.stroke,
38
+ /**
39
+ * card - Background color for card-like elements.
40
+ * Used for: Header background, tab bar background,
41
+ * drawer background, modal backgrounds.
42
+ */
43
+ card: light.panelSolid,
44
+ /**
45
+ * notification - Color for notification badges.
46
+ * Used for: Badge dots on tab bar icons (e.g., unread count),
47
+ * uses the danger color from ThemeProvider.
48
+ */
49
+ notification: lightDanger['9'],
50
+ /**
51
+ * primary - The primary/accent color for interactive elements.
52
+ * Used for: Active tab icon tint, focused input borders,
53
+ * header button colors, link colors.
54
+ */
55
+ primary: lightAccent['a11'],
56
+ /**
57
+ * text - Default text color.
58
+ * Used for: Header title, tab bar labels, drawer item text,
59
+ * and any navigation-related text.
60
+ */
61
+ text: light.palettes.gray['12'],
62
+ },
63
+ },
64
+ dark: {
65
+ ...DarkTheme,
66
+ colors: {
67
+ /** background - Screen backgrounds in dark mode */
68
+ background: dark.background,
69
+ /** border - Borders/dividers in dark mode */
70
+ border: dark.stroke,
71
+ /** card - Header/tab bar backgrounds in dark mode */
72
+ card: dark.panelSolid,
73
+ /** notification - Badge color uses danger color */
74
+ notification: darkDanger['9'],
75
+ /** primary - Active/accent color in dark mode */
76
+ primary: darkAccent['a11'],
77
+ /** text - Text color in dark mode */
78
+ text: dark.palettes.gray['12'],
79
+ },
80
+ },
81
+ };
82
+ }, [accentColor, dangerColor]);
83
+ }
84
+ /**
85
+ * @deprecated Use useNavTheme() hook instead for dynamic accent color support.
86
+ * Static navigation theme with hardcoded blue accent.
87
+ */
56
88
  export const NAV_THEME = {
57
89
  light: {
58
90
  ...DefaultTheme,
59
91
  colors: {
60
- background: THEME.light.background,
61
- border: THEME.light.border,
62
- card: THEME.light.card,
63
- notification: THEME.light.destructive,
64
- primary: THEME.light.primary,
65
- text: THEME.light.foreground,
92
+ background: light.background,
93
+ border: light.stroke,
94
+ card: light.panelSolid,
95
+ notification: light.palettes.red['9'],
96
+ primary: light.palettes.blue['a11'],
97
+ text: light.palettes.gray['12'],
66
98
  },
67
99
  },
68
100
  dark: {
69
101
  ...DarkTheme,
70
102
  colors: {
71
- background: THEME.dark.background,
72
- border: THEME.dark.border,
73
- card: THEME.dark.card,
74
- notification: THEME.dark.destructive,
75
- primary: THEME.dark.primary,
76
- text: THEME.dark.foreground,
103
+ background: dark.background,
104
+ border: dark.stroke,
105
+ card: dark.panelSolid,
106
+ notification: dark.palettes.red['9'],
107
+ primary: dark.palettes.blue['a11'],
108
+ text: dark.palettes.gray['12'],
77
109
  },
78
110
  },
79
111
  };
@@ -1 +1 @@
1
- {"version":3,"file":"theme.js","sourceRoot":"","sources":["../../src/lib/theme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAc,MAAM,0BAA0B,CAAC;AAE/E,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,KAAK,EAAE;QACL,UAAU,EAAE,gBAAgB;QAC5B,UAAU,EAAE,gBAAgB;QAC5B,IAAI,EAAE,gBAAgB;QACtB,cAAc,EAAE,gBAAgB;QAChC,OAAO,EAAE,gBAAgB;QACzB,iBAAiB,EAAE,gBAAgB;QACnC,OAAO,EAAE,cAAc;QACvB,iBAAiB,EAAE,eAAe;QAClC,SAAS,EAAE,iBAAiB;QAC5B,mBAAmB,EAAE,cAAc;QACnC,KAAK,EAAE,iBAAiB;QACxB,eAAe,EAAE,iBAAiB;QAClC,MAAM,EAAE,iBAAiB;QACzB,gBAAgB,EAAE,cAAc;QAChC,WAAW,EAAE,oBAAoB;QACjC,MAAM,EAAE,iBAAiB;QACzB,KAAK,EAAE,iBAAiB;QACxB,IAAI,EAAE,eAAe;QACrB,MAAM,EAAE,UAAU;QAClB,MAAM,EAAE,iBAAiB;QACzB,MAAM,EAAE,kBAAkB;QAC1B,MAAM,EAAE,kBAAkB;QAC1B,MAAM,EAAE,iBAAiB;QACzB,MAAM,EAAE,iBAAiB;KAC1B;IACD,IAAI,EAAE;QACJ,UAAU,EAAE,gBAAgB;QAC5B,UAAU,EAAE,eAAe;QAC3B,IAAI,EAAE,gBAAgB;QACtB,cAAc,EAAE,eAAe;QAC/B,OAAO,EAAE,gBAAgB;QACzB,iBAAiB,EAAE,eAAe;QAClC,OAAO,EAAE,eAAe;QACxB,iBAAiB,EAAE,cAAc;QACjC,SAAS,EAAE,iBAAiB;QAC5B,mBAAmB,EAAE,eAAe;QACpC,KAAK,EAAE,iBAAiB;QACxB,eAAe,EAAE,iBAAiB;QAClC,MAAM,EAAE,iBAAiB;QACzB,gBAAgB,EAAE,eAAe;QACjC,WAAW,EAAE,oBAAoB;QACjC,MAAM,EAAE,iBAAiB;QACzB,KAAK,EAAE,iBAAiB;QACxB,IAAI,EAAE,iBAAiB;QACvB,MAAM,EAAE,UAAU;QAClB,MAAM,EAAE,kBAAkB;QAC1B,MAAM,EAAE,kBAAkB;QAC1B,MAAM,EAAE,iBAAiB;QACzB,MAAM,EAAE,kBAAkB;QAC1B,MAAM,EAAE,kBAAkB;KAC3B;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAoC;IACxD,KAAK,EAAE;QACL,GAAG,YAAY;QACf,MAAM,EAAE;YACN,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU;YAClC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM;YAC1B,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI;YACtB,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,WAAW;YACrC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO;YAC5B,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU;SAC7B;KACF;IACD,IAAI,EAAE;QACJ,GAAG,SAAS;QACZ,MAAM,EAAE;YACN,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,UAAU;YACjC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM;YACzB,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI;YACrB,YAAY,EAAE,KAAK,CAAC,IAAI,CAAC,WAAW;YACpC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO;YAC3B,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,UAAU;SAC5B;KACF;CACF,CAAC"}
1
+ {"version":3,"file":"theme.js","sourceRoot":"","sources":["../../src/lib/theme.ts"],"names":[],"mappings":"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"}
@@ -4,11 +4,15 @@
4
4
  */
5
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
6
  /**
7
- * Semantic colors
7
+ * Semantic colors that map to accent colors based on ThemeProvider settings
8
8
  */
9
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';
10
14
  /**
11
15
  * All available color values for component color props
12
16
  */
13
- export type Color = AccentColor | SemanticColor;
17
+ export type Color = AccentColor | SemanticColor | DynamicAccentColor;
14
18
  //# sourceMappingURL=types.d.ts.map
@@ -1 +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,KAAK,GAAG,WAAW,GAAG,aAAa,CAAC"}
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"}