specra 0.1.0 → 0.1.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 (42) hide show
  1. package/dist/app/docs-page.js +164 -148
  2. package/dist/app/docs-page.js.map +1 -1
  3. package/dist/app/docs-page.mjs +3 -3
  4. package/dist/app/layout.js +84 -5
  5. package/dist/app/layout.js.map +1 -1
  6. package/dist/app/layout.mjs +3 -3
  7. package/dist/{chunk-NXRIAL7T.mjs → chunk-4QHOMV5A.mjs} +8 -5
  8. package/dist/chunk-4QHOMV5A.mjs.map +1 -0
  9. package/dist/{chunk-IZFGEAD6.mjs → chunk-5AYOV2KD.mjs} +5 -4
  10. package/dist/chunk-5AYOV2KD.mjs.map +1 -0
  11. package/dist/chunk-I3ELVEK2.mjs +56 -0
  12. package/dist/chunk-I3ELVEK2.mjs.map +1 -0
  13. package/dist/{chunk-INL2EC72.mjs → chunk-RLMSINLY.mjs} +2 -5
  14. package/dist/{chunk-INL2EC72.mjs.map → chunk-RLMSINLY.mjs.map} +1 -1
  15. package/dist/components/index.d.mts +39 -3
  16. package/dist/components/index.d.ts +39 -3
  17. package/dist/components/index.js +100 -62
  18. package/dist/components/index.js.map +1 -1
  19. package/dist/components/index.mjs +83 -48
  20. package/dist/components/index.mjs.map +1 -1
  21. package/dist/index.d.mts +39 -3
  22. package/dist/index.d.ts +39 -3
  23. package/dist/index.js +129 -94
  24. package/dist/index.js.map +1 -1
  25. package/dist/index.mjs +10 -4
  26. package/dist/index.mjs.map +1 -1
  27. package/dist/lib/index.d.mts +7 -0
  28. package/dist/lib/index.d.ts +7 -0
  29. package/dist/lib/index.js +1 -4
  30. package/dist/lib/index.js.map +1 -1
  31. package/dist/lib/index.mjs +1 -1
  32. package/package.json +2 -2
  33. package/src/app/layout.tsx +6 -3
  34. package/src/components/docs/header.tsx +7 -3
  35. package/src/components/docs/index.ts +3 -0
  36. package/src/lib/config.context.tsx +65 -0
  37. package/src/lib/config.server.ts +9 -5
  38. package/src/lib/index.ts +1 -0
  39. package/dist/chunk-IZFGEAD6.mjs.map +0 -1
  40. package/dist/chunk-MZJHJ6BV.mjs +0 -21
  41. package/dist/chunk-MZJHJ6BV.mjs.map +0 -1
  42. package/dist/chunk-NXRIAL7T.mjs.map +0 -1
@@ -2707,7 +2707,7 @@ function processContentWithEnv(content, config) {
2707
2707
  var configInstance = null;
2708
2708
  function getConfig() {
2709
2709
  if (!configInstance) {
2710
- throw new Error("Specra config has not been initialized");
2710
+ configInstance = loadConfig({});
2711
2711
  }
2712
2712
  return configInstance;
2713
2713
  }
@@ -3145,8 +3145,24 @@ function SearchModal({ isOpen, onClose, config }) {
3145
3145
 
3146
3146
  // src/components/docs/header.tsx
3147
3147
  var import_react16 = require("react");
3148
+
3149
+ // src/lib/config.context.tsx
3150
+ var React2 = __toESM(require("react"));
3148
3151
  var import_jsx_runtime38 = require("react/jsx-runtime");
3149
- function Header({ currentVersion, versions, onMenuClick, config }) {
3152
+ var ConfigContext = React2.createContext(defaultConfig);
3153
+ function useConfig() {
3154
+ const config = React2.useContext(ConfigContext);
3155
+ if (!config) {
3156
+ throw new Error("useConfig must be used within a ConfigProvider");
3157
+ }
3158
+ return config;
3159
+ }
3160
+
3161
+ // src/components/docs/header.tsx
3162
+ var import_jsx_runtime39 = require("react/jsx-runtime");
3163
+ function Header({ currentVersion, versions, onMenuClick, config: configProp }) {
3164
+ const contextConfig = useConfig();
3165
+ const config = configProp || contextConfig;
3150
3166
  const [searchOpen, setSearchOpen] = (0, import_react16.useState)(false);
3151
3167
  (0, import_react16.useEffect)(() => {
3152
3168
  const handleKeyDown = (e) => {
@@ -3158,38 +3174,38 @@ function Header({ currentVersion, versions, onMenuClick, config }) {
3158
3174
  window.addEventListener("keydown", handleKeyDown);
3159
3175
  return () => window.removeEventListener("keydown", handleKeyDown);
3160
3176
  }, []);
3161
- return /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("header", { className: "sticky top-0 z-50 w-full border-b border-border bg-background/95 backdrop-blur supports-backdrop-filter:bg-background/60", children: [
3162
- /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: "container flex h-16 items-center justify-between px-6 mx-auto", children: [
3163
- /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: "flex items-center gap-2", children: [
3164
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
3177
+ return /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("header", { className: "sticky top-0 z-50 w-full border-b border-border bg-background/95 backdrop-blur supports-backdrop-filter:bg-background/60", children: [
3178
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("div", { className: "container flex h-16 items-center justify-between px-6 mx-auto", children: [
3179
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("div", { className: "flex items-center gap-2", children: [
3180
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
3165
3181
  "button",
3166
3182
  {
3167
3183
  onClick: onMenuClick,
3168
3184
  className: "lg:hidden hover:bg-muted p-2 rounded-md transition-colors",
3169
3185
  "aria-label": "Toggle menu",
3170
- children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_lucide_react19.Menu, { className: "h-5 w-5" })
3186
+ children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(import_lucide_react19.Menu, { className: "h-5 w-5" })
3171
3187
  }
3172
3188
  ),
3173
- /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(import_link5.default, { href: "/", className: "flex items-center gap-2", children: [
3174
- config.site.logo ? /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("img", { src: getAssetPath(config.site.logo), alt: config.site.title, className: "h-8 w-auto" }) : /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: "h-8 w-8 rounded-xl bg-primary flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { className: "text-primary-foreground font-bold text-lg", children: config.site.title.charAt(0).toUpperCase() }) }),
3175
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { className: "font-semibold text-lg text-foreground", children: "Specra" })
3189
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)(import_link5.default, { href: "/", className: "flex items-center gap-2", children: [
3190
+ config.site.logo ? /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("img", { src: getAssetPath(config.site.logo), alt: config.site.title, className: "h-8 w-auto" }) : /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("div", { className: "h-8 w-8 rounded-xl bg-primary flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("span", { className: "text-primary-foreground font-bold text-lg", children: config.site.title.charAt(0).toUpperCase() }) }),
3191
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("span", { className: "font-semibold text-lg text-foreground", children: config.site.title ?? "Specra" })
3176
3192
  ] })
3177
3193
  ] }),
3178
- /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: "flex items-center gap-2", children: [
3179
- config.search?.enabled && /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(
3194
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("div", { className: "flex items-center gap-2", children: [
3195
+ config.search?.enabled && /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)(
3180
3196
  "button",
3181
3197
  {
3182
3198
  onClick: () => setSearchOpen(true),
3183
3199
  className: "flex items-center gap-2 px-3 py-2 text-sm text-muted-foreground hover:text-foreground bg-muted rounded-md transition-colors",
3184
3200
  children: [
3185
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_lucide_react19.Search, { className: "h-4 w-4" }),
3186
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { className: "hidden sm:inline", children: config.search.placeholder || "Search" }),
3187
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("kbd", { className: "hidden sm:inline-flex h-5 select-none items-center gap-1 rounded border border-border bg-background px-1.5 font-mono text-xs font-medium", children: "\u2318K" })
3201
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(import_lucide_react19.Search, { className: "h-4 w-4" }),
3202
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("span", { className: "hidden sm:inline", children: config.search.placeholder || "Search" }),
3203
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("kbd", { className: "hidden sm:inline-flex h-5 select-none items-center gap-1 rounded border border-border bg-background px-1.5 font-mono text-xs font-medium", children: "\u2318K" })
3188
3204
  ]
3189
3205
  }
3190
3206
  ),
3191
- config.features?.versioning && /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(VersionSwitcher, { currentVersion, versions }),
3192
- config.social?.github && /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
3207
+ config.features?.versioning && /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(VersionSwitcher, { currentVersion, versions }),
3208
+ config.social?.github && /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
3193
3209
  "a",
3194
3210
  {
3195
3211
  href: config.social.github,
@@ -3197,10 +3213,10 @@ function Header({ currentVersion, versions, onMenuClick, config }) {
3197
3213
  rel: "noopener noreferrer",
3198
3214
  className: "hidden md:flex items-center justify-center h-9 w-9 rounded-md hover:bg-muted transition-colors",
3199
3215
  "aria-label": "GitHub",
3200
- children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_lucide_react19.Github, { className: "h-4 w-4" })
3216
+ children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(import_lucide_react19.Github, { className: "h-4 w-4" })
3201
3217
  }
3202
3218
  ),
3203
- config.social?.twitter && /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
3219
+ config.social?.twitter && /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
3204
3220
  "a",
3205
3221
  {
3206
3222
  href: config.social.twitter,
@@ -3208,10 +3224,10 @@ function Header({ currentVersion, versions, onMenuClick, config }) {
3208
3224
  rel: "noopener noreferrer",
3209
3225
  className: "hidden md:flex items-center justify-center h-9 w-9 rounded-md hover:bg-muted transition-colors",
3210
3226
  "aria-label": "Twitter",
3211
- children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_lucide_react19.Twitter, { className: "h-4 w-4" })
3227
+ children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(import_lucide_react19.Twitter, { className: "h-4 w-4" })
3212
3228
  }
3213
3229
  ),
3214
- config.social?.discord && /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
3230
+ config.social?.discord && /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
3215
3231
  "a",
3216
3232
  {
3217
3233
  href: config.social.discord,
@@ -3219,13 +3235,13 @@ function Header({ currentVersion, versions, onMenuClick, config }) {
3219
3235
  rel: "noopener noreferrer",
3220
3236
  className: "hidden md:flex items-center justify-center h-9 w-9 rounded-md hover:bg-muted transition-colors",
3221
3237
  "aria-label": "Discord",
3222
- children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_lucide_react19.MessageCircle, { className: "h-4 w-4" })
3238
+ children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(import_lucide_react19.MessageCircle, { className: "h-4 w-4" })
3223
3239
  }
3224
3240
  ),
3225
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(ThemeToggle, {})
3241
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(ThemeToggle, {})
3226
3242
  ] })
3227
3243
  ] }),
3228
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(SearchModal, { isOpen: searchOpen, onClose: () => setSearchOpen(false), config })
3244
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(SearchModal, { isOpen: searchOpen, onClose: () => setSearchOpen(false), config })
3229
3245
  ] });
3230
3246
  }
3231
3247
 
@@ -3237,15 +3253,15 @@ var import_react19 = require("react");
3237
3253
 
3238
3254
  // src/components/docs/footer.tsx
3239
3255
  var import_link6 = __toESM(require("next/link"));
3240
- var import_jsx_runtime39 = require("react/jsx-runtime");
3256
+ var import_jsx_runtime40 = require("react/jsx-runtime");
3241
3257
  function Footer({ config }) {
3242
3258
  if (!config.footer) {
3243
3259
  return null;
3244
3260
  }
3245
- return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("footer", { className: "bg-muted/30 dark:bg-muted/10 rounded-2xl mt-24", children: /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("div", { className: "px-6 py-12", children: [
3246
- config.footer.links && config.footer.links.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("div", { className: "grid grid-cols-2 md:grid-cols-4 gap-8 mb-8", children: config.footer.links.map((column, idx) => /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("div", { children: [
3247
- /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("h3", { className: "font-semibold text-foreground mb-4", children: column.title }),
3248
- /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("ul", { className: "space-y-2", children: column.items.map((item, itemIdx) => /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
3261
+ return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("footer", { className: "bg-muted/30 dark:bg-muted/10 rounded-2xl mt-24", children: /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)("div", { className: "px-6 py-12", children: [
3262
+ config.footer.links && config.footer.links.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("div", { className: "grid grid-cols-2 md:grid-cols-4 gap-8 mb-8", children: config.footer.links.map((column, idx) => /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)("div", { children: [
3263
+ /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("h3", { className: "font-semibold text-foreground mb-4", children: column.title }),
3264
+ /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("ul", { className: "space-y-2", children: column.items.map((item, itemIdx) => /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
3249
3265
  import_link6.default,
3250
3266
  {
3251
3267
  href: item.href,
@@ -3254,14 +3270,14 @@ function Footer({ config }) {
3254
3270
  }
3255
3271
  ) }, itemIdx)) })
3256
3272
  ] }, idx)) }),
3257
- config.footer.copyright && /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("div", { className: "pt-8", children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("p", { className: "text-sm text-muted-foreground text-center", children: config.footer.copyright }) })
3273
+ config.footer.copyright && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("div", { className: "pt-8", children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("p", { className: "text-sm text-muted-foreground text-center", children: config.footer.copyright }) })
3258
3274
  ] }) });
3259
3275
  }
3260
3276
 
3261
3277
  // src/components/docs/site-banner.tsx
3262
3278
  var import_lucide_react20 = require("lucide-react");
3263
3279
  var import_react17 = require("react");
3264
- var import_jsx_runtime40 = require("react/jsx-runtime");
3280
+ var import_jsx_runtime41 = require("react/jsx-runtime");
3265
3281
  function SiteBanner({ config }) {
3266
3282
  const [dismissed, setDismissed] = (0, import_react17.useState)(false);
3267
3283
  const [mounted, setMounted] = (0, import_react17.useState)(false);
@@ -3311,23 +3327,23 @@ function SiteBanner({ config }) {
3311
3327
  };
3312
3328
  const type = banner.type || "info";
3313
3329
  const { icon: IconComponent, bg, border, iconColor, textColor } = typeConfig[type];
3314
- return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("div", { className: `w-full border-b ${border} ${bg}`, children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("div", { className: "container mx-auto px-6 py-3", children: /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)("div", { className: "flex items-center gap-3", children: [
3315
- /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(IconComponent, { className: `h-5 w-5 shrink-0 ${iconColor}` }),
3316
- /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("div", { className: "flex-1 min-w-0", children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("p", { className: `text-sm font-medium ${textColor}`, children: banner.message }) }),
3317
- banner.dismissible && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
3330
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("div", { className: `w-full border-b ${border} ${bg}`, children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("div", { className: "container mx-auto px-6 py-3", children: /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)("div", { className: "flex items-center gap-3", children: [
3331
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(IconComponent, { className: `h-5 w-5 shrink-0 ${iconColor}` }),
3332
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("div", { className: "flex-1 min-w-0", children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("p", { className: `text-sm font-medium ${textColor}`, children: banner.message }) }),
3333
+ banner.dismissible && /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
3318
3334
  "button",
3319
3335
  {
3320
3336
  onClick: handleDismiss,
3321
3337
  className: `shrink-0 p-1 rounded-md hover:bg-black/5 dark:hover:bg-white/5 transition-colors ${iconColor}`,
3322
3338
  "aria-label": "Dismiss banner",
3323
- children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_lucide_react20.X, { className: "h-4 w-4" })
3339
+ children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_lucide_react20.X, { className: "h-4 w-4" })
3324
3340
  }
3325
3341
  )
3326
3342
  ] }) }) });
3327
3343
  }
3328
3344
 
3329
3345
  // src/components/docs/tab-groups.tsx
3330
- var import_jsx_runtime41 = require("react/jsx-runtime");
3346
+ var import_jsx_runtime42 = require("react/jsx-runtime");
3331
3347
  function TabGroups({ tabGroups, activeTabId, onTabChange }) {
3332
3348
  const activeTab = activeTabId || tabGroups[0]?.id || "";
3333
3349
  const handleTabChange = (tabId) => {
@@ -3336,16 +3352,16 @@ function TabGroups({ tabGroups, activeTabId, onTabChange }) {
3336
3352
  if (!tabGroups || tabGroups.length === 0) {
3337
3353
  return null;
3338
3354
  }
3339
- return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("div", { className: "sticky top-16 z-30 border-b border-border bg-background/95 backdrop-blur supports-[backdrop-filter]:bg-background/60", children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("div", { className: "container mx-auto px-6", children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("nav", { className: "flex gap-1 overflow-x-auto no-scrollbar", "aria-label": "Documentation tabs", children: tabGroups.map((tab) => {
3355
+ return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { className: "sticky top-16 z-30 border-b border-border bg-background/95 backdrop-blur supports-[backdrop-filter]:bg-background/60", children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { className: "container mx-auto px-6", children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("nav", { className: "flex gap-1 overflow-x-auto no-scrollbar", "aria-label": "Documentation tabs", children: tabGroups.map((tab) => {
3340
3356
  const isActive = tab.id === activeTab;
3341
- return /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(
3357
+ return /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
3342
3358
  "button",
3343
3359
  {
3344
3360
  onClick: () => handleTabChange(tab.id),
3345
3361
  className: `flex items-center gap-2 px-4 py-3 text-sm font-medium whitespace-nowrap transition-all border-b-2 ${isActive ? "border-primary text-primary" : "border-transparent text-muted-foreground hover:text-foreground hover:border-border"}`,
3346
3362
  "aria-current": isActive ? "page" : void 0,
3347
3363
  children: [
3348
- tab.icon && /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(Icon, { icon: tab.icon, size: 16, className: "shrink-0" }),
3364
+ tab.icon && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Icon, { icon: tab.icon, size: 16, className: "shrink-0" }),
3349
3365
  tab.label
3350
3366
  ]
3351
3367
  },
@@ -3359,7 +3375,7 @@ var import_link7 = __toESM(require("next/link"));
3359
3375
  var import_navigation4 = require("next/navigation");
3360
3376
  var import_lucide_react21 = require("lucide-react");
3361
3377
  var import_react18 = require("react");
3362
- var import_jsx_runtime42 = require("react/jsx-runtime");
3378
+ var import_jsx_runtime43 = require("react/jsx-runtime");
3363
3379
  function Sidebar({ docs, version, onLinkClick, config, activeTabGroup }) {
3364
3380
  const pathname = (0, import_navigation4.usePathname)();
3365
3381
  const [collapsed, setCollapsed] = (0, import_react18.useState)(() => {
@@ -3464,21 +3480,21 @@ function Sidebar({ docs, version, onLinkClick, config, activeTabGroup }) {
3464
3480
  const isCollapsed = hasActiveItem || isGroupActive ? false : collapsed[groupKey] ?? group.defaultCollapsed;
3465
3481
  const marginLeft = depth > 0 ? "ml-4" : "";
3466
3482
  const groupHref = `/docs/${version}/${group.path}`;
3467
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("div", { className: `space-y-1 ${marginLeft}`, children: [
3468
- /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("div", { className: "flex items-center group", children: [
3469
- /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
3483
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("div", { className: `space-y-1 ${marginLeft}`, children: [
3484
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("div", { className: "flex items-center group", children: [
3485
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(
3470
3486
  import_link7.default,
3471
3487
  {
3472
3488
  href: groupHref,
3473
3489
  onClick: onLinkClick,
3474
3490
  className: `flex items-center gap-2 flex-1 px-3 py-2 text-sm font-semibold rounded-l-xl transition-all ${isGroupActive ? "bg-primary/10 text-primary" : "text-foreground hover:bg-accent/50"}`,
3475
3491
  children: [
3476
- group.icon ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Icon, { icon: group.icon, size: 16, className: "shrink-0" }) : /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_lucide_react21.FolderOpen, { size: 16, className: "shrink-0" }),
3492
+ group.icon ? /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(Icon, { icon: group.icon, size: 16, className: "shrink-0" }) : /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_lucide_react21.FolderOpen, { size: 16, className: "shrink-0" }),
3477
3493
  group.label
3478
3494
  ]
3479
3495
  }
3480
3496
  ),
3481
- hasContent && group.collapsible && config.navigation?.collapsibleSidebar && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
3497
+ hasContent && group.collapsible && config.navigation?.collapsibleSidebar && /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
3482
3498
  "button",
3483
3499
  {
3484
3500
  onClick: (e) => {
@@ -3488,11 +3504,11 @@ function Sidebar({ docs, version, onLinkClick, config, activeTabGroup }) {
3488
3504
  },
3489
3505
  className: `p-2 rounded-r-xl transition-all ${isGroupActive ? "hover:bg-primary/20" : "hover:bg-accent/50"}`,
3490
3506
  "aria-label": isCollapsed ? "Expand section" : "Collapse section",
3491
- children: isCollapsed ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_lucide_react21.ChevronRight, { className: `h-4 w-4 ${isGroupActive ? "text-primary" : "text-muted-foreground"}` }) : /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_lucide_react21.ChevronDown, { className: `h-4 w-4 ${isGroupActive ? "text-primary" : "text-muted-foreground"}` })
3507
+ children: isCollapsed ? /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_lucide_react21.ChevronRight, { className: `h-4 w-4 ${isGroupActive ? "text-primary" : "text-muted-foreground"}` }) : /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_lucide_react21.ChevronDown, { className: `h-4 w-4 ${isGroupActive ? "text-primary" : "text-muted-foreground"}` })
3492
3508
  }
3493
3509
  )
3494
3510
  ] }),
3495
- !isCollapsed && hasContent && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { className: "ml-4 space-y-1", children: (() => {
3511
+ !isCollapsed && hasContent && /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("div", { className: "ml-4 space-y-1", children: (() => {
3496
3512
  const merged = [
3497
3513
  ...sortedChildren.map(([childKey, childGroup]) => ({
3498
3514
  type: "group",
@@ -3513,14 +3529,14 @@ function Sidebar({ docs, version, onLinkClick, config, activeTabGroup }) {
3513
3529
  } else {
3514
3530
  const href = `/docs/${version}/${item.doc.slug}`;
3515
3531
  const isActive = pathname === href;
3516
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
3532
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(
3517
3533
  import_link7.default,
3518
3534
  {
3519
3535
  href,
3520
3536
  onClick: onLinkClick,
3521
3537
  className: `flex items-center gap-2 px-3 py-2 text-sm rounded-xl transition-all ${isActive ? "bg-primary/10 text-primary font-medium" : "text-foreground hover:text-foreground hover:bg-accent/50"}`,
3522
3538
  children: [
3523
- item.doc.meta?.icon && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Icon, { icon: item.doc.meta.icon, size: 16, className: "shrink-0" }),
3539
+ item.doc.meta?.icon && /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(Icon, { icon: item.doc.meta.icon, size: 16, className: "shrink-0" }),
3524
3540
  item.doc.title
3525
3541
  ]
3526
3542
  },
@@ -3535,20 +3551,20 @@ function Sidebar({ docs, version, onLinkClick, config, activeTabGroup }) {
3535
3551
  const sortedStandalone = sortSidebarItems(standalone);
3536
3552
  const stickyTop = hasTabGroups ? "top-[7.5rem]" : "top-24";
3537
3553
  const maxHeight = hasTabGroups ? "max-h-[calc(100vh-10rem)]" : "max-h-[calc(100vh-7rem)]";
3538
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("aside", { className: `w-64 shrink-0 sticky ${stickyTop} self-start`, children: /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("div", { className: `${maxHeight} overflow-y-auto bg-muted/30 dark:bg-muted/10 rounded-2xl p-4 border border-border/50`, children: [
3539
- /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("h2", { className: "text-xs font-semibold text-muted-foreground uppercase tracking-wider mb-4 px-2", children: "Documentation" }),
3540
- /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("nav", { className: "space-y-1", children: [
3554
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("aside", { className: `w-64 shrink-0 sticky ${stickyTop} self-start`, children: /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("div", { className: `${maxHeight} overflow-y-auto bg-muted/30 dark:bg-muted/10 rounded-2xl p-4 border border-border/50`, children: [
3555
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("h2", { className: "text-xs font-semibold text-muted-foreground uppercase tracking-wider mb-4 px-2", children: "Documentation" }),
3556
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("nav", { className: "space-y-1", children: [
3541
3557
  sortedStandalone.length > 0 && sortedStandalone.map((doc) => {
3542
3558
  const href = `/docs/${version}/${doc.slug}`;
3543
3559
  const isActive = pathname === href;
3544
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
3560
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(
3545
3561
  import_link7.default,
3546
3562
  {
3547
3563
  href,
3548
3564
  onClick: onLinkClick,
3549
3565
  className: `flex items-center gap-2 px-3 py-2 text-sm rounded-xl transition-all ${isActive ? "bg-primary/10 text-primary font-medium" : "text-foreground hover:text-foreground hover:bg-accent/50"}`,
3550
3566
  children: [
3551
- doc.meta?.icon && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Icon, { icon: doc.meta.icon, size: 16, className: "shrink-0" }),
3567
+ doc.meta?.icon && /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(Icon, { icon: doc.meta.icon, size: 16, className: "shrink-0" }),
3552
3568
  doc.title
3553
3569
  ]
3554
3570
  },
@@ -3561,7 +3577,7 @@ function Sidebar({ docs, version, onLinkClick, config, activeTabGroup }) {
3561
3577
  }
3562
3578
 
3563
3579
  // src/components/docs/mobile-doc-layout.tsx
3564
- var import_jsx_runtime43 = require("react/jsx-runtime");
3580
+ var import_jsx_runtime44 = require("react/jsx-runtime");
3565
3581
  function MobileDocLayout({ header, docs, version, content, toc, config, activeTabGroup, onTabChange }) {
3566
3582
  const [sidebarOpen, setSidebarOpen] = (0, import_react19.useState)(false);
3567
3583
  const handleTabChange = (tabId) => {
@@ -3572,10 +3588,10 @@ function MobileDocLayout({ header, docs, version, content, toc, config, activeTa
3572
3588
  const headerWithProps = (0, import_react19.isValidElement)(header) ? (0, import_react19.cloneElement)(header, {
3573
3589
  onMenuClick: toggleSidebar
3574
3590
  }) : header;
3575
- return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("div", { className: "min-h-screen bg-background", children: [
3591
+ return /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { className: "min-h-screen bg-background", children: [
3576
3592
  headerWithProps,
3577
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(SiteBanner, { config }),
3578
- config.navigation?.tabGroups && config.navigation.tabGroups.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
3593
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(SiteBanner, { config }),
3594
+ config.navigation?.tabGroups && config.navigation.tabGroups.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
3579
3595
  TabGroups,
3580
3596
  {
3581
3597
  tabGroups: config.navigation.tabGroups,
@@ -3583,18 +3599,18 @@ function MobileDocLayout({ header, docs, version, content, toc, config, activeTa
3583
3599
  onTabChange: handleTabChange
3584
3600
  }
3585
3601
  ),
3586
- sidebarOpen && /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
3602
+ sidebarOpen && /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
3587
3603
  "div",
3588
3604
  {
3589
3605
  className: "lg:hidden fixed inset-0 bg-background/80 backdrop-blur-sm z-40",
3590
3606
  onClick: () => setSidebarOpen(false)
3591
3607
  }
3592
3608
  ),
3593
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
3609
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
3594
3610
  "div",
3595
3611
  {
3596
3612
  className: `lg:hidden fixed top-0 left-0 h-full w-64 bg-background border-r border-border z-40 transform transition-transform duration-300 ease-in-out overflow-y-auto ${sidebarOpen ? "translate-x-0" : "-translate-x-full"}`,
3597
- children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("div", { className: "pt-20 px-4", children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
3613
+ children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "pt-20 px-4", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
3598
3614
  Sidebar,
3599
3615
  {
3600
3616
  docs,
@@ -3606,8 +3622,8 @@ function MobileDocLayout({ header, docs, version, content, toc, config, activeTa
3606
3622
  ) })
3607
3623
  }
3608
3624
  ),
3609
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("main", { className: "container mx-auto px-6 py-8", children: /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("div", { className: "flex", children: [
3610
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("div", { className: "hidden lg:block", children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
3625
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("main", { className: "container mx-auto px-6 py-8", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { className: "flex", children: [
3626
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "hidden lg:block", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
3611
3627
  Sidebar,
3612
3628
  {
3613
3629
  docs,
@@ -3616,9 +3632,9 @@ function MobileDocLayout({ header, docs, version, content, toc, config, activeTa
3616
3632
  activeTabGroup
3617
3633
  }
3618
3634
  ) }),
3619
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("div", { className: "flex-1 min-w-0", children: /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("div", { className: "flex flex-col gap-2 px-2 md:px-8", children: [
3635
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "flex-1 min-w-0", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { className: "flex flex-col gap-2 px-2 md:px-8", children: [
3620
3636
  content,
3621
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(Footer, { config })
3637
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(Footer, { config })
3622
3638
  ] }) }),
3623
3639
  toc
3624
3640
  ] }) })
@@ -3627,7 +3643,7 @@ function MobileDocLayout({ header, docs, version, content, toc, config, activeTa
3627
3643
 
3628
3644
  // src/components/docs/tab-context.tsx
3629
3645
  var import_react20 = require("react");
3630
- var import_jsx_runtime44 = require("react/jsx-runtime");
3646
+ var import_jsx_runtime45 = require("react/jsx-runtime");
3631
3647
  var TabContext = (0, import_react20.createContext)(void 0);
3632
3648
  function useTabContext() {
3633
3649
  const context = (0, import_react20.useContext)(TabContext);
@@ -3638,7 +3654,7 @@ function useTabContext() {
3638
3654
  }
3639
3655
 
3640
3656
  // src/components/docs/doc-layout-wrapper.tsx
3641
- var import_jsx_runtime45 = require("react/jsx-runtime");
3657
+ var import_jsx_runtime46 = require("react/jsx-runtime");
3642
3658
  function DocLayoutWrapper({ header, docs, version, content, toc, config, currentPageTabGroup }) {
3643
3659
  const { activeTabGroup, setActiveTabGroup } = useTabContext();
3644
3660
  const lastPageTabGroupRef = (0, import_react21.useRef)(void 0);
@@ -3655,7 +3671,7 @@ function DocLayoutWrapper({ header, docs, version, content, toc, config, current
3655
3671
  lastPageTabGroupRef.current = currentPageTabGroup;
3656
3672
  }
3657
3673
  }, [currentPageTabGroup, setActiveTabGroup]);
3658
- return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
3674
+ return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
3659
3675
  MobileDocLayout,
3660
3676
  {
3661
3677
  header,
@@ -3674,7 +3690,7 @@ function DocLayoutWrapper({ header, docs, version, content, toc, config, current
3674
3690
  var import_react22 = require("react");
3675
3691
  var import_navigation5 = require("next/navigation");
3676
3692
  var import_lucide_react22 = require("lucide-react");
3677
- var import_jsx_runtime46 = require("react/jsx-runtime");
3693
+ var import_jsx_runtime47 = require("react/jsx-runtime");
3678
3694
  function HotReloadIndicator() {
3679
3695
  const [isReloading, setIsReloading] = (0, import_react22.useState)(false);
3680
3696
  const [lastReload, setLastReload] = (0, import_react22.useState)(null);
@@ -3709,14 +3725,14 @@ function HotReloadIndicator() {
3709
3725
  };
3710
3726
  }, []);
3711
3727
  if (process.env.NODE_ENV !== "development") return null;
3712
- return /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(import_jsx_runtime46.Fragment, { children: [
3713
- isReloading && /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)("div", { className: "fixed bottom-4 right-4 z-50 flex items-center gap-2 px-4 py-2 bg-primary text-primary-foreground rounded-xl shadow-lg animate-in slide-in-from-bottom-2", children: [
3714
- /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_lucide_react22.RefreshCw, { className: "h-4 w-4 animate-spin" }),
3715
- /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("span", { className: "text-sm font-medium", children: "Reloading..." })
3728
+ return /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(import_jsx_runtime47.Fragment, { children: [
3729
+ isReloading && /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)("div", { className: "fixed bottom-4 right-4 z-50 flex items-center gap-2 px-4 py-2 bg-primary text-primary-foreground rounded-xl shadow-lg animate-in slide-in-from-bottom-2", children: [
3730
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react22.RefreshCw, { className: "h-4 w-4 animate-spin" }),
3731
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "text-sm font-medium", children: "Reloading..." })
3716
3732
  ] }),
3717
- lastReload && !isReloading && /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)("div", { className: "fixed bottom-4 right-4 z-50 flex items-center gap-2 px-4 py-2 bg-green-500 text-white rounded-xl shadow-lg animate-in slide-in-from-bottom-2", children: [
3718
- /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_lucide_react22.RefreshCw, { className: "h-4 w-4" }),
3719
- /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)("span", { className: "text-sm font-medium", children: [
3733
+ lastReload && !isReloading && /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)("div", { className: "fixed bottom-4 right-4 z-50 flex items-center gap-2 px-4 py-2 bg-green-500 text-white rounded-xl shadow-lg animate-in slide-in-from-bottom-2", children: [
3734
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react22.RefreshCw, { className: "h-4 w-4" }),
3735
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)("span", { className: "text-sm font-medium", children: [
3720
3736
  "Updated at ",
3721
3737
  lastReload.toLocaleTimeString()
3722
3738
  ] })
@@ -3727,7 +3743,7 @@ function HotReloadIndicator() {
3727
3743
  // src/components/docs/dev-mode-badge.tsx
3728
3744
  var import_react23 = require("react");
3729
3745
  var import_lucide_react23 = require("lucide-react");
3730
- var import_jsx_runtime47 = require("react/jsx-runtime");
3746
+ var import_jsx_runtime48 = require("react/jsx-runtime");
3731
3747
  function DevModeBadge() {
3732
3748
  const [isConnected, setIsConnected] = (0, import_react23.useState)(true);
3733
3749
  (0, import_react23.useEffect)(() => {
@@ -3743,10 +3759,10 @@ function DevModeBadge() {
3743
3759
  };
3744
3760
  }, []);
3745
3761
  if (process.env.NODE_ENV !== "development") return null;
3746
- return /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)("div", { className: "fixed top-20 left-4 z-40 flex items-center gap-2 px-3 py-1.5 bg-orange-500/10 text-orange-600 dark:text-orange-400 border border-orange-500/20 rounded-full text-xs font-medium", children: [
3747
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react23.Code2, { className: "h-3 w-3" }),
3748
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { children: "Dev Mode" }),
3749
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("div", { className: `h-2 w-2 rounded-full ${isConnected ? "bg-green-500" : "bg-red-500"} animate-pulse` })
3762
+ return /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("div", { className: "fixed top-20 left-4 z-40 flex items-center gap-2 px-3 py-1.5 bg-orange-500/10 text-orange-600 dark:text-orange-400 border border-orange-500/20 rounded-full text-xs font-medium", children: [
3763
+ /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(import_lucide_react23.Code2, { className: "h-3 w-3" }),
3764
+ /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("span", { children: "Dev Mode" }),
3765
+ /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("div", { className: `h-2 w-2 rounded-full ${isConnected ? "bg-green-500" : "bg-red-500"} animate-pulse` })
3750
3766
  ] });
3751
3767
  }
3752
3768
 
@@ -3784,7 +3800,7 @@ var import_lucide_react24 = require("lucide-react");
3784
3800
  var import_rsc2 = require("next-mdx-remote/rsc");
3785
3801
  var import_remark_gfm2 = __toESM(require("remark-gfm"));
3786
3802
  var import_rehype_slug2 = __toESM(require("rehype-slug"));
3787
- var import_jsx_runtime48 = require("react/jsx-runtime");
3803
+ var import_jsx_runtime49 = require("react/jsx-runtime");
3788
3804
  function CategoryIndex({ categoryPath, version, allDocs, title, description, content, config }) {
3789
3805
  const childDocs = allDocs.filter((doc) => {
3790
3806
  const parts = doc.slug.split("/");
@@ -3798,11 +3814,11 @@ function CategoryIndex({ categoryPath, version, allDocs, title, description, con
3798
3814
  return "";
3799
3815
  };
3800
3816
  const sortedDocs = sortSidebarItems(childDocs);
3801
- return /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("div", { className: "flex-1 min-w-0", children: [
3802
- /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("div", { className: "mb-8", children: [
3803
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("h1", { className: "text-4xl font-bold tracking-tight mb-3 text-foreground", children: title }),
3804
- description && /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("p", { className: "text-lg text-muted-foreground leading-relaxed", children: description }),
3805
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("div", { className: "prose prose-slate dark:prose-invert max-w-none prose-headings:scroll-mt-24 prose-headings:font-semibold prose-h1:text-4xl prose-h2:text-3xl prose-h2:mt-12 prose-h2:mb-4 prose-h3:text-2xl prose-h3:mt-8 prose-h3:mb-3 prose-p:text-base prose-p:leading-7 prose-p:text-muted-foreground prose-p:mb-4 prose-a:font-normal prose-a:transition-all prose-code:text-primary prose-code:bg-muted/50 prose-code:px-1.5 prose-code:py-0.5 prose-code:rounded-md prose-code:text-[13px] prose-code:font-mono prose-code:border prose-code:border-border/50 prose-code:before:content-none prose-code:after:content-none prose-pre:bg-transparent prose-pre:p-0 prose-ul:list-disc prose-ul:list-inside prose-ul:space-y-2 prose-ul:mb-4 prose-ol:list-decimal prose-ol:list-inside prose-ol:space-y-2 prose-ol:mb-4 prose-li:leading-7 prose-li:text-muted-foreground prose-strong:text-foreground prose-strong:font-semibold", children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
3817
+ return /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("div", { className: "flex-1 min-w-0", children: [
3818
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("div", { className: "mb-8", children: [
3819
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("h1", { className: "text-4xl font-bold tracking-tight mb-3 text-foreground", children: title }),
3820
+ description && /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("p", { className: "text-lg text-muted-foreground leading-relaxed", children: description }),
3821
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("div", { className: "prose prose-slate dark:prose-invert max-w-none prose-headings:scroll-mt-24 prose-headings:font-semibold prose-h1:text-4xl prose-h2:text-3xl prose-h2:mt-12 prose-h2:mb-4 prose-h3:text-2xl prose-h3:mt-8 prose-h3:mb-3 prose-p:text-base prose-p:leading-7 prose-p:text-muted-foreground prose-p:mb-4 prose-a:font-normal prose-a:transition-all prose-code:text-primary prose-code:bg-muted/50 prose-code:px-1.5 prose-code:py-0.5 prose-code:rounded-md prose-code:text-[13px] prose-code:font-mono prose-code:border prose-code:border-border/50 prose-code:before:content-none prose-code:after:content-none prose-pre:bg-transparent prose-pre:p-0 prose-ul:list-disc prose-ul:list-inside prose-ul:space-y-2 prose-ul:mb-4 prose-ol:list-decimal prose-ol:list-inside prose-ol:space-y-2 prose-ol:mb-4 prose-li:leading-7 prose-li:text-muted-foreground prose-strong:text-foreground prose-strong:font-semibold", children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
3806
3822
  import_rsc2.MDXRemote,
3807
3823
  {
3808
3824
  source: processedContent(),
@@ -3818,7 +3834,7 @@ function CategoryIndex({ categoryPath, version, allDocs, title, description, con
3818
3834
  }
3819
3835
  ) })
3820
3836
  ] }),
3821
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("div", { className: "grid grid-cols-1 sm:grid-cols-2 md:grid-cols-2 lg:grid-cols-3 gap-4", children: sortedDocs.map((doc) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
3837
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("div", { className: "grid grid-cols-1 sm:grid-cols-2 md:grid-cols-2 lg:grid-cols-3 gap-4", children: sortedDocs.map((doc) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
3822
3838
  import_link8.default,
3823
3839
  {
3824
3840
  href: `/docs/${version}/${doc.slug}`,
@@ -3826,26 +3842,26 @@ function CategoryIndex({ categoryPath, version, allDocs, title, description, con
3826
3842
  style: {
3827
3843
  textDecoration: "none !important"
3828
3844
  },
3829
- children: /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("div", { className: "flex items-start justify-between gap-4", children: [
3830
- /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("div", { className: "flex-1 min-w-0", children: [
3831
- /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("div", { className: "flex items-center gap-2 mb-2", children: [
3832
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(import_lucide_react24.FileText, { className: "h-6 w-6 text-primary shrink-0" }),
3833
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("h3", { className: "text-lg font-semibold text-foreground group-hover:text-primary transition-colors", children: doc.meta.title || doc.title })
3845
+ children: /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("div", { className: "flex items-start justify-between gap-4", children: [
3846
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("div", { className: "flex-1 min-w-0", children: [
3847
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("div", { className: "flex items-center gap-2 mb-2", children: [
3848
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_lucide_react24.FileText, { className: "h-6 w-6 text-primary shrink-0" }),
3849
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("h3", { className: "text-lg font-semibold text-foreground group-hover:text-primary transition-colors", children: doc.meta.title || doc.title })
3834
3850
  ] }),
3835
- doc.meta.description && /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("p", { className: "text-sm text-muted-foreground line-clamp-2", children: doc.meta.description }),
3836
- doc.meta.reading_time && /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("p", { className: "text-xs text-muted-foreground mt-2", children: [
3851
+ doc.meta.description && /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("p", { className: "text-sm text-muted-foreground line-clamp-2", children: doc.meta.description }),
3852
+ doc.meta.reading_time && /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("p", { className: "text-xs text-muted-foreground mt-2", children: [
3837
3853
  doc.meta.reading_time,
3838
3854
  " min read"
3839
3855
  ] })
3840
3856
  ] }),
3841
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(import_lucide_react24.ChevronRight, { className: "h-5 w-5 text-muted-foreground group-hover:text-primary group-hover:translate-x-1 transition-all flex-shrink-0 mt-1" })
3857
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_lucide_react24.ChevronRight, { className: "h-5 w-5 text-muted-foreground group-hover:text-primary group-hover:translate-x-1 transition-all flex-shrink-0 mt-1" })
3842
3858
  ] })
3843
3859
  },
3844
3860
  doc.slug
3845
3861
  )) }),
3846
- sortedDocs.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("div", { className: "text-center py-12 text-muted-foreground", children: [
3847
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(import_lucide_react24.FileText, { className: "h-12 w-12 mx-auto mb-3 opacity-50" }),
3848
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("p", { children: "No documents found in this category." })
3862
+ sortedDocs.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("div", { className: "text-center py-12 text-muted-foreground", children: [
3863
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_lucide_react24.FileText, { className: "h-12 w-12 mx-auto mb-3 opacity-50" }),
3864
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("p", { children: "No documents found in this category." })
3849
3865
  ] })
3850
3866
  ] });
3851
3867
  }
@@ -3853,43 +3869,43 @@ function CategoryIndex({ categoryPath, version, allDocs, title, description, con
3853
3869
  // src/components/docs/not-found-content.tsx
3854
3870
  var import_link9 = __toESM(require("next/link"));
3855
3871
  var import_lucide_react25 = require("lucide-react");
3856
- var import_jsx_runtime49 = require("react/jsx-runtime");
3872
+ var import_jsx_runtime50 = require("react/jsx-runtime");
3857
3873
  function NotFoundContent({ version }) {
3858
- return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("div", { className: "flex min-h-[calc(100vh-12rem)] items-center justify-center px-4 py-12", children: /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("div", { className: "w-full max-w-2xl text-center", children: [
3859
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("div", { className: "mb-6 flex justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("div", { className: "rounded-full bg-yellow-500/10 p-4", children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_lucide_react25.AlertTriangle, { className: "h-16 w-16 text-yellow-500" }) }) }),
3860
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("h1", { className: "mb-3 text-5xl font-bold tracking-tight", children: "404" }),
3861
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("h2", { className: "mb-4 text-2xl font-semibold", children: "Page Not Found" }),
3862
- /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("p", { className: "mb-8 text-base text-muted-foreground", children: [
3874
+ return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "flex min-h-[calc(100vh-12rem)] items-center justify-center px-4 py-12", children: /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "w-full max-w-2xl text-center", children: [
3875
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "mb-6 flex justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "rounded-full bg-yellow-500/10 p-4", children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_lucide_react25.AlertTriangle, { className: "h-16 w-16 text-yellow-500" }) }) }),
3876
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("h1", { className: "mb-3 text-5xl font-bold tracking-tight", children: "404" }),
3877
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("h2", { className: "mb-4 text-2xl font-semibold", children: "Page Not Found" }),
3878
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("p", { className: "mb-8 text-base text-muted-foreground", children: [
3863
3879
  "The documentation page you're looking for doesn't exist or may have been moved.",
3864
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("br", {}),
3880
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("br", {}),
3865
3881
  "Try using the sidebar to find what you're looking for, or return to the documentation home."
3866
3882
  ] }),
3867
- /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("div", { className: "flex flex-col items-center justify-center gap-3 sm:flex-row", children: [
3868
- /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)(
3883
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "flex flex-col items-center justify-center gap-3 sm:flex-row", children: [
3884
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(
3869
3885
  import_link9.default,
3870
3886
  {
3871
3887
  href: `/docs/${version}`,
3872
3888
  className: "inline-flex items-center gap-2 rounded-lg bg-primary px-6 py-3 text-sm font-medium text-primary-foreground hover:bg-primary/90 transition-colors",
3873
3889
  children: [
3874
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_lucide_react25.ArrowLeft, { className: "h-4 w-4" }),
3890
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_lucide_react25.ArrowLeft, { className: "h-4 w-4" }),
3875
3891
  "Back to Documentation"
3876
3892
  ]
3877
3893
  }
3878
3894
  ),
3879
- /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)(
3895
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(
3880
3896
  import_link9.default,
3881
3897
  {
3882
3898
  href: "/",
3883
3899
  className: "inline-flex items-center gap-2 rounded-lg border border-border bg-background px-6 py-3 text-sm font-medium hover:bg-muted transition-colors",
3884
3900
  children: [
3885
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_lucide_react25.Home, { className: "h-4 w-4" }),
3901
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_lucide_react25.Home, { className: "h-4 w-4" }),
3886
3902
  "Go to Homepage"
3887
3903
  ]
3888
3904
  }
3889
3905
  )
3890
3906
  ] }),
3891
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("div", { className: "mt-12 rounded-lg border border-border bg-muted/30 p-6", children: /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("p", { className: "text-sm text-muted-foreground", children: [
3892
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("strong", { className: "font-medium text-foreground", children: "Tip:" }),
3907
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "mt-12 rounded-lg border border-border bg-muted/30 p-6", children: /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("p", { className: "text-sm text-muted-foreground", children: [
3908
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("strong", { className: "font-medium text-foreground", children: "Tip:" }),
3893
3909
  " Use the sidebar navigation on the left to browse all available documentation pages."
3894
3910
  ] }) })
3895
3911
  ] }) });
@@ -3899,21 +3915,21 @@ function NotFoundContent({ version }) {
3899
3915
  var import_react25 = require("react");
3900
3916
 
3901
3917
  // src/components/docs/doc-loading.tsx
3902
- var import_jsx_runtime50 = require("react/jsx-runtime");
3918
+ var import_jsx_runtime51 = require("react/jsx-runtime");
3903
3919
  function DocLoading() {
3904
- return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "max-w-4xl mx-auto px-6 py-8", children: /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "animate-pulse space-y-4", children: [
3905
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "h-8 bg-gray-200 rounded w-3/4" }),
3906
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "h-4 bg-gray-200 rounded w-1/2" }),
3907
- /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "space-y-3 mt-8", children: [
3908
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "h-4 bg-gray-200 rounded" }),
3909
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "h-4 bg-gray-200 rounded w-5/6" }),
3910
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "h-4 bg-gray-200 rounded w-4/6" })
3920
+ return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "max-w-4xl mx-auto px-6 py-8", children: /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("div", { className: "animate-pulse space-y-4", children: [
3921
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "h-8 bg-gray-200 rounded w-3/4" }),
3922
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "h-4 bg-gray-200 rounded w-1/2" }),
3923
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("div", { className: "space-y-3 mt-8", children: [
3924
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "h-4 bg-gray-200 rounded" }),
3925
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "h-4 bg-gray-200 rounded w-5/6" }),
3926
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "h-4 bg-gray-200 rounded w-4/6" })
3911
3927
  ] })
3912
3928
  ] }) });
3913
3929
  }
3914
3930
 
3915
3931
  // src/app/docs-page.tsx
3916
- var import_jsx_runtime51 = require("react/jsx-runtime");
3932
+ var import_jsx_runtime52 = require("react/jsx-runtime");
3917
3933
  async function generateMetadata({ params }) {
3918
3934
  const { version, slug: slugArray } = await params;
3919
3935
  const slug = slugArray.join("/");
@@ -3973,14 +3989,14 @@ async function DocPage({ params }) {
3973
3989
  if (!doc && isCategory) {
3974
3990
  const categoryDoc = allDocs.find((d) => d.slug.startsWith(slug + "/"));
3975
3991
  const categoryTabGroup = categoryDoc?.meta?.tab_group || categoryDoc?.categoryTabGroup;
3976
- return /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(import_jsx_runtime51.Fragment, { children: [
3977
- /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
3992
+ return /* @__PURE__ */ (0, import_jsx_runtime52.jsxs)(import_jsx_runtime52.Fragment, { children: [
3993
+ /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
3978
3994
  DocLayoutWrapper,
3979
3995
  {
3980
- header: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(Header, { currentVersion: version, versions, config }),
3996
+ header: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(Header, { currentVersion: version, versions, config }),
3981
3997
  docs: allDocs,
3982
3998
  version,
3983
- content: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
3999
+ content: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
3984
4000
  CategoryIndex,
3985
4001
  {
3986
4002
  categoryPath: slug,
@@ -3991,47 +4007,47 @@ async function DocPage({ params }) {
3991
4007
  config
3992
4008
  }
3993
4009
  ),
3994
- toc: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", {}),
4010
+ toc: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("div", {}),
3995
4011
  config,
3996
4012
  currentPageTabGroup: categoryTabGroup
3997
4013
  }
3998
4014
  ),
3999
- /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(MdxHotReload, {}),
4000
- /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(HotReloadIndicator, {}),
4001
- /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(DevModeBadge, {})
4015
+ /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(MdxHotReload, {}),
4016
+ /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(HotReloadIndicator, {}),
4017
+ /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(DevModeBadge, {})
4002
4018
  ] });
4003
4019
  }
4004
4020
  if (!doc) {
4005
- return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_jsx_runtime51.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(import_react25.Suspense, { fallback: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(DocLoading, {}), children: [
4006
- /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
4021
+ return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_jsx_runtime52.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime52.jsxs)(import_react25.Suspense, { fallback: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(DocLoading, {}), children: [
4022
+ /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
4007
4023
  DocLayoutWrapper,
4008
4024
  {
4009
- header: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(Header, { currentVersion: version, versions, config }),
4025
+ header: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(Header, { currentVersion: version, versions, config }),
4010
4026
  docs: allDocs,
4011
4027
  version,
4012
- content: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(NotFoundContent, { version }),
4013
- toc: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", {}),
4028
+ content: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(NotFoundContent, { version }),
4029
+ toc: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("div", {}),
4014
4030
  config,
4015
4031
  currentPageTabGroup: void 0
4016
4032
  }
4017
4033
  ),
4018
- /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(MdxHotReload, {}),
4019
- /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(HotReloadIndicator, {}),
4020
- /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(DevModeBadge, {})
4034
+ /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(MdxHotReload, {}),
4035
+ /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(HotReloadIndicator, {}),
4036
+ /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(DevModeBadge, {})
4021
4037
  ] }) });
4022
4038
  }
4023
4039
  const toc = extractTableOfContents(doc.content);
4024
4040
  const { previous, next } = getAdjacentDocs(slug, allDocs);
4025
4041
  const showCategoryIndex = isCategory && doc;
4026
4042
  const currentPageTabGroup = doc.meta?.tab_group || doc.categoryTabGroup;
4027
- return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_jsx_runtime51.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(import_react25.Suspense, { fallback: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(DocLoading, {}), children: [
4028
- /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
4043
+ return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_jsx_runtime52.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime52.jsxs)(import_react25.Suspense, { fallback: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(DocLoading, {}), children: [
4044
+ /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
4029
4045
  DocLayoutWrapper,
4030
4046
  {
4031
- header: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(Header, { currentVersion: version, versions, config }),
4047
+ header: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(Header, { currentVersion: version, versions, config }),
4032
4048
  docs: allDocs,
4033
4049
  version,
4034
- content: showCategoryIndex ? /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
4050
+ content: showCategoryIndex ? /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
4035
4051
  CategoryIndex,
4036
4052
  {
4037
4053
  categoryPath: slug,
@@ -4042,7 +4058,7 @@ async function DocPage({ params }) {
4042
4058
  content: doc.content,
4043
4059
  config
4044
4060
  }
4045
- ) : /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
4061
+ ) : /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
4046
4062
  DocLayout,
4047
4063
  {
4048
4064
  meta: doc.meta,
@@ -4054,14 +4070,14 @@ async function DocPage({ params }) {
4054
4070
  config
4055
4071
  }
4056
4072
  ),
4057
- toc: showCategoryIndex ? /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", {}) : /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(TableOfContents, { items: toc, config }),
4073
+ toc: showCategoryIndex ? /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("div", {}) : /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(TableOfContents, { items: toc, config }),
4058
4074
  config,
4059
4075
  currentPageTabGroup
4060
4076
  }
4061
4077
  ),
4062
- /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(MdxHotReload, {}),
4063
- /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(HotReloadIndicator, {}),
4064
- /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(DevModeBadge, {})
4078
+ /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(MdxHotReload, {}),
4079
+ /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(HotReloadIndicator, {}),
4080
+ /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(DevModeBadge, {})
4065
4081
  ] }) });
4066
4082
  }
4067
4083
  // Annotate the CommonJS export names for ESM import in node: