boltdocs 3.0.2 → 3.2.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 (123) hide show
  1. package/README.md +2 -18
  2. package/dist/{adapters-DEXNIv3x.mjs → adapters-ByYY44Zy.mjs} +1 -1
  3. package/dist/{adapters-C5AWWGfb.cjs → adapters-DvmtpdSF.cjs} +1 -1
  4. package/dist/{banner-CfdalYLL.d.ts → banner-BMop1KLF.d.ts} +2 -2
  5. package/dist/{banner-DNSkgUsO.d.cts → banner-CVD0GugR.d.cts} +2 -2
  6. package/dist/cache-CO4Dy2uQ.cjs +6 -0
  7. package/dist/cache-Dk53iOo6.mjs +6 -0
  8. package/dist/chunk-BFSpntXv.mjs +6 -0
  9. package/dist/{chunk-Ds5LZdWN.cjs → chunk-D1Md3oWO.cjs} +1 -1
  10. package/dist/client/index.cjs +433 -272
  11. package/dist/client/index.d.cts +129 -18
  12. package/dist/client/index.d.ts +129 -18
  13. package/dist/client/index.js +337 -178
  14. package/dist/client/mdx.cjs +1 -1
  15. package/dist/client/mdx.d.cts +1 -1
  16. package/dist/client/mdx.d.ts +1 -1
  17. package/dist/client/mdx.js +1 -1
  18. package/dist/client/primitives.cjs +7 -7
  19. package/dist/client/primitives.d.cts +5 -22
  20. package/dist/client/primitives.d.ts +5 -22
  21. package/dist/client/primitives.js +4 -4
  22. package/dist/client/theme/neutral.css +1 -3
  23. package/dist/client/theme/reset.css +31 -4
  24. package/dist/config-BpzaPsJj.d.cts +781 -0
  25. package/dist/config-CCXp3aXO.mjs +7 -0
  26. package/dist/{config-JGkMJoJQ.cjs → config-CMd4XoFq.cjs} +1 -1
  27. package/dist/config-DlGoEM9D.cjs +7 -0
  28. package/dist/config-xtS0ZkMm.d.mts +781 -0
  29. package/dist/{csp-CBysWlAf.cjs → csp-CRp_3U7a.cjs} +1 -1
  30. package/dist/csp-oTC2ygvF.mjs +6 -0
  31. package/dist/{docs-layout-6FQ8__ok.js → docs-layout-BdtZ9z6s.js} +9 -28
  32. package/dist/{docs-layout-3TpAt6MB.cjs → docs-layout-CFWI15Id.cjs} +69 -88
  33. package/dist/{doctor-BR1B2Mkz.cjs → doctor-BBtmNJE0.cjs} +1 -1
  34. package/dist/doctor-Bv16QSrI.cjs +7 -0
  35. package/dist/doctor-DOAbSaiL.mjs +7 -0
  36. package/dist/{generator-DtUU3Cfk.cjs → generator-COepVWGi.cjs} +1 -1
  37. package/dist/{handler-Btd4t_67.mjs → handler-DzQae4eA.mjs} +1 -1
  38. package/dist/{handler-Dzf4dSnV.cjs → handler-XX7cLTqe.cjs} +1 -1
  39. package/dist/headers-Ddwek8K7.mjs +6 -0
  40. package/dist/{headers-BXKxiPUv.cjs → headers-dg4SDrjY.cjs} +1 -1
  41. package/dist/{image-C9md50h2.js → image-Bz87fCla.js} +2 -2
  42. package/dist/{image-CR6UlaI5.cjs → image-C4TlpMHn.cjs} +18 -18
  43. package/dist/link-2PzgTnaP.js +673 -0
  44. package/dist/{icons-dev-BryEFkJu.cjs → link-D1Gjkb-2.cjs} +8 -353
  45. package/dist/{mdx-DhyMkc35.js → mdx-BuO6a1f7.js} +199 -40
  46. package/dist/{mdx-DJBg5DuL.cjs → mdx-CD-tSjRG.cjs} +237 -72
  47. package/dist/{meta-loader-C9MKjAs0.cjs → meta-loader-Dq1zcFnh.cjs} +1 -1
  48. package/dist/node/cache.cjs +6 -0
  49. package/dist/node/cache.d.cts +84 -0
  50. package/dist/node/cache.d.mts +84 -0
  51. package/dist/node/cache.mjs +6 -0
  52. package/dist/node/cli-entry.cjs +6 -6
  53. package/dist/node/cli-entry.mjs +9 -9
  54. package/dist/node/index.cjs +1 -1
  55. package/dist/node/index.d.cts +27 -638
  56. package/dist/node/index.d.mts +27 -640
  57. package/dist/node/index.mjs +1 -1
  58. package/dist/node/mdx/shiki-adapter.cjs +6 -0
  59. package/dist/node/mdx/shiki-adapter.d.cts +51 -0
  60. package/dist/node/mdx/shiki-adapter.d.mts +51 -0
  61. package/dist/node/mdx/shiki-adapter.mjs +6 -0
  62. package/dist/node-BXtqM1uH.mjs +6 -0
  63. package/dist/node-BlVk4EVg.cjs +104 -0
  64. package/dist/node-DOf4zhWc.mjs +104 -0
  65. package/dist/node-aD1eisrR.cjs +6 -0
  66. package/dist/{package-CEDhVAfO.cjs → package-BcISI5-P.cjs} +1 -1
  67. package/dist/{package-_dCCKVvG.mjs → package-CCYEAYeA.mjs} +1 -1
  68. package/dist/{pages-external-CX2uyW95.cjs → pages-external-XkYIs-d5.cjs} +1 -1
  69. package/dist/parser-DCiEWkSk.cjs +8 -0
  70. package/dist/parser-qk9FIHJ7.mjs +8 -0
  71. package/dist/plugin-C95kvu6h.mjs +73 -0
  72. package/dist/plugin-DM3u2bVj.cjs +73 -0
  73. package/dist/routes-BW6zsk7Z.mjs +6 -0
  74. package/dist/routes-BgoIB5wb.cjs +6 -0
  75. package/dist/{routes-BajCwrvX.cjs → routes-CORVxc02.cjs} +1 -1
  76. package/dist/{search-dialog-D4rplZMv.cjs → search-dialog-B1NERUNx.cjs} +101 -55
  77. package/dist/{search-dialog-Cx7aGW3U.cjs → search-dialog-BRFno7HD.cjs} +8 -8
  78. package/dist/{search-dialog-DDopgbKM.js → search-dialog-BmxHiKwt.js} +2 -2
  79. package/dist/{search-dialog-BNdRV60O.js → search-dialog-D6TvjcuV.js} +1 -1
  80. package/dist/{search-dialog-DaeSPvEo.js → search-dialog-DFnlx8LO.js} +44 -4
  81. package/dist/{search-dialog-CW1f6dn6.cjs → search-dialog-DHqwjJuG.cjs} +1 -1
  82. package/dist/server/index.cjs +1 -1
  83. package/dist/server/index.d.mts +1 -1
  84. package/dist/server/index.mjs +1 -1
  85. package/dist/shiki-adapter-CoQ6jyJ4.cjs +6 -0
  86. package/dist/shiki-adapter-D-aKw7PP.mjs +6 -0
  87. package/dist/sidebar-COTaMHR-.d.ts +1100 -0
  88. package/dist/sidebar-CrEdJuHX.d.cts +1100 -0
  89. package/dist/{types-generator-CYcHkDzZ.cjs → types-generator-BXhv7Ill.cjs} +1 -1
  90. package/dist/types-generator-bDPvUztF.mjs +26 -0
  91. package/dist/utils-Crm9oPcV.mjs +7 -0
  92. package/dist/utils-D6Xtj0FZ.cjs +7 -0
  93. package/package.json +26 -12
  94. package/src/shared/types.ts +532 -23
  95. package/dist/cache-DETwlACe.cjs +0 -6
  96. package/dist/cache-SF59enb3.mjs +0 -6
  97. package/dist/config-B5uVv5q4.cjs +0 -7
  98. package/dist/config-D3_zDkHh.mjs +0 -7
  99. package/dist/csp-gaZ51xzq.mjs +0 -6
  100. package/dist/doctor-3MheVMwd.mjs +0 -7
  101. package/dist/doctor-DQxLM202.cjs +0 -7
  102. package/dist/headers-CXyf0auY.mjs +0 -6
  103. package/dist/icons-dev-kJyGWNeg.js +0 -916
  104. package/dist/node-B9JSyEIU.mjs +0 -105
  105. package/dist/node-Cedquois.cjs +0 -105
  106. package/dist/parser-CNIPHx4s.cjs +0 -8
  107. package/dist/parser-D0QHIQsi.mjs +0 -8
  108. package/dist/plugin-WYNORxp1.cjs +0 -68
  109. package/dist/plugin-YWNVRpws.mjs +0 -68
  110. package/dist/rolldown-runtime-fkIsjY3S.mjs +0 -6
  111. package/dist/routes-CyrnmVuG.mjs +0 -6
  112. package/dist/routes-D6Tuu7Fs.cjs +0 -6
  113. package/dist/shiki-adapter-CGTmrR6S.cjs +0 -6
  114. package/dist/shiki-adapter-CXEGRnjr.mjs +0 -6
  115. package/dist/shiki-adapter-Mr8_oT_9.cjs +0 -6
  116. package/dist/sidebar-7gIifpBX.d.cts +0 -615
  117. package/dist/sidebar-BAKgJ-Er.d.ts +0 -615
  118. package/dist/types-generator-DVOnRVKU.mjs +0 -26
  119. package/dist/utils-B3xYMrpK.mjs +0 -7
  120. package/dist/utils-Bz1tG9Dg.cjs +0 -7
  121. /package/dist/{errors-C0Hx15Ag.mjs → errors-0zGHRLue.mjs} +0 -0
  122. /package/dist/{errors-Dx6JHoKE.cjs → errors-vKw8CkiX.cjs} +0 -0
  123. /package/dist/{index-CdJv4ocW.d.mts → index-1KsTDq4o.d.mts} +0 -0
@@ -1,916 +0,0 @@
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 = window.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
- window.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
- window.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
- FaceBad: () => FaceBad,
141
- FaceGood: () => FaceGood,
142
- FaceRegular: () => FaceRegular,
143
- File: () => File,
144
- FileText: () => FileText,
145
- Hash: () => Hash,
146
- Home: () => Home,
147
- Info: () => Info,
148
- Languages: () => Languages,
149
- Lightbulb: () => Lightbulb,
150
- Link: () => Link$2,
151
- Menu: () => Menu,
152
- Monitor: () => Monitor,
153
- Moon: () => Moon,
154
- MoreVertical: () => MoreVertical,
155
- Pencil: () => Pencil,
156
- Search: () => Search,
157
- Sun: () => Sun,
158
- TextAlignStart: () => TextAlignStart,
159
- X: () => X
160
- });
161
- function createIcon(displayName, paths, viewBox = "0 0 24 24") {
162
- const Component = ({ size = 24, className, ...props }) => {
163
- return /* @__PURE__ */ jsxs("svg", {
164
- xmlns: "http://www.w3.org/2000/svg",
165
- width: size,
166
- height: size,
167
- viewBox,
168
- fill: "none",
169
- stroke: "currentColor",
170
- strokeWidth: "2",
171
- strokeLinecap: "round",
172
- strokeLinejoin: "round",
173
- className,
174
- ...props,
175
- children: [/* @__PURE__ */ jsx("title", { children: displayName }), paths]
176
- });
177
- };
178
- Component.displayName = displayName;
179
- return Component;
180
- }
181
- const Info = createIcon("Info", /* @__PURE__ */ jsxs(Fragment, { children: [
182
- /* @__PURE__ */ jsx("circle", {
183
- cx: "12",
184
- cy: "12",
185
- r: "10"
186
- }),
187
- /* @__PURE__ */ jsx("path", { d: "M12 16v-4" }),
188
- /* @__PURE__ */ jsx("path", { d: "M12 8h.01" })
189
- ] }));
190
- const Lightbulb = createIcon("Lightbulb", /* @__PURE__ */ jsxs(Fragment, { children: [
191
- /* @__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" }),
192
- /* @__PURE__ */ jsx("path", { d: "M9 18h6" }),
193
- /* @__PURE__ */ jsx("path", { d: "M10 22h4" })
194
- ] }));
195
- const AlertTriangle = createIcon("AlertTriangle", /* @__PURE__ */ jsxs(Fragment, { children: [
196
- /* @__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" }),
197
- /* @__PURE__ */ jsx("line", {
198
- x1: "12",
199
- y1: "9",
200
- x2: "12",
201
- y2: "13"
202
- }),
203
- /* @__PURE__ */ jsx("line", {
204
- x1: "12",
205
- y1: "17",
206
- x2: "12.01",
207
- y2: "17"
208
- })
209
- ] }));
210
- const AlertCircle = createIcon("AlertCircle", /* @__PURE__ */ jsxs(Fragment, { children: [
211
- /* @__PURE__ */ jsx("circle", {
212
- cx: "12",
213
- cy: "12",
214
- r: "10"
215
- }),
216
- /* @__PURE__ */ jsx("line", {
217
- x1: "12",
218
- y1: "8",
219
- x2: "12",
220
- y2: "12"
221
- }),
222
- /* @__PURE__ */ jsx("line", {
223
- x1: "12",
224
- y1: "16",
225
- x2: "12.01",
226
- y2: "16"
227
- })
228
- ] }));
229
- const Copy = createIcon("Copy", /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("rect", {
230
- width: "14",
231
- height: "14",
232
- x: "8",
233
- y: "8",
234
- rx: "2",
235
- ry: "2"
236
- }), /* @__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" })] }));
237
- const Check = createIcon("Check", /* @__PURE__ */ jsx("path", { d: "M20 6 9 17l-5-5" }));
238
- 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" })] }));
239
- const ArrowLeft = createIcon("ArrowLeft", /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("path", { d: "m12 19-7-7 7-7" }), /* @__PURE__ */ jsx("path", { d: "M19 12H5" })] }));
240
- 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" })] }));
241
- const CircleHelp = createIcon("CircleHelp", /* @__PURE__ */ jsxs(Fragment, { children: [
242
- /* @__PURE__ */ jsx("circle", {
243
- cx: "12",
244
- cy: "12",
245
- r: "10"
246
- }),
247
- /* @__PURE__ */ jsx("path", { d: "M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3" }),
248
- /* @__PURE__ */ jsx("path", { d: "M12 17h.01" })
249
- ] }));
250
- const TextAlignStart = createIcon("TextAlignStart", /* @__PURE__ */ jsxs(Fragment, { children: [
251
- /* @__PURE__ */ jsx("line", {
252
- x1: "21",
253
- x2: "3",
254
- y1: "6",
255
- y2: "6"
256
- }),
257
- /* @__PURE__ */ jsx("line", {
258
- x1: "15",
259
- x2: "3",
260
- y1: "12",
261
- y2: "12"
262
- }),
263
- /* @__PURE__ */ jsx("line", {
264
- x1: "17",
265
- x2: "3",
266
- y1: "18",
267
- y2: "18"
268
- })
269
- ] }));
270
- const ExternalLink = createIcon("ExternalLink", /* @__PURE__ */ jsxs(Fragment, { children: [
271
- /* @__PURE__ */ jsx("path", { d: "M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6" }),
272
- /* @__PURE__ */ jsx("polyline", { points: "15 3 21 3 21 9" }),
273
- /* @__PURE__ */ jsx("line", {
274
- x1: "10",
275
- y1: "14",
276
- x2: "21",
277
- y2: "3"
278
- })
279
- ] }));
280
- const ChevronDown = createIcon("ChevronDown", /* @__PURE__ */ jsx("path", { d: "m6 9 6 6 6-6" }));
281
- 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" })] }));
282
- const Search = createIcon("Search", /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("circle", {
283
- cx: "11",
284
- cy: "11",
285
- r: "8"
286
- }), /* @__PURE__ */ jsx("path", { d: "m21 21-4.3-4.3" })] }));
287
- const Sun = createIcon("Sun", /* @__PURE__ */ jsxs(Fragment, { children: [
288
- /* @__PURE__ */ jsx("circle", {
289
- cx: "12",
290
- cy: "12",
291
- r: "4"
292
- }),
293
- /* @__PURE__ */ jsx("path", { d: "M12 2v2" }),
294
- /* @__PURE__ */ jsx("path", { d: "M12 20v2" }),
295
- /* @__PURE__ */ jsx("path", { d: "m4.93 4.93 1.41 1.41" }),
296
- /* @__PURE__ */ jsx("path", { d: "m17.66 17.66 1.41 1.41" }),
297
- /* @__PURE__ */ jsx("path", { d: "M2 12h2" }),
298
- /* @__PURE__ */ jsx("path", { d: "M20 12h2" }),
299
- /* @__PURE__ */ jsx("path", { d: "m6.34 17.66-1.41 1.41" }),
300
- /* @__PURE__ */ jsx("path", { d: "m19.07 4.93-1.41 1.41" })
301
- ] }));
302
- const Moon = createIcon("Moon", /* @__PURE__ */ jsx("path", { d: "M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z" }));
303
- const Monitor = createIcon("Monitor", /* @__PURE__ */ jsxs(Fragment, { children: [
304
- /* @__PURE__ */ jsx("rect", {
305
- width: "20",
306
- height: "14",
307
- x: "2",
308
- y: "3",
309
- rx: "2"
310
- }),
311
- /* @__PURE__ */ jsx("line", {
312
- x1: "8",
313
- x2: "16",
314
- y1: "21",
315
- y2: "21"
316
- }),
317
- /* @__PURE__ */ jsx("line", {
318
- x1: "12",
319
- x2: "12",
320
- y1: "17",
321
- y2: "21"
322
- })
323
- ] }));
324
- const Languages = createIcon("Languages", /* @__PURE__ */ jsxs(Fragment, { children: [
325
- /* @__PURE__ */ jsx("path", { d: "m5 8 6 6" }),
326
- /* @__PURE__ */ jsx("path", { d: "m4 14 6-6 2-3" }),
327
- /* @__PURE__ */ jsx("path", { d: "M2 5h12" }),
328
- /* @__PURE__ */ jsx("path", { d: "M7 2h1" }),
329
- /* @__PURE__ */ jsx("path", { d: "m22 22-5-10-5 10" }),
330
- /* @__PURE__ */ jsx("path", { d: "M14 18h6" })
331
- ] }));
332
- const Menu = createIcon("Menu", /* @__PURE__ */ jsxs(Fragment, { children: [
333
- /* @__PURE__ */ jsx("line", {
334
- x1: "4",
335
- x2: "20",
336
- y1: "12",
337
- y2: "12"
338
- }),
339
- /* @__PURE__ */ jsx("line", {
340
- x1: "4",
341
- x2: "20",
342
- y1: "6",
343
- y2: "6"
344
- }),
345
- /* @__PURE__ */ jsx("line", {
346
- x1: "4",
347
- x2: "20",
348
- y1: "18",
349
- y2: "18"
350
- })
351
- ] }));
352
- const X = createIcon("X", /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("path", { d: "M18 6 6 18" }), /* @__PURE__ */ jsx("path", { d: "m6 6 12 12" })] }));
353
- 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" })] }));
354
- const ChevronRight = createIcon("ChevronRight", /* @__PURE__ */ jsx("path", { d: "m9 18 6-6-6-6" }));
355
- const MoreVertical = createIcon("MoreVertical", /* @__PURE__ */ jsxs(Fragment, { children: [
356
- /* @__PURE__ */ jsx("circle", {
357
- cx: "12",
358
- cy: "12",
359
- r: "1"
360
- }),
361
- /* @__PURE__ */ jsx("circle", {
362
- cx: "12",
363
- cy: "5",
364
- r: "1"
365
- }),
366
- /* @__PURE__ */ jsx("circle", {
367
- cx: "12",
368
- cy: "19",
369
- r: "1"
370
- })
371
- ] }));
372
- const ChevronLeft = createIcon("ChevronLeft", /* @__PURE__ */ jsx("path", { d: "m15 18-6-6 6-6" }));
373
- const Hash = createIcon("Hash", /* @__PURE__ */ jsxs(Fragment, { children: [
374
- /* @__PURE__ */ jsx("line", {
375
- x1: "4",
376
- x2: "20",
377
- y1: "9",
378
- y2: "9"
379
- }),
380
- /* @__PURE__ */ jsx("line", {
381
- x1: "4",
382
- x2: "20",
383
- y1: "15",
384
- y2: "15"
385
- }),
386
- /* @__PURE__ */ jsx("line", {
387
- x1: "10",
388
- x2: "8",
389
- y1: "3",
390
- y2: "21"
391
- }),
392
- /* @__PURE__ */ jsx("line", {
393
- x1: "16",
394
- x2: "14",
395
- y1: "3",
396
- y2: "21"
397
- })
398
- ] }));
399
- const FileText = createIcon("FileText", /* @__PURE__ */ jsxs(Fragment, { children: [
400
- /* @__PURE__ */ jsx("path", { d: "M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z" }),
401
- /* @__PURE__ */ jsx("path", { d: "M14 2v4a2 2 0 0 0 2 2h4" }),
402
- /* @__PURE__ */ jsx("path", { d: "M10 9H8" }),
403
- /* @__PURE__ */ jsx("path", { d: "M16 13H8" }),
404
- /* @__PURE__ */ jsx("path", { d: "M16 17H8" })
405
- ] }));
406
- 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" })] }));
407
- const FaceGood = createIcon("FaceGood", /* @__PURE__ */ jsxs(Fragment, { children: [
408
- /* @__PURE__ */ jsx("circle", {
409
- cx: "12",
410
- cy: "12",
411
- r: "10"
412
- }),
413
- /* @__PURE__ */ jsx("path", { d: "M8 14s1.5 2 4 2 4-2 4-2" }),
414
- /* @__PURE__ */ jsx("line", {
415
- x1: "9",
416
- y1: "9",
417
- x2: "9.01",
418
- y2: "9"
419
- }),
420
- /* @__PURE__ */ jsx("line", {
421
- x1: "15",
422
- y1: "9",
423
- x2: "15.01",
424
- y2: "9"
425
- })
426
- ] }));
427
- const FaceRegular = createIcon("FaceRegular", /* @__PURE__ */ jsxs(Fragment, { children: [
428
- /* @__PURE__ */ jsx("circle", {
429
- cx: "12",
430
- cy: "12",
431
- r: "10"
432
- }),
433
- /* @__PURE__ */ jsx("line", {
434
- x1: "8",
435
- y1: "15",
436
- x2: "16",
437
- y2: "15"
438
- }),
439
- /* @__PURE__ */ jsx("line", {
440
- x1: "9",
441
- y1: "9",
442
- x2: "9.01",
443
- y2: "9"
444
- }),
445
- /* @__PURE__ */ jsx("line", {
446
- x1: "15",
447
- y1: "9",
448
- x2: "15.01",
449
- y2: "9"
450
- })
451
- ] }));
452
- const FaceBad = createIcon("FaceBad", /* @__PURE__ */ jsxs(Fragment, { children: [
453
- /* @__PURE__ */ jsx("circle", {
454
- cx: "12",
455
- cy: "12",
456
- r: "10"
457
- }),
458
- /* @__PURE__ */ jsx("path", { d: "M16 16s-1.5-2-4-2-4 2-4 2" }),
459
- /* @__PURE__ */ jsx("line", {
460
- x1: "9",
461
- y1: "9",
462
- x2: "9.01",
463
- y2: "9"
464
- }),
465
- /* @__PURE__ */ jsx("line", {
466
- x1: "15",
467
- y1: "9",
468
- x2: "15.01",
469
- y2: "9"
470
- })
471
- ] }));
472
-
473
- //#endregion
474
- //#region src/client/app/routes-context.tsx
475
- const RoutesContext = createContext({ routes: [] });
476
- /**
477
- * Hook to access the processed routes list from the closest provider.
478
- */
479
- function useRoutesContext() {
480
- return use(RoutesContext);
481
- }
482
- /**
483
- * Provider component for the documentation routes.
484
- */
485
- function RoutesProvider({ routes, children }) {
486
- return /* @__PURE__ */ jsx(RoutesContext.Provider, {
487
- value: { routes },
488
- children
489
- });
490
- }
491
-
492
- //#endregion
493
- //#region src/client/utils/path.ts
494
- /**
495
- * Normalizes a URL path by stripping any trailing slash unless it's the root path.
496
- *
497
- * @param p - The path to normalize.
498
- * @returns The normalized path.
499
- */
500
- function normalizePath(p) {
501
- return p.endsWith("/") && p.length > 1 ? p.slice(0, -1) : p;
502
- }
503
-
504
- //#endregion
505
- //#region src/client/hooks/use-routes.ts
506
- /**
507
- * Hook to access the framework's routing state.
508
- * Returns both the complete set of routes and a filtered list based on the current
509
- * version and locale.
510
- */
511
- function useRoutes() {
512
- const { routes: allRoutes } = useRoutesContext();
513
- const config = useConfig();
514
- const location = useLocation();
515
- const { currentLocale: currentLocaleStore, currentVersion: currentVersionStore } = useBoltdocsContext();
516
- const currentPath = normalizePath(location.pathname);
517
- const currentRoute = allRoutes?.find?.((r) => normalizePath(r.path) === currentPath);
518
- const currentLocale = config.i18n ? currentLocaleStore || config.i18n.defaultLocale : void 0;
519
- const currentVersion = config.versions ? currentVersionStore || config.versions.defaultVersion : void 0;
520
- const routes = useMemo(() => {
521
- if (!allRoutes) return [];
522
- const alternateCounts = /* @__PURE__ */ new Map();
523
- const defaultLocale = config.i18n?.defaultLocale || "";
524
- const defaultVersion = config.versions?.defaultVersion || "";
525
- for (const r of allRoutes) {
526
- const locale = r.locale || defaultLocale;
527
- const version = r.version || defaultVersion;
528
- const key = `${r.filePath}::${locale}::${version}`;
529
- alternateCounts.set(key, (alternateCounts.get(key) || 0) + 1);
530
- }
531
- return allRoutes.filter((r) => {
532
- const localeMatch = config.i18n ? (r.locale || config.i18n.defaultLocale) === currentLocale : true;
533
- const versionMatch = config.versions ? (r.version || config.versions.defaultVersion) === currentVersion : true;
534
- if (!(localeMatch && versionMatch)) return false;
535
- const pathParts = location.pathname.split("/").filter(Boolean);
536
- const isCurrentLocalePrefixed = !!(config.i18n && pathParts.includes(currentLocaleStore || config.i18n.defaultLocale));
537
- const isCurrentVersionPrefixed = !!(config.versions && pathParts.includes(currentVersionStore || config.versions.defaultVersion));
538
- const isRouteLocalePrefixed = !!r.locale;
539
- const isRouteVersionPrefixed = !!r.version;
540
- const locale = r.locale || defaultLocale;
541
- const version = r.version || defaultVersion;
542
- const key = `${r.filePath}::${locale}::${version}`;
543
- if ((alternateCounts.get(key) || 0) > 1) {
544
- const localeMismatch = config.i18n && isCurrentLocalePrefixed !== isRouteLocalePrefixed;
545
- const versionMismatch = config.versions && isCurrentVersionPrefixed !== isRouteVersionPrefixed;
546
- if (localeMismatch || versionMismatch) return false;
547
- }
548
- return true;
549
- });
550
- }, [
551
- allRoutes,
552
- config,
553
- currentLocale,
554
- currentVersion,
555
- location.pathname,
556
- currentLocaleStore,
557
- currentVersionStore
558
- ]);
559
- const collections = useMemo(() => {
560
- return new Set((allRoutes || []).map((r) => r.collection).filter(Boolean));
561
- }, [allRoutes]);
562
- const currentSegment = location.pathname.split("/").filter(Boolean)[0]?.toLowerCase();
563
- return {
564
- routes,
565
- allRoutes,
566
- currentRoute,
567
- isCollectionPage: !!currentRoute?.collection || (currentSegment ? collections.has(currentSegment) : false),
568
- currentLocale,
569
- currentVersion
570
- };
571
- }
572
-
573
- //#endregion
574
- //#region src/client/hooks/use-localized-to.ts
575
- function useLocalizedTo(to) {
576
- const config = useConfig();
577
- const { currentLocale: activeLocale, currentVersion: activeVersion, allRoutes } = useRoutes();
578
- if (!config || typeof to !== "string") return to;
579
- if (to.startsWith("http") || to.startsWith("//") || to.startsWith("#") || to.startsWith("site:")) return to.replace("site:", "");
580
- const [pathOnly, hashAndQuery] = to.split(/([?#].*)/s);
581
- const normalizedTo = pathOnly.endsWith("/") && pathOnly.length > 1 ? pathOnly.slice(0, -1) : pathOnly;
582
- const isKnownRoute = allRoutes?.some((r) => {
583
- return (r.path.endsWith("/") && r.path.length > 1 ? r.path.slice(0, -1) : r.path) === (normalizedTo || "/");
584
- });
585
- const i18n = config.i18n;
586
- const versions = config.versions;
587
- const base = (config.base || "/docs").replace(/\/$/, "");
588
- const baseSegment = base.startsWith("/") ? base.substring(1) : base;
589
- const rawParts = pathOnly.split("/").filter(Boolean);
590
- const isDocsPath = baseSegment && rawParts.length > 0 && rawParts[0] === baseSegment || !isKnownRoute && rawParts.length > 0;
591
- const parts = [...rawParts];
592
- let pIdx = 0;
593
- if (baseSegment && parts[pIdx] === baseSegment) pIdx++;
594
- if (versions && parts.length > pIdx) {
595
- if (versions.versions.find((v) => v.path === parts[pIdx])) pIdx++;
596
- }
597
- if (i18n && parts.length > pIdx && (Array.isArray(i18n.locales) ? i18n.locales.includes(parts[pIdx]) : parts[pIdx] in i18n.locales)) pIdx++;
598
- const routeContent = parts.slice(pIdx);
599
- const resultParts = [];
600
- if (isDocsPath) {
601
- if (baseSegment) resultParts.push(baseSegment);
602
- if (versions && activeVersion) resultParts.push(activeVersion);
603
- if (i18n && activeLocale) resultParts.push(activeLocale);
604
- } else if (i18n && activeLocale) resultParts.push(activeLocale);
605
- resultParts.push(...routeContent);
606
- let finalPath = `/${resultParts.join("/")}`;
607
- if (pathOnly.endsWith("/") && pathOnly.length > 1 && !finalPath.endsWith("/")) finalPath += "/";
608
- return (finalPath || "/") + (hashAndQuery || "");
609
- }
610
-
611
- //#endregion
612
- //#region src/client/utils/cn.ts
613
- function cn(...inputs) {
614
- return twMerge(clsx(inputs));
615
- }
616
-
617
- //#endregion
618
- //#region src/client/components/primitives/link.tsx
619
- /**
620
- * A primitive Link component that wraps a standard anchor tag
621
- * and adds framework-specific logic for path localization and preloading.
622
- */
623
- function Link$1(props) {
624
- const { href, onMouseEnter, onFocus, onClick, ...rest } = props;
625
- const navigate = useNavigate();
626
- const localizedHref = useLocalizedTo(href ?? "");
627
- const handleClick = (e) => {
628
- onClick?.(e);
629
- if (e.defaultPrevented) return;
630
- if (!(localizedHref && (localizedHref.startsWith("http://") || localizedHref.startsWith("https://") || localizedHref.startsWith("//")))) {
631
- e.preventDefault();
632
- navigate(localizedHref);
633
- }
634
- };
635
- const handleMouseEnter = (e) => {
636
- onMouseEnter?.(e);
637
- };
638
- const handleFocus = (e) => {
639
- onFocus?.(e);
640
- };
641
- return /* @__PURE__ */ jsx("a", {
642
- ...rest,
643
- href: localizedHref,
644
- onClick: handleClick,
645
- onMouseEnter: handleMouseEnter,
646
- onFocus: handleFocus
647
- });
648
- }
649
- /**
650
- * A primitive NavLink component that provides active state detection.
651
- */
652
- function NavLink(props) {
653
- const { href, end = false, className, children, ...rest } = props;
654
- const location = useLocation();
655
- const localizedHref = useLocalizedTo(href ?? "");
656
- const isActive = end ? location.pathname === localizedHref : location.pathname.startsWith(localizedHref);
657
- const resolvedClassName = typeof className === "function" ? className({ isActive }) : cn(className, isActive && "active");
658
- const resolvedChildren = typeof children === "function" ? children({ isActive }) : children;
659
- return /* @__PURE__ */ jsx(Link$1, {
660
- ...rest,
661
- href,
662
- className: resolvedClassName,
663
- children: resolvedChildren
664
- });
665
- }
666
-
667
- //#endregion
668
- //#region src/client/components/icons-dev.tsx
669
- function wrapperProps(props) {
670
- const { size = 20, ...rest } = props;
671
- return {
672
- ...rest,
673
- width: size,
674
- height: size
675
- };
676
- }
677
- const Github = (props) => /* @__PURE__ */ jsxs("svg", {
678
- xmlns: "http://www.w3.org/2000/svg",
679
- viewBox: "0 0 24 24",
680
- fill: "currentColor",
681
- ...wrapperProps(props),
682
- 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" })]
683
- });
684
- const Csv = (props) => /* @__PURE__ */ jsxs("svg", {
685
- xmlns: "http://www.w3.org/2000/svg",
686
- fill: "none",
687
- viewBox: "0 0 24 24",
688
- ...wrapperProps(props),
689
- children: [
690
- /* @__PURE__ */ jsx("title", { children: "CSV" }),
691
- /* @__PURE__ */ jsxs("mask", {
692
- id: "a",
693
- maskUnits: "userSpaceOnUse",
694
- x: "3",
695
- y: "3",
696
- width: "18",
697
- height: "18",
698
- fill: "#000",
699
- children: [/* @__PURE__ */ jsx("path", {
700
- fill: "#fff",
701
- d: "M3 3h18v18H3z"
702
- }), /* @__PURE__ */ jsx("path", {
703
- fillRule: "evenodd",
704
- clipRule: "evenodd",
705
- 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"
706
- })]
707
- }),
708
- /* @__PURE__ */ jsx("path", {
709
- 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",
710
- fill: "#14B8A6",
711
- mask: "url(#a)"
712
- }),
713
- /* @__PURE__ */ jsx("rect", {
714
- x: "7",
715
- y: "7",
716
- width: "4",
717
- height: "2",
718
- rx: "1",
719
- fill: "#14B8A6"
720
- }),
721
- /* @__PURE__ */ jsx("rect", {
722
- x: "7",
723
- y: "11",
724
- width: "4",
725
- height: "2",
726
- rx: "1",
727
- fill: "#14B8A6"
728
- }),
729
- /* @__PURE__ */ jsx("rect", {
730
- x: "7",
731
- y: "15",
732
- width: "4",
733
- height: "2",
734
- rx: "1",
735
- fill: "#14B8A6"
736
- }),
737
- /* @__PURE__ */ jsx("rect", {
738
- x: "13",
739
- y: "7",
740
- width: "4",
741
- height: "2",
742
- rx: "1",
743
- fill: "#14B8A6"
744
- }),
745
- /* @__PURE__ */ jsx("rect", {
746
- x: "13",
747
- y: "11",
748
- width: "4",
749
- height: "2",
750
- rx: "1",
751
- fill: "#14B8A6"
752
- }),
753
- /* @__PURE__ */ jsx("rect", {
754
- x: "13",
755
- y: "15",
756
- width: "4",
757
- height: "2",
758
- rx: "1",
759
- fill: "#14B8A6"
760
- })
761
- ]
762
- });
763
- const Discord = (props) => /* @__PURE__ */ jsxs("svg", {
764
- xmlns: "http://www.w3.org/2000/svg",
765
- viewBox: "0 0 24 24",
766
- fill: "currentColor",
767
- ...wrapperProps(props),
768
- 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" })]
769
- });
770
- const XSocial = (props) => /* @__PURE__ */ jsxs("svg", {
771
- xmlns: "http://www.w3.org/2000/svg",
772
- viewBox: "0 0 24 24",
773
- fill: "currentColor",
774
- ...wrapperProps(props),
775
- 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" })]
776
- });
777
- const Bluesky = (props) => /* @__PURE__ */ jsxs("svg", {
778
- xmlns: "http://www.w3.org/2000/svg",
779
- viewBox: "0 0 24 24",
780
- fill: "currentColor",
781
- ...wrapperProps(props),
782
- 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" })]
783
- });
784
- const TypeScript = (props) => /* @__PURE__ */ jsxs("svg", {
785
- xmlns: "http://www.w3.org/2000/svg",
786
- fill: "none",
787
- viewBox: "0 0 24 24",
788
- ...wrapperProps(props),
789
- children: [/* @__PURE__ */ jsx("title", { children: "TypeScript" }), /* @__PURE__ */ jsx("path", {
790
- fill: "#2563EB",
791
- 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"
792
- })]
793
- });
794
- const JavaScript = (props) => /* @__PURE__ */ jsxs("svg", {
795
- xmlns: "http://www.w3.org/2000/svg",
796
- fill: "none",
797
- viewBox: "0 0 24 24",
798
- ...wrapperProps(props),
799
- children: [/* @__PURE__ */ jsx("title", { children: "JavaScript" }), /* @__PURE__ */ jsx("path", {
800
- fill: "#F59E0B",
801
- 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"
802
- })]
803
- });
804
- const Json = (props) => /* @__PURE__ */ jsxs("svg", {
805
- xmlns: "http://www.w3.org/2000/svg",
806
- fill: "none",
807
- viewBox: "0 0 24 24",
808
- ...wrapperProps(props),
809
- children: [/* @__PURE__ */ jsx("title", { children: "JSON" }), /* @__PURE__ */ jsx("path", {
810
- fill: "#F59E0B",
811
- 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"
812
- })]
813
- });
814
- const Css = (props) => /* @__PURE__ */ jsxs("svg", {
815
- xmlns: "http://www.w3.org/2000/svg",
816
- fill: "none",
817
- viewBox: "0 0 24 24",
818
- ...wrapperProps(props),
819
- children: [/* @__PURE__ */ jsx("title", { children: "CSS" }), /* @__PURE__ */ jsx("path", {
820
- fill: "#0EA5E9",
821
- 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"
822
- })]
823
- });
824
- const BracketsOrange = (props) => /* @__PURE__ */ jsxs("svg", {
825
- xmlns: "http://www.w3.org/2000/svg",
826
- fill: "none",
827
- viewBox: "0 0 24 24",
828
- ...wrapperProps(props),
829
- children: [/* @__PURE__ */ jsx("title", { children: "HTML" }), /* @__PURE__ */ jsx("path", {
830
- fill: "#EA580C",
831
- 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"
832
- })]
833
- });
834
- const React$1 = (props) => /* @__PURE__ */ jsxs("svg", {
835
- xmlns: "http://www.w3.org/2000/svg",
836
- fill: "none",
837
- viewBox: "0 0 24 24",
838
- ...wrapperProps(props),
839
- children: [
840
- /* @__PURE__ */ jsx("title", { children: "React" }),
841
- /* @__PURE__ */ jsx("path", {
842
- fill: "#0E8ADC",
843
- d: "M12 13.677a1.677 1.677 0 100-3.354 1.677 1.677 0 000 3.354z"
844
- }),
845
- /* @__PURE__ */ jsx("path", {
846
- stroke: "#0E8ADC",
847
- 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"
848
- }),
849
- /* @__PURE__ */ jsx("path", {
850
- stroke: "#0E8ADC",
851
- 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"
852
- }),
853
- /* @__PURE__ */ jsx("path", {
854
- stroke: "#0E8ADC",
855
- 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"
856
- })
857
- ]
858
- });
859
- const Markdown = (props) => /* @__PURE__ */ jsxs("svg", {
860
- xmlns: "http://www.w3.org/2000/svg",
861
- fill: "none",
862
- viewBox: "0 0 24 24",
863
- ...wrapperProps(props),
864
- children: [/* @__PURE__ */ jsx("title", { children: "Markdown" }), /* @__PURE__ */ jsx("path", {
865
- fill: "#60A5FA",
866
- 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"
867
- })]
868
- });
869
- const Shell = (props) => /* @__PURE__ */ jsxs("svg", {
870
- xmlns: "http://www.w3.org/2000/svg",
871
- fill: "none",
872
- viewBox: "0 0 25 24",
873
- ...wrapperProps(props),
874
- children: [/* @__PURE__ */ jsx("title", { children: "Shell" }), /* @__PURE__ */ jsx("path", {
875
- stroke: "#14B8A6",
876
- strokeLinecap: "round",
877
- strokeLinejoin: "round",
878
- strokeWidth: "2",
879
- d: "M4.336 17l6-6-6-6M12.336 19h8"
880
- })]
881
- });
882
- const Yaml = (props) => /* @__PURE__ */ jsxs("svg", {
883
- xmlns: "http://www.w3.org/2000/svg",
884
- fill: "none",
885
- viewBox: "0 0 24 24",
886
- ...wrapperProps(props),
887
- children: [/* @__PURE__ */ jsx("title", { children: "YAML" }), /* @__PURE__ */ jsx("path", {
888
- fill: "#A78BFA",
889
- 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"
890
- })]
891
- });
892
- const Rust = (props) => /* @__PURE__ */ jsxs("svg", {
893
- xmlns: "http://www.w3.org/2000/svg",
894
- fill: "none",
895
- viewBox: "0 0 25 24",
896
- ...wrapperProps(props),
897
- children: [/* @__PURE__ */ jsx("title", { children: "Rust" }), /* @__PURE__ */ jsx("path", {
898
- fill: "#EA580C",
899
- fillRule: "evenodd",
900
- 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",
901
- clipRule: "evenodd"
902
- })]
903
- });
904
- const BracketsRed = (props) => /* @__PURE__ */ jsxs("svg", {
905
- xmlns: "http://www.w3.org/2000/svg",
906
- fill: "none",
907
- viewBox: "0 0 24 24",
908
- ...wrapperProps(props),
909
- children: [/* @__PURE__ */ jsx("title", { children: "Rust" }), /* @__PURE__ */ jsx("path", {
910
- fill: "#F87171",
911
- 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"
912
- })]
913
- });
914
-
915
- //#endregion
916
- export { TextAlignStart as $, ChevronRight as A, Hash as B, RoutesProvider as C, Check as D, ArrowLeft as E, FaceBad as F, Link$2 as G, Info as H, FaceGood as I, Moon as J, Menu as K, FaceRegular as L, Copy as M, CornerDownLeft as N, ChevronDown as O, ExternalLink as P, Sun as Q, File as R, normalizePath as S, AlertTriangle as T, Languages as U, Home as V, Lightbulb as W, Pencil as X, MoreVertical as Y, Search as Z, Link$1 as _, Csv as a, useBoltdocsContext as at, useLocalizedTo as b, JavaScript as c, React$1 as d, X as et, Rust as f, Yaml as g, XSocial as h, Css as i, BoltdocsProvider as it, CircleHelp as j, ChevronLeft as k, Json as l, TypeScript as m, BracketsOrange as n, ConfigContext as nt, Discord as o, Shell as p, Monitor as q, BracketsRed as r, useConfig as rt, Github as s, Bluesky as t, icons_exports as tt, Markdown as u, NavLink as v, AlertCircle as w, useRoutes as x, cn as y, FileText as z };