@takazudo/zudo-doc 3.2.0 → 4.0.0
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/CHANGELOG.md +61 -0
- package/README.md +2 -2
- package/bin/tag-cli-config.ts +126 -0
- package/bin/tags-audit-runner.ts +60 -76
- package/bin/tags-audit.mjs +17 -36
- package/bin/tags-suggest-runner.ts +429 -0
- package/bin/tags-suggest.mjs +30 -0
- package/bin/zudo-doc.mjs +78 -25
- package/dist/breadcrumb/breadcrumb.d.ts +4 -4
- package/dist/breadcrumb/find-path.d.ts +2 -2
- package/dist/breadcrumb/index.d.ts +1 -1
- package/dist/breadcrumb/types.d.ts +0 -5
- package/dist/chrome/derive.d.ts +16 -4
- package/dist/chrome/derive.js +64 -4
- package/dist/chrome/index.d.ts +13 -10
- package/dist/chrome/index.js +12 -6
- package/dist/chrome/primary-slots.d.ts +21 -0
- package/dist/chrome/primary-slots.js +59 -0
- package/dist/chrome-bindings.d.ts +227 -0
- package/dist/chrome-bindings.js +6 -0
- package/dist/code-syntax/code-block-enhancer-script.d.ts +4 -0
- package/dist/code-syntax/code-block-enhancer-script.js +7 -4
- package/dist/code-syntax/code-block-enhancer.d.ts +2 -2
- package/dist/code-syntax/code-block-enhancer.js +1 -3
- package/dist/code-syntax/index.d.ts +5 -5
- package/dist/code-syntax/index.js +4 -13
- package/dist/code-syntax/mermaid-init-script.d.ts +1 -22
- package/dist/code-syntax/mermaid-init-script.js +0 -2
- package/dist/code-syntax/mermaid-init.d.ts +0 -1
- package/dist/code-syntax/mermaid-init.js +3 -4
- package/dist/code-syntax/tabs-init.d.ts +0 -1
- package/dist/code-syntax/tabs-init.js +1 -3
- package/dist/code-syntax/tabs.d.ts +0 -1
- package/dist/code-syntax/tabs.js +1 -3
- package/dist/color-scheme-utils.d.ts +72 -4
- package/dist/color-scheme-utils.js +137 -0
- package/dist/color-schemes-defaults/index.d.ts +23 -0
- package/dist/color-schemes-defaults/index.js +134 -0
- package/dist/config.d.ts +459 -0
- package/dist/config.js +125 -0
- package/dist/content/component-map.d.ts +0 -16
- package/dist/content/component-map.js +2 -4
- package/dist/content/index.d.ts +1 -1
- package/dist/content/index.js +2 -3
- package/dist/content.css +1 -1
- package/dist/design-token-panel-bootstrap.d.ts +82 -27
- package/dist/design-token-panel-bootstrap.js +110 -21
- package/dist/design-token-panel-config/index.d.ts +49 -0
- package/dist/design-token-panel-config/index.js +211 -0
- package/dist/design-token-panel-config/manifest.d.ts +46 -0
- package/dist/design-token-panel-config/manifest.js +105 -0
- package/dist/directive-vocabulary-defaults/index.d.ts +16 -0
- package/dist/directive-vocabulary-defaults/index.js +12 -0
- package/dist/doc-body-end-islands/design-token-panel-island.d.ts +15 -0
- package/dist/doc-body-end-islands/design-token-panel-island.js +31 -0
- package/dist/doc-body-end-islands/index.d.ts +52 -7
- package/dist/doc-body-end-islands/index.js +19 -0
- package/dist/doc-body-end-islands/theme-pack-switcher-island.d.ts +37 -0
- package/dist/doc-body-end-islands/theme-pack-switcher-island.js +18 -0
- package/dist/doc-content-header/index.js +1 -1
- package/dist/doc-history-area/index.d.ts +10 -4
- package/dist/doc-history-area/index.js +3 -2
- package/dist/doc-metainfo-area/index.d.ts +1 -0
- package/dist/doc-page-props/index.d.ts +7 -23
- package/dist/doc-page-renderer/index.d.ts +1 -0
- package/dist/doc-page-renderer/index.js +1 -0
- package/dist/doc-page-shell/index.js +19 -12
- package/dist/doc-pager/index.js +1 -1
- package/dist/doc-route-entries/index.d.ts +2 -2
- package/dist/doclayout/doc-layout-with-defaults.js +4 -4
- package/dist/doclayout/doc-layout.d.ts +8 -0
- package/dist/doclayout/doc-layout.js +10 -1
- package/dist/docs-schema/index.d.ts +67 -0
- package/dist/docs-schema/index.js +43 -0
- package/dist/eject/index.d.ts +16 -0
- package/dist/eject/index.js +122 -28
- package/dist/extract-headings/index.d.ts +5 -8
- package/dist/extract-headings/index.js +2 -9
- package/dist/factory-context/index.d.ts +56 -4
- package/dist/features.css +65 -43
- package/dist/find-in-page/find-bar.d.ts +9 -0
- package/dist/find-in-page/find-bar.js +114 -0
- package/dist/find-in-page/find-in-page.d.ts +17 -0
- package/dist/find-in-page/find-in-page.js +131 -0
- package/dist/find-in-page/index.d.ts +11 -0
- package/dist/find-in-page/index.js +49 -0
- package/dist/footer/footer.js +1 -0
- package/dist/frontmatter-preview-defaults/index.d.ts +16 -0
- package/dist/frontmatter-preview-defaults/index.js +25 -0
- package/dist/head-with-defaults/index.d.ts +2 -0
- package/dist/head-with-defaults/index.js +16 -0
- package/dist/header/header.d.ts +10 -5
- package/dist/header/header.js +45 -5
- package/dist/header/index.d.ts +1 -1
- package/dist/header/types.d.ts +30 -1
- package/dist/header-with-defaults/index.js +1 -0
- package/dist/home-page/index.d.ts +2 -0
- package/dist/home-page/index.js +11 -5
- package/dist/home-page/prepare-home-data.js +1 -1
- package/dist/i18n-defaults/index.d.ts +22 -0
- package/dist/i18n-defaults/index.js +167 -0
- package/dist/locale-merge/index.d.ts +9 -14
- package/dist/locale-merge/index.js +6 -4
- package/dist/mdx-components/index.js +4 -4
- package/dist/plugins/claude-resources.d.ts +1 -0
- package/dist/plugins/claude-resources.js +4 -2
- package/dist/plugins/doc-history.js +1 -1
- package/dist/{integrations → plugins/internal}/claude-resources/index.d.ts +1 -16
- package/dist/{integrations → plugins/internal}/claude-resources/index.js +0 -9
- package/dist/{integrations → plugins/internal}/doc-history/index.d.ts +0 -17
- package/dist/{integrations → plugins/internal}/doc-history/index.js +0 -4
- package/dist/{integrations → plugins/internal}/doc-history/pre-build.d.ts +2 -4
- package/dist/plugins/internal/llms-txt/index.d.ts +7 -0
- package/dist/{integrations → plugins/internal}/llms-txt/load.d.ts +1 -1
- package/dist/{integrations → plugins/internal}/llms-txt/load.js +2 -2
- package/dist/{integrations → plugins/internal}/llms-txt/strip.d.ts +2 -3
- package/dist/{integrations → plugins/internal}/llms-txt/strip.js +1 -1
- package/dist/{integrations → plugins/internal}/llms-txt/types.d.ts +13 -22
- package/dist/{integrations → plugins/internal}/search-index/collect.js +1 -1
- package/dist/plugins/internal/theme-packs/copy.d.ts +32 -0
- package/dist/plugins/internal/theme-packs/copy.js +45 -0
- package/dist/plugins/internal/theme-packs/dev-middleware.d.ts +22 -0
- package/dist/plugins/internal/theme-packs/dev-middleware.js +80 -0
- package/dist/plugins/internal/theme-packs/index.d.ts +6 -0
- package/dist/plugins/internal/theme-packs/index.js +9 -0
- package/dist/plugins/internal/theme-packs/resolve.d.ts +17 -0
- package/dist/plugins/internal/theme-packs/resolve.js +17 -0
- package/dist/plugins/internal/theme-packs/types.d.ts +22 -0
- package/dist/plugins/internal/theme-packs/types.js +0 -0
- package/dist/plugins/llms-txt.js +1 -1
- package/dist/plugins/routes.js +55 -21
- package/dist/plugins/search-index.js +1 -1
- package/dist/plugins/theme-packs.d.ts +3 -0
- package/dist/plugins/theme-packs.js +40 -0
- package/dist/preset.d.ts +28 -14
- package/dist/preset.js +24 -9
- package/dist/route-context/index.js +4 -6
- package/dist/route-enumerators/index.d.ts +6 -18
- package/dist/route-enumerators/index.js +8 -6
- package/dist/routes/404.js +3 -1
- package/dist/routes/_chrome.js +3 -2
- package/dist/routes/_context.d.ts +7 -3
- package/dist/routes/_context.js +2 -0
- package/dist/routes/_docs-helpers.js +9 -21
- package/dist/safelist.css +1 -1
- package/dist/settings.d.ts +64 -12
- package/dist/sidebar-tree/build-tree.d.ts +3 -4
- package/dist/sidebar-tree/build-tree.js +4 -3
- package/dist/sidebar-tree/index.d.ts +2 -2
- package/dist/sidebar-tree/types.d.ts +6 -17
- package/dist/site-tree-nav-island/index.d.ts +3 -1
- package/dist/site-tree-nav-island/index.js +17 -5
- package/dist/site-tree-nav-island/state.d.ts +4 -0
- package/dist/site-tree-nav-island/state.js +10 -0
- package/dist/tag-helpers/index.d.ts +6 -13
- package/dist/tag-helpers/index.js +5 -23
- package/dist/tag-pages/index.d.ts +8 -21
- package/dist/tag-pages/index.js +14 -10
- package/dist/tags-audit.d.ts +16 -44
- package/dist/tags-audit.js +9 -172
- package/dist/theme/color-scheme-provider.d.ts +2 -3
- package/dist/theme/color-scheme-provider.js +2 -10
- package/dist/theme/index.d.ts +1 -4
- package/dist/theme/index.js +2 -30
- package/dist/theme/theme-pack-provider.d.ts +42 -0
- package/dist/theme/theme-pack-provider.js +75 -0
- package/dist/theme-cli/apply.d.ts +16 -0
- package/dist/theme-cli/apply.js +61 -0
- package/dist/theme-cli/config-io.d.ts +15 -0
- package/dist/theme-cli/config-io.js +51 -0
- package/dist/theme-cli/config-rewriter.d.ts +21 -0
- package/dist/theme-cli/config-rewriter.js +141 -0
- package/dist/theme-cli/config-scanner.d.ts +63 -0
- package/dist/theme-cli/config-scanner.js +288 -0
- package/dist/theme-cli/index.d.ts +7 -0
- package/dist/theme-cli/index.js +38 -0
- package/dist/theme-cli/list.d.ts +27 -0
- package/dist/theme-cli/list.js +64 -0
- package/dist/theme-cli/provenance.d.ts +17 -0
- package/dist/theme-cli/provenance.js +35 -0
- package/dist/theme-cli/registry.d.ts +14 -0
- package/dist/theme-cli/registry.js +13 -0
- package/dist/theme-pack-dialog/dialog-state.d.ts +25 -0
- package/dist/theme-pack-dialog/dialog-state.js +40 -0
- package/dist/theme-pack-dialog/index.d.ts +5 -0
- package/dist/theme-pack-dialog/index.js +152 -0
- package/dist/theme-pack-dialog/theme-pack-card.d.ts +25 -0
- package/dist/theme-pack-dialog/theme-pack-card.js +72 -0
- package/dist/theme-pack-switcher/index.d.ts +49 -0
- package/dist/theme-pack-switcher/index.js +205 -0
- package/dist/theme-pack-switcher/switcher-state.d.ts +56 -0
- package/dist/theme-pack-switcher/switcher-state.js +43 -0
- package/dist/theme-pack-switcher/theme-pack-sync.d.ts +85 -0
- package/dist/theme-pack-switcher/theme-pack-sync.js +121 -0
- package/dist/theme-packs/beacon/fonts/AtkinsonHyperlegible-400-latin.woff2 +0 -0
- package/dist/theme-packs/beacon/fonts/AtkinsonHyperlegible-700-latin.woff2 +0 -0
- package/dist/theme-packs/beacon/fonts/AtkinsonHyperlegible-italic-400-latin.woff2 +0 -0
- package/dist/theme-packs/beacon/fonts/AtkinsonHyperlegible-italic-700-latin.woff2 +0 -0
- package/dist/theme-packs/beacon/fonts/AtkinsonHyperlegibleMono-italic-latin.woff2 +0 -0
- package/dist/theme-packs/beacon/fonts/AtkinsonHyperlegibleMono-latin.woff2 +0 -0
- package/dist/theme-packs/beacon/fonts/OFL.txt +94 -0
- package/dist/theme-packs/beacon/meta.json +37 -0
- package/dist/theme-packs/beacon/pack.css +442 -0
- package/dist/theme-packs/broadsheet/fonts/CourierPrime-400-latin.woff2 +0 -0
- package/dist/theme-packs/broadsheet/fonts/CourierPrime-700-latin.woff2 +0 -0
- package/dist/theme-packs/broadsheet/fonts/OFL.txt +95 -0
- package/dist/theme-packs/broadsheet/fonts/PlayfairDisplay-italic-latin.woff2 +0 -0
- package/dist/theme-packs/broadsheet/fonts/PlayfairDisplay-latin.woff2 +0 -0
- package/dist/theme-packs/broadsheet/fonts/SourceSerif4-italic-latin.woff2 +0 -0
- package/dist/theme-packs/broadsheet/fonts/SourceSerif4-latin.woff2 +0 -0
- package/dist/theme-packs/broadsheet/meta.json +38 -0
- package/dist/theme-packs/broadsheet/pack.css +448 -0
- package/dist/theme-packs/brutalist/fonts/ArchivoBlack-latin.woff2 +0 -0
- package/dist/theme-packs/brutalist/fonts/IBMPlexMono-400-latin.woff2 +0 -0
- package/dist/theme-packs/brutalist/fonts/IBMPlexMono-500-latin.woff2 +0 -0
- package/dist/theme-packs/brutalist/fonts/IBMPlexMono-700-latin.woff2 +0 -0
- package/dist/theme-packs/brutalist/fonts/OFL.txt +95 -0
- package/dist/theme-packs/brutalist/fonts/SpaceGrotesk-latin.woff2 +0 -0
- package/dist/theme-packs/brutalist/meta.json +38 -0
- package/dist/theme-packs/brutalist/pack.css +546 -0
- package/dist/theme-packs/default/meta.json +37 -0
- package/dist/theme-packs/drift/fonts/IBMPlexMono-400-latin-ext.woff2 +0 -0
- package/dist/theme-packs/drift/fonts/IBMPlexMono-400-latin.woff2 +0 -0
- package/dist/theme-packs/drift/fonts/IBMPlexMono-500-latin-ext.woff2 +0 -0
- package/dist/theme-packs/drift/fonts/IBMPlexMono-500-latin.woff2 +0 -0
- package/dist/theme-packs/drift/fonts/IBMPlexSans-italic-latin.woff2 +0 -0
- package/dist/theme-packs/drift/fonts/IBMPlexSans-latin-ext.woff2 +0 -0
- package/dist/theme-packs/drift/fonts/IBMPlexSans-latin.woff2 +0 -0
- package/dist/theme-packs/drift/fonts/OFL.txt +93 -0
- package/dist/theme-packs/drift/meta.json +37 -0
- package/dist/theme-packs/drift/pack.css +478 -0
- package/dist/theme-packs/fjord/fonts/Inter-latin-ext.woff2 +0 -0
- package/dist/theme-packs/fjord/fonts/Inter-latin.woff2 +0 -0
- package/dist/theme-packs/fjord/fonts/JetBrainsMono-latin-ext.woff2 +0 -0
- package/dist/theme-packs/fjord/fonts/JetBrainsMono-latin.woff2 +0 -0
- package/dist/theme-packs/fjord/fonts/OFL.txt +94 -0
- package/dist/theme-packs/fjord/meta.json +37 -0
- package/dist/theme-packs/fjord/pack.css +375 -0
- package/dist/theme-packs/foundry/fonts/Inter-latin-ext.woff2 +0 -0
- package/dist/theme-packs/foundry/fonts/Inter-latin.woff2 +0 -0
- package/dist/theme-packs/foundry/fonts/OFL.txt +93 -0
- package/dist/theme-packs/foundry/meta.json +37 -0
- package/dist/theme-packs/foundry/pack.css +202 -0
- package/dist/theme-packs/futura-editorial/fonts/Jost-latin.woff2 +0 -0
- package/dist/theme-packs/futura-editorial/fonts/NotoSans-italic-latin.woff2 +0 -0
- package/dist/theme-packs/futura-editorial/fonts/NotoSans-latin.woff2 +0 -0
- package/dist/theme-packs/futura-editorial/fonts/OFL.txt +95 -0
- package/dist/theme-packs/futura-editorial/fonts/SpaceMono-400-latin.woff2 +0 -0
- package/dist/theme-packs/futura-editorial/fonts/SpaceMono-700-latin.woff2 +0 -0
- package/dist/theme-packs/futura-editorial/meta.json +38 -0
- package/dist/theme-packs/futura-editorial/pack.css +313 -0
- package/dist/theme-packs/hearth/fonts/Fraunces-italic-latin.woff2 +0 -0
- package/dist/theme-packs/hearth/fonts/Fraunces-latin.woff2 +0 -0
- package/dist/theme-packs/hearth/fonts/Nunito-latin.woff2 +0 -0
- package/dist/theme-packs/hearth/fonts/OFL.txt +95 -0
- package/dist/theme-packs/hearth/fonts/SplineSansMono-latin.woff2 +0 -0
- package/dist/theme-packs/hearth/meta.json +38 -0
- package/dist/theme-packs/hearth/pack.css +385 -0
- package/dist/theme-packs/hollow/fonts/OFL.txt +94 -0
- package/dist/theme-packs/hollow/fonts/SpaceGrotesk-latin.woff2 +0 -0
- package/dist/theme-packs/hollow/fonts/SpaceMono-400-italic-latin.woff2 +0 -0
- package/dist/theme-packs/hollow/fonts/SpaceMono-400-latin.woff2 +0 -0
- package/dist/theme-packs/hollow/fonts/SpaceMono-700-latin.woff2 +0 -0
- package/dist/theme-packs/hollow/meta.json +37 -0
- package/dist/theme-packs/hollow/pack.css +428 -0
- package/dist/theme-packs/ledger/fonts/CrimsonPro-latin-ext-italic.woff2 +0 -0
- package/dist/theme-packs/ledger/fonts/CrimsonPro-latin-ext.woff2 +0 -0
- package/dist/theme-packs/ledger/fonts/CrimsonPro-latin-italic.woff2 +0 -0
- package/dist/theme-packs/ledger/fonts/CrimsonPro-latin.woff2 +0 -0
- package/dist/theme-packs/ledger/fonts/IBMPlexMono-400-latin-ext.woff2 +0 -0
- package/dist/theme-packs/ledger/fonts/IBMPlexMono-400-latin.woff2 +0 -0
- package/dist/theme-packs/ledger/fonts/IBMPlexMono-500-latin-ext.woff2 +0 -0
- package/dist/theme-packs/ledger/fonts/IBMPlexMono-500-latin.woff2 +0 -0
- package/dist/theme-packs/ledger/fonts/OFL.txt +94 -0
- package/dist/theme-packs/ledger/meta.json +37 -0
- package/dist/theme-packs/ledger/pack.css +463 -0
- package/dist/theme-packs/manuscript/fonts/CourierPrime-400-latin-ext.woff2 +0 -0
- package/dist/theme-packs/manuscript/fonts/CourierPrime-400-latin.woff2 +0 -0
- package/dist/theme-packs/manuscript/fonts/CourierPrime-700-latin-ext.woff2 +0 -0
- package/dist/theme-packs/manuscript/fonts/CourierPrime-700-latin.woff2 +0 -0
- package/dist/theme-packs/manuscript/fonts/EBGaramond-latin-italic.woff2 +0 -0
- package/dist/theme-packs/manuscript/fonts/EBGaramond-latin.woff2 +0 -0
- package/dist/theme-packs/manuscript/fonts/OFL.txt +94 -0
- package/dist/theme-packs/manuscript/meta.json +37 -0
- package/dist/theme-packs/manuscript/pack.css +376 -0
- package/dist/theme-packs/matcha/fonts/MPLUS1Code-latin.woff2 +0 -0
- package/dist/theme-packs/matcha/fonts/OFL.txt +95 -0
- package/dist/theme-packs/matcha/fonts/ShipporiMincho-500-latin.woff2 +0 -0
- package/dist/theme-packs/matcha/fonts/ShipporiMincho-700-latin.woff2 +0 -0
- package/dist/theme-packs/matcha/fonts/ZenKakuGothicNew-400-latin.woff2 +0 -0
- package/dist/theme-packs/matcha/fonts/ZenKakuGothicNew-500-latin.woff2 +0 -0
- package/dist/theme-packs/matcha/meta.json +38 -0
- package/dist/theme-packs/matcha/pack.css +409 -0
- package/dist/theme-packs/nocturne/fonts/CormorantGaramond-italic-latin.woff2 +0 -0
- package/dist/theme-packs/nocturne/fonts/CormorantGaramond-latin.woff2 +0 -0
- package/dist/theme-packs/nocturne/fonts/IBMPlexMono-400-latin.woff2 +0 -0
- package/dist/theme-packs/nocturne/fonts/IBMPlexMono-500-latin.woff2 +0 -0
- package/dist/theme-packs/nocturne/fonts/IBMPlexMono-italic-latin.woff2 +0 -0
- package/dist/theme-packs/nocturne/fonts/Manrope-latin.woff2 +0 -0
- package/dist/theme-packs/nocturne/fonts/OFL.txt +95 -0
- package/dist/theme-packs/nocturne/meta.json +38 -0
- package/dist/theme-packs/nocturne/pack.css +502 -0
- package/dist/theme-packs/observatory/fonts/JosefinSans-latin.woff2 +0 -0
- package/dist/theme-packs/observatory/fonts/Jost-italic-latin.woff2 +0 -0
- package/dist/theme-packs/observatory/fonts/Jost-latin.woff2 +0 -0
- package/dist/theme-packs/observatory/fonts/OFL.txt +95 -0
- package/dist/theme-packs/observatory/fonts/SpaceMono-400-latin.woff2 +0 -0
- package/dist/theme-packs/observatory/fonts/SpaceMono-700-latin.woff2 +0 -0
- package/dist/theme-packs/observatory/fonts/SpaceMono-italic-latin.woff2 +0 -0
- package/dist/theme-packs/observatory/meta.json +38 -0
- package/dist/theme-packs/observatory/pack.css +728 -0
- package/dist/theme-packs/onyx/fonts/CormorantGaramond-italic-latin.woff2 +0 -0
- package/dist/theme-packs/onyx/fonts/CormorantGaramond-latin.woff2 +0 -0
- package/dist/theme-packs/onyx/fonts/IBMPlexMono-400-latin-ext.woff2 +0 -0
- package/dist/theme-packs/onyx/fonts/IBMPlexMono-400-latin.woff2 +0 -0
- package/dist/theme-packs/onyx/fonts/IBMPlexMono-500-latin-ext.woff2 +0 -0
- package/dist/theme-packs/onyx/fonts/IBMPlexMono-500-latin.woff2 +0 -0
- package/dist/theme-packs/onyx/fonts/Jost-latin.woff2 +0 -0
- package/dist/theme-packs/onyx/fonts/OFL.txt +95 -0
- package/dist/theme-packs/onyx/meta.json +38 -0
- package/dist/theme-packs/onyx/pack.css +497 -0
- package/dist/theme-packs/phosphor/fonts/JetBrainsMono-latin-ext.woff2 +0 -0
- package/dist/theme-packs/phosphor/fonts/JetBrainsMono-latin.woff2 +0 -0
- package/dist/theme-packs/phosphor/fonts/OFL.txt +94 -0
- package/dist/theme-packs/phosphor/fonts/VT323-latin-ext.woff2 +0 -0
- package/dist/theme-packs/phosphor/fonts/VT323-latin.woff2 +0 -0
- package/dist/theme-packs/phosphor/meta.json +38 -0
- package/dist/theme-packs/phosphor/pack.css +493 -0
- package/dist/theme-packs/solar/fonts/OFL.txt +94 -0
- package/dist/theme-packs/solar/fonts/SourceCodePro-italic-latin.woff2 +0 -0
- package/dist/theme-packs/solar/fonts/SourceCodePro-latin.woff2 +0 -0
- package/dist/theme-packs/solar/fonts/SourceSans3-italic-latin.woff2 +0 -0
- package/dist/theme-packs/solar/fonts/SourceSans3-latin.woff2 +0 -0
- package/dist/theme-packs/solar/meta.json +37 -0
- package/dist/theme-packs/solar/pack.css +380 -0
- package/dist/theme-packs/sumi/fonts/IBMPlexMono-400-latin-ext.woff2 +0 -0
- package/dist/theme-packs/sumi/fonts/IBMPlexMono-400-latin.woff2 +0 -0
- package/dist/theme-packs/sumi/fonts/IBMPlexMono-500-latin-ext.woff2 +0 -0
- package/dist/theme-packs/sumi/fonts/IBMPlexMono-500-latin.woff2 +0 -0
- package/dist/theme-packs/sumi/fonts/OFL.txt +95 -0
- package/dist/theme-packs/sumi/fonts/ShipporiMinchoB1-600-latin.woff2 +0 -0
- package/dist/theme-packs/sumi/fonts/ShipporiMinchoB1-700-latin.woff2 +0 -0
- package/dist/theme-packs/sumi/fonts/ShipporiMinchoB1-800-latin.woff2 +0 -0
- package/dist/theme-packs/sumi/fonts/ZenKakuGothicNew-400-latin.woff2 +0 -0
- package/dist/theme-packs/sumi/fonts/ZenKakuGothicNew-500-latin.woff2 +0 -0
- package/dist/theme-packs/sumi/meta.json +38 -0
- package/dist/theme-packs/sumi/pack.css +502 -0
- package/dist/theme-packs/swissgrid/fonts/IBMPlexMono-400-latin-ext.woff2 +0 -0
- package/dist/theme-packs/swissgrid/fonts/IBMPlexMono-400-latin.woff2 +0 -0
- package/dist/theme-packs/swissgrid/fonts/IBMPlexMono-600-latin.woff2 +0 -0
- package/dist/theme-packs/swissgrid/fonts/Inter-latin-ext.woff2 +0 -0
- package/dist/theme-packs/swissgrid/fonts/Inter-latin.woff2 +0 -0
- package/dist/theme-packs/swissgrid/fonts/InterTight-latin.woff2 +0 -0
- package/dist/theme-packs/swissgrid/fonts/OFL.txt +95 -0
- package/dist/theme-packs/swissgrid/meta.json +38 -0
- package/dist/theme-packs/swissgrid/pack.css +518 -0
- package/dist/theme-packs/washi/fonts/MPlus1Code-400-latin.woff2 +0 -0
- package/dist/theme-packs/washi/fonts/MPlus1Code-500-latin.woff2 +0 -0
- package/dist/theme-packs/washi/fonts/OFL.txt +95 -0
- package/dist/theme-packs/washi/fonts/ShipporiMincho-500-latin.woff2 +0 -0
- package/dist/theme-packs/washi/fonts/ShipporiMincho-600-latin.woff2 +0 -0
- package/dist/theme-packs/washi/fonts/ShipporiMincho-700-latin.woff2 +0 -0
- package/dist/theme-packs/washi/fonts/ZenKakuGothicNew-400-latin.woff2 +0 -0
- package/dist/theme-packs/washi/fonts/ZenKakuGothicNew-500-latin.woff2 +0 -0
- package/dist/theme-packs/washi/fonts/ZenKakuGothicNew-700-latin.woff2 +0 -0
- package/dist/theme-packs/washi/meta.json +38 -0
- package/dist/theme-packs/washi/pack.css +479 -0
- package/dist/theme-packs-registry/index.d.ts +5 -0
- package/dist/theme-packs-registry/index.js +30 -0
- package/dist/theme-packs-registry/load-registry.d.ts +23 -0
- package/dist/theme-packs-registry/load-registry.js +64 -0
- package/dist/theme-packs-registry/meta-schema.d.ts +70 -0
- package/dist/theme-packs-registry/meta-schema.js +38 -0
- package/dist/theme-packs-registry/resolve-enabled-packs.d.ts +25 -0
- package/dist/theme-packs-registry/resolve-enabled-packs.js +43 -0
- package/dist/theme-packs-registry/token-manifest.d.ts +19 -0
- package/dist/theme-packs-registry/token-manifest.js +57 -0
- package/dist/theme-packs-registry/validator.d.ts +35 -0
- package/dist/theme-packs-registry/validator.js +284 -0
- package/dist/theme-toggle/color-scheme-sync.d.ts +2 -4
- package/dist/theme.css +319 -0
- package/dist/versions-page/index.d.ts +2 -2
- package/dist/versions-page/index.js +8 -8
- package/dist/z-index-defaults/index.d.ts +45 -0
- package/dist/z-index-defaults/index.js +34 -0
- package/eject/breadcrumb/breadcrumb.tsx +4 -4
- package/eject/breadcrumb/find-path.ts +2 -2
- package/eject/breadcrumb/index.ts +1 -1
- package/eject/breadcrumb/types.ts +0 -6
- package/eject/code-group/index.tsx +2 -2
- package/eject/doc-history/index.tsx +1 -1
- package/eject/doc-pager/index.tsx +1 -1
- package/eject/footer/footer.tsx +1 -0
- package/eject/header/header.tsx +86 -21
- package/eject/header/index.ts +3 -0
- package/eject/header/types.ts +39 -1
- package/eject/site-tree-nav-island/index.tsx +15 -3
- package/eject/site-tree-nav-island/state.ts +9 -0
- package/eject/theme-toggle/color-scheme-sync.ts +2 -4
- package/package.json +82 -29
- package/routes-src/404.tsx +4 -1
- package/routes-src/_chrome.tsx +31 -8
- package/routes-src/_context.ts +4 -0
- package/routes-src/_docs-helpers.ts +9 -29
- package/routes-src/_virtual.d.ts +38 -2
- package/tsconfig.base.json +29 -0
- package/virtual-modules.d.ts +83 -0
- package/zfb-config-shim.d.ts +210 -0
- package/dist/integrations/llms-txt/index.d.ts +0 -33
- package/dist/theme/color-tweak-export-modal.d.ts +0 -16
- package/dist/theme/color-tweak-export-modal.js +0 -138
- package/dist/theme/design-token-serde.d.ts +0 -183
- package/dist/theme/design-token-serde.js +0 -346
- package/dist/theme/design-token-types.d.ts +0 -13
- package/dist/theme/design-token-types.js +0 -6
- package/dist/theme/iframe-bridge.d.ts +0 -42
- package/dist/theme/iframe-bridge.js +0 -72
- /package/dist/{integrations → plugins/internal}/claude-resources/escape-for-mdx.d.ts +0 -0
- /package/dist/{integrations → plugins/internal}/claude-resources/escape-for-mdx.js +0 -0
- /package/dist/{integrations → plugins/internal}/claude-resources/generate.d.ts +0 -0
- /package/dist/{integrations → plugins/internal}/claude-resources/generate.js +0 -0
- /package/dist/{integrations → plugins/internal}/doc-history/pre-build.js +0 -0
- /package/dist/{integrations → plugins/internal}/llms-txt/dev-middleware.d.ts +0 -0
- /package/dist/{integrations → plugins/internal}/llms-txt/dev-middleware.js +0 -0
- /package/dist/{integrations → plugins/internal}/llms-txt/emit.d.ts +0 -0
- /package/dist/{integrations → plugins/internal}/llms-txt/emit.js +0 -0
- /package/dist/{integrations → plugins/internal}/llms-txt/generate.d.ts +0 -0
- /package/dist/{integrations → plugins/internal}/llms-txt/generate.js +0 -0
- /package/dist/{integrations → plugins/internal}/llms-txt/index.js +0 -0
- /package/dist/{integrations → plugins/internal}/llms-txt/types.js +0 -0
- /package/dist/{integrations → plugins/internal}/search-index/build-emitter.d.ts +0 -0
- /package/dist/{integrations → plugins/internal}/search-index/build-emitter.js +0 -0
- /package/dist/{integrations → plugins/internal}/search-index/collect.d.ts +0 -0
- /package/dist/{integrations → plugins/internal}/search-index/dev-middleware.d.ts +0 -0
- /package/dist/{integrations → plugins/internal}/search-index/dev-middleware.js +0 -0
- /package/dist/{integrations → plugins/internal}/search-index/index.d.ts +0 -0
- /package/dist/{integrations → plugins/internal}/search-index/index.js +0 -0
- /package/dist/{integrations → plugins/internal}/search-index/types.d.ts +0 -0
- /package/dist/{integrations → plugins/internal}/search-index/types.js +0 -0
package/dist/header/header.js
CHANGED
|
@@ -25,6 +25,7 @@ function Header(props) {
|
|
|
25
25
|
siteName,
|
|
26
26
|
headerNav,
|
|
27
27
|
headerRightItems,
|
|
28
|
+
headerRightComponents,
|
|
28
29
|
colorModeEnabled,
|
|
29
30
|
hasLocales,
|
|
30
31
|
hasVersions,
|
|
@@ -37,6 +38,7 @@ function Header(props) {
|
|
|
37
38
|
const pathWithoutBase = urlHelpers.stripBase(currentPath);
|
|
38
39
|
const matchPath = pathForMatch(pathWithoutBase, lang, i18n.defaultLocale);
|
|
39
40
|
const activeNavPath = computeActiveNavPath(headerNav, matchPath);
|
|
41
|
+
const rightItemDispatch = createRightItemDispatch(headerRightComponents);
|
|
40
42
|
return /* @__PURE__ */ jsxs(
|
|
41
43
|
"header",
|
|
42
44
|
{
|
|
@@ -114,7 +116,8 @@ function Header(props) {
|
|
|
114
116
|
search,
|
|
115
117
|
colorModeEnabled,
|
|
116
118
|
hasLocales
|
|
117
|
-
}
|
|
119
|
+
},
|
|
120
|
+
rightItemDispatch
|
|
118
121
|
))
|
|
119
122
|
}
|
|
120
123
|
),
|
|
@@ -268,7 +271,14 @@ function SlotWrapper({
|
|
|
268
271
|
}) {
|
|
269
272
|
return /* @__PURE__ */ jsx("div", { class: className, children }, `right-${index}`);
|
|
270
273
|
}
|
|
271
|
-
const
|
|
274
|
+
const BUILTIN_COMPONENT_NAMES = [
|
|
275
|
+
"theme-toggle",
|
|
276
|
+
"language-switcher",
|
|
277
|
+
"version-switcher",
|
|
278
|
+
"github-link",
|
|
279
|
+
"search"
|
|
280
|
+
];
|
|
281
|
+
const BASE_RIGHT_ITEM_DISPATCH = {
|
|
272
282
|
"trigger:design-token-panel": (_item, index) => /* @__PURE__ */ jsx(
|
|
273
283
|
TriggerButton,
|
|
274
284
|
{
|
|
@@ -385,10 +395,40 @@ const RIGHT_ITEM_DISPATCH = {
|
|
|
385
395
|
);
|
|
386
396
|
}
|
|
387
397
|
};
|
|
388
|
-
function
|
|
398
|
+
function createRightItemDispatch(hostRegistry) {
|
|
399
|
+
const dispatch = new Map(
|
|
400
|
+
Object.entries(BASE_RIGHT_ITEM_DISPATCH)
|
|
401
|
+
);
|
|
402
|
+
if (hostRegistry === void 0) return dispatch;
|
|
403
|
+
for (const [name, component] of Object.entries(hostRegistry)) {
|
|
404
|
+
if (BUILTIN_COMPONENT_NAMES.includes(name)) {
|
|
405
|
+
throw new Error(
|
|
406
|
+
`[zudo-doc] Duplicate header-right component name "${name}" at chromeBindings.headerRightComponents[${JSON.stringify(name)}]: built-in names are reserved and cannot be shadowed. Remove this registry entry or choose a project-owned name.`
|
|
407
|
+
);
|
|
408
|
+
}
|
|
409
|
+
if (typeof component !== "function") {
|
|
410
|
+
throw new TypeError(
|
|
411
|
+
`[zudo-doc] Invalid header-right component "${name}" at chromeBindings.headerRightComponents[${JSON.stringify(name)}]: expected a callable renderer.`
|
|
412
|
+
);
|
|
413
|
+
}
|
|
414
|
+
dispatch.set(`component:${name}`, (item, index, ctx) => {
|
|
415
|
+
if (item.type !== "component") return null;
|
|
416
|
+
const CustomComponent = component;
|
|
417
|
+
return /* @__PURE__ */ jsx(SlotWrapper, { index, children: /* @__PURE__ */ jsx(CustomComponent, { item, index, ...ctx }) });
|
|
418
|
+
});
|
|
419
|
+
}
|
|
420
|
+
return dispatch;
|
|
421
|
+
}
|
|
422
|
+
function renderRightItem(item, index, ctx, dispatch) {
|
|
389
423
|
const key = item.type === "trigger" ? `trigger:${item.trigger}` : item.type === "component" ? `component:${item.component}` : item.type;
|
|
390
|
-
const handler =
|
|
391
|
-
|
|
424
|
+
const handler = dispatch.get(key);
|
|
425
|
+
if (handler) return handler(item, index, ctx);
|
|
426
|
+
if (item.type === "component") {
|
|
427
|
+
throw new Error(
|
|
428
|
+
`[zudo-doc] Unknown header-right component "${item.component}" at Header.headerRightItems[${index}].component. Register a callable renderer as chromeBindings.headerRightComponents["${item.component}"] through settings.chromeBindingsModule, or use a built-in name: ${BUILTIN_COMPONENT_NAMES.join(", ")}.`
|
|
429
|
+
);
|
|
430
|
+
}
|
|
431
|
+
return null;
|
|
392
432
|
}
|
|
393
433
|
export {
|
|
394
434
|
Header
|
package/dist/header/index.d.ts
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* so downstream tests / custom layouts can reuse them without rebuilding
|
|
10
10
|
* the `pathForMatch` / `computeActiveNavPath` regex logic.
|
|
11
11
|
*/
|
|
12
|
-
export type { Locale, HeaderNavChildItem, HeaderNavItem, HeaderRightComponentItem, HeaderRightComponentName, HeaderRightHtmlItem, HeaderRightItem, HeaderRightLinkItem, HeaderRightTriggerItem, HeaderRightTriggerName, } from "./types.js";
|
|
12
|
+
export type { Locale, HeaderNavChildItem, HeaderNavItem, HeaderRightBuiltinComponentName, HeaderRightComponentItem, HeaderRightComponentName, HeaderRightComponentProps, HeaderRightComponentRegistry, HeaderRightHtmlItem, HeaderRightItem, HeaderRightLinkItem, HeaderRightTriggerItem, HeaderRightTriggerName, } from "./types.js";
|
|
13
13
|
export { filterHeaderRightItems, type HeaderRightItemFlags, } from "./right-items.js";
|
|
14
14
|
export { Header, type HeaderProps } from "./header.js";
|
|
15
15
|
export { computeActiveNavPath, isNavItemActive, pathForMatch, type NavItemLike, } from "./nav-active.js";
|
package/dist/header/types.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ComponentChildren } from "preact";
|
|
1
2
|
/**
|
|
2
3
|
* Locale code as seen by the header. Widened from the host's literal
|
|
3
4
|
* union (`"en" | "ja" | …`) to plain `string` at the v2 boundary so the
|
|
@@ -14,12 +15,40 @@ export interface HeaderNavChildItem {
|
|
|
14
15
|
export interface HeaderNavItem extends HeaderNavChildItem {
|
|
15
16
|
children?: HeaderNavChildItem[];
|
|
16
17
|
}
|
|
17
|
-
export type
|
|
18
|
+
export type HeaderRightBuiltinComponentName = "theme-toggle" | "language-switcher" | "version-switcher" | "github-link" | "search";
|
|
19
|
+
/**
|
|
20
|
+
* A serializable name resolved against the package built-ins plus the host's
|
|
21
|
+
* `headerRightComponents` chrome-binding registry. The intersection preserves
|
|
22
|
+
* built-in autocomplete while allowing project-owned names.
|
|
23
|
+
*/
|
|
24
|
+
export type HeaderRightComponentName = HeaderRightBuiltinComponentName | (string & {});
|
|
18
25
|
export type HeaderRightTriggerName = "design-token-panel" | "ai-chat";
|
|
19
26
|
export interface HeaderRightComponentItem {
|
|
20
27
|
type: "component";
|
|
21
28
|
component: HeaderRightComponentName;
|
|
22
29
|
}
|
|
30
|
+
/**
|
|
31
|
+
* Exact props passed to a host `headerRightComponents` renderer. They mirror
|
|
32
|
+
* the existing header-right dispatch context; no callable enters the
|
|
33
|
+
* serialized {@link HeaderRightComponentItem}.
|
|
34
|
+
*/
|
|
35
|
+
export interface HeaderRightComponentProps {
|
|
36
|
+
/** The serialized item that selected this renderer. */
|
|
37
|
+
item: HeaderRightComponentItem;
|
|
38
|
+
/** Zero-based position in the rendered `headerRightItems` array. */
|
|
39
|
+
index: number;
|
|
40
|
+
lang: Locale | undefined;
|
|
41
|
+
githubRepoUrl: string | null;
|
|
42
|
+
githubLabel: string;
|
|
43
|
+
themeToggle: ComponentChildren;
|
|
44
|
+
languageSwitcher: ComponentChildren;
|
|
45
|
+
versionSwitcher: ComponentChildren;
|
|
46
|
+
search: ComponentChildren;
|
|
47
|
+
colorModeEnabled: boolean;
|
|
48
|
+
hasLocales: boolean;
|
|
49
|
+
}
|
|
50
|
+
/** A callable-only host registry keyed by serialized component name. */
|
|
51
|
+
export type HeaderRightComponentRegistry = Record<string, (props: HeaderRightComponentProps) => ComponentChildren>;
|
|
23
52
|
export interface HeaderRightTriggerItem {
|
|
24
53
|
type: "trigger";
|
|
25
54
|
trigger: HeaderRightTriggerName;
|
|
@@ -149,6 +149,7 @@ function createHeaderWithDefaults(ctx) {
|
|
|
149
149
|
siteName: settings.siteName,
|
|
150
150
|
headerNav: settings.headerNav,
|
|
151
151
|
headerRightItems,
|
|
152
|
+
headerRightComponents: ctx.hostBindings.headerRightComponents,
|
|
152
153
|
colorModeEnabled: Boolean(settings.colorMode),
|
|
153
154
|
hasLocales: locales.length > 1,
|
|
154
155
|
hasVersions: Boolean(settings.versions),
|
|
@@ -30,6 +30,8 @@ export interface HomePageViewProps {
|
|
|
30
30
|
tree: DocNavNode[];
|
|
31
31
|
/** Ordered category prefixes, passed through to `SiteTreeNav`. */
|
|
32
32
|
categoryOrder: string[];
|
|
33
|
+
/** Root-category slugs that should start collapsed in `SiteTreeNav`. */
|
|
34
|
+
initiallyCollapsedCategorySlugs?: string[];
|
|
33
35
|
/** Unique tag count for the current locale — gates the "all tags" section
|
|
34
36
|
* together with `settings.docTags`. */
|
|
35
37
|
tagCount: number;
|
package/dist/home-page/index.js
CHANGED
|
@@ -3,9 +3,9 @@ import { Island } from "@takazudo/zfb";
|
|
|
3
3
|
import { DocLayoutWithDefaults } from "../doclayout/index.js";
|
|
4
4
|
import { SiteTreeNav } from "../site-tree-nav-island/index.js";
|
|
5
5
|
import { createHeadWithDefaults } from "../head-with-defaults/index.js";
|
|
6
|
-
import {
|
|
7
|
-
import { createFooterWithDefaults } from "../footer-with-defaults/index.js";
|
|
6
|
+
import { resolveThemePackSsrSlug } from "../theme/theme-pack-provider.js";
|
|
8
7
|
import { deriveComposeMetaTitle, deriveBodyEndIslands } from "../chrome/derive.js";
|
|
8
|
+
import { derivePrimaryChromeSlots } from "../chrome/primary-slots.js";
|
|
9
9
|
import { assertChromeContext } from "../chrome/assert-chrome-context.js";
|
|
10
10
|
import { prepareHomeData } from "./prepare-home-data.js";
|
|
11
11
|
function createHomePageView(ctx) {
|
|
@@ -16,15 +16,19 @@ function createHomePageView(ctx) {
|
|
|
16
16
|
const defaultLocale = ctx.defaultLocale;
|
|
17
17
|
const composeMetaTitle = deriveComposeMetaTitle(ctx);
|
|
18
18
|
const HeadWithDefaults = createHeadWithDefaults(ctx);
|
|
19
|
-
const HeaderWithDefaults =
|
|
20
|
-
const FooterWithDefaults = createFooterWithDefaults(ctx);
|
|
19
|
+
const { Header: HeaderWithDefaults, Footer: FooterWithDefaults } = derivePrimaryChromeSlots(ctx);
|
|
21
20
|
const BodyEndIslands = deriveBodyEndIslands(ctx);
|
|
22
21
|
const homeExtras = ctx.hostBindings.homeExtras;
|
|
22
|
+
const dataThemePack = resolveThemePackSsrSlug(
|
|
23
|
+
ctx.themePackRegistry,
|
|
24
|
+
ctx.settings
|
|
25
|
+
);
|
|
23
26
|
function HomePageView({
|
|
24
27
|
locale,
|
|
25
28
|
extras,
|
|
26
29
|
tree,
|
|
27
30
|
categoryOrder,
|
|
31
|
+
initiallyCollapsedCategorySlugs,
|
|
28
32
|
tagCount,
|
|
29
33
|
wide
|
|
30
34
|
}) {
|
|
@@ -39,6 +43,7 @@ function createHomePageView(ctx) {
|
|
|
39
43
|
title: composeMetaTitle(settings.siteName),
|
|
40
44
|
head: /* @__PURE__ */ jsx(HeadWithDefaults, { title: settings.siteName }),
|
|
41
45
|
lang: locale,
|
|
46
|
+
dataThemePack,
|
|
42
47
|
noindex: settings.noindex,
|
|
43
48
|
hideSidebar: true,
|
|
44
49
|
hideToc: true,
|
|
@@ -99,7 +104,8 @@ function createHomePageView(ctx) {
|
|
|
99
104
|
{
|
|
100
105
|
tree,
|
|
101
106
|
categoryOrder,
|
|
102
|
-
categoryIgnore: ["inbox", "develop"]
|
|
107
|
+
categoryIgnore: ["inbox", "develop"],
|
|
108
|
+
initiallyCollapsedCategorySlugs
|
|
103
109
|
}
|
|
104
110
|
)
|
|
105
111
|
}),
|
|
@@ -28,7 +28,7 @@ function prepareHomeData(ctx, locale, options) {
|
|
|
28
28
|
const grouped = ctx.groupSatelliteNodes(tree, categoryOrder);
|
|
29
29
|
const tagCount = ctx.collectTags(
|
|
30
30
|
navDocs.filter((d) => !d.data.category_no_page),
|
|
31
|
-
(
|
|
31
|
+
(entrySlug, data) => data.slug ?? ctx.toRouteSlug(entrySlug)
|
|
32
32
|
).size;
|
|
33
33
|
return { tree: grouped, categoryOrder, tagCount };
|
|
34
34
|
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Default UI-string translation table.
|
|
3
|
+
*
|
|
4
|
+
* Ported verbatim from the `create-zudo-doc` base template's
|
|
5
|
+
* `src/config/i18n.ts` `translations` export (epic zudolab/zudo-doc#2651,
|
|
6
|
+
* S4 #2654) so a generated project needs no i18n config file of its own.
|
|
7
|
+
*
|
|
8
|
+
* Locale code → key → translated string. Fully populated for `en`, `ja`, and
|
|
9
|
+
* `de`; the other locales in the generator's `SUPPORTED_LANGS` list
|
|
10
|
+
* (zh-cn/zh-tw/ko/es/fr/pt) fall back to `en` at lookup time (the template's
|
|
11
|
+
* `t()` helper does `translations[locale]?.[key] ?? translations[defaultLocale]?.[key] ?? key`)
|
|
12
|
+
* rather than shipping their own fully-translated table here.
|
|
13
|
+
*
|
|
14
|
+
* Locale label/derivation (mapping a locale code to its display label,
|
|
15
|
+
* detecting the active locale from a URL, etc.) stays settings-driven and is
|
|
16
|
+
* reconstructed by `route-context`/`url-helpers` — this module is DATA only.
|
|
17
|
+
* A project's `ZudoDocConfig.translations` override is merged over this
|
|
18
|
+
* default by `zudoDoc()` (#2657); the merge/lookup helper itself is not part
|
|
19
|
+
* of this module.
|
|
20
|
+
*/
|
|
21
|
+
import type { PresetTranslations } from "../preset.js";
|
|
22
|
+
export declare const defaultTranslations: PresetTranslations;
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
const defaultTranslations = {
|
|
2
|
+
en: {
|
|
3
|
+
"nav.gettingStarted": "Getting Started",
|
|
4
|
+
"nav.learn": "Learn",
|
|
5
|
+
"nav.guides": "Guides",
|
|
6
|
+
"nav.components": "Components",
|
|
7
|
+
"nav.reference": "Reference",
|
|
8
|
+
"nav.claude": "Claude",
|
|
9
|
+
"nav.changelog": "Changelog",
|
|
10
|
+
"nav.develop": "Develop",
|
|
11
|
+
"nav.previous": "Previous",
|
|
12
|
+
"nav.next": "Next",
|
|
13
|
+
"nav.overview": "Overview",
|
|
14
|
+
"toc.title": "On this page",
|
|
15
|
+
"docs.browseAll": "Browse all documentation sections.",
|
|
16
|
+
"search.label": "Search",
|
|
17
|
+
"search.placeholder": "Type to search...",
|
|
18
|
+
"search.shortcutHint": "to open search from anywhere",
|
|
19
|
+
"search.resultCount": "{count} results",
|
|
20
|
+
"search.unavailable": "Search unavailable",
|
|
21
|
+
"search.loadingIndex": "Loading search index\u2026",
|
|
22
|
+
"search.noResults": "No results found.",
|
|
23
|
+
"code.copy": "Copy code",
|
|
24
|
+
"code.copied": "Copied!",
|
|
25
|
+
"code.wrapToggle": "Toggle word wrap",
|
|
26
|
+
"doc.editPage": "Edit this page",
|
|
27
|
+
"doc.viewSource": "View source on GitHub",
|
|
28
|
+
"header.github": "GitHub repository",
|
|
29
|
+
"doc.tags": "Tags",
|
|
30
|
+
"doc.taggedWith": "Pages tagged with",
|
|
31
|
+
"doc.allTags": "All Tags",
|
|
32
|
+
"doc.created": "Created",
|
|
33
|
+
"doc.updated": "Updated",
|
|
34
|
+
"doc.noTags": "No tags found.",
|
|
35
|
+
"doc.pageCount": "{count} pages",
|
|
36
|
+
"doc.pageCountSingle": "{count} page",
|
|
37
|
+
"nav.backToMenu": "Back to main menu",
|
|
38
|
+
"doc.fallbackNotice": "This page has not been translated yet and is shown in the original language.",
|
|
39
|
+
"frontmatter.preview.title": "Frontmatter",
|
|
40
|
+
"frontmatter.preview.keyCol": "Key",
|
|
41
|
+
"frontmatter.preview.valueCol": "Value",
|
|
42
|
+
"version.latest": "Latest",
|
|
43
|
+
"version.switcher.label": "Version",
|
|
44
|
+
"version.banner.unmaintained": "You are viewing documentation for an older version.",
|
|
45
|
+
"version.banner.unreleased": "You are viewing unreleased documentation.",
|
|
46
|
+
"version.banner.latestLink": "View the latest version",
|
|
47
|
+
"version.switcher.unavailable": "Not available in this version",
|
|
48
|
+
"version.switcher.allVersions": "All versions",
|
|
49
|
+
"version.page.title": "Documentation Versions",
|
|
50
|
+
"version.page.latest.title": "Latest Version (Current)",
|
|
51
|
+
"version.page.latest.description": "The most up-to-date documentation for the latest stable release.",
|
|
52
|
+
"version.page.latest.link": "View latest docs",
|
|
53
|
+
"version.page.past.title": "Past Versions",
|
|
54
|
+
"version.page.past.description": "Documentation for previously released versions.",
|
|
55
|
+
"version.page.unmaintained": "Unmaintained",
|
|
56
|
+
"version.page.unreleased": "Unreleased",
|
|
57
|
+
"version.page.status": "Status",
|
|
58
|
+
"version.page.docs": "Docs"
|
|
59
|
+
},
|
|
60
|
+
ja: {
|
|
61
|
+
"nav.gettingStarted": "\u306F\u3058\u3081\u306B",
|
|
62
|
+
"nav.learn": "\u5B66\u3076",
|
|
63
|
+
"nav.guides": "\u30AC\u30A4\u30C9",
|
|
64
|
+
"nav.components": "\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8",
|
|
65
|
+
"nav.reference": "\u30EA\u30D5\u30A1\u30EC\u30F3\u30B9",
|
|
66
|
+
"nav.claude": "Claude",
|
|
67
|
+
"nav.changelog": "\u5909\u66F4\u5C65\u6B74",
|
|
68
|
+
"nav.develop": "\u958B\u767A",
|
|
69
|
+
"nav.previous": "\u524D\u3078",
|
|
70
|
+
"nav.next": "\u6B21\u3078",
|
|
71
|
+
"nav.overview": "\u6982\u8981",
|
|
72
|
+
"toc.title": "\u76EE\u6B21",
|
|
73
|
+
"docs.browseAll": "\u3059\u3079\u3066\u306E\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u30BB\u30AF\u30B7\u30E7\u30F3\u3092\u95B2\u89A7",
|
|
74
|
+
"search.label": "\u691C\u7D22",
|
|
75
|
+
"search.placeholder": "\u691C\u7D22\u3057\u305F\u3044\u5358\u8A9E\u3092\u5165\u529B",
|
|
76
|
+
"search.shortcutHint": "\u3044\u3064\u3067\u3082\u691C\u7D22\u30D0\u30FC\u3092\u958B\u3051\u308B",
|
|
77
|
+
"search.resultCount": "{count} \u4EF6",
|
|
78
|
+
"search.unavailable": "\u691C\u7D22\u3092\u5229\u7528\u3067\u304D\u307E\u305B\u3093",
|
|
79
|
+
"search.loadingIndex": "\u691C\u7D22\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u3092\u8AAD\u307F\u8FBC\u307F\u4E2D\u2026",
|
|
80
|
+
"search.noResults": "\u691C\u7D22\u7D50\u679C\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3067\u3057\u305F\u3002",
|
|
81
|
+
"code.copy": "\u30B3\u30FC\u30C9\u3092\u30B3\u30D4\u30FC",
|
|
82
|
+
"code.copied": "\u30B3\u30D4\u30FC\u3057\u307E\u3057\u305F\uFF01",
|
|
83
|
+
"code.wrapToggle": "\u6298\u308A\u8FD4\u3057\u5207\u66FF",
|
|
84
|
+
"doc.editPage": "\u3053\u306E\u30DA\u30FC\u30B8\u3092\u7DE8\u96C6",
|
|
85
|
+
"doc.viewSource": "GitHub \u3067\u30BD\u30FC\u30B9\u3092\u898B\u308B",
|
|
86
|
+
"header.github": "GitHub \u30EA\u30DD\u30B8\u30C8\u30EA",
|
|
87
|
+
"doc.tags": "\u30BF\u30B0",
|
|
88
|
+
"doc.taggedWith": "\u30BF\u30B0\u4ED8\u304D\u30DA\u30FC\u30B8",
|
|
89
|
+
"doc.allTags": "\u3059\u3079\u3066\u306E\u30BF\u30B0",
|
|
90
|
+
"doc.created": "\u4F5C\u6210",
|
|
91
|
+
"doc.updated": "\u66F4\u65B0",
|
|
92
|
+
"doc.noTags": "\u30BF\u30B0\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002",
|
|
93
|
+
"doc.pageCount": "{count}\u30DA\u30FC\u30B8",
|
|
94
|
+
"doc.pageCountSingle": "{count}\u30DA\u30FC\u30B8",
|
|
95
|
+
"nav.backToMenu": "\u30E1\u30A4\u30F3\u30E1\u30CB\u30E5\u30FC\u306B\u623B\u308B",
|
|
96
|
+
"doc.fallbackNotice": "\u3053\u306E\u30DA\u30FC\u30B8\u306F\u307E\u3060\u7FFB\u8A33\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002\u539F\u6587\u306E\u307E\u307E\u8868\u793A\u3057\u3066\u3044\u307E\u3059\u3002",
|
|
97
|
+
"frontmatter.preview.title": "\u30D5\u30ED\u30F3\u30C8\u30DE\u30BF\u30FC",
|
|
98
|
+
"frontmatter.preview.keyCol": "\u30AD\u30FC",
|
|
99
|
+
"frontmatter.preview.valueCol": "\u5024",
|
|
100
|
+
"version.latest": "\u6700\u65B0",
|
|
101
|
+
"version.switcher.label": "\u30D0\u30FC\u30B8\u30E7\u30F3",
|
|
102
|
+
"version.banner.unmaintained": "\u3053\u308C\u306F\u65E7\u30D0\u30FC\u30B8\u30E7\u30F3\u306E\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u3067\u3059\u3002",
|
|
103
|
+
"version.banner.unreleased": "\u3053\u308C\u306F\u672A\u30EA\u30EA\u30FC\u30B9\u306E\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u3067\u3059\u3002",
|
|
104
|
+
"version.banner.latestLink": "\u6700\u65B0\u30D0\u30FC\u30B8\u30E7\u30F3\u3092\u898B\u308B",
|
|
105
|
+
"version.switcher.unavailable": "\u3053\u306E\u30D0\u30FC\u30B8\u30E7\u30F3\u3067\u306F\u5229\u7528\u3067\u304D\u307E\u305B\u3093",
|
|
106
|
+
"version.switcher.allVersions": "\u3059\u3079\u3066\u306E\u30D0\u30FC\u30B8\u30E7\u30F3",
|
|
107
|
+
"version.page.title": "\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u30D0\u30FC\u30B8\u30E7\u30F3",
|
|
108
|
+
"version.page.latest.title": "\u6700\u65B0\u30D0\u30FC\u30B8\u30E7\u30F3\uFF08\u73FE\u5728\uFF09",
|
|
109
|
+
"version.page.latest.description": "\u6700\u65B0\u306E\u5B89\u5B9A\u7248\u30EA\u30EA\u30FC\u30B9\u306E\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u3067\u3059\u3002",
|
|
110
|
+
"version.page.latest.link": "\u6700\u65B0\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u3092\u898B\u308B",
|
|
111
|
+
"version.page.past.title": "\u904E\u53BB\u306E\u30D0\u30FC\u30B8\u30E7\u30F3",
|
|
112
|
+
"version.page.past.description": "\u4EE5\u524D\u306B\u30EA\u30EA\u30FC\u30B9\u3055\u308C\u305F\u30D0\u30FC\u30B8\u30E7\u30F3\u306E\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u3067\u3059\u3002",
|
|
113
|
+
"version.page.unmaintained": "\u30E1\u30F3\u30C6\u30CA\u30F3\u30B9\u7D42\u4E86",
|
|
114
|
+
"version.page.unreleased": "\u672A\u30EA\u30EA\u30FC\u30B9",
|
|
115
|
+
"version.page.status": "\u30B9\u30C6\u30FC\u30BF\u30B9",
|
|
116
|
+
"version.page.docs": "\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8"
|
|
117
|
+
},
|
|
118
|
+
de: {
|
|
119
|
+
"nav.gettingStarted": "Erste Schritte",
|
|
120
|
+
"nav.learn": "Lernen",
|
|
121
|
+
"nav.guides": "Anleitungen",
|
|
122
|
+
"nav.components": "Komponenten",
|
|
123
|
+
"nav.reference": "Referenz",
|
|
124
|
+
"nav.claude": "Claude",
|
|
125
|
+
"nav.changelog": "Changelog",
|
|
126
|
+
"nav.develop": "Entwicklung",
|
|
127
|
+
"nav.previous": "Zur\xFCck",
|
|
128
|
+
"nav.next": "Weiter",
|
|
129
|
+
"nav.overview": "\xDCberblick",
|
|
130
|
+
"toc.title": "Auf dieser Seite",
|
|
131
|
+
"docs.browseAll": "Alle Dokumentationsabschnitte durchsuchen.",
|
|
132
|
+
"search.label": "Suche",
|
|
133
|
+
"search.placeholder": "Suchbegriff eingeben...",
|
|
134
|
+
"search.shortcutHint": "Suche von \xFCberall \xF6ffnen",
|
|
135
|
+
"search.resultCount": "{count} Ergebnisse",
|
|
136
|
+
"search.unavailable": "Suche nicht verf\xFCgbar",
|
|
137
|
+
"search.loadingIndex": "Suchindex wird geladen\u2026",
|
|
138
|
+
"search.noResults": "Keine Ergebnisse gefunden.",
|
|
139
|
+
"code.copy": "Code kopieren",
|
|
140
|
+
"code.copied": "Kopiert!",
|
|
141
|
+
"code.wrapToggle": "Zeilenumbruch umschalten",
|
|
142
|
+
"nav.backToMenu": "Zur\xFCck zum Hauptmen\xFC",
|
|
143
|
+
"doc.editPage": "Diese Seite bearbeiten",
|
|
144
|
+
"doc.viewSource": "Quellcode auf GitHub ansehen",
|
|
145
|
+
"header.github": "GitHub-Repository",
|
|
146
|
+
"doc.tags": "Tags",
|
|
147
|
+
"doc.taggedWith": "Seiten mit Tag",
|
|
148
|
+
"doc.allTags": "Alle Tags",
|
|
149
|
+
"doc.created": "Erstellt",
|
|
150
|
+
"doc.updated": "Aktualisiert",
|
|
151
|
+
"doc.noTags": "Keine Tags gefunden.",
|
|
152
|
+
"doc.pageCount": "{count} Seiten",
|
|
153
|
+
"doc.pageCountSingle": "{count} Seite",
|
|
154
|
+
"doc.fallbackNotice": "Diese Seite wurde noch nicht \xFCbersetzt und wird in der Originalsprache angezeigt.",
|
|
155
|
+
"frontmatter.preview.title": "Frontmatter",
|
|
156
|
+
"frontmatter.preview.keyCol": "Schl\xFCssel",
|
|
157
|
+
"frontmatter.preview.valueCol": "Wert",
|
|
158
|
+
"version.latest": "Neueste",
|
|
159
|
+
"version.switcher.label": "Version",
|
|
160
|
+
"version.banner.unmaintained": "Sie sehen die Dokumentation einer \xE4lteren Version.",
|
|
161
|
+
"version.banner.unreleased": "Sie sehen unver\xF6ffentlichte Dokumentation.",
|
|
162
|
+
"version.banner.latestLink": "Neueste Version anzeigen"
|
|
163
|
+
}
|
|
164
|
+
};
|
|
165
|
+
export {
|
|
166
|
+
defaultTranslations
|
|
167
|
+
};
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Minimal structural interface for a docs entry.
|
|
3
3
|
*
|
|
4
|
-
* Structurally compatible with
|
|
5
|
-
*
|
|
6
|
-
* TypeScript's structural typing ensures compatibility.
|
|
4
|
+
* Structurally compatible with a current zfb collection entry. Callers pass
|
|
5
|
+
* concrete entry arrays and TypeScript preserves the subtype in the result.
|
|
7
6
|
*/
|
|
8
7
|
export interface MergeDocsEntry {
|
|
9
|
-
|
|
8
|
+
slug: string;
|
|
10
9
|
data: {
|
|
11
10
|
slug?: string;
|
|
12
11
|
unlisted?: boolean;
|
|
@@ -58,13 +57,10 @@ export interface MergeLocaleDocsOptions<T extends MergeDocsEntry = MergeDocsEntr
|
|
|
58
57
|
* Only called when `applyDefaultLocaleOnlyFilter` is true. The host stub
|
|
59
58
|
* passes `isDefaultLocaleOnlyPath` from `@/utils/base`.
|
|
60
59
|
*
|
|
61
|
-
*
|
|
62
|
-
*
|
|
63
|
-
*
|
|
64
|
-
* Example: host passes `(path) => isDefaultLocaleOnlyPath(path)` where
|
|
65
|
-
* `isDefaultLocaleOnlyPath` is from `src/utils/base.ts`.
|
|
60
|
+
* Required explicitly so the merge never silently omits the current
|
|
61
|
+
* default-locale-only path contract.
|
|
66
62
|
*/
|
|
67
|
-
isDefaultLocaleOnlyPath
|
|
63
|
+
isDefaultLocaleOnlyPath: (path: string) => boolean;
|
|
68
64
|
}
|
|
69
65
|
/**
|
|
70
66
|
* Result of mergeLocaleDocs.
|
|
@@ -103,10 +99,9 @@ export interface MergeLocaleDocsResult<T extends MergeDocsEntry = MergeDocsEntry
|
|
|
103
99
|
* Locale docs take priority; base docs fill in slugs not covered by the locale
|
|
104
100
|
* collection. Optionally excludes default-locale-only paths and/or unlisted pages.
|
|
105
101
|
*
|
|
106
|
-
* **Slug keying**: slug identity uses
|
|
107
|
-
*
|
|
108
|
-
*
|
|
109
|
-
* loaded docs via `loadDocs` or `bridgeEntries`.
|
|
102
|
+
* **Slug keying**: slug identity uses the explicit frontmatter override or
|
|
103
|
+
* the canonical route form of the current zfb `entry.slug`. This preserves
|
|
104
|
+
* root `index` and nested index-page behavior without mutating the entries.
|
|
110
105
|
*
|
|
111
106
|
* **Array identity**: returns a fresh array on each call — see
|
|
112
107
|
* {@link MergeLocaleDocsResult} for caching guidance.
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { toRouteSlug } from "../slug/index.js";
|
|
1
2
|
function mergeLocaleDocs(options) {
|
|
2
3
|
const {
|
|
3
4
|
baseDocs,
|
|
@@ -8,13 +9,14 @@ function mergeLocaleDocs(options) {
|
|
|
8
9
|
} = options;
|
|
9
10
|
const filteredLocale = keepUnlisted ? localeDocs : localeDocs.filter((d) => !d.data.unlisted);
|
|
10
11
|
const filteredBase = keepUnlisted ? baseDocs : baseDocs.filter((d) => !d.data.unlisted);
|
|
11
|
-
const
|
|
12
|
+
const routeSlug = (entry) => entry.data.slug ?? toRouteSlug(entry.slug);
|
|
13
|
+
const localeSlugSet = new Set(filteredLocale.map(routeSlug));
|
|
12
14
|
let fallbackDocs = filteredBase.filter(
|
|
13
|
-
(
|
|
15
|
+
(entry) => !localeSlugSet.has(routeSlug(entry))
|
|
14
16
|
);
|
|
15
|
-
if (applyDefaultLocaleOnlyFilter
|
|
17
|
+
if (applyDefaultLocaleOnlyFilter) {
|
|
16
18
|
fallbackDocs = fallbackDocs.filter(
|
|
17
|
-
(
|
|
19
|
+
(entry) => !isDefaultLocaleOnlyPath("/docs/" + routeSlug(entry))
|
|
18
20
|
);
|
|
19
21
|
}
|
|
20
22
|
return {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { toChildArray } from "preact";
|
|
2
|
-
import {
|
|
2
|
+
import { defaultComponents } from "../content/index.js";
|
|
3
3
|
import { makeAdmonition } from "../content-admonition/index.js";
|
|
4
4
|
import { CodeGroup } from "../code-group/index.js";
|
|
5
5
|
import { Tabs } from "../code-syntax/index.js";
|
|
@@ -105,7 +105,7 @@ function makeEnlargeableParagraph(imageEnlarge, ContentImg) {
|
|
|
105
105
|
}
|
|
106
106
|
}
|
|
107
107
|
}
|
|
108
|
-
return
|
|
108
|
+
return defaultComponents.p(props);
|
|
109
109
|
};
|
|
110
110
|
}
|
|
111
111
|
function createMdxComponents(options) {
|
|
@@ -119,11 +119,11 @@ function createMdxComponents(options) {
|
|
|
119
119
|
const CategoryTreeNavBound = (props) => navData.CategoryTreeNav({ ...props, lang: locale });
|
|
120
120
|
const SiteTreeNavBound = (props) => navData.SiteTreeNav({ ...props, lang: locale });
|
|
121
121
|
return {
|
|
122
|
-
...
|
|
122
|
+
...defaultComponents,
|
|
123
123
|
// img override: rewrites root-relative src to include settings.base.
|
|
124
124
|
img: ContentImg,
|
|
125
125
|
// p override: wraps block-level images in <figure class="zd-enlargeable">.
|
|
126
|
-
// Must come AFTER ...
|
|
126
|
+
// Must come AFTER ...defaultComponents to override ContentParagraph.
|
|
127
127
|
p: EnlargeableParagraph,
|
|
128
128
|
// Admonitions — real typed Preact components emitting the
|
|
129
129
|
// `.admonition` / `data-admonition` structure the design-system CSS
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { runClaudeResourcesPreStep } from "
|
|
1
|
+
import { runClaudeResourcesPreStep } from "./internal/claude-resources/index.js";
|
|
2
|
+
import { runClaudeResourcesPreStep as runClaudeResourcesPreStep2 } from "./internal/claude-resources/index.js";
|
|
2
3
|
const PLUGIN_NAME = "@takazudo/zudo-doc-claude-resources";
|
|
3
4
|
const plugin = {
|
|
4
5
|
name: PLUGIN_NAME,
|
|
@@ -25,5 +26,6 @@ const plugin = {
|
|
|
25
26
|
};
|
|
26
27
|
var claude_resources_default = plugin;
|
|
27
28
|
export {
|
|
28
|
-
claude_resources_default as default
|
|
29
|
+
claude_resources_default as default,
|
|
30
|
+
runClaudeResourcesPreStep2 as runClaudeResourcesPreStep
|
|
29
31
|
};
|
|
@@ -2,7 +2,7 @@ import {
|
|
|
2
2
|
runDocHistoryMetaStep,
|
|
3
3
|
runDocHistoryPostBuild,
|
|
4
4
|
createDocHistoryDevMiddleware
|
|
5
|
-
} from "
|
|
5
|
+
} from "./internal/doc-history/index.js";
|
|
6
6
|
import { connectToZfbHandler } from "./connect-adapter.js";
|
|
7
7
|
import { getBasePrefix } from "./plugin-utils.js";
|
|
8
8
|
const plugin = {
|
|
@@ -1,10 +1,5 @@
|
|
|
1
1
|
import { generateClaudeResourcesDocs, type ClaudeResourcesConfig } from "./generate.js";
|
|
2
|
-
|
|
3
|
-
name: string;
|
|
4
|
-
options?: Record<string, unknown>;
|
|
5
|
-
}
|
|
6
|
-
export declare const CLAUDE_RESOURCES_PLUGIN_NAME = "@takazudo/zudo-doc-claude-resources";
|
|
7
|
-
/** Options accepted by both the plugin entry and the imperative runner. */
|
|
2
|
+
/** Options accepted by the plugin's generator runner. */
|
|
8
3
|
export interface ClaudeResourcesPluginOptions {
|
|
9
4
|
/**
|
|
10
5
|
* Path to the project's `.claude/` directory holding `commands/`,
|
|
@@ -40,16 +35,6 @@ export interface ClaudeResourcesPluginOptions {
|
|
|
40
35
|
*/
|
|
41
36
|
docsDir?: string;
|
|
42
37
|
}
|
|
43
|
-
/**
|
|
44
|
-
* Declarative plugin entry for `zfb.config.ts`. Returns the
|
|
45
|
-
* `{ name, options }` shape that zfb's plugins array consumes.
|
|
46
|
-
*
|
|
47
|
-
* v0 note: zfb does not yet invoke plugin lifecycles, so registering the
|
|
48
|
-
* plugin alone does not run generation today. Pair it with a call to
|
|
49
|
-
* `runClaudeResourcesPreStep` from a `prebuild`-style script until the
|
|
50
|
-
* lifecycle hook lands. The plugin entry itself is forward-compatible.
|
|
51
|
-
*/
|
|
52
|
-
export declare function claudeResourcesPlugin(options: ClaudeResourcesPluginOptions): ZfbPluginConfig;
|
|
53
38
|
/**
|
|
54
39
|
* Imperative pre-step runner. Resolves relative paths against
|
|
55
40
|
* `projectRoot` (defaults to `process.cwd()`) and invokes the underlying
|
|
@@ -2,13 +2,6 @@ import path from "node:path";
|
|
|
2
2
|
import {
|
|
3
3
|
generateClaudeResourcesDocs
|
|
4
4
|
} from "./generate.js";
|
|
5
|
-
const CLAUDE_RESOURCES_PLUGIN_NAME = "@takazudo/zudo-doc-claude-resources";
|
|
6
|
-
function claudeResourcesPlugin(options) {
|
|
7
|
-
return {
|
|
8
|
-
name: CLAUDE_RESOURCES_PLUGIN_NAME,
|
|
9
|
-
options: { ...options }
|
|
10
|
-
};
|
|
11
|
-
}
|
|
12
5
|
function runClaudeResourcesPreStep(options) {
|
|
13
6
|
const projectRoot = path.resolve(options.projectRoot ?? process.cwd());
|
|
14
7
|
const claudeDir = path.isAbsolute(options.claudeDir) ? options.claudeDir : path.resolve(projectRoot, options.claudeDir);
|
|
@@ -18,8 +11,6 @@ function runClaudeResourcesPreStep(options) {
|
|
|
18
11
|
return generateClaudeResourcesDocs({ claudeDir, projectRoot: scanRoot, docsDir });
|
|
19
12
|
}
|
|
20
13
|
export {
|
|
21
|
-
CLAUDE_RESOURCES_PLUGIN_NAME,
|
|
22
|
-
claudeResourcesPlugin,
|
|
23
14
|
generateClaudeResourcesDocs,
|
|
24
15
|
runClaudeResourcesPreStep
|
|
25
16
|
};
|
|
@@ -24,13 +24,6 @@ export interface DocHistoryOptions {
|
|
|
24
24
|
*/
|
|
25
25
|
maxEntries?: number;
|
|
26
26
|
}
|
|
27
|
-
/** zfb v0 plugin descriptor — mirrors `PluginConfig` in `zfb/config`. */
|
|
28
|
-
export interface DocHistoryPluginDescriptor {
|
|
29
|
-
/** Stable plugin id used by the future zfb plugin runtime to dispatch hooks. */
|
|
30
|
-
name: "doc-history";
|
|
31
|
-
/** Options forwarded verbatim into the zfb config; must be JSON-serialisable. */
|
|
32
|
-
options: DocHistoryOptions;
|
|
33
|
-
}
|
|
34
27
|
/** Default doc-history-server port — matches `@takazudo/zudo-doc-history-server`. */
|
|
35
28
|
export declare const DEFAULT_SERVER_PORT = 4322;
|
|
36
29
|
/** Default git history depth — matches `@takazudo/zudo-doc-history-server`. */
|
|
@@ -41,16 +34,6 @@ export declare const DOC_HISTORY_ROUTE_PREFIX = "/doc-history/";
|
|
|
41
34
|
export declare const DOC_HISTORY_OUTPUT_DIRNAME = "doc-history";
|
|
42
35
|
/** CLI bin name exposed by `@takazudo/zudo-doc-history-server` for inline generation. */
|
|
43
36
|
export declare const DOC_HISTORY_GENERATE_BIN = "doc-history-generate";
|
|
44
|
-
/**
|
|
45
|
-
* Build the zfb config-side descriptor. Add the return value to the
|
|
46
|
-
* `plugins: [...]` array in `zfb.config.ts`.
|
|
47
|
-
*
|
|
48
|
-
* The shape is intentionally limited to `{ name, options }` because
|
|
49
|
-
* that is the only thing today's zfb config loader consumes (see the
|
|
50
|
-
* Rust `PluginConfig` struct in zfb's `config.rs`). Runtime wiring is
|
|
51
|
-
* done through the sibling helpers in this module.
|
|
52
|
-
*/
|
|
53
|
-
export declare function docHistoryPlugin(options: DocHistoryOptions): DocHistoryPluginDescriptor;
|
|
54
37
|
/** Connect-style middleware signature — works as a Vite plugin middleware. */
|
|
55
38
|
export type ConnectMiddleware = (req: IncomingMessage, res: ServerResponse, next: (err?: unknown) => void) => void;
|
|
56
39
|
/** Minimal logger surface used by the middleware on proxy failure. */
|