@goldlabelapps/theme 3.2.8 → 3.5.6

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 (88) hide show
  1. package/README.md +2 -2
  2. package/dist/components/RenderMarkdown.js +7 -2
  3. package/dist/components/download/DownloadBanner.js +1 -8
  4. package/dist/components/footer/Footer.js +6 -3
  5. package/dist/components/footer/FooterWrapper.d.ts +7 -0
  6. package/dist/components/footer/FooterWrapper.js +15 -0
  7. package/dist/components/footer/NXContactColumn.d.ts +13 -0
  8. package/dist/components/footer/NXContactColumn.js +32 -0
  9. package/dist/components/footer/NXLiveApps.d.ts +22 -0
  10. package/dist/components/footer/NXLiveApps.js +87 -0
  11. package/dist/components/footer/NXSocialColumn.d.ts +14 -0
  12. package/dist/components/footer/NXSocialColumn.js +17 -0
  13. package/dist/components/footer/NXTagsColumn.d.ts +14 -0
  14. package/dist/components/footer/NXTagsColumn.js +31 -0
  15. package/dist/components/footer/index.d.ts +6 -0
  16. package/dist/components/footer/index.js +6 -0
  17. package/dist/components/hero/HeroSection.js +1 -1
  18. package/dist/components/hero/VideoModal.js +1 -1
  19. package/dist/components/index.d.ts +11 -3
  20. package/dist/components/index.js +11 -3
  21. package/dist/components/layouts/GuideBreadcrumbs.d.ts +14 -0
  22. package/dist/components/layouts/GuideBreadcrumbs.js +15 -0
  23. package/dist/components/{guide → layouts}/MarkdownContent.js +1 -1
  24. package/dist/components/layouts/Standard.d.ts +10 -0
  25. package/dist/components/layouts/Standard.js +7 -0
  26. package/dist/components/navigation/DropdownMenu.js +1 -1
  27. package/dist/components/navigation/Header.js +3 -6
  28. package/dist/components/navigation/LayoutActions.d.ts +7 -0
  29. package/dist/components/navigation/LayoutActions.js +12 -0
  30. package/dist/components/navigation/LogoContextMenu.js +1 -1
  31. package/dist/components/navigation/MarkdownMenu.d.ts +9 -0
  32. package/dist/components/navigation/MarkdownMenu.js +12 -0
  33. package/dist/components/navigation/MobileMenu.js +1 -1
  34. package/dist/components/navigation/Waiting.d.ts +10 -0
  35. package/dist/components/navigation/Waiting.js +45 -0
  36. package/dist/components/search/HeroSearchBar.d.ts +16 -0
  37. package/dist/components/search/HeroSearchBar.js +38 -0
  38. package/dist/components/search/SearchDialog.d.ts +11 -0
  39. package/dist/components/search/SearchDialog.js +69 -0
  40. package/dist/components/search/SearchIconButton.d.ts +10 -0
  41. package/dist/components/search/SearchIconButton.js +10 -0
  42. package/dist/components/search/SearchResultsList.d.ts +13 -0
  43. package/dist/components/search/SearchResultsList.js +18 -0
  44. package/dist/components/search/index.d.ts +5 -0
  45. package/dist/components/search/index.js +5 -0
  46. package/dist/components/search/useSearch.d.ts +54 -0
  47. package/dist/components/search/useSearch.js +106 -0
  48. package/dist/components/shortcodes/PageLinkShortcode.d.ts +15 -0
  49. package/dist/components/shortcodes/PageLinkShortcode.js +51 -0
  50. package/dist/components/showcase/BlogSection.js +2 -2
  51. package/dist/components/showcase/FeatureExplorer.js +2 -2
  52. package/dist/components/showcase/FeaturedCard.d.ts +13 -0
  53. package/dist/components/showcase/FeaturedCard.js +6 -0
  54. package/dist/components/showcase/SolutionsSection.js +2 -2
  55. package/dist/components/showcase/StatementSection.js +1 -1
  56. package/dist/components/showcase/VideoSection.js +2 -2
  57. package/dist/components/ui/Bash.d.ts +16 -0
  58. package/dist/components/ui/Bash.js +30 -0
  59. package/dist/components/ui/Button.js +1 -1
  60. package/dist/components/ui/ThemeToggle.d.ts +5 -1
  61. package/dist/components/ui/ThemeToggle.js +32 -2
  62. package/dist/components/video/VideoLayout.js +2 -2
  63. package/dist/context/ThemeContext.d.ts +4 -0
  64. package/dist/context/ThemeContext.js +22 -17
  65. package/dist/data/og-images.json +205 -151
  66. package/dist/design-system/components/DesignSystemProvider/DesignSystemProvider.js +3 -8
  67. package/dist/design-system/components/buttons/Button/Button.js +6 -3
  68. package/dist/design-system/components/buttons/IconButton/IconButton.js +6 -3
  69. package/dist/design-system/components/feedback/Alert/Alert.js +3 -2
  70. package/dist/design-system/components/feedback/Card/Card.js +5 -3
  71. package/dist/design-system/components/headings/Heading/Heading.js +2 -1
  72. package/dist/design-system/components/images/FeaturedImage/FeaturedImage.js +6 -6
  73. package/dist/design-system/components/layout/index.d.ts +1 -0
  74. package/dist/design-system/components/layout/index.js +1 -0
  75. package/dist/design-system/components/navigation/SiteNav/SiteNav.js +1 -1
  76. package/dist/design-system/components/nxStyle.d.ts +0 -21
  77. package/dist/design-system/components/nxStyle.js +0 -14
  78. package/dist/design-system/types.d.ts +1 -0
  79. package/dist/design-system/types.js +1 -0
  80. package/dist/index.d.ts +4 -3
  81. package/dist/index.js +1 -0
  82. package/dist/styles/globals.css +10 -12
  83. package/dist/styles/theme.js +30 -3
  84. package/dist/types/index.d.ts +220 -0
  85. package/package.json +3 -2
  86. package/dist/components/guide/GuideLayout.d.ts +0 -8
  87. package/dist/components/guide/GuideLayout.js +0 -12
  88. /package/dist/components/{guide → layouts}/MarkdownContent.d.ts +0 -0
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "$schema": "http://json-schema.org/draft-07/schema#",
3
3
  "title": "Open Graph Images Manifest",
4
- "updatedAt": "2026-09-08T14:05:22.394Z",
5
- "totalCount": 12,
4
+ "updatedAt": "2026-09-12T19:06:51.929Z",
5
+ "totalCount": 22,
6
6
  "items": [
7
7
  {
8
8
  "id": "ai",
@@ -23,12 +23,19 @@
23
23
  "bytes": 89226,
24
24
  "formatted": "87.1 KB"
25
25
  },
26
- "updatedAt": "2026-09-08T08:53:03.294Z"
27
- },
28
- "light": {
29
- "filename": "ai-og-light.jpg",
30
- "path": "/jpg/ai/ai-og-light.jpg",
31
- "relativePath": "ai/ai-og-light.jpg",
26
+ "updatedAt": "2026-09-08T08:53:03.000Z"
27
+ }
28
+ }
29
+ },
30
+ {
31
+ "id": "biker",
32
+ "name": "Biker",
33
+ "category": "biker",
34
+ "versions": {
35
+ "dark": {
36
+ "filename": "biker-og-dark.jpg",
37
+ "path": "/jpg/biker/biker-og-dark.jpg",
38
+ "relativePath": "biker/biker-og-dark.jpg",
32
39
  "mimeType": "image/jpeg",
33
40
  "dimensions": {
34
41
  "width": 1376,
@@ -36,22 +43,22 @@
36
43
  "aspectRatio": "16:9"
37
44
  },
38
45
  "fileSize": {
39
- "bytes": 85096,
40
- "formatted": "83.1 KB"
46
+ "bytes": 117428,
47
+ "formatted": "114.7 KB"
41
48
  },
42
- "updatedAt": "2026-09-08T13:28:19.523Z"
49
+ "updatedAt": "2026-09-09T19:35:39.000Z"
43
50
  }
44
51
  }
45
52
  },
46
53
  {
47
- "id": "developer",
48
- "name": "Developer",
49
- "category": "developer",
54
+ "id": "chix",
55
+ "name": "Chix",
56
+ "category": "chix",
50
57
  "versions": {
51
58
  "dark": {
52
- "filename": "developer-og-dark.jpg",
53
- "path": "/jpg/developer/developer-og-dark.jpg",
54
- "relativePath": "developer/developer-og-dark.jpg",
59
+ "filename": "chix-og-dark.jpg",
60
+ "path": "/jpg/chix/chix-og-dark.jpg",
61
+ "relativePath": "chix/chix-og-dark.jpg",
55
62
  "mimeType": "image/jpeg",
56
63
  "dimensions": {
57
64
  "width": 1376,
@@ -59,15 +66,22 @@
59
66
  "aspectRatio": "16:9"
60
67
  },
61
68
  "fileSize": {
62
- "bytes": 360694,
63
- "formatted": "352.2 KB"
69
+ "bytes": 116033,
70
+ "formatted": "113.3 KB"
64
71
  },
65
- "updatedAt": "2026-09-08T08:41:34.284Z"
66
- },
67
- "light": {
68
- "filename": "developer-og-light.jpg",
69
- "path": "/jpg/developer/developer-og-light.jpg",
70
- "relativePath": "developer/developer-og-light.jpg",
72
+ "updatedAt": "2026-09-09T19:35:39.000Z"
73
+ }
74
+ }
75
+ },
76
+ {
77
+ "id": "dapper",
78
+ "name": "Dapper",
79
+ "category": "dapper",
80
+ "versions": {
81
+ "dark": {
82
+ "filename": "dapper-og-dark.jpg",
83
+ "path": "/jpg/dapper/dapper-og-dark.jpg",
84
+ "relativePath": "dapper/dapper-og-dark.jpg",
71
85
  "mimeType": "image/jpeg",
72
86
  "dimensions": {
73
87
  "width": 1376,
@@ -75,10 +89,33 @@
75
89
  "aspectRatio": "16:9"
76
90
  },
77
91
  "fileSize": {
78
- "bytes": 265168,
79
- "formatted": "259.0 KB"
92
+ "bytes": 117356,
93
+ "formatted": "114.6 KB"
80
94
  },
81
- "updatedAt": "2026-09-08T13:28:19.525Z"
95
+ "updatedAt": "2026-09-09T19:35:39.000Z"
96
+ }
97
+ }
98
+ },
99
+ {
100
+ "id": "developer",
101
+ "name": "Developer",
102
+ "category": "developer",
103
+ "versions": {
104
+ "dark": {
105
+ "filename": "developer-og-dark.jpg",
106
+ "path": "/jpg/developer/developer-og-dark.jpg",
107
+ "relativePath": "developer/developer-og-dark.jpg",
108
+ "mimeType": "image/jpeg",
109
+ "dimensions": {
110
+ "width": 1376,
111
+ "height": 768,
112
+ "aspectRatio": "16:9"
113
+ },
114
+ "fileSize": {
115
+ "bytes": 360694,
116
+ "formatted": "352.2 KB"
117
+ },
118
+ "updatedAt": "2026-09-08T08:41:34.000Z"
82
119
  }
83
120
  }
84
121
  },
@@ -101,7 +138,7 @@
101
138
  "bytes": 361347,
102
139
  "formatted": "352.9 KB"
103
140
  },
104
- "updatedAt": "2026-09-07T12:41:20.648Z"
141
+ "updatedAt": "2026-09-07T12:41:20.000Z"
105
142
  },
106
143
  "light": {
107
144
  "filename": "flash-og-light.jpg",
@@ -117,7 +154,30 @@
117
154
  "bytes": 397044,
118
155
  "formatted": "387.7 KB"
119
156
  },
120
- "updatedAt": "2026-09-08T13:28:19.526Z"
157
+ "updatedAt": "2026-09-07T12:41:20.000Z"
158
+ }
159
+ }
160
+ },
161
+ {
162
+ "id": "git",
163
+ "name": "Git",
164
+ "category": "git",
165
+ "versions": {
166
+ "dark": {
167
+ "filename": "git-og-dark.jpg",
168
+ "path": "/jpg/git/git-og-dark.jpg",
169
+ "relativePath": "git/git-og-dark.jpg",
170
+ "mimeType": "image/jpeg",
171
+ "dimensions": {
172
+ "width": 1376,
173
+ "height": 768,
174
+ "aspectRatio": "16:9"
175
+ },
176
+ "fileSize": {
177
+ "bytes": 328179,
178
+ "formatted": "320.5 KB"
179
+ },
180
+ "updatedAt": "2026-09-12T19:01:59.208Z"
121
181
  }
122
182
  }
123
183
  },
@@ -140,12 +200,19 @@
140
200
  "bytes": 108694,
141
201
  "formatted": "106.1 KB"
142
202
  },
143
- "updatedAt": "2026-09-08T10:32:36.816Z"
144
- },
145
- "light": {
146
- "filename": "goldlabel-og-light.jpg",
147
- "path": "/jpg/goldlabel/goldlabel-og-light.jpg",
148
- "relativePath": "goldlabel/goldlabel-og-light.jpg",
203
+ "updatedAt": "2026-09-08T10:32:36.000Z"
204
+ }
205
+ }
206
+ },
207
+ {
208
+ "id": "hippy",
209
+ "name": "Hippy",
210
+ "category": "hippy",
211
+ "versions": {
212
+ "dark": {
213
+ "filename": "hippy-og-dark.jpg",
214
+ "path": "/jpg/hippy/hippy-og-dark.jpg",
215
+ "relativePath": "hippy/hippy-og-dark.jpg",
149
216
  "mimeType": "image/jpeg",
150
217
  "dimensions": {
151
218
  "width": 1376,
@@ -153,22 +220,22 @@
153
220
  "aspectRatio": "16:9"
154
221
  },
155
222
  "fileSize": {
156
- "bytes": 107237,
157
- "formatted": "104.7 KB"
223
+ "bytes": 118167,
224
+ "formatted": "115.4 KB"
158
225
  },
159
- "updatedAt": "2026-09-08T13:28:19.528Z"
226
+ "updatedAt": "2026-09-09T19:35:39.000Z"
160
227
  }
161
228
  }
162
229
  },
163
230
  {
164
- "id": "nextjs",
165
- "name": "Nextjs",
166
- "category": "nextjs",
231
+ "id": "hipster",
232
+ "name": "Hipster",
233
+ "category": "hipster",
167
234
  "versions": {
168
235
  "dark": {
169
- "filename": "nextjs-og-dark.jpg",
170
- "path": "/jpg/nextjs/nextjs-og-dark.jpg",
171
- "relativePath": "nextjs/nextjs-og-dark.jpg",
236
+ "filename": "hipster-og-dark.jpg",
237
+ "path": "/jpg/hipster/hipster-og-dark.jpg",
238
+ "relativePath": "hipster/hipster-og-dark.jpg",
172
239
  "mimeType": "image/jpeg",
173
240
  "dimensions": {
174
241
  "width": 1376,
@@ -176,15 +243,45 @@
176
243
  "aspectRatio": "16:9"
177
244
  },
178
245
  "fileSize": {
179
- "bytes": 437861,
180
- "formatted": "427.6 KB"
246
+ "bytes": 118302,
247
+ "formatted": "115.5 KB"
181
248
  },
182
- "updatedAt": "2026-09-07T12:39:44.942Z"
183
- },
184
- "light": {
185
- "filename": "nextjs-og-light.jpg",
186
- "path": "/jpg/nextjs/nextjs-og-light.jpg",
187
- "relativePath": "nextjs/nextjs-og-light.jpg",
249
+ "updatedAt": "2026-09-09T19:35:40.000Z"
250
+ }
251
+ }
252
+ },
253
+ {
254
+ "id": "mumma",
255
+ "name": "Mumma",
256
+ "category": "mumma",
257
+ "versions": {
258
+ "dark": {
259
+ "filename": "mumma-og-dark.jpg",
260
+ "path": "/jpg/mumma/mumma-og-dark.jpg",
261
+ "relativePath": "mumma/mumma-og-dark.jpg",
262
+ "mimeType": "image/jpeg",
263
+ "dimensions": {
264
+ "width": 1376,
265
+ "height": 768,
266
+ "aspectRatio": "16:9"
267
+ },
268
+ "fileSize": {
269
+ "bytes": 114835,
270
+ "formatted": "112.1 KB"
271
+ },
272
+ "updatedAt": "2026-09-09T19:35:40.000Z"
273
+ }
274
+ }
275
+ },
276
+ {
277
+ "id": "nextjs",
278
+ "name": "Nextjs",
279
+ "category": "nextjs",
280
+ "versions": {
281
+ "dark": {
282
+ "filename": "nextjs-og-dark.jpg",
283
+ "path": "/jpg/nextjs/nextjs-og-dark.jpg",
284
+ "relativePath": "nextjs/nextjs-og-dark.jpg",
188
285
  "mimeType": "image/jpeg",
189
286
  "dimensions": {
190
287
  "width": 1376,
@@ -192,10 +289,10 @@
192
289
  "aspectRatio": "16:9"
193
290
  },
194
291
  "fileSize": {
195
- "bytes": 338568,
196
- "formatted": "330.6 KB"
292
+ "bytes": 437861,
293
+ "formatted": "427.6 KB"
197
294
  },
198
- "updatedAt": "2026-09-08T13:28:19.530Z"
295
+ "updatedAt": "2026-09-07T12:39:44.000Z"
199
296
  }
200
297
  }
201
298
  },
@@ -218,12 +315,19 @@
218
315
  "bytes": 310972,
219
316
  "formatted": "303.7 KB"
220
317
  },
221
- "updatedAt": "2026-09-08T08:23:16.597Z"
222
- },
223
- "light": {
224
- "filename": "nx-og-light.jpg",
225
- "path": "/jpg/nx/nx-og-light.jpg",
226
- "relativePath": "nx/nx-og-light.jpg",
318
+ "updatedAt": "2026-09-08T08:23:16.000Z"
319
+ }
320
+ }
321
+ },
322
+ {
323
+ "id": "punk",
324
+ "name": "Punk",
325
+ "category": "punk",
326
+ "versions": {
327
+ "dark": {
328
+ "filename": "punk-og-dark.jpg",
329
+ "path": "/jpg/punk/punk-og-dark.jpg",
330
+ "relativePath": "punk/punk-og-dark.jpg",
227
331
  "mimeType": "image/jpeg",
228
332
  "dimensions": {
229
333
  "width": 1376,
@@ -231,10 +335,10 @@
231
335
  "aspectRatio": "16:9"
232
336
  },
233
337
  "fileSize": {
234
- "bytes": 305630,
235
- "formatted": "298.5 KB"
338
+ "bytes": 116397,
339
+ "formatted": "113.7 KB"
236
340
  },
237
- "updatedAt": "2026-09-08T13:28:19.532Z"
341
+ "updatedAt": "2026-09-09T19:35:40.000Z"
238
342
  }
239
343
  }
240
344
  },
@@ -257,12 +361,19 @@
257
361
  "bytes": 368770,
258
362
  "formatted": "360.1 KB"
259
363
  },
260
- "updatedAt": "2026-09-06T07:15:15.674Z"
261
- },
262
- "light": {
263
- "filename": "python-og-light.jpg",
264
- "path": "/jpg/python/python-og-light.jpg",
265
- "relativePath": "python/python-og-light.jpg",
364
+ "updatedAt": "2026-09-06T07:15:15.000Z"
365
+ }
366
+ }
367
+ },
368
+ {
369
+ "id": "rasta",
370
+ "name": "Rasta",
371
+ "category": "rasta",
372
+ "versions": {
373
+ "dark": {
374
+ "filename": "rasta-og-dark.jpg",
375
+ "path": "/jpg/rasta/rasta-og-dark.jpg",
376
+ "relativePath": "rasta/rasta-og-dark.jpg",
266
377
  "mimeType": "image/jpeg",
267
378
  "dimensions": {
268
379
  "width": 1376,
@@ -270,10 +381,10 @@
270
381
  "aspectRatio": "16:9"
271
382
  },
272
383
  "fileSize": {
273
- "bytes": 281140,
274
- "formatted": "274.6 KB"
384
+ "bytes": 119406,
385
+ "formatted": "116.6 KB"
275
386
  },
276
- "updatedAt": "2026-09-08T13:28:19.534Z"
387
+ "updatedAt": "2026-09-09T19:35:40.000Z"
277
388
  }
278
389
  }
279
390
  },
@@ -296,12 +407,19 @@
296
407
  "bytes": 456879,
297
408
  "formatted": "446.2 KB"
298
409
  },
299
- "updatedAt": "2026-09-06T07:02:33.640Z"
300
- },
301
- "light": {
302
- "filename": "react-og-light.jpg",
303
- "path": "/jpg/react/react-og-light.jpg",
304
- "relativePath": "react/react-og-light.jpg",
410
+ "updatedAt": "2026-09-06T07:02:33.000Z"
411
+ }
412
+ }
413
+ },
414
+ {
415
+ "id": "rocker",
416
+ "name": "Rocker",
417
+ "category": "rocker",
418
+ "versions": {
419
+ "dark": {
420
+ "filename": "rocker-og-dark.jpg",
421
+ "path": "/jpg/rocker/rocker-og-dark.jpg",
422
+ "relativePath": "rocker/rocker-og-dark.jpg",
305
423
  "mimeType": "image/jpeg",
306
424
  "dimensions": {
307
425
  "width": 1376,
@@ -309,10 +427,10 @@
309
427
  "aspectRatio": "16:9"
310
428
  },
311
429
  "fileSize": {
312
- "bytes": 441400,
313
- "formatted": "431.1 KB"
430
+ "bytes": 120219,
431
+ "formatted": "117.4 KB"
314
432
  },
315
- "updatedAt": "2026-09-08T13:28:19.537Z"
433
+ "updatedAt": "2026-09-09T19:35:40.000Z"
316
434
  }
317
435
  }
318
436
  },
@@ -335,23 +453,7 @@
335
453
  "bytes": 390939,
336
454
  "formatted": "381.8 KB"
337
455
  },
338
- "updatedAt": "2026-09-07T12:34:33.046Z"
339
- },
340
- "light": {
341
- "filename": "terminal-og-light.jpg",
342
- "path": "/jpg/terminal/terminal-og-light.jpg",
343
- "relativePath": "terminal/terminal-og-light.jpg",
344
- "mimeType": "image/jpeg",
345
- "dimensions": {
346
- "width": 1376,
347
- "height": 768,
348
- "aspectRatio": "16:9"
349
- },
350
- "fileSize": {
351
- "bytes": 414622,
352
- "formatted": "404.9 KB"
353
- },
354
- "updatedAt": "2026-09-08T13:28:19.539Z"
456
+ "updatedAt": "2026-09-07T12:34:33.000Z"
355
457
  }
356
458
  }
357
459
  },
@@ -374,23 +476,7 @@
374
476
  "bytes": 369621,
375
477
  "formatted": "361.0 KB"
376
478
  },
377
- "updatedAt": "2026-09-08T14:05:21.897Z"
378
- },
379
- "light": {
380
- "filename": "theme-og-light.jpg",
381
- "path": "/jpg/theme/theme-og-light.jpg",
382
- "relativePath": "theme/theme-og-light.jpg",
383
- "mimeType": "image/jpeg",
384
- "dimensions": {
385
- "width": 1376,
386
- "height": 768,
387
- "aspectRatio": "16:9"
388
- },
389
- "fileSize": {
390
- "bytes": 319575,
391
- "formatted": "312.1 KB"
392
- },
393
- "updatedAt": "2026-09-08T14:05:21.928Z"
479
+ "updatedAt": "2026-09-08T14:05:21.000Z"
394
480
  }
395
481
  }
396
482
  },
@@ -413,23 +499,7 @@
413
499
  "bytes": 434717,
414
500
  "formatted": "424.5 KB"
415
501
  },
416
- "updatedAt": "2026-09-06T07:05:31.060Z"
417
- },
418
- "light": {
419
- "filename": "ts-og-light.jpg",
420
- "path": "/jpg/typescript/ts-og-light.jpg",
421
- "relativePath": "typescript/ts-og-light.jpg",
422
- "mimeType": "image/jpeg",
423
- "dimensions": {
424
- "width": 1376,
425
- "height": 768,
426
- "aspectRatio": "16:9"
427
- },
428
- "fileSize": {
429
- "bytes": 410776,
430
- "formatted": "401.1 KB"
431
- },
432
- "updatedAt": "2026-09-08T13:28:19.543Z"
502
+ "updatedAt": "2026-09-06T07:05:31.000Z"
433
503
  }
434
504
  }
435
505
  },
@@ -452,23 +522,7 @@
452
522
  "bytes": 94582,
453
523
  "formatted": "92.4 KB"
454
524
  },
455
- "updatedAt": "2026-09-08T09:25:13.111Z"
456
- },
457
- "light": {
458
- "filename": "uberedux-og-light.jpg",
459
- "path": "/jpg/uberedux/uberedux-og-light.jpg",
460
- "relativePath": "uberedux/uberedux-og-light.jpg",
461
- "mimeType": "image/jpeg",
462
- "dimensions": {
463
- "width": 1376,
464
- "height": 768,
465
- "aspectRatio": "16:9"
466
- },
467
- "fileSize": {
468
- "bytes": 91830,
469
- "formatted": "89.7 KB"
470
- },
471
- "updatedAt": "2026-09-08T13:28:19.545Z"
525
+ "updatedAt": "2026-09-08T09:25:13.000Z"
472
526
  }
473
527
  }
474
528
  }
@@ -4,14 +4,9 @@ import { useMemo } from 'react';
4
4
  import { CssBaseline, GlobalStyles, ThemeProvider } from '@mui/material';
5
5
  import { createAppTheme } from '../../../styles/theme';
6
6
  import { getNxStyle } from '../nxStyle';
7
+ import { Waiting } from '../../../components/navigation/Waiting';
7
8
  function resolveInitialMode(mode) {
8
- if (mode) {
9
- return mode;
10
- }
11
- if (typeof window !== 'undefined' && typeof window.matchMedia === 'function') {
12
- return window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';
13
- }
14
- return 'light';
9
+ return mode || 'dark';
15
10
  }
16
11
  export default function DesignSystemProvider({ children, mode, themeConfig }) {
17
12
  const resolvedMode = useMemo(() => resolveInitialMode(mode), [mode]);
@@ -25,5 +20,5 @@ export default function DesignSystemProvider({ children, mode, themeConfig }) {
25
20
  color: theme.palette.text.primary,
26
21
  transition: 'background-color 0.2s ease',
27
22
  },
28
- } }), children] }));
23
+ } }), _jsx(Waiting, {}), children] }));
29
24
  }
@@ -111,10 +111,13 @@ function getToneStyles(tone, variant, theme) {
111
111
  },
112
112
  },
113
113
  };
114
- return tones[tone][styleVariant];
114
+ const toneKey = tone && tone in tones ? tone : 'primary';
115
+ const variantKey = styleVariant && styleVariant in tones[toneKey] ? styleVariant : 'solid';
116
+ return tones[toneKey][variantKey];
115
117
  }
116
118
  export default function Button({ children, variant = 'solid', tone = 'primary', size = 'md', fullWidth = false, disabled = false, href, onClick, startIcon, endIcon, type = 'button', ariaLabel, className, sx, }) {
117
119
  const theme = useTheme();
120
+ const sizeKey = size && size in SIZE_STYLES ? size : 'md';
118
121
  const mergedSx = {
119
122
  borderRadius: '3px',
120
123
  fontWeight: 400,
@@ -127,9 +130,9 @@ export default function Button({ children, variant = 'solid', tone = 'primary',
127
130
  '&.Mui-disabled': {
128
131
  opacity: 0.55,
129
132
  },
130
- ...SIZE_STYLES[size],
133
+ ...SIZE_STYLES[sizeKey],
131
134
  ...getToneStyles(tone, variant, theme),
132
135
  };
133
136
  const composedSx = Array.isArray(sx) ? [mergedSx, ...sx] : sx ? [mergedSx, sx] : mergedSx;
134
- return (_jsx(MuiButton, { variant: VARIANT_MAP[variant], disableElevation: true, fullWidth: fullWidth, disabled: disabled, href: href, onClick: onClick, startIcon: startIcon, endIcon: endIcon, type: type, "aria-label": ariaLabel, className: className, sx: composedSx, children: children }));
137
+ return (_jsx(MuiButton, { variant: VARIANT_MAP[variant ?? 'solid'], disableElevation: true, fullWidth: fullWidth, disabled: disabled, href: href, onClick: onClick, startIcon: startIcon, endIcon: endIcon, type: type, "aria-label": ariaLabel, className: className, sx: composedSx, children: children }));
135
138
  }
@@ -105,20 +105,23 @@ function getToneStyles(tone, variant, theme) {
105
105
  },
106
106
  },
107
107
  };
108
- return toneColors[tone][styleVariant];
108
+ const toneKey = tone && tone in toneColors ? tone : 'primary';
109
+ const variantKey = styleVariant && styleVariant in toneColors[toneKey] ? styleVariant : 'solid';
110
+ return toneColors[toneKey][variantKey];
109
111
  }
110
112
  export default function IconButton({ icon, variant = 'ghost', tone = 'primary', size = 'md', disabled = false, href, onClick, type = 'button', ariaLabel, className, color, sx, ...rest }) {
111
113
  const theme = useTheme();
112
114
  const muiColor = color ?? (tone === 'danger' ? 'error' : tone === 'primary' ? 'primary' : 'inherit');
115
+ const sizeKey = size && size in SIZE_STYLES ? size : 'md';
113
116
  const mergedSx = {
114
117
  borderRadius: '3px',
115
118
  alignSelf: 'flex-start',
116
- border: VARIANT_MAP[variant] === 'outlined' ? '1px solid' : undefined,
119
+ border: VARIANT_MAP[variant ?? 'ghost'] === 'outlined' ? '1px solid' : undefined,
117
120
  boxShadow: variant === 'ghost' || variant === 'text' ? 'none' : undefined,
118
121
  '&.Mui-disabled': {
119
122
  opacity: 0.55,
120
123
  },
121
- ...SIZE_STYLES[size],
124
+ ...SIZE_STYLES[sizeKey],
122
125
  ...getToneStyles(tone, variant, theme),
123
126
  };
124
127
  const composedSx = Array.isArray(sx) ? [mergedSx, ...sx] : sx ? [mergedSx, sx] : mergedSx;
@@ -5,7 +5,7 @@ import { useTheme } from '@mui/material/styles';
5
5
  export default function Alert({ children, title, severity = 'info', dismissible = false }) {
6
6
  const theme = useTheme();
7
7
  const isDark = theme.palette.mode === 'dark';
8
- const tone = {
8
+ const toneMap = {
9
9
  info: {
10
10
  border: isDark ? 'rgba(96, 165, 250, 0.4)' : 'rgba(37, 99, 235, 0.3)',
11
11
  bg: isDark ? 'rgba(96, 165, 250, 0.12)' : 'rgba(37, 99, 235, 0.08)',
@@ -34,7 +34,8 @@ export default function Alert({ children, title, severity = 'info', dismissible
34
34
  title: isDark ? '#FCA5A5' : '#991B1B',
35
35
  text: isDark ? '#F8FAFC' : '#1E293B',
36
36
  }
37
- }[severity];
37
+ };
38
+ const tone = toneMap[severity && severity in toneMap ? severity : 'info'];
38
39
  return (_jsxs(Box, { sx: {
39
40
  border: `1px solid ${tone.border}`,
40
41
  borderLeft: `4px solid ${tone.accent}`,
@@ -4,8 +4,9 @@ import { Box } from '@mui/material';
4
4
  import { useState } from 'react';
5
5
  export default function Card({ children, padding = 'md', variant = 'paper', hoverLift = false, mode }) {
6
6
  const [isHovered, setIsHovered] = useState(false);
7
- const pad = { sm: 2, md: 3, lg: 4 }[padding] ?? 3;
8
- const styling = {
7
+ const padMap = { sm: 2, md: 3, lg: 4 };
8
+ const pad = padMap[padding && padding in padMap ? padding : 'md'];
9
+ const variantMap = {
9
10
  paper: {
10
11
  bgcolor: mode === 'light' ? '#FFFFFF' : mode === 'dark' ? '#1C1C1C' : 'background.paper',
11
12
  color: mode === 'light' ? '#1E1E1E' : mode === 'dark' ? '#FFFFFF' : 'text.primary',
@@ -34,7 +35,8 @@ export default function Card({ children, padding = 'md', variant = 'paper', hove
34
35
  border: '1px solid transparent',
35
36
  boxShadow: '0 12px 40px rgba(40, 34, 28, 0.12)',
36
37
  },
37
- }[variant];
38
+ };
39
+ const styling = variantMap[variant && variant in variantMap ? variant : 'paper'];
38
40
  return (_jsx(Box, { onMouseEnter: () => hoverLift && setIsHovered(true), onMouseLeave: () => hoverLift && setIsHovered(false), sx: {
39
41
  borderRadius: '3px',
40
42
  p: pad,
@@ -50,13 +50,14 @@ function Heading({ children, tone, as = 'span', variant, style, sx, ...rest }) {
50
50
  const { fontWeight: _fontWeight, ...safeStyle } = style ?? {};
51
51
  const inferredVariant = as === 'h1' || as === 'h2' || as === 'h3' || as === 'h4' || as === 'h5' || as === 'h6' ? as : 'label';
52
52
  const resolvedVariant = variant ?? inferredVariant;
53
+ const variantKey = (resolvedVariant && resolvedVariant in headingVariantStyles ? resolvedVariant : 'label');
53
54
  return (_jsx(Typography, { component: as, sx: [
54
55
  {
55
56
  display: as === 'span' ? 'inline-flex' : 'block',
56
57
  alignItems: 'center',
57
58
  gap: 1,
58
59
  fontFamily: 'var(--font-title)',
59
- ...headingVariantStyles[resolvedVariant],
60
+ ...headingVariantStyles[variantKey],
60
61
  color: resolvedTone === 'primary' ? 'primary.main' : 'secondary.main',
61
62
  fontWeight: 400
62
63
  },