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.
- package/dist/app/docs-page.js +164 -148
- package/dist/app/docs-page.js.map +1 -1
- package/dist/app/docs-page.mjs +3 -3
- package/dist/app/layout.js +84 -5
- package/dist/app/layout.js.map +1 -1
- package/dist/app/layout.mjs +3 -3
- package/dist/{chunk-NXRIAL7T.mjs → chunk-4QHOMV5A.mjs} +8 -5
- package/dist/chunk-4QHOMV5A.mjs.map +1 -0
- package/dist/{chunk-IZFGEAD6.mjs → chunk-5AYOV2KD.mjs} +5 -4
- package/dist/chunk-5AYOV2KD.mjs.map +1 -0
- package/dist/chunk-I3ELVEK2.mjs +56 -0
- package/dist/chunk-I3ELVEK2.mjs.map +1 -0
- package/dist/{chunk-INL2EC72.mjs → chunk-RLMSINLY.mjs} +2 -5
- package/dist/{chunk-INL2EC72.mjs.map → chunk-RLMSINLY.mjs.map} +1 -1
- package/dist/components/index.d.mts +39 -3
- package/dist/components/index.d.ts +39 -3
- package/dist/components/index.js +100 -62
- package/dist/components/index.js.map +1 -1
- package/dist/components/index.mjs +83 -48
- package/dist/components/index.mjs.map +1 -1
- package/dist/index.d.mts +39 -3
- package/dist/index.d.ts +39 -3
- package/dist/index.js +129 -94
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +10 -4
- package/dist/index.mjs.map +1 -1
- package/dist/lib/index.d.mts +7 -0
- package/dist/lib/index.d.ts +7 -0
- package/dist/lib/index.js +1 -4
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/index.mjs +1 -1
- package/package.json +2 -2
- package/src/app/layout.tsx +6 -3
- package/src/components/docs/header.tsx +7 -3
- package/src/components/docs/index.ts +3 -0
- package/src/lib/config.context.tsx +65 -0
- package/src/lib/config.server.ts +9 -5
- package/src/lib/index.ts +1 -0
- package/dist/chunk-IZFGEAD6.mjs.map +0 -1
- package/dist/chunk-MZJHJ6BV.mjs +0 -21
- package/dist/chunk-MZJHJ6BV.mjs.map +0 -1
- package/dist/chunk-NXRIAL7T.mjs.map +0 -1
package/dist/components/index.js
CHANGED
|
@@ -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
|
-
|
|
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,
|
|
3356
|
-
/* @__PURE__ */ (0,
|
|
3357
|
-
/* @__PURE__ */ (0,
|
|
3358
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
3399
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(import_lucide_react23.Menu, { className: "h-5 w-5" })
|
|
3365
3400
|
}
|
|
3366
3401
|
),
|
|
3367
|
-
/* @__PURE__ */ (0,
|
|
3368
|
-
config.site.logo ? /* @__PURE__ */ (0,
|
|
3369
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
3373
|
-
config.search?.enabled && /* @__PURE__ */ (0,
|
|
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,
|
|
3380
|
-
/* @__PURE__ */ (0,
|
|
3381
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
3386
|
-
config.social?.github && /* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
3451
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(import_lucide_react23.MessageCircle, { className: "h-4 w-4" })
|
|
3417
3452
|
}
|
|
3418
3453
|
),
|
|
3419
|
-
/* @__PURE__ */ (0,
|
|
3454
|
+
/* @__PURE__ */ (0, import_jsx_runtime48.jsx)(ThemeToggle, {})
|
|
3420
3455
|
] })
|
|
3421
3456
|
] }),
|
|
3422
|
-
/* @__PURE__ */ (0,
|
|
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
|
|
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,
|
|
3466
|
-
isReloading && /* @__PURE__ */ (0,
|
|
3467
|
-
/* @__PURE__ */ (0,
|
|
3468
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
3471
|
-
/* @__PURE__ */ (0,
|
|
3472
|
-
/* @__PURE__ */ (0,
|
|
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
|
|
3546
|
+
var import_jsx_runtime50 = require("react/jsx-runtime");
|
|
3512
3547
|
function NotFoundContent({ version }) {
|
|
3513
|
-
return /* @__PURE__ */ (0,
|
|
3514
|
-
/* @__PURE__ */ (0,
|
|
3515
|
-
/* @__PURE__ */ (0,
|
|
3516
|
-
/* @__PURE__ */ (0,
|
|
3517
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
3523
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
3547
|
-
/* @__PURE__ */ (0,
|
|
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
|
|
3589
|
+
var import_jsx_runtime51 = require("react/jsx-runtime");
|
|
3555
3590
|
function SidebarSkeleton() {
|
|
3556
|
-
return /* @__PURE__ */ (0,
|
|
3557
|
-
/* @__PURE__ */ (0,
|
|
3558
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
3566
|
-
/* @__PURE__ */ (0,
|
|
3567
|
-
[...Array(5)].map((_, i) => /* @__PURE__ */ (0,
|
|
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
|
|
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,
|
|
3626
|
-
/* @__PURE__ */ (0,
|
|
3627
|
-
/* @__PURE__ */ (0,
|
|
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
|
|
3678
|
+
var import_jsx_runtime53 = require("react/jsx-runtime");
|
|
3644
3679
|
function VersionNotFound() {
|
|
3645
|
-
return /* @__PURE__ */ (0,
|
|
3646
|
-
/* @__PURE__ */ (0,
|
|
3647
|
-
/* @__PURE__ */ (0,
|
|
3648
|
-
/* @__PURE__ */ (0,
|
|
3649
|
-
/* @__PURE__ */ (0,
|
|
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
|