@widlarzgroup/docusaurus-ui 0.0.1

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 (86) hide show
  1. package/README.md +36 -0
  2. package/lib/components/PlatformsList/PlatformsList.d.ts +7 -0
  3. package/lib/components/PlatformsList/PlatformsList.d.ts.map +1 -0
  4. package/lib/components/PlatformsList/PlatformsList.js +14 -0
  5. package/lib/components/PlatformsList/PlatformsList.js.map +1 -0
  6. package/lib/components/PlatformsList/PlatformsList.module.css +10 -0
  7. package/lib/components/PlusBadge/PlusBadge.d.ts +6 -0
  8. package/lib/components/PlusBadge/PlusBadge.d.ts.map +1 -0
  9. package/lib/components/PlusBadge/PlusBadge.js +12 -0
  10. package/lib/components/PlusBadge/PlusBadge.js.map +1 -0
  11. package/lib/components/PlusBadge/PlusBadge.module.css +17 -0
  12. package/lib/components/ProBadge/ProBadge.d.ts +2 -0
  13. package/lib/components/ProBadge/ProBadge.d.ts.map +1 -0
  14. package/lib/components/ProBadge/ProBadge.js +12 -0
  15. package/lib/components/ProBadge/ProBadge.js.map +1 -0
  16. package/lib/components/ProBadge/ProBadge.module.css +8 -0
  17. package/lib/components/ProFeature/ProFeature.d.ts +7 -0
  18. package/lib/components/ProFeature/ProFeature.d.ts.map +1 -0
  19. package/lib/components/ProFeature/ProFeature.js +12 -0
  20. package/lib/components/ProFeature/ProFeature.js.map +1 -0
  21. package/lib/components/ProFeature/ProFeature.module.css +89 -0
  22. package/lib/components/StatusBadge/StatusBadge.d.ts +7 -0
  23. package/lib/components/StatusBadge/StatusBadge.d.ts.map +1 -0
  24. package/lib/components/StatusBadge/StatusBadge.js +26 -0
  25. package/lib/components/StatusBadge/StatusBadge.js.map +1 -0
  26. package/lib/components/StatusBadge/StatusBadge.module.css +26 -0
  27. package/lib/components/TWGBadge/TWGBadge.d.ts +6 -0
  28. package/lib/components/TWGBadge/TWGBadge.d.ts.map +1 -0
  29. package/lib/components/TWGBadge/TWGBadge.js +15 -0
  30. package/lib/components/TWGBadge/TWGBadge.js.map +1 -0
  31. package/lib/components/TWGBadge/TWGBadge.module.css +107 -0
  32. package/lib/css/custom.css +614 -0
  33. package/lib/index.d.ts +4 -0
  34. package/lib/index.d.ts.map +1 -0
  35. package/lib/index.js +37 -0
  36. package/lib/index.js.map +1 -0
  37. package/lib/theme/DocItem/Footer/index.d.ts +3 -0
  38. package/lib/theme/DocItem/Footer/index.d.ts.map +1 -0
  39. package/lib/theme/DocItem/Footer/index.js +24 -0
  40. package/lib/theme/DocItem/Footer/index.js.map +1 -0
  41. package/lib/theme/DocItem/TOC/Desktop/index.d.ts +3 -0
  42. package/lib/theme/DocItem/TOC/Desktop/index.d.ts.map +1 -0
  43. package/lib/theme/DocItem/TOC/Desktop/index.js +15 -0
  44. package/lib/theme/DocItem/TOC/Desktop/index.js.map +1 -0
  45. package/lib/theme/DocSidebarItem/Category/index.d.ts +5 -0
  46. package/lib/theme/DocSidebarItem/Category/index.d.ts.map +1 -0
  47. package/lib/theme/DocSidebarItem/Category/index.js +224 -0
  48. package/lib/theme/DocSidebarItem/Category/index.js.map +1 -0
  49. package/lib/theme/DocSidebarItem/Category/styles.module.css +119 -0
  50. package/lib/theme/DocSidebarItem/Link/index.d.ts +5 -0
  51. package/lib/theme/DocSidebarItem/Link/index.d.ts.map +1 -0
  52. package/lib/theme/DocSidebarItem/Link/index.js +35 -0
  53. package/lib/theme/DocSidebarItem/Link/index.js.map +1 -0
  54. package/lib/theme/DocSidebarItem/Link/styles.module.css +18 -0
  55. package/lib/theme/TOC/index.d.ts +4 -0
  56. package/lib/theme/TOC/index.d.ts.map +1 -0
  57. package/lib/theme/TOC/index.js +19 -0
  58. package/lib/theme/TOC/index.js.map +1 -0
  59. package/lib/theme/TOC/styles.module.css +16 -0
  60. package/lib/types/sidebar.d.ts +17 -0
  61. package/lib/types/sidebar.d.ts.map +1 -0
  62. package/lib/types/sidebar.js +3 -0
  63. package/lib/types/sidebar.js.map +1 -0
  64. package/package.json +41 -0
  65. package/src/components/PlatformsList/PlatformsList.module.css +10 -0
  66. package/src/components/PlatformsList/PlatformsList.tsx +28 -0
  67. package/src/components/PlusBadge/PlusBadge.module.css +17 -0
  68. package/src/components/PlusBadge/PlusBadge.tsx +23 -0
  69. package/src/components/ProBadge/ProBadge.module.css +8 -0
  70. package/src/components/ProBadge/ProBadge.tsx +21 -0
  71. package/src/components/ProFeature/ProFeature.module.css +89 -0
  72. package/src/components/ProFeature/ProFeature.tsx +51 -0
  73. package/src/components/StatusBadge/StatusBadge.module.css +26 -0
  74. package/src/components/StatusBadge/StatusBadge.tsx +32 -0
  75. package/src/components/TWGBadge/TWGBadge.module.css +107 -0
  76. package/src/components/TWGBadge/TWGBadge.tsx +27 -0
  77. package/src/css/custom.css +614 -0
  78. package/src/index.ts +22 -0
  79. package/src/theme/DocItem/Footer/index.tsx +51 -0
  80. package/src/theme/DocSidebarItem/Category/index.tsx +403 -0
  81. package/src/theme/DocSidebarItem/Category/styles.module.css +119 -0
  82. package/src/theme/DocSidebarItem/Link/index.tsx +85 -0
  83. package/src/theme/DocSidebarItem/Link/styles.module.css +18 -0
  84. package/src/theme/TOC/index.tsx +25 -0
  85. package/src/theme/TOC/styles.module.css +16 -0
  86. package/src/types/sidebar.ts +23 -0
@@ -0,0 +1,614 @@
1
+ @import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@800&family=Outfit:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap');
2
+
3
+ :root {
4
+ --color-bg-primary: #ffffff;
5
+ --color-bg-secondary: #f8f9fa;
6
+ --color-bg-tertiary: #f1f3f5;
7
+ --color-bg-elevated: #ffffff;
8
+
9
+ --color-accent: #4a9ece;
10
+ --color-accent-dim: #3a8ab8;
11
+ --color-accent-dark: #2d7aa8;
12
+ --color-accent-bright: #96c9eb;
13
+ --color-accent-bright-dim: #76b8e5;
14
+ --color-accent-glow: rgba(74, 158, 206, 0.25);
15
+ --color-accent-subtle: rgba(74, 158, 206, 0.12);
16
+
17
+ --color-secondary: #e8c420;
18
+ --color-secondary-dim: #d4b31a;
19
+ --color-secondary-glow: rgba(232, 196, 32, 0.35);
20
+ --color-secondary-subtle: rgba(232, 196, 32, 0.18);
21
+
22
+ --color-text-primary: #1a1a1a;
23
+ --color-text-secondary: #4a4a4a;
24
+ --color-text-muted: #6a6a6a;
25
+
26
+ --color-border: rgba(0, 0, 0, 0.1);
27
+ --color-border-hover: rgba(0, 0, 0, 0.2);
28
+
29
+ --ifm-color-primary: #96c9eb;
30
+ --ifm-color-primary-dark: #76b8e5;
31
+ --ifm-color-primary-darker: #65b0e2;
32
+ --ifm-color-primary-darkest: #3597d9;
33
+ --ifm-color-primary-light: #b6daf1;
34
+ --ifm-color-primary-lighter: #c7e2f4;
35
+ --ifm-color-primary-lightest: #f7fbfd;
36
+
37
+ --ifm-color-secondary: #FAD85B;
38
+ --ifm-color-secondary-dark: #f8d03a;
39
+ --ifm-color-secondary-darker: #f7ca1f;
40
+ --ifm-color-secondary-darkest: #e5b80a;
41
+ --ifm-color-secondary-light: #fce07c;
42
+ --ifm-color-secondary-lighter: #fde48d;
43
+ --ifm-color-secondary-lightest: #fef4c4;
44
+
45
+ --ifm-background-color: var(--color-bg-primary);
46
+ --ifm-background-surface-color: var(--color-bg-secondary);
47
+ --ifm-navbar-background-color: rgba(255, 255, 255, 0.95);
48
+ --ifm-footer-background-color: var(--color-bg-primary);
49
+
50
+ --ifm-font-family-base: 'Outfit', -apple-system, BlinkMacSystemFont, sans-serif;
51
+ --ifm-font-family-monospace: 'JetBrains Mono', monospace;
52
+ --ifm-heading-font-family: 'Outfit', sans-serif;
53
+
54
+ --ifm-font-size-base: 16px;
55
+ --ifm-line-height-base: 1.7;
56
+ --ifm-heading-font-weight: 600;
57
+
58
+ --ifm-code-font-size: 90%;
59
+ --ifm-code-background: var(--color-bg-tertiary);
60
+ --ifm-code-border-radius: 6px;
61
+ --ifm-code-padding-horizontal: 0.4rem;
62
+ --ifm-code-padding-vertical: 0.15rem;
63
+ --ifm-code-color: var(--color-text-primary);
64
+
65
+ --ifm-link-color: var(--color-accent);
66
+ --ifm-link-hover-color: var(--color-accent-dim);
67
+
68
+ --ifm-navbar-height: 72px;
69
+ --ifm-navbar-shadow: none;
70
+
71
+ --ifm-menu-color: var(--color-text-secondary);
72
+ --ifm-menu-color-active: var(--color-accent);
73
+ --ifm-menu-color-background-active: var(--color-accent-subtle);
74
+
75
+ --ifm-toc-link-color: var(--color-text-muted);
76
+ --ifm-hr-border-color: var(--color-border);
77
+
78
+ --docusaurus-highlighted-code-line-bg: rgba(150, 201, 235, 0.1);
79
+
80
+ --glass-bg: rgba(255, 255, 255, 0.8);
81
+ --glass-border: rgba(0, 0, 0, 0.1);
82
+ --card-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
83
+ --glow-shadow: 0 0 60px rgba(150, 201, 235, 0.08);
84
+
85
+ --transition-fast: 150ms ease;
86
+ --transition-normal: 250ms ease;
87
+ --transition-slow: 400ms cubic-bezier(0.4, 0, 0.2, 1);
88
+ }
89
+
90
+ [data-theme='dark'] {
91
+ --color-bg-primary: #0f0f0f;
92
+ --color-bg-secondary: #161616;
93
+ --color-bg-tertiary: #1c1c1c;
94
+ --color-bg-elevated: #222222;
95
+
96
+ --color-accent: #96c9eb;
97
+ --color-accent-dim: #76b8e5;
98
+ --color-accent-dark: #5aa3d4;
99
+ --color-accent-bright: #96c9eb;
100
+ --color-accent-bright-dim: #76b8e5;
101
+ --color-accent-glow: rgba(150, 201, 235, 0.2);
102
+ --color-accent-subtle: rgba(150, 201, 235, 0.1);
103
+
104
+ --color-secondary: #FAD85B;
105
+ --color-secondary-dim: #f8d03a;
106
+ --color-secondary-glow: rgba(250, 216, 91, 0.2);
107
+ --color-secondary-subtle: rgba(250, 216, 91, 0.1);
108
+
109
+ --color-text-primary: #e0e0e0;
110
+ --color-text-secondary: #a0a0a0;
111
+ --color-text-muted: #707070;
112
+
113
+ --color-border: rgba(255, 255, 255, 0.08);
114
+ --color-border-hover: rgba(255, 255, 255, 0.15);
115
+
116
+ --ifm-background-color: var(--color-bg-primary);
117
+ --ifm-background-surface-color: var(--color-bg-secondary);
118
+ --ifm-navbar-background-color: rgba(15, 15, 15, 0.95);
119
+ --ifm-footer-background-color: var(--color-bg-primary);
120
+
121
+ --glass-bg: rgba(255, 255, 255, 0.04);
122
+ --glass-border: rgba(255, 255, 255, 0.05);
123
+ --card-shadow: 0 8px 32px rgba(0, 0, 0, 0.4);
124
+ --glow-shadow: 0 0 60px rgba(150, 201, 235, 0.12);
125
+ }
126
+
127
+ html {
128
+ scroll-behavior: smooth;
129
+ }
130
+
131
+ body {
132
+ background: var(--color-bg-primary);
133
+ color: var(--color-text-primary);
134
+ -webkit-font-smoothing: antialiased;
135
+ -moz-osx-font-smoothing: grayscale;
136
+ }
137
+
138
+ body::before {
139
+ content: '';
140
+ position: fixed;
141
+ top: 0;
142
+ left: 0;
143
+ right: 0;
144
+ bottom: 0;
145
+ background:
146
+ radial-gradient(ellipse 80% 50% at 50% -20%, rgba(150, 201, 235, 0.03), transparent),
147
+ radial-gradient(ellipse 60% 40% at 100% 0%, rgba(250, 216, 91, 0.02), transparent),
148
+ radial-gradient(ellipse 40% 60% at 0% 100%, rgba(150, 201, 235, 0.02), transparent);
149
+ pointer-events: none;
150
+ z-index: -1;
151
+ }
152
+
153
+ [data-theme='dark'] body::before {
154
+ display: none;
155
+ }
156
+
157
+ .navbar {
158
+ background: var(--ifm-navbar-background-color);
159
+ border-bottom: 1px solid var(--color-border);
160
+ padding: 0.5rem 1rem;
161
+ }
162
+
163
+ .navbar__title {
164
+ font-weight: 700;
165
+ font-size: 1.15rem;
166
+ letter-spacing: -0.02em;
167
+ color: var(--color-text-primary);
168
+ }
169
+
170
+ .navbar__link {
171
+ font-weight: 500;
172
+ font-size: 0.9rem;
173
+ color: var(--color-text-secondary);
174
+ transition: color var(--transition-fast);
175
+ position: relative;
176
+ }
177
+
178
+ .navbar__link:hover {
179
+ color: var(--color-text-primary);
180
+ }
181
+
182
+ .navbar__link--active {
183
+ color: var(--color-accent) !important;
184
+ }
185
+
186
+ .navbar__link--active::after {
187
+ content: '';
188
+ position: absolute;
189
+ bottom: -4px;
190
+ left: 0;
191
+ right: 0;
192
+ height: 2px;
193
+ background: var(--color-accent);
194
+ border-radius: 1px;
195
+ }
196
+
197
+ .menu {
198
+ background: transparent;
199
+ padding: 1rem 0;
200
+ }
201
+
202
+ .menu__link {
203
+ font-size: 0.9rem;
204
+ font-weight: 450;
205
+ border-radius: 8px;
206
+ padding: 0.5rem 0.75rem;
207
+ transition: all var(--transition-fast);
208
+ }
209
+
210
+ .menu__link:hover:not(.menu__link--active) {
211
+ background: var(--color-accent-subtle);
212
+ color: var(--color-text-primary);
213
+ }
214
+
215
+ .menu__link--active {
216
+ background: var(--color-accent-subtle) !important;
217
+ color: var(--color-accent) !important;
218
+ font-weight: 600;
219
+ }
220
+
221
+ .menu__list-item-collapsible:hover {
222
+ background: transparent;
223
+ }
224
+
225
+ .menu__list-item-collapsible--active {
226
+ background: transparent !important;
227
+ }
228
+
229
+ .theme-doc-sidebar-container {
230
+ border-right: 1px solid var(--color-border) !important;
231
+ }
232
+
233
+ .table-of-contents__link {
234
+ font-size: 0.85rem;
235
+ color: var(--color-text-muted);
236
+ transition: color var(--transition-fast);
237
+ }
238
+
239
+ .table-of-contents__link:hover {
240
+ color: var(--color-text-primary);
241
+ }
242
+
243
+ .table-of-contents__link--active {
244
+ color: var(--color-accent) !important;
245
+ font-weight: 500;
246
+ }
247
+
248
+ .markdown {
249
+ --ifm-heading-color: var(--color-text-primary);
250
+ }
251
+
252
+ .markdown h1 {
253
+ font-size: 2.5rem;
254
+ font-weight: 700;
255
+ letter-spacing: -0.03em;
256
+ margin-bottom: 1.5rem;
257
+ background: linear-gradient(135deg, var(--color-text-primary) 0%, var(--color-text-secondary) 100%);
258
+ -webkit-background-clip: text;
259
+ -webkit-text-fill-color: transparent;
260
+ background-clip: text;
261
+ }
262
+
263
+ .markdown h2 {
264
+ font-size: 1.75rem;
265
+ font-weight: 600;
266
+ letter-spacing: -0.02em;
267
+ margin-top: 2.5rem;
268
+ padding-bottom: 0.5rem;
269
+ border-bottom: 1px solid var(--color-border);
270
+ }
271
+
272
+ .markdown h3 {
273
+ font-size: 1.35rem;
274
+ font-weight: 600;
275
+ letter-spacing: -0.01em;
276
+ margin-top: 2rem;
277
+ }
278
+
279
+ .markdown p {
280
+ color: var(--color-text-secondary);
281
+ line-height: 1.8;
282
+ }
283
+
284
+ .markdown strong {
285
+ color: var(--color-text-primary);
286
+ font-weight: 600;
287
+ }
288
+
289
+ .markdown a {
290
+ color: var(--color-accent);
291
+ text-decoration: none;
292
+ border-bottom: 1px solid transparent;
293
+ transition: border-color var(--transition-fast);
294
+ }
295
+
296
+ .markdown a:hover {
297
+ border-bottom-color: var(--color-accent);
298
+ }
299
+
300
+ div[class^='codeBlockContainer'] {
301
+ border-radius: 12px;
302
+ overflow: hidden;
303
+ box-shadow: var(--card-shadow);
304
+ }
305
+
306
+ div[class^='codeBlockTitle'] {
307
+ background: var(--color-bg-tertiary) !important;
308
+ border-bottom: 1px solid var(--color-border);
309
+ color: var(--color-text-secondary);
310
+ font-family: var(--ifm-font-family-monospace);
311
+ font-size: 0.8rem;
312
+ font-weight: 500;
313
+ }
314
+
315
+ code {
316
+ background: var(--color-bg-tertiary);
317
+ border: 1px solid var(--color-secondary);
318
+ color: var(--color-text-primary);
319
+ font-weight: 500;
320
+ }
321
+
322
+ [data-theme='dark'] code {
323
+ border: 1px solid var(--color-border);
324
+ }
325
+
326
+ .markdown h1 code,
327
+ .markdown h2 code,
328
+ .markdown h3 code,
329
+ .markdown h4 code,
330
+ .markdown h5 code,
331
+ .markdown h6 code {
332
+ -webkit-text-fill-color: var(--color-text-primary);
333
+ color: var(--color-text-primary);
334
+ }
335
+
336
+ .alert {
337
+ border-radius: 12px;
338
+ border-left-width: 4px;
339
+ border-left-style: solid;
340
+ }
341
+
342
+ .alert--info {
343
+ --ifm-alert-background-color: var(--color-accent-subtle);
344
+ --ifm-alert-border-color: var(--color-accent);
345
+ border-color: rgba(150, 201, 235, 0.15);
346
+ border-left-color: var(--color-accent);
347
+ }
348
+
349
+ .alert--info .admonitionHeading_node_modules-\@docusaurus-theme-classic-lib-theme-Admonition-Layout-styles-module {
350
+ color: var(--color-accent);
351
+ }
352
+
353
+ .alert--tip,
354
+ .alert--success {
355
+ --ifm-alert-background-color: rgba(34, 197, 94, 0.12);
356
+ --ifm-alert-border-color: #22c55e;
357
+ border-color: rgba(34, 197, 94, 0.15);
358
+ border-left-color: #22c55e;
359
+ }
360
+
361
+ .alert--warning,
362
+ .alert--caution {
363
+ --ifm-alert-background-color: rgba(234, 179, 8, 0.12);
364
+ --ifm-alert-border-color: #eab308;
365
+ border-color: rgba(234, 179, 8, 0.15);
366
+ border-left-color: #eab308;
367
+ }
368
+
369
+ .alert--danger {
370
+ --ifm-alert-background-color: rgba(239, 68, 68, 0.12);
371
+ --ifm-alert-border-color: #ef4444;
372
+ border-color: rgba(239, 68, 68, 0.15);
373
+ border-left-color: #ef4444;
374
+ }
375
+
376
+ .alert--info svg {
377
+ fill: var(--color-accent);
378
+ }
379
+
380
+ .alert--tip svg,
381
+ .alert--success svg {
382
+ fill: #22c55e;
383
+ }
384
+
385
+ .alert--warning svg,
386
+ .alert--caution svg {
387
+ fill: #eab308;
388
+ }
389
+
390
+ .alert--danger svg {
391
+ fill: #ef4444;
392
+ }
393
+
394
+ .button {
395
+ font-family: var(--ifm-font-family-base);
396
+ font-weight: 600;
397
+ border-radius: 10px;
398
+ padding: 0.75rem 1.5rem;
399
+ transition: all var(--transition-normal);
400
+ text-transform: none;
401
+ letter-spacing: 0;
402
+ }
403
+
404
+ .button--primary {
405
+ background: var(--color-accent-bright);
406
+ color: var(--color-bg-primary);
407
+ border: none;
408
+ }
409
+
410
+ .button--primary:hover {
411
+ background: var(--color-accent-bright-dim);
412
+ color: var(--color-bg-primary);
413
+ transform: translateY(-2px);
414
+ box-shadow: 0 8px 30px rgba(150, 201, 235, 0.25);
415
+ }
416
+
417
+ .button--secondary {
418
+ background: var(--color-secondary);
419
+ color: var(--color-bg-primary);
420
+ border: none;
421
+ }
422
+
423
+ .button--secondary:hover {
424
+ background: var(--color-secondary-dim);
425
+ color: var(--color-bg-primary);
426
+ transform: translateY(-2px);
427
+ box-shadow: 0 8px 30px rgba(250, 216, 91, 0.25);
428
+ }
429
+
430
+ table {
431
+ border-collapse: separate;
432
+ border-spacing: 0;
433
+ border: 1px solid var(--color-border);
434
+ }
435
+
436
+ table th {
437
+ background: var(--color-bg-tertiary);
438
+ font-weight: 600;
439
+ color: var(--color-text-primary);
440
+ text-transform: uppercase;
441
+ font-size: 0.75rem;
442
+ letter-spacing: 0.05em;
443
+ }
444
+
445
+ table td {
446
+ border-color: var(--color-border);
447
+ }
448
+
449
+ table tr:nth-child(even) {
450
+ background: var(--color-bg-secondary);
451
+ }
452
+
453
+ .footer {
454
+ background: var(--color-bg-primary);
455
+ border-top: 1px solid var(--color-border);
456
+ padding: 2rem 0;
457
+ }
458
+
459
+ .footer__copyright {
460
+ color: var(--color-text-muted);
461
+ font-size: 0.9rem;
462
+ }
463
+
464
+ ::-webkit-scrollbar {
465
+ width: 6px;
466
+ height: 6px;
467
+ }
468
+
469
+ ::-webkit-scrollbar-track {
470
+ background: transparent;
471
+ }
472
+
473
+ ::-webkit-scrollbar-thumb {
474
+ background: var(--color-border-hover);
475
+ border-radius: 3px;
476
+ }
477
+
478
+ ::-webkit-scrollbar-thumb:hover {
479
+ background: var(--color-text-muted);
480
+ }
481
+
482
+ ::selection {
483
+ background: rgba(150, 201, 235, 0.3);
484
+ color: var(--color-text-primary);
485
+ }
486
+
487
+ .hidden {
488
+ display: none !important;
489
+ }
490
+
491
+ @keyframes fadeInUp {
492
+ from {
493
+ opacity: 0;
494
+ transform: translateY(20px);
495
+ }
496
+ to {
497
+ opacity: 1;
498
+ transform: translateY(0);
499
+ }
500
+ }
501
+
502
+ .theme-doc-markdown {
503
+ animation: fadeInUp 0.5s ease-out;
504
+ }
505
+
506
+ .theme-doc-version-badge {
507
+ background: var(--color-secondary-subtle);
508
+ color: var(--color-secondary);
509
+ border: 1px solid rgba(250, 216, 91, 0.2);
510
+ font-weight: 600;
511
+ font-size: 0.75rem;
512
+ }
513
+
514
+ .navbar__search-input {
515
+ background: var(--color-bg-tertiary);
516
+ border: 1px solid var(--color-border);
517
+ border-radius: 8px;
518
+ color: var(--color-text-primary);
519
+ font-family: var(--ifm-font-family-base);
520
+ }
521
+
522
+ .navbar__search-input::placeholder {
523
+ color: var(--color-text-muted);
524
+ }
525
+
526
+ .navbar__search-input:focus {
527
+ border-color: var(--color-accent);
528
+ box-shadow: 0 0 0 3px var(--color-accent-glow);
529
+ }
530
+
531
+ .pagination-nav__link {
532
+ border: 1px solid var(--color-border);
533
+ border-radius: 12px;
534
+ background: var(--color-bg-secondary);
535
+ transition: all var(--transition-normal);
536
+ }
537
+
538
+ .pagination-nav__link:hover {
539
+ border-color: var(--color-accent);
540
+ background: var(--color-accent-subtle);
541
+ }
542
+
543
+ .pagination-nav__sublabel {
544
+ color: var(--color-text-muted);
545
+ font-size: 0.75rem;
546
+ text-transform: uppercase;
547
+ letter-spacing: 0.05em;
548
+ }
549
+
550
+ .pagination-nav__label {
551
+ color: var(--color-text-primary);
552
+ font-weight: 600;
553
+ }
554
+
555
+ .breadcrumbs__link {
556
+ color: var(--color-text-muted);
557
+ transition: color var(--transition-fast);
558
+ }
559
+
560
+ .breadcrumbs__link:hover {
561
+ color: var(--color-accent);
562
+ }
563
+
564
+ .card {
565
+ background: var(--color-bg-secondary);
566
+ border: 1px solid var(--color-border);
567
+ border-radius: 16px;
568
+ transition: all var(--transition-normal);
569
+ }
570
+
571
+ .card:hover {
572
+ border-color: var(--color-accent);
573
+ transform: translateY(-4px);
574
+ box-shadow: var(--glow-shadow);
575
+ }
576
+
577
+ .tabs__item {
578
+ font-weight: 500;
579
+ border-radius: 8px 8px 0 0;
580
+ transition: all var(--transition-fast);
581
+ }
582
+
583
+ .tabs__item--active {
584
+ background: var(--color-bg-tertiary);
585
+ border-color: var(--color-border);
586
+ color: var(--color-accent);
587
+ }
588
+
589
+ @media (max-width: 996px) {
590
+ .navbar {
591
+ padding: 0.5rem;
592
+ }
593
+
594
+ .markdown h1 {
595
+ font-size: 2rem;
596
+ }
597
+
598
+ .markdown h2 {
599
+ font-size: 1.5rem;
600
+ }
601
+ }
602
+
603
+ @media (max-width: 450px) {
604
+ .navbar__title {
605
+ font-size: 0;
606
+ }
607
+
608
+ .navbar__title::after {
609
+ content: 'RNV';
610
+ font-size: 1.15rem;
611
+ font-weight: 700;
612
+ }
613
+ }
614
+
package/src/index.ts ADDED
@@ -0,0 +1,22 @@
1
+ import path from 'path';
2
+ import type { LoadContext, Plugin } from '@docusaurus/types';
3
+
4
+ export default function themeDocusaurusUI(context: LoadContext): Plugin {
5
+ return {
6
+ name: '@widlarzgroup/docusaurus-ui',
7
+
8
+ getThemePath() {
9
+ return '../lib/theme';
10
+ },
11
+
12
+ getTypeScriptThemePath() {
13
+ return '../src/theme';
14
+ },
15
+
16
+ getClientModules() {
17
+ return [path.resolve(__dirname, './css/custom.css')];
18
+ },
19
+ };
20
+ }
21
+
22
+ export * from './types/sidebar';
@@ -0,0 +1,51 @@
1
+ import React, {type ReactNode} from 'react';
2
+ import clsx from 'clsx';
3
+ import {ThemeClassNames} from '@docusaurus/theme-common';
4
+ import {useDoc} from '@docusaurus/plugin-content-docs/client';
5
+ import TagsListInline from '@theme/TagsListInline';
6
+
7
+ import EditMetaRow from '@theme/EditMetaRow';
8
+ import TWGBadge from '@/components/TWGBadge/TWGBadge';
9
+
10
+ export default function DocItemFooter(): ReactNode {
11
+ const {metadata} = useDoc();
12
+ const {editUrl, lastUpdatedAt, lastUpdatedBy, tags} = metadata;
13
+
14
+ const canDisplayTagsRow = tags.length > 0;
15
+ const canDisplayEditMetaRow = !!(editUrl || lastUpdatedAt || lastUpdatedBy);
16
+
17
+ const canDisplayFooter = canDisplayTagsRow || canDisplayEditMetaRow;
18
+
19
+ if (!canDisplayFooter) {
20
+ return null;
21
+ }
22
+
23
+ return (
24
+ <footer
25
+ className={clsx(ThemeClassNames.docs.docFooter, 'docusaurus-mt-lg')}>
26
+ {canDisplayTagsRow && (
27
+ <div
28
+ className={clsx(
29
+ 'row margin-top--sm',
30
+ ThemeClassNames.docs.docFooterTagsRow,
31
+ )}>
32
+ <div className="col">
33
+ <TagsListInline tags={tags} />
34
+ </div>
35
+ </div>
36
+ )}
37
+ {canDisplayEditMetaRow && (
38
+ <EditMetaRow
39
+ className={clsx(
40
+ 'margin-top--sm',
41
+ ThemeClassNames.docs.docFooterEditMetaRow,
42
+ )}
43
+ editUrl={editUrl}
44
+ lastUpdatedAt={lastUpdatedAt}
45
+ lastUpdatedBy={lastUpdatedBy}
46
+ />
47
+ )}
48
+ {/* <TWGBadge visibleOnLarge={false} /> */}
49
+ </footer>
50
+ );
51
+ }