boltdocs 2.7.10 → 2.8.0

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 (193) hide show
  1. package/README.md +2 -2
  2. package/dist/banner-3N4Jd_L9.d.ts +100 -0
  3. package/dist/banner-MynZD_Ox.d.cts +100 -0
  4. package/dist/cache-BMUyNiiA.mjs +6 -0
  5. package/dist/cache-CKm45d2w.cjs +6 -0
  6. package/dist/client/index.cjs +2268 -1
  7. package/dist/client/index.d.cts +86 -110
  8. package/dist/client/index.d.ts +87 -111
  9. package/dist/client/index.js +2214 -1
  10. package/dist/client/mdx.cjs +12 -1
  11. package/dist/client/mdx.d.cts +39 -93
  12. package/dist/client/mdx.d.ts +38 -93
  13. package/dist/client/mdx.js +7 -1
  14. package/dist/client/primitives.cjs +60 -1
  15. package/dist/client/primitives.d.cts +411 -347
  16. package/dist/client/primitives.d.ts +411 -347
  17. package/dist/client/primitives.js +20 -1
  18. package/dist/docs-layout-CwCq42Zt.cjs +1348 -0
  19. package/dist/docs-layout-Dn6S5g59.js +1167 -0
  20. package/dist/doctor-BArviV8X.cjs +28 -0
  21. package/dist/doctor-CgLA7_Uv.mjs +28 -0
  22. package/dist/{doctor-CrytFkqW.cjs → doctor-DyNUVe96.cjs} +1 -1
  23. package/dist/{routes-DP1vmWRj.cjs → doctor-aN_leTbh.mjs} +1 -1
  24. package/dist/{generator-ClVanhvi.mjs → generator-BHCrLU6h.mjs} +2 -2
  25. package/dist/{generator-CHqxiQhF.cjs → generator-CC2yHzhZ.cjs} +2 -2
  26. package/dist/icons-dev-DvJ-hh9x.cjs +1209 -0
  27. package/dist/icons-dev-Oju24Wjp.js +845 -0
  28. package/dist/image-Ch4-GxdO.cjs +268 -0
  29. package/dist/image-Do8V9PCW.js +214 -0
  30. package/dist/mdx-D3A2_l7P.js +520 -0
  31. package/dist/mdx-PLhhPJRS.cjs +531 -0
  32. package/dist/node/cli-entry.cjs +3 -1
  33. package/dist/node/cli-entry.mjs +3 -1
  34. package/dist/node/index.cjs +1 -1
  35. package/dist/node/index.d.cts +258 -152
  36. package/dist/node/index.d.mts +258 -150
  37. package/dist/node/index.mjs +1 -1
  38. package/dist/node/routes/worker.cjs +1 -1
  39. package/dist/node/routes/worker.mjs +1 -1
  40. package/dist/node-BmlP0eBP.cjs +159 -0
  41. package/dist/node-Y8_4ayje.mjs +159 -0
  42. package/dist/package-2nFy_NsW.cjs +6 -0
  43. package/dist/{package--0Yf0t1N.mjs → package-DAbtltXX.mjs} +1 -1
  44. package/dist/parser-B7-6PyQz.cjs +6 -0
  45. package/dist/{parser-Aq8LoH-0.cjs → parser-BzB-zCkF.cjs} +1 -1
  46. package/dist/parser-WGZdWs0X.mjs +6 -0
  47. package/dist/routes-BDDSxAl0.mjs +6 -0
  48. package/dist/routes-DJNJ-rTt.cjs +6 -0
  49. package/dist/routes-DiYC4nD2.cjs +6 -0
  50. package/dist/routes-_Bb2f4eI.mjs +6 -0
  51. package/dist/search-dialog-BXVoecTx.cjs +483 -0
  52. package/dist/search-dialog-BYhOov4S.cjs +331 -0
  53. package/dist/search-dialog-C09riYmx.js +313 -0
  54. package/dist/search-dialog-CUeAfy-8.cjs +8 -0
  55. package/dist/search-dialog-D8gLkhUV.js +453 -0
  56. package/dist/search-dialog-DHc_8FFX.js +8 -0
  57. package/dist/{sidebar-CcBkrm06.d.cts → sidebar-DNq4_ZAa.d.ts} +118 -52
  58. package/dist/{sidebar-CyZS9YOm.d.ts → sidebar-Dlkgbxs6.d.cts} +118 -52
  59. package/dist/utils-BYITg7T5.mjs +7 -0
  60. package/dist/utils-Cjmx1hhk.cjs +7 -0
  61. package/dist/worker-pool-CtqklOXq.cjs +6 -0
  62. package/dist/worker-pool-k0DY6k8T.mjs +6 -0
  63. package/package.json +5 -6
  64. package/src/shared/config-utils.ts +4 -0
  65. package/src/shared/types.ts +52 -6
  66. package/dist/cache-Ba-DZQNH.cjs +0 -6
  67. package/dist/cache-BuMZ58L5.mjs +0 -6
  68. package/dist/cards-BakZPTz9.d.ts +0 -30
  69. package/dist/cards-CQn9mXZS.d.cts +0 -30
  70. package/dist/docs-layout-KoWNZc8_.js +0 -6
  71. package/dist/docs-layout-x2yKt2cL.cjs +0 -6
  72. package/dist/doctor-Be7Ly1oM.mjs +0 -21
  73. package/dist/doctor-jMxWZyLJ.cjs +0 -21
  74. package/dist/icons-dev-B_RZIyxu.js +0 -6
  75. package/dist/icons-dev-BlV3wWFT.cjs +0 -6
  76. package/dist/image-BHhTvQzr.cjs +0 -6
  77. package/dist/image-CqKzYD8f.js +0 -6
  78. package/dist/mdx-DudBEac0.js +0 -7
  79. package/dist/mdx-r4cDQxWu.cjs +0 -7
  80. package/dist/node-DtEDyN1u.cjs +0 -111
  81. package/dist/node-_1jhMGYx.mjs +0 -111
  82. package/dist/package-DrwtlXfk.cjs +0 -6
  83. package/dist/parser-CdNbqN5y.cjs +0 -6
  84. package/dist/parser-nE792MLO.mjs +0 -6
  85. package/dist/rolldown-runtime-fkIsjY3S.mjs +0 -6
  86. package/dist/routes-2k3tbUmC.cjs +0 -6
  87. package/dist/routes-CpxZIsMM.mjs +0 -6
  88. package/dist/search-dialog-B584t9ZF.js +0 -6
  89. package/dist/search-dialog-BvBopRsZ.cjs +0 -6
  90. package/dist/search-dialog-ByvGScjt.js +0 -6
  91. package/dist/search-dialog-Cyko6TJm.cjs +0 -6
  92. package/dist/search-dialog-D6BNohIJ.js +0 -6
  93. package/dist/search-dialog-DuYTIefy.cjs +0 -6
  94. package/dist/utils-CG65J0Sc.mjs +0 -7
  95. package/dist/utils-CKunkU96.cjs +0 -7
  96. package/dist/worker-pool-CGn7DrLb.mjs +0 -6
  97. package/dist/worker-pool-Crbqgw5R.cjs +0 -6
  98. package/src/client/app/config-context.tsx +0 -51
  99. package/src/client/app/doc-page.tsx +0 -38
  100. package/src/client/app/docs-layout.tsx +0 -28
  101. package/src/client/app/head.tsx +0 -122
  102. package/src/client/app/helmet-compat.tsx +0 -36
  103. package/src/client/app/mdx-component.tsx +0 -8
  104. package/src/client/app/mdx-components-context.tsx +0 -72
  105. package/src/client/app/routes-context.tsx +0 -34
  106. package/src/client/app/scroll-handler.tsx +0 -74
  107. package/src/client/app/theme-context.tsx +0 -103
  108. package/src/client/app/ui-context.tsx +0 -42
  109. package/src/client/components/docs-layout-default.tsx +0 -85
  110. package/src/client/components/icons-dev.tsx +0 -282
  111. package/src/client/components/mdx/callout.tsx +0 -97
  112. package/src/client/components/mdx/card.tsx +0 -99
  113. package/src/client/components/mdx/cards.tsx +0 -27
  114. package/src/client/components/mdx/code-block.tsx +0 -184
  115. package/src/client/components/mdx/field.tsx +0 -33
  116. package/src/client/components/mdx/image.tsx +0 -44
  117. package/src/client/components/mdx/index.ts +0 -19
  118. package/src/client/components/mdx/table.tsx +0 -54
  119. package/src/client/components/mdx/typographics.tsx +0 -120
  120. package/src/client/components/mdx/use-code-block.ts +0 -34
  121. package/src/client/components/primitives/breadcrumbs.tsx +0 -54
  122. package/src/client/components/primitives/button-group.tsx +0 -54
  123. package/src/client/components/primitives/button.tsx +0 -6
  124. package/src/client/components/primitives/code-block.tsx +0 -120
  125. package/src/client/components/primitives/docs-layout.tsx +0 -125
  126. package/src/client/components/primitives/error-boundary.tsx +0 -107
  127. package/src/client/components/primitives/heading.tsx +0 -128
  128. package/src/client/components/primitives/helpers/observer.ts +0 -141
  129. package/src/client/components/primitives/image.tsx +0 -26
  130. package/src/client/components/primitives/link.tsx +0 -102
  131. package/src/client/components/primitives/menu.tsx +0 -137
  132. package/src/client/components/primitives/navbar.tsx +0 -466
  133. package/src/client/components/primitives/on-this-page.tsx +0 -430
  134. package/src/client/components/primitives/page-nav.tsx +0 -51
  135. package/src/client/components/primitives/popover.tsx +0 -28
  136. package/src/client/components/primitives/search-dialog.tsx +0 -193
  137. package/src/client/components/primitives/sidebar.tsx +0 -423
  138. package/src/client/components/primitives/skeleton.tsx +0 -26
  139. package/src/client/components/primitives/tabs.tsx +0 -70
  140. package/src/client/components/primitives/tooltip.tsx +0 -81
  141. package/src/client/components/primitives/types.ts +0 -11
  142. package/src/client/components/ui-base/banner.tsx +0 -66
  143. package/src/client/components/ui-base/breadcrumbs.tsx +0 -44
  144. package/src/client/components/ui-base/copy-markdown.tsx +0 -107
  145. package/src/client/components/ui-base/error-boundary.tsx +0 -15
  146. package/src/client/components/ui-base/github-stars.tsx +0 -29
  147. package/src/client/components/ui-base/icons.tsx +0 -240
  148. package/src/client/components/ui-base/index.ts +0 -16
  149. package/src/client/components/ui-base/last-updated.tsx +0 -27
  150. package/src/client/components/ui-base/navbar.tsx +0 -266
  151. package/src/client/components/ui-base/not-found.tsx +0 -26
  152. package/src/client/components/ui-base/on-this-page.tsx +0 -57
  153. package/src/client/components/ui-base/page-nav.tsx +0 -50
  154. package/src/client/components/ui-base/search-dialog.tsx +0 -163
  155. package/src/client/components/ui-base/search-highlight.tsx +0 -10
  156. package/src/client/components/ui-base/sidebar.tsx +0 -92
  157. package/src/client/components/ui-base/tabs.tsx +0 -83
  158. package/src/client/components/ui-base/theme-toggle.tsx +0 -130
  159. package/src/client/components/ui-base/version-i18n.tsx +0 -80
  160. package/src/client/hooks/index.ts +0 -13
  161. package/src/client/hooks/use-analytics.ts +0 -272
  162. package/src/client/hooks/use-breadcrumbs.ts +0 -22
  163. package/src/client/hooks/use-i18n.ts +0 -182
  164. package/src/client/hooks/use-localized-to.ts +0 -113
  165. package/src/client/hooks/use-location.ts +0 -5
  166. package/src/client/hooks/use-navbar.ts +0 -130
  167. package/src/client/hooks/use-page-nav.ts +0 -46
  168. package/src/client/hooks/use-routes.ts +0 -108
  169. package/src/client/hooks/use-search-highlight.ts +0 -185
  170. package/src/client/hooks/use-search.ts +0 -118
  171. package/src/client/hooks/use-sidebar.ts +0 -205
  172. package/src/client/hooks/use-tabs.ts +0 -46
  173. package/src/client/hooks/use-version.ts +0 -111
  174. package/src/client/index.ts +0 -31
  175. package/src/client/mdx.ts +0 -2
  176. package/src/client/primitives.ts +0 -19
  177. package/src/client/ssg/boltdocs-shell.tsx +0 -148
  178. package/src/client/ssg/create-routes.tsx +0 -473
  179. package/src/client/ssg/index.ts +0 -4
  180. package/src/client/ssg/mdx-page.tsx +0 -38
  181. package/src/client/store/boltdocs-context.tsx +0 -137
  182. package/src/client/theme/neutral.css +0 -141
  183. package/src/client/theme/reset.css +0 -189
  184. package/src/client/types.ts +0 -116
  185. package/src/client/utils/cn.ts +0 -6
  186. package/src/client/utils/copy-clipboard.ts +0 -22
  187. package/src/client/utils/get-base-file-path.ts +0 -21
  188. package/src/client/utils/github.ts +0 -121
  189. package/src/client/utils/i18n.ts +0 -23
  190. package/src/client/utils/path.ts +0 -9
  191. package/src/client/utils/react-to-text.ts +0 -34
  192. package/src/client/virtual.d.ts +0 -24
  193. /package/dist/{meta-loader-CWg2gnbY.mjs → meta-loader-DzwDFtdT.mjs} +0 -0
@@ -0,0 +1,845 @@
1
+ /**
2
+ * Boltdocs - https://boltdocs.vercel.app
3
+ * Copyright (c) 2026 Jesus Alcala
4
+ * Licensed under the MIT License.
5
+ */
6
+ import { createContext, use, useEffect, useMemo, useState } from "react";
7
+ import { useLocation, useNavigate } from "react-router-dom";
8
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
9
+ import { clsx } from "clsx";
10
+ import { twMerge } from "tailwind-merge";
11
+
12
+ //#region \0rolldown/runtime.js
13
+ var __defProp = Object.defineProperty;
14
+ var __exportAll = (all, no_symbols) => {
15
+ let target = {};
16
+ for (var name in all) {
17
+ __defProp(target, name, {
18
+ get: all[name],
19
+ enumerable: true
20
+ });
21
+ }
22
+ if (!no_symbols) {
23
+ __defProp(target, Symbol.toStringTag, { value: "Module" });
24
+ }
25
+ return target;
26
+ };
27
+
28
+ //#endregion
29
+ //#region src/client/store/boltdocs-context.tsx
30
+ const PREFERENCES_KEY = "boltdocs-user-preferences";
31
+ const BOLTDOCS_CONTEXT_SYMBOL = Symbol.for("__BDOCS_BOLTDOCS_CONTEXT__");
32
+ const BOLTDOCS_INSTANCE_SYMBOL = Symbol.for("__BDOCS_BOLTDOCS_INSTANCE__");
33
+ const BoltdocsContext = globalThis[BOLTDOCS_CONTEXT_SYMBOL] || (globalThis[BOLTDOCS_CONTEXT_SYMBOL] = createContext(void 0));
34
+ function BoltdocsProvider({ children, initialLocale = "", initialVersion = "" }) {
35
+ const getSavedPrefs = () => {
36
+ if (typeof window === "undefined") return {};
37
+ try {
38
+ const raw = localStorage.getItem(PREFERENCES_KEY);
39
+ return raw ? JSON.parse(raw) : {};
40
+ } catch {
41
+ return {};
42
+ }
43
+ };
44
+ const [locale, setLocaleState] = useState(() => {
45
+ if (initialLocale) return initialLocale;
46
+ return getSavedPrefs().locale || "";
47
+ });
48
+ const [version, setVersionState] = useState(() => {
49
+ if (initialVersion) return initialVersion;
50
+ return getSavedPrefs().version || "";
51
+ });
52
+ const [hasHydrated, setHasHydrated] = useState(() => {
53
+ return typeof window !== "undefined";
54
+ });
55
+ useEffect(() => {
56
+ setHasHydrated(true);
57
+ }, []);
58
+ const value = useMemo(() => {
59
+ const updateLocale = (l) => {
60
+ const newL = l || "";
61
+ setLocaleState(newL);
62
+ if (typeof window !== "undefined") try {
63
+ const prefs = getSavedPrefs();
64
+ localStorage.setItem(PREFERENCES_KEY, JSON.stringify({
65
+ ...prefs,
66
+ locale: newL
67
+ }));
68
+ } catch (e) {}
69
+ };
70
+ const updateVersion = (v) => {
71
+ const newV = v || "";
72
+ setVersionState(newV);
73
+ if (typeof window !== "undefined") try {
74
+ const prefs = getSavedPrefs();
75
+ localStorage.setItem(PREFERENCES_KEY, JSON.stringify({
76
+ ...prefs,
77
+ version: newV
78
+ }));
79
+ } catch (e) {}
80
+ };
81
+ return {
82
+ currentLocale: locale,
83
+ currentVersion: version,
84
+ setLocale: updateLocale,
85
+ setVersion: updateVersion,
86
+ hasHydrated,
87
+ setHasHydrated
88
+ };
89
+ }, [
90
+ locale,
91
+ version,
92
+ hasHydrated
93
+ ]);
94
+ if (typeof globalThis !== "undefined") globalThis[BOLTDOCS_INSTANCE_SYMBOL] = value;
95
+ return /* @__PURE__ */ jsx(BoltdocsContext.Provider, {
96
+ value,
97
+ children
98
+ });
99
+ }
100
+ function useBoltdocsContext() {
101
+ const context = use(BoltdocsContext);
102
+ if (!context && typeof globalThis !== "undefined" && globalThis[BOLTDOCS_INSTANCE_SYMBOL]) return globalThis[BOLTDOCS_INSTANCE_SYMBOL];
103
+ if (!context) throw new Error("useBoltdocsContext must be used within a BoltdocsProvider");
104
+ return context;
105
+ }
106
+
107
+ //#endregion
108
+ //#region src/client/app/config-context.tsx
109
+ /**
110
+ * Context for the global documentation configuration.
111
+ * Using a global singleton pattern to survive dual-package or duplicated-code hazards.
112
+ */
113
+ const CONFIG_CONTEXT_SYMBOL = Symbol.for("__BDOCS_CONFIG_CONTEXT__");
114
+ const CONFIG_INSTANCE_SYMBOL = Symbol.for("__BDOCS_CONFIG_INSTANCE__");
115
+ const ConfigContext = globalThis[CONFIG_CONTEXT_SYMBOL] || (globalThis[CONFIG_CONTEXT_SYMBOL] = createContext(null));
116
+ /**
117
+ * Hook to access the Boltdocs configuration.
118
+ */
119
+ function useConfig() {
120
+ const context = use(ConfigContext);
121
+ if (!context && typeof globalThis !== "undefined" && globalThis[CONFIG_INSTANCE_SYMBOL]) return globalThis[CONFIG_INSTANCE_SYMBOL];
122
+ if (!context) throw new Error("useConfig must be used within a ConfigProvider");
123
+ return context;
124
+ }
125
+
126
+ //#endregion
127
+ //#region src/client/components/ui-base/icons.tsx
128
+ var icons_exports = /* @__PURE__ */ __exportAll({
129
+ AlertCircle: () => AlertCircle,
130
+ AlertTriangle: () => AlertTriangle,
131
+ ArrowLeft: () => ArrowLeft,
132
+ Check: () => Check,
133
+ ChevronDown: () => ChevronDown,
134
+ ChevronLeft: () => ChevronLeft,
135
+ ChevronRight: () => ChevronRight,
136
+ CircleHelp: () => CircleHelp,
137
+ Copy: () => Copy,
138
+ CornerDownLeft: () => CornerDownLeft,
139
+ ExternalLink: () => ExternalLink,
140
+ File: () => File,
141
+ FileText: () => FileText,
142
+ Hash: () => Hash,
143
+ Home: () => Home,
144
+ Info: () => Info,
145
+ Languages: () => Languages,
146
+ Lightbulb: () => Lightbulb,
147
+ Link: () => Link$2,
148
+ Menu: () => Menu,
149
+ Monitor: () => Monitor,
150
+ Moon: () => Moon,
151
+ MoreVertical: () => MoreVertical,
152
+ Pencil: () => Pencil,
153
+ Search: () => Search,
154
+ Sun: () => Sun,
155
+ TextAlignStart: () => TextAlignStart,
156
+ X: () => X
157
+ });
158
+ function createIcon(displayName, paths, viewBox = "0 0 24 24") {
159
+ const Component = ({ size = 24, className, ...props }) => {
160
+ return /* @__PURE__ */ jsxs("svg", {
161
+ xmlns: "http://www.w3.org/2000/svg",
162
+ width: size,
163
+ height: size,
164
+ viewBox,
165
+ fill: "none",
166
+ stroke: "currentColor",
167
+ strokeWidth: "2",
168
+ strokeLinecap: "round",
169
+ strokeLinejoin: "round",
170
+ className,
171
+ ...props,
172
+ children: [/* @__PURE__ */ jsx("title", { children: displayName }), paths]
173
+ });
174
+ };
175
+ Component.displayName = displayName;
176
+ return Component;
177
+ }
178
+ const Info = createIcon("Info", /* @__PURE__ */ jsxs(Fragment, { children: [
179
+ /* @__PURE__ */ jsx("circle", {
180
+ cx: "12",
181
+ cy: "12",
182
+ r: "10"
183
+ }),
184
+ /* @__PURE__ */ jsx("path", { d: "M12 16v-4" }),
185
+ /* @__PURE__ */ jsx("path", { d: "M12 8h.01" })
186
+ ] }));
187
+ const Lightbulb = createIcon("Lightbulb", /* @__PURE__ */ jsxs(Fragment, { children: [
188
+ /* @__PURE__ */ jsx("path", { d: "M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A5 5 0 0 0 8 8c0 1 .3 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5" }),
189
+ /* @__PURE__ */ jsx("path", { d: "M9 18h6" }),
190
+ /* @__PURE__ */ jsx("path", { d: "M10 22h4" })
191
+ ] }));
192
+ const AlertTriangle = createIcon("AlertTriangle", /* @__PURE__ */ jsxs(Fragment, { children: [
193
+ /* @__PURE__ */ jsx("path", { d: "m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3Z" }),
194
+ /* @__PURE__ */ jsx("line", {
195
+ x1: "12",
196
+ y1: "9",
197
+ x2: "12",
198
+ y2: "13"
199
+ }),
200
+ /* @__PURE__ */ jsx("line", {
201
+ x1: "12",
202
+ y1: "17",
203
+ x2: "12.01",
204
+ y2: "17"
205
+ })
206
+ ] }));
207
+ const AlertCircle = createIcon("AlertCircle", /* @__PURE__ */ jsxs(Fragment, { children: [
208
+ /* @__PURE__ */ jsx("circle", {
209
+ cx: "12",
210
+ cy: "12",
211
+ r: "10"
212
+ }),
213
+ /* @__PURE__ */ jsx("line", {
214
+ x1: "12",
215
+ y1: "8",
216
+ x2: "12",
217
+ y2: "12"
218
+ }),
219
+ /* @__PURE__ */ jsx("line", {
220
+ x1: "12",
221
+ y1: "16",
222
+ x2: "12.01",
223
+ y2: "16"
224
+ })
225
+ ] }));
226
+ const Copy = createIcon("Copy", /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("rect", {
227
+ width: "14",
228
+ height: "14",
229
+ x: "8",
230
+ y: "8",
231
+ rx: "2",
232
+ ry: "2"
233
+ }), /* @__PURE__ */ jsx("path", { d: "M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2" })] }));
234
+ const Check = createIcon("Check", /* @__PURE__ */ jsx("path", { d: "M20 6 9 17l-5-5" }));
235
+ const File = createIcon("File", /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("path", { d: "M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z" }), /* @__PURE__ */ jsx("path", { d: "M14 2v4a2 2 0 0 0 2 2h4" })] }));
236
+ const ArrowLeft = createIcon("ArrowLeft", /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("path", { d: "m12 19-7-7 7-7" }), /* @__PURE__ */ jsx("path", { d: "M19 12H5" })] }));
237
+ const Pencil = createIcon("Pencil", /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("path", { d: "M12 20h9" }), /* @__PURE__ */ jsx("path", { d: "M16.5 3.5a2.12 2.12 0 0 1 3 3L7 19l-4 1 1-4Z" })] }));
238
+ const CircleHelp = createIcon("CircleHelp", /* @__PURE__ */ jsxs(Fragment, { children: [
239
+ /* @__PURE__ */ jsx("circle", {
240
+ cx: "12",
241
+ cy: "12",
242
+ r: "10"
243
+ }),
244
+ /* @__PURE__ */ jsx("path", { d: "M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3" }),
245
+ /* @__PURE__ */ jsx("path", { d: "M12 17h.01" })
246
+ ] }));
247
+ const TextAlignStart = createIcon("TextAlignStart", /* @__PURE__ */ jsxs(Fragment, { children: [
248
+ /* @__PURE__ */ jsx("line", {
249
+ x1: "21",
250
+ x2: "3",
251
+ y1: "6",
252
+ y2: "6"
253
+ }),
254
+ /* @__PURE__ */ jsx("line", {
255
+ x1: "15",
256
+ x2: "3",
257
+ y1: "12",
258
+ y2: "12"
259
+ }),
260
+ /* @__PURE__ */ jsx("line", {
261
+ x1: "17",
262
+ x2: "3",
263
+ y1: "18",
264
+ y2: "18"
265
+ })
266
+ ] }));
267
+ const ExternalLink = createIcon("ExternalLink", /* @__PURE__ */ jsxs(Fragment, { children: [
268
+ /* @__PURE__ */ jsx("path", { d: "M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6" }),
269
+ /* @__PURE__ */ jsx("polyline", { points: "15 3 21 3 21 9" }),
270
+ /* @__PURE__ */ jsx("line", {
271
+ x1: "10",
272
+ y1: "14",
273
+ x2: "21",
274
+ y2: "3"
275
+ })
276
+ ] }));
277
+ const ChevronDown = createIcon("ChevronDown", /* @__PURE__ */ jsx("path", { d: "m6 9 6 6 6-6" }));
278
+ const Home = createIcon("Home", /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("path", { d: "m3 9 9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z" }), /* @__PURE__ */ jsx("polyline", { points: "9 22 9 12 15 12 15 22" })] }));
279
+ const Search = createIcon("Search", /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("circle", {
280
+ cx: "11",
281
+ cy: "11",
282
+ r: "8"
283
+ }), /* @__PURE__ */ jsx("path", { d: "m21 21-4.3-4.3" })] }));
284
+ const Sun = createIcon("Sun", /* @__PURE__ */ jsxs(Fragment, { children: [
285
+ /* @__PURE__ */ jsx("circle", {
286
+ cx: "12",
287
+ cy: "12",
288
+ r: "4"
289
+ }),
290
+ /* @__PURE__ */ jsx("path", { d: "M12 2v2" }),
291
+ /* @__PURE__ */ jsx("path", { d: "M12 20v2" }),
292
+ /* @__PURE__ */ jsx("path", { d: "m4.93 4.93 1.41 1.41" }),
293
+ /* @__PURE__ */ jsx("path", { d: "m17.66 17.66 1.41 1.41" }),
294
+ /* @__PURE__ */ jsx("path", { d: "M2 12h2" }),
295
+ /* @__PURE__ */ jsx("path", { d: "M20 12h2" }),
296
+ /* @__PURE__ */ jsx("path", { d: "m6.34 17.66-1.41 1.41" }),
297
+ /* @__PURE__ */ jsx("path", { d: "m19.07 4.93-1.41 1.41" })
298
+ ] }));
299
+ const Moon = createIcon("Moon", /* @__PURE__ */ jsx("path", { d: "M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z" }));
300
+ const Monitor = createIcon("Monitor", /* @__PURE__ */ jsxs(Fragment, { children: [
301
+ /* @__PURE__ */ jsx("rect", {
302
+ width: "20",
303
+ height: "14",
304
+ x: "2",
305
+ y: "3",
306
+ rx: "2"
307
+ }),
308
+ /* @__PURE__ */ jsx("line", {
309
+ x1: "8",
310
+ x2: "16",
311
+ y1: "21",
312
+ y2: "21"
313
+ }),
314
+ /* @__PURE__ */ jsx("line", {
315
+ x1: "12",
316
+ x2: "12",
317
+ y1: "17",
318
+ y2: "21"
319
+ })
320
+ ] }));
321
+ const Languages = createIcon("Languages", /* @__PURE__ */ jsxs(Fragment, { children: [
322
+ /* @__PURE__ */ jsx("path", { d: "m5 8 6 6" }),
323
+ /* @__PURE__ */ jsx("path", { d: "m4 14 6-6 2-3" }),
324
+ /* @__PURE__ */ jsx("path", { d: "M2 5h12" }),
325
+ /* @__PURE__ */ jsx("path", { d: "M7 2h1" }),
326
+ /* @__PURE__ */ jsx("path", { d: "m22 22-5-10-5 10" }),
327
+ /* @__PURE__ */ jsx("path", { d: "M14 18h6" })
328
+ ] }));
329
+ const Menu = createIcon("Menu", /* @__PURE__ */ jsxs(Fragment, { children: [
330
+ /* @__PURE__ */ jsx("line", {
331
+ x1: "4",
332
+ x2: "20",
333
+ y1: "12",
334
+ y2: "12"
335
+ }),
336
+ /* @__PURE__ */ jsx("line", {
337
+ x1: "4",
338
+ x2: "20",
339
+ y1: "6",
340
+ y2: "6"
341
+ }),
342
+ /* @__PURE__ */ jsx("line", {
343
+ x1: "4",
344
+ x2: "20",
345
+ y1: "18",
346
+ y2: "18"
347
+ })
348
+ ] }));
349
+ const X = createIcon("X", /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("path", { d: "M18 6 6 18" }), /* @__PURE__ */ jsx("path", { d: "m6 6 12 12" })] }));
350
+ const Link$2 = createIcon("Link", /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("path", { d: "M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71" }), /* @__PURE__ */ jsx("path", { d: "M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71" })] }));
351
+ const ChevronRight = createIcon("ChevronRight", /* @__PURE__ */ jsx("path", { d: "m9 18 6-6-6-6" }));
352
+ const MoreVertical = createIcon("MoreVertical", /* @__PURE__ */ jsxs(Fragment, { children: [
353
+ /* @__PURE__ */ jsx("circle", {
354
+ cx: "12",
355
+ cy: "12",
356
+ r: "1"
357
+ }),
358
+ /* @__PURE__ */ jsx("circle", {
359
+ cx: "12",
360
+ cy: "5",
361
+ r: "1"
362
+ }),
363
+ /* @__PURE__ */ jsx("circle", {
364
+ cx: "12",
365
+ cy: "19",
366
+ r: "1"
367
+ })
368
+ ] }));
369
+ const ChevronLeft = createIcon("ChevronLeft", /* @__PURE__ */ jsx("path", { d: "m15 18-6-6 6-6" }));
370
+ const Hash = createIcon("Hash", /* @__PURE__ */ jsxs(Fragment, { children: [
371
+ /* @__PURE__ */ jsx("line", {
372
+ x1: "4",
373
+ x2: "20",
374
+ y1: "9",
375
+ y2: "9"
376
+ }),
377
+ /* @__PURE__ */ jsx("line", {
378
+ x1: "4",
379
+ x2: "20",
380
+ y1: "15",
381
+ y2: "15"
382
+ }),
383
+ /* @__PURE__ */ jsx("line", {
384
+ x1: "10",
385
+ x2: "8",
386
+ y1: "3",
387
+ y2: "21"
388
+ }),
389
+ /* @__PURE__ */ jsx("line", {
390
+ x1: "16",
391
+ x2: "14",
392
+ y1: "3",
393
+ y2: "21"
394
+ })
395
+ ] }));
396
+ const FileText = createIcon("FileText", /* @__PURE__ */ jsxs(Fragment, { children: [
397
+ /* @__PURE__ */ jsx("path", { d: "M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z" }),
398
+ /* @__PURE__ */ jsx("path", { d: "M14 2v4a2 2 0 0 0 2 2h4" }),
399
+ /* @__PURE__ */ jsx("path", { d: "M10 9H8" }),
400
+ /* @__PURE__ */ jsx("path", { d: "M16 13H8" }),
401
+ /* @__PURE__ */ jsx("path", { d: "M16 17H8" })
402
+ ] }));
403
+ const CornerDownLeft = createIcon("CornerDownLeft", /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("polyline", { points: "9 10 4 15 9 20" }), /* @__PURE__ */ jsx("path", { d: "M20 4v7a4 4 0 0 1-4 4H4" })] }));
404
+
405
+ //#endregion
406
+ //#region src/client/app/routes-context.tsx
407
+ const RoutesContext = createContext({ routes: [] });
408
+ /**
409
+ * Hook to access the processed routes list from the closest provider.
410
+ */
411
+ function useRoutesContext() {
412
+ return use(RoutesContext);
413
+ }
414
+ /**
415
+ * Provider component for the documentation routes.
416
+ */
417
+ function RoutesProvider({ routes, children }) {
418
+ return /* @__PURE__ */ jsx(RoutesContext.Provider, {
419
+ value: { routes },
420
+ children
421
+ });
422
+ }
423
+
424
+ //#endregion
425
+ //#region src/client/utils/path.ts
426
+ /**
427
+ * Normalizes a URL path by stripping any trailing slash unless it's the root path.
428
+ *
429
+ * @param p - The path to normalize.
430
+ * @returns The normalized path.
431
+ */
432
+ function normalizePath(p) {
433
+ return p.endsWith("/") && p.length > 1 ? p.slice(0, -1) : p;
434
+ }
435
+
436
+ //#endregion
437
+ //#region src/client/hooks/use-routes.ts
438
+ /**
439
+ * Hook to access the framework's routing state.
440
+ * Returns both the complete set of routes and a filtered list based on the current
441
+ * version and locale.
442
+ */
443
+ function useRoutes() {
444
+ const { routes: allRoutes } = useRoutesContext();
445
+ const config = useConfig();
446
+ const location = useLocation();
447
+ const { hasHydrated, currentLocale: currentLocaleStore, currentVersion: currentVersionStore } = useBoltdocsContext();
448
+ const currentPath = normalizePath(location.pathname);
449
+ const currentRoute = allRoutes?.find?.((r) => normalizePath(r.path) === currentPath);
450
+ const currentLocale = config.i18n ? currentLocaleStore || config.i18n.defaultLocale : void 0;
451
+ const currentVersion = config.versions ? currentVersionStore || config.versions.defaultVersion : void 0;
452
+ const routes = useMemo(() => {
453
+ if (!allRoutes) return [];
454
+ const alternateCounts = /* @__PURE__ */ new Map();
455
+ const defaultLocale = config.i18n?.defaultLocale || "";
456
+ const defaultVersion = config.versions?.defaultVersion || "";
457
+ for (const r of allRoutes) {
458
+ const locale = r.locale || defaultLocale;
459
+ const version = r.version || defaultVersion;
460
+ const key = `${r.filePath}::${locale}::${version}`;
461
+ alternateCounts.set(key, (alternateCounts.get(key) || 0) + 1);
462
+ }
463
+ return allRoutes.filter((r) => {
464
+ const localeMatch = config.i18n ? (r.locale || config.i18n.defaultLocale) === currentLocale : true;
465
+ const versionMatch = config.versions ? (r.version || config.versions.defaultVersion) === currentVersion : true;
466
+ if (!(localeMatch && versionMatch)) return false;
467
+ const isCurrentLocalePrefixed = !!currentRoute?.locale;
468
+ const isCurrentVersionPrefixed = !!currentRoute?.version;
469
+ const isRouteLocalePrefixed = !!r.locale;
470
+ const isRouteVersionPrefixed = !!r.version;
471
+ const locale = r.locale || defaultLocale;
472
+ const version = r.version || defaultVersion;
473
+ const key = `${r.filePath}::${locale}::${version}`;
474
+ if ((alternateCounts.get(key) || 0) > 1) {
475
+ const localeMismatch = config.i18n && isCurrentLocalePrefixed !== isRouteLocalePrefixed;
476
+ const versionMismatch = config.versions && isCurrentVersionPrefixed !== isRouteVersionPrefixed;
477
+ if (localeMismatch || versionMismatch) return false;
478
+ }
479
+ return true;
480
+ });
481
+ }, [
482
+ allRoutes,
483
+ config,
484
+ currentLocale,
485
+ currentVersion,
486
+ currentRoute
487
+ ]);
488
+ const collections = useMemo(() => {
489
+ return new Set((allRoutes || []).map((r) => r.collection).filter(Boolean));
490
+ }, [allRoutes]);
491
+ const currentSegment = location.pathname.split("/").filter(Boolean)[0]?.toLowerCase();
492
+ return {
493
+ routes,
494
+ allRoutes,
495
+ currentRoute,
496
+ isCollectionPage: !!currentRoute?.collection || (currentSegment ? collections.has(currentSegment) : false),
497
+ currentLocale,
498
+ currentVersion
499
+ };
500
+ }
501
+
502
+ //#endregion
503
+ //#region src/client/hooks/use-localized-to.ts
504
+ function useLocalizedTo(to) {
505
+ const config = useConfig();
506
+ const { currentLocale: activeLocale, currentVersion: activeVersion, allRoutes } = useRoutes();
507
+ if (!config || typeof to !== "string") return to;
508
+ if (to.startsWith("http") || to.startsWith("//") || to.startsWith("#") || to.startsWith("site:")) return to.replace("site:", "");
509
+ const [pathOnly, hashAndQuery] = to.split(/([?#].*)/s);
510
+ const normalizedTo = pathOnly.endsWith("/") && pathOnly.length > 1 ? pathOnly.slice(0, -1) : pathOnly;
511
+ const isKnownRoute = allRoutes?.some((r) => {
512
+ return (r.path.endsWith("/") && r.path.length > 1 ? r.path.slice(0, -1) : r.path) === (normalizedTo || "/");
513
+ });
514
+ const i18n = config.i18n;
515
+ const versions = config.versions;
516
+ const base = (config.base || "/docs").replace(/\/$/, "");
517
+ const baseSegment = base.startsWith("/") ? base.substring(1) : base;
518
+ const rawParts = pathOnly.split("/").filter(Boolean);
519
+ const isDocsPath = baseSegment && rawParts.length > 0 && rawParts[0] === baseSegment || !isKnownRoute && rawParts.length > 0;
520
+ const parts = [...rawParts];
521
+ let pIdx = 0;
522
+ if (baseSegment && parts[pIdx] === baseSegment) pIdx++;
523
+ if (versions && parts.length > pIdx) {
524
+ if (versions.versions.find((v) => v.path === parts[pIdx])) pIdx++;
525
+ }
526
+ if (i18n && parts.length > pIdx && (Array.isArray(i18n.locales) ? i18n.locales.includes(parts[pIdx]) : parts[pIdx] in i18n.locales)) pIdx++;
527
+ const routeContent = parts.slice(pIdx);
528
+ const resultParts = [];
529
+ if (isDocsPath) {
530
+ if (baseSegment) resultParts.push(baseSegment);
531
+ if (versions && activeVersion) resultParts.push(activeVersion);
532
+ if (i18n && activeLocale) resultParts.push(activeLocale);
533
+ } else if (i18n && activeLocale) resultParts.push(activeLocale);
534
+ resultParts.push(...routeContent);
535
+ let finalPath = `/${resultParts.join("/")}`;
536
+ if (pathOnly.endsWith("/") && pathOnly.length > 1 && !finalPath.endsWith("/")) finalPath += "/";
537
+ return (finalPath || "/") + (hashAndQuery || "");
538
+ }
539
+
540
+ //#endregion
541
+ //#region src/client/utils/cn.ts
542
+ function cn(...inputs) {
543
+ return twMerge(clsx(inputs));
544
+ }
545
+
546
+ //#endregion
547
+ //#region src/client/components/primitives/link.tsx
548
+ /**
549
+ * A primitive Link component that wraps a standard anchor tag
550
+ * and adds framework-specific logic for path localization and preloading.
551
+ */
552
+ function Link$1(props) {
553
+ const { href, onMouseEnter, onFocus, onClick, ...rest } = props;
554
+ const navigate = useNavigate();
555
+ const localizedHref = useLocalizedTo(href ?? "");
556
+ const handleClick = (e) => {
557
+ onClick?.(e);
558
+ if (e.defaultPrevented) return;
559
+ if (!(localizedHref && (localizedHref.startsWith("http://") || localizedHref.startsWith("https://") || localizedHref.startsWith("//")))) {
560
+ e.preventDefault();
561
+ navigate(localizedHref);
562
+ }
563
+ };
564
+ const handleMouseEnter = (e) => {
565
+ onMouseEnter?.(e);
566
+ };
567
+ const handleFocus = (e) => {
568
+ onFocus?.(e);
569
+ };
570
+ return /* @__PURE__ */ jsx("a", {
571
+ ...rest,
572
+ href: localizedHref,
573
+ onClick: handleClick,
574
+ onMouseEnter: handleMouseEnter,
575
+ onFocus: handleFocus
576
+ });
577
+ }
578
+ /**
579
+ * A primitive NavLink component that provides active state detection.
580
+ */
581
+ function NavLink(props) {
582
+ const { href, end = false, className, children, ...rest } = props;
583
+ const location = useLocation();
584
+ const localizedHref = useLocalizedTo(href ?? "");
585
+ const isActive = end ? location.pathname === localizedHref : location.pathname.startsWith(localizedHref);
586
+ const resolvedClassName = typeof className === "function" ? className({ isActive }) : cn(className, isActive && "active");
587
+ const resolvedChildren = typeof children === "function" ? children({ isActive }) : children;
588
+ return /* @__PURE__ */ jsx(Link$1, {
589
+ ...rest,
590
+ href,
591
+ className: resolvedClassName,
592
+ children: resolvedChildren
593
+ });
594
+ }
595
+
596
+ //#endregion
597
+ //#region src/client/components/icons-dev.tsx
598
+ function wrapperProps(props) {
599
+ const { size = 20, ...rest } = props;
600
+ return {
601
+ ...rest,
602
+ width: size,
603
+ height: size
604
+ };
605
+ }
606
+ const Github = (props) => /* @__PURE__ */ jsxs("svg", {
607
+ xmlns: "http://www.w3.org/2000/svg",
608
+ viewBox: "0 0 24 24",
609
+ fill: "currentColor",
610
+ ...wrapperProps(props),
611
+ children: [/* @__PURE__ */ jsx("title", { children: "GitHub" }), /* @__PURE__ */ jsx("path", { d: "M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12" })]
612
+ });
613
+ const Csv = (props) => /* @__PURE__ */ jsxs("svg", {
614
+ xmlns: "http://www.w3.org/2000/svg",
615
+ fill: "none",
616
+ viewBox: "0 0 24 24",
617
+ ...wrapperProps(props),
618
+ children: [
619
+ /* @__PURE__ */ jsx("title", { children: "CSV" }),
620
+ /* @__PURE__ */ jsxs("mask", {
621
+ id: "a",
622
+ maskUnits: "userSpaceOnUse",
623
+ x: "3",
624
+ y: "3",
625
+ width: "18",
626
+ height: "18",
627
+ fill: "#000",
628
+ children: [/* @__PURE__ */ jsx("path", {
629
+ fill: "#fff",
630
+ d: "M3 3h18v18H3z"
631
+ }), /* @__PURE__ */ jsx("path", {
632
+ fillRule: "evenodd",
633
+ clipRule: "evenodd",
634
+ d: "M15.8889 5H8.11111C6.39289 5 5 6.39289 5 8.11111v7.77779C5 17.6071 6.39289 19 8.11111 19h7.77779C17.6071 19 19 17.6071 19 15.8889V8.11111C19 6.39289 17.6071 5 15.8889 5Zm0 12.4444H8.1111c-.05369 0-.10674-.0027-.15904-.008.0523.0053.10536.008.15905.008h7.77779Zm1.5555-1.5555c0 .8054-.6121 1.4679-1.3965 1.5475.7844-.0797 1.3965-.7421 1.3965-1.5475V8.11111v7.77779Z"
635
+ })]
636
+ }),
637
+ /* @__PURE__ */ jsx("path", {
638
+ d: "M15.8889 19.4444c1.1046 0 2-.8954 2-2 0-1.1045-.8954-2-2-2v4Zm-7.7778-2 .00001-2H8.1111v2Zm-.15904-.008.20206-1.9898c-1.09891-.1115-2.08022.6888-2.19182 1.7877-.1116 1.099.68877 2.0803 1.78768 2.1919l.20208-1.9898Zm8.09584 0-.2021-1.9897c-1.0989.1116-1.8992 1.0929-1.7876 2.1918.1116 1.0989 1.0929 1.8993 2.1918 1.7877l-.2021-1.9898Zm3.3965-9.32529c0-1.10457-.8954-2-2-2-1.1045 0-2 .89543-2 2h4ZM8.11111 7h7.77779V3H8.11111v4ZM7 8.11111C7 7.49746 7.49746 7 8.11111 7V3C5.28832 3 3 5.28832 3 8.11111h4Zm0 7.77779V8.11111H3v7.77779h4ZM8.11111 17C7.49746 17 7 16.5025 7 15.8889H3C3 18.7117 5.28832 21 8.11111 21v-4Zm7.77779 0H8.11111v4h7.77779v-4ZM17 15.8889C17 16.5025 16.5025 17 15.8889 17v4C18.7117 21 21 18.7117 21 15.8889h-4Zm0-7.77779v7.77779h4V8.11111h-4ZM15.8889 7C16.5025 7 17 7.49746 17 8.11111h4C21 5.28832 18.7117 3 15.8889 3v4Zm0 8.4444H8.11111l-.00001 4h7.7778v-4Zm-7.7778 0c.01378 0 .02816.0007.04302.0022l-.40411 3.9796c.11944.0121.23994.0182.36109.0182v-4Zm-.36112 3.9818c.11935.0121.23985.0182.36113.0182v-4c.01389 0 .02828.0008.04304.0022l-.40417 3.9796Zm.36113.0182h7.77779v-4H8.11111v4Zm8.13889-.0182c1.7951-.1823 3.1944-1.6951 3.1944-3.5373h-4c0-.2314.1752-.4193.4015-.4423l.4041 3.9796Zm-.8056-3.5373c0-.2314.1752-.4193.4014-.4422l.4042 3.9795c1.795-.1823 3.1944-1.6951 3.1944-3.5373h-4Zm0-7.77779v7.77779h4V8.11111h-4Zm4 0c0-.07155-.0038-.14596-.0124-.22267-.0086-.07678-.0218-.15478-.0403-.23343-.0184-.07869-.0416-.15651-.0697-.233-.0281-.07648-.0604-.15005-.0963-.22045-.036-.07036-.0749-.13629-.1158-.1978-.0408-.06145-.0832-.11775-.1258-.16912-.085-.10251-.1704-.18478-.2468-.2495-.0383-.03245-.0749-.061-.1089-.08594-.034-.02494-.0659-.04672-.0949-.06556-.029-.01883-.0558-.03518-.0797-.04914-.0239-.01396-.0456-.02598-.0644-.03606-.0188-.01008-.0355-.01864-.0493-.02558-.0139-.00694-.0257-.01268-.0348-.01701-.009-.00429-.0163-.00769-.0207-.00971-.0022-.00104-.004-.00187-.0051-.00238-.0006-.00025-.001-.00046-.0013-.00059-.0002-.00006-.0003-.00011-.0003-.00014-.0001-.00001-.0001-.00003-.0001-.00004v-.00001c-.0006-.00027.0028.00131.0068.00316.0044.00202.0117.00541.0207.00971.0091.00433.0209.01007.0348.01701.0138.00694.0305.0155.0493.02558.0188.01008.0405.0221.0644.03606.0239.01396.0507.03031.0797.04914.029.01883.0609.04062.0949.06556.0339.02494.0706.05349.1089.08594.0764.06472.1618.14698.2468.24949.0426.05138.085.10768.1258.16913.0409.06151.0798.12744.1157.19779.036.07041.0683.14397.0964.22046.028.07648.0513.15431.0697.23299.0185.07865.0317.15665.0403.23344.0086.07671.0124.15112.0124.22267h-4c0 .07154.0039.14595.0125.22267.0086.07678.0218.15478.0402.23343.0185.07868.0417.15651.0698.233.0281.07648.0604.15005.0963.22045.036.07036.0749.13629.1158.1978.0408.06144.0832.11775.1258.16912.0849.10251.1704.18478.2468.2495.0383.03244.0749.061.1089.08594.0339.02493.0658.04672.0949.06556.029.01883.0558.03517.0797.04914.0239.01396.0456.02598.0644.03606.0188.01007.0354.01864.0493.02558.0139.00693.0257.01268.0348.01701.009.00429.0163.00769.0207.00971.0022.00104.004.00187.0051.00237.0006.00026.001.00047.0013.00059.0001.00007.0003.00012.0003.00015.0001.00001.0001.00003.0001.00004v.00001c.0006.00026-.0028-.00131-.0068-.00316-.0044-.00202-.0117-.00542-.0207-.00971-.0091-.00433-.0209-.01008-.0348-.01701-.0139-.00694-.0305-.01551-.0493-.02558-.0188-.01008-.0405-.0221-.0644-.03606-.0239-.01396-.0507-.03031-.0797-.04914-.029-.01884-.061-.04062-.0949-.06556-.034-.02494-.0706-.0535-.1089-.08594-.0764-.06472-.1619-.14699-.2468-.2495-.0426-.05137-.085-.10767-.1258-.16912-.0409-.06151-.0798-.12744-.1158-.1978-.0359-.0704-.0682-.14397-.0963-.22045-.0281-.07649-.0513-.15431-.0698-.233-.0184-.07865-.0316-.15665-.0402-.23343-.0086-.07671-.0125-.15112-.0125-.22267h4Zm0 7.77779V8.11111h-4v7.77779h4Z",
639
+ fill: "#14B8A6",
640
+ mask: "url(#a)"
641
+ }),
642
+ /* @__PURE__ */ jsx("rect", {
643
+ x: "7",
644
+ y: "7",
645
+ width: "4",
646
+ height: "2",
647
+ rx: "1",
648
+ fill: "#14B8A6"
649
+ }),
650
+ /* @__PURE__ */ jsx("rect", {
651
+ x: "7",
652
+ y: "11",
653
+ width: "4",
654
+ height: "2",
655
+ rx: "1",
656
+ fill: "#14B8A6"
657
+ }),
658
+ /* @__PURE__ */ jsx("rect", {
659
+ x: "7",
660
+ y: "15",
661
+ width: "4",
662
+ height: "2",
663
+ rx: "1",
664
+ fill: "#14B8A6"
665
+ }),
666
+ /* @__PURE__ */ jsx("rect", {
667
+ x: "13",
668
+ y: "7",
669
+ width: "4",
670
+ height: "2",
671
+ rx: "1",
672
+ fill: "#14B8A6"
673
+ }),
674
+ /* @__PURE__ */ jsx("rect", {
675
+ x: "13",
676
+ y: "11",
677
+ width: "4",
678
+ height: "2",
679
+ rx: "1",
680
+ fill: "#14B8A6"
681
+ }),
682
+ /* @__PURE__ */ jsx("rect", {
683
+ x: "13",
684
+ y: "15",
685
+ width: "4",
686
+ height: "2",
687
+ rx: "1",
688
+ fill: "#14B8A6"
689
+ })
690
+ ]
691
+ });
692
+ const Discord = (props) => /* @__PURE__ */ jsxs("svg", {
693
+ xmlns: "http://www.w3.org/2000/svg",
694
+ viewBox: "0 0 24 24",
695
+ fill: "currentColor",
696
+ ...wrapperProps(props),
697
+ children: [/* @__PURE__ */ jsx("title", { children: "Discord" }), /* @__PURE__ */ jsx("path", { d: "M20.317 4.37a19.791 19.791 0 0 0-4.885-1.515.074.074 0 0 0-.079.037c-.21.375-.444.864-.608 1.25a18.27 18.27 0 0 0-5.487 0 12.64 12.64 0 0 0-.617-1.25.077.077 0 0 0-.079-.037A19.736 19.736 0 0 0 3.677 4.37a.07.07 0 0 0-.032.027C.533 9.046-.32 13.58.099 18.057a.082.082 0 0 0 .031.057 19.9 19.9 0 0 0 5.993 3.03.078.078 0 0 0 .084-.028c.462-.63.874-1.295 1.226-1.994a.076.076 0 0 0-.041-.106 13.107 13.107 0 0 1-1.872-.892.077.077 0 0 1-.008-.128 10.2 10.2 0 0 0 .372-.292.074.074 0 0 1 .077-.01c3.928 1.793 8.18 1.793 12.062 0a.074.074 0 0 1 .078.01c.12.098.246.198.373.292a.077.077 0 0 1-.006.127 12.299 12.299 0 0 1-1.873.892.077.077 0 0 0-.041.107c.36.698.772 1.362 1.225 1.993a.076.076 0 0 0 .084.028 19.839 19.839 0 0 0 6.002-3.03.077.077 0 0 0 .032-.054c.5-5.177-.838-9.674-3.549-13.66a.061.061 0 0 0-.031-.03zM8.02 15.33c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.956-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.956 2.418-2.157 2.418zm7.975 0c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.955-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.946 2.418-2.157 2.418Z" })]
698
+ });
699
+ const XSocial = (props) => /* @__PURE__ */ jsxs("svg", {
700
+ xmlns: "http://www.w3.org/2000/svg",
701
+ viewBox: "0 0 24 24",
702
+ fill: "currentColor",
703
+ ...wrapperProps(props),
704
+ children: [/* @__PURE__ */ jsx("title", { children: "X" }), /* @__PURE__ */ jsx("path", { d: "M14.234 10.162 22.977 0h-2.072l-7.591 8.824L7.251 0H.258l9.168 13.343L.258 24H2.33l8.016-9.318L16.749 24h6.993zm-2.837 3.299-.929-1.329L3.076 1.56h3.182l5.965 8.532.929 1.329 7.754 11.09h-3.182z" })]
705
+ });
706
+ const Bluesky = (props) => /* @__PURE__ */ jsxs("svg", {
707
+ xmlns: "http://www.w3.org/2000/svg",
708
+ viewBox: "0 0 24 24",
709
+ fill: "currentColor",
710
+ ...wrapperProps(props),
711
+ children: [/* @__PURE__ */ jsx("title", { children: "Bluesky" }), /* @__PURE__ */ jsx("path", { d: "M5.202 2.857C7.954 4.922 10.913 9.11 12 11.358c1.087-2.247 4.046-6.436 6.798-8.501C20.783 1.366 24 .213 24 3.883c0 .732-.42 6.156-.667 7.037-.856 3.061-3.978 3.842-6.755 3.37 4.854.826 6.089 3.562 3.422 6.299-5.065 5.196-7.28-1.304-7.847-2.97-.104-.305-.152-.448-.153-.327 0-.121-.05.022-.153.327-.568 1.666-2.782 8.166-7.847 2.97-2.667-2.737-1.432-5.473 3.422-6.3-2.777.473-5.899-.308-6.755-3.369C.42 10.04 0 4.615 0 3.883c0-3.67 3.217-2.517 5.202-1.026" })]
712
+ });
713
+ const TypeScript = (props) => /* @__PURE__ */ jsxs("svg", {
714
+ xmlns: "http://www.w3.org/2000/svg",
715
+ fill: "none",
716
+ viewBox: "0 0 24 24",
717
+ ...wrapperProps(props),
718
+ children: [/* @__PURE__ */ jsx("title", { children: "TypeScript" }), /* @__PURE__ */ jsx("path", {
719
+ fill: "#2563EB",
720
+ d: "M3.234 9.093V7.318h8.363v1.775H8.479V17.5H6.352V9.093H3.234zm15.263 1.153c-.04-.4-.21-.712-.512-.934-.301-.222-.71-.333-1.228-.333-.351 0-.648.05-.89.149-.242.096-.427.23-.557.403a.969.969 0 0 0-.189.586.838.838 0 0 0 .115.477c.086.136.204.254.353.353.149.097.321.181.517.254.195.07.404.13.626.179l.915.219c.444.1.852.232 1.223.397.371.166.693.37.965.612.271.242.482.527.631.855.152.328.23.704.234 1.129-.004.623-.163 1.163-.478 1.62-.311.454-.762.807-1.352 1.06-.587.248-1.294.372-2.123.372-.822 0-1.538-.126-2.147-.378-.607-.252-1.081-.624-1.422-1.118-.338-.497-.516-1.112-.532-1.845h2.083c.023.342.12.627.293.855.176.226.41.397.701.513a2.8 2.8 0 0 0 1 .168c.364 0 .68-.053.949-.159a1.45 1.45 0 0 0 .631-.442c.15-.189.224-.406.224-.651a.846.846 0 0 0-.204-.577c-.132-.156-.328-.288-.586-.398a5.964 5.964 0 0 0-.94-.298l-1.109-.278c-.858-.21-1.536-.536-2.033-.98-.497-.444-.744-1.042-.74-1.795-.004-.616.16-1.155.491-1.615.335-.461.794-.82 1.377-1.08.584-.258 1.247-.387 1.99-.387.755 0 1.414.13 1.978.388.567.258 1.007.618 1.322 1.079.315.46.477.994.488 1.6h-2.064z"
721
+ })]
722
+ });
723
+ const JavaScript = (props) => /* @__PURE__ */ jsxs("svg", {
724
+ xmlns: "http://www.w3.org/2000/svg",
725
+ fill: "none",
726
+ viewBox: "0 0 24 24",
727
+ ...wrapperProps(props),
728
+ children: [/* @__PURE__ */ jsx("title", { children: "JavaScript" }), /* @__PURE__ */ jsx("path", {
729
+ fill: "#F59E0B",
730
+ d: "M8.383 7.318h2.127v7.1c0 .656-.147 1.226-.442 1.71a2.924 2.924 0 01-1.218 1.118c-.52.262-1.125.393-1.815.393-.613 0-1.17-.107-1.67-.323a2.67 2.67 0 01-1.183-.994c-.292-.448-.436-1.01-.433-1.686h2.143c.006.269.061.5.164.691.106.19.25.335.432.438.186.1.405.15.657.15.265 0 .488-.057.67-.17.186-.116.327-.285.423-.507.096-.222.145-.496.145-.82v-7.1zm9.43 2.928c-.04-.4-.21-.712-.511-.934-.302-.222-.711-.333-1.228-.333-.352 0-.648.05-.89.149-.242.096-.428.23-.557.403a.969.969 0 00-.19.586.838.838 0 00.115.477c.087.136.204.254.353.353.15.097.322.181.517.254.196.07.405.13.627.179l.915.219c.444.1.851.232 1.223.397.37.166.692.37.964.612s.482.527.631.855a2.7 2.7 0 01.234 1.129c-.003.623-.162 1.163-.477 1.62-.312.454-.763.807-1.353 1.06-.586.248-1.294.372-2.122.372-.822 0-1.538-.126-2.148-.378-.607-.252-1.08-.624-1.422-1.118-.338-.497-.515-1.112-.532-1.845h2.083c.023.342.121.627.293.855.176.226.41.397.702.513.295.112.628.168.999.168.364 0 .68-.053.95-.159.271-.106.482-.253.63-.442.15-.189.224-.406.224-.651a.846.846 0 00-.203-.577c-.133-.156-.329-.288-.587-.398a5.964 5.964 0 00-.94-.298l-1.108-.278c-.859-.21-1.537-.536-2.034-.98-.497-.444-.744-1.042-.74-1.795-.004-.616.16-1.155.492-1.615.334-.461.793-.82 1.377-1.08.583-.258 1.246-.387 1.989-.387.755 0 1.415.13 1.978.388.567.258 1.008.618 1.323 1.079.314.46.477.994.487 1.6h-2.063z"
731
+ })]
732
+ });
733
+ const Json = (props) => /* @__PURE__ */ jsxs("svg", {
734
+ xmlns: "http://www.w3.org/2000/svg",
735
+ fill: "none",
736
+ viewBox: "0 0 24 24",
737
+ ...wrapperProps(props),
738
+ children: [/* @__PURE__ */ jsx("title", { children: "JSON" }), /* @__PURE__ */ jsx("path", {
739
+ fill: "#F59E0B",
740
+ d: "M4.778 6.667A2.667 2.667 0 017.444 4a.889.889 0 010 1.778.889.889 0 00-.888.889v3.5c0 .701-.273 1.35-.73 1.833.457.483.73 1.132.73 1.832v3.501c0 .491.398.89.888.89a.889.889 0 010 1.777 2.667 2.667 0 01-2.666-2.667v-3.5a.889.889 0 00-.674-.863l-.43-.108a.889.889 0 010-1.724l.43-.108a.889.889 0 00.674-.862V6.667zm14.222 0A2.667 2.667 0 0016.333 4a.889.889 0 000 1.778c.491 0 .89.398.89.889v3.5c0 .701.272 1.35.729 1.833a2.664 2.664 0 00-.73 1.832v3.501a.889.889 0 01-.889.89.889.889 0 000 1.777A2.667 2.667 0 0019 17.333v-3.5c0-.408.278-.764.673-.863l.431-.108a.889.889 0 000-1.724l-.43-.108a.889.889 0 01-.674-.862V6.667z"
741
+ })]
742
+ });
743
+ const Css = (props) => /* @__PURE__ */ jsxs("svg", {
744
+ xmlns: "http://www.w3.org/2000/svg",
745
+ fill: "none",
746
+ viewBox: "0 0 24 24",
747
+ ...wrapperProps(props),
748
+ children: [/* @__PURE__ */ jsx("title", { children: "CSS" }), /* @__PURE__ */ jsx("path", {
749
+ fill: "#0EA5E9",
750
+ d: "M4.778 6.667A2.667 2.667 0 017.444 4a.889.889 0 010 1.778.889.889 0 00-.888.889v3.5c0 .701-.273 1.35-.73 1.833.457.483.73 1.132.73 1.832v3.501c0 .491.398.89.888.89a.889.889 0 010 1.777 2.667 2.667 0 01-2.666-2.667v-3.5a.889.889 0 00-.674-.863l-.43-.108a.889.889 0 010-1.724l.43-.108a.889.889 0 00.674-.862V6.667zm14.222 0A2.667 2.667 0 0016.333 4a.889.889 0 000 1.778c.491 0 .89.398.89.889v3.5c0 .701.272 1.35.729 1.833a2.664 2.664 0 00-.73 1.832v3.501a.889.889 0 01-.889.89.889.889 0 000 1.777A2.667 2.667 0 0019 17.333v-3.5c0-.408.278-.764.673-.863l.431-.108a.889.889 0 000-1.724l-.43-.108a.889.889 0 01-.674-.862V6.667z"
751
+ })]
752
+ });
753
+ const BracketsOrange = (props) => /* @__PURE__ */ jsxs("svg", {
754
+ xmlns: "http://www.w3.org/2000/svg",
755
+ fill: "none",
756
+ viewBox: "0 0 24 24",
757
+ ...wrapperProps(props),
758
+ children: [/* @__PURE__ */ jsx("title", { children: "HTML" }), /* @__PURE__ */ jsx("path", {
759
+ fill: "#EA580C",
760
+ d: "M4.778 6.667A2.667 2.667 0 017.444 4a.889.889 0 010 1.778.889.889 0 00-.888.889v3.5c0 .701-.273 1.35-.73 1.833.457.483.73 1.132.73 1.832v3.501c0 .491.398.89.888.89a.889.889 0 010 1.777 2.667 2.667 0 01-2.666-2.667v-3.5a.889.889 0 00-.674-.863l-.43-.108a.889.889 0 010-1.724l.43-.108a.889.889 0 00.674-.862V6.667zm14.222 0A2.667 2.667 0 0016.333 4a.889.889 0 000 1.778c.491 0 .89.398.89.889v3.5c0 .701.272 1.35.729 1.833a2.664 2.664 0 00-.73 1.832v3.501a.889.889 0 01-.889.89.889.889 0 000 1.777A2.667 2.667 0 0019 17.333v-3.5c0-.408.278-.764.673-.863l.431-.108a.889.889 0 000-1.724l-.43-.108a.889.889 0 01-.674-.862V6.667z"
761
+ })]
762
+ });
763
+ const React$1 = (props) => /* @__PURE__ */ jsxs("svg", {
764
+ xmlns: "http://www.w3.org/2000/svg",
765
+ fill: "none",
766
+ viewBox: "0 0 24 24",
767
+ ...wrapperProps(props),
768
+ children: [
769
+ /* @__PURE__ */ jsx("title", { children: "React" }),
770
+ /* @__PURE__ */ jsx("path", {
771
+ fill: "#0E8ADC",
772
+ d: "M12 13.677a1.677 1.677 0 100-3.354 1.677 1.677 0 000 3.354z"
773
+ }),
774
+ /* @__PURE__ */ jsx("path", {
775
+ stroke: "#0E8ADC",
776
+ d: "M12 15.436c4.97 0 9-1.538 9-3.436s-4.03-3.436-9-3.436S3 10.102 3 12s4.03 3.436 9 3.436z"
777
+ }),
778
+ /* @__PURE__ */ jsx("path", {
779
+ stroke: "#0E8ADC",
780
+ d: "M9.024 13.718c2.485 4.305 5.832 7.025 7.476 6.076 1.644-.949.961-5.208-1.524-9.512C12.491 5.977 9.144 3.257 7.5 4.206c-1.644.949-.961 5.208 1.524 9.512z"
781
+ }),
782
+ /* @__PURE__ */ jsx("path", {
783
+ stroke: "#0E8ADC",
784
+ d: "M9.024 10.282c-2.485 4.304-3.168 8.563-1.524 9.512 1.644.95 4.99-1.771 7.476-6.076 2.485-4.304 3.168-8.563 1.524-9.512-1.644-.95-4.99 1.771-7.476 6.076z"
785
+ })
786
+ ]
787
+ });
788
+ const Markdown = (props) => /* @__PURE__ */ jsxs("svg", {
789
+ xmlns: "http://www.w3.org/2000/svg",
790
+ fill: "none",
791
+ viewBox: "0 0 24 24",
792
+ ...wrapperProps(props),
793
+ children: [/* @__PURE__ */ jsx("title", { children: "Markdown" }), /* @__PURE__ */ jsx("path", {
794
+ fill: "#60A5FA",
795
+ d: "M3 15.714V8h2.323l2.322 2.836L9.968 8h2.322v7.714H9.968V11.29l-2.323 2.836-2.322-2.836v4.424H3zm14.516 0l-3.484-3.743h2.323V8h2.322v3.97H21l-3.484 3.744z"
796
+ })]
797
+ });
798
+ const Shell = (props) => /* @__PURE__ */ jsxs("svg", {
799
+ xmlns: "http://www.w3.org/2000/svg",
800
+ fill: "none",
801
+ viewBox: "0 0 25 24",
802
+ ...wrapperProps(props),
803
+ children: [/* @__PURE__ */ jsx("title", { children: "Shell" }), /* @__PURE__ */ jsx("path", {
804
+ stroke: "#14B8A6",
805
+ strokeLinecap: "round",
806
+ strokeLinejoin: "round",
807
+ strokeWidth: "2",
808
+ d: "M4.336 17l6-6-6-6M12.336 19h8"
809
+ })]
810
+ });
811
+ const Yaml = (props) => /* @__PURE__ */ jsxs("svg", {
812
+ xmlns: "http://www.w3.org/2000/svg",
813
+ fill: "none",
814
+ viewBox: "0 0 24 24",
815
+ ...wrapperProps(props),
816
+ children: [/* @__PURE__ */ jsx("title", { children: "YAML" }), /* @__PURE__ */ jsx("path", {
817
+ fill: "#A78BFA",
818
+ d: "M6.533 5.864h2.755l2.654 5.011h.113l2.654-5.011h2.756l-4.245 7.522V17.5h-2.443v-4.114L6.533 5.864z"
819
+ })]
820
+ });
821
+ const Rust = (props) => /* @__PURE__ */ jsxs("svg", {
822
+ xmlns: "http://www.w3.org/2000/svg",
823
+ fill: "none",
824
+ viewBox: "0 0 25 24",
825
+ ...wrapperProps(props),
826
+ children: [/* @__PURE__ */ jsx("title", { children: "Rust" }), /* @__PURE__ */ jsx("path", {
827
+ fill: "#EA580C",
828
+ fillRule: "evenodd",
829
+ d: "M12.58 2.136a.287.287 0 00-.488 0l-.526.85a8.974 8.974 0 00-.232.022l-.683-.73a.287.287 0 00-.478.096l-.35.935c-.075.021-.15.044-.224.067l-.812-.583a.287.287 0 00-.45.187l-.162.989a9.088 9.088 0 00-.204.11l-.913-.417a.287.287 0 00-.406.272l.036 1.005a9.099 9.099 0 00-.175.144l-.98-.231a.287.287 0 00-.345.345l.231.98a9.125 9.125 0 00-.144.175L4.27 6.316a.287.287 0 00-.271.406l.416.913a9.036 9.036 0 00-.11.203L3.317 8a.287.287 0 00-.187.45l.584.813a8.953 8.953 0 00-.068.223l-.935.35a.287.287 0 00-.095.479l.73.682a8.966 8.966 0 00-.023.233l-.85.526a.287.287 0 000 .488l.85.526c.007.078.014.156.023.233l-.73.682a.287.287 0 00.095.479l.935.35.068.223-.584.812a.287.287 0 00.187.451l.99.162c.035.068.072.135.109.203l-.416.913a.287.287 0 00.271.406l1.006-.036c.047.059.095.117.143.174l-.23.981a.287.287 0 00.344.345l.981-.23c.057.048.115.095.174.142l-.036 1.006a.287.287 0 00.406.272l.914-.417c.067.038.135.074.203.11l.161.99a.287.287 0 00.451.186l.813-.584c.074.024.148.046.223.068l.35.935a.287.287 0 00.478.095l.683-.73c.077.01.154.017.232.023l.526.85a.287.287 0 00.489 0l.526-.85c.078-.006.155-.014.232-.023l.682.73a.287.287 0 00.479-.095l.35-.935c.075-.022.15-.044.223-.068l.813.584a.287.287 0 00.45-.187l.162-.99a8.77 8.77 0 00.203-.109l.913.417a.287.287 0 00.406-.272l-.035-1.006c.058-.047.116-.094.174-.143l.98.231a.287.287 0 00.346-.345l-.231-.98.143-.175 1.006.036a.287.287 0 00.271-.406l-.416-.913a9.4 9.4 0 00.109-.203l.99-.162a.287.287 0 00.187-.45l-.584-.813a8.43 8.43 0 00.067-.223l.935-.35a.287.287 0 00.096-.479l-.73-.682c.009-.077.016-.155.023-.233l.85-.526a.287.287 0 000-.488l-.85-.526a8.844 8.844 0 00-.023-.233l.73-.682a.287.287 0 00-.096-.479l-.934-.35a9.246 9.246 0 00-.068-.223l.584-.812A.287.287 0 0021.357 8l-.99-.162a8.92 8.92 0 00-.11-.203l.417-.913a.287.287 0 00-.271-.406l-1.006.036a9.178 9.178 0 00-.143-.174l.23-.981a.287.287 0 00-.345-.345l-.98.23a9.43 9.43 0 00-.174-.142l.035-1.006a.287.287 0 00-.405-.272l-.914.417a9.11 9.11 0 00-.203-.11l-.162-.99a.287.287 0 00-.45-.186l-.813.584a9.088 9.088 0 00-.223-.068l-.35-.935a.287.287 0 00-.479-.095l-.682.73a9.062 9.062 0 00-.232-.023l-.526-.85zm-.257 1.62a.592.592 0 01.578.596.595.595 0 11-.578-.595zm1.363.98A7.324 7.324 0 0118.7 8.309l-.702 1.585a.547.547 0 00.275.717l1.352.6c.041.422.047.847.015 1.27h-.752c-.075 0-.106.05-.106.123v.344c0 .812-.457.99-.859 1.034-.383.044-.806-.161-.86-.394-.22-1.24-.583-1.526-1.152-1.975l-.041-.033c.736-.467 1.502-1.158 1.502-2.08 0-.998-.683-1.625-1.148-1.934-.655-.43-1.379-.516-1.574-.516H6.88a7.324 7.324 0 014.098-2.312l.916.96a.54.54 0 00.766.018l1.026-.978zm-8.46 4.407a.595.595 0 11-.034 1.19.595.595 0 01.034-1.19zm14.192.026a.595.595 0 11-.035 1.19.595.595 0 01.035-1.19zm-13.07.096h1.037v4.678H5.291a7.324 7.324 0 01-.237-2.797l1.282-.57a.542.542 0 00.276-.716l-.264-.595zm4.33.05h2.47c.128 0 .901.147.901.727 0 .48-.593.653-1.081.653h-2.293l.002-1.38zm0 3.36h1.892c.172 0 .924.05 1.164 1.011.026.104.064.291.107.503.078.389.174.861.247 1.06.113.345.57 1.034 1.058 1.034h3.089c-.207.277-.433.54-.677.785l-1.258-.27a.544.544 0 00-.645.417l-.298 1.394a7.323 7.323 0 01-6.108-.03l-.298-1.392a.542.542 0 00-.643-.418l-1.23.264a7.32 7.32 0 01-.636-.75h5.984c.067 0 .113-.011.113-.074v-2.117c0-.061-.046-.075-.113-.075h-1.75l.001-1.341zm-2.763 4.848a.595.595 0 11-.034 1.19.595.595 0 01.034-1.19zm8.814.027a.596.596 0 11-.035 1.19.596.596 0 01.035-1.19z",
830
+ clipRule: "evenodd"
831
+ })]
832
+ });
833
+ const BracketsRed = (props) => /* @__PURE__ */ jsxs("svg", {
834
+ xmlns: "http://www.w3.org/2000/svg",
835
+ fill: "none",
836
+ viewBox: "0 0 24 24",
837
+ ...wrapperProps(props),
838
+ children: [/* @__PURE__ */ jsx("title", { children: "Rust" }), /* @__PURE__ */ jsx("path", {
839
+ fill: "#F87171",
840
+ d: "M4.778 6.667A2.667 2.667 0 017.444 4a.889.889 0 010 1.778.889.889 0 00-.888.889v3.5c0 .701-.273 1.35-.73 1.833.457.483.73 1.132.73 1.832v3.501c0 .491.398.89.888.89a.889.889 0 010 1.777 2.667 2.667 0 01-2.666-2.667v-3.5a.889.889 0 00-.674-.863l-.43-.108a.889.889 0 010-1.724l.43-.108a.889.889 0 00.674-.862V6.667zm14.222 0A2.667 2.667 0 0016.333 4a.889.889 0 000 1.778c.491 0 .89.398.89.889v3.5c0 .701.272 1.35.729 1.833a2.664 2.664 0 00-.73 1.832v3.501a.889.889 0 01-.889.89.889.889 0 000 1.777A2.667 2.667 0 0019 17.333v-3.5c0-.408.278-.764.673-.863l.431-.108a.889.889 0 000-1.724l-.43-.108a.889.889 0 01-.674-.862V6.667z"
841
+ })]
842
+ });
843
+
844
+ //#endregion
845
+ export { ConfigContext as $, ChevronRight as A, Languages as B, RoutesProvider as C, Check as D, ArrowLeft as E, File as F, Moon as G, Link$2 as H, FileText as I, Search as J, MoreVertical as K, Hash as L, Copy as M, CornerDownLeft as N, ChevronDown as O, ExternalLink as P, icons_exports as Q, Home as R, normalizePath as S, AlertTriangle as T, Menu as U, Lightbulb as V, Monitor as W, TextAlignStart as X, Sun as Y, X as Z, Link$1 as _, Csv as a, useLocalizedTo as b, JavaScript as c, React$1 as d, useConfig as et, Rust as f, Yaml as g, XSocial as h, Css as i, CircleHelp as j, ChevronLeft as k, Json as l, TypeScript as m, BracketsOrange as n, useBoltdocsContext as nt, Discord as o, Shell as p, Pencil as q, BracketsRed as r, Github as s, Bluesky as t, BoltdocsProvider as tt, Markdown as u, NavLink as v, AlertCircle as w, useRoutes as x, cn as y, Info as z };