@takazudo/zudo-doc 0.2.22 → 1.0.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/bin/zudo-doc.mjs +83 -0
- package/dist/eject/index.d.ts +33 -0
- package/dist/eject/index.js +229 -0
- package/dist/plugins/routes.d.ts +2 -0
- package/dist/plugins/routes.js +100 -0
- package/dist/preset.d.ts +47 -1
- package/dist/preset.js +29 -13
- package/dist/routes/404.d.ts +7 -0
- package/dist/routes/404.js +47 -0
- package/dist/routes/_chrome.d.ts +32 -0
- package/dist/routes/_chrome.js +365 -0
- package/dist/routes/_context.d.ts +56 -0
- package/dist/routes/_context.js +222 -0
- package/dist/routes/_docs-helpers.d.ts +43 -0
- package/dist/routes/_docs-helpers.js +173 -0
- package/dist/routes/_virtual.d.js +0 -0
- package/dist/routes/api-ai-chat.d.ts +5 -0
- package/dist/routes/api-ai-chat.js +24 -0
- package/dist/routes/docs-slug.d.ts +21 -0
- package/dist/routes/docs-slug.js +26 -0
- package/dist/routes/docs-tags-index.d.ts +7 -0
- package/dist/routes/docs-tags-index.js +11 -0
- package/dist/routes/docs-tags-tag.d.ts +23 -0
- package/dist/routes/docs-tags-tag.js +19 -0
- package/dist/routes/docs-versions.d.ts +7 -0
- package/dist/routes/docs-versions.js +11 -0
- package/dist/routes/index.d.ts +7 -0
- package/dist/routes/index.js +117 -0
- package/dist/routes/locale-docs-slug.d.ts +27 -0
- package/dist/routes/locale-docs-slug.js +40 -0
- package/dist/routes/locale-docs-tags-index.d.ts +18 -0
- package/dist/routes/locale-docs-tags-index.js +15 -0
- package/dist/routes/locale-docs-tags-tag.d.ts +25 -0
- package/dist/routes/locale-docs-tags-tag.js +22 -0
- package/dist/routes/locale-docs-versions.d.ts +18 -0
- package/dist/routes/locale-docs-versions.js +15 -0
- package/dist/routes/locale-index.d.ts +24 -0
- package/dist/routes/locale-index.js +132 -0
- package/dist/routes/robots.txt.d.ts +3 -0
- package/dist/routes/robots.txt.js +8 -0
- package/dist/routes/sitemap.xml.d.ts +5 -0
- package/dist/routes/sitemap.xml.js +31 -0
- package/dist/routes/v-docs-slug.d.ts +27 -0
- package/dist/routes/v-docs-slug.js +34 -0
- package/dist/routes/v-locale-docs-slug.d.ts +31 -0
- package/dist/routes/v-locale-docs-slug.js +50 -0
- package/dist/safelist.css +1 -1
- package/dist/settings.d.ts +15 -0
- package/eject/breadcrumb/breadcrumb.tsx +194 -0
- package/eject/breadcrumb/find-path.ts +26 -0
- package/eject/breadcrumb/index.ts +4 -0
- package/eject/breadcrumb/types.ts +32 -0
- package/eject/code-group/index.tsx +78 -0
- package/eject/content-admonition/index.tsx +50 -0
- package/eject/details/details.tsx +34 -0
- package/eject/details/index.ts +4 -0
- package/eject/doc-pager/index.tsx +91 -0
- package/eject/footer/footer.tsx +167 -0
- package/eject/footer/index.ts +19 -0
- package/eject/footer/types.ts +60 -0
- package/eject/header/header.tsx +725 -0
- package/eject/header/index.ts +36 -0
- package/eject/header/nav-active.ts +122 -0
- package/eject/header/nav-overflow-script.ts +302 -0
- package/eject/header/right-items.ts +78 -0
- package/eject/header/types.ts +69 -0
- package/eject/page-loading/index.ts +10 -0
- package/eject/page-loading/page-loading-overlay.tsx +103 -0
- package/eject/sidebar/index.ts +27 -0
- package/eject/sidebar/sidebar.tsx +137 -0
- package/eject/sidebar/types.ts +73 -0
- package/eject/tab-item/index.ts +7 -0
- package/eject/tab-item/tab-item.tsx +70 -0
- package/eject/theme-toggle/color-scheme-sync.ts +73 -0
- package/eject/theme-toggle/index.tsx +120 -0
- package/eject/toc/cx.ts +38 -0
- package/eject/toc/index.ts +11 -0
- package/eject/toc/mobile-toc.tsx +133 -0
- package/eject/toc/toc-title.ts +33 -0
- package/eject/toc/toc.tsx +119 -0
- package/eject/toc/types.ts +14 -0
- package/eject/toc/use-active-heading.ts +162 -0
- package/package.json +87 -7
- package/routes-src/404.tsx +49 -0
- package/routes-src/_chrome.tsx +470 -0
- package/routes-src/_context.ts +314 -0
- package/routes-src/_docs-helpers.ts +284 -0
- package/routes-src/_virtual.d.ts +15 -0
- package/routes-src/api-ai-chat.tsx +46 -0
- package/routes-src/docs-slug.tsx +43 -0
- package/routes-src/docs-tags-index.tsx +14 -0
- package/routes-src/docs-tags-tag.tsx +29 -0
- package/routes-src/docs-versions.tsx +15 -0
- package/routes-src/index.tsx +134 -0
- package/routes-src/locale-docs-slug.tsx +69 -0
- package/routes-src/locale-docs-tags-index.tsx +23 -0
- package/routes-src/locale-docs-tags-tag.tsx +39 -0
- package/routes-src/locale-docs-versions.tsx +23 -0
- package/routes-src/locale-index.tsx +150 -0
- package/routes-src/robots.txt.tsx +13 -0
- package/routes-src/sitemap.xml.tsx +48 -0
- package/routes-src/v-docs-slug.tsx +64 -0
- package/routes-src/v-locale-docs-slug.tsx +85 -0
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/** @jsxRuntime automatic */
|
|
2
|
+
/** @jsxImportSource preact */
|
|
3
|
+
// Package route entrypoint: /v/[version]/[locale]/docs/[[...slug]] —
|
|
4
|
+
// package-owned equivalent of pages/v/[version]/[locale]/docs/[[...slug]].tsx
|
|
5
|
+
// (A1 #2361).
|
|
6
|
+
//
|
|
7
|
+
// Versioned non-default-locale docs route. The dynamic `[version]`/`[locale]`
|
|
8
|
+
// patterns are injected ONCE; `paths()` cross-products versions × non-default
|
|
9
|
+
// locales with a locale-first merge over the version's EN base.
|
|
10
|
+
|
|
11
|
+
import type { JSX } from "preact";
|
|
12
|
+
import type { VersionConfig } from "@takazudo/zudo-doc/settings";
|
|
13
|
+
import type { DocPageEntryProps, DocPageAutoIndexProps } from "@takazudo/zudo-doc/doc-page-props";
|
|
14
|
+
import { settings, resolveVersionedLocaleSource, versionedDocsUrl, buildDocRouteEntries } from "./_context.js";
|
|
15
|
+
import { renderDocPage } from "./_chrome.js";
|
|
16
|
+
|
|
17
|
+
export const frontmatter = { title: "Docs" };
|
|
18
|
+
|
|
19
|
+
interface VersionedLocaleDocPageExtra {
|
|
20
|
+
version: VersionConfig;
|
|
21
|
+
contentDir: string;
|
|
22
|
+
isFallback: boolean;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
type DocPageProps =
|
|
26
|
+
| (DocPageEntryProps & VersionedLocaleDocPageExtra)
|
|
27
|
+
| (DocPageAutoIndexProps & VersionedLocaleDocPageExtra);
|
|
28
|
+
|
|
29
|
+
export function paths(): Array<{
|
|
30
|
+
params: { version: string; locale: string; slug: string[] };
|
|
31
|
+
props: DocPageProps;
|
|
32
|
+
}> {
|
|
33
|
+
if (!settings.versions) return [];
|
|
34
|
+
|
|
35
|
+
const result: Array<{
|
|
36
|
+
params: { version: string; locale: string; slug: string[] };
|
|
37
|
+
props: DocPageProps;
|
|
38
|
+
}> = [];
|
|
39
|
+
|
|
40
|
+
for (const version of settings.versions) {
|
|
41
|
+
for (const locale of Object.keys(settings.locales)) {
|
|
42
|
+
const localeDir = version.locales?.[locale]?.dir;
|
|
43
|
+
const source = resolveVersionedLocaleSource(
|
|
44
|
+
version.slug,
|
|
45
|
+
version.docsDir,
|
|
46
|
+
locale,
|
|
47
|
+
localeDir,
|
|
48
|
+
{ applyDefaultLocaleOnlyFilter: true, keepUnlisted: true },
|
|
49
|
+
);
|
|
50
|
+
const urlFor = (s: string): string => versionedDocsUrl(s, version.slug, locale);
|
|
51
|
+
|
|
52
|
+
for (const item of buildDocRouteEntries({
|
|
53
|
+
source,
|
|
54
|
+
locale,
|
|
55
|
+
routeSig: `v-locale-docs;${version.slug};${locale}`,
|
|
56
|
+
urlFor,
|
|
57
|
+
})) {
|
|
58
|
+
const extra: VersionedLocaleDocPageExtra = {
|
|
59
|
+
version,
|
|
60
|
+
contentDir: item.isFallback ? version.docsDir : (localeDir ?? version.docsDir),
|
|
61
|
+
isFallback: item.isFallback,
|
|
62
|
+
};
|
|
63
|
+
result.push({
|
|
64
|
+
params: { version: version.slug, locale, slug: item.slugParams },
|
|
65
|
+
props: { ...(item.props as DocPageProps), ...extra },
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
return result;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
type PageArgs = DocPageProps & {
|
|
75
|
+
params: { version: string; locale: string; slug: string[] };
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
export default function VersionedLocaleDocsPage(props: PageArgs): JSX.Element {
|
|
79
|
+
return renderDocPage(props, {
|
|
80
|
+
locale: props.params.locale,
|
|
81
|
+
version: props.version,
|
|
82
|
+
isFallback: props.isFallback,
|
|
83
|
+
docHistoryContentDir: props.contentDir,
|
|
84
|
+
});
|
|
85
|
+
}
|