@takazudo/zudo-doc 5.28.2 → 6.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/CHANGELOG.md +33 -0
- package/README.md +49 -16
- package/bin/gen-z-index.mjs +18 -18
- package/dist/agent-docs/identity.d.ts +4 -0
- package/dist/agent-docs/identity.js +24 -0
- package/dist/agent-docs/index.d.ts +5 -0
- package/dist/agent-docs/index.js +5 -0
- package/dist/agent-docs/limits.d.ts +11 -0
- package/dist/agent-docs/limits.js +24 -0
- package/dist/agent-docs/search.d.ts +14 -0
- package/dist/agent-docs/search.js +82 -0
- package/dist/agent-docs/tokenize.d.ts +2 -0
- package/dist/agent-docs/tokenize.js +22 -0
- package/dist/agent-docs/types.d.ts +68 -0
- package/dist/agent-docs/types.js +0 -0
- package/dist/ai-chat-modal/index.d.ts +1 -4
- package/dist/ai-chat-modal/index.js +183 -123
- package/dist/asset-components/asset-card.d.ts +1 -2
- package/dist/asset-components/asset-card.js +12 -12
- package/dist/asset-components/asset-code.d.ts +1 -2
- package/dist/asset-components/asset-code.js +10 -10
- package/dist/asset-components/shared.d.ts +3 -4
- package/dist/asset-components/shared.js +4 -4
- package/dist/asset-index-page/body.d.ts +5 -6
- package/dist/asset-index-page/body.js +6 -6
- package/dist/asset-index-page/index.d.ts +1 -2
- package/dist/asset-index-page/index.js +1 -1
- package/dist/asset-page/body.d.ts +5 -9
- package/dist/asset-page/body.js +3 -3
- package/dist/asset-page/components.d.ts +16 -17
- package/dist/asset-page/components.js +10 -9
- package/dist/asset-page/index.d.ts +1 -2
- package/dist/asset-page/index.js +1 -1
- package/dist/auto-logo/index.d.ts +1 -2
- package/dist/auto-logo/index.js +2 -2
- package/dist/body-foot-util/body-foot-util-area.d.ts +3 -4
- package/dist/body-foot-util/body-foot-util-area.js +1 -2
- package/dist/body-foot-util/edit-link.d.ts +2 -3
- package/dist/body-foot-util/edit-link.js +1 -2
- package/dist/breadcrumb/breadcrumb.d.ts +6 -6
- package/dist/breadcrumb/breadcrumb.js +3 -4
- package/dist/catalog.js +1 -1
- package/dist/category-nav/index.d.ts +1 -2
- package/dist/category-nav/index.js +11 -5
- package/dist/category-tree-nav/index.d.ts +1 -2
- package/dist/category-tree-nav/index.js +3 -3
- package/dist/chrome/derive.d.ts +18 -27
- package/dist/chrome/derive.js +47 -29
- package/dist/chrome/index.d.ts +5 -5
- package/dist/chrome/index.js +1 -1
- package/dist/chrome/island-data.d.ts +4 -0
- package/dist/chrome/island-data.js +52 -0
- package/dist/chrome/primary-slots.d.ts +2 -3
- package/dist/chrome-bindings.d.ts +30 -22
- package/dist/code-group/index.d.ts +3 -4
- package/dist/code-group/index.js +3 -7
- package/dist/code-syntax/code-block-enhancer.d.ts +1 -2
- package/dist/code-syntax/code-block-enhancer.js +2 -2
- package/dist/code-syntax/mermaid-init.d.ts +1 -2
- package/dist/code-syntax/mermaid-init.js +5 -2
- package/dist/code-syntax/tabs-init-script.js +1 -1
- package/dist/code-syntax/tabs-init.d.ts +1 -2
- package/dist/code-syntax/tabs-init.js +2 -2
- package/dist/code-syntax/tabs.d.ts +6 -6
- package/dist/code-syntax/tabs.js +8 -8
- package/dist/compiled.css +2937 -2942
- package/dist/config/component-tokens.d.ts +1 -1
- package/dist/config/component-tokens.js +22 -0
- package/dist/config-assertions/index.d.ts +13 -0
- package/dist/config-assertions/index.js +14 -0
- package/dist/config.d.ts +36 -17
- package/dist/config.js +23 -95
- package/dist/content/content-blockquote.d.ts +2 -3
- package/dist/content/content-blockquote.js +3 -3
- package/dist/content/content-code.d.ts +3 -4
- package/dist/content/content-code.js +5 -5
- package/dist/content/content-link.d.ts +3 -4
- package/dist/content/content-link.js +10 -10
- package/dist/content/content-ol.d.ts +2 -3
- package/dist/content/content-ol.js +5 -4
- package/dist/content/content-paragraph.d.ts +2 -3
- package/dist/content/content-paragraph.js +1 -1
- package/dist/content/content-strong.d.ts +2 -3
- package/dist/content/content-strong.js +3 -3
- package/dist/content/content-table.d.ts +2 -3
- package/dist/content/content-table.js +4 -4
- package/dist/content/content-ul.d.ts +2 -3
- package/dist/content/content-ul.js +4 -4
- package/dist/content/heading-h2.d.ts +2 -3
- package/dist/content/heading-h2.js +4 -4
- package/dist/content/heading-h3.d.ts +2 -3
- package/dist/content/heading-h3.js +4 -4
- package/dist/content/heading-h4.d.ts +2 -3
- package/dist/content/heading-h4.js +4 -4
- package/dist/content-admonition/index.d.ts +3 -4
- package/dist/content-admonition/index.js +2 -2
- package/dist/content.css +35 -33
- package/dist/design-token-panel-bootstrap-controller.d.ts +178 -0
- package/dist/design-token-panel-bootstrap-controller.js +359 -0
- package/dist/design-token-panel-bootstrap-island.d.ts +5 -0
- package/dist/design-token-panel-bootstrap-island.js +19 -0
- package/dist/design-token-panel-bootstrap.d.ts +5 -195
- package/dist/design-token-panel-bootstrap.js +3 -288
- package/dist/desktop-sidebar-toggle-island/index.d.ts +2 -7
- package/dist/desktop-sidebar-toggle-island/index.js +2 -58
- package/dist/desktop-sidebar-toggle-island/island.d.ts +4 -0
- package/dist/desktop-sidebar-toggle-island/island.js +43 -0
- package/dist/desktop-sidebar-toggle-island/storage.d.ts +4 -0
- package/dist/desktop-sidebar-toggle-island/storage.js +29 -0
- package/dist/desktop-toc-toggle-island/index.d.ts +2 -7
- package/dist/desktop-toc-toggle-island/index.js +2 -58
- package/dist/desktop-toc-toggle-island/island.d.ts +4 -0
- package/dist/desktop-toc-toggle-island/island.js +43 -0
- package/dist/desktop-toc-toggle-island/storage.d.ts +4 -0
- package/dist/desktop-toc-toggle-island/storage.js +29 -0
- package/dist/details/details.d.ts +3 -4
- package/dist/details/details.js +1 -1
- package/dist/doc-body-end/index.d.ts +1 -2
- package/dist/doc-body-end/index.js +1 -1
- package/dist/doc-body-end-islands/design-token-panel-island.d.ts +2 -2
- package/dist/doc-body-end-islands/design-token-panel-island.js +3 -7
- package/dist/doc-body-end-islands/index.d.ts +4 -21
- package/dist/doc-body-end-islands/index.js +5 -3
- package/dist/doc-body-end-islands/theme-pack-switcher-island.d.ts +3 -13
- package/dist/doc-body-end-islands/theme-pack-switcher-island.js +11 -13
- package/dist/doc-content-header/index.d.ts +1 -2
- package/dist/doc-content-header/index.js +1 -1
- package/dist/doc-history/index.d.ts +1 -1
- package/dist/doc-history/index.js +166 -141
- package/dist/doc-history-area/index.d.ts +6 -4
- package/dist/doc-history-area/index.js +17 -16
- package/dist/doc-metainfo-area/index.d.ts +2 -3
- package/dist/doc-metainfo-area/index.js +1 -1
- package/dist/doc-page-renderer/index.d.ts +13 -7
- package/dist/doc-page-renderer/index.js +10 -1
- package/dist/doc-page-shell/index.d.ts +20 -7
- package/dist/doc-page-shell/index.js +17 -6
- package/dist/doc-pager/index.d.ts +1 -2
- package/dist/doc-pager/index.js +3 -3
- package/dist/doc-tags-area/index.d.ts +2 -3
- package/dist/doc-tags-area/index.js +1 -1
- package/dist/doclayout/doc-layout-with-defaults.d.ts +9 -9
- package/dist/doclayout/doc-layout-with-defaults.js +5 -15
- package/dist/doclayout/doc-layout.d.ts +26 -27
- package/dist/doclayout/doc-layout.js +23 -14
- package/dist/docs-schema/index.d.ts +4 -0
- package/dist/docs-schema/index.js +1 -0
- package/dist/extract-headings/index.js +43 -12
- package/dist/factory-context/index.d.ts +22 -19
- package/dist/features.css +75 -8
- package/dist/find-in-page/find-bar.d.ts +4 -2
- package/dist/find-in-page/find-bar.js +58 -69
- package/dist/find-in-page/index.d.ts +2 -8
- package/dist/find-in-page/index.js +33 -30
- package/dist/footer/footer.d.ts +3 -4
- package/dist/footer/footer.js +3 -3
- package/dist/footer-with-defaults/index.d.ts +2 -3
- package/dist/footer-with-defaults/index.js +1 -1
- package/dist/frontmatter-preview-defaults/index.js +1 -0
- package/dist/head/doc-head.d.ts +1 -1
- package/dist/head/doc-head.js +24 -32
- package/dist/head/og-tags.d.ts +1 -1
- package/dist/head/og-tags.js +8 -7
- package/dist/head/twitter-card.d.ts +1 -1
- package/dist/head/twitter-card.js +1 -1
- package/dist/head-with-defaults/index.d.ts +7 -2
- package/dist/head-with-defaults/index.js +46 -32
- package/dist/header/header.d.ts +8 -8
- package/dist/header/header.js +9 -11
- package/dist/header/types.d.ts +7 -7
- package/dist/header-with-defaults/index.d.ts +3 -4
- package/dist/header-with-defaults/index.js +27 -14
- package/dist/home-intro/index.d.ts +2 -5
- package/dist/home-intro/index.js +7 -5
- package/dist/home-intro/prepare.js +4 -3
- package/dist/home-page/index.d.ts +3 -3
- package/dist/home-page/index.js +19 -17
- package/dist/html-preview-wrapper/highlighted-code.d.ts +3 -4
- package/dist/html-preview-wrapper/highlighted-code.js +19 -17
- package/dist/html-preview-wrapper/html-preview-wrapper.d.ts +4 -25
- package/dist/html-preview-wrapper/html-preview-wrapper.js +2 -87
- package/dist/html-preview-wrapper/html-preview.d.ts +3 -10
- package/dist/html-preview-wrapper/html-preview.js +13 -37
- package/dist/html-preview-wrapper/index.d.ts +2 -1
- package/dist/html-preview-wrapper/index.js +1 -1
- package/dist/html-preview-wrapper/preview-base.d.ts +3 -5
- package/dist/html-preview-wrapper/preview-base.js +56 -59
- package/dist/html-preview-wrapper/wrapper.d.ts +20 -0
- package/dist/html-preview-wrapper/wrapper.js +37 -0
- package/dist/hydration-pending.d.ts +3 -5
- package/dist/hydration-pending.js +7 -5
- package/dist/i18n-version/language-switcher.d.ts +5 -32
- package/dist/i18n-version/language-switcher.js +5 -106
- package/dist/i18n-version/switcher-generated-scripts.d.ts +2 -0
- package/dist/i18n-version/switcher-generated-scripts.js +107 -0
- package/dist/i18n-version/switcher-url-state.d.ts +76 -0
- package/dist/i18n-version/switcher-url-state.js +103 -0
- package/dist/i18n-version/version-banner.d.ts +2 -3
- package/dist/i18n-version/version-banner.js +1 -1
- package/dist/i18n-version/version-switcher.d.ts +5 -50
- package/dist/i18n-version/version-switcher.js +5 -157
- package/dist/icons/index.d.ts +18 -19
- package/dist/icons/index.js +17 -33
- package/dist/image-enlarge/index.d.ts +1 -10
- package/dist/image-enlarge/index.js +80 -55
- package/dist/image-enlarge/public.d.ts +2 -0
- package/dist/image-enlarge/public.js +6 -0
- package/dist/image-enlarge/ssr-fallback.d.ts +2 -0
- package/dist/image-enlarge/ssr-fallback.js +8 -0
- package/dist/index.d.ts +11 -4
- package/dist/inline-version-switcher/index.d.ts +1 -2
- package/dist/inline-version-switcher/index.js +1 -1
- package/dist/island-types/index.d.ts +2 -2
- package/dist/island-types/index.js +1 -5
- package/dist/math-block/index.d.ts +4 -7
- package/dist/math-block/index.js +5 -5
- package/dist/mcp/handler.d.ts +8 -0
- package/dist/mcp/handler.js +129 -0
- package/dist/mcp/index.d.ts +4 -0
- package/dist/mcp/index.js +7 -0
- package/dist/mcp/loader.d.ts +19 -0
- package/dist/mcp/loader.js +202 -0
- package/dist/mdx-components/index.js +40 -108
- package/dist/mermaid-enlarge/index.d.ts +1 -8
- package/dist/mermaid-enlarge/index.js +174 -158
- package/dist/mermaid-enlarge/public.d.ts +2 -0
- package/dist/mermaid-enlarge/public.js +6 -0
- package/dist/mermaid-enlarge/ssr-fallback.d.ts +2 -0
- package/dist/mermaid-enlarge/ssr-fallback.js +8 -0
- package/dist/metainfo/doc-metainfo.d.ts +2 -3
- package/dist/metainfo/doc-metainfo.js +1 -4
- package/dist/metainfo/doc-tags.d.ts +2 -3
- package/dist/metainfo/doc-tags.js +1 -1
- package/dist/metainfo/frontmatter-preview.d.ts +3 -4
- package/dist/metainfo/frontmatter-preview.js +1 -1
- package/dist/nav-data-prep/index.js +6 -4
- package/dist/nav-indexing/category-nav.d.ts +2 -3
- package/dist/nav-indexing/category-nav.js +1 -2
- package/dist/nav-indexing/category-tree-nav.d.ts +2 -3
- package/dist/nav-indexing/category-tree-nav.js +1 -1
- package/dist/nav-indexing/doc-card-grid.d.ts +2 -3
- package/dist/nav-indexing/doc-card-grid.js +1 -2
- package/dist/nav-indexing/docs-sitemap.d.ts +2 -3
- package/dist/nav-indexing/docs-sitemap.js +2 -2
- package/dist/nav-indexing/index.d.ts +1 -1
- package/dist/nav-indexing/nav-card-grid.d.ts +2 -3
- package/dist/nav-indexing/nav-card-grid.js +1 -2
- package/dist/nav-indexing/note-tray-index-parts/card-list.d.ts +1 -2
- package/dist/nav-indexing/note-tray-index-parts/card-list.js +4 -4
- package/dist/nav-indexing/note-tray-index-parts/date-line.d.ts +2 -3
- package/dist/nav-indexing/note-tray-index-parts/date-line.js +1 -1
- package/dist/nav-indexing/note-tray-index-parts/index-list.d.ts +1 -2
- package/dist/nav-indexing/note-tray-index-parts/index-list.js +2 -2
- package/dist/nav-indexing/note-tray-index-parts/timeline.d.ts +1 -2
- package/dist/nav-indexing/note-tray-index-parts/timeline.js +2 -2
- package/dist/nav-indexing/note-tray-index.d.ts +1 -2
- package/dist/nav-indexing/note-tray-index.js +1 -1
- package/dist/nav-indexing/site-tree-nav-demo.d.ts +2 -3
- package/dist/nav-indexing/site-tree-nav-demo.js +2 -2
- package/dist/nav-indexing/tag-nav.d.ts +1 -2
- package/dist/nav-indexing/tag-nav.js +1 -1
- package/dist/nav-indexing/types.d.ts +2 -2
- package/dist/nav-indexing/versions-page-content.d.ts +2 -3
- package/dist/nav-indexing/versions-page-content.js +8 -8
- package/dist/note-tray-index/index.d.ts +1 -2
- package/dist/note-tray-index/index.js +1 -1
- package/dist/page-loading/page-loading-overlay.d.ts +1 -2
- package/dist/page-loading/page-loading-overlay.js +3 -5
- package/dist/plugins/agent-export.d.ts +3 -0
- package/dist/plugins/agent-export.js +34 -0
- package/dist/plugins/internal/agent-export/chunk.d.ts +5 -0
- package/dist/plugins/internal/agent-export/chunk.js +90 -0
- package/dist/plugins/internal/agent-export/index.d.ts +24 -0
- package/dist/plugins/internal/agent-export/index.js +123 -0
- package/dist/plugins/internal/agent-export/normalize.d.ts +5 -0
- package/dist/plugins/internal/agent-export/normalize.js +73 -0
- package/dist/plugins/internal/llms-txt/dev-middleware.d.ts +6 -0
- package/dist/plugins/internal/llms-txt/dev-middleware.js +8 -3
- package/dist/plugins/internal/llms-txt/emit.js +23 -6
- package/dist/plugins/internal/llms-txt/generate.d.ts +7 -1
- package/dist/plugins/internal/llms-txt/generate.js +9 -2
- package/dist/plugins/internal/llms-txt/load.d.ts +2 -0
- package/dist/plugins/internal/llms-txt/load.js +20 -4
- package/dist/plugins/internal/llms-txt/types.d.ts +10 -0
- package/dist/plugins/routes.js +4 -0
- package/dist/preset.d.ts +19 -9
- package/dist/preset.js +20 -1
- package/dist/route-context-payload/index.js +1 -1
- package/dist/routes/404.d.ts +2 -3
- package/dist/routes/404.js +1 -1
- package/dist/routes/_chrome.d.ts +5 -5
- package/dist/routes/_chrome.js +7 -2
- package/dist/routes/_context.d.ts +4 -4
- package/dist/routes/_design-token-panel-bootstrap.d.ts +1 -4
- package/dist/routes/_design-token-panel-bootstrap.js +9 -1
- package/dist/routes/docs-slug.d.ts +2 -3
- package/dist/routes/docs-tags-index.d.ts +2 -3
- package/dist/routes/docs-tags-index.js +1 -1
- package/dist/routes/docs-tags-tag.d.ts +2 -3
- package/dist/routes/docs-tags-tag.js +1 -1
- package/dist/routes/docs-versions.d.ts +2 -3
- package/dist/routes/docs-versions.js +1 -1
- package/dist/routes/files-path.d.ts +2 -3
- package/dist/routes/files-path.js +1 -1
- package/dist/routes/index.d.ts +2 -3
- package/dist/routes/index.js +1 -1
- package/dist/routes/locale-docs-slug.d.ts +2 -3
- package/dist/routes/locale-docs-tags-index.d.ts +2 -3
- package/dist/routes/locale-docs-tags-index.js +1 -1
- package/dist/routes/locale-docs-tags-tag.d.ts +2 -3
- package/dist/routes/locale-docs-tags-tag.js +1 -1
- package/dist/routes/locale-docs-versions.d.ts +2 -3
- package/dist/routes/locale-docs-versions.js +1 -1
- package/dist/routes/locale-files-path.d.ts +2 -3
- package/dist/routes/locale-files-path.js +1 -1
- package/dist/routes/locale-index.d.ts +2 -3
- package/dist/routes/locale-index.js +1 -1
- package/dist/routes/mcp.d.ts +5 -0
- package/dist/routes/mcp.js +25 -0
- package/dist/routes/v-docs-slug.d.ts +2 -3
- package/dist/routes/v-locale-docs-slug.d.ts +2 -3
- package/dist/search-widget/index.d.ts +1 -2
- package/dist/search-widget/index.js +4 -7
- package/dist/search-widget-script/generated-script.js +12 -5
- package/dist/settings-defaults.d.ts +2 -0
- package/dist/settings-defaults.js +93 -0
- package/dist/settings.d.ts +8 -2
- package/dist/sidebar/client-data.d.ts +18 -0
- package/dist/sidebar/client-data.js +47 -0
- package/dist/sidebar/index.d.ts +3 -1
- package/dist/sidebar/index.js +3 -1
- package/dist/sidebar/sidebar.d.ts +12 -44
- package/dist/sidebar/sidebar.js +4 -3
- package/dist/sidebar/types.d.ts +14 -0
- package/dist/sidebar-prepaint/index.d.ts +1 -2
- package/dist/sidebar-prepaint/index.js +4 -6
- package/dist/sidebar-resizer/sidebar-resizer-init.d.ts +2 -3
- package/dist/sidebar-resizer/sidebar-resizer-init.js +3 -3
- package/dist/sidebar-toggle-island/index.d.ts +8 -11
- package/dist/sidebar-toggle-island/index.js +75 -62
- package/dist/sidebar-tree/build-tree.js +5 -6
- package/dist/sidebar-tree/types.d.ts +2 -0
- package/dist/sidebar-tree-island/index.d.ts +4 -19
- package/dist/sidebar-tree-island/index.js +782 -436
- package/dist/sidebar-tree-island/scope-state.d.ts +38 -0
- package/dist/sidebar-tree-island/scope-state.js +151 -0
- package/dist/sidebar-tree-island/sidebar-scroll-preserve.js +6 -2
- package/dist/sidebar-utils/index.d.ts +17 -19
- package/dist/sidebar-utils/index.js +100 -3
- package/dist/sidebar-utils/scope.d.ts +11 -0
- package/dist/sidebar-utils/scope.js +67 -0
- package/dist/sidebar-with-defaults/index.d.ts +1 -2
- package/dist/sidebar-with-defaults/index.js +19 -18
- package/dist/site-schema/nav-tree.js +15 -15
- package/dist/site-schema/types.d.ts +1 -0
- package/dist/site-tree-nav/index.d.ts +2 -3
- package/dist/site-tree-nav/index.js +11 -12
- package/dist/site-tree-nav/normalize-island-props.d.ts +16 -0
- package/dist/site-tree-nav/normalize-island-props.js +122 -0
- package/dist/site-tree-nav-island/index.d.ts +3 -3
- package/dist/site-tree-nav-island/index.js +243 -144
- package/dist/smart-break/index.d.ts +3 -4
- package/dist/smart-break/index.js +1 -1
- package/dist/tab-item/tab-item.d.ts +3 -4
- package/dist/tab-item/tab-item.js +1 -1
- package/dist/tag-pages/index.d.ts +3 -3
- package/dist/tag-pages/index.js +10 -10
- package/dist/theme/color-scheme-provider.d.ts +3 -3
- package/dist/theme/color-scheme-provider.js +3 -3
- package/dist/theme/theme-pack-provider.d.ts +1 -1
- package/dist/theme/theme-pack-provider.js +3 -3
- package/dist/theme/theme-toggle.d.ts +2 -3
- package/dist/theme/theme-toggle.js +1 -1
- package/dist/theme-pack-dialog/index.d.ts +1 -1
- package/dist/theme-pack-dialog/index.js +69 -75
- package/dist/theme-pack-dialog/theme-pack-card.d.ts +3 -4
- package/dist/theme-pack-dialog/theme-pack-card.js +19 -17
- package/dist/theme-pack-switcher/index.d.ts +4 -5
- package/dist/theme-pack-switcher/index.js +52 -49
- package/dist/theme-packs/academia/meta.json +1 -1
- package/dist/theme-packs/academia/pack.css +1 -1
- package/dist/theme-packs/bauhaus/meta.json +1 -1
- package/dist/theme-packs/bauhaus/pack.css +2 -2
- package/dist/theme-packs/blueprint/meta.json +1 -1
- package/dist/theme-packs/blueprint/pack.css +2 -2
- package/dist/theme-packs/botanica/meta.json +1 -1
- package/dist/theme-packs/botanica/pack.css +2 -2
- package/dist/theme-packs/broadsheet/meta.json +1 -1
- package/dist/theme-packs/broadsheet/pack.css +2 -2
- package/dist/theme-packs/brutalist/meta.json +1 -1
- package/dist/theme-packs/brutalist/pack.css +2 -2
- package/dist/theme-packs/eink/meta.json +1 -1
- package/dist/theme-packs/eink/pack.css +1 -1
- package/dist/theme-packs/futura-editorial/meta.json +1 -1
- package/dist/theme-packs/futura-editorial/pack.css +2 -2
- package/dist/theme-packs/hearth/meta.json +1 -1
- package/dist/theme-packs/hearth/pack.css +2 -2
- package/dist/theme-packs/ledger/meta.json +1 -1
- package/dist/theme-packs/ledger/pack.css +1 -1
- package/dist/theme-packs/manuscript/meta.json +1 -1
- package/dist/theme-packs/manuscript/pack.css +1 -1
- package/dist/theme-packs/matcha/meta.json +1 -1
- package/dist/theme-packs/matcha/pack.css +2 -2
- package/dist/theme-packs/nocturne/meta.json +1 -1
- package/dist/theme-packs/nocturne/pack.css +2 -2
- package/dist/theme-packs/observatory/meta.json +1 -1
- package/dist/theme-packs/observatory/pack.css +2 -2
- package/dist/theme-packs/onyx/meta.json +1 -1
- package/dist/theme-packs/onyx/pack.css +2 -2
- package/dist/theme-packs/phosphor/meta.json +1 -1
- package/dist/theme-packs/phosphor/pack.css +2 -2
- package/dist/theme-packs/riso/meta.json +1 -1
- package/dist/theme-packs/riso/pack.css +2 -2
- package/dist/theme-packs/sakura/meta.json +1 -1
- package/dist/theme-packs/sakura/pack.css +2 -2
- package/dist/theme-packs/scandi/meta.json +1 -1
- package/dist/theme-packs/scandi/pack.css +1 -1
- package/dist/theme-packs/solar/meta.json +1 -1
- package/dist/theme-packs/solar/pack.css +1 -1
- package/dist/theme-packs/sumi/meta.json +1 -1
- package/dist/theme-packs/sumi/pack.css +2 -2
- package/dist/theme-packs/swissgrid/meta.json +1 -1
- package/dist/theme-packs/swissgrid/pack.css +1 -1
- package/dist/theme-packs/timberline/meta.json +1 -1
- package/dist/theme-packs/timberline/pack.css +2 -2
- package/dist/theme-packs/washi/meta.json +1 -1
- package/dist/theme-packs/washi/pack.css +2 -2
- package/dist/theme-toggle/index.d.ts +1 -1
- package/dist/theme-toggle/index.js +154 -167
- package/dist/theme.css +47 -121
- package/dist/toc/mobile-toc.d.ts +3 -5
- package/dist/toc/mobile-toc.js +29 -27
- package/dist/toc/toc.d.ts +3 -4
- package/dist/toc/toc.js +18 -18
- package/dist/toc/use-active-heading.d.ts +5 -4
- package/dist/toc/use-active-heading.js +36 -30
- package/dist/toc-prepaint/index.d.ts +1 -2
- package/dist/toc-prepaint/index.js +4 -6
- package/dist/transitions/nested-island-props-refresh.d.ts +3 -16
- package/dist/transitions/nested-island-props-refresh.js +133 -151
- package/dist/transitions/page-events.d.ts +8 -13
- package/dist/tree-nav-shared/index.d.ts +4 -5
- package/dist/tree-nav-shared/index.js +6 -7
- package/dist/use-modal-dialog/index.d.ts +9 -63
- package/dist/use-modal-dialog/index.js +41 -59
- package/dist/versions-page/index.d.ts +3 -3
- package/dist/versions-page/index.js +5 -5
- package/dist/wind/index.d.ts +5 -0
- package/dist/wind/index.js +169 -0
- package/dist/wind.json +498 -0
- package/dist/z-index-defaults/index.d.ts +4 -4
- package/dist/zdtp-loader.d.ts +7 -0
- package/dist/zdtp-loader.js +8 -0
- package/eject/asset-components/asset-card.tsx +14 -16
- package/eject/asset-components/asset-code.tsx +10 -12
- package/eject/asset-components/shared.tsx +5 -7
- package/eject/breadcrumb/breadcrumb.tsx +15 -16
- package/eject/code-group/index.tsx +4 -10
- package/eject/content-admonition/index.tsx +5 -6
- package/eject/desktop-sidebar-toggle-island/index.ts +4 -0
- package/eject/desktop-sidebar-toggle-island/island.tsx +50 -0
- package/eject/desktop-sidebar-toggle-island/storage.ts +27 -0
- package/eject/details/details.tsx +3 -5
- package/eject/doc-history/index.tsx +193 -179
- package/eject/doc-pager/index.tsx +3 -4
- package/eject/footer/footer.tsx +7 -9
- package/eject/header/header.tsx +42 -54
- package/eject/header/nav-overflow-script.ts +1 -1
- package/eject/header/types.ts +12 -13
- package/eject/image-enlarge/index.tsx +84 -69
- package/eject/image-enlarge/public.ts +2 -0
- package/eject/image-enlarge/ssr-fallback.tsx +7 -0
- package/eject/page-loading/page-loading-overlay.tsx +8 -15
- package/eject/sidebar/client-data.ts +68 -0
- package/eject/sidebar/index.ts +3 -0
- package/eject/sidebar/sidebar.tsx +16 -97
- package/eject/sidebar/types.ts +15 -0
- package/eject/sidebar-toggle-island/index.tsx +103 -102
- package/eject/sidebar-tree-island/index.tsx +827 -615
- package/eject/sidebar-tree-island/scope-state.ts +154 -0
- package/eject/sidebar-tree-island/sidebar-scroll-preserve.ts +8 -2
- package/eject/site-tree-nav-island/index.tsx +349 -222
- package/eject/tab-item/tab-item.tsx +2 -4
- package/eject/theme-toggle/hydration-pending.ts +6 -10
- package/eject/theme-toggle/index.tsx +133 -173
- package/eject/toc/mobile-toc.tsx +27 -31
- package/eject/toc/toc.tsx +21 -24
- package/eject/toc/use-active-heading.ts +43 -38
- package/package.json +40 -22
- package/routes-src/404.tsx +2 -3
- package/routes-src/_chrome.tsx +7 -2
- package/routes-src/_design-token-panel-bootstrap.tsx +1 -63
- package/routes-src/docs-slug.tsx +2 -3
- package/routes-src/docs-tags-index.tsx +2 -3
- package/routes-src/docs-tags-tag.tsx +2 -3
- package/routes-src/docs-versions.tsx +2 -3
- package/routes-src/files-path.tsx +2 -4
- package/routes-src/index.tsx +2 -3
- package/routes-src/locale-docs-slug.tsx +2 -3
- package/routes-src/locale-docs-tags-index.tsx +2 -3
- package/routes-src/locale-docs-tags-tag.tsx +2 -3
- package/routes-src/locale-docs-versions.tsx +2 -3
- package/routes-src/locale-files-path.tsx +2 -4
- package/routes-src/locale-index.tsx +2 -3
- package/routes-src/mcp.tsx +25 -0
- package/routes-src/v-docs-slug.tsx +2 -3
- package/routes-src/v-locale-docs-slug.tsx +2 -3
- package/tsconfig.base.json +1 -1
- package/dist/safelist.css +0 -2
- package/dist/theme-no-reset.css +0 -379
- package/eject/desktop-sidebar-toggle-island/index.tsx +0 -110
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { jsx, jsxs } from "
|
|
3
|
-
import {
|
|
2
|
+
import { jsx, jsxs } from "@takazudo/zfb/zudo-react/jsx-runtime";
|
|
3
|
+
import { computed, getScope, signal, Show } from "@takazudo/zfb/zudo-react";
|
|
4
4
|
import { ChevronLeft, ChevronRight, Close } from "../icons/index.js";
|
|
5
|
-
import {
|
|
5
|
+
import { hydrationPending } from "../hydration-pending.js";
|
|
6
6
|
import { ThemePackDialog } from "../theme-pack-dialog/index.js";
|
|
7
7
|
import { applyThemePack } from "./theme-pack-sync.js";
|
|
8
8
|
import {
|
|
@@ -17,7 +17,6 @@ function GridIcon({ className }) {
|
|
|
17
17
|
return /* @__PURE__ */ jsxs(
|
|
18
18
|
"svg",
|
|
19
19
|
{
|
|
20
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
21
20
|
class: className || void 0,
|
|
22
21
|
fill: "none",
|
|
23
22
|
viewBox: "0 0 24 24",
|
|
@@ -37,7 +36,6 @@ function PaletteIcon({ className }) {
|
|
|
37
36
|
return /* @__PURE__ */ jsxs(
|
|
38
37
|
"svg",
|
|
39
38
|
{
|
|
40
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
41
39
|
class: className || void 0,
|
|
42
40
|
fill: "none",
|
|
43
41
|
viewBox: "0 0 24 24",
|
|
@@ -60,43 +58,46 @@ function PaletteIcon({ className }) {
|
|
|
60
58
|
}
|
|
61
59
|
);
|
|
62
60
|
}
|
|
63
|
-
const CONTROL_BUTTON_CLASS = "flex items-center gap-hsp-xs rounded border border-muted bg-bg px-hsp-md py-hsp-2xs text-caption text-fg transition-colors hover:border-accent focus-visible:outline-2 focus-visible:outline-accent focus-visible:outline-offset-2 disabled:opacity-50 disabled:pointer-events-none";
|
|
64
|
-
const ICON_BUTTON_CLASS = "flex items-center justify-center rounded p-hsp-2xs text-muted transition-colors hover:text-fg focus-visible:outline-2 focus-visible:outline-accent focus-visible:outline-offset-2 disabled:opacity-50 disabled:pointer-events-none";
|
|
61
|
+
const CONTROL_BUTTON_CLASS = "flex items-center gap-hsp-xs rounded border border-muted bg-bg px-hsp-md py-hsp-2xs text-caption text-fg transition-colors duration-0 hover:border-accent focus-visible:outline-2 focus-visible:outline-accent focus-visible:outline-offset-2 disabled:opacity-50 disabled:pointer-events-none";
|
|
62
|
+
const ICON_BUTTON_CLASS = "flex items-center justify-center rounded p-hsp-2xs text-muted transition-colors duration-0 hover:text-fg focus-visible:outline-2 focus-visible:outline-accent focus-visible:outline-offset-2 disabled:opacity-50 disabled:pointer-events-none";
|
|
65
63
|
function ThemePackSwitcher({
|
|
66
64
|
active,
|
|
67
65
|
order,
|
|
68
66
|
base,
|
|
69
67
|
pendingUntilHydrated = true
|
|
70
68
|
}) {
|
|
71
|
-
const
|
|
72
|
-
const
|
|
73
|
-
const
|
|
74
|
-
const
|
|
75
|
-
const
|
|
76
|
-
const
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
69
|
+
const scope = getScope();
|
|
70
|
+
const pending = hydrationPending(scope, pendingUntilHydrated);
|
|
71
|
+
const open = signal(false);
|
|
72
|
+
const dialogOpen = signal(false);
|
|
73
|
+
const activeSlug = signal(active);
|
|
74
|
+
const launcherRef = { current: null };
|
|
75
|
+
const cardRef = { current: null };
|
|
76
|
+
scope.onActivate(() => connectActivePackSync((slug) => {
|
|
77
|
+
activeSlug.value = slug;
|
|
78
|
+
}));
|
|
79
|
+
scope.effect(() => {
|
|
80
|
+
if (!open.value || dialogOpen.value) return;
|
|
80
81
|
return connectEscapeToClose(() => {
|
|
81
|
-
|
|
82
|
+
open.value = false;
|
|
82
83
|
launcherRef.current?.focus();
|
|
83
84
|
});
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
if (open) cardRef.current?.focus();
|
|
87
|
-
}
|
|
88
|
-
const entry = resolveActiveEntry(order, activeSlug);
|
|
85
|
+
});
|
|
86
|
+
scope.effect(() => {
|
|
87
|
+
if (open.value) cardRef.current?.focus();
|
|
88
|
+
});
|
|
89
|
+
const entry = computed(() => resolveActiveEntry(order, activeSlug.value));
|
|
89
90
|
function cycle(step) {
|
|
90
|
-
const target = step === 1 ? nextPackSlug(order, activeSlug) : prevPackSlug(order, activeSlug);
|
|
91
|
-
if (target !== null && target !== activeSlug) void applyThemePack(target);
|
|
91
|
+
const target = step === 1 ? nextPackSlug(order, activeSlug.value) : prevPackSlug(order, activeSlug.value);
|
|
92
|
+
if (target !== null && target !== activeSlug.value) void applyThemePack(target);
|
|
92
93
|
}
|
|
93
94
|
function closeCard() {
|
|
94
|
-
|
|
95
|
+
open.value = false;
|
|
95
96
|
launcherRef.current?.focus();
|
|
96
97
|
}
|
|
97
98
|
function openDialog() {
|
|
98
|
-
|
|
99
|
-
|
|
99
|
+
open.value = false;
|
|
100
|
+
dialogOpen.value = true;
|
|
100
101
|
}
|
|
101
102
|
return /* @__PURE__ */ jsxs(
|
|
102
103
|
"div",
|
|
@@ -104,18 +105,18 @@ function ThemePackSwitcher({
|
|
|
104
105
|
class: "fixed right-hsp-lg bottom-hsp-lg z-popover flex flex-col items-end gap-vsp-2xs",
|
|
105
106
|
"data-theme-pack-switcher": true,
|
|
106
107
|
children: [
|
|
107
|
-
open
|
|
108
|
+
/* @__PURE__ */ jsx(Show, { when: open, children: () => /* @__PURE__ */ jsxs(
|
|
108
109
|
"div",
|
|
109
110
|
{
|
|
110
111
|
ref: cardRef,
|
|
111
|
-
|
|
112
|
+
tabindex: -1,
|
|
112
113
|
role: "dialog",
|
|
113
114
|
"aria-label": "Theme pack switcher",
|
|
114
115
|
"data-switcher-card": true,
|
|
115
|
-
class: "flex w-[360px] max-w-[calc(
|
|
116
|
+
class: "flex w-[360px] max-w-[calc(100vw_-_2rem)] flex-col gap-vsp-2xs rounded-lg border border-muted bg-surface p-hsp-lg shadow-lg focus-visible:outline-2 focus-visible:outline-accent",
|
|
116
117
|
children: [
|
|
117
118
|
/* @__PURE__ */ jsxs("div", { class: "flex items-start justify-between gap-hsp-sm", children: [
|
|
118
|
-
/* @__PURE__ */ jsx("p", { class: "min-w-0 break-words text-body font-bold text-fg", "aria-live": "polite", children: entry?.name ?? activeSlug }),
|
|
119
|
+
/* @__PURE__ */ jsx("p", { class: "min-w-0 break-words text-body font-bold text-fg", "aria-live": "polite", children: computed(() => entry.value?.name ?? activeSlug.value) }),
|
|
119
120
|
/* @__PURE__ */ jsxs("div", { class: "flex shrink-0 items-center gap-hsp-2xs", children: [
|
|
120
121
|
/* @__PURE__ */ jsx(
|
|
121
122
|
"button",
|
|
@@ -124,7 +125,7 @@ function ThemePackSwitcher({
|
|
|
124
125
|
"aria-label": "Browse all theme packs",
|
|
125
126
|
title: "Browse all theme packs",
|
|
126
127
|
disabled: ThemePackDialogSlot === null,
|
|
127
|
-
|
|
128
|
+
"on:click": openDialog,
|
|
128
129
|
class: ICON_BUTTON_CLASS,
|
|
129
130
|
children: /* @__PURE__ */ jsx(GridIcon, { className: "h-icon-sm w-icon-sm" })
|
|
130
131
|
}
|
|
@@ -135,15 +136,15 @@ function ThemePackSwitcher({
|
|
|
135
136
|
type: "button",
|
|
136
137
|
"aria-label": "Close theme pack switcher",
|
|
137
138
|
title: "Close",
|
|
138
|
-
|
|
139
|
+
"on:click": closeCard,
|
|
139
140
|
class: ICON_BUTTON_CLASS,
|
|
140
|
-
children: /* @__PURE__ */ jsx(Close, {
|
|
141
|
+
children: /* @__PURE__ */ jsx(Close, { class: "h-icon-sm w-icon-sm" })
|
|
141
142
|
}
|
|
142
143
|
)
|
|
143
144
|
] })
|
|
144
145
|
] }),
|
|
145
|
-
entry !== null
|
|
146
|
-
entry !== null && entry.description !== ""
|
|
146
|
+
/* @__PURE__ */ jsx(Show, { when: computed(() => entry.value !== null), children: () => /* @__PURE__ */ jsx("span", { class: "self-start rounded-full border border-muted px-hsp-sm text-micro tracking-wide text-muted uppercase", children: computed(() => entry.value?.mode === "dark" ? "Dark" : "Light") }) }),
|
|
147
|
+
/* @__PURE__ */ jsx(Show, { when: computed(() => entry.value !== null && entry.value.description !== ""), children: () => /* @__PURE__ */ jsx("p", { class: "break-words text-caption text-muted", children: computed(() => entry.value?.description) }) }),
|
|
147
148
|
/* @__PURE__ */ jsxs("div", { class: "flex items-center justify-between gap-hsp-sm", children: [
|
|
148
149
|
/* @__PURE__ */ jsxs(
|
|
149
150
|
"button",
|
|
@@ -151,10 +152,10 @@ function ThemePackSwitcher({
|
|
|
151
152
|
type: "button",
|
|
152
153
|
"aria-label": "Previous theme pack",
|
|
153
154
|
disabled: order.length < 2,
|
|
154
|
-
|
|
155
|
+
"on:click": () => cycle(-1),
|
|
155
156
|
class: CONTROL_BUTTON_CLASS,
|
|
156
157
|
children: [
|
|
157
|
-
/* @__PURE__ */ jsx(ChevronLeft, {
|
|
158
|
+
/* @__PURE__ */ jsx(ChevronLeft, { class: "h-icon-xs w-icon-xs" }),
|
|
158
159
|
"Prev"
|
|
159
160
|
]
|
|
160
161
|
}
|
|
@@ -165,18 +166,18 @@ function ThemePackSwitcher({
|
|
|
165
166
|
type: "button",
|
|
166
167
|
"aria-label": "Next theme pack",
|
|
167
168
|
disabled: order.length < 2,
|
|
168
|
-
|
|
169
|
+
"on:click": () => cycle(1),
|
|
169
170
|
class: CONTROL_BUTTON_CLASS,
|
|
170
171
|
children: [
|
|
171
172
|
"Next",
|
|
172
|
-
/* @__PURE__ */ jsx(ChevronRight, {
|
|
173
|
+
/* @__PURE__ */ jsx(ChevronRight, { class: "h-icon-xs w-icon-xs" })
|
|
173
174
|
]
|
|
174
175
|
}
|
|
175
176
|
)
|
|
176
177
|
] })
|
|
177
178
|
]
|
|
178
179
|
}
|
|
179
|
-
)
|
|
180
|
+
) }),
|
|
180
181
|
/* @__PURE__ */ jsx(
|
|
181
182
|
"button",
|
|
182
183
|
{
|
|
@@ -185,15 +186,15 @@ function ThemePackSwitcher({
|
|
|
185
186
|
"aria-haspopup": "dialog",
|
|
186
187
|
"aria-expanded": open,
|
|
187
188
|
"aria-label": "Theme pack switcher",
|
|
188
|
-
"aria-disabled": pending ? "true" : void 0,
|
|
189
|
+
"aria-disabled": computed(() => pending.value ? "true" : void 0),
|
|
189
190
|
title: "Theme packs",
|
|
190
191
|
"data-switcher-launcher": true,
|
|
191
|
-
"data-zd-pending": pending ? "" : void 0,
|
|
192
|
-
|
|
193
|
-
if (pending) return;
|
|
194
|
-
|
|
192
|
+
"data-zd-pending": computed(() => pending.value ? "" : void 0),
|
|
193
|
+
"on:click": () => {
|
|
194
|
+
if (pending.value) return;
|
|
195
|
+
open.value = !open.value;
|
|
195
196
|
},
|
|
196
|
-
class: "flex h-[2.5rem] w-[2.5rem] items-center justify-center rounded-full border border-muted bg-surface text-fg shadow-lg transition-colors hover:text-accent focus-visible:outline-2 focus-visible:outline-accent focus-visible:outline-offset-2",
|
|
197
|
+
class: "flex h-[2.5rem] w-[2.5rem] items-center justify-center rounded-full border border-muted bg-surface text-fg shadow-lg transition-colors duration-0 hover:text-accent focus-visible:outline-2 focus-visible:outline-accent focus-visible:outline-offset-2",
|
|
197
198
|
children: /* @__PURE__ */ jsx(PaletteIcon, { className: "h-icon-md w-icon-md" })
|
|
198
199
|
}
|
|
199
200
|
),
|
|
@@ -201,9 +202,11 @@ function ThemePackSwitcher({
|
|
|
201
202
|
ThemePackDialogSlot,
|
|
202
203
|
{
|
|
203
204
|
open: dialogOpen,
|
|
204
|
-
onClose: () =>
|
|
205
|
+
onClose: () => {
|
|
206
|
+
dialogOpen.value = false;
|
|
207
|
+
},
|
|
205
208
|
order,
|
|
206
|
-
active: activeSlug,
|
|
209
|
+
active: activeSlug.value,
|
|
207
210
|
base
|
|
208
211
|
}
|
|
209
212
|
) : null
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"name": "Academia",
|
|
5
5
|
"description": "A LaTeX paper for the web — white page, Computer-Modern-black ink, hyperref navy links, numbered theorem admonitions, booktabs tables. Dark mode is a scholarly slate.",
|
|
6
6
|
"mode": "light",
|
|
7
|
-
"version": "1.0.
|
|
7
|
+
"version": "1.0.3",
|
|
8
8
|
"fonts": {
|
|
9
9
|
"sans": "Source Serif 4",
|
|
10
10
|
"mono": "Courier Prime",
|
|
@@ -397,7 +397,7 @@ html[data-theme-pack="academia"] header[data-header] {
|
|
|
397
397
|
}
|
|
398
398
|
html[data-theme-pack="academia"] [data-header-logo] {
|
|
399
399
|
font-variant-caps: small-caps;
|
|
400
|
-
font-weight: 600;
|
|
400
|
+
font-weight: var(--zdc-header-logo-weight, 600);
|
|
401
401
|
letter-spacing: 0.03em;
|
|
402
402
|
font-size: 1.3rem;
|
|
403
403
|
}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"name": "Bauhaus",
|
|
5
5
|
"description": "Primary triad as structure — gallery white, near-black ink, and red, yellow, blue doing structural work: circle, triangle, square markers, thick geometric rules, zero radius.",
|
|
6
6
|
"mode": "light",
|
|
7
|
-
"version": "1.0.
|
|
7
|
+
"version": "1.0.1",
|
|
8
8
|
"fonts": {
|
|
9
9
|
"sans": "Jost",
|
|
10
10
|
"mono": "Space Mono",
|
|
@@ -207,8 +207,8 @@ html[data-theme-pack="bauhaus"] header[data-header] {
|
|
|
207
207
|
background-repeat: no-repeat;
|
|
208
208
|
}
|
|
209
209
|
html[data-theme-pack="bauhaus"] [data-header-logo] {
|
|
210
|
-
font-family: var(--font-display);
|
|
211
|
-
font-weight: 400;
|
|
210
|
+
font-family: var(--zdc-header-logo-font, var(--font-display));
|
|
211
|
+
font-weight: var(--zdc-header-logo-weight, 400);
|
|
212
212
|
letter-spacing: 0.01em;
|
|
213
213
|
}
|
|
214
214
|
html[data-theme-pack="bauhaus"] [data-header-logo]::before {
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"name": "Blueprint",
|
|
5
5
|
"description": "Cyanotype drafting sheet — pale-cyan linework on prussian grid paper, title-block caps, dashed rules, mono-caps labels. Light mode is the vellum original.",
|
|
6
6
|
"mode": "dark",
|
|
7
|
-
"version": "1.0.
|
|
7
|
+
"version": "1.0.2",
|
|
8
8
|
"fonts": {
|
|
9
9
|
"sans": "Inter",
|
|
10
10
|
"mono": "IBM Plex Mono",
|
|
@@ -274,9 +274,9 @@ html[data-theme-pack="blueprint"] header[data-header]::after {
|
|
|
274
274
|
/* the logo is the title-block cell: Josefin caps, bordered, with a
|
|
275
275
|
drafting center-mark stamp */
|
|
276
276
|
html[data-theme-pack="blueprint"] [data-header-logo] {
|
|
277
|
-
font-family: var(--font-display);
|
|
277
|
+
font-family: var(--zdc-header-logo-font, var(--font-display));
|
|
278
278
|
font-size: 1rem;
|
|
279
|
-
font-weight: 600;
|
|
279
|
+
font-weight: var(--zdc-header-logo-weight, 600);
|
|
280
280
|
text-transform: uppercase;
|
|
281
281
|
letter-spacing: 0.14em;
|
|
282
282
|
border: 1px solid color-mix(in oklch, var(--zd-fg) 55%, transparent);
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"name": "Botanica",
|
|
5
5
|
"description": "A vintage botanical plate — herbarium cream, deep green ink, engraved double rules, Latin small-caps plate labels.",
|
|
6
6
|
"mode": "light",
|
|
7
|
-
"version": "1.0.
|
|
7
|
+
"version": "1.0.1",
|
|
8
8
|
"fonts": {
|
|
9
9
|
"sans": "Crimson Pro",
|
|
10
10
|
"mono": "Courier Prime",
|
|
@@ -208,9 +208,9 @@ html[data-theme-pack="botanica"] header[data-header] {
|
|
|
208
208
|
border-bottom: 3px double color-mix(in oklch, var(--zd-fg) 50%, transparent);
|
|
209
209
|
}
|
|
210
210
|
html[data-theme-pack="botanica"] [data-header-logo] {
|
|
211
|
-
font-family: var(--font-display);
|
|
211
|
+
font-family: var(--zdc-header-logo-font, var(--font-display));
|
|
212
212
|
font-size: 1.45rem;
|
|
213
|
-
font-weight: 600;
|
|
213
|
+
font-weight: var(--zdc-header-logo-weight, 600);
|
|
214
214
|
letter-spacing: 0.02em;
|
|
215
215
|
}
|
|
216
216
|
html[data-theme-pack="botanica"] [data-header-logo]::before {
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"name": "Broadsheet",
|
|
5
5
|
"description": "Newspaper editorial — Playfair masthead, Oxford ink rules, a red drop cap, and a night-edition dark mode.",
|
|
6
6
|
"mode": "light",
|
|
7
|
-
"version": "1.0.
|
|
7
|
+
"version": "1.0.3",
|
|
8
8
|
"fonts": {
|
|
9
9
|
"sans": "Source Serif 4",
|
|
10
10
|
"mono": "Courier Prime",
|
|
@@ -202,8 +202,8 @@ html[data-theme-pack="broadsheet"] header[data-header] {
|
|
|
202
202
|
box-shadow: 0 6px 0 -5px var(--zd-fg);
|
|
203
203
|
}
|
|
204
204
|
html[data-theme-pack="broadsheet"] [data-header-logo] {
|
|
205
|
-
font-family: var(--font-display);
|
|
206
|
-
font-weight: 900;
|
|
205
|
+
font-family: var(--zdc-header-logo-font, var(--font-display));
|
|
206
|
+
font-weight: var(--zdc-header-logo-weight, 900);
|
|
207
207
|
letter-spacing: 0.01em;
|
|
208
208
|
}
|
|
209
209
|
html[data-theme-pack="broadsheet"] [data-nav-item] {
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"name": "Brutalist",
|
|
5
5
|
"description": "Raw concrete web — stark black on white, 4px slab borders, zero radius, hazard-orange tape. Structure you can see.",
|
|
6
6
|
"mode": "light",
|
|
7
|
-
"version": "1.0.
|
|
7
|
+
"version": "1.0.4",
|
|
8
8
|
"fonts": {
|
|
9
9
|
"sans": "Space Grotesk",
|
|
10
10
|
"mono": "IBM Plex Mono",
|
|
@@ -255,8 +255,8 @@ html[data-theme-pack="brutalist"] header[data-header] button:focus-visible {
|
|
|
255
255
|
|
|
256
256
|
html[data-theme-pack="brutalist"] [data-header-logo] {
|
|
257
257
|
color: var(--zd-bg);
|
|
258
|
-
font-family: var(--font-display);
|
|
259
|
-
font-weight: 400;
|
|
258
|
+
font-family: var(--zdc-header-logo-font, var(--font-display));
|
|
259
|
+
font-weight: var(--zdc-header-logo-weight, 400);
|
|
260
260
|
font-size: 1.02rem;
|
|
261
261
|
text-transform: uppercase;
|
|
262
262
|
letter-spacing: 0.04em;
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"name": "E-Ink",
|
|
5
5
|
"description": "E-reader grayscale — warm paper, near-black ink, shadowless hairline chrome, zero radius. Code is told by weight, slant, and gray value; only diffs keep a trace of ink-blue and ink-red.",
|
|
6
6
|
"mode": "light",
|
|
7
|
-
"version": "1.0.
|
|
7
|
+
"version": "1.0.1",
|
|
8
8
|
"fonts": {
|
|
9
9
|
"sans": "EB Garamond",
|
|
10
10
|
"mono": "Courier Prime",
|
|
@@ -255,7 +255,7 @@ html[data-theme-pack="eink"] .zd-content hr {
|
|
|
255
255
|
|
|
256
256
|
/* device-menu chrome labels: small, letterspaced, even in Garamond */
|
|
257
257
|
html[data-theme-pack="eink"] [data-header-logo] {
|
|
258
|
-
font-weight: 600;
|
|
258
|
+
font-weight: var(--zdc-header-logo-weight, 600);
|
|
259
259
|
font-size: 1.3rem;
|
|
260
260
|
letter-spacing: 0.01em;
|
|
261
261
|
}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"name": "Futura Editorial",
|
|
5
5
|
"description": "Normal-weight geometric Futura headings over Noto Sans body — clean white, near-black ink, one restrained red accent.",
|
|
6
6
|
"mode": "light",
|
|
7
|
-
"version": "1.0.
|
|
7
|
+
"version": "1.0.2",
|
|
8
8
|
"fonts": {
|
|
9
9
|
"sans": "Noto Sans",
|
|
10
10
|
"mono": "Space Mono",
|
|
@@ -175,8 +175,8 @@ html[data-theme-pack="futura-editorial"] header[data-header] {
|
|
|
175
175
|
border-bottom: 1px solid var(--zd-fg);
|
|
176
176
|
}
|
|
177
177
|
html[data-theme-pack="futura-editorial"] [data-header-logo] {
|
|
178
|
-
font-family: var(--font-display);
|
|
179
|
-
font-weight: 400;
|
|
178
|
+
font-family: var(--zdc-header-logo-font, var(--font-display));
|
|
179
|
+
font-weight: var(--zdc-header-logo-weight, 400);
|
|
180
180
|
font-size: 1.05rem;
|
|
181
181
|
text-transform: uppercase;
|
|
182
182
|
letter-spacing: 0.16em;
|
|
@@ -193,8 +193,8 @@ html[data-theme-pack="hearth"] header[data-header] {
|
|
|
193
193
|
);
|
|
194
194
|
}
|
|
195
195
|
html[data-theme-pack="hearth"] [data-header-logo] {
|
|
196
|
-
font-family: var(--font-display);
|
|
197
|
-
font-weight: 620;
|
|
196
|
+
font-family: var(--zdc-header-logo-font, var(--font-display));
|
|
197
|
+
font-weight: var(--zdc-header-logo-weight, 620);
|
|
198
198
|
color: var(--zd-accent);
|
|
199
199
|
}
|
|
200
200
|
/* Exclude the current page: it carries the base `bg-fg text-bg` inverted
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"name": "Ledger",
|
|
5
5
|
"description": "Cream academic serif in the Tufte tradition — warm paper, ink prose, oxblood links, hairline rules, quiet code.",
|
|
6
6
|
"mode": "light",
|
|
7
|
-
"version": "1.0.
|
|
7
|
+
"version": "1.0.2",
|
|
8
8
|
"fonts": {
|
|
9
9
|
"sans": "Crimson Pro",
|
|
10
10
|
"mono": "IBM Plex Mono",
|
|
@@ -203,7 +203,7 @@ html[data-theme-pack="ledger"] header[data-header] {
|
|
|
203
203
|
border-bottom-color: color-mix(in srgb, var(--zd-fg) 30%, transparent);
|
|
204
204
|
}
|
|
205
205
|
html[data-theme-pack="ledger"] [data-header-logo] {
|
|
206
|
-
font-weight: 500;
|
|
206
|
+
font-weight: var(--zdc-header-logo-weight, 500);
|
|
207
207
|
font-style: italic;
|
|
208
208
|
font-size: 1.4rem;
|
|
209
209
|
letter-spacing: 0.01em;
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"name": "Manuscript",
|
|
5
5
|
"description": "A quiet Garamond book page — warm paper, soft ink, sepia rubrication, small-caps subheads, fleuron section marks.",
|
|
6
6
|
"mode": "light",
|
|
7
|
-
"version": "1.0.
|
|
7
|
+
"version": "1.0.2",
|
|
8
8
|
"fonts": {
|
|
9
9
|
"sans": "EB Garamond",
|
|
10
10
|
"mono": "Courier Prime",
|
|
@@ -183,7 +183,7 @@ html[data-theme-pack="manuscript"] header[data-header] {
|
|
|
183
183
|
html[data-theme-pack="manuscript"] [data-header-logo] {
|
|
184
184
|
font-variant-caps: small-caps;
|
|
185
185
|
letter-spacing: 0.06em;
|
|
186
|
-
font-weight: 600;
|
|
186
|
+
font-weight: var(--zdc-header-logo-weight, 600);
|
|
187
187
|
font-size: 1.35rem;
|
|
188
188
|
}
|
|
189
189
|
html[data-theme-pack="manuscript"] [data-nav-item] {
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"name": "Matcha",
|
|
5
5
|
"description": "Green tea ceremony — deep matcha on warm cream, mincho headings, zen whitespace, tea-foam surfaces in both modes.",
|
|
6
6
|
"mode": "light",
|
|
7
|
-
"version": "1.0.
|
|
7
|
+
"version": "1.0.3",
|
|
8
8
|
"fonts": {
|
|
9
9
|
"sans": "Zen Kaku Gothic New",
|
|
10
10
|
"mono": "M PLUS 1 Code",
|
|
@@ -251,8 +251,8 @@ html[data-theme-pack="matcha"] header[data-header] {
|
|
|
251
251
|
);
|
|
252
252
|
}
|
|
253
253
|
html[data-theme-pack="matcha"] [data-header-logo] {
|
|
254
|
-
font-family: var(--font-display);
|
|
255
|
-
font-weight: 600;
|
|
254
|
+
font-family: var(--zdc-header-logo-font, var(--font-display));
|
|
255
|
+
font-weight: var(--zdc-header-logo-weight, 600);
|
|
256
256
|
letter-spacing: 0.05em;
|
|
257
257
|
}
|
|
258
258
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"name": "Nocturne",
|
|
5
5
|
"description": "Purple midnight — velvet aubergine depths, lavender links, and muted gold hairlines. Elegant, never neon.",
|
|
6
6
|
"mode": "dark",
|
|
7
|
-
"version": "1.0.
|
|
7
|
+
"version": "1.0.3",
|
|
8
8
|
"fonts": {
|
|
9
9
|
"sans": "Manrope",
|
|
10
10
|
"mono": "IBM Plex Mono",
|
|
@@ -235,8 +235,8 @@ html[data-theme-pack="nocturne"] header[data-header] {
|
|
|
235
235
|
);
|
|
236
236
|
}
|
|
237
237
|
html[data-theme-pack="nocturne"] [data-header-logo] {
|
|
238
|
-
font-family: var(--font-display);
|
|
239
|
-
font-weight: 600;
|
|
238
|
+
font-family: var(--zdc-header-logo-font, var(--font-display));
|
|
239
|
+
font-weight: var(--zdc-header-logo-weight, 600);
|
|
240
240
|
font-size: 1.45rem;
|
|
241
241
|
letter-spacing: 0.02em;
|
|
242
242
|
}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"name": "Observatory",
|
|
5
5
|
"description": "Night-sky atlas: star-field depth, constellation-line rules, nebula violet and comet gold over astronomer's navy.",
|
|
6
6
|
"mode": "dark",
|
|
7
|
-
"version": "1.0.
|
|
7
|
+
"version": "1.0.4",
|
|
8
8
|
"fonts": {
|
|
9
9
|
"sans": "Jost",
|
|
10
10
|
"mono": "Space Mono",
|
|
@@ -288,8 +288,8 @@ html[data-theme-pack="observatory"] header[data-header] {
|
|
|
288
288
|
);
|
|
289
289
|
}
|
|
290
290
|
html[data-theme-pack="observatory"] [data-header-logo] {
|
|
291
|
-
font-family: var(--font-display);
|
|
292
|
-
font-weight: 300;
|
|
291
|
+
font-family: var(--zdc-header-logo-font, var(--font-display));
|
|
292
|
+
font-weight: var(--zdc-header-logo-weight, 300);
|
|
293
293
|
font-size: 1.05rem;
|
|
294
294
|
letter-spacing: 0.16em;
|
|
295
295
|
text-transform: uppercase;
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"name": "Onyx",
|
|
5
5
|
"description": "Luxury noir — jet black, champagne serif headings, and a single gold hairline accent. Watch-brand restraint.",
|
|
6
6
|
"mode": "dark",
|
|
7
|
-
"version": "1.0.
|
|
7
|
+
"version": "1.0.4",
|
|
8
8
|
"fonts": {
|
|
9
9
|
"sans": "Jost",
|
|
10
10
|
"mono": "IBM Plex Mono",
|
|
@@ -229,8 +229,8 @@ html[data-theme-pack="onyx"] header[data-header] {
|
|
|
229
229
|
border-bottom: 1px solid color-mix(in oklch, var(--zd-accent) 38%, transparent);
|
|
230
230
|
}
|
|
231
231
|
html[data-theme-pack="onyx"] [data-header-logo] {
|
|
232
|
-
font-family: var(--font-display);
|
|
233
|
-
font-weight: 600;
|
|
232
|
+
font-family: var(--zdc-header-logo-font, var(--font-display));
|
|
233
|
+
font-weight: var(--zdc-header-logo-weight, 600);
|
|
234
234
|
font-size: 1.35rem;
|
|
235
235
|
letter-spacing: 0.04em;
|
|
236
236
|
}
|
|
@@ -225,8 +225,8 @@ html[data-theme-pack="phosphor"] header[data-header] {
|
|
|
225
225
|
border-bottom-color: color-mix(in oklch, var(--zd-accent) 40%, transparent);
|
|
226
226
|
}
|
|
227
227
|
html[data-theme-pack="phosphor"] [data-header-logo] {
|
|
228
|
-
font-family: var(--font-display);
|
|
229
|
-
font-weight: 400;
|
|
228
|
+
font-family: var(--zdc-header-logo-font, var(--font-display));
|
|
229
|
+
font-weight: var(--zdc-header-logo-weight, 400);
|
|
230
230
|
font-size: 1.55rem;
|
|
231
231
|
color: var(--zd-accent);
|
|
232
232
|
}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"name": "Riso",
|
|
5
5
|
"description": "Risograph duotone print — warm paper, two inks (riso blue + fluorescent coral), misregistered offset shadows, and a soft linear paper grain.",
|
|
6
6
|
"mode": "light",
|
|
7
|
-
"version": "1.0.
|
|
7
|
+
"version": "1.0.1",
|
|
8
8
|
"fonts": {
|
|
9
9
|
"sans": "Space Grotesk",
|
|
10
10
|
"mono": "Space Mono",
|
|
@@ -235,8 +235,8 @@ html[data-theme-pack="riso"] header[data-header] {
|
|
|
235
235
|
border-bottom: 3px solid var(--zd-accent);
|
|
236
236
|
}
|
|
237
237
|
html[data-theme-pack="riso"] [data-header-logo] {
|
|
238
|
-
font-family: var(--font-display);
|
|
239
|
-
font-weight: 400;
|
|
238
|
+
font-family: var(--zdc-header-logo-font, var(--font-display));
|
|
239
|
+
font-weight: var(--zdc-header-logo-weight, 400);
|
|
240
240
|
letter-spacing: 0.01em;
|
|
241
241
|
}
|
|
242
242
|
html[data-theme-pack="riso"] [data-header-logo]::before {
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"name": "Sakura",
|
|
5
5
|
"description": "Cherry-blossom pastels — blush-white paper, plum ink, and rose accents on petal-soft corners; dark mode is yozakura, night blossoms under lantern-pink light.",
|
|
6
6
|
"mode": "light",
|
|
7
|
-
"version": "1.0.
|
|
7
|
+
"version": "1.0.2",
|
|
8
8
|
"fonts": {
|
|
9
9
|
"sans": "Nunito",
|
|
10
10
|
"mono": "M PLUS 1 Code",
|
|
@@ -215,8 +215,8 @@ html[data-theme-pack="sakura"] header[data-header] {
|
|
|
215
215
|
|
|
216
216
|
/* wordmark — mincho voice with a single blossom */
|
|
217
217
|
html[data-theme-pack="sakura"] [data-header-logo] {
|
|
218
|
-
font-family: var(--font-display);
|
|
219
|
-
font-weight: 700;
|
|
218
|
+
font-family: var(--zdc-header-logo-font, var(--font-display));
|
|
219
|
+
font-weight: var(--zdc-header-logo-weight, 700);
|
|
220
220
|
letter-spacing: 0.015em;
|
|
221
221
|
}
|
|
222
222
|
html[data-theme-pack="sakura"] [data-header-logo]::after {
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"name": "Scandi",
|
|
5
5
|
"description": "Hygge minimalism — oat linen, sage & clay, pill nav actives and 8px corners; night mode is warm charcoal lit by candle amber.",
|
|
6
6
|
"mode": "light",
|
|
7
|
-
"version": "1.0.
|
|
7
|
+
"version": "1.0.1",
|
|
8
8
|
"fonts": {
|
|
9
9
|
"sans": "Manrope",
|
|
10
10
|
"mono": "Spline Sans Mono",
|