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
@@ -50,6 +50,7 @@ __export(components_exports, {
50
50
  CodeBlock: () => CodeBlock,
51
51
  Column: () => Column,
52
52
  Columns: () => Columns,
53
+ ConfigProvider: () => ConfigProvider,
53
54
  DevModeBadge: () => DevModeBadge,
54
55
  Dialog: () => Dialog,
55
56
  DialogClose: () => DialogClose,
@@ -106,6 +107,8 @@ __export(components_exports, {
106
107
  extractComponentPropsText: () => extractComponentPropsText,
107
108
  extractSearchText: () => extractSearchText,
108
109
  mdxComponents: () => mdxComponents,
110
+ useConfig: () => useConfig,
111
+ useConfigValue: () => useConfigValue,
109
112
  useTabContext: () => useTabContext
110
113
  });
111
114
  module.exports = __toCommonJS(components_exports);
@@ -3339,8 +3342,40 @@ function SearchModal({ isOpen, onClose, config }) {
3339
3342
 
3340
3343
  // src/components/docs/header.tsx
3341
3344
  var import_react21 = require("react");
3345
+
3346
+ // src/lib/config.context.tsx
3347
+ var React2 = __toESM(require("react"));
3342
3348
  var import_jsx_runtime47 = require("react/jsx-runtime");
3343
- function Header({ currentVersion, versions, onMenuClick, config }) {
3349
+ var ConfigContext = React2.createContext(defaultConfig);
3350
+ function ConfigProvider({ config, children }) {
3351
+ return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(ConfigContext.Provider, { value: config, children });
3352
+ }
3353
+ function useConfig() {
3354
+ const config = React2.useContext(ConfigContext);
3355
+ if (!config) {
3356
+ throw new Error("useConfig must be used within a ConfigProvider");
3357
+ }
3358
+ return config;
3359
+ }
3360
+ function useConfigValue(path) {
3361
+ const config = useConfig();
3362
+ const keys = path.split(".");
3363
+ let value = config;
3364
+ for (const key of keys) {
3365
+ if (value && typeof value === "object" && key in value) {
3366
+ value = value[key];
3367
+ } else {
3368
+ return void 0;
3369
+ }
3370
+ }
3371
+ return value;
3372
+ }
3373
+
3374
+ // src/components/docs/header.tsx
3375
+ var import_jsx_runtime48 = require("react/jsx-runtime");
3376
+ function Header({ currentVersion, versions, onMenuClick, config: configProp }) {
3377
+ const contextConfig = useConfig();
3378
+ const config = configProp || contextConfig;
3344
3379
  const [searchOpen, setSearchOpen] = (0, import_react21.useState)(false);
3345
3380
  (0, import_react21.useEffect)(() => {
3346
3381
  const handleKeyDown = (e) => {
@@ -3352,38 +3387,38 @@ function Header({ currentVersion, versions, onMenuClick, config }) {
3352
3387
  window.addEventListener("keydown", handleKeyDown);
3353
3388
  return () => window.removeEventListener("keydown", handleKeyDown);
3354
3389
  }, []);
3355
- return /* @__PURE__ */ (0, import_jsx_runtime47.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: [
3356
- /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)("div", { className: "container flex h-16 items-center justify-between px-6 mx-auto", children: [
3357
- /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)("div", { className: "flex items-center gap-2", children: [
3358
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
3390
+ return /* @__PURE__ */ (0, import_jsx_runtime48.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: [
3391
+ /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("div", { className: "container flex h-16 items-center justify-between px-6 mx-auto", children: [
3392
+ /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("div", { className: "flex items-center gap-2", children: [
3393
+ /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
3359
3394
  "button",
3360
3395
  {
3361
3396
  onClick: onMenuClick,
3362
3397
  className: "lg:hidden hover:bg-muted p-2 rounded-md transition-colors",
3363
3398
  "aria-label": "Toggle menu",
3364
- children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react23.Menu, { className: "h-5 w-5" })
3399
+ children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(import_lucide_react23.Menu, { className: "h-5 w-5" })
3365
3400
  }
3366
3401
  ),
3367
- /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(import_link8.default, { href: "/", className: "flex items-center gap-2", children: [
3368
- config.site.logo ? /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("img", { src: getAssetPath(config.site.logo), alt: config.site.title, className: "h-8 w-auto" }) : /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("div", { className: "h-8 w-8 rounded-xl bg-primary flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "text-primary-foreground font-bold text-lg", children: config.site.title.charAt(0).toUpperCase() }) }),
3369
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "font-semibold text-lg text-foreground", children: "Specra" })
3402
+ /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)(import_link8.default, { href: "/", className: "flex items-center gap-2", children: [
3403
+ config.site.logo ? /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("img", { src: getAssetPath(config.site.logo), alt: config.site.title, className: "h-8 w-auto" }) : /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("div", { className: "h-8 w-8 rounded-xl bg-primary flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("span", { className: "text-primary-foreground font-bold text-lg", children: config.site.title.charAt(0).toUpperCase() }) }),
3404
+ /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("span", { className: "font-semibold text-lg text-foreground", children: config.site.title ?? "Specra" })
3370
3405
  ] })
3371
3406
  ] }),
3372
- /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)("div", { className: "flex items-center gap-2", children: [
3373
- config.search?.enabled && /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(
3407
+ /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("div", { className: "flex items-center gap-2", children: [
3408
+ config.search?.enabled && /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)(
3374
3409
  "button",
3375
3410
  {
3376
3411
  onClick: () => setSearchOpen(true),
3377
3412
  className: "flex items-center gap-2 px-3 py-2 text-sm text-muted-foreground hover:text-foreground bg-muted rounded-md transition-colors",
3378
3413
  children: [
3379
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react23.Search, { className: "h-4 w-4" }),
3380
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "hidden sm:inline", children: config.search.placeholder || "Search" }),
3381
- /* @__PURE__ */ (0, import_jsx_runtime47.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" })
3414
+ /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(import_lucide_react23.Search, { className: "h-4 w-4" }),
3415
+ /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("span", { className: "hidden sm:inline", children: config.search.placeholder || "Search" }),
3416
+ /* @__PURE__ */ (0, import_jsx_runtime48.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" })
3382
3417
  ]
3383
3418
  }
3384
3419
  ),
3385
- config.features?.versioning && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(VersionSwitcher, { currentVersion, versions }),
3386
- config.social?.github && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
3420
+ config.features?.versioning && /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(VersionSwitcher, { currentVersion, versions }),
3421
+ config.social?.github && /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
3387
3422
  "a",
3388
3423
  {
3389
3424
  href: config.social.github,
@@ -3391,10 +3426,10 @@ function Header({ currentVersion, versions, onMenuClick, config }) {
3391
3426
  rel: "noopener noreferrer",
3392
3427
  className: "hidden md:flex items-center justify-center h-9 w-9 rounded-md hover:bg-muted transition-colors",
3393
3428
  "aria-label": "GitHub",
3394
- children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react23.Github, { className: "h-4 w-4" })
3429
+ children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(import_lucide_react23.Github, { className: "h-4 w-4" })
3395
3430
  }
3396
3431
  ),
3397
- config.social?.twitter && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
3432
+ config.social?.twitter && /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
3398
3433
  "a",
3399
3434
  {
3400
3435
  href: config.social.twitter,
@@ -3402,10 +3437,10 @@ function Header({ currentVersion, versions, onMenuClick, config }) {
3402
3437
  rel: "noopener noreferrer",
3403
3438
  className: "hidden md:flex items-center justify-center h-9 w-9 rounded-md hover:bg-muted transition-colors",
3404
3439
  "aria-label": "Twitter",
3405
- children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react23.Twitter, { className: "h-4 w-4" })
3440
+ children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(import_lucide_react23.Twitter, { className: "h-4 w-4" })
3406
3441
  }
3407
3442
  ),
3408
- config.social?.discord && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
3443
+ config.social?.discord && /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
3409
3444
  "a",
3410
3445
  {
3411
3446
  href: config.social.discord,
@@ -3413,13 +3448,13 @@ function Header({ currentVersion, versions, onMenuClick, config }) {
3413
3448
  rel: "noopener noreferrer",
3414
3449
  className: "hidden md:flex items-center justify-center h-9 w-9 rounded-md hover:bg-muted transition-colors",
3415
3450
  "aria-label": "Discord",
3416
- children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react23.MessageCircle, { className: "h-4 w-4" })
3451
+ children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(import_lucide_react23.MessageCircle, { className: "h-4 w-4" })
3417
3452
  }
3418
3453
  ),
3419
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(ThemeToggle, {})
3454
+ /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(ThemeToggle, {})
3420
3455
  ] })
3421
3456
  ] }),
3422
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(SearchModal, { isOpen: searchOpen, onClose: () => setSearchOpen(false), config })
3457
+ /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(SearchModal, { isOpen: searchOpen, onClose: () => setSearchOpen(false), config })
3423
3458
  ] });
3424
3459
  }
3425
3460
 
@@ -3427,7 +3462,7 @@ function Header({ currentVersion, versions, onMenuClick, config }) {
3427
3462
  var import_react22 = require("react");
3428
3463
  var import_navigation5 = require("next/navigation");
3429
3464
  var import_lucide_react24 = require("lucide-react");
3430
- var import_jsx_runtime48 = require("react/jsx-runtime");
3465
+ var import_jsx_runtime49 = require("react/jsx-runtime");
3431
3466
  function HotReloadIndicator() {
3432
3467
  const [isReloading, setIsReloading] = (0, import_react22.useState)(false);
3433
3468
  const [lastReload, setLastReload] = (0, import_react22.useState)(null);
@@ -3462,14 +3497,14 @@ function HotReloadIndicator() {
3462
3497
  };
3463
3498
  }, []);
3464
3499
  if (process.env.NODE_ENV !== "development") return null;
3465
- return /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)(import_jsx_runtime48.Fragment, { children: [
3466
- isReloading && /* @__PURE__ */ (0, import_jsx_runtime48.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: [
3467
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(import_lucide_react24.RefreshCw, { className: "h-4 w-4 animate-spin" }),
3468
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("span", { className: "text-sm font-medium", children: "Reloading..." })
3500
+ return /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)(import_jsx_runtime49.Fragment, { children: [
3501
+ isReloading && /* @__PURE__ */ (0, import_jsx_runtime49.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: [
3502
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_lucide_react24.RefreshCw, { className: "h-4 w-4 animate-spin" }),
3503
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("span", { className: "text-sm font-medium", children: "Reloading..." })
3469
3504
  ] }),
3470
- lastReload && !isReloading && /* @__PURE__ */ (0, import_jsx_runtime48.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: [
3471
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(import_lucide_react24.RefreshCw, { className: "h-4 w-4" }),
3472
- /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("span", { className: "text-sm font-medium", children: [
3505
+ lastReload && !isReloading && /* @__PURE__ */ (0, import_jsx_runtime49.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: [
3506
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_lucide_react24.RefreshCw, { className: "h-4 w-4" }),
3507
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("span", { className: "text-sm font-medium", children: [
3473
3508
  "Updated at ",
3474
3509
  lastReload.toLocaleTimeString()
3475
3510
  ] })
@@ -3508,63 +3543,63 @@ function MdxHotReload() {
3508
3543
  // src/components/docs/not-found-content.tsx
3509
3544
  var import_link9 = __toESM(require("next/link"));
3510
3545
  var import_lucide_react25 = require("lucide-react");
3511
- var import_jsx_runtime49 = require("react/jsx-runtime");
3546
+ var import_jsx_runtime50 = require("react/jsx-runtime");
3512
3547
  function NotFoundContent({ version }) {
3513
- 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: [
3514
- /* @__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" }) }) }),
3515
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("h1", { className: "mb-3 text-5xl font-bold tracking-tight", children: "404" }),
3516
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("h2", { className: "mb-4 text-2xl font-semibold", children: "Page Not Found" }),
3517
- /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("p", { className: "mb-8 text-base text-muted-foreground", children: [
3548
+ 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: [
3549
+ /* @__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" }) }) }),
3550
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("h1", { className: "mb-3 text-5xl font-bold tracking-tight", children: "404" }),
3551
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("h2", { className: "mb-4 text-2xl font-semibold", children: "Page Not Found" }),
3552
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("p", { className: "mb-8 text-base text-muted-foreground", children: [
3518
3553
  "The documentation page you're looking for doesn't exist or may have been moved.",
3519
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("br", {}),
3554
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("br", {}),
3520
3555
  "Try using the sidebar to find what you're looking for, or return to the documentation home."
3521
3556
  ] }),
3522
- /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("div", { className: "flex flex-col items-center justify-center gap-3 sm:flex-row", children: [
3523
- /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)(
3557
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "flex flex-col items-center justify-center gap-3 sm:flex-row", children: [
3558
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(
3524
3559
  import_link9.default,
3525
3560
  {
3526
3561
  href: `/docs/${version}`,
3527
3562
  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",
3528
3563
  children: [
3529
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_lucide_react25.ArrowLeft, { className: "h-4 w-4" }),
3564
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_lucide_react25.ArrowLeft, { className: "h-4 w-4" }),
3530
3565
  "Back to Documentation"
3531
3566
  ]
3532
3567
  }
3533
3568
  ),
3534
- /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)(
3569
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(
3535
3570
  import_link9.default,
3536
3571
  {
3537
3572
  href: "/",
3538
3573
  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",
3539
3574
  children: [
3540
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_lucide_react25.Home, { className: "h-4 w-4" }),
3575
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_lucide_react25.Home, { className: "h-4 w-4" }),
3541
3576
  "Go to Homepage"
3542
3577
  ]
3543
3578
  }
3544
3579
  )
3545
3580
  ] }),
3546
- /* @__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: [
3547
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("strong", { className: "font-medium text-foreground", children: "Tip:" }),
3581
+ /* @__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: [
3582
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("strong", { className: "font-medium text-foreground", children: "Tip:" }),
3548
3583
  " Use the sidebar navigation on the left to browse all available documentation pages."
3549
3584
  ] }) })
3550
3585
  ] }) });
3551
3586
  }
3552
3587
 
3553
3588
  // src/components/docs/sidebar-skeleton.tsx
3554
- var import_jsx_runtime50 = require("react/jsx-runtime");
3589
+ var import_jsx_runtime51 = require("react/jsx-runtime");
3555
3590
  function SidebarSkeleton() {
3556
- return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("aside", { className: "w-64 pr-8 py-6", children: /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "space-y-6", children: [
3557
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "px-2", children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "h-5 w-32 bg-muted/50 rounded animate-pulse" }) }),
3558
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "space-y-1", children: [...Array(8)].map((_, i) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "px-3 py-2", children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
3591
+ return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("aside", { className: "w-64 pr-8 py-6", children: /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("div", { className: "space-y-6", children: [
3592
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "px-2", children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "h-5 w-32 bg-muted/50 rounded animate-pulse" }) }),
3593
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "space-y-1", children: [...Array(8)].map((_, i) => /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "px-3 py-2", children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
3559
3594
  "div",
3560
3595
  {
3561
3596
  className: "h-4 bg-muted/50 rounded animate-pulse",
3562
3597
  style: { width: `${60 + Math.random() * 40}%` }
3563
3598
  }
3564
3599
  ) }, i)) }),
3565
- /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "space-y-1", children: [
3566
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "px-2 mb-2", children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "h-4 w-24 bg-muted/50 rounded animate-pulse" }) }),
3567
- [...Array(5)].map((_, i) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "px-3 py-2", children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
3600
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("div", { className: "space-y-1", children: [
3601
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "px-2 mb-2", children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "h-4 w-24 bg-muted/50 rounded animate-pulse" }) }),
3602
+ [...Array(5)].map((_, i) => /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "px-3 py-2", children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
3568
3603
  "div",
3569
3604
  {
3570
3605
  className: "h-4 bg-muted/50 rounded animate-pulse",
@@ -3577,7 +3612,7 @@ function SidebarSkeleton() {
3577
3612
 
3578
3613
  // src/components/docs/table-of-contents.tsx
3579
3614
  var import_react24 = require("react");
3580
- var import_jsx_runtime51 = require("react/jsx-runtime");
3615
+ var import_jsx_runtime52 = require("react/jsx-runtime");
3581
3616
  function TableOfContents({ items, config }) {
3582
3617
  const [activeId, setActiveId] = (0, import_react24.useState)("");
3583
3618
  if (!config.navigation?.showTableOfContents) {
@@ -3622,9 +3657,9 @@ function TableOfContents({ items, config }) {
3622
3657
  };
3623
3658
  const stickyTop = hasTabGroups ? "top-[7.5rem]" : "top-24";
3624
3659
  const maxHeight = hasTabGroups ? "max-h-[calc(100vh-10rem)]" : "max-h-[calc(100vh-7rem)]";
3625
- return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("aside", { className: `w-64 hidden xl:block shrink-0 sticky ${stickyTop} self-start`, children: filteredItems.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("div", { className: `${maxHeight} overflow-y-auto bg-muted/30 dark:bg-muted/10 rounded-2xl p-4 border border-border/50`, children: [
3626
- /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("h3", { className: "text-xs font-semibold text-muted-foreground uppercase tracking-wider mb-4 px-2", children: "On this page" }),
3627
- /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("nav", { className: "space-y-1", children: filteredItems.map((item) => /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
3660
+ return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("aside", { className: `w-64 hidden xl:block shrink-0 sticky ${stickyTop} self-start`, children: filteredItems.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime52.jsxs)("div", { className: `${maxHeight} overflow-y-auto bg-muted/30 dark:bg-muted/10 rounded-2xl p-4 border border-border/50`, children: [
3661
+ /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("h3", { className: "text-xs font-semibold text-muted-foreground uppercase tracking-wider mb-4 px-2", children: "On this page" }),
3662
+ /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("nav", { className: "space-y-1", children: filteredItems.map((item) => /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
3628
3663
  "a",
3629
3664
  {
3630
3665
  href: `#${item.id}`,
@@ -3640,13 +3675,13 @@ function TableOfContents({ items, config }) {
3640
3675
  // src/components/global/version-not-found.tsx
3641
3676
  var import_lucide_react26 = require("lucide-react");
3642
3677
  var import_link10 = __toESM(require("next/link"));
3643
- var import_jsx_runtime52 = require("react/jsx-runtime");
3678
+ var import_jsx_runtime53 = require("react/jsx-runtime");
3644
3679
  function VersionNotFound() {
3645
- return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_jsx_runtime52.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("div", { className: "flex min-h-screen items-center justify-center px-4", children: /* @__PURE__ */ (0, import_jsx_runtime52.jsxs)("div", { className: "text-center", children: [
3646
- /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("div", { className: "mb-4 flex justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_lucide_react26.AlertTriangle, { className: "h-16 w-16 text-yellow-500" }) }),
3647
- /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("h1", { className: "mb-2 text-4xl font-bold", children: "Version Not Found" }),
3648
- /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("p", { className: "mb-6 text-muted-foreground", children: "The documentation version you're looking for doesn't exist." }),
3649
- /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
3680
+ return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(import_jsx_runtime53.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("div", { className: "flex min-h-screen items-center justify-center px-4", children: /* @__PURE__ */ (0, import_jsx_runtime53.jsxs)("div", { className: "text-center", children: [
3681
+ /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("div", { className: "mb-4 flex justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(import_lucide_react26.AlertTriangle, { className: "h-16 w-16 text-yellow-500" }) }),
3682
+ /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("h1", { className: "mb-2 text-4xl font-bold", children: "Version Not Found" }),
3683
+ /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("p", { className: "mb-6 text-muted-foreground", children: "The documentation version you're looking for doesn't exist." }),
3684
+ /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
3650
3685
  import_link10.default,
3651
3686
  {
3652
3687
  href: "/docs/v1.0.0",
@@ -3677,6 +3712,7 @@ function VersionNotFound() {
3677
3712
  CodeBlock,
3678
3713
  Column,
3679
3714
  Columns,
3715
+ ConfigProvider,
3680
3716
  DevModeBadge,
3681
3717
  Dialog,
3682
3718
  DialogClose,
@@ -3733,6 +3769,8 @@ function VersionNotFound() {
3733
3769
  extractComponentPropsText,
3734
3770
  extractSearchText,
3735
3771
  mdxComponents,
3772
+ useConfig,
3773
+ useConfigValue,
3736
3774
  useTabContext
3737
3775
  });
3738
3776
  //# sourceMappingURL=index.js.map