boltdocs 1.3.0 → 1.3.2

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 (103) hide show
  1. package/dist/{cache-EHR7SXRU.mjs → cache-GQHF6BXI.mjs} +1 -1
  2. package/dist/{chunk-GSYECEZY.mjs → chunk-CYBWLFOG.mjs} +5 -1
  3. package/dist/node/index.js +36 -20
  4. package/dist/node/index.mjs +34 -22
  5. package/package.json +1 -1
  6. package/src/client/app/index.tsx +344 -344
  7. package/src/client/app/preload.tsx +56 -56
  8. package/src/client/index.ts +40 -40
  9. package/src/client/ssr.tsx +51 -51
  10. package/src/client/theme/components/CodeBlock/CodeBlock.tsx +76 -76
  11. package/src/client/theme/components/CodeBlock/index.ts +1 -1
  12. package/src/client/theme/components/PackageManagerTabs/PackageManagerTabs.tsx +154 -154
  13. package/src/client/theme/components/PackageManagerTabs/index.ts +1 -1
  14. package/src/client/theme/components/PackageManagerTabs/pkg-tabs.css +64 -64
  15. package/src/client/theme/components/Playground/Playground.tsx +124 -124
  16. package/src/client/theme/components/Playground/index.ts +1 -1
  17. package/src/client/theme/components/Playground/playground.css +168 -168
  18. package/src/client/theme/components/Video/Video.tsx +84 -84
  19. package/src/client/theme/components/Video/index.ts +1 -1
  20. package/src/client/theme/components/Video/video.css +41 -41
  21. package/src/client/theme/components/mdx/Admonition.tsx +80 -80
  22. package/src/client/theme/components/mdx/Badge.tsx +31 -31
  23. package/src/client/theme/components/mdx/Button.tsx +50 -50
  24. package/src/client/theme/components/mdx/Card.tsx +80 -80
  25. package/src/client/theme/components/mdx/List.tsx +57 -57
  26. package/src/client/theme/components/mdx/Tabs.tsx +94 -94
  27. package/src/client/theme/components/mdx/index.ts +18 -18
  28. package/src/client/theme/components/mdx/mdx-components.css +424 -424
  29. package/src/client/theme/icons/bun.tsx +62 -62
  30. package/src/client/theme/icons/deno.tsx +20 -20
  31. package/src/client/theme/icons/discord.tsx +12 -12
  32. package/src/client/theme/icons/github.tsx +15 -15
  33. package/src/client/theme/icons/npm.tsx +13 -13
  34. package/src/client/theme/icons/pnpm.tsx +72 -72
  35. package/src/client/theme/icons/twitter.tsx +12 -12
  36. package/src/client/theme/styles/markdown.css +343 -343
  37. package/src/client/theme/styles/variables.css +162 -162
  38. package/src/client/theme/styles.css +37 -37
  39. package/src/client/theme/ui/BackgroundGradient/BackgroundGradient.tsx +10 -10
  40. package/src/client/theme/ui/BackgroundGradient/index.ts +1 -1
  41. package/src/client/theme/ui/Breadcrumbs/Breadcrumbs.tsx +68 -68
  42. package/src/client/theme/ui/Breadcrumbs/index.ts +1 -1
  43. package/src/client/theme/ui/Footer/footer.css +32 -32
  44. package/src/client/theme/ui/Head/Head.tsx +69 -69
  45. package/src/client/theme/ui/Head/index.ts +1 -1
  46. package/src/client/theme/ui/LanguageSwitcher/LanguageSwitcher.tsx +125 -125
  47. package/src/client/theme/ui/LanguageSwitcher/index.ts +1 -1
  48. package/src/client/theme/ui/LanguageSwitcher/language-switcher.css +98 -98
  49. package/src/client/theme/ui/Layout/Layout.tsx +202 -202
  50. package/src/client/theme/ui/Layout/base.css +76 -76
  51. package/src/client/theme/ui/Layout/index.ts +2 -2
  52. package/src/client/theme/ui/Layout/pagination.css +72 -72
  53. package/src/client/theme/ui/Layout/responsive.css +36 -36
  54. package/src/client/theme/ui/Link/Link.tsx +254 -254
  55. package/src/client/theme/ui/Link/index.ts +2 -2
  56. package/src/client/theme/ui/Loading/Loading.tsx +10 -10
  57. package/src/client/theme/ui/Loading/index.ts +1 -1
  58. package/src/client/theme/ui/Loading/loading.css +30 -30
  59. package/src/client/theme/ui/Navbar/GithubStars.tsx +27 -27
  60. package/src/client/theme/ui/Navbar/Navbar.tsx +145 -145
  61. package/src/client/theme/ui/Navbar/index.ts +2 -2
  62. package/src/client/theme/ui/Navbar/navbar.css +233 -233
  63. package/src/client/theme/ui/NotFound/NotFound.tsx +19 -19
  64. package/src/client/theme/ui/NotFound/index.ts +1 -1
  65. package/src/client/theme/ui/NotFound/not-found.css +64 -64
  66. package/src/client/theme/ui/OnThisPage/OnThisPage.tsx +235 -235
  67. package/src/client/theme/ui/OnThisPage/index.ts +1 -1
  68. package/src/client/theme/ui/OnThisPage/toc.css +132 -132
  69. package/src/client/theme/ui/PoweredBy/PoweredBy.tsx +18 -18
  70. package/src/client/theme/ui/PoweredBy/index.ts +1 -1
  71. package/src/client/theme/ui/PoweredBy/powered-by.css +76 -76
  72. package/src/client/theme/ui/SearchDialog/SearchDialog.tsx +199 -199
  73. package/src/client/theme/ui/SearchDialog/index.ts +1 -1
  74. package/src/client/theme/ui/SearchDialog/search.css +152 -152
  75. package/src/client/theme/ui/Sidebar/Sidebar.tsx +204 -204
  76. package/src/client/theme/ui/Sidebar/index.ts +1 -1
  77. package/src/client/theme/ui/Sidebar/sidebar.css +236 -236
  78. package/src/client/theme/ui/ThemeToggle/ThemeToggle.tsx +69 -69
  79. package/src/client/theme/ui/ThemeToggle/index.ts +1 -1
  80. package/src/client/theme/ui/VersionSwitcher/VersionSwitcher.tsx +136 -136
  81. package/src/client/theme/ui/VersionSwitcher/index.ts +1 -1
  82. package/src/client/types.ts +50 -50
  83. package/src/client/utils.ts +26 -26
  84. package/src/node/cache.ts +408 -408
  85. package/src/node/config.ts +192 -192
  86. package/src/node/index.ts +21 -21
  87. package/src/node/mdx.ts +120 -120
  88. package/src/node/plugin/entry.ts +58 -58
  89. package/src/node/plugin/html.ts +55 -55
  90. package/src/node/plugin/index.ts +193 -193
  91. package/src/node/plugin/types.ts +11 -11
  92. package/src/node/routes/cache.ts +28 -28
  93. package/src/node/routes/index.ts +167 -167
  94. package/src/node/routes/parser.ts +153 -127
  95. package/src/node/routes/sorter.ts +42 -42
  96. package/src/node/routes/types.ts +49 -49
  97. package/src/node/ssg/index.ts +114 -114
  98. package/src/node/ssg/meta.ts +33 -34
  99. package/src/node/ssg/options.ts +13 -13
  100. package/src/node/ssg/sitemap.ts +55 -54
  101. package/src/node/utils.ts +145 -134
  102. package/tsconfig.json +20 -20
  103. package/tsup.config.ts +22 -22
@@ -1,162 +1,162 @@
1
- /* ═══════════════════════════════════════════════════════════
2
- Boltdocs — Dark Theme
3
- Font: Inter · Accent: #7f13ec
4
- ═══════════════════════════════════════════════════════════ */
5
-
6
- @import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap");
7
-
8
- :root[data-theme="light"],
9
- :root.theme-light {
10
- --ld-bg-main: #ffffff;
11
- --ld-bg-soft: #f9fafb;
12
- --ld-bg-mute: #f3f4f6;
13
-
14
- --ld-surface: #ffffff;
15
-
16
- --ld-border-subtle: #e5e7eb;
17
- --ld-border-strong: #d1d5db;
18
-
19
- --ld-text-main: #111827;
20
- --ld-text-muted: #4b5563;
21
- --ld-text-dim: #6b7280;
22
-
23
- --ld-color-primary: #7f13ec;
24
- --ld-color-primary-hover: #6d0fd0;
25
- --ld-color-primary-muted: rgba(127, 19, 236, 0.1);
26
- --ld-color-primary-glow: rgba(127, 19, 236, 0.25);
27
- --ld-color-primary-text: #ffffff;
28
-
29
- /* ─ Buttons ─ */
30
- --ld-btn-primary-bg: #7f13ec;
31
- --ld-btn-primary-text: #ffffff;
32
- --ld-btn-secondary-bg: #ffffff;
33
- --ld-btn-secondary-text: #111827;
34
-
35
- /* ─ Gradients ─ */
36
- --ld-gradient-from: var(--ld-color-primary);
37
- --ld-gradient-to: #a855f7;
38
-
39
- --ld-code-bg: #f3f4f6;
40
- --ld-code-header: #e5e7eb;
41
- --ld-code-text: #1f2937;
42
-
43
- /* ─ Customization ─ */
44
- --ld-navbar-bg: rgba(255, 255, 255, 0.82);
45
- --ld-navbar-blur: 12px;
46
- --ld-sidebar-bg: transparent;
47
- --ld-sidebar-blur: 0px;
48
- --ld-glow-1-bg: var(--ld-color-primary-glow);
49
- --ld-glow-2-bg: rgba(59, 130, 246, 0.15);
50
-
51
- /* ─ UI Components (overridable independently from layout) ─ */
52
- --ld-ui-btn-primary-bg: var(--ld-btn-primary-bg);
53
- --ld-ui-btn-primary-text: var(--ld-btn-primary-text);
54
- --ld-ui-btn-secondary-bg: var(--ld-btn-secondary-bg);
55
- --ld-ui-btn-secondary-text: var(--ld-btn-secondary-text);
56
-
57
- --ld-ui-success-bg: rgba(34, 197, 94, 0.1);
58
- --ld-ui-success-text: #16a34a;
59
- --ld-ui-success-border: rgba(34, 197, 94, 0.25);
60
- --ld-ui-warning-bg: rgba(245, 158, 11, 0.1);
61
- --ld-ui-warning-text: #d97706;
62
- --ld-ui-warning-border: rgba(245, 158, 11, 0.25);
63
- --ld-ui-danger-bg: rgba(239, 68, 68, 0.1);
64
- --ld-ui-danger-text: #dc2626;
65
- --ld-ui-danger-border: rgba(239, 68, 68, 0.25);
66
- --ld-ui-info-bg: rgba(59, 130, 246, 0.1);
67
- --ld-ui-info-text: #2563eb;
68
- --ld-ui-info-border: rgba(59, 130, 246, 0.25);
69
- --ld-ui-note-bg: rgba(59, 130, 246, 0.06);
70
- --ld-ui-note-text: #2563eb;
71
- --ld-ui-note-border: rgba(59, 130, 246, 0.3);
72
- --ld-ui-tip-bg: rgba(34, 197, 94, 0.06);
73
- --ld-ui-tip-text: #16a34a;
74
- --ld-ui-tip-border: rgba(34, 197, 94, 0.3);
75
- }
76
-
77
- :root {
78
- /* ─ Base palette ─ */
79
- --ld-bg-main: #0a0a0f;
80
- --ld-bg-soft: rgba(10, 10, 15, 0.2);
81
- --ld-bg-mute: #141420;
82
- --ld-surface: #1a1a2e;
83
- --ld-border-subtle: rgba(255, 255, 255, 0.06);
84
- --ld-border-strong: rgba(255, 255, 255, 0.12);
85
-
86
- /* ─ Text ─ */
87
- --ld-text-main: #e4e4ed;
88
- --ld-text-muted: #9d9db5;
89
- --ld-text-dim: #6b6b85;
90
-
91
- /* ─ Accent ─ */
92
- --ld-color-primary: #ffffff;
93
- --ld-color-primary-hover: #f3f3f3;
94
- --ld-color-primary-muted: rgba(255, 255, 255, 0.1);
95
- --ld-color-primary-glow: rgba(255, 255, 255, 0.25);
96
- --ld-color-primary-text: #0a0a0f;
97
- --ld-color-accent: #ffffff; /* White accent for TOC */
98
-
99
- /* ─ Buttons ─ */
100
- --ld-btn-primary-bg: #ffffff;
101
- --ld-btn-primary-text: #0a0a0f;
102
- --ld-btn-secondary-bg: #1a1a2e;
103
- --ld-btn-secondary-text: #e4e4ed;
104
-
105
- /* ─ Gradients ─ */
106
- --ld-gradient-from: #ffffff;
107
- --ld-gradient-to: rgba(255, 255, 255, 0.7);
108
-
109
- /* ─ Code ─ */
110
- --ld-code-bg: #0d0d14;
111
- --ld-code-header: #111119;
112
- --ld-code-text: #d4d4d4;
113
-
114
- /* ─ Customization ─ */
115
- --ld-navbar-bg: rgba(10, 10, 15, 0.2);
116
- --ld-navbar-blur: 12px;
117
- --ld-sidebar-bg: transparent;
118
- --ld-sidebar-blur: 0px;
119
- --ld-glow-1-bg: var(--ld-color-primary-glow);
120
- --ld-glow-2-bg: rgba(59, 130, 246, 0.15);
121
-
122
- /* ─ UI Components (dark) ─ */
123
- --ld-ui-btn-primary-bg: var(--ld-btn-primary-bg);
124
- --ld-ui-btn-primary-text: var(--ld-btn-primary-text);
125
- --ld-ui-btn-secondary-bg: var(--ld-btn-secondary-bg);
126
- --ld-ui-btn-secondary-text: var(--ld-btn-secondary-text);
127
-
128
- --ld-ui-success-bg: rgba(34, 197, 94, 0.1);
129
- --ld-ui-success-text: #22c55e;
130
- --ld-ui-success-border: rgba(34, 197, 94, 0.25);
131
- --ld-ui-warning-bg: rgba(245, 158, 11, 0.1);
132
- --ld-ui-warning-text: #f59e0b;
133
- --ld-ui-warning-border: rgba(245, 158, 11, 0.25);
134
- --ld-ui-danger-bg: rgba(239, 68, 68, 0.1);
135
- --ld-ui-danger-text: #ef4444;
136
- --ld-ui-danger-border: rgba(239, 68, 68, 0.25);
137
- --ld-ui-info-bg: rgba(59, 130, 246, 0.1);
138
- --ld-ui-info-text: #3b82f6;
139
- --ld-ui-info-border: rgba(59, 130, 246, 0.25);
140
- --ld-ui-note-bg: rgba(59, 130, 246, 0.06);
141
- --ld-ui-note-text: #3b82f6;
142
- --ld-ui-note-border: rgba(59, 130, 246, 0.3);
143
- --ld-ui-tip-bg: rgba(34, 197, 94, 0.06);
144
- --ld-ui-tip-text: #22c55e;
145
- --ld-ui-tip-border: rgba(34, 197, 94, 0.3);
146
-
147
- /* ─ Typography ─ */
148
- --ld-font-sans: "Inter", system-ui, -apple-system, sans-serif;
149
- --ld-font-mono:
150
- "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas,
151
- monospace;
152
-
153
- /* ─ Dimensions ─ */
154
- --ld-navbar-height: 3.5rem;
155
- --ld-sidebar-width: 14.5rem;
156
- --ld-toc-width: 13rem;
157
- --ld-content-max-width: 820px;
158
- --ld-radius-sm: 4px;
159
- --ld-radius-md: 8px;
160
- --ld-radius-lg: 12px;
161
- --ld-radius-full: 9999px;
162
- }
1
+ /* ═══════════════════════════════════════════════════════════
2
+ Boltdocs — Dark Theme
3
+ Font: Inter · Accent: #7f13ec
4
+ ═══════════════════════════════════════════════════════════ */
5
+
6
+ @import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap");
7
+
8
+ :root[data-theme="light"],
9
+ :root.theme-light {
10
+ --ld-bg-main: #ffffff;
11
+ --ld-bg-soft: #f9fafb;
12
+ --ld-bg-mute: #f3f4f6;
13
+
14
+ --ld-surface: #ffffff;
15
+
16
+ --ld-border-subtle: #e5e7eb;
17
+ --ld-border-strong: #d1d5db;
18
+
19
+ --ld-text-main: #111827;
20
+ --ld-text-muted: #4b5563;
21
+ --ld-text-dim: #6b7280;
22
+
23
+ --ld-color-primary: #7f13ec;
24
+ --ld-color-primary-hover: #6d0fd0;
25
+ --ld-color-primary-muted: rgba(127, 19, 236, 0.1);
26
+ --ld-color-primary-glow: rgba(127, 19, 236, 0.25);
27
+ --ld-color-primary-text: #ffffff;
28
+
29
+ /* ─ Buttons ─ */
30
+ --ld-btn-primary-bg: #7f13ec;
31
+ --ld-btn-primary-text: #ffffff;
32
+ --ld-btn-secondary-bg: #ffffff;
33
+ --ld-btn-secondary-text: #111827;
34
+
35
+ /* ─ Gradients ─ */
36
+ --ld-gradient-from: var(--ld-color-primary);
37
+ --ld-gradient-to: #a855f7;
38
+
39
+ --ld-code-bg: #f3f4f6;
40
+ --ld-code-header: #e5e7eb;
41
+ --ld-code-text: #1f2937;
42
+
43
+ /* ─ Customization ─ */
44
+ --ld-navbar-bg: rgba(255, 255, 255, 0.82);
45
+ --ld-navbar-blur: 12px;
46
+ --ld-sidebar-bg: transparent;
47
+ --ld-sidebar-blur: 0px;
48
+ --ld-glow-1-bg: var(--ld-color-primary-glow);
49
+ --ld-glow-2-bg: rgba(59, 130, 246, 0.15);
50
+
51
+ /* ─ UI Components (overridable independently from layout) ─ */
52
+ --ld-ui-btn-primary-bg: var(--ld-btn-primary-bg);
53
+ --ld-ui-btn-primary-text: var(--ld-btn-primary-text);
54
+ --ld-ui-btn-secondary-bg: var(--ld-btn-secondary-bg);
55
+ --ld-ui-btn-secondary-text: var(--ld-btn-secondary-text);
56
+
57
+ --ld-ui-success-bg: rgba(34, 197, 94, 0.1);
58
+ --ld-ui-success-text: #16a34a;
59
+ --ld-ui-success-border: rgba(34, 197, 94, 0.25);
60
+ --ld-ui-warning-bg: rgba(245, 158, 11, 0.1);
61
+ --ld-ui-warning-text: #d97706;
62
+ --ld-ui-warning-border: rgba(245, 158, 11, 0.25);
63
+ --ld-ui-danger-bg: rgba(239, 68, 68, 0.1);
64
+ --ld-ui-danger-text: #dc2626;
65
+ --ld-ui-danger-border: rgba(239, 68, 68, 0.25);
66
+ --ld-ui-info-bg: rgba(59, 130, 246, 0.1);
67
+ --ld-ui-info-text: #2563eb;
68
+ --ld-ui-info-border: rgba(59, 130, 246, 0.25);
69
+ --ld-ui-note-bg: rgba(59, 130, 246, 0.06);
70
+ --ld-ui-note-text: #2563eb;
71
+ --ld-ui-note-border: rgba(59, 130, 246, 0.3);
72
+ --ld-ui-tip-bg: rgba(34, 197, 94, 0.06);
73
+ --ld-ui-tip-text: #16a34a;
74
+ --ld-ui-tip-border: rgba(34, 197, 94, 0.3);
75
+ }
76
+
77
+ :root {
78
+ /* ─ Base palette ─ */
79
+ --ld-bg-main: #0a0a0f;
80
+ --ld-bg-soft: rgba(10, 10, 15, 0.2);
81
+ --ld-bg-mute: #141420;
82
+ --ld-surface: #1a1a2e;
83
+ --ld-border-subtle: rgba(255, 255, 255, 0.06);
84
+ --ld-border-strong: rgba(255, 255, 255, 0.12);
85
+
86
+ /* ─ Text ─ */
87
+ --ld-text-main: #e4e4ed;
88
+ --ld-text-muted: #9d9db5;
89
+ --ld-text-dim: #6b6b85;
90
+
91
+ /* ─ Accent ─ */
92
+ --ld-color-primary: #ffffff;
93
+ --ld-color-primary-hover: #f3f3f3;
94
+ --ld-color-primary-muted: rgba(255, 255, 255, 0.1);
95
+ --ld-color-primary-glow: rgba(255, 255, 255, 0.25);
96
+ --ld-color-primary-text: #0a0a0f;
97
+ --ld-color-accent: #ffffff; /* White accent for TOC */
98
+
99
+ /* ─ Buttons ─ */
100
+ --ld-btn-primary-bg: #ffffff;
101
+ --ld-btn-primary-text: #0a0a0f;
102
+ --ld-btn-secondary-bg: #1a1a2e;
103
+ --ld-btn-secondary-text: #e4e4ed;
104
+
105
+ /* ─ Gradients ─ */
106
+ --ld-gradient-from: #ffffff;
107
+ --ld-gradient-to: rgba(255, 255, 255, 0.7);
108
+
109
+ /* ─ Code ─ */
110
+ --ld-code-bg: #0d0d14;
111
+ --ld-code-header: #111119;
112
+ --ld-code-text: #d4d4d4;
113
+
114
+ /* ─ Customization ─ */
115
+ --ld-navbar-bg: rgba(10, 10, 15, 0.2);
116
+ --ld-navbar-blur: 12px;
117
+ --ld-sidebar-bg: transparent;
118
+ --ld-sidebar-blur: 0px;
119
+ --ld-glow-1-bg: var(--ld-color-primary-glow);
120
+ --ld-glow-2-bg: rgba(59, 130, 246, 0.15);
121
+
122
+ /* ─ UI Components (dark) ─ */
123
+ --ld-ui-btn-primary-bg: var(--ld-btn-primary-bg);
124
+ --ld-ui-btn-primary-text: var(--ld-btn-primary-text);
125
+ --ld-ui-btn-secondary-bg: var(--ld-btn-secondary-bg);
126
+ --ld-ui-btn-secondary-text: var(--ld-btn-secondary-text);
127
+
128
+ --ld-ui-success-bg: rgba(34, 197, 94, 0.1);
129
+ --ld-ui-success-text: #22c55e;
130
+ --ld-ui-success-border: rgba(34, 197, 94, 0.25);
131
+ --ld-ui-warning-bg: rgba(245, 158, 11, 0.1);
132
+ --ld-ui-warning-text: #f59e0b;
133
+ --ld-ui-warning-border: rgba(245, 158, 11, 0.25);
134
+ --ld-ui-danger-bg: rgba(239, 68, 68, 0.1);
135
+ --ld-ui-danger-text: #ef4444;
136
+ --ld-ui-danger-border: rgba(239, 68, 68, 0.25);
137
+ --ld-ui-info-bg: rgba(59, 130, 246, 0.1);
138
+ --ld-ui-info-text: #3b82f6;
139
+ --ld-ui-info-border: rgba(59, 130, 246, 0.25);
140
+ --ld-ui-note-bg: rgba(59, 130, 246, 0.06);
141
+ --ld-ui-note-text: #3b82f6;
142
+ --ld-ui-note-border: rgba(59, 130, 246, 0.3);
143
+ --ld-ui-tip-bg: rgba(34, 197, 94, 0.06);
144
+ --ld-ui-tip-text: #22c55e;
145
+ --ld-ui-tip-border: rgba(34, 197, 94, 0.3);
146
+
147
+ /* ─ Typography ─ */
148
+ --ld-font-sans: "Inter", system-ui, -apple-system, sans-serif;
149
+ --ld-font-mono:
150
+ "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas,
151
+ monospace;
152
+
153
+ /* ─ Dimensions ─ */
154
+ --ld-navbar-height: 3.5rem;
155
+ --ld-sidebar-width: 14.5rem;
156
+ --ld-toc-width: 13rem;
157
+ --ld-content-max-width: 820px;
158
+ --ld-radius-sm: 4px;
159
+ --ld-radius-md: 8px;
160
+ --ld-radius-lg: 12px;
161
+ --ld-radius-full: 9999px;
162
+ }
@@ -1,37 +1,37 @@
1
- /* ═══════════════════════════════════════════════════════════
2
- Boltdocs — Dark Theme
3
- Main Entry Point
4
- ═══════════════════════════════════════════════════════════ */
5
-
6
- @import "./styles/variables.css";
7
- @import "./ui/Layout/base.css";
8
-
9
- /* Core Layout Components */
10
- @import "./ui/Navbar/navbar.css";
11
- @import "./ui/Sidebar/sidebar.css";
12
- @import "./ui/OnThisPage/toc.css";
13
- @import "./ui/Footer/footer.css";
14
- @import "./ui/LanguageSwitcher/language-switcher.css";
15
- @import "./ui/PoweredBy/powered-by.css";
16
-
17
- /* Markdown Content */
18
- @import "./styles/markdown.css";
19
- @import "./components/Video/video.css";
20
-
21
- /* UI Components (MDX) */
22
- @import "./components/mdx/mdx-components.css";
23
- @import "./components/PackageManagerTabs/pkg-tabs.css";
24
-
25
- /* Interactive Elements */
26
- @import "./ui/SearchDialog/search.css";
27
- @import "./ui/Layout/pagination.css";
28
-
29
- /* Pages */
30
- @import "./ui/NotFound/not-found.css";
31
- @import "./ui/Loading/loading.css";
32
-
33
- /* Playground */
34
- @import "./components/Playground/playground.css";
35
-
36
- /* Media Queries */
37
- @import "./ui/Layout/responsive.css";
1
+ /* ═══════════════════════════════════════════════════════════
2
+ Boltdocs — Dark Theme
3
+ Main Entry Point
4
+ ═══════════════════════════════════════════════════════════ */
5
+
6
+ @import "./styles/variables.css";
7
+ @import "./ui/Layout/base.css";
8
+
9
+ /* Core Layout Components */
10
+ @import "./ui/Navbar/navbar.css";
11
+ @import "./ui/Sidebar/sidebar.css";
12
+ @import "./ui/OnThisPage/toc.css";
13
+ @import "./ui/Footer/footer.css";
14
+ @import "./ui/LanguageSwitcher/language-switcher.css";
15
+ @import "./ui/PoweredBy/powered-by.css";
16
+
17
+ /* Markdown Content */
18
+ @import "./styles/markdown.css";
19
+ @import "./components/Video/video.css";
20
+
21
+ /* UI Components (MDX) */
22
+ @import "./components/mdx/mdx-components.css";
23
+ @import "./components/PackageManagerTabs/pkg-tabs.css";
24
+
25
+ /* Interactive Elements */
26
+ @import "./ui/SearchDialog/search.css";
27
+ @import "./ui/Layout/pagination.css";
28
+
29
+ /* Pages */
30
+ @import "./ui/NotFound/not-found.css";
31
+ @import "./ui/Loading/loading.css";
32
+
33
+ /* Playground */
34
+ @import "./components/Playground/playground.css";
35
+
36
+ /* Media Queries */
37
+ @import "./ui/Layout/responsive.css";
@@ -1,10 +1,10 @@
1
- import React from "react";
2
-
3
- export function BackgroundGradient() {
4
- return (
5
- <div className="boltdocs-background-glow">
6
- <div className="glow-shape glow-1" />
7
- <div className="glow-shape glow-2" />
8
- </div>
9
- );
10
- }
1
+ import React from "react";
2
+
3
+ export function BackgroundGradient() {
4
+ return (
5
+ <div className="boltdocs-background-glow">
6
+ <div className="glow-shape glow-1" />
7
+ <div className="glow-shape glow-2" />
8
+ </div>
9
+ );
10
+ }
@@ -1 +1 @@
1
- export { BackgroundGradient } from "./BackgroundGradient";
1
+ export { BackgroundGradient } from "./BackgroundGradient";
@@ -1,68 +1,68 @@
1
- import React from "react";
2
- import { useLocation } from "react-router-dom";
3
- import { Link } from "../Link";
4
- import { Home, ChevronRight } from "lucide-react";
5
- import { ComponentRoute } from "../../../types";
6
- import { BoltdocsConfig } from "../../../../node/config";
7
-
8
- export interface BreadcrumbsProps {
9
- routes: ComponentRoute[];
10
- config: BoltdocsConfig;
11
- }
12
-
13
- export function Breadcrumbs({ routes, config }: BreadcrumbsProps) {
14
- const location = useLocation();
15
-
16
- if (config.themeConfig?.breadcrumbs === false) return null;
17
- if (location.pathname === "/") return null;
18
-
19
- const currentRoute = routes.find((r) => r.path === location.pathname);
20
-
21
- const groupRoute = currentRoute?.group
22
- ? routes.find((r) => r.group === currentRoute.group)
23
- : null;
24
-
25
- return (
26
- <nav className="boltdocs-breadcrumbs" aria-label="Breadcrumb">
27
- <ol className="boltdocs-breadcrumbs-list">
28
- <li className="boltdocs-breadcrumbs-item">
29
- <Link to="/" className="boltdocs-breadcrumbs-link">
30
- {/* Home Icon */}
31
- <Home size={14} />
32
- </Link>
33
- <span className="boltdocs-breadcrumbs-separator">
34
- <ChevronRight size={14} />
35
- </span>
36
- </li>
37
-
38
- {currentRoute?.groupTitle && (
39
- <li className="boltdocs-breadcrumbs-item">
40
- {groupRoute ? (
41
- <Link to={groupRoute.path} className="boltdocs-breadcrumbs-link">
42
- {currentRoute.groupTitle}
43
- </Link>
44
- ) : (
45
- <span className="boltdocs-breadcrumbs-text">
46
- {currentRoute.groupTitle}
47
- </span>
48
- )}
49
- <span className="boltdocs-breadcrumbs-separator">
50
- <ChevronRight size={14} />
51
- </span>
52
- </li>
53
- )}
54
-
55
- {currentRoute?.title && (
56
- <li className="boltdocs-breadcrumbs-item">
57
- <span
58
- className="boltdocs-breadcrumbs-text boltdocs-breadcrumbs-active"
59
- aria-current="page"
60
- >
61
- {currentRoute.title}
62
- </span>
63
- </li>
64
- )}
65
- </ol>
66
- </nav>
67
- );
68
- }
1
+ import React from "react";
2
+ import { useLocation } from "react-router-dom";
3
+ import { Link } from "../Link";
4
+ import { Home, ChevronRight } from "lucide-react";
5
+ import { ComponentRoute } from "../../../types";
6
+ import { BoltdocsConfig } from "../../../../node/config";
7
+
8
+ export interface BreadcrumbsProps {
9
+ routes: ComponentRoute[];
10
+ config: BoltdocsConfig;
11
+ }
12
+
13
+ export function Breadcrumbs({ routes, config }: BreadcrumbsProps) {
14
+ const location = useLocation();
15
+
16
+ if (config.themeConfig?.breadcrumbs === false) return null;
17
+ if (location.pathname === "/") return null;
18
+
19
+ const currentRoute = routes.find((r) => r.path === location.pathname);
20
+
21
+ const groupRoute = currentRoute?.group
22
+ ? routes.find((r) => r.group === currentRoute.group)
23
+ : null;
24
+
25
+ return (
26
+ <nav className="boltdocs-breadcrumbs" aria-label="Breadcrumb">
27
+ <ol className="boltdocs-breadcrumbs-list">
28
+ <li className="boltdocs-breadcrumbs-item">
29
+ <Link to="/" className="boltdocs-breadcrumbs-link">
30
+ {/* Home Icon */}
31
+ <Home size={14} />
32
+ </Link>
33
+ <span className="boltdocs-breadcrumbs-separator">
34
+ <ChevronRight size={14} />
35
+ </span>
36
+ </li>
37
+
38
+ {currentRoute?.groupTitle && (
39
+ <li className="boltdocs-breadcrumbs-item">
40
+ {groupRoute ? (
41
+ <Link to={groupRoute.path} className="boltdocs-breadcrumbs-link">
42
+ {currentRoute.groupTitle}
43
+ </Link>
44
+ ) : (
45
+ <span className="boltdocs-breadcrumbs-text">
46
+ {currentRoute.groupTitle}
47
+ </span>
48
+ )}
49
+ <span className="boltdocs-breadcrumbs-separator">
50
+ <ChevronRight size={14} />
51
+ </span>
52
+ </li>
53
+ )}
54
+
55
+ {currentRoute?.title && (
56
+ <li className="boltdocs-breadcrumbs-item">
57
+ <span
58
+ className="boltdocs-breadcrumbs-text boltdocs-breadcrumbs-active"
59
+ aria-current="page"
60
+ >
61
+ {currentRoute.title}
62
+ </span>
63
+ </li>
64
+ )}
65
+ </ol>
66
+ </nav>
67
+ );
68
+ }
@@ -1 +1 @@
1
- export { Breadcrumbs } from "./Breadcrumbs";
1
+ export { Breadcrumbs } from "./Breadcrumbs";
@@ -1,32 +1,32 @@
1
- /* ═══════════════════════════════════════════════════════════
2
- FOOTER
3
- ═══════════════════════════════════════════════════════════ */
4
- .boltdocs-footer {
5
- display: flex;
6
- align-items: center;
7
- justify-content: space-between;
8
- padding: 1.5rem 2rem;
9
- border-top: 1px solid var(--ld-border-subtle);
10
- background-color: var(--ld-bg-soft);
11
- font-size: 0.8rem;
12
- color: var(--ld-text-dim);
13
- }
14
-
15
- .footer-copy {
16
- margin: 0;
17
- }
18
-
19
- .footer-links {
20
- display: flex;
21
- gap: 1.25rem;
22
- }
23
-
24
- .footer-links a {
25
- color: var(--ld-text-dim);
26
- text-decoration: none;
27
- transition: color 0.2s;
28
- }
29
-
30
- .footer-links a:hover {
31
- color: var(--ld-text-muted);
32
- }
1
+ /* ═══════════════════════════════════════════════════════════
2
+ FOOTER
3
+ ═══════════════════════════════════════════════════════════ */
4
+ .boltdocs-footer {
5
+ display: flex;
6
+ align-items: center;
7
+ justify-content: space-between;
8
+ padding: 1.5rem 2rem;
9
+ border-top: 1px solid var(--ld-border-subtle);
10
+ background-color: var(--ld-bg-soft);
11
+ font-size: 0.8rem;
12
+ color: var(--ld-text-dim);
13
+ }
14
+
15
+ .footer-copy {
16
+ margin: 0;
17
+ }
18
+
19
+ .footer-links {
20
+ display: flex;
21
+ gap: 1.25rem;
22
+ }
23
+
24
+ .footer-links a {
25
+ color: var(--ld-text-dim);
26
+ text-decoration: none;
27
+ transition: color 0.2s;
28
+ }
29
+
30
+ .footer-links a:hover {
31
+ color: var(--ld-text-muted);
32
+ }