@idealyst/navigation 1.0.83 → 1.0.85
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +10 -3
- package/src/context/NavigatorContext.native.tsx +37 -6
- package/src/context/NavigatorContext.web.tsx +3 -1
- package/src/context/types.ts +2 -0
- package/src/examples/CustomStackLayout.tsx +1 -3
- package/src/examples/CustomTabLayout.tsx +6 -5
- package/src/examples/ExampleNavigationRouter.tsx +111 -0
- package/src/examples/ExampleSearchDialog.tsx +134 -0
- package/src/examples/ExampleSidebar.tsx +134 -0
- package/src/examples/ExampleWebLayout.tsx +107 -0
- package/src/examples/HeaderRight.tsx +27 -0
- package/src/examples/index.ts +3 -5
- package/src/examples/unistyles.ts +6 -12
- package/src/index.native.ts +4 -1
- package/src/layouts/DefaultStackLayout.tsx +5 -3
- package/src/layouts/DefaultTabLayout.tsx +10 -5
- package/src/routing/DrawerContentWrapper.native.tsx +25 -0
- package/src/routing/HeaderWrapper.native.tsx +19 -0
- package/src/routing/router.native.tsx +133 -23
- package/src/routing/router.web.tsx +1 -2
- package/src/routing/types.ts +40 -12
- package/CLAUDE.md +0 -417
- package/LLM-ACCESS-GUIDE.md +0 -166
- package/src/examples/ExampleDrawerRouter.tsx +0 -196
- package/src/examples/ExampleHybridRouter.tsx +0 -62
- package/src/examples/ExampleStackRouter.tsx +0 -276
- package/src/examples/ExampleTabRouter.tsx +0 -318
- package/src/examples/README.md +0 -394
- package/src/examples/highContrastThemes.ts +0 -583
|
@@ -1,583 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
createTheme,
|
|
3
|
-
} from '@idealyst/theme';
|
|
4
|
-
|
|
5
|
-
// High contrast color palettes - designed for maximum accessibility
|
|
6
|
-
export const highContrastLightPalettes = {
|
|
7
|
-
// Pure high contrast colors
|
|
8
|
-
red: {
|
|
9
|
-
50: '#ffffff',
|
|
10
|
-
100: '#ffe5e5',
|
|
11
|
-
200: '#ffcccc',
|
|
12
|
-
300: '#ff9999',
|
|
13
|
-
400: '#ff6666',
|
|
14
|
-
500: '#ff0000', // Pure red
|
|
15
|
-
600: '#cc0000',
|
|
16
|
-
700: '#990000',
|
|
17
|
-
800: '#660000',
|
|
18
|
-
900: '#330000',
|
|
19
|
-
},
|
|
20
|
-
|
|
21
|
-
orange: {
|
|
22
|
-
50: '#ffffff',
|
|
23
|
-
100: '#fff3e0',
|
|
24
|
-
200: '#ffe0b3',
|
|
25
|
-
300: '#ffcc80',
|
|
26
|
-
400: '#ffb74d',
|
|
27
|
-
500: '#ff8f00', // High contrast orange
|
|
28
|
-
600: '#cc7200',
|
|
29
|
-
700: '#995500',
|
|
30
|
-
800: '#663900',
|
|
31
|
-
900: '#331c00',
|
|
32
|
-
},
|
|
33
|
-
|
|
34
|
-
yellow: {
|
|
35
|
-
50: '#ffffff',
|
|
36
|
-
100: '#fffde7',
|
|
37
|
-
200: '#fff9c4',
|
|
38
|
-
300: '#fff59d',
|
|
39
|
-
400: '#fff176',
|
|
40
|
-
500: '#ffeb3b', // High contrast yellow
|
|
41
|
-
600: '#ccbc2e',
|
|
42
|
-
700: '#998d22',
|
|
43
|
-
800: '#665e17',
|
|
44
|
-
900: '#332f0b',
|
|
45
|
-
},
|
|
46
|
-
|
|
47
|
-
green: {
|
|
48
|
-
50: '#ffffff',
|
|
49
|
-
100: '#e8f5e8',
|
|
50
|
-
200: '#c8e6c8',
|
|
51
|
-
300: '#a5d6a5',
|
|
52
|
-
400: '#81c784',
|
|
53
|
-
500: '#4caf50', // High contrast green
|
|
54
|
-
600: '#388e3c',
|
|
55
|
-
700: '#2e7d32',
|
|
56
|
-
800: '#1b5e20',
|
|
57
|
-
900: '#0d2f10',
|
|
58
|
-
},
|
|
59
|
-
|
|
60
|
-
blue: {
|
|
61
|
-
50: '#ffffff',
|
|
62
|
-
100: '#e3f2fd',
|
|
63
|
-
200: '#bbdefb',
|
|
64
|
-
300: '#90caf9',
|
|
65
|
-
400: '#64b5f6',
|
|
66
|
-
500: '#2196f3', // High contrast blue
|
|
67
|
-
600: '#1976d2',
|
|
68
|
-
700: '#1565c0',
|
|
69
|
-
800: '#0d47a1',
|
|
70
|
-
900: '#0a2472',
|
|
71
|
-
},
|
|
72
|
-
|
|
73
|
-
purple: {
|
|
74
|
-
50: '#ffffff',
|
|
75
|
-
100: '#f3e5f5',
|
|
76
|
-
200: '#e1bee7',
|
|
77
|
-
300: '#ce93d8',
|
|
78
|
-
400: '#ba68c8',
|
|
79
|
-
500: '#9c27b0', // High contrast purple
|
|
80
|
-
600: '#7b1fa2',
|
|
81
|
-
700: '#6a1b9a',
|
|
82
|
-
800: '#4a148c',
|
|
83
|
-
900: '#3d1178',
|
|
84
|
-
},
|
|
85
|
-
|
|
86
|
-
black: {
|
|
87
|
-
50: '#ffffff',
|
|
88
|
-
100: '#f5f5f5',
|
|
89
|
-
200: '#eeeeee',
|
|
90
|
-
300: '#e0e0e0',
|
|
91
|
-
400: '#bdbdbd',
|
|
92
|
-
500: '#9e9e9e',
|
|
93
|
-
600: '#757575',
|
|
94
|
-
700: '#616161',
|
|
95
|
-
800: '#424242',
|
|
96
|
-
900: '#000000', // Pure black
|
|
97
|
-
},
|
|
98
|
-
|
|
99
|
-
gray: {
|
|
100
|
-
50: '#ffffff', // Pure white
|
|
101
|
-
100: '#f8f8f8',
|
|
102
|
-
200: '#e8e8e8',
|
|
103
|
-
300: '#d0d0d0',
|
|
104
|
-
400: '#b0b0b0',
|
|
105
|
-
500: '#808080',
|
|
106
|
-
600: '#606060',
|
|
107
|
-
700: '#404040',
|
|
108
|
-
800: '#202020',
|
|
109
|
-
900: '#000000', // Pure black
|
|
110
|
-
},
|
|
111
|
-
|
|
112
|
-
white: {
|
|
113
|
-
50: '#ffffff', // Pure white
|
|
114
|
-
100: '#ffffff',
|
|
115
|
-
200: '#ffffff',
|
|
116
|
-
300: '#ffffff',
|
|
117
|
-
400: '#ffffff',
|
|
118
|
-
500: '#ffffff',
|
|
119
|
-
600: '#ffffff',
|
|
120
|
-
700: '#ffffff',
|
|
121
|
-
800: '#ffffff',
|
|
122
|
-
900: '#ffffff',
|
|
123
|
-
},
|
|
124
|
-
} as const;
|
|
125
|
-
|
|
126
|
-
// High contrast dark palettes
|
|
127
|
-
export const highContrastDarkPalettes = {
|
|
128
|
-
// Pure high contrast colors for dark mode
|
|
129
|
-
red: {
|
|
130
|
-
50: '#000000',
|
|
131
|
-
100: '#330000',
|
|
132
|
-
200: '#660000',
|
|
133
|
-
300: '#990000',
|
|
134
|
-
400: '#cc0000',
|
|
135
|
-
500: '#ff0000', // Pure red
|
|
136
|
-
600: '#ff3333',
|
|
137
|
-
700: '#ff6666',
|
|
138
|
-
800: '#ff9999',
|
|
139
|
-
900: '#ffffff',
|
|
140
|
-
},
|
|
141
|
-
|
|
142
|
-
orange: {
|
|
143
|
-
50: '#000000',
|
|
144
|
-
100: '#331c00',
|
|
145
|
-
200: '#663900',
|
|
146
|
-
300: '#995500',
|
|
147
|
-
400: '#cc7200',
|
|
148
|
-
500: '#ff8f00', // High contrast orange
|
|
149
|
-
600: '#ffab40',
|
|
150
|
-
700: '#ffcc80',
|
|
151
|
-
800: '#ffe0b3',
|
|
152
|
-
900: '#ffffff',
|
|
153
|
-
},
|
|
154
|
-
|
|
155
|
-
yellow: {
|
|
156
|
-
50: '#000000',
|
|
157
|
-
100: '#332f0b',
|
|
158
|
-
200: '#665e17',
|
|
159
|
-
300: '#998d22',
|
|
160
|
-
400: '#ccbc2e',
|
|
161
|
-
500: '#ffeb3b', // High contrast yellow
|
|
162
|
-
600: '#fff176',
|
|
163
|
-
700: '#fff59d',
|
|
164
|
-
800: '#fff9c4',
|
|
165
|
-
900: '#ffffff',
|
|
166
|
-
},
|
|
167
|
-
|
|
168
|
-
green: {
|
|
169
|
-
50: '#000000',
|
|
170
|
-
100: '#0d2f10',
|
|
171
|
-
200: '#1b5e20',
|
|
172
|
-
300: '#2e7d32',
|
|
173
|
-
400: '#388e3c',
|
|
174
|
-
500: '#4caf50', // High contrast green
|
|
175
|
-
600: '#81c784',
|
|
176
|
-
700: '#a5d6a5',
|
|
177
|
-
800: '#c8e6c8',
|
|
178
|
-
900: '#ffffff',
|
|
179
|
-
},
|
|
180
|
-
|
|
181
|
-
blue: {
|
|
182
|
-
50: '#000000',
|
|
183
|
-
100: '#0a2472',
|
|
184
|
-
200: '#0d47a1',
|
|
185
|
-
300: '#1565c0',
|
|
186
|
-
400: '#1976d2',
|
|
187
|
-
500: '#2196f3', // High contrast blue
|
|
188
|
-
600: '#64b5f6',
|
|
189
|
-
700: '#90caf9',
|
|
190
|
-
800: '#bbdefb',
|
|
191
|
-
900: '#ffffff',
|
|
192
|
-
},
|
|
193
|
-
|
|
194
|
-
purple: {
|
|
195
|
-
50: '#000000',
|
|
196
|
-
100: '#3d1178',
|
|
197
|
-
200: '#4a148c',
|
|
198
|
-
300: '#6a1b9a',
|
|
199
|
-
400: '#7b1fa2',
|
|
200
|
-
500: '#9c27b0', // High contrast purple
|
|
201
|
-
600: '#ba68c8',
|
|
202
|
-
700: '#ce93d8',
|
|
203
|
-
800: '#e1bee7',
|
|
204
|
-
900: '#ffffff',
|
|
205
|
-
},
|
|
206
|
-
|
|
207
|
-
black: {
|
|
208
|
-
50: '#000000', // Pure black
|
|
209
|
-
100: '#000000',
|
|
210
|
-
200: '#000000',
|
|
211
|
-
300: '#000000',
|
|
212
|
-
400: '#000000',
|
|
213
|
-
500: '#000000',
|
|
214
|
-
600: '#000000',
|
|
215
|
-
700: '#000000',
|
|
216
|
-
800: '#000000',
|
|
217
|
-
900: '#000000',
|
|
218
|
-
},
|
|
219
|
-
|
|
220
|
-
gray: {
|
|
221
|
-
50: '#000000', // Pure black
|
|
222
|
-
100: '#111111',
|
|
223
|
-
200: '#222222',
|
|
224
|
-
300: '#333333',
|
|
225
|
-
400: '#555555',
|
|
226
|
-
500: '#777777',
|
|
227
|
-
600: '#aaaaaa',
|
|
228
|
-
700: '#cccccc',
|
|
229
|
-
800: '#eeeeee',
|
|
230
|
-
900: '#ffffff', // Pure white
|
|
231
|
-
},
|
|
232
|
-
|
|
233
|
-
white: {
|
|
234
|
-
50: '#000000',
|
|
235
|
-
100: '#202020',
|
|
236
|
-
200: '#404040',
|
|
237
|
-
300: '#606060',
|
|
238
|
-
400: '#808080',
|
|
239
|
-
500: '#a0a0a0',
|
|
240
|
-
600: '#c0c0c0',
|
|
241
|
-
700: '#e0e0e0',
|
|
242
|
-
800: '#f0f0f0',
|
|
243
|
-
900: '#ffffff', // Pure white
|
|
244
|
-
},
|
|
245
|
-
} as const;
|
|
246
|
-
|
|
247
|
-
// High contrast light intents
|
|
248
|
-
function createHighContrastLightIntents(palettes: typeof highContrastLightPalettes) {
|
|
249
|
-
return {
|
|
250
|
-
primary: {
|
|
251
|
-
main: palettes.blue[500], // Pure blue
|
|
252
|
-
on: '#ffffff', // Pure white text
|
|
253
|
-
container: palettes.blue[50], // White container
|
|
254
|
-
onContainer: palettes.blue[900], // Very dark blue text
|
|
255
|
-
light: palettes.blue[200],
|
|
256
|
-
dark: palettes.blue[800],
|
|
257
|
-
border: palettes.blue[500], // Strong border
|
|
258
|
-
},
|
|
259
|
-
success: {
|
|
260
|
-
main: palettes.green[500], // Pure green
|
|
261
|
-
on: '#ffffff', // Pure white text
|
|
262
|
-
container: palettes.green[50], // White container
|
|
263
|
-
onContainer: palettes.green[900], // Very dark green text
|
|
264
|
-
light: palettes.green[200],
|
|
265
|
-
dark: palettes.green[800],
|
|
266
|
-
border: palettes.green[500], // Strong border
|
|
267
|
-
},
|
|
268
|
-
error: {
|
|
269
|
-
main: palettes.red[500], // Pure red
|
|
270
|
-
on: '#ffffff', // Pure white text
|
|
271
|
-
container: palettes.red[50], // White container
|
|
272
|
-
onContainer: palettes.red[900], // Very dark red text
|
|
273
|
-
light: palettes.red[200],
|
|
274
|
-
dark: palettes.red[800],
|
|
275
|
-
border: palettes.red[500], // Strong border
|
|
276
|
-
},
|
|
277
|
-
warning: {
|
|
278
|
-
main: palettes.orange[500], // High contrast orange
|
|
279
|
-
on: '#000000', // Black text for better contrast
|
|
280
|
-
container: palettes.orange[50], // White container
|
|
281
|
-
onContainer: palettes.orange[900], // Very dark orange text
|
|
282
|
-
light: palettes.orange[200],
|
|
283
|
-
dark: palettes.orange[800],
|
|
284
|
-
border: palettes.orange[500], // Strong border
|
|
285
|
-
},
|
|
286
|
-
neutral: {
|
|
287
|
-
main: palettes.gray[500], // Medium gray
|
|
288
|
-
on: '#ffffff', // Pure white text
|
|
289
|
-
container: palettes.gray[50], // White container
|
|
290
|
-
onContainer: palettes.gray[900], // Pure black text
|
|
291
|
-
light: palettes.gray[200],
|
|
292
|
-
dark: palettes.gray[800],
|
|
293
|
-
border: palettes.gray[500], // Strong border
|
|
294
|
-
},
|
|
295
|
-
info: {
|
|
296
|
-
main: palettes.blue[500], // Pure blue
|
|
297
|
-
on: '#ffffff', // Pure white text
|
|
298
|
-
container: palettes.blue[50], // White container
|
|
299
|
-
onContainer: palettes.blue[900], // Very dark blue text
|
|
300
|
-
light: palettes.blue[200],
|
|
301
|
-
dark: palettes.blue[800],
|
|
302
|
-
border: palettes.blue[500], // Strong border
|
|
303
|
-
},
|
|
304
|
-
} as any;
|
|
305
|
-
}
|
|
306
|
-
|
|
307
|
-
// High contrast dark intents
|
|
308
|
-
function createHighContrastDarkIntents(palettes: typeof highContrastDarkPalettes) {
|
|
309
|
-
return {
|
|
310
|
-
primary: {
|
|
311
|
-
main: palettes.blue[500], // Pure blue
|
|
312
|
-
on: '#000000', // Pure black text
|
|
313
|
-
container: palettes.blue[50], // Black container
|
|
314
|
-
onContainer: palettes.blue[900], // Pure white text
|
|
315
|
-
light: palettes.blue[700],
|
|
316
|
-
dark: palettes.blue[300],
|
|
317
|
-
border: palettes.blue[500], // Strong border
|
|
318
|
-
},
|
|
319
|
-
success: {
|
|
320
|
-
main: palettes.green[500], // Pure green
|
|
321
|
-
on: '#000000', // Pure black text
|
|
322
|
-
container: palettes.green[50], // Black container
|
|
323
|
-
onContainer: palettes.green[900], // Pure white text
|
|
324
|
-
light: palettes.green[700],
|
|
325
|
-
dark: palettes.green[300],
|
|
326
|
-
border: palettes.green[500], // Strong border
|
|
327
|
-
},
|
|
328
|
-
error: {
|
|
329
|
-
main: palettes.red[500], // Pure red
|
|
330
|
-
on: '#000000', // Pure black text
|
|
331
|
-
container: palettes.red[50], // Black container
|
|
332
|
-
onContainer: palettes.red[900], // Pure white text
|
|
333
|
-
light: palettes.red[700],
|
|
334
|
-
dark: palettes.red[300],
|
|
335
|
-
border: palettes.red[500], // Strong border
|
|
336
|
-
},
|
|
337
|
-
warning: {
|
|
338
|
-
main: palettes.orange[500], // High contrast orange
|
|
339
|
-
on: '#000000', // Pure black text
|
|
340
|
-
container: palettes.orange[50], // Black container
|
|
341
|
-
onContainer: palettes.orange[900], // Pure white text
|
|
342
|
-
light: palettes.orange[700],
|
|
343
|
-
dark: palettes.orange[300],
|
|
344
|
-
border: palettes.orange[500], // Strong border
|
|
345
|
-
},
|
|
346
|
-
neutral: {
|
|
347
|
-
main: palettes.gray[500], // Medium gray
|
|
348
|
-
on: '#000000', // Pure black text
|
|
349
|
-
container: palettes.gray[50], // Black container
|
|
350
|
-
onContainer: palettes.gray[900], // Pure white text
|
|
351
|
-
light: palettes.gray[700],
|
|
352
|
-
dark: palettes.gray[300],
|
|
353
|
-
border: palettes.gray[500], // Strong border
|
|
354
|
-
},
|
|
355
|
-
info: {
|
|
356
|
-
main: palettes.blue[500], // Pure blue
|
|
357
|
-
on: '#000000', // Pure black text
|
|
358
|
-
container: palettes.blue[50], // Black container
|
|
359
|
-
onContainer: palettes.blue[900], // Pure white text
|
|
360
|
-
light: palettes.blue[700],
|
|
361
|
-
dark: palettes.blue[300],
|
|
362
|
-
border: palettes.blue[500], // Strong border
|
|
363
|
-
},
|
|
364
|
-
} as any;
|
|
365
|
-
}
|
|
366
|
-
|
|
367
|
-
// High contrast light colors
|
|
368
|
-
function createHighContrastLightColors(palettes: typeof highContrastLightPalettes) {
|
|
369
|
-
return {
|
|
370
|
-
text: {
|
|
371
|
-
primary: palettes.gray[900], // Pure black text
|
|
372
|
-
secondary: palettes.gray[800], // Very dark gray
|
|
373
|
-
disabled: palettes.gray[600], // Medium gray
|
|
374
|
-
inverse: palettes.gray[50], // Pure white
|
|
375
|
-
muted: palettes.gray[700], // Dark gray
|
|
376
|
-
placeholder: palettes.gray[600], // Medium gray
|
|
377
|
-
},
|
|
378
|
-
surface: {
|
|
379
|
-
primary: palettes.gray[50], // Pure white surface
|
|
380
|
-
secondary: palettes.gray[100], // Light gray surface
|
|
381
|
-
tertiary: palettes.gray[200], // Medium light surface
|
|
382
|
-
elevated: palettes.gray[50], // Pure white elevated
|
|
383
|
-
overlay: 'rgba(0, 0, 0, 0.8)', // Strong overlay
|
|
384
|
-
inverse: palettes.gray[900], // Pure black inverse
|
|
385
|
-
},
|
|
386
|
-
border: {
|
|
387
|
-
primary: palettes.gray[900], // Pure black border
|
|
388
|
-
secondary: palettes.gray[800], // Very dark border
|
|
389
|
-
strong: palettes.gray[900], // Pure black strong border
|
|
390
|
-
focus: palettes.blue[500], // Pure blue focus
|
|
391
|
-
disabled: palettes.gray[600], // Medium gray disabled
|
|
392
|
-
},
|
|
393
|
-
interactive: {
|
|
394
|
-
hover: palettes.gray[200], // Light gray hover
|
|
395
|
-
pressed: palettes.gray[300], // Medium light pressed
|
|
396
|
-
focus: palettes.blue[500], // Pure blue focus
|
|
397
|
-
disabled: palettes.gray[200], // Light gray disabled
|
|
398
|
-
},
|
|
399
|
-
};
|
|
400
|
-
}
|
|
401
|
-
|
|
402
|
-
// High contrast dark colors
|
|
403
|
-
function createHighContrastDarkColors(palettes: typeof highContrastDarkPalettes) {
|
|
404
|
-
return {
|
|
405
|
-
text: {
|
|
406
|
-
primary: palettes.gray[900], // Pure white text
|
|
407
|
-
secondary: palettes.gray[800], // Very light gray
|
|
408
|
-
disabled: palettes.gray[600], // Medium gray
|
|
409
|
-
inverse: palettes.gray[50], // Pure black
|
|
410
|
-
muted: palettes.gray[700], // Light gray
|
|
411
|
-
placeholder: palettes.gray[600], // Medium gray
|
|
412
|
-
},
|
|
413
|
-
surface: {
|
|
414
|
-
primary: palettes.gray[50], // Pure black surface
|
|
415
|
-
secondary: palettes.gray[100], // Very dark surface
|
|
416
|
-
tertiary: palettes.gray[200], // Dark surface
|
|
417
|
-
elevated: palettes.gray[100], // Very dark elevated
|
|
418
|
-
overlay: 'rgba(0, 0, 0, 0.9)', // Very strong overlay
|
|
419
|
-
inverse: palettes.gray[900], // Pure white inverse
|
|
420
|
-
},
|
|
421
|
-
border: {
|
|
422
|
-
primary: palettes.gray[900], // Pure white border
|
|
423
|
-
secondary: palettes.gray[800], // Very light border
|
|
424
|
-
strong: palettes.gray[900], // Pure white strong border
|
|
425
|
-
focus: palettes.blue[500], // Pure blue focus
|
|
426
|
-
disabled: palettes.gray[600], // Medium gray disabled
|
|
427
|
-
},
|
|
428
|
-
interactive: {
|
|
429
|
-
hover: palettes.gray[200], // Dark hover
|
|
430
|
-
pressed: palettes.gray[300], // Medium dark pressed
|
|
431
|
-
focus: palettes.blue[500], // Pure blue focus
|
|
432
|
-
disabled: palettes.gray[200], // Dark disabled
|
|
433
|
-
},
|
|
434
|
-
};
|
|
435
|
-
}
|
|
436
|
-
|
|
437
|
-
// Create high contrast themes
|
|
438
|
-
export const highContrastThemes = {
|
|
439
|
-
lightHighContrast: createTheme({
|
|
440
|
-
name: 'LightHighContrast',
|
|
441
|
-
mode: 'light',
|
|
442
|
-
palettes: highContrastLightPalettes,
|
|
443
|
-
intents: createHighContrastLightIntents(highContrastLightPalettes),
|
|
444
|
-
colors: createHighContrastLightColors(highContrastLightPalettes),
|
|
445
|
-
|
|
446
|
-
typography: {
|
|
447
|
-
fontFamily: '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif',
|
|
448
|
-
fontWeight: {
|
|
449
|
-
light: '400', // No ultra-light weights for better readability
|
|
450
|
-
regular: '500', // Slightly heavier for better contrast
|
|
451
|
-
medium: '600', // Medium weight
|
|
452
|
-
semibold: '700', // Bold
|
|
453
|
-
bold: '800', // Extra bold
|
|
454
|
-
extrabold: '900', // Black
|
|
455
|
-
},
|
|
456
|
-
},
|
|
457
|
-
|
|
458
|
-
borderRadius: {
|
|
459
|
-
sm: 2, // Sharper corners for high contrast
|
|
460
|
-
md: 4,
|
|
461
|
-
lg: 6,
|
|
462
|
-
xl: 8,
|
|
463
|
-
xxl: 12,
|
|
464
|
-
},
|
|
465
|
-
|
|
466
|
-
spacing: {
|
|
467
|
-
xs: 4,
|
|
468
|
-
sm: 8,
|
|
469
|
-
md: 16,
|
|
470
|
-
lg: 24,
|
|
471
|
-
xl: 32,
|
|
472
|
-
xxl: 40,
|
|
473
|
-
xxxl: 48,
|
|
474
|
-
},
|
|
475
|
-
|
|
476
|
-
shadows: {
|
|
477
|
-
sm: {
|
|
478
|
-
shadowColor: '#000',
|
|
479
|
-
shadowOffset: { width: 0, height: 2 },
|
|
480
|
-
shadowOpacity: 0.25, // Stronger shadows
|
|
481
|
-
shadowRadius: 4,
|
|
482
|
-
elevation: 2,
|
|
483
|
-
},
|
|
484
|
-
md: {
|
|
485
|
-
shadowColor: '#000',
|
|
486
|
-
shadowOffset: { width: 0, height: 4 },
|
|
487
|
-
shadowOpacity: 0.3, // Stronger shadows
|
|
488
|
-
shadowRadius: 8,
|
|
489
|
-
elevation: 4,
|
|
490
|
-
},
|
|
491
|
-
lg: {
|
|
492
|
-
shadowColor: '#000',
|
|
493
|
-
shadowOffset: { width: 0, height: 8 },
|
|
494
|
-
shadowOpacity: 0.35, // Stronger shadows
|
|
495
|
-
shadowRadius: 16,
|
|
496
|
-
elevation: 8,
|
|
497
|
-
},
|
|
498
|
-
},
|
|
499
|
-
|
|
500
|
-
transitions: {
|
|
501
|
-
fast: '0.1s ease', // Faster transitions
|
|
502
|
-
base: '0.15s ease',
|
|
503
|
-
slow: '0.2s ease',
|
|
504
|
-
button: 'all 0.15s ease',
|
|
505
|
-
fade: 'opacity 0.15s ease',
|
|
506
|
-
slide: 'transform 0.2s ease',
|
|
507
|
-
},
|
|
508
|
-
}),
|
|
509
|
-
|
|
510
|
-
darkHighContrast: createTheme({
|
|
511
|
-
name: 'DarkHighContrast',
|
|
512
|
-
mode: 'dark',
|
|
513
|
-
palettes: highContrastDarkPalettes,
|
|
514
|
-
intents: createHighContrastDarkIntents(highContrastDarkPalettes),
|
|
515
|
-
colors: createHighContrastDarkColors(highContrastDarkPalettes),
|
|
516
|
-
|
|
517
|
-
typography: {
|
|
518
|
-
fontFamily: '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif',
|
|
519
|
-
fontWeight: {
|
|
520
|
-
light: '400', // No ultra-light weights for better readability
|
|
521
|
-
regular: '500', // Slightly heavier for better contrast
|
|
522
|
-
medium: '600', // Medium weight
|
|
523
|
-
semibold: '700', // Bold
|
|
524
|
-
bold: '800', // Extra bold
|
|
525
|
-
extrabold: '900', // Black
|
|
526
|
-
},
|
|
527
|
-
},
|
|
528
|
-
|
|
529
|
-
borderRadius: {
|
|
530
|
-
sm: 2, // Sharper corners for high contrast
|
|
531
|
-
md: 4,
|
|
532
|
-
lg: 6,
|
|
533
|
-
xl: 8,
|
|
534
|
-
xxl: 12,
|
|
535
|
-
},
|
|
536
|
-
|
|
537
|
-
spacing: {
|
|
538
|
-
xs: 4,
|
|
539
|
-
sm: 8,
|
|
540
|
-
md: 16,
|
|
541
|
-
lg: 24,
|
|
542
|
-
xl: 32,
|
|
543
|
-
xxl: 40,
|
|
544
|
-
xxxl: 48,
|
|
545
|
-
},
|
|
546
|
-
|
|
547
|
-
shadows: {
|
|
548
|
-
sm: {
|
|
549
|
-
shadowColor: '#000',
|
|
550
|
-
shadowOffset: { width: 0, height: 2 },
|
|
551
|
-
shadowOpacity: 0.5, // Much stronger shadows for dark mode
|
|
552
|
-
shadowRadius: 4,
|
|
553
|
-
elevation: 2,
|
|
554
|
-
},
|
|
555
|
-
md: {
|
|
556
|
-
shadowColor: '#000',
|
|
557
|
-
shadowOffset: { width: 0, height: 4 },
|
|
558
|
-
shadowOpacity: 0.6, // Much stronger shadows for dark mode
|
|
559
|
-
shadowRadius: 8,
|
|
560
|
-
elevation: 4,
|
|
561
|
-
},
|
|
562
|
-
lg: {
|
|
563
|
-
shadowColor: '#000',
|
|
564
|
-
shadowOffset: { width: 0, height: 8 },
|
|
565
|
-
shadowOpacity: 0.7, // Much stronger shadows for dark mode
|
|
566
|
-
shadowRadius: 16,
|
|
567
|
-
elevation: 8,
|
|
568
|
-
},
|
|
569
|
-
},
|
|
570
|
-
|
|
571
|
-
transitions: {
|
|
572
|
-
fast: '0.1s ease', // Faster transitions
|
|
573
|
-
base: '0.15s ease',
|
|
574
|
-
slow: '0.2s ease',
|
|
575
|
-
button: 'all 0.15s ease',
|
|
576
|
-
fade: 'opacity 0.15s ease',
|
|
577
|
-
slide: 'transform 0.2s ease',
|
|
578
|
-
},
|
|
579
|
-
}),
|
|
580
|
-
} as const;
|
|
581
|
-
|
|
582
|
-
// Extended type definitions for TypeScript
|
|
583
|
-
export type HighContrastThemeVariant = 'lightHighContrast' | 'darkHighContrast';
|