specra 0.2.6 → 0.2.8
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/config/specra.config.schema.json +23 -0
- package/config/svelte-config.js +32 -1
- package/dist/category.d.ts +1 -1
- package/dist/category.js +4 -2
- package/dist/components/docs/Breadcrumb.svelte +11 -4
- package/dist/components/docs/Breadcrumb.svelte.d.ts +1 -0
- package/dist/components/docs/CategoryIndex.svelte +11 -2
- package/dist/components/docs/CategoryIndex.svelte.d.ts +1 -0
- package/dist/components/docs/DocLayout.svelte +9 -8
- package/dist/components/docs/DocLayout.svelte.d.ts +1 -0
- package/dist/components/docs/DocNavigation.svelte +10 -3
- package/dist/components/docs/DocNavigation.svelte.d.ts +1 -0
- package/dist/components/docs/Header.svelte +17 -1
- package/dist/components/docs/Header.svelte.d.ts +10 -0
- package/dist/components/docs/MdxContent.svelte +3 -1
- package/dist/components/docs/MobileDocLayout.svelte +5 -1
- package/dist/components/docs/MobileDocLayout.svelte.d.ts +1 -0
- package/dist/components/docs/MobileSidebar.svelte +3 -1
- package/dist/components/docs/MobileSidebar.svelte.d.ts +1 -0
- package/dist/components/docs/MobileSidebarWrapper.svelte +3 -1
- package/dist/components/docs/MobileSidebarWrapper.svelte.d.ts +1 -0
- package/dist/components/docs/ProductSwitcher.svelte +175 -0
- package/dist/components/docs/ProductSwitcher.svelte.d.ts +28 -0
- package/dist/components/docs/SearchModal.svelte +4 -3
- package/dist/components/docs/Sidebar.svelte +3 -1
- package/dist/components/docs/Sidebar.svelte.d.ts +1 -0
- package/dist/components/docs/SidebarMenuItems.svelte +39 -9
- package/dist/components/docs/SidebarMenuItems.svelte.d.ts +1 -0
- package/dist/components/docs/TabGroups.svelte +9 -2
- package/dist/components/docs/TabGroups.svelte.d.ts +1 -0
- package/dist/components/docs/VersionSwitcher.svelte +1 -1
- package/dist/components/docs/api/ApiParams.svelte +94 -36
- package/dist/components/docs/index.d.ts +1 -0
- package/dist/components/docs/index.js +1 -0
- package/dist/components/ui/Button.svelte +30 -11
- package/dist/components/ui/Button.svelte.d.ts +10 -4
- package/dist/config.d.ts +1 -1
- package/dist/config.schema.json +18 -0
- package/dist/config.server.d.ts +35 -7
- package/dist/config.server.js +185 -23
- package/dist/config.types.d.ts +46 -0
- package/dist/mdx-cache.d.ts +3 -6
- package/dist/mdx-cache.js +36 -8
- package/dist/mdx.d.ts +8 -3
- package/dist/mdx.js +117 -10
- package/dist/parsers/openapi-parser.js +6 -1
- package/dist/redirects.d.ts +2 -1
- package/dist/redirects.js +37 -11
- package/package.json +1 -1
package/dist/redirects.d.ts
CHANGED
|
@@ -3,7 +3,8 @@ export interface RedirectMapping {
|
|
|
3
3
|
to: string;
|
|
4
4
|
}
|
|
5
5
|
/**
|
|
6
|
-
* Build redirect mappings from all docs' redirect_from frontmatter
|
|
6
|
+
* Build redirect mappings from all docs' redirect_from frontmatter.
|
|
7
|
+
* In multi-product mode, generates product-aware redirect URLs.
|
|
7
8
|
*/
|
|
8
9
|
export declare function buildRedirectMappings(): Promise<RedirectMapping[]>;
|
|
9
10
|
/**
|
package/dist/redirects.js
CHANGED
|
@@ -1,19 +1,45 @@
|
|
|
1
1
|
import { getAllDocs, getVersions } from "./mdx";
|
|
2
|
+
import { getProducts } from "./config.server";
|
|
2
3
|
/**
|
|
3
|
-
* Build redirect mappings from all docs' redirect_from frontmatter
|
|
4
|
+
* Build redirect mappings from all docs' redirect_from frontmatter.
|
|
5
|
+
* In multi-product mode, generates product-aware redirect URLs.
|
|
4
6
|
*/
|
|
5
7
|
export async function buildRedirectMappings() {
|
|
6
|
-
const versions = getVersions();
|
|
7
8
|
const redirects = [];
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
9
|
+
const products = getProducts();
|
|
10
|
+
if (products.length === 0) {
|
|
11
|
+
// Single-product mode — current behavior
|
|
12
|
+
const versions = getVersions();
|
|
13
|
+
for (const version of versions) {
|
|
14
|
+
const docs = await getAllDocs(version);
|
|
15
|
+
for (const doc of docs) {
|
|
16
|
+
if (doc.meta.redirect_from && Array.isArray(doc.meta.redirect_from)) {
|
|
17
|
+
for (const oldPath of doc.meta.redirect_from) {
|
|
18
|
+
redirects.push({
|
|
19
|
+
from: oldPath,
|
|
20
|
+
to: `/docs/${version}/${doc.slug}`,
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
// Multi-product mode
|
|
29
|
+
for (const product of products) {
|
|
30
|
+
const versions = getVersions(product.isDefault ? undefined : product.slug);
|
|
31
|
+
const urlPrefix = product.isDefault ? "/docs" : `/docs/${product.slug}`;
|
|
32
|
+
for (const version of versions) {
|
|
33
|
+
const docs = await getAllDocs(version, undefined, product.isDefault ? undefined : product.slug);
|
|
34
|
+
for (const doc of docs) {
|
|
35
|
+
if (doc.meta.redirect_from && Array.isArray(doc.meta.redirect_from)) {
|
|
36
|
+
for (const oldPath of doc.meta.redirect_from) {
|
|
37
|
+
redirects.push({
|
|
38
|
+
from: oldPath,
|
|
39
|
+
to: `${urlPrefix}/${version}/${doc.slug}`,
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
}
|
|
17
43
|
}
|
|
18
44
|
}
|
|
19
45
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "specra",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.8",
|
|
4
4
|
"description": "A modern documentation library for SvelteKit with built-in versioning, API reference generation, full-text search, and MDX support",
|
|
5
5
|
"svelte": "./dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|