@fecommunity/reactpress 4.0.0-beta.0 → 4.0.0-beta.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/utils/server-bundle.js +7 -0
- package/out/bin/reactpress-theme-client.js +64 -1
- package/out/bin/reactpress.js +94 -482
- package/out/core/services/config.js +4 -1
- package/out/core/services/database/index.js +18 -5
- package/out/core/services/database/sqlite.js +28 -5
- package/out/core/services/init.js +1 -53
- package/out/core/services/local-site.js +15 -10
- package/out/core/services/theme-bootstrap.js +50 -0
- package/out/core/utils/env-file.js +99 -0
- package/out/core/utils/paths.js +5 -4
- package/out/lib/api-dev.js +11 -1
- package/out/lib/bootstrap.js +13 -40
- package/out/lib/cli-events.js +54 -0
- package/out/lib/command-palette.js +53 -0
- package/out/lib/context-status.js +154 -0
- package/out/lib/create-site.js +187 -0
- package/out/lib/database-mode.js +45 -0
- package/out/lib/design-tokens.js +55 -0
- package/out/lib/dev-banner.js +10 -5
- package/out/lib/dev-session.js +9 -2
- package/out/lib/dev.js +117 -66
- package/out/lib/docker.js +12 -0
- package/out/lib/doctor.js +131 -10
- package/out/lib/http.js +20 -0
- package/out/lib/i18n/index.js +5 -1
- package/out/lib/i18n/strings.js +184 -52
- package/out/lib/lifecycle.js +21 -1
- package/out/lib/menu-actions.js +418 -0
- package/out/lib/nginx.js +5 -2
- package/out/lib/paths.js +11 -0
- package/out/lib/pm2.js +9 -2
- package/out/lib/ports.js +134 -13
- package/out/lib/project-type.js +18 -0
- package/out/lib/publish.js +3 -0
- package/out/lib/remote-dev.js +5 -1
- package/out/lib/server-bundle.js +84 -0
- package/out/lib/shell-mode.js +23 -0
- package/out/lib/theme-warmup.js +1 -1
- package/out/shell/app.js +384 -0
- package/out/shell/components/brand-banner.js +93 -0
- package/out/shell/components/command-palette.js +77 -0
- package/out/shell/components/dev-stepper.js +54 -0
- package/out/shell/components/ink-theme.js +86 -0
- package/out/shell/components/menu-list.js +49 -0
- package/out/shell/components/pulse-bar.js +55 -0
- package/out/shell/components/status-rack.js +47 -0
- package/out/shell/hooks/use-terminal-size.js +27 -0
- package/out/shell/ink-shell.mjs +12056 -0
- package/out/shell/lib/shell-layout.js +60 -0
- package/out/shell/runtime/render-ink.js +89 -0
- package/out/ui/banner-startup.js +117 -0
- package/out/ui/banner.js +404 -277
- package/out/ui/interactive.js +199 -125
- package/out/ui/prompts.js +91 -0
- package/out/ui/startup-splash.js +185 -0
- package/out/ui/theme.js +62 -10
- package/package.json +5 -3
- package/server/bin/reactpress-server.js +10 -2
- package/server/dist/app.module.js +13 -25
- package/server/dist/filters/http-exception.filter.js +1 -1
- package/server/dist/generate-swagger.js +12 -11
- package/server/dist/interceptors/transform.interceptor.js +10 -5
- package/server/dist/logger/index.js +5 -4
- package/server/dist/main.js +45 -23
- package/server/dist/modules/article/article-revision.entity.js +1 -1
- package/server/dist/modules/article/article.controller.js +103 -48
- package/server/dist/modules/article/article.entity.js +61 -41
- package/server/dist/modules/article/article.module.js +18 -3
- package/server/dist/modules/article/article.service.js +151 -29
- package/server/dist/modules/auth/auth.controller.js +11 -11
- package/server/dist/modules/auth/auth.module.js +4 -4
- package/server/dist/modules/auth/auth.service.js +8 -7
- package/server/dist/modules/auth/jwt-auth.guard.js +4 -3
- package/server/dist/modules/auth/jwt.strategy.js +4 -3
- package/server/dist/modules/auth/roles.guard.js +2 -2
- package/server/dist/modules/category/category.controller.js +21 -20
- package/server/dist/modules/category/category.entity.js +13 -13
- package/server/dist/modules/category/category.module.js +1 -1
- package/server/dist/modules/category/category.service.js +5 -4
- package/server/dist/modules/comment/comment.controller.js +24 -20
- package/server/dist/modules/comment/comment.entity.js +31 -31
- package/server/dist/modules/comment/comment.module.js +11 -2
- package/server/dist/modules/comment/comment.service.js +43 -16
- package/server/dist/modules/comment/html.js +3 -3
- package/server/dist/modules/file/file.controller.js +22 -20
- package/server/dist/modules/file/file.entity.js +20 -15
- package/server/dist/modules/file/file.module.js +16 -4
- package/server/dist/modules/file/file.service.js +70 -24
- package/server/dist/modules/install/install.controller.js +5 -5
- package/server/dist/modules/install/install.module.js +1 -1
- package/server/dist/modules/install/install.service.js +2 -2
- package/server/dist/modules/knowledge/knowledge.controller.js +35 -33
- package/server/dist/modules/knowledge/knowledge.entity.js +33 -33
- package/server/dist/modules/knowledge/knowledge.module.js +1 -1
- package/server/dist/modules/knowledge/knowledge.service.js +12 -11
- package/server/dist/modules/page/page.controller.js +24 -23
- package/server/dist/modules/page/page.entity.js +27 -27
- package/server/dist/modules/page/page.module.js +1 -1
- package/server/dist/modules/page/page.service.js +12 -12
- package/server/dist/modules/search/search.controller.js +12 -12
- package/server/dist/modules/search/search.entity.js +13 -13
- package/server/dist/modules/search/search.module.js +1 -1
- package/server/dist/modules/search/search.service.js +2 -2
- package/server/dist/modules/setting/setting.constant.js +3 -19
- package/server/dist/modules/setting/setting.controller.js +11 -11
- package/server/dist/modules/setting/setting.entity.js +64 -49
- package/server/dist/modules/setting/setting.module.js +2 -2
- package/server/dist/modules/setting/setting.service.js +169 -24
- package/server/dist/modules/smtp/mail.util.js +5 -9
- package/server/dist/modules/smtp/smtp.controller.js +27 -14
- package/server/dist/modules/smtp/smtp.entity.js +15 -15
- package/server/dist/modules/smtp/smtp.module.js +2 -2
- package/server/dist/modules/smtp/smtp.service.js +40 -12
- package/server/dist/modules/tag/tag.controller.js +24 -22
- package/server/dist/modules/tag/tag.entity.js +12 -12
- package/server/dist/modules/tag/tag.module.js +1 -1
- package/server/dist/modules/tag/tag.service.js +5 -4
- package/server/dist/modules/user/user.controller.js +39 -28
- package/server/dist/modules/user/user.entity.js +22 -22
- package/server/dist/modules/user/user.module.js +2 -2
- package/server/dist/modules/user/user.service.js +16 -12
- package/server/dist/modules/view/view.controller.js +20 -19
- package/server/dist/modules/view/view.entity.js +24 -24
- package/server/dist/modules/view/view.module.js +1 -1
- package/server/dist/modules/view/view.service.js +4 -4
- package/server/dist/node-polyfills.js +24 -0
- package/server/dist/starter.js +202 -14
- package/server/dist/utils/date.util.js +1 -1
- package/server/dist/utils/markdown.util.js +1 -1
- package/server/dist/utils/oss/aliyun-oss-client.js +5 -0
- package/server/dist/utils/oss.util.js +6 -1
- package/server/dist/utils/theme-placeholder-cover.js +94 -0
- package/server/dist/utils/uniqueid.util.js +1 -1
- package/server/dist/utils/upload.util.js +23 -8
- package/server/dist/utils/user.util.js +6 -2
- package/server/package-lock.json +21077 -0
- package/server/package.json +13 -10
- package/server/public/favicon.png +0 -0
- package/templates/config.local.json +1 -1
- package/templates/env.local.default +1 -1
- package/toolkit/dist/.source-fingerprint-toolkit +1 -0
- package/toolkit/dist/admin/index.js +18 -0
- package/toolkit/dist/admin/permissions.js +33 -0
- package/toolkit/dist/admin/registry.js +79 -0
- package/toolkit/dist/api/Article.js +188 -0
- package/toolkit/dist/api/Auth.js +58 -0
- package/toolkit/dist/api/Category.js +84 -0
- package/toolkit/dist/api/Comment.js +97 -0
- package/toolkit/dist/api/File.js +71 -0
- package/toolkit/dist/api/HttpClient.js +96 -0
- package/toolkit/dist/api/Knowledge.js +123 -0
- package/toolkit/dist/api/Page.js +97 -0
- package/toolkit/dist/api/Search.js +58 -0
- package/toolkit/dist/api/Setting.js +45 -0
- package/toolkit/dist/api/Smtp.js +73 -0
- package/toolkit/dist/api/Tag.js +97 -0
- package/toolkit/dist/api/User.js +72 -0
- package/toolkit/dist/api/View.js +84 -0
- package/toolkit/dist/api/index.js +30 -0
- package/toolkit/dist/api/instance.js +71 -0
- package/toolkit/dist/app/createReactPressApp.js +265 -0
- package/toolkit/dist/app/createThemeApp.js +51 -0
- package/toolkit/dist/app/devChunkRecovery.js +68 -0
- package/toolkit/dist/app/index.js +11 -0
- package/toolkit/dist/config/env.js +103 -0
- package/toolkit/dist/config/global.js +396 -0
- package/toolkit/dist/config/i18n.js +59 -0
- package/toolkit/dist/config/index.js +26 -0
- package/toolkit/dist/config/locales/en.json +125 -0
- package/toolkit/dist/config/locales/zh.json +125 -0
- package/toolkit/dist/dev/index.js +12 -0
- package/toolkit/dist/dev/portRedirect.js +93 -0
- package/toolkit/dist/dev/vitePortRedirectPlugin.js +40 -0
- package/toolkit/dist/extension/branding-mods.js +65 -0
- package/toolkit/dist/extension/configuration/defaults.js +32 -0
- package/toolkit/dist/extension/configuration/formily.js +170 -0
- package/toolkit/dist/extension/configuration/index.js +28 -0
- package/toolkit/dist/extension/configuration/paths.js +50 -0
- package/toolkit/dist/extension/configuration/presets/twentytwentyfive.js +94 -0
- package/toolkit/dist/extension/configuration/resolve.js +98 -0
- package/toolkit/dist/extension/configuration/types.js +3 -0
- package/toolkit/dist/extension/configuration/validate.js +21 -0
- package/toolkit/dist/extension/index.js +35 -0
- package/toolkit/dist/extension/manifest-normalize.js +75 -0
- package/toolkit/dist/extension/node.js +6 -0
- package/toolkit/dist/extension/presets/twentytwentyfive-appearance.js +193 -0
- package/toolkit/dist/extension/presets/twentytwentyfive-customizer.js +199 -0
- package/toolkit/dist/extension/preview.js +92 -0
- package/toolkit/dist/extension/site-notices.js +88 -0
- package/toolkit/dist/extension/site-settings.js +144 -0
- package/toolkit/dist/extension/theme-admin-locale.io.js +54 -0
- package/toolkit/dist/extension/theme-admin-locale.js +81 -0
- package/toolkit/dist/extension/theme.js +93 -0
- package/toolkit/dist/extension/twentytwentyfive-vars.js +100 -0
- package/toolkit/dist/index.js +60 -0
- package/toolkit/dist/plugin/admin/index.js +20 -0
- package/toolkit/dist/plugin/admin/permissions.js +33 -0
- package/toolkit/dist/plugin/admin/plugin-admin.js +41 -0
- package/toolkit/dist/plugin/admin/registry.js +79 -0
- package/toolkit/dist/plugin/admin/slots.js +16 -0
- package/toolkit/dist/plugin/client/client.js +95 -0
- package/toolkit/dist/plugin/client/index.js +11 -0
- package/toolkit/dist/plugin/client/runtime.js +30 -0
- package/toolkit/dist/plugin/dev/index.js +16 -0
- package/toolkit/dist/plugin/dev/portRedirect.js +111 -0
- package/toolkit/dist/plugin/dev/vitePortRedirectPlugin.js +40 -0
- package/toolkit/dist/plugin/extension/index.js +20 -0
- package/toolkit/dist/plugin/extension/plugin-admin-locale.io.js +54 -0
- package/toolkit/dist/plugin/extension/plugin-admin-locale.js +60 -0
- package/toolkit/dist/plugin/extension/plugin.js +146 -0
- package/toolkit/dist/plugin/extension/security.js +74 -0
- package/toolkit/dist/plugin/extension/validate.js +55 -0
- package/toolkit/dist/plugin/index.js +52 -0
- package/toolkit/dist/plugin/node.js +6 -0
- package/toolkit/dist/plugin/react/client.js +95 -0
- package/toolkit/dist/plugin/react/index.js +19 -0
- package/toolkit/dist/plugin/react/plugin-admin-ui.js +38 -0
- package/toolkit/dist/plugin/react/runtime.js +30 -0
- package/toolkit/dist/plugin/server/hook-reject.js +39 -0
- package/toolkit/dist/plugin/server/index.js +18 -0
- package/toolkit/dist/plugin/server/types.js +3 -0
- package/toolkit/dist/primitives/AntdStyleTransitionFix.js +16 -0
- package/toolkit/dist/primitives/Badge.js +9 -0
- package/toolkit/dist/primitives/Button.js +38 -0
- package/toolkit/dist/primitives/ColorModeToggle.js +13 -0
- package/toolkit/dist/primitives/IconButton.js +13 -0
- package/toolkit/dist/primitives/ScrollToTarget.js +48 -0
- package/toolkit/dist/primitives/Separator.js +9 -0
- package/toolkit/dist/primitives/Skeleton.js +9 -0
- package/toolkit/dist/primitives/Slot.js +25 -0
- package/toolkit/dist/primitives/Spinner.js +9 -0
- package/toolkit/dist/primitives/animation/ConditionTransition.js +13 -0
- package/toolkit/dist/primitives/animation/ListTrail.js +14 -0
- package/toolkit/dist/primitives/animation/Opacity.js +10 -0
- package/toolkit/dist/primitives/animation/Spring.js +29 -0
- package/toolkit/dist/primitives/animation/index.js +11 -0
- package/toolkit/dist/primitives/cn.js +7 -0
- package/toolkit/dist/primitives/icons.js +15 -0
- package/toolkit/dist/primitives/index.js +44 -0
- package/toolkit/dist/react/client.js +95 -0
- package/toolkit/dist/react/index.js +11 -0
- package/toolkit/dist/react/runtime.js +30 -0
- package/toolkit/dist/theme/antdDocument.js +59 -0
- package/toolkit/dist/theme/api/api-data.js +8 -0
- package/toolkit/dist/theme/api/api.js +27 -0
- package/toolkit/dist/theme/api/httpClient.js +83 -0
- package/toolkit/dist/theme/api/json.js +5 -0
- package/toolkit/dist/theme/api/jsonp.js +5 -0
- package/toolkit/dist/theme/api-data.js +22 -0
- package/toolkit/dist/theme/api.js +27 -0
- package/toolkit/dist/theme/appearance.js +16 -0
- package/toolkit/dist/theme/assets.js +27 -0
- package/toolkit/dist/theme/authSession.js +92 -0
- package/toolkit/dist/theme/build/antdDocument.js +70 -0
- package/toolkit/dist/theme/build/next-config.js +63 -0
- package/toolkit/dist/theme/build/node.js +6 -0
- package/toolkit/dist/theme/colorMode.js +45 -0
- package/toolkit/dist/theme/commentAuthor.js +48 -0
- package/toolkit/dist/theme/content/archiveSlim.js +38 -0
- package/toolkit/dist/theme/content/articleSlim.js +35 -0
- package/toolkit/dist/theme/content/assets.js +106 -0
- package/toolkit/dist/theme/content/carouselArticles.js +39 -0
- package/toolkit/dist/theme/content/excerpt.js +42 -0
- package/toolkit/dist/theme/content/nav.js +30 -0
- package/toolkit/dist/theme/content/seo.js +12 -0
- package/toolkit/dist/theme/createAntdApp.js +175 -0
- package/toolkit/dist/theme/createApp.js +141 -0
- package/toolkit/dist/theme/createCatalogApp.js +168 -0
- package/toolkit/dist/theme/customizer.js +5 -0
- package/toolkit/dist/theme/excerpt.js +31 -0
- package/toolkit/dist/theme/extension/branding-mods.js +65 -0
- package/toolkit/dist/theme/extension/configuration/defaults.js +32 -0
- package/toolkit/dist/theme/extension/configuration/formily.js +170 -0
- package/toolkit/dist/theme/extension/configuration/index.js +28 -0
- package/toolkit/dist/theme/extension/configuration/paths.js +7 -0
- package/toolkit/dist/theme/extension/configuration/presets/twentytwentyfive.js +94 -0
- package/toolkit/dist/theme/extension/configuration/resolve.js +98 -0
- package/toolkit/dist/theme/extension/configuration/types.js +3 -0
- package/toolkit/dist/theme/extension/configuration/validate.js +21 -0
- package/toolkit/dist/theme/extension/index.js +38 -0
- package/toolkit/dist/theme/extension/manifest-normalize.js +75 -0
- package/toolkit/dist/theme/extension/presets/twentytwentyfive-appearance.js +193 -0
- package/toolkit/dist/theme/extension/preview.js +92 -0
- package/toolkit/dist/theme/extension/site-notices.js +88 -0
- package/toolkit/dist/theme/extension/site-settings.js +144 -0
- package/toolkit/dist/theme/extension/siteNav.js +17 -0
- package/toolkit/dist/theme/extension/theme-admin-locale.io.js +54 -0
- package/toolkit/dist/theme/extension/theme-admin-locale.js +68 -0
- package/toolkit/dist/theme/extension/theme.js +93 -0
- package/toolkit/dist/theme/extension/twentytwentyfive-vars.js +103 -0
- package/toolkit/dist/theme/fetch.js +241 -0
- package/toolkit/dist/theme/format.js +48 -0
- package/toolkit/dist/theme/httpClient.js +89 -0
- package/toolkit/dist/theme/index.js +226 -0
- package/toolkit/dist/theme/json.js +17 -0
- package/toolkit/dist/theme/jsonp.js +27 -0
- package/toolkit/dist/theme/locale.js +55 -0
- package/toolkit/dist/theme/nav.js +30 -0
- package/toolkit/dist/theme/next-config.js +18 -0
- package/toolkit/dist/theme/node.js +18 -0
- package/toolkit/dist/theme/preview/preview-config.js +65 -0
- package/toolkit/dist/theme/preview/preview-draft.js +51 -0
- package/toolkit/dist/theme/preview/preview-mods.js +78 -0
- package/toolkit/dist/theme/preview-config.js +65 -0
- package/toolkit/dist/theme/preview-draft.js +51 -0
- package/toolkit/dist/theme/preview-mods.js +78 -0
- package/toolkit/dist/theme/providers/index.js +251 -0
- package/toolkit/dist/theme/providers/setup.js +29 -0
- package/toolkit/dist/theme/runtime.js +19 -0
- package/toolkit/dist/theme/seo.js +12 -0
- package/toolkit/dist/theme/server.js +177 -0
- package/toolkit/dist/theme/setting.js +42 -0
- package/toolkit/dist/theme/ssr/bootstrap.js +112 -0
- package/toolkit/dist/theme/ssr/fetch.js +264 -0
- package/toolkit/dist/theme/ssr/format.js +8 -0
- package/toolkit/dist/theme/ssr/pageProps.js +155 -0
- package/toolkit/dist/theme/ssr/setting.js +45 -0
- package/toolkit/dist/theme/ssr/slimBootstrap.js +75 -0
- package/toolkit/dist/theme/ssr/static.js +17 -0
- package/toolkit/dist/theme/ssr/templates.js +50 -0
- package/toolkit/dist/theme/static.js +17 -0
- package/toolkit/dist/theme/templates.js +38 -0
- package/toolkit/dist/theme/ui-optional.js +21 -0
- package/toolkit/dist/theme/visitor/appearance.js +16 -0
- package/toolkit/dist/theme/visitor/authSession.js +92 -0
- package/toolkit/dist/theme/visitor/colorMode.js +59 -0
- package/toolkit/dist/theme/visitor/commentAuthor.js +45 -0
- package/toolkit/dist/theme/visitor/i18n.js +28 -0
- package/toolkit/dist/theme/visitor/locale.js +72 -0
- package/toolkit/dist/theme/visitor/runtime.js +19 -0
- package/toolkit/dist/theme/visitor/visitorLocale.js +56 -0
- package/toolkit/dist/theme/visitorLocale.js +39 -0
- package/toolkit/dist/types/index.js +12 -0
- package/toolkit/dist/ui/AntdStyleTransitionFix.js +16 -0
- package/toolkit/dist/ui/ArchiveEmptyState.js +8 -0
- package/toolkit/dist/ui/ArchivePageLayout.js +8 -0
- package/toolkit/dist/ui/ArticleCard.js +16 -0
- package/toolkit/dist/ui/ArticleList.js +16 -0
- package/toolkit/dist/ui/BaseGlobalStyles.js +18 -0
- package/toolkit/dist/ui/LocaleSwitcher.js +15 -0
- package/toolkit/dist/ui/NavMenu.js +8 -0
- package/toolkit/dist/ui/NotFoundPanel.js +8 -0
- package/toolkit/dist/ui/PageHeader.js +8 -0
- package/toolkit/dist/ui/SiteBranding.js +14 -0
- package/toolkit/dist/ui/SiteDocument.js +13 -0
- package/toolkit/dist/ui/SiteDocumentFallback.js +9 -0
- package/toolkit/dist/ui/SiteLogo.js +16 -0
- package/toolkit/dist/ui/SiteTagline.js +15 -0
- package/toolkit/dist/ui/TaxonomyList.js +30 -0
- package/toolkit/dist/ui/ThemeCssVars.js +85 -0
- package/toolkit/dist/ui/ThemeLayout.js +11 -0
- package/toolkit/dist/ui/components/AntdStyleTransitionFix.js +16 -0
- package/toolkit/dist/ui/components/ArchiveEmptyState.js +8 -0
- package/toolkit/dist/ui/components/ArchivePageLayout.js +8 -0
- package/toolkit/dist/ui/components/ArticleCard.js +16 -0
- package/toolkit/dist/ui/components/ArticleList.js +16 -0
- package/toolkit/dist/ui/components/BaseGlobalStyles.js +18 -0
- package/toolkit/dist/ui/components/LocaleSwitcher.js +11 -0
- package/toolkit/dist/ui/components/NavMenu.js +8 -0
- package/toolkit/dist/ui/components/NotFoundPanel.js +8 -0
- package/toolkit/dist/ui/components/PageHeader.js +8 -0
- package/toolkit/dist/ui/components/RouteProgress.js +40 -0
- package/toolkit/dist/ui/components/SiteAnalytics.js +42 -0
- package/toolkit/dist/ui/components/SiteBranding.js +14 -0
- package/toolkit/dist/ui/components/SiteDocument.js +13 -0
- package/toolkit/dist/ui/components/SiteDocumentFallback.js +9 -0
- package/toolkit/dist/ui/components/SiteLogo.js +23 -0
- package/toolkit/dist/ui/components/SiteSeo.js +19 -0
- package/toolkit/dist/ui/components/SiteTagline.js +15 -0
- package/toolkit/dist/ui/components/TaxonomyList.js +30 -0
- package/toolkit/dist/ui/components/ThemeCssVars.js +85 -0
- package/toolkit/dist/ui/components/ThemeLayout.js +11 -0
- package/toolkit/dist/ui/components/content/ArticleReader.js +23 -0
- package/toolkit/dist/ui/components/content/ArticleToc.js +75 -0
- package/toolkit/dist/ui/components/content/HtmlContent.js +237 -0
- package/toolkit/dist/ui/components/content/Image.js +13 -0
- package/toolkit/dist/ui/components/content/ImageViewer.js +33 -0
- package/toolkit/dist/ui/components/content/LocaleTime.js +63 -0
- package/toolkit/dist/ui/components/content/index.js +18 -0
- package/toolkit/dist/ui/components/toolbar/LocaleToggleButton.js +18 -0
- package/toolkit/dist/ui/components/toolbar/ThemeToggleButton.js +10 -0
- package/toolkit/dist/ui/components/toolbar/ToolbarIconButton.js +22 -0
- package/toolkit/dist/ui/components/toolbar/constants.js +8 -0
- package/toolkit/dist/ui/components/toolbar/icons.js +44 -0
- package/toolkit/dist/ui/components/toolbar/index.js +25 -0
- package/toolkit/dist/ui/components/toolbar/locale-label.js +19 -0
- package/toolkit/dist/ui/context/LocaleContext.js +59 -0
- package/toolkit/dist/ui/context/ReactPressProvider.js +10 -0
- package/toolkit/dist/ui/context/SiteCatalogContext.js +60 -0
- package/toolkit/dist/ui/context/ThemeRuntimeContext.js +59 -0
- package/toolkit/dist/ui/context/index.js +26 -0
- package/toolkit/dist/ui/context/siteCatalogTypes.js +20 -0
- package/toolkit/dist/ui/context/types.js +2 -0
- package/toolkit/dist/ui/hooks/index.js +29 -0
- package/toolkit/dist/ui/hooks/useAsyncLoading.js +31 -0
- package/toolkit/dist/ui/hooks/useForceUpdate.js +11 -0
- package/toolkit/dist/ui/hooks/useNavActive.js +11 -0
- package/toolkit/dist/ui/hooks/usePagination.js +55 -0
- package/toolkit/dist/ui/hooks/useReportArticleView.js +40 -0
- package/toolkit/dist/ui/hooks/useReportPageView.js +28 -0
- package/toolkit/dist/ui/hooks/useRouteParam.js +15 -0
- package/toolkit/dist/ui/hooks/useToggle.js +17 -0
- package/toolkit/dist/ui/hooks/useWarningOnExit.js +59 -0
- package/toolkit/dist/ui/index.js +87 -0
- package/toolkit/dist/utils/api-envelope.js +31 -0
- package/toolkit/dist/utils/clipboard.js +24 -0
- package/toolkit/dist/utils/cookie.js +15 -0
- package/toolkit/dist/utils/date.js +45 -0
- package/toolkit/dist/utils/email.js +9 -0
- package/toolkit/dist/utils/error.js +26 -0
- package/toolkit/dist/utils/image.js +34 -0
- package/toolkit/dist/utils/index.js +39 -0
- package/toolkit/dist/utils/json.js +18 -0
- package/toolkit/dist/utils/jsonp.js +27 -0
- package/toolkit/dist/utils/object.js +63 -0
- package/toolkit/dist/utils/setting.js +13 -0
- package/toolkit/dist/utils/string.js +15 -0
- package/toolkit/dist/utils/viewport.js +14 -0
- package/toolkit/package-lock.json +452 -0
- package/toolkit/package.json +96 -0
- package/dist/cli.d.ts +0 -4
- package/dist/cli.d.ts.map +0 -1
- package/dist/cli.js.map +0 -1
- package/dist/commands/config.d.ts +0 -8
- package/dist/commands/config.d.ts.map +0 -1
- package/dist/commands/config.js.map +0 -1
- package/dist/commands/init.d.ts +0 -6
- package/dist/commands/init.d.ts.map +0 -1
- package/dist/commands/init.js.map +0 -1
- package/dist/commands/restart.d.ts +0 -2
- package/dist/commands/restart.d.ts.map +0 -1
- package/dist/commands/restart.js.map +0 -1
- package/dist/commands/start.d.ts +0 -2
- package/dist/commands/start.d.ts.map +0 -1
- package/dist/commands/start.js.map +0 -1
- package/dist/commands/status.d.ts +0 -2
- package/dist/commands/status.d.ts.map +0 -1
- package/dist/commands/status.js.map +0 -1
- package/dist/commands/stop.d.ts +0 -5
- package/dist/commands/stop.d.ts.map +0 -1
- package/dist/commands/stop.js.map +0 -1
- package/dist/index.d.ts +0 -3
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/services/config.d.ts +0 -11
- package/dist/services/config.d.ts.map +0 -1
- package/dist/services/config.js.map +0 -1
- package/dist/services/database.d.ts +0 -43
- package/dist/services/database.d.ts.map +0 -1
- package/dist/services/database.js.map +0 -1
- package/dist/services/exec.d.ts +0 -22
- package/dist/services/exec.d.ts.map +0 -1
- package/dist/services/exec.js.map +0 -1
- package/dist/services/init.d.ts +0 -10
- package/dist/services/init.d.ts.map +0 -1
- package/dist/services/init.js.map +0 -1
- package/dist/services/process.d.ts +0 -9
- package/dist/services/process.d.ts.map +0 -1
- package/dist/services/process.js.map +0 -1
- package/dist/services/server-health.d.ts +0 -4
- package/dist/services/server-health.d.ts.map +0 -1
- package/dist/services/server-health.js.map +0 -1
- package/dist/services/server.d.ts +0 -19
- package/dist/services/server.d.ts.map +0 -1
- package/dist/services/server.js.map +0 -1
- package/dist/types/config.d.ts +0 -30
- package/dist/types/config.d.ts.map +0 -1
- package/dist/types/config.js.map +0 -1
- package/dist/utils/cli-context.d.ts +0 -4
- package/dist/utils/cli-context.d.ts.map +0 -1
- package/dist/utils/cli-context.js.map +0 -1
- package/dist/utils/logger.d.ts +0 -10
- package/dist/utils/logger.d.ts.map +0 -1
- package/dist/utils/logger.js.map +0 -1
- package/dist/utils/paths.d.ts +0 -17
- package/dist/utils/paths.d.ts.map +0 -1
- package/dist/utils/paths.js.map +0 -1
- package/dist/utils/platform.d.ts +0 -8
- package/dist/utils/platform.d.ts.map +0 -1
- package/dist/utils/platform.js.map +0 -1
- package/dist/utils/port.d.ts +0 -5
- package/dist/utils/port.d.ts.map +0 -1
- package/dist/utils/port.js.map +0 -1
- package/dist/utils/server-bundle.d.ts +0 -11
- package/dist/utils/server-bundle.d.ts.map +0 -1
- package/dist/utils/server-bundle.js.map +0 -1
- package/out/bin/reactpress-cli-shim.d.ts +0 -3
- package/out/bin/reactpress-cli-shim.d.ts.map +0 -1
- package/out/bin/reactpress-cli-shim.js.map +0 -1
- package/out/bin/reactpress-theme-client.d.ts +0 -3
- package/out/bin/reactpress-theme-client.d.ts.map +0 -1
- package/out/bin/reactpress-theme-client.js.map +0 -1
- package/out/bin/reactpress.d.ts +0 -3
- package/out/bin/reactpress.d.ts.map +0 -1
- package/out/bin/reactpress.js.map +0 -1
- package/out/core/services/config.d.ts +0 -12
- package/out/core/services/config.d.ts.map +0 -1
- package/out/core/services/config.js.map +0 -1
- package/out/core/services/database/index.d.ts +0 -17
- package/out/core/services/database/index.d.ts.map +0 -1
- package/out/core/services/database/index.js.map +0 -1
- package/out/core/services/database/mysql.d.ts +0 -14
- package/out/core/services/database/mysql.d.ts.map +0 -1
- package/out/core/services/database/mysql.js.map +0 -1
- package/out/core/services/database/profile.d.ts +0 -6
- package/out/core/services/database/profile.d.ts.map +0 -1
- package/out/core/services/database/profile.js.map +0 -1
- package/out/core/services/database/sqlite.d.ts +0 -10
- package/out/core/services/database/sqlite.d.ts.map +0 -1
- package/out/core/services/database/sqlite.js.map +0 -1
- package/out/core/services/exec.d.ts +0 -21
- package/out/core/services/exec.d.ts.map +0 -1
- package/out/core/services/exec.js.map +0 -1
- package/out/core/services/init.d.ts +0 -11
- package/out/core/services/init.d.ts.map +0 -1
- package/out/core/services/init.js.map +0 -1
- package/out/core/services/local-site.d.ts +0 -24
- package/out/core/services/local-site.d.ts.map +0 -1
- package/out/core/services/local-site.js.map +0 -1
- package/out/core/utils/cli-context.d.ts +0 -3
- package/out/core/utils/cli-context.d.ts.map +0 -1
- package/out/core/utils/cli-context.js.map +0 -1
- package/out/core/utils/paths.d.ts +0 -20
- package/out/core/utils/paths.d.ts.map +0 -1
- package/out/core/utils/paths.js.map +0 -1
- package/out/core/utils/platform.d.ts +0 -7
- package/out/core/utils/platform.d.ts.map +0 -1
- package/out/core/utils/platform.js.map +0 -1
- package/out/core/utils/port.d.ts +0 -4
- package/out/core/utils/port.d.ts.map +0 -1
- package/out/core/utils/port.js.map +0 -1
- package/out/lib/api-dev-runner.d.ts +0 -3
- package/out/lib/api-dev-runner.d.ts.map +0 -1
- package/out/lib/api-dev-runner.js.map +0 -1
- package/out/lib/api-dev.d.ts +0 -2
- package/out/lib/api-dev.d.ts.map +0 -1
- package/out/lib/api-dev.js.map +0 -1
- package/out/lib/bootstrap.d.ts +0 -18
- package/out/lib/bootstrap.d.ts.map +0 -1
- package/out/lib/bootstrap.js.map +0 -1
- package/out/lib/build.d.ts +0 -2
- package/out/lib/build.d.ts.map +0 -1
- package/out/lib/build.js.map +0 -1
- package/out/lib/db-backup.d.ts +0 -2
- package/out/lib/db-backup.d.ts.map +0 -1
- package/out/lib/db-backup.js.map +0 -1
- package/out/lib/dev-banner.d.ts +0 -2
- package/out/lib/dev-banner.d.ts.map +0 -1
- package/out/lib/dev-banner.js.map +0 -1
- package/out/lib/dev-child-io.d.ts +0 -2
- package/out/lib/dev-child-io.d.ts.map +0 -1
- package/out/lib/dev-child-io.js.map +0 -1
- package/out/lib/dev-log.d.ts +0 -2
- package/out/lib/dev-log.d.ts.map +0 -1
- package/out/lib/dev-log.js.map +0 -1
- package/out/lib/dev-session.d.ts +0 -2
- package/out/lib/dev-session.d.ts.map +0 -1
- package/out/lib/dev-session.js.map +0 -1
- package/out/lib/dev.d.ts +0 -2
- package/out/lib/dev.d.ts.map +0 -1
- package/out/lib/dev.js.map +0 -1
- package/out/lib/docker.d.ts +0 -2
- package/out/lib/docker.d.ts.map +0 -1
- package/out/lib/docker.js.map +0 -1
- package/out/lib/doctor.d.ts +0 -2
- package/out/lib/doctor.d.ts.map +0 -1
- package/out/lib/doctor.js.map +0 -1
- package/out/lib/health-parse.d.ts +0 -5
- package/out/lib/health-parse.d.ts.map +0 -1
- package/out/lib/health-parse.js.map +0 -1
- package/out/lib/health-parse.test.d.ts +0 -2
- package/out/lib/health-parse.test.d.ts.map +0 -1
- package/out/lib/health-parse.test.js.map +0 -1
- package/out/lib/http.d.ts +0 -2
- package/out/lib/http.d.ts.map +0 -1
- package/out/lib/http.js.map +0 -1
- package/out/lib/i18n/index.d.ts +0 -2
- package/out/lib/i18n/index.d.ts.map +0 -1
- package/out/lib/i18n/index.js.map +0 -1
- package/out/lib/i18n/strings.d.ts +0 -2
- package/out/lib/i18n/strings.d.ts.map +0 -1
- package/out/lib/i18n/strings.js.map +0 -1
- package/out/lib/lifecycle.d.ts +0 -2
- package/out/lib/lifecycle.d.ts.map +0 -1
- package/out/lib/lifecycle.js.map +0 -1
- package/out/lib/nginx.d.ts +0 -2
- package/out/lib/nginx.d.ts.map +0 -1
- package/out/lib/nginx.js.map +0 -1
- package/out/lib/paths.d.ts +0 -2
- package/out/lib/paths.d.ts.map +0 -1
- package/out/lib/paths.js.map +0 -1
- package/out/lib/plugin-build.d.ts +0 -2
- package/out/lib/plugin-build.d.ts.map +0 -1
- package/out/lib/plugin-build.js.map +0 -1
- package/out/lib/plugin-cli.d.ts +0 -2
- package/out/lib/plugin-cli.d.ts.map +0 -1
- package/out/lib/plugin-cli.js.map +0 -1
- package/out/lib/pm2.d.ts +0 -2
- package/out/lib/pm2.d.ts.map +0 -1
- package/out/lib/pm2.js.map +0 -1
- package/out/lib/ports.d.ts +0 -2
- package/out/lib/ports.d.ts.map +0 -1
- package/out/lib/ports.js.map +0 -1
- package/out/lib/process.d.ts +0 -2
- package/out/lib/process.d.ts.map +0 -1
- package/out/lib/process.js.map +0 -1
- package/out/lib/prod-memory.d.ts +0 -6
- package/out/lib/prod-memory.d.ts.map +0 -1
- package/out/lib/prod-memory.js.map +0 -1
- package/out/lib/project-type.d.ts +0 -2
- package/out/lib/project-type.d.ts.map +0 -1
- package/out/lib/project-type.js.map +0 -1
- package/out/lib/publish.d.ts +0 -3
- package/out/lib/publish.d.ts.map +0 -1
- package/out/lib/publish.js.map +0 -1
- package/out/lib/remote-dev.d.ts +0 -2
- package/out/lib/remote-dev.d.ts.map +0 -1
- package/out/lib/remote-dev.js.map +0 -1
- package/out/lib/root.d.ts +0 -2
- package/out/lib/root.d.ts.map +0 -1
- package/out/lib/root.js.map +0 -1
- package/out/lib/spawn.d.ts +0 -2
- package/out/lib/spawn.d.ts.map +0 -1
- package/out/lib/spawn.js.map +0 -1
- package/out/lib/status.d.ts +0 -2
- package/out/lib/status.d.ts.map +0 -1
- package/out/lib/status.js.map +0 -1
- package/out/lib/theme-catalog.d.ts +0 -2
- package/out/lib/theme-catalog.d.ts.map +0 -1
- package/out/lib/theme-catalog.js.map +0 -1
- package/out/lib/theme-cli.d.ts +0 -2
- package/out/lib/theme-cli.d.ts.map +0 -1
- package/out/lib/theme-cli.js.map +0 -1
- package/out/lib/theme-dev.d.ts +0 -2
- package/out/lib/theme-dev.d.ts.map +0 -1
- package/out/lib/theme-dev.js.map +0 -1
- package/out/lib/theme-env.d.ts +0 -2
- package/out/lib/theme-env.d.ts.map +0 -1
- package/out/lib/theme-env.js.map +0 -1
- package/out/lib/theme-install.d.ts +0 -2
- package/out/lib/theme-install.d.ts.map +0 -1
- package/out/lib/theme-install.js.map +0 -1
- package/out/lib/theme-lock.d.ts +0 -2
- package/out/lib/theme-lock.d.ts.map +0 -1
- package/out/lib/theme-lock.js.map +0 -1
- package/out/lib/theme-paths.d.ts +0 -2
- package/out/lib/theme-paths.d.ts.map +0 -1
- package/out/lib/theme-paths.js.map +0 -1
- package/out/lib/theme-placeholder-cover.d.ts +0 -13
- package/out/lib/theme-placeholder-cover.d.ts.map +0 -1
- package/out/lib/theme-placeholder-cover.js.map +0 -1
- package/out/lib/theme-preview-frame.d.ts +0 -2
- package/out/lib/theme-preview-frame.d.ts.map +0 -1
- package/out/lib/theme-preview-frame.js.map +0 -1
- package/out/lib/theme-preview-pool.d.ts +0 -2
- package/out/lib/theme-preview-pool.d.ts.map +0 -1
- package/out/lib/theme-preview-pool.js.map +0 -1
- package/out/lib/theme-preview-proxy.d.ts +0 -2
- package/out/lib/theme-preview-proxy.d.ts.map +0 -1
- package/out/lib/theme-preview-proxy.js.map +0 -1
- package/out/lib/theme-prod.d.ts +0 -2
- package/out/lib/theme-prod.d.ts.map +0 -1
- package/out/lib/theme-prod.js.map +0 -1
- package/out/lib/theme-registry.d.ts +0 -2
- package/out/lib/theme-registry.d.ts.map +0 -1
- package/out/lib/theme-registry.js.map +0 -1
- package/out/lib/theme-runtime.d.ts +0 -2
- package/out/lib/theme-runtime.d.ts.map +0 -1
- package/out/lib/theme-runtime.js.map +0 -1
- package/out/lib/theme-sources.d.ts +0 -2
- package/out/lib/theme-sources.d.ts.map +0 -1
- package/out/lib/theme-sources.js.map +0 -1
- package/out/lib/theme-warmup.d.ts +0 -2
- package/out/lib/theme-warmup.d.ts.map +0 -1
- package/out/lib/theme-warmup.js.map +0 -1
- package/out/lib/toolkit-build.d.ts +0 -2
- package/out/lib/toolkit-build.d.ts.map +0 -1
- package/out/lib/toolkit-build.js.map +0 -1
- package/out/types/config.d.ts +0 -57
- package/out/types/config.d.ts.map +0 -1
- package/out/types/config.js.map +0 -1
- package/out/ui/banner.d.ts +0 -2
- package/out/ui/banner.d.ts.map +0 -1
- package/out/ui/banner.js.map +0 -1
- package/out/ui/interactive.d.ts +0 -2
- package/out/ui/interactive.d.ts.map +0 -1
- package/out/ui/interactive.js.map +0 -1
- package/out/ui/theme.d.ts +0 -2
- package/out/ui/theme.d.ts.map +0 -1
- package/out/ui/theme.js.map +0 -1
- package/server/dist/app.module.d.ts +0 -2
- package/server/dist/app.module.js.map +0 -1
- package/server/dist/common/api-messages.d.ts +0 -41
- package/server/dist/common/api-messages.js.map +0 -1
- package/server/dist/database/typeorm-options.d.ts +0 -3
- package/server/dist/database/typeorm-options.js.map +0 -1
- package/server/dist/filters/http-exception.filter.d.ts +0 -4
- package/server/dist/filters/http-exception.filter.js.map +0 -1
- package/server/dist/generate-swagger.d.ts +0 -1
- package/server/dist/generate-swagger.js.map +0 -1
- package/server/dist/interceptors/transform.interceptor.d.ts +0 -9
- package/server/dist/interceptors/transform.interceptor.js.map +0 -1
- package/server/dist/logger/index.d.ts +0 -4
- package/server/dist/logger/index.js.map +0 -1
- package/server/dist/main.d.ts +0 -6
- package/server/dist/main.js.map +0 -1
- package/server/dist/modules/api-key/api-key.controller.d.ts +0 -14
- package/server/dist/modules/api-key/api-key.controller.js.map +0 -1
- package/server/dist/modules/api-key/api-key.entity.d.ts +0 -11
- package/server/dist/modules/api-key/api-key.entity.js.map +0 -1
- package/server/dist/modules/api-key/api-key.guard.d.ts +0 -7
- package/server/dist/modules/api-key/api-key.guard.js.map +0 -1
- package/server/dist/modules/api-key/api-key.module.d.ts +0 -2
- package/server/dist/modules/api-key/api-key.module.js.map +0 -1
- package/server/dist/modules/api-key/api-key.service.d.ts +0 -15
- package/server/dist/modules/api-key/api-key.service.js.map +0 -1
- package/server/dist/modules/article/article-revision.entity.d.ts +0 -11
- package/server/dist/modules/article/article-revision.entity.js.map +0 -1
- package/server/dist/modules/article/article-slug.util.d.ts +0 -2
- package/server/dist/modules/article/article-slug.util.js.map +0 -1
- package/server/dist/modules/article/article.controller.d.ts +0 -27
- package/server/dist/modules/article/article.controller.js.map +0 -1
- package/server/dist/modules/article/article.entity.d.ts +0 -23
- package/server/dist/modules/article/article.entity.js.map +0 -1
- package/server/dist/modules/article/article.module.d.ts +0 -2
- package/server/dist/modules/article/article.module.js.map +0 -1
- package/server/dist/modules/article/article.service.d.ts +0 -30
- package/server/dist/modules/article/article.service.js.map +0 -1
- package/server/dist/modules/article/article.util.d.ts +0 -1
- package/server/dist/modules/article/article.util.js.map +0 -1
- package/server/dist/modules/article/scheduled-publish.service.d.ts +0 -13
- package/server/dist/modules/article/scheduled-publish.service.js.map +0 -1
- package/server/dist/modules/auth/auth.controller.d.ts +0 -12
- package/server/dist/modules/auth/auth.controller.js.map +0 -1
- package/server/dist/modules/auth/auth.module.d.ts +0 -2
- package/server/dist/modules/auth/auth.module.js.map +0 -1
- package/server/dist/modules/auth/auth.service.d.ts +0 -26
- package/server/dist/modules/auth/auth.service.js.map +0 -1
- package/server/dist/modules/auth/jwt-auth.guard.d.ts +0 -7
- package/server/dist/modules/auth/jwt-auth.guard.js.map +0 -1
- package/server/dist/modules/auth/jwt.strategy.d.ts +0 -9
- package/server/dist/modules/auth/jwt.strategy.js.map +0 -1
- package/server/dist/modules/auth/roles.guard.d.ts +0 -10
- package/server/dist/modules/auth/roles.guard.js.map +0 -1
- package/server/dist/modules/bootstrap/bootstrap.constants.d.ts +0 -20
- package/server/dist/modules/bootstrap/bootstrap.constants.js.map +0 -1
- package/server/dist/modules/bootstrap/bootstrap.service.d.ts +0 -22
- package/server/dist/modules/bootstrap/bootstrap.service.js.map +0 -1
- package/server/dist/modules/bootstrap/install-locale.d.ts +0 -2
- package/server/dist/modules/bootstrap/install-locale.js.map +0 -1
- package/server/dist/modules/category/category.controller.d.ts +0 -11
- package/server/dist/modules/category/category.controller.js.map +0 -1
- package/server/dist/modules/category/category.entity.d.ts +0 -9
- package/server/dist/modules/category/category.entity.js.map +0 -1
- package/server/dist/modules/category/category.module.d.ts +0 -2
- package/server/dist/modules/category/category.module.js.map +0 -1
- package/server/dist/modules/category/category.service.d.ts +0 -12
- package/server/dist/modules/category/category.service.js.map +0 -1
- package/server/dist/modules/comment/comment.controller.d.ts +0 -12
- package/server/dist/modules/comment/comment.controller.js.map +0 -1
- package/server/dist/modules/comment/comment.entity.d.ts +0 -17
- package/server/dist/modules/comment/comment.entity.js.map +0 -1
- package/server/dist/modules/comment/comment.module.d.ts +0 -2
- package/server/dist/modules/comment/comment.module.js.map +0 -1
- package/server/dist/modules/comment/comment.service.d.ts +0 -24
- package/server/dist/modules/comment/comment.service.js.map +0 -1
- package/server/dist/modules/comment/html.d.ts +0 -15
- package/server/dist/modules/comment/html.js.map +0 -1
- package/server/dist/modules/extension/extension.module.d.ts +0 -9
- package/server/dist/modules/extension/extension.module.js.map +0 -1
- package/server/dist/modules/extension/plugin-loader.service.d.ts +0 -12
- package/server/dist/modules/extension/plugin-loader.service.js.map +0 -1
- package/server/dist/modules/extension/plugin-registry.bridge.d.ts +0 -3
- package/server/dist/modules/extension/plugin-registry.bridge.js.map +0 -1
- package/server/dist/modules/extension/plugin.controller.d.ts +0 -22
- package/server/dist/modules/extension/plugin.controller.js.map +0 -1
- package/server/dist/modules/extension/plugin.service.d.ts +0 -52
- package/server/dist/modules/extension/plugin.service.js.map +0 -1
- package/server/dist/modules/extension/preview-draft.store.d.ts +0 -13
- package/server/dist/modules/extension/preview-draft.store.js.map +0 -1
- package/server/dist/modules/extension/theme-registry.bridge.d.ts +0 -56
- package/server/dist/modules/extension/theme-registry.bridge.js.map +0 -1
- package/server/dist/modules/extension/theme.controller.d.ts +0 -66
- package/server/dist/modules/extension/theme.controller.js.map +0 -1
- package/server/dist/modules/extension/theme.service.d.ts +0 -140
- package/server/dist/modules/extension/theme.service.js.map +0 -1
- package/server/dist/modules/file/file-optimization.controller.d.ts +0 -12
- package/server/dist/modules/file/file-optimization.controller.js.map +0 -1
- package/server/dist/modules/file/file-optimization.service.d.ts +0 -36
- package/server/dist/modules/file/file-optimization.service.js.map +0 -1
- package/server/dist/modules/file/file-optimization.types.d.ts +0 -66
- package/server/dist/modules/file/file-optimization.types.js.map +0 -1
- package/server/dist/modules/file/file.controller.d.ts +0 -10
- package/server/dist/modules/file/file.controller.js.map +0 -1
- package/server/dist/modules/file/file.entity.d.ts +0 -9
- package/server/dist/modules/file/file.entity.js.map +0 -1
- package/server/dist/modules/file/file.module.d.ts +0 -2
- package/server/dist/modules/file/file.module.js.map +0 -1
- package/server/dist/modules/file/file.service.d.ts +0 -17
- package/server/dist/modules/file/file.service.js.map +0 -1
- package/server/dist/modules/file/image-optimizer-plugin.guard.d.ts +0 -7
- package/server/dist/modules/file/image-optimizer-plugin.guard.js.map +0 -1
- package/server/dist/modules/health/health.controller.d.ts +0 -11
- package/server/dist/modules/health/health.controller.js.map +0 -1
- package/server/dist/modules/health/health.module.d.ts +0 -2
- package/server/dist/modules/health/health.module.js.map +0 -1
- package/server/dist/modules/hook/hook.module.d.ts +0 -2
- package/server/dist/modules/hook/hook.module.js.map +0 -1
- package/server/dist/modules/hook/hook.service.d.ts +0 -26
- package/server/dist/modules/hook/hook.service.js.map +0 -1
- package/server/dist/modules/install/install.controller.d.ts +0 -11
- package/server/dist/modules/install/install.controller.js.map +0 -1
- package/server/dist/modules/install/install.module.d.ts +0 -2
- package/server/dist/modules/install/install.module.js.map +0 -1
- package/server/dist/modules/install/install.service.d.ts +0 -12
- package/server/dist/modules/install/install.service.js.map +0 -1
- package/server/dist/modules/knowledge/knowledge.controller.d.ts +0 -14
- package/server/dist/modules/knowledge/knowledge.controller.js.map +0 -1
- package/server/dist/modules/knowledge/knowledge.entity.d.ts +0 -18
- package/server/dist/modules/knowledge/knowledge.entity.js.map +0 -1
- package/server/dist/modules/knowledge/knowledge.module.d.ts +0 -2
- package/server/dist/modules/knowledge/knowledge.module.js.map +0 -1
- package/server/dist/modules/knowledge/knowledge.service.d.ts +0 -14
- package/server/dist/modules/knowledge/knowledge.service.js.map +0 -1
- package/server/dist/modules/page/page.controller.d.ts +0 -12
- package/server/dist/modules/page/page.controller.js.map +0 -1
- package/server/dist/modules/page/page.entity.d.ts +0 -15
- package/server/dist/modules/page/page.entity.js.map +0 -1
- package/server/dist/modules/page/page.module.d.ts +0 -2
- package/server/dist/modules/page/page.module.js.map +0 -1
- package/server/dist/modules/page/page.service.d.ts +0 -12
- package/server/dist/modules/page/page.service.js.map +0 -1
- package/server/dist/modules/search/search.controller.d.ts +0 -8
- package/server/dist/modules/search/search.controller.js.map +0 -1
- package/server/dist/modules/search/search.entity.d.ts +0 -8
- package/server/dist/modules/search/search.entity.js.map +0 -1
- package/server/dist/modules/search/search.module.d.ts +0 -2
- package/server/dist/modules/search/search.module.js.map +0 -1
- package/server/dist/modules/search/search.service.d.ts +0 -12
- package/server/dist/modules/search/search.service.js.map +0 -1
- package/server/dist/modules/setting/setting.constant.d.ts +0 -3
- package/server/dist/modules/setting/setting.constant.js.map +0 -1
- package/server/dist/modules/setting/setting.controller.d.ts +0 -12
- package/server/dist/modules/setting/setting.controller.js.map +0 -1
- package/server/dist/modules/setting/setting.entity.d.ts +0 -26
- package/server/dist/modules/setting/setting.entity.js.map +0 -1
- package/server/dist/modules/setting/setting.module.d.ts +0 -2
- package/server/dist/modules/setting/setting.module.js.map +0 -1
- package/server/dist/modules/setting/setting.service.d.ts +0 -10
- package/server/dist/modules/setting/setting.service.js.map +0 -1
- package/server/dist/modules/smtp/mail.util.d.ts +0 -6
- package/server/dist/modules/smtp/mail.util.js.map +0 -1
- package/server/dist/modules/smtp/smtp.controller.d.ts +0 -9
- package/server/dist/modules/smtp/smtp.controller.js.map +0 -1
- package/server/dist/modules/smtp/smtp.entity.d.ts +0 -9
- package/server/dist/modules/smtp/smtp.entity.js.map +0 -1
- package/server/dist/modules/smtp/smtp.module.d.ts +0 -2
- package/server/dist/modules/smtp/smtp.module.js.map +0 -1
- package/server/dist/modules/smtp/smtp.service.d.ts +0 -11
- package/server/dist/modules/smtp/smtp.service.js.map +0 -1
- package/server/dist/modules/tag/tag.controller.d.ts +0 -12
- package/server/dist/modules/tag/tag.controller.js.map +0 -1
- package/server/dist/modules/tag/tag.entity.d.ts +0 -9
- package/server/dist/modules/tag/tag.entity.js.map +0 -1
- package/server/dist/modules/tag/tag.module.d.ts +0 -2
- package/server/dist/modules/tag/tag.module.js.map +0 -1
- package/server/dist/modules/tag/tag.service.d.ts +0 -13
- package/server/dist/modules/tag/tag.service.js.map +0 -1
- package/server/dist/modules/user/user.controller.d.ts +0 -13
- package/server/dist/modules/user/user.controller.js.map +0 -1
- package/server/dist/modules/user/user.entity.d.ts +0 -15
- package/server/dist/modules/user/user.entity.js.map +0 -1
- package/server/dist/modules/user/user.module.d.ts +0 -2
- package/server/dist/modules/user/user.module.js.map +0 -1
- package/server/dist/modules/user/user.service.d.ts +0 -16
- package/server/dist/modules/user/user.service.js.map +0 -1
- package/server/dist/modules/view/view.controller.d.ts +0 -11
- package/server/dist/modules/view/view.controller.js.map +0 -1
- package/server/dist/modules/view/view.entity.d.ts +0 -14
- package/server/dist/modules/view/view.entity.js.map +0 -1
- package/server/dist/modules/view/view.module.d.ts +0 -2
- package/server/dist/modules/view/view.module.js.map +0 -1
- package/server/dist/modules/view/view.service.d.ts +0 -11
- package/server/dist/modules/view/view.service.js.map +0 -1
- package/server/dist/modules/webhook/webhook.controller.d.ts +0 -12
- package/server/dist/modules/webhook/webhook.controller.js.map +0 -1
- package/server/dist/modules/webhook/webhook.entity.d.ts +0 -9
- package/server/dist/modules/webhook/webhook.entity.js.map +0 -1
- package/server/dist/modules/webhook/webhook.module.d.ts +0 -2
- package/server/dist/modules/webhook/webhook.module.js.map +0 -1
- package/server/dist/modules/webhook/webhook.service.d.ts +0 -16
- package/server/dist/modules/webhook/webhook.service.js.map +0 -1
- package/server/dist/public/apple-touch-icon.png +0 -0
- package/server/dist/public/favicon-16.png +0 -0
- package/server/dist/public/favicon-32.png +0 -0
- package/server/dist/public/favicon-48.png +0 -0
- package/server/dist/public/favicon.ico +0 -0
- package/server/dist/public/favicon.png +0 -0
- package/server/dist/public/icon-192.png +0 -0
- package/server/dist/public/icon-512.png +0 -0
- package/server/dist/public/index.html +0 -439
- package/server/dist/public/logo-200.png +0 -0
- package/server/dist/public/logo-400.png +0 -0
- package/server/dist/public/logo.png +0 -0
- package/server/dist/public/logo.svg +0 -7
- package/server/dist/public/swagger/custom.css +0 -11
- package/server/dist/public/uploads/2026-05-30/QR3X4UZQ93ZTUPGXCFA9II..png +0 -0
- package/server/dist/public/uploads/2026-05-31/BXQV3NX9ZVWHGNOSX9AXD8.webp +0 -0
- package/server/dist/public/uploads/2026-05-31/BXQV3NX9ZVWHGNOSX9AXD8_medium.webp +0 -0
- package/server/dist/public/uploads/2026-05-31/BXQV3NX9ZVWHGNOSX9AXD8_thumb.webp +0 -0
- package/server/dist/public/uploads/2026-05-31/I2SZC0ONA7CF31UM46MN56..jpg +0 -0
- package/server/dist/starter.d.ts +0 -1
- package/server/dist/starter.js.map +0 -1
- package/server/dist/tsconfig.build.tsbuildinfo +0 -16764
- package/server/dist/tsconfig.tsbuildinfo +0 -1
- package/server/dist/utils/date.util.d.ts +0 -1
- package/server/dist/utils/date.util.js.map +0 -1
- package/server/dist/utils/html-sanitize.util.d.ts +0 -1
- package/server/dist/utils/html-sanitize.util.js.map +0 -1
- package/server/dist/utils/image-processor.util.d.ts +0 -23
- package/server/dist/utils/image-processor.util.js.map +0 -1
- package/server/dist/utils/ip.util.d.ts +0 -2
- package/server/dist/utils/ip.util.js.map +0 -1
- package/server/dist/utils/local-api-quiet.util.d.ts +0 -1
- package/server/dist/utils/local-api-quiet.util.js.map +0 -1
- package/server/dist/utils/markdown.util.d.ts +0 -4
- package/server/dist/utils/markdown.util.js.map +0 -1
- package/server/dist/utils/oss/aliyun-oss-client.d.ts +0 -6
- package/server/dist/utils/oss/aliyun-oss-client.js.map +0 -1
- package/server/dist/utils/oss/oss-client.d.ts +0 -6
- package/server/dist/utils/oss/oss-client.js.map +0 -1
- package/server/dist/utils/oss.util.d.ts +0 -13
- package/server/dist/utils/oss.util.js.map +0 -1
- package/server/dist/utils/project-root.util.d.ts +0 -2
- package/server/dist/utils/project-root.util.js.map +0 -1
- package/server/dist/utils/query-whitelist.util.d.ts +0 -1
- package/server/dist/utils/query-whitelist.util.js.map +0 -1
- package/server/dist/utils/ua.util.d.ts +0 -9
- package/server/dist/utils/ua.util.js.map +0 -1
- package/server/dist/utils/uniqueid.util.d.ts +0 -1
- package/server/dist/utils/uniqueid.util.js.map +0 -1
- package/server/dist/utils/upload.util.d.ts +0 -5
- package/server/dist/utils/upload.util.js.map +0 -1
- package/server/dist/utils/user.util.d.ts +0 -1
- package/server/dist/utils/user.util.js.map +0 -1
- package/server/logs/error/error.log.-2026-05-19.log +0 -135
- package/server/logs/request/request.log.-2026-05-19.log +0 -0
- package/server/logs/response/response.log.-2026-05-19.log +0 -121
- package/server/public/uploads/2026-05-30/QR3X4UZQ93ZTUPGXCFA9II..png +0 -0
- package/server/public/uploads/2026-05-31/BXQV3NX9ZVWHGNOSX9AXD8.webp +0 -0
- package/server/public/uploads/2026-05-31/BXQV3NX9ZVWHGNOSX9AXD8_medium.webp +0 -0
- package/server/public/uploads/2026-05-31/BXQV3NX9ZVWHGNOSX9AXD8_thumb.webp +0 -0
- package/server/public/uploads/2026-05-31/I2SZC0ONA7CF31UM46MN56..jpg +0 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
/**
|
|
3
|
+
* Lazy UI exports with optional theme peer deps (nprogress, highlight.js, viewerjs).
|
|
4
|
+
* Kept out of ui/index + theme bulk re-exports so minimal themes do not webpack-load them.
|
|
5
|
+
*/
|
|
6
|
+
function lazyExport(name, loader) {
|
|
7
|
+
Object.defineProperty(exports, name, {
|
|
8
|
+
enumerable: true,
|
|
9
|
+
get() {
|
|
10
|
+
return loader()[name];
|
|
11
|
+
},
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
lazyExport('RouteProgress', () => require('../ui/components/RouteProgress'));
|
|
15
|
+
const loadContent = () => require('../ui/components/content');
|
|
16
|
+
lazyExport('ArticleReader', loadContent);
|
|
17
|
+
lazyExport('ArticleToc', loadContent);
|
|
18
|
+
lazyExport('HtmlContent', loadContent);
|
|
19
|
+
lazyExport('ImageViewer', loadContent);
|
|
20
|
+
lazyExport('LocaleTime', loadContent);
|
|
21
|
+
lazyExport('parseArticleToc', loadContent);
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.defaultModsFromManifest = defaultModsFromManifest;
|
|
4
|
+
/** Build default theme_mod values from `theme.json` → `appearance.sections`. */
|
|
5
|
+
function defaultModsFromManifest(manifest) {
|
|
6
|
+
const mods = {};
|
|
7
|
+
const sections = manifest?.appearance?.sections ?? [];
|
|
8
|
+
for (const section of sections) {
|
|
9
|
+
for (const setting of section.settings ?? []) {
|
|
10
|
+
if (setting.id && setting.default != null) {
|
|
11
|
+
mods[setting.id] = String(setting.default);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
return mods;
|
|
16
|
+
}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.THEME_USER_STORAGE_KEY = exports.THEME_TOKEN_STORAGE_KEY = exports.ADMIN_AUTH_STORAGE_KEY = void 0;
|
|
4
|
+
exports.getStoredAccessToken = getStoredAccessToken;
|
|
5
|
+
exports.resolveStoredUser = resolveStoredUser;
|
|
6
|
+
exports.persistThemeSession = persistThemeSession;
|
|
7
|
+
exports.clearThemeSession = clearThemeSession;
|
|
8
|
+
const json_1 = require("../api/json");
|
|
9
|
+
/** Zustand persist key used by the ReactPress admin (`web/src/stores/auth.ts`). */
|
|
10
|
+
exports.ADMIN_AUTH_STORAGE_KEY = 'auth-storage';
|
|
11
|
+
exports.THEME_TOKEN_STORAGE_KEY = 'token';
|
|
12
|
+
exports.THEME_USER_STORAGE_KEY = 'user';
|
|
13
|
+
function getStoredAccessToken() {
|
|
14
|
+
if (typeof window === 'undefined')
|
|
15
|
+
return null;
|
|
16
|
+
const themeToken = window.localStorage.getItem(exports.THEME_TOKEN_STORAGE_KEY);
|
|
17
|
+
if (themeToken)
|
|
18
|
+
return themeToken;
|
|
19
|
+
try {
|
|
20
|
+
const raw = window.localStorage.getItem(exports.ADMIN_AUTH_STORAGE_KEY);
|
|
21
|
+
if (!raw)
|
|
22
|
+
return null;
|
|
23
|
+
const parsed = JSON.parse(raw);
|
|
24
|
+
return parsed.state?.tokens?.accessToken ?? null;
|
|
25
|
+
}
|
|
26
|
+
catch {
|
|
27
|
+
return null;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
function mapAdminUserToThemeUser(adminUser, token) {
|
|
31
|
+
if (!adminUser || !token)
|
|
32
|
+
return null;
|
|
33
|
+
const name = (adminUser.username || adminUser.name || '').trim();
|
|
34
|
+
if (!name)
|
|
35
|
+
return null;
|
|
36
|
+
return {
|
|
37
|
+
name,
|
|
38
|
+
email: adminUser.email ?? '',
|
|
39
|
+
avatar: adminUser.avatar ?? '',
|
|
40
|
+
token,
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
/** Resolve theme user from theme storage, or fall back to admin `auth-storage`. */
|
|
44
|
+
function resolveStoredUser() {
|
|
45
|
+
if (typeof window === 'undefined')
|
|
46
|
+
return null;
|
|
47
|
+
const userStr = window.localStorage.getItem(exports.THEME_USER_STORAGE_KEY);
|
|
48
|
+
if (userStr) {
|
|
49
|
+
const parsed = (0, json_1.safeJsonParse)(userStr, {});
|
|
50
|
+
if (parsed?.name) {
|
|
51
|
+
const token = getStoredAccessToken();
|
|
52
|
+
return {
|
|
53
|
+
name: parsed.name,
|
|
54
|
+
email: parsed.email ?? '',
|
|
55
|
+
avatar: parsed.avatar ?? '',
|
|
56
|
+
token: parsed.token ?? token ?? '',
|
|
57
|
+
role: parsed.role,
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
try {
|
|
62
|
+
const raw = window.localStorage.getItem(exports.ADMIN_AUTH_STORAGE_KEY);
|
|
63
|
+
if (!raw)
|
|
64
|
+
return null;
|
|
65
|
+
const parsed = JSON.parse(raw);
|
|
66
|
+
const { state } = parsed;
|
|
67
|
+
if (!state?.isAuthenticated)
|
|
68
|
+
return null;
|
|
69
|
+
const token = state.tokens?.accessToken;
|
|
70
|
+
if (!token)
|
|
71
|
+
return null;
|
|
72
|
+
return mapAdminUserToThemeUser(state.user, token);
|
|
73
|
+
}
|
|
74
|
+
catch {
|
|
75
|
+
return null;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
function persistThemeSession(user) {
|
|
79
|
+
if (typeof window === 'undefined')
|
|
80
|
+
return;
|
|
81
|
+
if (user.token) {
|
|
82
|
+
window.localStorage.setItem(exports.THEME_TOKEN_STORAGE_KEY, user.token);
|
|
83
|
+
}
|
|
84
|
+
window.localStorage.setItem(exports.THEME_USER_STORAGE_KEY, JSON.stringify(user));
|
|
85
|
+
}
|
|
86
|
+
function clearThemeSession() {
|
|
87
|
+
if (typeof window === 'undefined')
|
|
88
|
+
return;
|
|
89
|
+
window.localStorage.removeItem(exports.THEME_USER_STORAGE_KEY);
|
|
90
|
+
window.localStorage.removeItem(exports.THEME_TOKEN_STORAGE_KEY);
|
|
91
|
+
window.localStorage.removeItem(exports.ADMIN_AUTH_STORAGE_KEY);
|
|
92
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.colorModeInitScript = exports.COLOR_MODE_STORAGE_KEY = void 0;
|
|
4
|
+
exports.resolvePreferredColorMode = resolvePreferredColorMode;
|
|
5
|
+
exports.applyColorModeClass = applyColorModeClass;
|
|
6
|
+
exports.persistColorMode = persistColorMode;
|
|
7
|
+
exports.resolveInitialColorModeState = resolveInitialColorModeState;
|
|
8
|
+
exports.resolveClientThemeMode = resolveClientThemeMode;
|
|
9
|
+
exports.buildColorModeInitScript = buildColorModeInitScript;
|
|
10
|
+
exports.COLOR_MODE_STORAGE_KEY = 'dark';
|
|
11
|
+
function resolvePreferredColorMode() {
|
|
12
|
+
if (typeof window === 'undefined') {
|
|
13
|
+
return false;
|
|
14
|
+
}
|
|
15
|
+
const storageTheme = window.localStorage.getItem(exports.COLOR_MODE_STORAGE_KEY);
|
|
16
|
+
if (storageTheme != null) {
|
|
17
|
+
return storageTheme === '1';
|
|
18
|
+
}
|
|
19
|
+
return window.matchMedia?.('(prefers-color-scheme: dark)').matches ?? false;
|
|
20
|
+
}
|
|
21
|
+
function applyColorModeClass(isDark, className = 'dark') {
|
|
22
|
+
if (typeof document === 'undefined') {
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
document.body.classList.toggle(className, isDark);
|
|
26
|
+
document.documentElement.style.colorScheme = isDark ? 'dark' : 'light';
|
|
27
|
+
}
|
|
28
|
+
function persistColorMode(isDark) {
|
|
29
|
+
if (typeof window === 'undefined') {
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
window.localStorage.setItem(exports.COLOR_MODE_STORAGE_KEY, isDark ? '1' : '-1');
|
|
33
|
+
}
|
|
34
|
+
function resolveInitialColorModeState() {
|
|
35
|
+
if (typeof window === 'undefined') {
|
|
36
|
+
return null;
|
|
37
|
+
}
|
|
38
|
+
return resolvePreferredColorMode() ? 'dark' : 'light';
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Theme mode for the first client render (after `_document` color-mode script).
|
|
42
|
+
* SSR should use `'light'`; call only in browser or via `typeof window` guard.
|
|
43
|
+
*/
|
|
44
|
+
function resolveClientThemeMode() {
|
|
45
|
+
if (typeof window === 'undefined') {
|
|
46
|
+
return 'light';
|
|
47
|
+
}
|
|
48
|
+
if (document.body.classList.contains('dark')) {
|
|
49
|
+
return 'dark';
|
|
50
|
+
}
|
|
51
|
+
return resolveInitialColorModeState() ?? 'light';
|
|
52
|
+
}
|
|
53
|
+
/** Runs before paint to avoid light-mode flash on first visit. */
|
|
54
|
+
function buildColorModeInitScript(options = {}) {
|
|
55
|
+
const storageKey = options.storageKey ?? exports.COLOR_MODE_STORAGE_KEY;
|
|
56
|
+
const className = options.className ?? 'dark';
|
|
57
|
+
return `(function(){try{var k='${storageKey}';var s=localStorage.getItem(k);var d=s==='1'||(s==null&&window.matchMedia('(prefers-color-scheme: dark)').matches);if(d){document.documentElement.style.colorScheme='dark';document.body.classList.add('${className}');}else{document.documentElement.style.colorScheme='light';}}catch(e){}})();`;
|
|
58
|
+
}
|
|
59
|
+
exports.colorModeInitScript = buildColorModeInitScript();
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isValidCommentEmail = exports.COMMENT_EMAIL_REGEXP = exports.COMMENT_AUTHOR_STORAGE_KEY = void 0;
|
|
4
|
+
exports.isValidCommentAuthor = isValidCommentAuthor;
|
|
5
|
+
exports.getCommentEmailError = getCommentEmailError;
|
|
6
|
+
exports.readCommentAuthor = readCommentAuthor;
|
|
7
|
+
exports.persistCommentAuthor = persistCommentAuthor;
|
|
8
|
+
const email_1 = require("../../utils/email");
|
|
9
|
+
Object.defineProperty(exports, "COMMENT_EMAIL_REGEXP", { enumerable: true, get: function () { return email_1.COMMENT_EMAIL_REGEXP; } });
|
|
10
|
+
Object.defineProperty(exports, "isValidCommentEmail", { enumerable: true, get: function () { return email_1.isValidCommentEmail; } });
|
|
11
|
+
exports.COMMENT_AUTHOR_STORAGE_KEY = 'reactpress-comment-author';
|
|
12
|
+
function isValidCommentAuthor(author) {
|
|
13
|
+
return Boolean(author?.name?.trim() && (0, email_1.isValidCommentEmail)(author.email));
|
|
14
|
+
}
|
|
15
|
+
function getCommentEmailError(email, messages, options = {}) {
|
|
16
|
+
const trimmed = email?.trim() ?? '';
|
|
17
|
+
if (!options.touched)
|
|
18
|
+
return '';
|
|
19
|
+
if (!trimmed)
|
|
20
|
+
return messages.required;
|
|
21
|
+
if (!(0, email_1.isValidCommentEmail)(trimmed))
|
|
22
|
+
return messages.invalid;
|
|
23
|
+
return '';
|
|
24
|
+
}
|
|
25
|
+
function readCommentAuthor() {
|
|
26
|
+
if (typeof window === 'undefined')
|
|
27
|
+
return null;
|
|
28
|
+
try {
|
|
29
|
+
const raw = window.localStorage.getItem(exports.COMMENT_AUTHOR_STORAGE_KEY);
|
|
30
|
+
if (!raw)
|
|
31
|
+
return null;
|
|
32
|
+
const parsed = JSON.parse(raw);
|
|
33
|
+
if (!isValidCommentAuthor(parsed))
|
|
34
|
+
return null;
|
|
35
|
+
return { name: parsed.name.trim(), email: parsed.email.trim() };
|
|
36
|
+
}
|
|
37
|
+
catch {
|
|
38
|
+
return null;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
function persistCommentAuthor(author) {
|
|
42
|
+
if (typeof window === 'undefined')
|
|
43
|
+
return;
|
|
44
|
+
window.localStorage.setItem(exports.COMMENT_AUTHOR_STORAGE_KEY, JSON.stringify({ name: author.name.trim(), email: author.email.trim() }));
|
|
45
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.mergeVisitorI18n = mergeVisitorI18n;
|
|
7
|
+
exports.slimVisitorI18nForSsr = slimVisitorI18nForSsr;
|
|
8
|
+
const object_1 = require("../../utils/object");
|
|
9
|
+
const en_json_1 = __importDefault(require("../../config/locales/en.json"));
|
|
10
|
+
const zh_json_1 = __importDefault(require("../../config/locales/zh.json"));
|
|
11
|
+
const BUILTIN_VISITOR_LOCALES = {
|
|
12
|
+
en: en_json_1.default,
|
|
13
|
+
zh: zh_json_1.default,
|
|
14
|
+
};
|
|
15
|
+
/** Remote CMS i18n may omit newer keys — fill from toolkit defaults. */
|
|
16
|
+
function mergeVisitorI18n(apiI18n) {
|
|
17
|
+
const merged = { ...apiI18n };
|
|
18
|
+
for (const [locale, defaults] of Object.entries(BUILTIN_VISITOR_LOCALES)) {
|
|
19
|
+
const fromApi = apiI18n[locale] || {};
|
|
20
|
+
merged[locale] = (0, object_1.deepMerge)((0, object_1.deepMerge)({}, defaults), fromApi);
|
|
21
|
+
}
|
|
22
|
+
return merged;
|
|
23
|
+
}
|
|
24
|
+
/** Keep only the active locale in SSR payload; other locales load client-side. */
|
|
25
|
+
function slimVisitorI18nForSsr(i18n, locale) {
|
|
26
|
+
const messages = i18n[locale];
|
|
27
|
+
return messages && typeof messages === 'object' ? { [locale]: messages } : {};
|
|
28
|
+
}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.resolveRequestLocale = resolveRequestLocale;
|
|
4
|
+
exports.parseSiteLocale = parseSiteLocale;
|
|
5
|
+
exports.createTranslator = createTranslator;
|
|
6
|
+
const json_1 = require("../api/json");
|
|
7
|
+
function resolveRequestLocale(supported, options = {}) {
|
|
8
|
+
const fallback = options.fallback ?? 'zh';
|
|
9
|
+
const { preferred, acceptLanguage } = options;
|
|
10
|
+
if (preferred && supported.includes(preferred)) {
|
|
11
|
+
return preferred;
|
|
12
|
+
}
|
|
13
|
+
if (acceptLanguage) {
|
|
14
|
+
const parts = acceptLanguage.split(',');
|
|
15
|
+
for (const part of parts) {
|
|
16
|
+
const tag = part.split(';')[0]?.trim().toLowerCase();
|
|
17
|
+
if (!tag)
|
|
18
|
+
continue;
|
|
19
|
+
if (supported.includes(tag))
|
|
20
|
+
return tag;
|
|
21
|
+
const short = tag.split('-')[0];
|
|
22
|
+
if (short && supported.includes(short))
|
|
23
|
+
return short;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
if (supported.includes(fallback))
|
|
27
|
+
return fallback;
|
|
28
|
+
return supported[0] ?? 'en';
|
|
29
|
+
}
|
|
30
|
+
function parseSiteLocale(i18nRaw, options = {}) {
|
|
31
|
+
const catalog = (0, json_1.safeJsonParse)(i18nRaw, {});
|
|
32
|
+
const locales = Object.keys(catalog).filter((key) => catalog[key] && typeof catalog[key] === 'object');
|
|
33
|
+
const fallbackLocale = options.fallbackLocale ??
|
|
34
|
+
(locales.includes('zh') ? 'zh' : locales.includes('en') ? 'en' : locales[0] ?? 'en');
|
|
35
|
+
const locale = resolveRequestLocale(locales.length ? locales : [fallbackLocale], {
|
|
36
|
+
preferred: options.locale ?? options.preferredLocale,
|
|
37
|
+
acceptLanguage: options.acceptLanguage,
|
|
38
|
+
fallback: fallbackLocale,
|
|
39
|
+
});
|
|
40
|
+
const messages = { ...(catalog[locale] ?? {}) };
|
|
41
|
+
return {
|
|
42
|
+
locale,
|
|
43
|
+
locales: locales.length ? locales : [locale],
|
|
44
|
+
messages,
|
|
45
|
+
catalog,
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
function resolveLocaleMessage(messages, key) {
|
|
49
|
+
const flat = messages[key];
|
|
50
|
+
if (typeof flat === 'string' && flat !== '') {
|
|
51
|
+
return flat;
|
|
52
|
+
}
|
|
53
|
+
const parts = key.split('.');
|
|
54
|
+
let current = messages;
|
|
55
|
+
for (const part of parts) {
|
|
56
|
+
if (!current || typeof current !== 'object') {
|
|
57
|
+
return undefined;
|
|
58
|
+
}
|
|
59
|
+
current = current[part];
|
|
60
|
+
}
|
|
61
|
+
return typeof current === 'string' && current !== '' ? current : undefined;
|
|
62
|
+
}
|
|
63
|
+
function createTranslator(messages) {
|
|
64
|
+
const lookup = messages;
|
|
65
|
+
return function t(key, fallback) {
|
|
66
|
+
const resolved = resolveLocaleMessage(lookup, key);
|
|
67
|
+
if (resolved != null) {
|
|
68
|
+
return resolved;
|
|
69
|
+
}
|
|
70
|
+
return fallback ?? key;
|
|
71
|
+
};
|
|
72
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.resolveThemeRuntime = resolveThemeRuntime;
|
|
4
|
+
const theme_1 = require("../extension/theme");
|
|
5
|
+
function resolveThemeRuntime(globalSettingRaw, options) {
|
|
6
|
+
const themeState = (0, theme_1.getThemeStateFromGlobalSetting)(globalSettingRaw);
|
|
7
|
+
const activeThemeId = themeState.activeTheme;
|
|
8
|
+
const previewId = themeState.previewThemeId;
|
|
9
|
+
const honorPreview = options.honorPreview !== false;
|
|
10
|
+
const effectiveId = honorPreview && previewId ? previewId : options.themeId || activeThemeId;
|
|
11
|
+
const isPreview = Boolean(previewId && previewId !== activeThemeId);
|
|
12
|
+
return {
|
|
13
|
+
themeId: effectiveId,
|
|
14
|
+
activeThemeId,
|
|
15
|
+
mods: themeState.mods[effectiveId] ?? {},
|
|
16
|
+
isPreview,
|
|
17
|
+
themeState,
|
|
18
|
+
};
|
|
19
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.readRequestCookie = exports.DEFAULT_VISITOR_LOCALES = exports.LEGACY_LOCALE_STORAGE_KEY = exports.VISITOR_LOCALE_COOKIE = void 0;
|
|
4
|
+
exports.readBrowserCookie = readBrowserCookie;
|
|
5
|
+
exports.resolveVisitorLocale = resolveVisitorLocale;
|
|
6
|
+
exports.persistVisitorLocale = persistVisitorLocale;
|
|
7
|
+
const cookie_1 = require("../../utils/cookie");
|
|
8
|
+
Object.defineProperty(exports, "readRequestCookie", { enumerable: true, get: function () { return cookie_1.readRequestCookie; } });
|
|
9
|
+
const locale_1 = require("./locale");
|
|
10
|
+
exports.VISITOR_LOCALE_COOKIE = 'reactpress-locale';
|
|
11
|
+
exports.LEGACY_LOCALE_STORAGE_KEY = 'locale';
|
|
12
|
+
/** Fallback when CMS locales are unavailable (e.g. `_document` before bootstrap). */
|
|
13
|
+
exports.DEFAULT_VISITOR_LOCALES = ['zh', 'en'];
|
|
14
|
+
function readCookieFromHeader(header, name) {
|
|
15
|
+
const match = new RegExp(`(?:^|;\\s*)${name}=([^;]*)`).exec(header);
|
|
16
|
+
if (!match?.[1])
|
|
17
|
+
return undefined;
|
|
18
|
+
try {
|
|
19
|
+
return decodeURIComponent(match[1]);
|
|
20
|
+
}
|
|
21
|
+
catch {
|
|
22
|
+
return match[1];
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
/** Read a visitor cookie in the browser (client `getInitialProps`, hydration). */
|
|
26
|
+
function readBrowserCookie(name) {
|
|
27
|
+
if (typeof document === 'undefined')
|
|
28
|
+
return undefined;
|
|
29
|
+
return readCookieFromHeader(document.cookie, name);
|
|
30
|
+
}
|
|
31
|
+
function resolveVisitorLocale(supported, req) {
|
|
32
|
+
const locales = supported.length ? supported : ['zh', 'en'];
|
|
33
|
+
const preferred = (0, cookie_1.readRequestCookie)(req, exports.VISITOR_LOCALE_COOKIE) ||
|
|
34
|
+
(0, cookie_1.readRequestCookie)(req, exports.LEGACY_LOCALE_STORAGE_KEY) ||
|
|
35
|
+
readBrowserCookie(exports.VISITOR_LOCALE_COOKIE) ||
|
|
36
|
+
readBrowserCookie(exports.LEGACY_LOCALE_STORAGE_KEY);
|
|
37
|
+
let acceptLanguage;
|
|
38
|
+
if (typeof req?.headers?.['accept-language'] === 'string') {
|
|
39
|
+
acceptLanguage = req.headers['accept-language'];
|
|
40
|
+
}
|
|
41
|
+
else if (typeof navigator !== 'undefined' && navigator.language) {
|
|
42
|
+
acceptLanguage = navigator.language;
|
|
43
|
+
}
|
|
44
|
+
return (0, locale_1.resolveRequestLocale)(locales, {
|
|
45
|
+
preferred,
|
|
46
|
+
acceptLanguage,
|
|
47
|
+
fallback: locales.includes('zh') ? 'zh' : locales[0] ?? 'zh',
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
function persistVisitorLocale(locale) {
|
|
51
|
+
if (typeof window === 'undefined')
|
|
52
|
+
return;
|
|
53
|
+
window.localStorage.setItem(exports.LEGACY_LOCALE_STORAGE_KEY, locale);
|
|
54
|
+
window.localStorage.setItem(exports.VISITOR_LOCALE_COOKIE, locale);
|
|
55
|
+
document.cookie = `${exports.VISITOR_LOCALE_COOKIE}=${encodeURIComponent(locale)}; path=/; max-age=31536000; SameSite=Lax`;
|
|
56
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LEGACY_LOCALE_STORAGE_KEY = exports.VISITOR_LOCALE_COOKIE = void 0;
|
|
4
|
+
exports.readRequestCookie = readRequestCookie;
|
|
5
|
+
exports.resolveVisitorLocale = resolveVisitorLocale;
|
|
6
|
+
exports.persistVisitorLocale = persistVisitorLocale;
|
|
7
|
+
const locale_1 = require("./locale");
|
|
8
|
+
exports.VISITOR_LOCALE_COOKIE = 'reactpress-locale';
|
|
9
|
+
exports.LEGACY_LOCALE_STORAGE_KEY = 'locale';
|
|
10
|
+
function readRequestCookie(req, name) {
|
|
11
|
+
const header = req?.headers?.cookie ?? '';
|
|
12
|
+
const match = new RegExp(`(?:^|;\\s*)${name}=([^;]*)`).exec(header);
|
|
13
|
+
if (!match?.[1])
|
|
14
|
+
return undefined;
|
|
15
|
+
try {
|
|
16
|
+
return decodeURIComponent(match[1]);
|
|
17
|
+
}
|
|
18
|
+
catch {
|
|
19
|
+
return match[1];
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
function resolveVisitorLocale(supported, req) {
|
|
23
|
+
const locales = supported.length ? supported : ['zh', 'en'];
|
|
24
|
+
return (0, locale_1.resolveRequestLocale)(locales, {
|
|
25
|
+
preferred: readRequestCookie(req, exports.VISITOR_LOCALE_COOKIE) ||
|
|
26
|
+
readRequestCookie(req, exports.LEGACY_LOCALE_STORAGE_KEY),
|
|
27
|
+
acceptLanguage: typeof req?.headers?.['accept-language'] === 'string'
|
|
28
|
+
? req.headers['accept-language']
|
|
29
|
+
: undefined,
|
|
30
|
+
fallback: locales.includes('zh') ? 'zh' : locales[0] ?? 'zh',
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
function persistVisitorLocale(locale) {
|
|
34
|
+
if (typeof window === 'undefined')
|
|
35
|
+
return;
|
|
36
|
+
window.localStorage.setItem(exports.LEGACY_LOCALE_STORAGE_KEY, locale);
|
|
37
|
+
window.localStorage.setItem(exports.VISITOR_LOCALE_COOKIE, locale);
|
|
38
|
+
document.cookie = `${exports.VISITOR_LOCALE_COOKIE}=${encodeURIComponent(locale)}; path=/; max-age=31536000; SameSite=Lax`;
|
|
39
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/* tslint:disable */
|
|
4
|
+
/*
|
|
5
|
+
* ---------------------------------------------------------------
|
|
6
|
+
* ## THIS FILE WAS GENERATED VIA SWAGGER-TYPESCRIPT-API ##
|
|
7
|
+
* ## ##
|
|
8
|
+
* ## AUTHOR: acacode ##
|
|
9
|
+
* ## SOURCE: https://github.com/acacode/swagger-typescript-api ##
|
|
10
|
+
* ---------------------------------------------------------------
|
|
11
|
+
*/
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AntdStyleTransitionFix = AntdStyleTransitionFix;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const react_1 = require("react");
|
|
6
|
+
const STYLE_ELEMENT_ID = 'reactpress-antd-style-transition-fix';
|
|
7
|
+
/** Disable Ant Design CSS transitions during hydration to avoid style flash. */
|
|
8
|
+
function AntdStyleTransitionFix({ id = STYLE_ELEMENT_ID, }) {
|
|
9
|
+
(0, react_1.useEffect)(() => {
|
|
10
|
+
const el = document.querySelector(`#${id}`);
|
|
11
|
+
el?.parentNode?.removeChild(el);
|
|
12
|
+
}, [id]);
|
|
13
|
+
return ((0, jsx_runtime_1.jsx)("style", { id: id, dangerouslySetInnerHTML: {
|
|
14
|
+
__html: `[class^="ant-"], [class*=" ant-"] { transition: none !important; }`,
|
|
15
|
+
} }));
|
|
16
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ArchiveEmptyState = ArchiveEmptyState;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
/** Headless empty archive/search state with optional back link slot. */
|
|
6
|
+
function ArchiveEmptyState({ message, backHref = '/', backLabel = '← Back to archives', className = 'empty-state', renderBackLink, }) {
|
|
7
|
+
return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("p", { className: className, "data-rp-component": "archive-empty", children: message }), renderBackLink ? ((0, jsx_runtime_1.jsx)("p", { children: renderBackLink({ href: backHref, label: backLabel }) })) : null] }));
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ArchivePageLayout = ArchivePageLayout;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
/** Two-column archive layout (main list + sidebar widgets). */
|
|
6
|
+
function ArchivePageLayout({ main, sidebar, className = 'content-layout', mainClassName = 'articles-section', sidebarClassName = 'sidebar', }) {
|
|
7
|
+
return ((0, jsx_runtime_1.jsxs)("div", { className: className, "data-rp-component": "archive-layout", children: [(0, jsx_runtime_1.jsx)("section", { className: mainClassName, children: main }), sidebar ? (0, jsx_runtime_1.jsx)("aside", { className: sidebarClassName, children: sidebar }) : null] }));
|
|
8
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ArticleCard = ArticleCard;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const format_1 = require("../theme/format");
|
|
6
|
+
const nav_1 = require("../theme/nav");
|
|
7
|
+
/** Headless article card — theme supplies Link markup and CSS. */
|
|
8
|
+
function ArticleCard({ article, className, titleTag = 'h3', showCategory = true, renderTitleLink, renderCategoryLink, renderDate, }) {
|
|
9
|
+
const TitleTag = titleTag;
|
|
10
|
+
const dateNode = article.publishAt &&
|
|
11
|
+
(renderDate ? renderDate(article.publishAt) : (0, format_1.formatPublishDate)(article.publishAt));
|
|
12
|
+
return ((0, jsx_runtime_1.jsxs)("article", { className: className, "data-rp-component": "article-card", children: [article.cover ? ((0, jsx_runtime_1.jsx)("div", { className: "article-image", "data-rp-part": "cover", children: (0, jsx_runtime_1.jsx)("img", { src: article.cover, alt: article.title, loading: "lazy" }) })) : null, (0, jsx_runtime_1.jsxs)("div", { className: "article-content", "data-rp-part": "content", children: [(0, jsx_runtime_1.jsx)(TitleTag, { className: "article-title", children: renderTitleLink({ href: (0, nav_1.articlePath)(article.id), children: article.title }) }), article.summary ? (0, jsx_runtime_1.jsx)("p", { className: "article-summary", children: article.summary }) : null, dateNode || (showCategory && article.category && renderCategoryLink) ? ((0, jsx_runtime_1.jsxs)("div", { className: "article-meta", children: [dateNode ? (0, jsx_runtime_1.jsx)("span", { className: "publish-date", children: dateNode }) : null, showCategory && article.category && renderCategoryLink ? ((0, jsx_runtime_1.jsx)("span", { className: "article-category", children: renderCategoryLink({
|
|
13
|
+
href: (0, nav_1.categoryPath)(article.category.value),
|
|
14
|
+
children: article.category.label,
|
|
15
|
+
}) })) : null] })) : null] })] }));
|
|
16
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.ArticleList = ArticleList;
|
|
7
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
8
|
+
const react_1 = __importDefault(require("react"));
|
|
9
|
+
/** Headless article grid/list — theme supplies markup and styles per item. */
|
|
10
|
+
function ArticleList({ articles, limit, className, empty = null, renderArticle, }) {
|
|
11
|
+
const list = limit != null ? articles.slice(0, limit) : articles;
|
|
12
|
+
if (!list.length) {
|
|
13
|
+
return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: empty });
|
|
14
|
+
}
|
|
15
|
+
return ((0, jsx_runtime_1.jsx)("div", { className: className, "data-rp-component": "article-list", children: list.map((article, index) => ((0, jsx_runtime_1.jsx)(react_1.default.Fragment, { children: renderArticle(article, index) }, article.id))) }));
|
|
16
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BaseGlobalStyles = BaseGlobalStyles;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
/** Shared reset used by starter themes (override via `extra` CSS). */
|
|
6
|
+
function BaseGlobalStyles({ extra }) {
|
|
7
|
+
const css = `
|
|
8
|
+
html, body {
|
|
9
|
+
padding: 0;
|
|
10
|
+
margin: 0;
|
|
11
|
+
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu,
|
|
12
|
+
Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
|
|
13
|
+
}
|
|
14
|
+
* { box-sizing: border-box; }
|
|
15
|
+
${extra ?? ''}
|
|
16
|
+
`;
|
|
17
|
+
return (0, jsx_runtime_1.jsx)("style", { dangerouslySetInnerHTML: { __html: css } });
|
|
18
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LocaleSwitcher = LocaleSwitcher;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const LocaleContext_1 = require("./context/LocaleContext");
|
|
6
|
+
/** Minimal locale toggle — style with theme CSS. */
|
|
7
|
+
function LocaleSwitcher({ className, buttonClassName, activeClassName, }) {
|
|
8
|
+
const { locale, locales, setLocale } = (0, LocaleContext_1.useLocale)();
|
|
9
|
+
if (locales.length < 2) {
|
|
10
|
+
return null;
|
|
11
|
+
}
|
|
12
|
+
return ((0, jsx_runtime_1.jsx)("div", { className: className, "data-rp-component": "locale-switcher", role: "group", "aria-label": "Language", children: locales.map((code) => ((0, jsx_runtime_1.jsx)("button", { type: "button", className: locale === code && activeClassName
|
|
13
|
+
? `${buttonClassName ?? ''} ${activeClassName}`.trim()
|
|
14
|
+
: buttonClassName, "aria-pressed": locale === code, onClick: () => setLocale(code), children: code.toUpperCase() }, code))) }));
|
|
15
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.NavMenu = NavMenu;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
/** Headless site navigation — styling via theme `renderLink` (e.g. Next.js `Link`). */
|
|
6
|
+
function NavMenu({ items, activeId, className, listClassName, itemClassName, renderLink, }) {
|
|
7
|
+
return ((0, jsx_runtime_1.jsx)("nav", { className: className, "data-rp-component": "nav", "aria-label": "Site", children: (0, jsx_runtime_1.jsx)("ul", { className: listClassName, children: items.map((item) => ((0, jsx_runtime_1.jsx)("li", { className: itemClassName, children: renderLink({ item, active: item.id === activeId }) }, item.id))) }) }));
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.NotFoundPanel = NotFoundPanel;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
/** Headless 404 / not-found content block (theme supplies styles). */
|
|
6
|
+
function NotFoundPanel({ title = 'Not found', subtitle, description, illustration, actions, className, }) {
|
|
7
|
+
return ((0, jsx_runtime_1.jsxs)("div", { className: className, "data-rp-component": "not-found-panel", children: [illustration ? (0, jsx_runtime_1.jsx)("div", { "data-rp-part": "illustration", children: illustration }) : null, (0, jsx_runtime_1.jsx)("h1", { "data-rp-part": "title", children: title }), subtitle != null && subtitle !== '' ? (0, jsx_runtime_1.jsx)("h2", { "data-rp-part": "subtitle", children: subtitle }) : null, description != null && description !== '' ? ((0, jsx_runtime_1.jsx)("p", { "data-rp-part": "description", children: description })) : null, actions ? (0, jsx_runtime_1.jsx)("div", { "data-rp-part": "actions", children: actions }) : null] }));
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PageHeader = PageHeader;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
/** Unstyled archive / page title block (WP `the_archive_title` pattern). */
|
|
6
|
+
function PageHeader({ title, description, className, titleClassName, descriptionClassName, }) {
|
|
7
|
+
return ((0, jsx_runtime_1.jsxs)("header", { className: className, "data-rp-component": "page-header", children: [(0, jsx_runtime_1.jsx)("h1", { className: titleClassName, children: title }), description != null && description !== '' ? ((0, jsx_runtime_1.jsx)("p", { className: descriptionClassName, children: description })) : null] }));
|
|
8
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SiteBranding = SiteBranding;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const ThemeRuntimeContext_1 = require("./context/ThemeRuntimeContext");
|
|
6
|
+
/**
|
|
7
|
+
* Site title: customizer `displayTitle` when set, otherwise `systemTitle` from site settings.
|
|
8
|
+
*/
|
|
9
|
+
function SiteBranding({ fallback = '', className, as: Tag = 'span' }) {
|
|
10
|
+
const mod = (0, ThemeRuntimeContext_1.useThemeMod)('displayTitle', '');
|
|
11
|
+
const { siteName } = (0, ThemeRuntimeContext_1.useSiteMeta)();
|
|
12
|
+
const title = mod.trim() || siteName.trim() || fallback;
|
|
13
|
+
return (0, jsx_runtime_1.jsx)(Tag, { className: className, children: title });
|
|
14
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SiteDocument = SiteDocument;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const ThemeLayout_1 = require("./ThemeLayout");
|
|
6
|
+
const ThemeCssVars_1 = require("./ThemeCssVars");
|
|
7
|
+
const BaseGlobalStyles_1 = require("./BaseGlobalStyles");
|
|
8
|
+
/**
|
|
9
|
+
* WordPress-style shell: head slot + header + main + footer (like `get_header()` / `get_footer()`).
|
|
10
|
+
*/
|
|
11
|
+
function SiteDocument({ head, header, footer, children, className = 'container', mainClassName = 'main', contentClassName = 'content-wrapper', wrapContent = true, globalCss, skipBaseStyles = false, skipCssVars = true, }) {
|
|
12
|
+
return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [head, !skipCssVars ? (0, jsx_runtime_1.jsx)(ThemeCssVars_1.ThemeCssVars, {}) : null, (0, jsx_runtime_1.jsx)(ThemeLayout_1.ThemeLayout, { className: className, mainClassName: mainClassName, contentClassName: contentClassName, wrapContent: wrapContent, header: header, footer: footer, children: children }), !skipBaseStyles ? ((0, jsx_runtime_1.jsx)(BaseGlobalStyles_1.BaseGlobalStyles, { extra: globalCss })) : globalCss ? ((0, jsx_runtime_1.jsx)("style", { dangerouslySetInnerHTML: { __html: globalCss } })) : null] }));
|
|
13
|
+
}
|