@campxdev/react-native-blueprint 0.1.2 → 0.1.4

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 (111) hide show
  1. package/README.md +98 -69
  2. package/lib/module/app/_layout.js +7 -1
  3. package/lib/module/app/_layout.js.map +1 -1
  4. package/package.json +10 -7
  5. package/src/app/_layout.tsx +7 -1
  6. package/src/global.css +417 -0
  7. package/lib/typescript/src/app/_layout.d.ts +0 -8
  8. package/lib/typescript/src/app/_layout.d.ts.map +0 -1
  9. package/lib/typescript/src/components/theme-config.d.ts +0 -174
  10. package/lib/typescript/src/components/theme-config.d.ts.map +0 -1
  11. package/lib/typescript/src/components/ui/Accordion.d.ts +0 -103
  12. package/lib/typescript/src/components/ui/Accordion.d.ts.map +0 -1
  13. package/lib/typescript/src/components/ui/Alert-Dialog.d.ts +0 -168
  14. package/lib/typescript/src/components/ui/Alert-Dialog.d.ts.map +0 -1
  15. package/lib/typescript/src/components/ui/Alert.d.ts +0 -60
  16. package/lib/typescript/src/components/ui/Alert.d.ts.map +0 -1
  17. package/lib/typescript/src/components/ui/AppBar.d.ts +0 -227
  18. package/lib/typescript/src/components/ui/AppBar.d.ts.map +0 -1
  19. package/lib/typescript/src/components/ui/Aspect-Ratio.d.ts +0 -30
  20. package/lib/typescript/src/components/ui/Aspect-Ratio.d.ts.map +0 -1
  21. package/lib/typescript/src/components/ui/Avatar.d.ts +0 -1351
  22. package/lib/typescript/src/components/ui/Avatar.d.ts.map +0 -1
  23. package/lib/typescript/src/components/ui/Badge.d.ts +0 -204
  24. package/lib/typescript/src/components/ui/Badge.d.ts.map +0 -1
  25. package/lib/typescript/src/components/ui/Bottom-Sheet.d.ts +0 -43
  26. package/lib/typescript/src/components/ui/Bottom-Sheet.d.ts.map +0 -1
  27. package/lib/typescript/src/components/ui/Button.d.ts +0 -176
  28. package/lib/typescript/src/components/ui/Button.d.ts.map +0 -1
  29. package/lib/typescript/src/components/ui/Card.d.ts +0 -854
  30. package/lib/typescript/src/components/ui/Card.d.ts.map +0 -1
  31. package/lib/typescript/src/components/ui/Checkbox.d.ts +0 -36
  32. package/lib/typescript/src/components/ui/Checkbox.d.ts.map +0 -1
  33. package/lib/typescript/src/components/ui/Collapsible.d.ts +0 -66
  34. package/lib/typescript/src/components/ui/Collapsible.d.ts.map +0 -1
  35. package/lib/typescript/src/components/ui/Context-Menu.d.ts +0 -150
  36. package/lib/typescript/src/components/ui/Context-Menu.d.ts.map +0 -1
  37. package/lib/typescript/src/components/ui/Custom-Card.d.ts +0 -864
  38. package/lib/typescript/src/components/ui/Custom-Card.d.ts.map +0 -1
  39. package/lib/typescript/src/components/ui/Dialog.d.ts +0 -126
  40. package/lib/typescript/src/components/ui/Dialog.d.ts.map +0 -1
  41. package/lib/typescript/src/components/ui/Dropdown-Menu.d.ts +0 -284
  42. package/lib/typescript/src/components/ui/Dropdown-Menu.d.ts.map +0 -1
  43. package/lib/typescript/src/components/ui/Floating-Action.d.ts +0 -44
  44. package/lib/typescript/src/components/ui/Floating-Action.d.ts.map +0 -1
  45. package/lib/typescript/src/components/ui/Greeting-Card.d.ts +0 -153
  46. package/lib/typescript/src/components/ui/Greeting-Card.d.ts.map +0 -1
  47. package/lib/typescript/src/components/ui/Hover-Card.d.ts +0 -68
  48. package/lib/typescript/src/components/ui/Hover-Card.d.ts.map +0 -1
  49. package/lib/typescript/src/components/ui/Icon.d.ts +0 -43
  50. package/lib/typescript/src/components/ui/Icon.d.ts.map +0 -1
  51. package/lib/typescript/src/components/ui/Input.d.ts +0 -52
  52. package/lib/typescript/src/components/ui/Input.d.ts.map +0 -1
  53. package/lib/typescript/src/components/ui/Label.d.ts +0 -105
  54. package/lib/typescript/src/components/ui/Label.d.ts.map +0 -1
  55. package/lib/typescript/src/components/ui/Menubar.d.ts +0 -175
  56. package/lib/typescript/src/components/ui/Menubar.d.ts.map +0 -1
  57. package/lib/typescript/src/components/ui/Native-Only-Animated-View.d.ts +0 -26
  58. package/lib/typescript/src/components/ui/Native-Only-Animated-View.d.ts.map +0 -1
  59. package/lib/typescript/src/components/ui/NavBar.d.ts +0 -273
  60. package/lib/typescript/src/components/ui/NavBar.d.ts.map +0 -1
  61. package/lib/typescript/src/components/ui/Popover.d.ts +0 -71
  62. package/lib/typescript/src/components/ui/Popover.d.ts.map +0 -1
  63. package/lib/typescript/src/components/ui/Progress.d.ts +0 -27
  64. package/lib/typescript/src/components/ui/Progress.d.ts.map +0 -1
  65. package/lib/typescript/src/components/ui/Radio-Group.d.ts +0 -47
  66. package/lib/typescript/src/components/ui/Radio-Group.d.ts.map +0 -1
  67. package/lib/typescript/src/components/ui/Select.d.ts +0 -107
  68. package/lib/typescript/src/components/ui/Select.d.ts.map +0 -1
  69. package/lib/typescript/src/components/ui/Separator.d.ts +0 -166
  70. package/lib/typescript/src/components/ui/Separator.d.ts.map +0 -1
  71. package/lib/typescript/src/components/ui/SizedBox.d.ts +0 -79
  72. package/lib/typescript/src/components/ui/SizedBox.d.ts.map +0 -1
  73. package/lib/typescript/src/components/ui/Skeleton.d.ts +0 -40
  74. package/lib/typescript/src/components/ui/Skeleton.d.ts.map +0 -1
  75. package/lib/typescript/src/components/ui/Slider.d.ts +0 -55
  76. package/lib/typescript/src/components/ui/Slider.d.ts.map +0 -1
  77. package/lib/typescript/src/components/ui/Switch.d.ts +0 -34
  78. package/lib/typescript/src/components/ui/Switch.d.ts.map +0 -1
  79. package/lib/typescript/src/components/ui/Table.d.ts +0 -70
  80. package/lib/typescript/src/components/ui/Table.d.ts.map +0 -1
  81. package/lib/typescript/src/components/ui/Tabs.d.ts +0 -51
  82. package/lib/typescript/src/components/ui/Tabs.d.ts.map +0 -1
  83. package/lib/typescript/src/components/ui/Text.d.ts +0 -116
  84. package/lib/typescript/src/components/ui/Text.d.ts.map +0 -1
  85. package/lib/typescript/src/components/ui/Textarea.d.ts +0 -61
  86. package/lib/typescript/src/components/ui/Textarea.d.ts.map +0 -1
  87. package/lib/typescript/src/components/ui/Theme-Toggle.d.ts +0 -194
  88. package/lib/typescript/src/components/ui/Theme-Toggle.d.ts.map +0 -1
  89. package/lib/typescript/src/components/ui/Toast.d.ts +0 -55
  90. package/lib/typescript/src/components/ui/Toast.d.ts.map +0 -1
  91. package/lib/typescript/src/components/ui/Toggle-Group.d.ts +0 -49
  92. package/lib/typescript/src/components/ui/Toggle-Group.d.ts.map +0 -1
  93. package/lib/typescript/src/components/ui/Toggle.d.ts +0 -53
  94. package/lib/typescript/src/components/ui/Toggle.d.ts.map +0 -1
  95. package/lib/typescript/src/components/ui/Tooltip.d.ts +0 -71
  96. package/lib/typescript/src/components/ui/Tooltip.d.ts.map +0 -1
  97. package/lib/typescript/src/components/ui/index.d.ts +0 -44
  98. package/lib/typescript/src/components/ui/index.d.ts.map +0 -1
  99. package/lib/typescript/src/index.d.ts +0 -9
  100. package/lib/typescript/src/index.d.ts.map +0 -1
  101. package/lib/typescript/src/lib/ThemeProvider.d.ts +0 -137
  102. package/lib/typescript/src/lib/ThemeProvider.d.ts.map +0 -1
  103. package/lib/typescript/src/lib/cornerRadius.d.ts +0 -112
  104. package/lib/typescript/src/lib/cornerRadius.d.ts.map +0 -1
  105. package/lib/typescript/src/lib/fonts.d.ts +0 -21
  106. package/lib/typescript/src/lib/fonts.d.ts.map +0 -1
  107. package/lib/typescript/src/lib/theme.d.ts +0 -87
  108. package/lib/typescript/src/lib/theme.d.ts.map +0 -1
  109. package/lib/typescript/src/lib/utils.d.ts +0 -111
  110. package/lib/typescript/src/lib/utils.d.ts.map +0 -1
  111. /package/{global.css → lib/module/global.css} +0 -0
package/src/global.css ADDED
@@ -0,0 +1,417 @@
1
+ @tailwind base;
2
+ @tailwind components;
3
+ @tailwind utilities;
4
+
5
+ :root {
6
+ /* === 1. SURFACES === */
7
+ --background: 210 17% 97%; /* #F7F8FA */
8
+ --card: 0 0% 100%; /* #FFFFFF */
9
+ --popover: 0 0% 100%; /* #FFFFFF */
10
+ --muted: 0 0% 100%; /* #FFFFFF - Same as card for consistency */
11
+
12
+ /* === 2. TEXT === */
13
+ --foreground: 0 0% 7%; /* #121212 */
14
+ --card-foreground: 0 0% 7%; /* #121212 */
15
+ --popover-foreground: 0 0% 7%; /* #121212 */
16
+ --muted-foreground: 0 0% 7% / 0.7; /* #121212 at 70% opacity */
17
+
18
+ /* === 3. PRIMARY (Main buttons, CTAs) === */
19
+ --primary: 200 13% 11%; /* #161A1D - Near black */
20
+ --primary-foreground: 0 0% 100%; /* #FFFFFF */
21
+
22
+ /* === 4. SECONDARY (Secondary buttons) === */
23
+ --secondary: 218 14% 53%; /* #64748B */
24
+ --secondary-foreground: 0 0% 100%; /* #FFFFFF */
25
+
26
+ /* === 5. TERTIARY/ACCENT (Highlights, selections) === */
27
+ --accent: 356 76% 57%; /* #E43341 - Crimson */
28
+ --accent-foreground: 0 0% 100%; /* #FFFFFF */
29
+
30
+ /* === 6. BORDERS === */
31
+ --border: 214 32% 84%; /* #CBD5E1 */
32
+ --input: 214 32% 84%; /* #CBD5E1 */
33
+ --ring: 200 13% 11%; /* #161A1D - Same as primary */
34
+
35
+ /* === 7. HIGHLIGHTS === */
36
+ --destructive: 356 87% 57%; /* #F2353C - Red */
37
+ --destructive-foreground: 0 0% 100%;
38
+ --success: 88 37% 52%; /* #88B053 - Green */
39
+ --info: 189 45% 51%; /* #4BAABE - Blue */
40
+ --warning: 28 81% 57%; /* #ED9035 - Orange */
41
+
42
+ /* === 8. BRAND COLORS (Custom - use manually) === */
43
+ --brand-1: 252 97% 25%; /* #1E027F - Deep violet */
44
+ --brand-2: 356 76% 57%; /* #E43341 - Crimson */
45
+ --brand-3: 304 69% 33%; /* #931C88 - Magenta */
46
+
47
+ /* === CHART COLORS === */
48
+ --chart-1: 88 37% 52%; /* #88B053 - Green */
49
+ --chart-2: 189 45% 51%; /* #4BAABE - Blue */
50
+ --chart-3: 28 81% 57%; /* #ED9035 - Orange */
51
+ --chart-4: 254 46% 42%; /* #573DAB - Purple */
52
+ --chart-5: 348 78% 60%; /* #EA4A6B - Pink */
53
+
54
+ /* === SIDEBAR === */
55
+ --sidebar: 0 0% 100%; /* #FFFFFF */
56
+ --sidebar-foreground: 0 0% 7%; /* #121212 */
57
+ --sidebar-primary: 214 14% 64%; /* #94A3B8 */
58
+ --sidebar-primary-foreground: 0 0% 100%;
59
+ --sidebar-accent: 356 76% 57%; /* #E43341 */
60
+ --sidebar-accent-foreground: 0 0% 100%;
61
+ --sidebar-border: 214 32% 84%; /* #CBD5E1 */
62
+ --sidebar-ring: 214 14% 64%; /* #94A3B8 */
63
+
64
+ /* === FONTS === */
65
+ --font-sans: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
66
+ --font-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;
67
+ --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
68
+
69
+ /* === PRIMITIVE SPACING TOKENS (From Figma) === */
70
+ /* These are your base spacing values - rarely changed directly */
71
+ --space-0: 0px; /* S0 */
72
+ --space-1: 2px; /* S1 */
73
+ --space-2: 4px; /* S2 */
74
+ --space-3: 8px; /* S3 */
75
+ --space-4: 12px; /* S4 */
76
+ --space-5: 16px; /* S5 */
77
+ --space-6: 20px; /* S6 */
78
+ --space-7: 24px; /* S7 */
79
+ --space-8: 32px; /* S8 */
80
+ --space-9: 48px; /* S9 */
81
+ --space-10: 52px; /* S10 */
82
+
83
+ /* === SEMANTIC SPACING TOKENS === */
84
+ /* These reference primitives and are what components actually use */
85
+ /* Change these to globally update spacing across all components */
86
+ --spacing-none: var(--space-0);
87
+ --spacing-xs: var(--space-2); /* Tight spacing - small gaps */
88
+ --spacing-sm: var(--space-3); /* Small spacing - compact layouts */
89
+ --spacing-md: var(--space-5); /* Medium spacing - default gaps */
90
+ --spacing-lg: var(--space-7); /* Large spacing - breathing room */
91
+ --spacing-xl: var(--space-8); /* Extra large - section spacing */
92
+ --spacing-2xl: var(--space-9); /* 2X large - major sections */
93
+
94
+ /* Component-specific spacing (can be changed independently) */
95
+ --spacing-button-x: var(--space-5); /* Button horizontal padding */
96
+ --spacing-button-y: var(--space-4); /* Button vertical padding */
97
+ --spacing-card: var(--space-5); /* Card padding */
98
+ --spacing-input-x: var(--space-4); /* Input horizontal padding */
99
+ --spacing-input-y: var(--space-3); /* Input vertical padding */
100
+
101
+ /* === PRIMITIVE RADIUS TOKENS (From Your Design System) === */
102
+ /* Your exact radius values: 0, 2, 4, 8, 12, 20, 24, 32, 48 */
103
+ --radius-0: 0px; /* R0 */
104
+ --radius-1: 2px; /* R1 */
105
+ --radius-2: 4px; /* R2 */
106
+ --radius-3: 8px; /* R3 */
107
+ --radius-4: 12px; /* R4 */
108
+ --radius-5: 20px; /* R5 */
109
+ --radius-6: 24px; /* R6 */
110
+ --radius-7: 32px; /* R7 */
111
+ --radius-8: 48px; /* R8 */
112
+
113
+ /* === SEMANTIC RADIUS TOKENS === */
114
+ /* Pre-defined names for convenience - you can use primitives directly in components */
115
+ --radius-none: var(--radius-0); /* 0px */
116
+ --radius-sm: var(--radius-2); /* 4px */
117
+ --radius-md: var(--radius-4); /* 12px */
118
+ --radius-lg: var(--radius-5); /* 20px */
119
+ --radius-xl: var(--radius-6); /* 24px */
120
+ --radius-2xl: var(--radius-7); /* 32px */
121
+ --radius-full: 9999px; /* Fully rounded - pills, avatars */
122
+
123
+ /* Corner smoothing value (0-1, where 1 = 100% smoothing) */
124
+ --corner-smoothing: 1.0; /* 100% Apple-style smoothing for all corners */
125
+
126
+ /* === ICON SIZES (From Figma) === */
127
+ --icon-sm: 16px; /* WH3 - Small icons */
128
+ --icon-md: 20px; /* WH2 - Medium icons */
129
+ --icon-lg: 24px; /* WH1 - Large icons */
130
+
131
+ /* === SHADOWS === */
132
+ --shadow-x: 0;
133
+ --shadow-y: 1px;
134
+ --shadow-blur: 3px;
135
+ --shadow-spread: 0px;
136
+ --shadow-opacity: 0.1;
137
+ --shadow-color: 0 0% 0%;
138
+ --shadow-2xs: 0 1px 3px 0px hsl(0 0% 0% / 0.05);
139
+ --shadow-xs: 0 1px 3px 0px hsl(0 0% 0% / 0.05);
140
+ --shadow-sm: 0 1px 3px 0px hsl(0 0% 0% / 0.10), 0 1px 2px -1px hsl(0 0% 0% / 0.10);
141
+ --shadow: 0 1px 3px 0px hsl(0 0% 0% / 0.10), 0 1px 2px -1px hsl(0 0% 0% / 0.10);
142
+ --shadow-md: 0 1px 3px 0px hsl(0 0% 0% / 0.10), 0 2px 4px -1px hsl(0 0% 0% / 0.10);
143
+ --shadow-lg: 0 1px 3px 0px hsl(0 0% 0% / 0.10), 0 4px 6px -1px hsl(0 0% 0% / 0.10);
144
+ --shadow-xl: 0 1px 3px 0px hsl(0 0% 0% / 0.10), 0 8px 10px -1px hsl(0 0% 0% / 0.10);
145
+ --shadow-2xl: 0 1px 3px 0px hsl(0 0% 0% / 0.25);
146
+
147
+ /* === LEGACY (kept for backwards compatibility) === */
148
+ --radius: var(--radius-3); /* Default radius - use semantic tokens instead */
149
+ --spacing: var(--space-2); /* Default spacing - use semantic tokens instead */
150
+ --tracking-normal: 0em;
151
+ }
152
+
153
+ .dark {
154
+ /* === 1. SURFACES === */
155
+ --background: 200 13% 10%; /* #161A1D */
156
+ --card: 180 14% 13%; /* #1D2727 */
157
+ --popover: 180 14% 13%; /* #1D2727 */
158
+ --muted: 180 14% 13%; /* #1D2727 - Same as card for consistency */
159
+
160
+ /* === 2. TEXT === */
161
+ --foreground: 0 0% 100%; /* #FFFFFF */
162
+ --card-foreground: 0 0% 100%; /* #FFFFFF */
163
+ --popover-foreground: 0 0% 100%; /* #FFFFFF */
164
+ --muted-foreground: 0 0% 100% / 0.7; /* #FFFFFF at 70% opacity */
165
+
166
+ /* === 3. PRIMARY (Main buttons, CTAs) === */
167
+ --primary: 210 13% 85%; /* #D0D5D9 - Light grey (softer than white) */
168
+ --primary-foreground: 200 13% 11%; /* #161A1D - Dark text */
169
+
170
+ /* === 4. SECONDARY (Secondary buttons) === */
171
+ --secondary: 218 14% 53%; /* #64748B */
172
+ --secondary-foreground: 0 0% 100%; /* #FFFFFF */
173
+
174
+ /* === 5. TERTIARY/ACCENT (Highlights, selections) === */
175
+ --accent: 356 76% 57%; /* #E43341 - Crimson */
176
+ --accent-foreground: 0 0% 100%; /* #FFFFFF */
177
+
178
+ /* === 6. BORDERS === */
179
+ --border: 215 25% 27%; /* #334155 - Balanced slate-700 */
180
+ --input: 215 25% 27%; /* #334155 */
181
+ --ring: 210 13% 85%; /* #D0D5D9 - Same as primary */
182
+
183
+ /* === 7. HIGHLIGHTS === */
184
+ --destructive: 356 87% 57%; /* #F2353C - Red */
185
+ --destructive-foreground: 0 0% 100%;
186
+ --success: 88 37% 52%; /* #88B053 - Green */
187
+ --info: 189 45% 51%; /* #4BAABE - Blue */
188
+ --warning: 28 81% 57%; /* #ED9035 - Orange */
189
+
190
+ /* === 8. BRAND COLORS (Custom - use manually) === */
191
+ --brand-1: 244 100% 73%; /* #8075FF - Cool violet */
192
+ --brand-2: 356 76% 57%; /* #E43341 - Crimson */
193
+ --brand-3: 291 46% 61%; /* #C160D4 - Light magenta */
194
+
195
+ /* === CHART COLORS === */
196
+ --chart-1: 88 37% 52%; /* #88B053 - Green */
197
+ --chart-2: 189 45% 51%; /* #4BAABE - Blue */
198
+ --chart-3: 28 81% 57%; /* #ED9035 - Orange */
199
+ --chart-4: 254 46% 42%; /* #573DAB - Purple */
200
+ --chart-5: 348 78% 60%; /* #EA4A6B - Pink */
201
+
202
+ /* === SIDEBAR === */
203
+ --sidebar: 180 14% 13%; /* #1D2727 */
204
+ --sidebar-foreground: 0 0% 100%; /* #FFFFFF */
205
+ --sidebar-primary: 214 14% 64%; /* #94A3B8 */
206
+ --sidebar-primary-foreground: 200 13% 10%; /* #161A1D */
207
+ --sidebar-accent: 356 76% 57%; /* #E43341 */
208
+ --sidebar-accent-foreground: 0 0% 100%;
209
+ --sidebar-border: 215 25% 27%; /* #334155 */
210
+ --sidebar-ring: 214 14% 64%; /* #94A3B8 */
211
+
212
+ /* === FONTS === */
213
+ --font-sans: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
214
+ --font-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;
215
+ --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
216
+
217
+ /* === PRIMITIVE SPACING TOKENS (From Figma) === */
218
+ /* Spacing values are the same in light and dark mode */
219
+ --space-0: 0px; /* S0 */
220
+ --space-1: 2px; /* S1 */
221
+ --space-2: 4px; /* S2 */
222
+ --space-3: 8px; /* S3 */
223
+ --space-4: 12px; /* S4 */
224
+ --space-5: 16px; /* S5 */
225
+ --space-6: 20px; /* S6 */
226
+ --space-7: 24px; /* S7 */
227
+ --space-8: 32px; /* S8 */
228
+ --space-9: 48px; /* S9 */
229
+ --space-10: 52px; /* S10 */
230
+
231
+ /* === SEMANTIC SPACING TOKENS === */
232
+ --spacing-none: var(--space-0);
233
+ --spacing-xs: var(--space-2);
234
+ --spacing-sm: var(--space-3);
235
+ --spacing-md: var(--space-5);
236
+ --spacing-lg: var(--space-7);
237
+ --spacing-xl: var(--space-8);
238
+ --spacing-2xl: var(--space-9);
239
+
240
+ /* Component-specific spacing */
241
+ --spacing-button-x: var(--space-5);
242
+ --spacing-button-y: var(--space-4);
243
+ --spacing-card: var(--space-5);
244
+ --spacing-input-x: var(--space-4);
245
+ --spacing-input-y: var(--space-3);
246
+
247
+ /* === PRIMITIVE RADIUS TOKENS (From Your Design System) === */
248
+ /* Radius values are the same in light and dark mode */
249
+ --radius-0: 0px; /* R0 */
250
+ --radius-1: 2px; /* R1 */
251
+ --radius-2: 4px; /* R2 */
252
+ --radius-3: 8px; /* R3 */
253
+ --radius-4: 12px; /* R4 */
254
+ --radius-5: 20px; /* R5 */
255
+ --radius-6: 24px; /* R6 */
256
+ --radius-7: 32px; /* R7 */
257
+ --radius-8: 48px; /* R8 */
258
+
259
+ /* === SEMANTIC RADIUS TOKENS === */
260
+ --radius-none: var(--radius-0); /* 0px */
261
+ --radius-sm: var(--radius-2); /* 4px */
262
+ --radius-md: var(--radius-4); /* 12px */
263
+ --radius-lg: var(--radius-5); /* 20px */
264
+ --radius-xl: var(--radius-6); /* 24px */
265
+ --radius-2xl: var(--radius-7); /* 32px */
266
+ --radius-full: 9999px; /* Fully rounded */
267
+
268
+ /* Corner smoothing value */
269
+ --corner-smoothing: 1.0; /* 100% smoothing */
270
+
271
+ /* === ICON SIZES (From Figma) === */
272
+ --icon-sm: 16px; /* WH3 */
273
+ --icon-md: 20px; /* WH2 */
274
+ --icon-lg: 24px; /* WH1 */
275
+
276
+ /* === SHADOWS === */
277
+ --shadow-x: 0;
278
+ --shadow-y: 1px;
279
+ --shadow-blur: 3px;
280
+ --shadow-spread: 0px;
281
+ --shadow-opacity: 0.1;
282
+ --shadow-color: 0 0% 0%;
283
+ --shadow-2xs: 0 1px 3px 0px hsl(0 0% 0% / 0.05);
284
+ --shadow-xs: 0 1px 3px 0px hsl(0 0% 0% / 0.05);
285
+ --shadow-sm: 0 1px 3px 0px hsl(0 0% 0% / 0.10), 0 1px 2px -1px hsl(0 0% 0% / 0.10);
286
+ --shadow: 0 1px 3px 0px hsl(0 0% 0% / 0.10), 0 1px 2px -1px hsl(0 0% 0% / 0.10);
287
+ --shadow-md: 0 1px 3px 0px hsl(0 0% 0% / 0.10), 0 2px 4px -1px hsl(0 0% 0% / 0.10);
288
+ --shadow-lg: 0 1px 3px 0px hsl(0 0% 0% / 0.10), 0 4px 6px -1px hsl(0 0% 0% / 0.10);
289
+ --shadow-xl: 0 1px 3px 0px hsl(0 0% 0% / 0.10), 0 8px 10px -1px hsl(0 0% 0% / 0.10);
290
+ --shadow-2xl: 0 1px 3px 0px hsl(0 0% 0% / 0.25);
291
+
292
+ /* === LEGACY (kept for backwards compatibility) === */
293
+ --radius: var(--radius-3);
294
+ --spacing: var(--space-2);
295
+ --tracking-normal: 0em;
296
+ }
297
+
298
+ @theme inline {
299
+ --color-background: var(--background);
300
+ --color-foreground: var(--foreground);
301
+ --color-card: var(--card);
302
+ --color-card-foreground: var(--card-foreground);
303
+ --color-popover: var(--popover);
304
+ --color-popover-foreground: var(--popover-foreground);
305
+ --color-primary: var(--primary);
306
+ --color-primary-foreground: var(--primary-foreground);
307
+ --color-secondary: var(--secondary);
308
+ --color-secondary-foreground: var(--secondary-foreground);
309
+ --color-muted: var(--muted);
310
+ --color-muted-foreground: var(--muted-foreground);
311
+ --color-accent: var(--accent);
312
+ --color-accent-foreground: var(--accent-foreground);
313
+ --color-destructive: var(--destructive);
314
+ --color-destructive-foreground: var(--destructive-foreground);
315
+ --color-border: var(--border);
316
+ --color-input: var(--input);
317
+ --color-ring: var(--ring);
318
+
319
+ /* Brand colors */
320
+ --color-brand-1: var(--brand-1);
321
+ --color-brand-2: var(--brand-2);
322
+ --color-brand-3: var(--brand-3);
323
+
324
+ /* Highlight colors */
325
+ --color-success: var(--success);
326
+ --color-info: var(--info);
327
+ --color-warning: var(--warning);
328
+
329
+ /* Chart colors */
330
+ --color-chart-1: var(--chart-1);
331
+ --color-chart-2: var(--chart-2);
332
+ --color-chart-3: var(--chart-3);
333
+ --color-chart-4: var(--chart-4);
334
+ --color-chart-5: var(--chart-5);
335
+
336
+ /* Sidebar colors */
337
+ --color-sidebar: var(--sidebar);
338
+ --color-sidebar-foreground: var(--sidebar-foreground);
339
+ --color-sidebar-primary: var(--sidebar-primary);
340
+ --color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
341
+ --color-sidebar-accent: var(--sidebar-accent);
342
+ --color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
343
+ --color-sidebar-border: var(--sidebar-border);
344
+ --color-sidebar-ring: var(--sidebar-ring);
345
+
346
+ --font-sans: var(--font-sans);
347
+ --font-mono: var(--font-mono);
348
+ --font-serif: var(--font-serif);
349
+
350
+ /* Primitive spacing tokens (S0-S10 from Figma) */
351
+ --space-0: var(--space-0);
352
+ --space-1: var(--space-1);
353
+ --space-2: var(--space-2);
354
+ --space-3: var(--space-3);
355
+ --space-4: var(--space-4);
356
+ --space-5: var(--space-5);
357
+ --space-6: var(--space-6);
358
+ --space-7: var(--space-7);
359
+ --space-8: var(--space-8);
360
+ --space-9: var(--space-9);
361
+ --space-10: var(--space-10);
362
+
363
+ /* Semantic spacing tokens */
364
+ --spacing-none: var(--spacing-none);
365
+ --spacing-xs: var(--spacing-xs);
366
+ --spacing-sm: var(--spacing-sm);
367
+ --spacing-md: var(--spacing-md);
368
+ --spacing-lg: var(--spacing-lg);
369
+ --spacing-xl: var(--spacing-xl);
370
+ --spacing-2xl: var(--spacing-2xl);
371
+
372
+ /* Component-specific spacing */
373
+ --spacing-button-x: var(--spacing-button-x);
374
+ --spacing-button-y: var(--spacing-button-y);
375
+ --spacing-card: var(--spacing-card);
376
+ --spacing-input-x: var(--spacing-input-x);
377
+ --spacing-input-y: var(--spacing-input-y);
378
+
379
+ /* Primitive radius tokens (R0-R8) */
380
+ --radius-0: var(--radius-0);
381
+ --radius-1: var(--radius-1);
382
+ --radius-2: var(--radius-2);
383
+ --radius-3: var(--radius-3);
384
+ --radius-4: var(--radius-4);
385
+ --radius-5: var(--radius-5);
386
+ --radius-6: var(--radius-6);
387
+ --radius-7: var(--radius-7);
388
+ --radius-8: var(--radius-8);
389
+
390
+ /* Semantic radius tokens */
391
+ --radius-none: var(--radius-none);
392
+ --radius-sm: var(--radius-sm);
393
+ --radius-md: var(--radius-md);
394
+ --radius-lg: var(--radius-lg);
395
+ --radius-xl: var(--radius-xl);
396
+ --radius-2xl: var(--radius-2xl);
397
+ --radius-full: var(--radius-full);
398
+
399
+
400
+ /* Corner smoothing */
401
+ --corner-smoothing: var(--corner-smoothing);
402
+
403
+ /* Icon sizes */
404
+ --icon-sm: var(--icon-sm);
405
+ --icon-md: var(--icon-md);
406
+ --icon-lg: var(--icon-lg);
407
+
408
+ /* Shadows */
409
+ --shadow-2xs: var(--shadow-2xs);
410
+ --shadow-xs: var(--shadow-xs);
411
+ --shadow-sm: var(--shadow-sm);
412
+ --shadow: var(--shadow);
413
+ --shadow-md: var(--shadow-md);
414
+ --shadow-lg: var(--shadow-lg);
415
+ --shadow-xl: var(--shadow-xl);
416
+ --shadow-2xl: var(--shadow-2xl);
417
+ }
@@ -1,8 +0,0 @@
1
- import '../../global.css';
2
- import type { ReactNode } from 'react';
3
- interface RootLayoutProps {
4
- children: ReactNode;
5
- }
6
- export default function RootLayout({ children }: RootLayoutProps): import("react/jsx-runtime").JSX.Element;
7
- export {};
8
- //# sourceMappingURL=_layout.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"_layout.d.ts","sourceRoot":"","sources":["../../../../src/app/_layout.tsx"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAM1B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,UAAU,eAAe;IACvB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EAAE,QAAQ,EAAE,EAAE,eAAe,2CAY/D"}
@@ -1,174 +0,0 @@
1
- /**
2
- * Comprehensive Dark Theme Configuration
3
- *
4
- * This file provides complete theme tokens and utilities for consistent
5
- * dark mode support across all components in the Blueprint library.
6
- *
7
- * Best Practices:
8
- * - Uses HSL color format for better color manipulation
9
- * - Provides semantic color tokens (not raw colors)
10
- * - Maintains proper contrast ratios for accessibility (WCAG AA/AAA)
11
- * - Consistent with Tailwind CSS conventions
12
- */
13
- import type { ColorValue } from 'react-native';
14
- /**
15
- * Color tokens for light and dark themes
16
- * Each token follows the pattern: purpose-variant
17
- */
18
- export declare const THEME_COLORS: {
19
- readonly light: {
20
- readonly background: "hsl(0, 0%, 100%)";
21
- readonly foreground: "hsl(0, 0%, 3.9%)";
22
- readonly card: "hsl(0, 0%, 100%)";
23
- readonly cardForeground: "hsl(0, 0%, 3.9%)";
24
- readonly popover: "hsl(0, 0%, 100%)";
25
- readonly popoverForeground: "hsl(0, 0%, 3.9%)";
26
- readonly primary: "hsl(0, 0%, 9%)";
27
- readonly primaryForeground: "hsl(0, 0%, 98%)";
28
- readonly secondary: "hsl(0, 0%, 96.1%)";
29
- readonly secondaryForeground: "hsl(0, 0%, 9%)";
30
- readonly muted: "hsl(0, 0%, 96.1%)";
31
- readonly mutedForeground: "hsl(0, 0%, 45.1%)";
32
- readonly accent: "hsl(0, 0%, 96.1%)";
33
- readonly accentForeground: "hsl(0, 0%, 9%)";
34
- readonly destructive: "hsl(0, 84.2%, 60.2%)";
35
- readonly destructiveForeground: "hsl(0, 0%, 98%)";
36
- readonly border: "hsl(0, 0%, 89.8%)";
37
- readonly input: "hsl(0, 0%, 89.8%)";
38
- readonly ring: "hsl(0, 0%, 63%)";
39
- readonly success: "hsl(142, 76%, 36%)";
40
- readonly successForeground: "hsl(0, 0%, 98%)";
41
- readonly warning: "hsl(38, 92%, 50%)";
42
- readonly warningForeground: "hsl(0, 0%, 9%)";
43
- readonly info: "hsl(199, 89%, 48%)";
44
- readonly infoForeground: "hsl(0, 0%, 98%)";
45
- };
46
- readonly dark: {
47
- readonly background: "hsl(0, 0%, 3.9%)";
48
- readonly foreground: "hsl(0, 0%, 98%)";
49
- readonly card: "hsl(0, 0%, 3.9%)";
50
- readonly cardForeground: "hsl(0, 0%, 98%)";
51
- readonly popover: "hsl(0, 0%, 3.9%)";
52
- readonly popoverForeground: "hsl(0, 0%, 98%)";
53
- readonly primary: "hsl(0, 0%, 98%)";
54
- readonly primaryForeground: "hsl(0, 0%, 9%)";
55
- readonly secondary: "hsl(0, 0%, 14.9%)";
56
- readonly secondaryForeground: "hsl(0, 0%, 98%)";
57
- readonly muted: "hsl(0, 0%, 14.9%)";
58
- readonly mutedForeground: "hsl(0, 0%, 63.9%)";
59
- readonly accent: "hsl(0, 0%, 14.9%)";
60
- readonly accentForeground: "hsl(0, 0%, 98%)";
61
- readonly destructive: "hsl(0, 62.8%, 30.6%)";
62
- readonly destructiveForeground: "hsl(0, 0%, 98%)";
63
- readonly border: "hsl(0, 0%, 14.9%)";
64
- readonly input: "hsl(0, 0%, 14.9%)";
65
- readonly ring: "hsl(0, 0%, 45%)";
66
- readonly success: "hsl(142, 76%, 36%)";
67
- readonly successForeground: "hsl(0, 0%, 98%)";
68
- readonly warning: "hsl(38, 92%, 50%)";
69
- readonly warningForeground: "hsl(0, 0%, 9%)";
70
- readonly info: "hsl(199, 89%, 48%)";
71
- readonly infoForeground: "hsl(0, 0%, 98%)";
72
- };
73
- };
74
- /**
75
- * Convert HSL string to React Native ColorValue
76
- * Useful for native platform styling where HSL needs to be converted
77
- */
78
- export declare function hslToRgb(hsl: string): ColorValue;
79
- /**
80
- * Get theme color value based on current theme mode
81
- * Automatically selects the appropriate color from light/dark theme
82
- */
83
- export declare function getThemeColorValue(colorKey: keyof typeof THEME_COLORS.light, isDark: boolean, asRgb?: boolean): ColorValue;
84
- /**
85
- * Component-specific dark mode class mappings
86
- * Use these to ensure consistent styling across all components
87
- */
88
- export declare const DARK_MODE_CLASSES: {
89
- readonly text: {
90
- readonly default: "dark:text-foreground";
91
- readonly muted: "dark:text-muted-foreground";
92
- readonly primary: "dark:text-primary-foreground";
93
- readonly secondary: "dark:text-secondary-foreground";
94
- readonly accent: "dark:text-accent-foreground";
95
- readonly destructive: "dark:text-destructive-foreground";
96
- readonly card: "dark:text-card-foreground";
97
- };
98
- readonly background: {
99
- readonly default: "dark:bg-background";
100
- readonly card: "dark:bg-card";
101
- readonly primary: "dark:bg-primary";
102
- readonly secondary: "dark:bg-secondary";
103
- readonly muted: "dark:bg-muted";
104
- readonly accent: "dark:bg-accent";
105
- readonly destructive: "dark:bg-destructive";
106
- readonly popover: "dark:bg-popover";
107
- };
108
- readonly border: {
109
- readonly default: "dark:border-border";
110
- readonly input: "dark:border-input";
111
- readonly primary: "dark:border-primary";
112
- readonly muted: "dark:border-muted";
113
- readonly accent: "dark:border-accent";
114
- readonly destructive: "dark:border-destructive";
115
- };
116
- readonly state: {
117
- readonly hover: "dark:hover:bg-accent";
118
- readonly active: "dark:active:bg-accent";
119
- readonly focus: "dark:focus:ring-ring";
120
- readonly disabled: "dark:disabled:opacity-50";
121
- };
122
- };
123
- /**
124
- * Helper to combine base classes with dark mode classes
125
- * Ensures consistent application of dark mode styles
126
- */
127
- export declare function withDarkMode(baseClass: string, darkClass: string, additionalClasses?: string): string;
128
- /**
129
- * Pre-configured class strings for common component patterns
130
- * Use these for consistent styling across the library
131
- */
132
- export declare const THEME_PRESETS: {
133
- readonly card: "bg-card text-card-foreground dark:bg-card dark:text-card-foreground border border-border dark:border-border";
134
- readonly input: "bg-background text-foreground dark:bg-background dark:text-foreground border border-input dark:border-input";
135
- readonly buttonPrimary: "bg-primary text-primary-foreground dark:bg-primary dark:text-primary-foreground";
136
- readonly buttonSecondary: "bg-secondary text-secondary-foreground dark:bg-secondary dark:text-secondary-foreground";
137
- readonly buttonOutline: "bg-background text-foreground dark:bg-background dark:text-foreground border border-input dark:border-input";
138
- readonly buttonGhost: "hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent dark:hover:text-accent-foreground";
139
- readonly destructive: "bg-destructive text-destructive-foreground dark:bg-destructive dark:text-destructive-foreground";
140
- readonly muted: "bg-muted text-muted-foreground dark:bg-muted dark:text-muted-foreground";
141
- readonly popover: "bg-popover text-popover-foreground dark:bg-popover dark:text-popover-foreground border border-border dark:border-border";
142
- };
143
- /**
144
- * Semantic color map for native components
145
- * Use these for StyleSheet-based styling
146
- */
147
- export declare function getNativeThemeColors(isDark: boolean): {
148
- background: import("react-native/types_generated/Libraries/StyleSheet/StyleSheetTypes").____ColorValue_Internal;
149
- foreground: import("react-native/types_generated/Libraries/StyleSheet/StyleSheetTypes").____ColorValue_Internal;
150
- card: import("react-native/types_generated/Libraries/StyleSheet/StyleSheetTypes").____ColorValue_Internal;
151
- cardForeground: import("react-native/types_generated/Libraries/StyleSheet/StyleSheetTypes").____ColorValue_Internal;
152
- primary: import("react-native/types_generated/Libraries/StyleSheet/StyleSheetTypes").____ColorValue_Internal;
153
- primaryForeground: import("react-native/types_generated/Libraries/StyleSheet/StyleSheetTypes").____ColorValue_Internal;
154
- secondary: import("react-native/types_generated/Libraries/StyleSheet/StyleSheetTypes").____ColorValue_Internal;
155
- secondaryForeground: import("react-native/types_generated/Libraries/StyleSheet/StyleSheetTypes").____ColorValue_Internal;
156
- muted: import("react-native/types_generated/Libraries/StyleSheet/StyleSheetTypes").____ColorValue_Internal;
157
- mutedForeground: import("react-native/types_generated/Libraries/StyleSheet/StyleSheetTypes").____ColorValue_Internal;
158
- accent: import("react-native/types_generated/Libraries/StyleSheet/StyleSheetTypes").____ColorValue_Internal;
159
- accentForeground: import("react-native/types_generated/Libraries/StyleSheet/StyleSheetTypes").____ColorValue_Internal;
160
- destructive: import("react-native/types_generated/Libraries/StyleSheet/StyleSheetTypes").____ColorValue_Internal;
161
- destructiveForeground: import("react-native/types_generated/Libraries/StyleSheet/StyleSheetTypes").____ColorValue_Internal;
162
- border: import("react-native/types_generated/Libraries/StyleSheet/StyleSheetTypes").____ColorValue_Internal;
163
- input: import("react-native/types_generated/Libraries/StyleSheet/StyleSheetTypes").____ColorValue_Internal;
164
- ring: import("react-native/types_generated/Libraries/StyleSheet/StyleSheetTypes").____ColorValue_Internal;
165
- };
166
- /**
167
- * Type-safe theme color keys
168
- */
169
- export type ThemeColorKey = keyof typeof THEME_COLORS.light;
170
- /**
171
- * Check if a color key exists in the theme
172
- */
173
- export declare function isValidThemeColor(key: string): key is ThemeColorKey;
174
- //# sourceMappingURL=theme-config.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"theme-config.d.ts","sourceRoot":"","sources":["../../../../src/components/theme-config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C;;;GAGG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqGf,CAAC;AAEX;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAuChD;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,OAAO,YAAY,CAAC,KAAK,EACzC,MAAM,EAAE,OAAO,EACf,KAAK,UAAQ,GACZ,UAAU,CAKZ;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyCpB,CAAC;AAEX;;;GAGG;AACH,wBAAgB,YAAY,CAC1B,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,iBAAiB,CAAC,EAAE,MAAM,GACzB,MAAM,CAER;AAED;;;GAGG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;CAmChB,CAAC;AAEX;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,OAAO;;;;;;;;;;;;;;;;;;EAgCnD;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,OAAO,YAAY,CAAC,KAAK,CAAC;AAE5D;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,IAAI,aAAa,CAEnE"}