@bleedingdev/modern-js-main-doc 3.2.0-ultramodern.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +23 -0
- package/builder-doc/docs/en/config/performance/rsdoctor.md +37 -0
- package/builder-doc/docs/zh/config/performance/rsdoctor.md +37 -0
- package/docs/en/_nav.json +36 -0
- package/docs/en/apis/_meta.json +13 -0
- package/docs/en/apis/app/commands.mdx +215 -0
- package/docs/en/apis/app/hooks/_meta.json +28 -0
- package/docs/en/apis/app/hooks/api/lambda.mdx +13 -0
- package/docs/en/apis/app/hooks/config/_meta.json +1 -0
- package/docs/en/apis/app/hooks/config/favicon.mdx +29 -0
- package/docs/en/apis/app/hooks/config/html.mdx +9 -0
- package/docs/en/apis/app/hooks/config/icon.mdx +29 -0
- package/docs/en/apis/app/hooks/config/mock.mdx +7 -0
- package/docs/en/apis/app/hooks/config/public.mdx +30 -0
- package/docs/en/apis/app/hooks/config/upload.mdx +54 -0
- package/docs/en/apis/app/hooks/modern-config.mdx +9 -0
- package/docs/en/apis/app/hooks/server/server.mdx +10 -0
- package/docs/en/apis/app/hooks/shared.mdx +7 -0
- package/docs/en/apis/app/hooks/src/app.mdx +30 -0
- package/docs/en/apis/app/hooks/src/entry.mdx +39 -0
- package/docs/en/apis/app/hooks/src/entry.server.mdx +56 -0
- package/docs/en/apis/app/hooks/src/modern.runtime.mdx +9 -0
- package/docs/en/apis/app/hooks/src/routes.mdx +90 -0
- package/docs/en/apis/app/hooks/src/server.mdx +7 -0
- package/docs/en/apis/app/runtime/_meta.json +32 -0
- package/docs/en/apis/app/runtime/bff/use-backend-context.mdx +30 -0
- package/docs/en/apis/app/runtime/core/create-root.mdx +22 -0
- package/docs/en/apis/app/runtime/core/render.mdx +42 -0
- package/docs/en/apis/app/runtime/core/runtime-context.mdx +160 -0
- package/docs/en/apis/app/runtime/router/router.mdx +288 -0
- package/docs/en/apis/app/runtime/ssr/no-ssr.mdx +38 -0
- package/docs/en/apis/app/runtime/ssr/renderStreaming.mdx +71 -0
- package/docs/en/apis/app/runtime/ssr/renderString.mdx +64 -0
- package/docs/en/apis/app/runtime/ssr/requestHandler.mdx +48 -0
- package/docs/en/apis/app/runtime/utility/css-in-js.mdx +44 -0
- package/docs/en/apis/app/runtime/utility/head.mdx +38 -0
- package/docs/en/apis/app/runtime/utility/loadable.mdx +85 -0
- package/docs/en/community/_meta.json +11 -0
- package/docs/en/community/blog/2022-0708-updates.md +95 -0
- package/docs/en/community/blog/2022-0910-updates.md +80 -0
- package/docs/en/community/blog/_meta.json +7 -0
- package/docs/en/community/blog/overview.md +67 -0
- package/docs/en/community/blog/v2-release-note.mdx +244 -0
- package/docs/en/community/blog/v3-release-note.mdx +628 -0
- package/docs/en/community/contributing-guide.mdx +257 -0
- package/docs/en/community/releases.mdx +31 -0
- package/docs/en/community/showcase.mdx +15 -0
- package/docs/en/community/team.mdx +29 -0
- package/docs/en/components/auto-upgrade.mdx +0 -0
- package/docs/en/components/bff-upload.mdx +97 -0
- package/docs/en/components/build-output.mdx +45 -0
- package/docs/en/components/bundler.mdx +3 -0
- package/docs/en/components/convention-routing-motivation.mdx +0 -0
- package/docs/en/components/debug-app.mdx +15 -0
- package/docs/en/components/default-browserslist.mdx +7 -0
- package/docs/en/components/deploy-command.mdx +14 -0
- package/docs/en/components/deploy.mdx +1 -0
- package/docs/en/components/enable-bff-caution.mdx +3 -0
- package/docs/en/components/enable-bff.mdx +56 -0
- package/docs/en/components/enable-ssg.mdx +49 -0
- package/docs/en/components/entry-mode.mdx +0 -0
- package/docs/en/components/entry-scan-logic.mdx +7 -0
- package/docs/en/components/extend-bff-function.mdx +3 -0
- package/docs/en/components/hono.mdx +120 -0
- package/docs/en/components/init-app.mdx +111 -0
- package/docs/en/components/init-rspack-app.mdx +5 -0
- package/docs/en/components/internal-logger.mdx +25 -0
- package/docs/en/components/internal-metrics.mdx +20 -0
- package/docs/en/components/international/custom-instance-code.mdx +16 -0
- package/docs/en/components/international/init-options-desc.mdx +1 -0
- package/docs/en/components/international/install-command.mdx +10 -0
- package/docs/en/components/international/instance-code.mdx +16 -0
- package/docs/en/components/international/introduce.mdx +5 -0
- package/docs/en/components/international/platform-support.mdx +0 -0
- package/docs/en/components/language-config.mdx +9 -0
- package/docs/en/components/micro-frontend.mdx +6 -0
- package/docs/en/components/micro-master-manifest-config.mdx +15 -0
- package/docs/en/components/micro-runtime-config.mdx +17 -0
- package/docs/en/components/module-federation.mdx +7 -0
- package/docs/en/components/new-entry-tooltip.mdx +0 -0
- package/docs/en/components/nodeVersion.mdx +28 -0
- package/docs/en/components/other-plugins.mdx +0 -0
- package/docs/en/components/output-asset-prefix-extend.mdx +0 -0
- package/docs/en/components/output-distpath-warning.mdx +0 -0
- package/docs/en/components/output-polyfill-extend.mdx +1 -0
- package/docs/en/components/prerequisites.mdx +18 -0
- package/docs/en/components/release-note.mdx +1 -0
- package/docs/en/components/routes-practice.mdx +0 -0
- package/docs/en/components/rsbuild-config-tooltip.mdx +5 -0
- package/docs/en/components/rsbuild.mdx +3 -0
- package/docs/en/components/rsc-deploy-tip.mdx +1 -0
- package/docs/en/components/rspack.mdx +3 -0
- package/docs/en/components/rspackTip.mdx +7 -0
- package/docs/en/components/runtime-cli-config.mdx +0 -0
- package/docs/en/components/serve-command.mdx +22 -0
- package/docs/en/components/ssr-monitor.mdx +3 -0
- package/docs/en/components/stream-ssr-performance.mdx +0 -0
- package/docs/en/components/swc.mdx +3 -0
- package/docs/en/components/tech-stack-node-framework.mdx +1 -0
- package/docs/en/components/turtorials-example-list.mdx +2 -0
- package/docs/en/components/ua-polyfill.mdx +44 -0
- package/docs/en/components/upgrade-browserslist.mdx +0 -0
- package/docs/en/components/upgrade-config-deploy.mdx +0 -0
- package/docs/en/components/upgrade-faq.mdx +0 -0
- package/docs/en/configure/_meta.json +78 -0
- package/docs/en/configure/app/bff/cross-project.mdx +24 -0
- package/docs/en/configure/app/bff/effect.mdx +152 -0
- package/docs/en/configure/app/bff/prefix.mdx +33 -0
- package/docs/en/configure/app/bff/runtime-framework.mdx +28 -0
- package/docs/en/configure/app/builder-plugins.mdx +70 -0
- package/docs/en/configure/app/dev/asset-prefix.mdx +18 -0
- package/docs/en/configure/app/dev/before-start-url.mdx +21 -0
- package/docs/en/configure/app/dev/client.mdx +45 -0
- package/docs/en/configure/app/dev/hmr.mdx +14 -0
- package/docs/en/configure/app/dev/host.mdx +22 -0
- package/docs/en/configure/app/dev/https.mdx +81 -0
- package/docs/en/configure/app/dev/lazy-compilation.mdx +45 -0
- package/docs/en/configure/app/dev/live-reload.mdx +14 -0
- package/docs/en/configure/app/dev/progress-bar.mdx +23 -0
- package/docs/en/configure/app/dev/server.mdx +128 -0
- package/docs/en/configure/app/dev/setup-middlewares.mdx +36 -0
- package/docs/en/configure/app/dev/start-url.mdx +53 -0
- package/docs/en/configure/app/dev/watch-files.mdx +31 -0
- package/docs/en/configure/app/dev/write-to-disk.mdx +14 -0
- package/docs/en/configure/app/experiments/source-build.mdx +33 -0
- package/docs/en/configure/app/html/app-icon.mdx +32 -0
- package/docs/en/configure/app/html/crossorigin.mdx +14 -0
- package/docs/en/configure/app/html/favicon.mdx +20 -0
- package/docs/en/configure/app/html/inject.mdx +14 -0
- package/docs/en/configure/app/html/meta.mdx +28 -0
- package/docs/en/configure/app/html/mount-id.mdx +14 -0
- package/docs/en/configure/app/html/output-structure.mdx +14 -0
- package/docs/en/configure/app/html/script-loading.mdx +14 -0
- package/docs/en/configure/app/html/tags.mdx +19 -0
- package/docs/en/configure/app/html/template-parameters.mdx +37 -0
- package/docs/en/configure/app/html/template.mdx +14 -0
- package/docs/en/configure/app/html/title.mdx +22 -0
- package/docs/en/configure/app/output/asset-prefix.mdx +18 -0
- package/docs/en/configure/app/output/assets-retry.mdx +81 -0
- package/docs/en/configure/app/output/charset.mdx +14 -0
- package/docs/en/configure/app/output/clean-dist-path.mdx +20 -0
- package/docs/en/configure/app/output/convert-to-rem.mdx +83 -0
- package/docs/en/configure/app/output/copy.mdx +14 -0
- package/docs/en/configure/app/output/css-modules.mdx +52 -0
- package/docs/en/configure/app/output/data-uri-limit.mdx +30 -0
- package/docs/en/configure/app/output/disable-css-module-extension.mdx +59 -0
- package/docs/en/configure/app/output/disable-inline-runtime-chunk.mdx +45 -0
- package/docs/en/configure/app/output/disable-svgr.mdx +20 -0
- package/docs/en/configure/app/output/disable-ts-checker.mdx +53 -0
- package/docs/en/configure/app/output/dist-path.mdx +51 -0
- package/docs/en/configure/app/output/enable-asset-manifest.mdx +40 -0
- package/docs/en/configure/app/output/enable-css-module-tsdeclaration.mdx +32 -0
- package/docs/en/configure/app/output/enable-inline-route-manifests.mdx +20 -0
- package/docs/en/configure/app/output/externals.mdx +24 -0
- package/docs/en/configure/app/output/filename-hash.mdx +14 -0
- package/docs/en/configure/app/output/filename.mdx +59 -0
- package/docs/en/configure/app/output/inject-styles.mdx +14 -0
- package/docs/en/configure/app/output/inline-scripts.mdx +33 -0
- package/docs/en/configure/app/output/inline-styles.mdx +33 -0
- package/docs/en/configure/app/output/legal-comments.mdx +22 -0
- package/docs/en/configure/app/output/minify.mdx +26 -0
- package/docs/en/configure/app/output/override-browserslist.mdx +26 -0
- package/docs/en/configure/app/output/polyfill.mdx +18 -0
- package/docs/en/configure/app/output/source-map.mdx +34 -0
- package/docs/en/configure/app/output/split-route-chunks.mdx +20 -0
- package/docs/en/configure/app/output/ssg.mdx +85 -0
- package/docs/en/configure/app/output/ssgByEntries.mdx +93 -0
- package/docs/en/configure/app/output/svg-default-export.mdx +34 -0
- package/docs/en/configure/app/output/temp-dir.mdx +24 -0
- package/docs/en/configure/app/performance/build-cache.mdx +43 -0
- package/docs/en/configure/app/performance/chunk-split.mdx +44 -0
- package/docs/en/configure/app/performance/dns-prefetch.mdx +19 -0
- package/docs/en/configure/app/performance/preconnect.mdx +20 -0
- package/docs/en/configure/app/performance/prefetch.mdx +25 -0
- package/docs/en/configure/app/performance/preload.mdx +27 -0
- package/docs/en/configure/app/performance/print-file-size.mdx +44 -0
- package/docs/en/configure/app/performance/profile.mdx +14 -0
- package/docs/en/configure/app/performance/remove-console.mdx +14 -0
- package/docs/en/configure/app/performance/remove-moment-locale.mdx +14 -0
- package/docs/en/configure/app/performance/rsdoctor.mdx +39 -0
- package/docs/en/configure/app/plugins.mdx +59 -0
- package/docs/en/configure/app/resolve/alias-strategy.mdx +14 -0
- package/docs/en/configure/app/resolve/alias.mdx +13 -0
- package/docs/en/configure/app/resolve/condition-names.mdx +18 -0
- package/docs/en/configure/app/resolve/dedupe.mdx +13 -0
- package/docs/en/configure/app/resolve/extensions.mdx +18 -0
- package/docs/en/configure/app/runtime/0-intro.mdx +61 -0
- package/docs/en/configure/app/runtime/plugins.mdx +58 -0
- package/docs/en/configure/app/runtime/router.mdx +39 -0
- package/docs/en/configure/app/security/check-syntax.mdx +73 -0
- package/docs/en/configure/app/security/nonce.mdx +19 -0
- package/docs/en/configure/app/security/sri.mdx +24 -0
- package/docs/en/configure/app/server/base-url.mdx +30 -0
- package/docs/en/configure/app/server/port.mdx +22 -0
- package/docs/en/configure/app/server/public-routes.mdx +26 -0
- package/docs/en/configure/app/server/routes.mdx +90 -0
- package/docs/en/configure/app/server/rsc.mdx +30 -0
- package/docs/en/configure/app/server/ssr-by-entries.mdx +29 -0
- package/docs/en/configure/app/server/ssr.mdx +85 -0
- package/docs/en/configure/app/server/tsconfig-path.mdx +63 -0
- package/docs/en/configure/app/source/alias-strategy.mdx +18 -0
- package/docs/en/configure/app/source/alias.mdx +27 -0
- package/docs/en/configure/app/source/config-dir.mdx +24 -0
- package/docs/en/configure/app/source/decorators.mdx +29 -0
- package/docs/en/configure/app/source/define.mdx +20 -0
- package/docs/en/configure/app/source/disable-default-entries.mdx +32 -0
- package/docs/en/configure/app/source/enable-async-entry.mdx +54 -0
- package/docs/en/configure/app/source/enable-async-pre-entry.mdx +30 -0
- package/docs/en/configure/app/source/entries-dir.mdx +39 -0
- package/docs/en/configure/app/source/entries.mdx +183 -0
- package/docs/en/configure/app/source/exclude.mdx +14 -0
- package/docs/en/configure/app/source/global-vars.mdx +110 -0
- package/docs/en/configure/app/source/include.mdx +40 -0
- package/docs/en/configure/app/source/main-entry-name.mdx +28 -0
- package/docs/en/configure/app/source/pre-entry.mdx +14 -0
- package/docs/en/configure/app/source/transform-import.mdx +31 -0
- package/docs/en/configure/app/split-chunks.mdx +17 -0
- package/docs/en/configure/app/tools/autoprefixer.mdx +48 -0
- package/docs/en/configure/app/tools/bundler-chain.mdx +30 -0
- package/docs/en/configure/app/tools/css-extract.mdx +37 -0
- package/docs/en/configure/app/tools/css-loader.mdx +21 -0
- package/docs/en/configure/app/tools/dev-server.mdx +117 -0
- package/docs/en/configure/app/tools/html-plugin.mdx +45 -0
- package/docs/en/configure/app/tools/less.mdx +85 -0
- package/docs/en/configure/app/tools/lightningcss-loader.mdx +39 -0
- package/docs/en/configure/app/tools/minify-css.mdx +57 -0
- package/docs/en/configure/app/tools/postcss.mdx +38 -0
- package/docs/en/configure/app/tools/rspack.mdx +14 -0
- package/docs/en/configure/app/tools/sass.mdx +82 -0
- package/docs/en/configure/app/tools/style-loader.mdx +14 -0
- package/docs/en/configure/app/tools/swc.mdx +69 -0
- package/docs/en/configure/app/tools/ts-checker.mdx +56 -0
- package/docs/en/configure/app/usage.mdx +276 -0
- package/docs/en/guides/_meta.json +37 -0
- package/docs/en/guides/advanced-features/_meta.json +32 -0
- package/docs/en/guides/advanced-features/bff/_meta.json +10 -0
- package/docs/en/guides/advanced-features/bff/cross-project.mdx +110 -0
- package/docs/en/guides/advanced-features/bff/data-platform.mdx +118 -0
- package/docs/en/guides/advanced-features/bff/extend-server.mdx +120 -0
- package/docs/en/guides/advanced-features/bff/frameworks.mdx +118 -0
- package/docs/en/guides/advanced-features/bff/function.mdx +261 -0
- package/docs/en/guides/advanced-features/bff/operators.mdx +629 -0
- package/docs/en/guides/advanced-features/bff/sdk.mdx +116 -0
- package/docs/en/guides/advanced-features/bff/upload.mdx +7 -0
- package/docs/en/guides/advanced-features/bff.mdx +22 -0
- package/docs/en/guides/advanced-features/build-performance.mdx +134 -0
- package/docs/en/guides/advanced-features/compatibility.mdx +81 -0
- package/docs/en/guides/advanced-features/international/_meta.json +10 -0
- package/docs/en/guides/advanced-features/international/advanced.mdx +132 -0
- package/docs/en/guides/advanced-features/international/api.mdx +235 -0
- package/docs/en/guides/advanced-features/international/best-practices.mdx +290 -0
- package/docs/en/guides/advanced-features/international/configuration.mdx +221 -0
- package/docs/en/guides/advanced-features/international/locale-detection.mdx +130 -0
- package/docs/en/guides/advanced-features/international/quick-start.mdx +112 -0
- package/docs/en/guides/advanced-features/international/resource-loading.mdx +158 -0
- package/docs/en/guides/advanced-features/international/routing.mdx +134 -0
- package/docs/en/guides/advanced-features/international.mdx +29 -0
- package/docs/en/guides/advanced-features/low-level.mdx +50 -0
- package/docs/en/guides/advanced-features/page-performance/_meta.json +1 -0
- package/docs/en/guides/advanced-features/page-performance/code-split.mdx +81 -0
- package/docs/en/guides/advanced-features/page-performance/inline-assets.mdx +163 -0
- package/docs/en/guides/advanced-features/page-performance/optimize-bundle.mdx +101 -0
- package/docs/en/guides/advanced-features/page-performance/react-compiler.mdx +54 -0
- package/docs/en/guides/advanced-features/server-monitor/_meta.json +1 -0
- package/docs/en/guides/advanced-features/server-monitor/logger.mdx +19 -0
- package/docs/en/guides/advanced-features/server-monitor/metrics.mdx +41 -0
- package/docs/en/guides/advanced-features/server-monitor/monitors.mdx +242 -0
- package/docs/en/guides/advanced-features/source-build.mdx +168 -0
- package/docs/en/guides/advanced-features/web-server.mdx +284 -0
- package/docs/en/guides/basic-features/_meta.json +49 -0
- package/docs/en/guides/basic-features/alias.mdx +106 -0
- package/docs/en/guides/basic-features/css/_meta.json +1 -0
- package/docs/en/guides/basic-features/css/css-in-js.mdx +69 -0
- package/docs/en/guides/basic-features/css/css-modules.mdx +212 -0
- package/docs/en/guides/basic-features/css/css.mdx +31 -0
- package/docs/en/guides/basic-features/css/tailwindcss.mdx +27 -0
- package/docs/en/guides/basic-features/data/_meta.json +1 -0
- package/docs/en/guides/basic-features/data/data-cache.mdx +515 -0
- package/docs/en/guides/basic-features/data/data-fetch.mdx +419 -0
- package/docs/en/guides/basic-features/data/data-write.mdx +230 -0
- package/docs/en/guides/basic-features/debug/_meta.json +1 -0
- package/docs/en/guides/basic-features/debug/mock.mdx +102 -0
- package/docs/en/guides/basic-features/debug/proxy.mdx +25 -0
- package/docs/en/guides/basic-features/debug/rsdoctor.mdx +48 -0
- package/docs/en/guides/basic-features/debug/using-storybook.mdx +100 -0
- package/docs/en/guides/basic-features/deploy.mdx +448 -0
- package/docs/en/guides/basic-features/env-vars.mdx +181 -0
- package/docs/en/guides/basic-features/html.mdx +259 -0
- package/docs/en/guides/basic-features/output-files.mdx +145 -0
- package/docs/en/guides/basic-features/render/_meta.json +10 -0
- package/docs/en/guides/basic-features/render/before-render.mdx +108 -0
- package/docs/en/guides/basic-features/render/overview.mdx +52 -0
- package/docs/en/guides/basic-features/render/rsc.mdx +534 -0
- package/docs/en/guides/basic-features/render/ssg.mdx +167 -0
- package/docs/en/guides/basic-features/render/ssr-cache.mdx +201 -0
- package/docs/en/guides/basic-features/render/ssr.mdx +323 -0
- package/docs/en/guides/basic-features/render/streaming-ssr.mdx +267 -0
- package/docs/en/guides/basic-features/render/tanstack-rsc.mdx +226 -0
- package/docs/en/guides/basic-features/routes/_meta.json +1 -0
- package/docs/en/guides/basic-features/routes/config-routes.mdx +427 -0
- package/docs/en/guides/basic-features/routes/routes.mdx +517 -0
- package/docs/en/guides/basic-features/static-assets/_meta.json +1 -0
- package/docs/en/guides/basic-features/static-assets/json-files.mdx +124 -0
- package/docs/en/guides/basic-features/static-assets/svg-assets.mdx +172 -0
- package/docs/en/guides/basic-features/static-assets/wasm-assets.mdx +66 -0
- package/docs/en/guides/basic-features/static-assets.mdx +164 -0
- package/docs/en/guides/basic-features/testing/_meta.json +1 -0
- package/docs/en/guides/basic-features/testing/cypress.mdx +95 -0
- package/docs/en/guides/basic-features/testing/jest.mdx +148 -0
- package/docs/en/guides/basic-features/testing/playwright.mdx +111 -0
- package/docs/en/guides/basic-features/testing/rstest.mdx +163 -0
- package/docs/en/guides/basic-features/testing/vitest.mdx +100 -0
- package/docs/en/guides/concept/_meta.json +1 -0
- package/docs/en/guides/concept/builder.mdx +60 -0
- package/docs/en/guides/concept/entries.mdx +325 -0
- package/docs/en/guides/concept/server.mdx +35 -0
- package/docs/en/guides/get-started/_meta.json +8 -0
- package/docs/en/guides/get-started/glossary.mdx +63 -0
- package/docs/en/guides/get-started/introduction.mdx +45 -0
- package/docs/en/guides/get-started/quick-start.mdx +92 -0
- package/docs/en/guides/get-started/tech-stack.mdx +91 -0
- package/docs/en/guides/get-started/ultramodern.mdx +98 -0
- package/docs/en/guides/get-started/upgrade.mdx +114 -0
- package/docs/en/guides/topic-detail/_meta.json +8 -0
- package/docs/en/guides/topic-detail/module-federation/_meta.json +1 -0
- package/docs/en/guides/topic-detail/module-federation/application.mdx +116 -0
- package/docs/en/guides/topic-detail/module-federation/deploy.mdx +104 -0
- package/docs/en/guides/topic-detail/module-federation/i18n.mdx +670 -0
- package/docs/en/guides/topic-detail/module-federation/introduce.mdx +36 -0
- package/docs/en/guides/topic-detail/module-federation/ssr.mdx +170 -0
- package/docs/en/guides/topic-detail/module-federation/usage.mdx +202 -0
- package/docs/en/guides/troubleshooting/_meta.json +1 -0
- package/docs/en/guides/troubleshooting/builder.mdx +114 -0
- package/docs/en/guides/troubleshooting/cli.mdx +39 -0
- package/docs/en/guides/troubleshooting/dependencies.mdx +123 -0
- package/docs/en/guides/troubleshooting/hmr.mdx +148 -0
- package/docs/en/guides/upgrade/_meta.json +1 -0
- package/docs/en/guides/upgrade/config.mdx +949 -0
- package/docs/en/guides/upgrade/entry.mdx +463 -0
- package/docs/en/guides/upgrade/other.mdx +183 -0
- package/docs/en/guides/upgrade/overview.mdx +33 -0
- package/docs/en/guides/upgrade/tailwindcss.mdx +92 -0
- package/docs/en/guides/upgrade/web-server.md +109 -0
- package/docs/en/index.md +4 -0
- package/docs/en/plugin/_meta.json +25 -0
- package/docs/en/plugin/cli-plugins/_meta.json +1 -0
- package/docs/en/plugin/cli-plugins/api.mdx +573 -0
- package/docs/en/plugin/cli-plugins/life-cycle.mdx +135 -0
- package/docs/en/plugin/introduction.mdx +153 -0
- package/docs/en/plugin/official/_meta.json +7 -0
- package/docs/en/plugin/official/cli-plugins/_meta.json +1 -0
- package/docs/en/plugin/official/cli-plugins/plugin-bff.mdx +5 -0
- package/docs/en/plugin/official/cli-plugins/plugin-ssg.mdx +5 -0
- package/docs/en/plugin/official/cli-plugins/plugin-styled-components.mdx +5 -0
- package/docs/en/plugin/official/cli-plugins.mdx +4 -0
- package/docs/en/plugin/plugin-system.mdx +244 -0
- package/docs/en/plugin/runtime-plugins/_meta.json +1 -0
- package/docs/en/plugin/runtime-plugins/api.mdx +193 -0
- package/docs/en/plugin/runtime-plugins/life-cycle.mdx +29 -0
- package/docs/en/plugin/server-plugins/_meta.json +1 -0
- package/docs/en/plugin/server-plugins/api.mdx +212 -0
- package/docs/en/plugin/server-plugins/life-cycle.mdx +43 -0
- package/docs/en/tutorials/_meta.json +7 -0
- package/docs/en/tutorials/examples/csr-auth.mdx +31 -0
- package/docs/en/tutorials/foundations/introduction.mdx +22 -0
- package/docs/zh/_nav.json +36 -0
- package/docs/zh/apis/_meta.json +13 -0
- package/docs/zh/apis/app/commands.mdx +215 -0
- package/docs/zh/apis/app/hooks/_meta.json +28 -0
- package/docs/zh/apis/app/hooks/api/lambda.mdx +14 -0
- package/docs/zh/apis/app/hooks/config/_meta.json +1 -0
- package/docs/zh/apis/app/hooks/config/favicon.mdx +29 -0
- package/docs/zh/apis/app/hooks/config/html.mdx +9 -0
- package/docs/zh/apis/app/hooks/config/icon.mdx +29 -0
- package/docs/zh/apis/app/hooks/config/mock.mdx +7 -0
- package/docs/zh/apis/app/hooks/config/public.mdx +30 -0
- package/docs/zh/apis/app/hooks/config/upload.mdx +54 -0
- package/docs/zh/apis/app/hooks/modern-config.mdx +9 -0
- package/docs/zh/apis/app/hooks/server/server.mdx +10 -0
- package/docs/zh/apis/app/hooks/shared.mdx +7 -0
- package/docs/zh/apis/app/hooks/src/app.mdx +36 -0
- package/docs/zh/apis/app/hooks/src/entry.mdx +39 -0
- package/docs/zh/apis/app/hooks/src/entry.server.mdx +56 -0
- package/docs/zh/apis/app/hooks/src/modern.runtime.mdx +9 -0
- package/docs/zh/apis/app/hooks/src/routes.mdx +90 -0
- package/docs/zh/apis/app/hooks/src/server.mdx +7 -0
- package/docs/zh/apis/app/runtime/_meta.json +32 -0
- package/docs/zh/apis/app/runtime/bff/use-backend-context.mdx +31 -0
- package/docs/zh/apis/app/runtime/core/create-root.mdx +22 -0
- package/docs/zh/apis/app/runtime/core/render.mdx +43 -0
- package/docs/zh/apis/app/runtime/core/runtime-context.mdx +160 -0
- package/docs/zh/apis/app/runtime/router/router.mdx +287 -0
- package/docs/zh/apis/app/runtime/ssr/no-ssr.mdx +38 -0
- package/docs/zh/apis/app/runtime/ssr/renderStreaming.mdx +71 -0
- package/docs/zh/apis/app/runtime/ssr/renderString.mdx +64 -0
- package/docs/zh/apis/app/runtime/ssr/requestHandler.mdx +48 -0
- package/docs/zh/apis/app/runtime/utility/css-in-js.mdx +44 -0
- package/docs/zh/apis/app/runtime/utility/head.mdx +38 -0
- package/docs/zh/apis/app/runtime/utility/loadable.mdx +83 -0
- package/docs/zh/community/_meta.json +11 -0
- package/docs/zh/community/blog/2022-0708-updates.md +95 -0
- package/docs/zh/community/blog/2022-0910-updates.md +80 -0
- package/docs/zh/community/blog/_meta.json +7 -0
- package/docs/zh/community/blog/overview.md +74 -0
- package/docs/zh/community/blog/v2-release-note.mdx +244 -0
- package/docs/zh/community/blog/v3-release-note.mdx +628 -0
- package/docs/zh/community/contributing-guide.mdx +256 -0
- package/docs/zh/community/releases.mdx +31 -0
- package/docs/zh/community/showcase.mdx +15 -0
- package/docs/zh/community/team.mdx +29 -0
- package/docs/zh/components/auto-upgrade.mdx +0 -0
- package/docs/zh/components/bff-operator-code.mdx +5 -0
- package/docs/zh/components/bff-upload.mdx +98 -0
- package/docs/zh/components/build-output.mdx +45 -0
- package/docs/zh/components/bundler.mdx +3 -0
- package/docs/zh/components/convention-routing-motivation.mdx +0 -0
- package/docs/zh/components/debug-app.mdx +16 -0
- package/docs/zh/components/default-browserslist.mdx +7 -0
- package/docs/zh/components/deploy-command.mdx +14 -0
- package/docs/zh/components/deploy.mdx +1 -0
- package/docs/zh/components/enable-bff-caution.mdx +4 -0
- package/docs/zh/components/enable-bff.mdx +56 -0
- package/docs/zh/components/enable-ssg.mdx +49 -0
- package/docs/zh/components/entry-mode.mdx +0 -0
- package/docs/zh/components/entry-scan-logic.mdx +7 -0
- package/docs/zh/components/extend-bff-function.mdx +3 -0
- package/docs/zh/components/hono.mdx +120 -0
- package/docs/zh/components/init-app.mdx +111 -0
- package/docs/zh/components/init-rspack-app.mdx +5 -0
- package/docs/zh/components/internal-logger.mdx +25 -0
- package/docs/zh/components/internal-metrics.mdx +20 -0
- package/docs/zh/components/international/custom-instance-code.mdx +16 -0
- package/docs/zh/components/international/init-options-desc.mdx +1 -0
- package/docs/zh/components/international/install-command.mdx +11 -0
- package/docs/zh/components/international/instance-code.mdx +16 -0
- package/docs/zh/components/international/introduce.mdx +5 -0
- package/docs/zh/components/international/platform-support.mdx +0 -0
- package/docs/zh/components/language-config.mdx +9 -0
- package/docs/zh/components/micro-frontend.mdx +6 -0
- package/docs/zh/components/micro-master-manifest-config.mdx +15 -0
- package/docs/zh/components/micro-runtime-config.mdx +17 -0
- package/docs/zh/components/module-federation.mdx +7 -0
- package/docs/zh/components/new-entry-tooltip.mdx +0 -0
- package/docs/zh/components/nodeVersion.mdx +28 -0
- package/docs/zh/components/other-plugins.mdx +0 -0
- package/docs/zh/components/output-asset-prefix-extend.mdx +0 -0
- package/docs/zh/components/output-distpath-warning.mdx +0 -0
- package/docs/zh/components/output-polyfill-extend.mdx +1 -0
- package/docs/zh/components/prerequisites.mdx +18 -0
- package/docs/zh/components/release-note.mdx +1 -0
- package/docs/zh/components/routes-practice.mdx +0 -0
- package/docs/zh/components/rsbuild-config-tooltip.mdx +5 -0
- package/docs/zh/components/rsbuild.mdx +3 -0
- package/docs/zh/components/rsc-deploy-tip.mdx +1 -0
- package/docs/zh/components/rspack.mdx +3 -0
- package/docs/zh/components/rspackTip.mdx +7 -0
- package/docs/zh/components/runtime-cli-config.mdx +0 -0
- package/docs/zh/components/self-route-example.mdx +21 -0
- package/docs/zh/components/serve-command.mdx +22 -0
- package/docs/zh/components/ssr-monitor.mdx +3 -0
- package/docs/zh/components/stream-ssr-performance.mdx +0 -0
- package/docs/zh/components/swc.mdx +3 -0
- package/docs/zh/components/tech-stack-node-framework.mdx +1 -0
- package/docs/zh/components/turtorials-example-list.mdx +2 -0
- package/docs/zh/components/ua-polyfill.mdx +44 -0
- package/docs/zh/components/upgrade-browserslist.mdx +0 -0
- package/docs/zh/components/upgrade-config-deploy.mdx +0 -0
- package/docs/zh/components/upgrade-faq.mdx +0 -0
- package/docs/zh/configure/_meta.json +78 -0
- package/docs/zh/configure/app/bff/cross-project.mdx +24 -0
- package/docs/zh/configure/app/bff/effect.mdx +152 -0
- package/docs/zh/configure/app/bff/prefix.mdx +33 -0
- package/docs/zh/configure/app/bff/runtime-framework.mdx +28 -0
- package/docs/zh/configure/app/builder-plugins.mdx +72 -0
- package/docs/zh/configure/app/dev/asset-prefix.mdx +18 -0
- package/docs/zh/configure/app/dev/before-start-url.mdx +21 -0
- package/docs/zh/configure/app/dev/client.mdx +45 -0
- package/docs/zh/configure/app/dev/hmr.mdx +14 -0
- package/docs/zh/configure/app/dev/host.mdx +22 -0
- package/docs/zh/configure/app/dev/https.mdx +82 -0
- package/docs/zh/configure/app/dev/lazy-compilation.mdx +44 -0
- package/docs/zh/configure/app/dev/live-reload.mdx +14 -0
- package/docs/zh/configure/app/dev/progress-bar.mdx +23 -0
- package/docs/zh/configure/app/dev/server.mdx +128 -0
- package/docs/zh/configure/app/dev/setup-middlewares.mdx +36 -0
- package/docs/zh/configure/app/dev/start-url.mdx +54 -0
- package/docs/zh/configure/app/dev/watch-files.mdx +31 -0
- package/docs/zh/configure/app/dev/write-to-disk.mdx +14 -0
- package/docs/zh/configure/app/experiments/source-build.mdx +35 -0
- package/docs/zh/configure/app/html/app-icon.mdx +32 -0
- package/docs/zh/configure/app/html/crossorigin.mdx +15 -0
- package/docs/zh/configure/app/html/favicon.mdx +21 -0
- package/docs/zh/configure/app/html/inject.mdx +14 -0
- package/docs/zh/configure/app/html/meta.mdx +28 -0
- package/docs/zh/configure/app/html/mount-id.mdx +14 -0
- package/docs/zh/configure/app/html/output-structure.mdx +14 -0
- package/docs/zh/configure/app/html/script-loading.mdx +14 -0
- package/docs/zh/configure/app/html/tags.mdx +19 -0
- package/docs/zh/configure/app/html/template-parameters.mdx +37 -0
- package/docs/zh/configure/app/html/template.mdx +14 -0
- package/docs/zh/configure/app/html/title.mdx +22 -0
- package/docs/zh/configure/app/output/asset-prefix.mdx +18 -0
- package/docs/zh/configure/app/output/assets-retry.mdx +81 -0
- package/docs/zh/configure/app/output/charset.mdx +14 -0
- package/docs/zh/configure/app/output/clean-dist-path.mdx +20 -0
- package/docs/zh/configure/app/output/convert-to-rem.mdx +84 -0
- package/docs/zh/configure/app/output/copy.mdx +14 -0
- package/docs/zh/configure/app/output/css-modules.mdx +52 -0
- package/docs/zh/configure/app/output/data-uri-limit.mdx +30 -0
- package/docs/zh/configure/app/output/disable-css-module-extension.mdx +59 -0
- package/docs/zh/configure/app/output/disable-inline-runtime-chunk.mdx +45 -0
- package/docs/zh/configure/app/output/disable-svgr.mdx +21 -0
- package/docs/zh/configure/app/output/disable-ts-checker.mdx +53 -0
- package/docs/zh/configure/app/output/dist-path.mdx +50 -0
- package/docs/zh/configure/app/output/enable-asset-manifest.mdx +40 -0
- package/docs/zh/configure/app/output/enable-css-module-tsdeclaration.mdx +32 -0
- package/docs/zh/configure/app/output/enable-inline-route-manifests.mdx +21 -0
- package/docs/zh/configure/app/output/externals.mdx +24 -0
- package/docs/zh/configure/app/output/filename-hash.mdx +14 -0
- package/docs/zh/configure/app/output/filename.mdx +62 -0
- package/docs/zh/configure/app/output/inject-styles.mdx +14 -0
- package/docs/zh/configure/app/output/inline-scripts.mdx +33 -0
- package/docs/zh/configure/app/output/inline-styles.mdx +33 -0
- package/docs/zh/configure/app/output/legal-comments.mdx +22 -0
- package/docs/zh/configure/app/output/minify.mdx +26 -0
- package/docs/zh/configure/app/output/override-browserslist.mdx +26 -0
- package/docs/zh/configure/app/output/polyfill.mdx +18 -0
- package/docs/zh/configure/app/output/source-map.mdx +38 -0
- package/docs/zh/configure/app/output/split-route-chunks.mdx +20 -0
- package/docs/zh/configure/app/output/ssg.mdx +84 -0
- package/docs/zh/configure/app/output/ssgByEntries.mdx +94 -0
- package/docs/zh/configure/app/output/svg-default-export.mdx +34 -0
- package/docs/zh/configure/app/output/temp-dir.mdx +22 -0
- package/docs/zh/configure/app/performance/build-cache.mdx +43 -0
- package/docs/zh/configure/app/performance/chunk-split.mdx +44 -0
- package/docs/zh/configure/app/performance/dns-prefetch.mdx +19 -0
- package/docs/zh/configure/app/performance/preconnect.mdx +20 -0
- package/docs/zh/configure/app/performance/prefetch.mdx +25 -0
- package/docs/zh/configure/app/performance/preload.mdx +27 -0
- package/docs/zh/configure/app/performance/print-file-size.mdx +44 -0
- package/docs/zh/configure/app/performance/profile.mdx +14 -0
- package/docs/zh/configure/app/performance/remove-console.mdx +14 -0
- package/docs/zh/configure/app/performance/remove-moment-locale.mdx +14 -0
- package/docs/zh/configure/app/performance/rsdoctor.mdx +39 -0
- package/docs/zh/configure/app/plugins.mdx +59 -0
- package/docs/zh/configure/app/resolve/alias-strategy.mdx +14 -0
- package/docs/zh/configure/app/resolve/alias.mdx +13 -0
- package/docs/zh/configure/app/resolve/condition-names.mdx +18 -0
- package/docs/zh/configure/app/resolve/dedupe.mdx +14 -0
- package/docs/zh/configure/app/resolve/extensions.mdx +18 -0
- package/docs/zh/configure/app/runtime/0-intro.mdx +58 -0
- package/docs/zh/configure/app/runtime/plugins.mdx +58 -0
- package/docs/zh/configure/app/runtime/router.mdx +39 -0
- package/docs/zh/configure/app/security/check-syntax.mdx +73 -0
- package/docs/zh/configure/app/security/nonce.mdx +19 -0
- package/docs/zh/configure/app/security/sri.mdx +24 -0
- package/docs/zh/configure/app/server/base-url.mdx +30 -0
- package/docs/zh/configure/app/server/port.mdx +23 -0
- package/docs/zh/configure/app/server/public-routes.mdx +26 -0
- package/docs/zh/configure/app/server/routes.mdx +90 -0
- package/docs/zh/configure/app/server/rsc.mdx +30 -0
- package/docs/zh/configure/app/server/ssr-by-entries.mdx +29 -0
- package/docs/zh/configure/app/server/ssr.mdx +85 -0
- package/docs/zh/configure/app/server/tsconfig-path.mdx +63 -0
- package/docs/zh/configure/app/source/alias-strategy.mdx +18 -0
- package/docs/zh/configure/app/source/alias.mdx +27 -0
- package/docs/zh/configure/app/source/config-dir.mdx +24 -0
- package/docs/zh/configure/app/source/decorators.mdx +27 -0
- package/docs/zh/configure/app/source/define.mdx +20 -0
- package/docs/zh/configure/app/source/disable-default-entries.mdx +32 -0
- package/docs/zh/configure/app/source/enable-async-entry.mdx +54 -0
- package/docs/zh/configure/app/source/enable-async-pre-entry.mdx +77 -0
- package/docs/zh/configure/app/source/entries-dir.mdx +39 -0
- package/docs/zh/configure/app/source/entries.mdx +185 -0
- package/docs/zh/configure/app/source/exclude.mdx +14 -0
- package/docs/zh/configure/app/source/global-vars.mdx +109 -0
- package/docs/zh/configure/app/source/include.mdx +40 -0
- package/docs/zh/configure/app/source/main-entry-name.mdx +28 -0
- package/docs/zh/configure/app/source/pre-entry.mdx +14 -0
- package/docs/zh/configure/app/source/transform-import.mdx +31 -0
- package/docs/zh/configure/app/split-chunks.mdx +17 -0
- package/docs/zh/configure/app/tools/autoprefixer.mdx +48 -0
- package/docs/zh/configure/app/tools/bundler-chain.mdx +33 -0
- package/docs/zh/configure/app/tools/css-extract.mdx +34 -0
- package/docs/zh/configure/app/tools/css-loader.mdx +21 -0
- package/docs/zh/configure/app/tools/dev-server.mdx +117 -0
- package/docs/zh/configure/app/tools/html-plugin.mdx +45 -0
- package/docs/zh/configure/app/tools/less.mdx +86 -0
- package/docs/zh/configure/app/tools/lightningcss-loader.mdx +39 -0
- package/docs/zh/configure/app/tools/minify-css.mdx +57 -0
- package/docs/zh/configure/app/tools/postcss.mdx +39 -0
- package/docs/zh/configure/app/tools/rspack.mdx +14 -0
- package/docs/zh/configure/app/tools/sass.mdx +80 -0
- package/docs/zh/configure/app/tools/style-loader.mdx +14 -0
- package/docs/zh/configure/app/tools/swc.mdx +69 -0
- package/docs/zh/configure/app/tools/ts-checker.mdx +56 -0
- package/docs/zh/configure/app/usage.mdx +276 -0
- package/docs/zh/guides/_meta.json +37 -0
- package/docs/zh/guides/advanced-features/_meta.json +32 -0
- package/docs/zh/guides/advanced-features/bff/_meta.json +10 -0
- package/docs/zh/guides/advanced-features/bff/cross-project.mdx +112 -0
- package/docs/zh/guides/advanced-features/bff/data-platform.mdx +118 -0
- package/docs/zh/guides/advanced-features/bff/extend-server.mdx +125 -0
- package/docs/zh/guides/advanced-features/bff/frameworks.mdx +118 -0
- package/docs/zh/guides/advanced-features/bff/function.mdx +262 -0
- package/docs/zh/guides/advanced-features/bff/operators.mdx +629 -0
- package/docs/zh/guides/advanced-features/bff/sdk.mdx +117 -0
- package/docs/zh/guides/advanced-features/bff/upload.mdx +7 -0
- package/docs/zh/guides/advanced-features/bff.mdx +21 -0
- package/docs/zh/guides/advanced-features/build-performance.mdx +134 -0
- package/docs/zh/guides/advanced-features/compatibility.mdx +80 -0
- package/docs/zh/guides/advanced-features/international/_meta.json +10 -0
- package/docs/zh/guides/advanced-features/international/advanced.mdx +132 -0
- package/docs/zh/guides/advanced-features/international/api.mdx +234 -0
- package/docs/zh/guides/advanced-features/international/best-practices.mdx +290 -0
- package/docs/zh/guides/advanced-features/international/configuration.mdx +219 -0
- package/docs/zh/guides/advanced-features/international/locale-detection.mdx +130 -0
- package/docs/zh/guides/advanced-features/international/quick-start.mdx +112 -0
- package/docs/zh/guides/advanced-features/international/resource-loading.mdx +155 -0
- package/docs/zh/guides/advanced-features/international/routing.mdx +134 -0
- package/docs/zh/guides/advanced-features/international.mdx +29 -0
- package/docs/zh/guides/advanced-features/low-level.mdx +48 -0
- package/docs/zh/guides/advanced-features/page-performance/_meta.json +1 -0
- package/docs/zh/guides/advanced-features/page-performance/code-split.mdx +81 -0
- package/docs/zh/guides/advanced-features/page-performance/inline-assets.mdx +162 -0
- package/docs/zh/guides/advanced-features/page-performance/optimize-bundle.mdx +101 -0
- package/docs/zh/guides/advanced-features/page-performance/react-compiler.mdx +54 -0
- package/docs/zh/guides/advanced-features/server-monitor/_meta.json +1 -0
- package/docs/zh/guides/advanced-features/server-monitor/logger.mdx +21 -0
- package/docs/zh/guides/advanced-features/server-monitor/metrics.mdx +42 -0
- package/docs/zh/guides/advanced-features/server-monitor/monitors.mdx +240 -0
- package/docs/zh/guides/advanced-features/source-build.mdx +168 -0
- package/docs/zh/guides/advanced-features/web-server.mdx +281 -0
- package/docs/zh/guides/basic-features/_meta.json +49 -0
- package/docs/zh/guides/basic-features/alias.mdx +100 -0
- package/docs/zh/guides/basic-features/css/_meta.json +1 -0
- package/docs/zh/guides/basic-features/css/css-in-js.mdx +69 -0
- package/docs/zh/guides/basic-features/css/css-modules.mdx +218 -0
- package/docs/zh/guides/basic-features/css/css.mdx +31 -0
- package/docs/zh/guides/basic-features/css/tailwindcss.mdx +27 -0
- package/docs/zh/guides/basic-features/data/_meta.json +1 -0
- package/docs/zh/guides/basic-features/data/data-cache.mdx +498 -0
- package/docs/zh/guides/basic-features/data/data-fetch.mdx +421 -0
- package/docs/zh/guides/basic-features/data/data-write.mdx +234 -0
- package/docs/zh/guides/basic-features/debug/_meta.json +1 -0
- package/docs/zh/guides/basic-features/debug/mock.mdx +102 -0
- package/docs/zh/guides/basic-features/debug/proxy.mdx +25 -0
- package/docs/zh/guides/basic-features/debug/rsdoctor.mdx +48 -0
- package/docs/zh/guides/basic-features/debug/using-storybook.mdx +92 -0
- package/docs/zh/guides/basic-features/deploy.mdx +432 -0
- package/docs/zh/guides/basic-features/env-vars.mdx +180 -0
- package/docs/zh/guides/basic-features/html.mdx +262 -0
- package/docs/zh/guides/basic-features/output-files.mdx +145 -0
- package/docs/zh/guides/basic-features/render/_meta.json +10 -0
- package/docs/zh/guides/basic-features/render/before-render.mdx +108 -0
- package/docs/zh/guides/basic-features/render/overview.mdx +53 -0
- package/docs/zh/guides/basic-features/render/rsc.mdx +619 -0
- package/docs/zh/guides/basic-features/render/ssg.mdx +168 -0
- package/docs/zh/guides/basic-features/render/ssr-cache.mdx +205 -0
- package/docs/zh/guides/basic-features/render/ssr.mdx +334 -0
- package/docs/zh/guides/basic-features/render/streaming-ssr.mdx +276 -0
- package/docs/zh/guides/basic-features/render/tanstack-rsc.mdx +226 -0
- package/docs/zh/guides/basic-features/routes/_meta.json +1 -0
- package/docs/zh/guides/basic-features/routes/config-routes.mdx +426 -0
- package/docs/zh/guides/basic-features/routes/routes.mdx +521 -0
- package/docs/zh/guides/basic-features/static-assets/_meta.json +1 -0
- package/docs/zh/guides/basic-features/static-assets/json-files.mdx +124 -0
- package/docs/zh/guides/basic-features/static-assets/svg-assets.mdx +174 -0
- package/docs/zh/guides/basic-features/static-assets/wasm-assets.mdx +66 -0
- package/docs/zh/guides/basic-features/static-assets.mdx +160 -0
- package/docs/zh/guides/basic-features/testing/_meta.json +1 -0
- package/docs/zh/guides/basic-features/testing/cypress.mdx +95 -0
- package/docs/zh/guides/basic-features/testing/jest.mdx +148 -0
- package/docs/zh/guides/basic-features/testing/playwright.mdx +112 -0
- package/docs/zh/guides/basic-features/testing/rstest.mdx +163 -0
- package/docs/zh/guides/basic-features/testing/vitest.mdx +100 -0
- package/docs/zh/guides/concept/_meta.json +1 -0
- package/docs/zh/guides/concept/builder.mdx +60 -0
- package/docs/zh/guides/concept/entries.mdx +323 -0
- package/docs/zh/guides/concept/server.mdx +35 -0
- package/docs/zh/guides/get-started/_meta.json +8 -0
- package/docs/zh/guides/get-started/glossary.mdx +63 -0
- package/docs/zh/guides/get-started/introduction.mdx +45 -0
- package/docs/zh/guides/get-started/quick-start.mdx +90 -0
- package/docs/zh/guides/get-started/tech-stack.mdx +91 -0
- package/docs/zh/guides/get-started/ultramodern.mdx +80 -0
- package/docs/zh/guides/get-started/upgrade.mdx +114 -0
- package/docs/zh/guides/topic-detail/_meta.json +8 -0
- package/docs/zh/guides/topic-detail/module-federation/_meta.json +1 -0
- package/docs/zh/guides/topic-detail/module-federation/application.mdx +117 -0
- package/docs/zh/guides/topic-detail/module-federation/deploy.mdx +104 -0
- package/docs/zh/guides/topic-detail/module-federation/i18n.mdx +623 -0
- package/docs/zh/guides/topic-detail/module-federation/introduce.mdx +35 -0
- package/docs/zh/guides/topic-detail/module-federation/ssr.mdx +168 -0
- package/docs/zh/guides/topic-detail/module-federation/usage.mdx +200 -0
- package/docs/zh/guides/troubleshooting/_meta.json +1 -0
- package/docs/zh/guides/troubleshooting/builder.mdx +134 -0
- package/docs/zh/guides/troubleshooting/cli.mdx +39 -0
- package/docs/zh/guides/troubleshooting/dependencies.mdx +123 -0
- package/docs/zh/guides/troubleshooting/hmr.mdx +148 -0
- package/docs/zh/guides/upgrade/_meta.json +1 -0
- package/docs/zh/guides/upgrade/config.mdx +953 -0
- package/docs/zh/guides/upgrade/entry.mdx +463 -0
- package/docs/zh/guides/upgrade/other.md +190 -0
- package/docs/zh/guides/upgrade/overview.mdx +36 -0
- package/docs/zh/guides/upgrade/tailwindcss.mdx +92 -0
- package/docs/zh/guides/upgrade/web-server.md +111 -0
- package/docs/zh/index.md +4 -0
- package/docs/zh/plugin/_meta.json +25 -0
- package/docs/zh/plugin/cli-plugins/_meta.json +1 -0
- package/docs/zh/plugin/cli-plugins/api.mdx +569 -0
- package/docs/zh/plugin/cli-plugins/life-cycle.mdx +135 -0
- package/docs/zh/plugin/introduction.mdx +153 -0
- package/docs/zh/plugin/official/_meta.json +7 -0
- package/docs/zh/plugin/official/cli-plugins/_meta.json +1 -0
- package/docs/zh/plugin/official/cli-plugins/plugin-bff.mdx +5 -0
- package/docs/zh/plugin/official/cli-plugins/plugin-ssg.mdx +5 -0
- package/docs/zh/plugin/official/cli-plugins/plugin-styled-components.mdx +5 -0
- package/docs/zh/plugin/official/cli-plugins.mdx +4 -0
- package/docs/zh/plugin/plugin-system.mdx +231 -0
- package/docs/zh/plugin/runtime-plugins/_meta.json +1 -0
- package/docs/zh/plugin/runtime-plugins/api.mdx +193 -0
- package/docs/zh/plugin/runtime-plugins/life-cycle.mdx +29 -0
- package/docs/zh/plugin/server-plugins/_meta.json +1 -0
- package/docs/zh/plugin/server-plugins/api.mdx +212 -0
- package/docs/zh/plugin/server-plugins/life-cycle.mdx +43 -0
- package/docs/zh/tutorials/_meta.json +7 -0
- package/docs/zh/tutorials/examples/csr-auth.mdx +31 -0
- package/docs/zh/tutorials/foundations/introduction.mdx +22 -0
- package/i18n.json +142 -0
- package/main-doc/docs/en/guides/get-started/ultramodern.mdx +320 -0
- package/main-doc/docs/zh/guides/get-started/ultramodern.mdx +304 -0
- package/package.json +52 -0
- package/rspress.config.ts +153 -0
- package/src/components/ContentCard/index.module.scss +65 -0
- package/src/components/ContentCard/index.tsx +24 -0
- package/src/components/FeatureLayout/index.module.css +8 -0
- package/src/components/FeatureLayout/index.tsx +8 -0
- package/src/components/Footer/index.tsx +118 -0
- package/src/components/Footer/styles.module.scss +49 -0
- package/src/components/FrameworkCode/index.tsx +605 -0
- package/src/components/ListCard/index.module.css +57 -0
- package/src/components/ListCard/index.tsx +26 -0
- package/src/components/Mermaid/index.tsx +64 -0
- package/src/components/Mermaid/style.scss +221 -0
- package/src/components/RandomMemberList/index.module.scss +35 -0
- package/src/components/RandomMemberList/index.tsx +122 -0
- package/src/components/RsbuildLink/index.tsx +19 -0
- package/src/components/Sandpack/index.css +10 -0
- package/src/components/Sandpack/index.tsx +22 -0
- package/src/components/SecondaryTitle/index.module.css +14 -0
- package/src/components/SecondaryTitle/index.tsx +15 -0
- package/src/components/ShowcaseList/index.module.scss +80 -0
- package/src/components/ShowcaseList/index.tsx +39 -0
- package/src/components/ShowcaseList/useShowcases.ts +101 -0
- package/src/components/SolutionCards/index.module.scss +73 -0
- package/src/components/SolutionCards/index.tsx +30 -0
- package/src/custom.scss +15 -0
- package/src/global.d.ts +28 -0
- package/src/i18n/enUS.ts +54 -0
- package/src/i18n/index.ts +18 -0
- package/src/i18n/zhCN.ts +54 -0
- package/src/index.ts +5 -0
- package/src/pages/index.module.scss +349 -0
- package/src/pages/index.tsx +133 -0
- package/src/sandbox/csr-auth/src/routes/Auth-tsx.txt +74 -0
- package/src/sandbox/csr-auth/src/routes/fakeAuth-ts.txt +16 -0
- package/src/sandbox/csr-auth/src/routes/layout-tsx.txt +21 -0
- package/src/sandbox/csr-auth/src/routes/login/page-tsx.txt +40 -0
- package/src/sandbox/csr-auth/src/routes/page-tsx.txt +17 -0
- package/src/sandbox/csr-auth/src/routes/protected/page-tsx.txt +11 -0
- package/static/img/favicon.ico +0 -0
- package/static/img/features/ai.svg +1 -0
- package/static/img/features/api.svg +1 -0
- package/static/img/features/app.svg +1 -0
- package/static/img/features/blocks.svg +1 -0
- package/static/img/features/browser.svg +12 -0
- package/static/img/features/cloud.svg +1 -0
- package/static/img/features/coding-backend.svg +1 -0
- package/static/img/features/compiler.svg +1 -0
- package/static/img/features/css-file.svg +1 -0
- package/static/img/features/customize.svg +1 -0
- package/static/img/features/developer.svg +1 -0
- package/static/img/features/dynamic.svg +1 -0
- package/static/img/features/editor.svg +1 -0
- package/static/img/features/framework-config.svg +1 -0
- package/static/img/features/framework.svg +1 -0
- package/static/img/features/frameworks.svg +1 -0
- package/static/img/features/html.svg +1 -0
- package/static/img/features/icon2.svg +1 -0
- package/static/img/features/javascript.svg +1 -0
- package/static/img/features/monorepo.svg +1 -0
- package/static/img/features/product.svg +1 -0
- package/static/img/features/server-network.svg +1 -0
- package/static/img/features/serverless.svg +1 -0
- package/static/img/features/test.svg +1 -0
- package/static/img/features/trinity.svg +1 -0
- package/static/img/features/unity.svg +1 -0
- package/static/img/features/url.svg +1 -0
- package/static/img/features/visual.svg +1 -0
- package/static/img/features/web-server.svg +1 -0
|
@@ -0,0 +1,349 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CSS files with the .module.css suffix will be treated as CSS modules
|
|
3
|
+
* and scoped locally.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
/* === Header Start === */
|
|
7
|
+
.header {
|
|
8
|
+
display: flex;
|
|
9
|
+
justify-content: center;
|
|
10
|
+
background-size: cover;
|
|
11
|
+
background-position: center bottom;
|
|
12
|
+
background-origin: border-box;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.heroBanner {
|
|
16
|
+
display: flex;
|
|
17
|
+
width: 80vw;
|
|
18
|
+
max-width: 1200px;
|
|
19
|
+
flex-direction: column;
|
|
20
|
+
justify-content: flex-start;
|
|
21
|
+
position: relative;
|
|
22
|
+
box-sizing: border-box;
|
|
23
|
+
align-items: center;
|
|
24
|
+
text-align: center;
|
|
25
|
+
padding-top: 12vh;
|
|
26
|
+
padding-bottom: 16vh;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.announcement {
|
|
30
|
+
display: inline-flex;
|
|
31
|
+
align-items: center;
|
|
32
|
+
gap: 10px;
|
|
33
|
+
padding: 6px 18px 6px 6px;
|
|
34
|
+
border-radius: 999px;
|
|
35
|
+
background: linear-gradient(
|
|
36
|
+
150.85deg,
|
|
37
|
+
rgba(124, 178, 250, 0.15) 3%,
|
|
38
|
+
rgba(124, 178, 250, 0.08) 97.17%
|
|
39
|
+
);
|
|
40
|
+
border: 1px solid rgba(124, 178, 250, 0.4);
|
|
41
|
+
cursor: pointer;
|
|
42
|
+
transition: all 0.3s ease;
|
|
43
|
+
text-decoration: none;
|
|
44
|
+
margin-bottom: 1.5rem;
|
|
45
|
+
position: relative;
|
|
46
|
+
z-index: 1;
|
|
47
|
+
|
|
48
|
+
&:hover {
|
|
49
|
+
background: linear-gradient(
|
|
50
|
+
150.85deg,
|
|
51
|
+
rgba(124, 178, 250, 0.25) 3%,
|
|
52
|
+
rgba(124, 178, 250, 0.15) 97.17%
|
|
53
|
+
);
|
|
54
|
+
border-color: rgba(124, 178, 250, 0.55);
|
|
55
|
+
text-decoration: none;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
:global(.dark) .announcement {
|
|
60
|
+
background: linear-gradient(
|
|
61
|
+
150.85deg,
|
|
62
|
+
rgba(124, 178, 250, 0.18) 3%,
|
|
63
|
+
rgba(124, 178, 250, 0.08) 97.17%
|
|
64
|
+
);
|
|
65
|
+
border-color: rgba(124, 178, 250, 0.25);
|
|
66
|
+
|
|
67
|
+
&:hover {
|
|
68
|
+
background: linear-gradient(
|
|
69
|
+
150.85deg,
|
|
70
|
+
rgba(124, 178, 250, 0.28) 3%,
|
|
71
|
+
rgba(124, 178, 250, 0.14) 97.17%
|
|
72
|
+
);
|
|
73
|
+
border-color: rgba(124, 178, 250, 0.4);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
.announcementLabel {
|
|
78
|
+
display: inline-flex;
|
|
79
|
+
align-items: center;
|
|
80
|
+
padding: 2px 10px;
|
|
81
|
+
border-radius: 999px;
|
|
82
|
+
background: var(--edenx-home-hero-name-background);
|
|
83
|
+
font-size: 12px;
|
|
84
|
+
font-weight: 700;
|
|
85
|
+
color: #fff;
|
|
86
|
+
letter-spacing: 0.5px;
|
|
87
|
+
line-height: 1.6;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
.announcementText {
|
|
91
|
+
font-size: 14px;
|
|
92
|
+
font-weight: 500;
|
|
93
|
+
color: rgba(0, 0, 0, 0.75);
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
:global(.dark) .announcementText {
|
|
97
|
+
color: rgba(255, 255, 255, 0.85);
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
.announcementArrow {
|
|
101
|
+
font-size: 14px;
|
|
102
|
+
color: rgba(0, 0, 0, 0.45);
|
|
103
|
+
transition: transform 0.3s ease;
|
|
104
|
+
|
|
105
|
+
.announcement:hover & {
|
|
106
|
+
transform: translateX(2px);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
:global(.dark) .announcementArrow {
|
|
111
|
+
color: rgba(255, 255, 255, 0.5);
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
.title {
|
|
115
|
+
font-style: normal;
|
|
116
|
+
font-weight: bold;
|
|
117
|
+
font-size: 3.75rem;
|
|
118
|
+
line-height: 1.6;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
.mainTitle {
|
|
122
|
+
font-size: 125%;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
.mask {
|
|
126
|
+
position: absolute;
|
|
127
|
+
background-image: conic-gradient(
|
|
128
|
+
from 180deg at 50%50%,
|
|
129
|
+
var(--edenx-primary-color) 0deg,
|
|
130
|
+
180deg,
|
|
131
|
+
hsl(198deg, 100%, 50%) 0deg
|
|
132
|
+
);
|
|
133
|
+
max-width: 500px;
|
|
134
|
+
width: 100%;
|
|
135
|
+
height: 450px;
|
|
136
|
+
border-radius: 100%;
|
|
137
|
+
mixblendmode: normal;
|
|
138
|
+
filter: blur(80px);
|
|
139
|
+
opacity: 0.1;
|
|
140
|
+
top: 100px;
|
|
141
|
+
left: 50%;
|
|
142
|
+
z-index: 0;
|
|
143
|
+
transform: translateX(-50%);
|
|
144
|
+
pointer-events: none;
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
:global(.dark) .mask {
|
|
148
|
+
opacity: 0.15;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
.titleGradient {
|
|
152
|
+
background: var(--edenx-home-hero-name-background);
|
|
153
|
+
background-clip: text;
|
|
154
|
+
-webkit-background-clip: text;
|
|
155
|
+
-webkit-text-fill-color: transparent;
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
.buttons {
|
|
159
|
+
display: flex;
|
|
160
|
+
justify-content: center;
|
|
161
|
+
margin-top: 2.4rem;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
.slogan {
|
|
165
|
+
font-size: 40%;
|
|
166
|
+
font-weight: normal;
|
|
167
|
+
opacity: 0.7;
|
|
168
|
+
margin-top: 1.2rem;
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
.leftButton,
|
|
172
|
+
.rightButton {
|
|
173
|
+
width: 142px;
|
|
174
|
+
font-weight: bold;
|
|
175
|
+
|
|
176
|
+
&:hover {
|
|
177
|
+
opacity: 0.7;
|
|
178
|
+
text-decoration: none;
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
&:active {
|
|
182
|
+
opacity: 0.4;
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
.leftButton {
|
|
187
|
+
display: flex;
|
|
188
|
+
justify-content: center;
|
|
189
|
+
align-items: center;
|
|
190
|
+
line-height: 48px;
|
|
191
|
+
height: 48px;
|
|
192
|
+
background: var(--edenx-home-hero-name-background);
|
|
193
|
+
box-shadow: 0px 1px 8px rgba(133, 250, 202, 0.34);
|
|
194
|
+
border-radius: 39px;
|
|
195
|
+
color: #fff;
|
|
196
|
+
cursor: pointer;
|
|
197
|
+
opacity: 0.9;
|
|
198
|
+
transition: opacity 0.3s ease;
|
|
199
|
+
|
|
200
|
+
&:hover {
|
|
201
|
+
color: #fff;
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
.rightButton {
|
|
206
|
+
display: flex;
|
|
207
|
+
height: 49px;
|
|
208
|
+
justify-content: center;
|
|
209
|
+
align-items: center;
|
|
210
|
+
border: 1px solid var(--edenx-primary-color);
|
|
211
|
+
box-sizing: border-box;
|
|
212
|
+
border-radius: 39px;
|
|
213
|
+
margin-left: 32px;
|
|
214
|
+
cursor: pointer;
|
|
215
|
+
color: var(--edenx-primary-color);
|
|
216
|
+
transition: all 0.3s ease;
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
@media (max-width: 1600px) {
|
|
220
|
+
.logo {
|
|
221
|
+
width: 420px;
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
.title {
|
|
225
|
+
font-size: 3.6rem;
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
@media screen and (max-width: 768px) {
|
|
230
|
+
.heroBanner {
|
|
231
|
+
align-items: center;
|
|
232
|
+
}
|
|
233
|
+
.title {
|
|
234
|
+
font-size: 7vw;
|
|
235
|
+
text-align: center;
|
|
236
|
+
}
|
|
237
|
+
.announcement {
|
|
238
|
+
padding: 4px 14px 4px 4px;
|
|
239
|
+
gap: 8px;
|
|
240
|
+
margin-bottom: 1rem;
|
|
241
|
+
}
|
|
242
|
+
.announcementText {
|
|
243
|
+
font-size: 12px;
|
|
244
|
+
}
|
|
245
|
+
.buttons {
|
|
246
|
+
width: 65%;
|
|
247
|
+
justify-content: center;
|
|
248
|
+
align-items: center;
|
|
249
|
+
flex-direction: column;
|
|
250
|
+
margin-top: 50px;
|
|
251
|
+
}
|
|
252
|
+
.leftButton,
|
|
253
|
+
.rightButton {
|
|
254
|
+
width: 100%;
|
|
255
|
+
}
|
|
256
|
+
.rightButton {
|
|
257
|
+
margin-left: 0;
|
|
258
|
+
margin-top: 32px;
|
|
259
|
+
}
|
|
260
|
+
.singleImg {
|
|
261
|
+
max-width: 100%;
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
@media screen and (max-width: 540px) {
|
|
266
|
+
.title {
|
|
267
|
+
font-size: 8vw;
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
/* === Header End === */
|
|
272
|
+
|
|
273
|
+
.cardContainer {
|
|
274
|
+
display: flex;
|
|
275
|
+
flex-wrap: wrap;
|
|
276
|
+
margin-top: 16px;
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
// .homepage-main {
|
|
280
|
+
// background-color: #0d0d0d;
|
|
281
|
+
// }
|
|
282
|
+
|
|
283
|
+
.flowContainer {
|
|
284
|
+
position: relative;
|
|
285
|
+
width: 1021px;
|
|
286
|
+
max-width: 100%;
|
|
287
|
+
margin: 0 auto;
|
|
288
|
+
height: 1261px;
|
|
289
|
+
overflow-y: hidden;
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
.flowLine {
|
|
293
|
+
position: absolute;
|
|
294
|
+
width: 95px;
|
|
295
|
+
left: 50%;
|
|
296
|
+
transform: translateX(-50%);
|
|
297
|
+
}
|
|
298
|
+
|
|
299
|
+
.flowLineMobile {
|
|
300
|
+
left: 30px;
|
|
301
|
+
width: 37.5px;
|
|
302
|
+
}
|
|
303
|
+
|
|
304
|
+
.singleImgWrap {
|
|
305
|
+
display: flex;
|
|
306
|
+
justify-content: center;
|
|
307
|
+
width: 100%;
|
|
308
|
+
margin-top: 48px;
|
|
309
|
+
border: 1px solid #6f6f6f;
|
|
310
|
+
border-radius: 8px;
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
.singleImg {
|
|
314
|
+
max-width: 910px;
|
|
315
|
+
object-fit: contain;
|
|
316
|
+
}
|
|
317
|
+
|
|
318
|
+
.singleImgCard {
|
|
319
|
+
margin-bottom: 16px;
|
|
320
|
+
transition: all 0.3s ease;
|
|
321
|
+
}
|
|
322
|
+
|
|
323
|
+
.singleImgCard:hover {
|
|
324
|
+
background: rgba(78, 202, 255, 0.2);
|
|
325
|
+
transition: all 0.3s ease;
|
|
326
|
+
}
|
|
327
|
+
|
|
328
|
+
@media screen and (max-width: 700px) {
|
|
329
|
+
.section-title {
|
|
330
|
+
font-size: 1rem;
|
|
331
|
+
font-size: 4vw;
|
|
332
|
+
margin-top: 1rem;
|
|
333
|
+
margin-bottom: 1rem;
|
|
334
|
+
}
|
|
335
|
+
.singleImg {
|
|
336
|
+
max-width: 100%;
|
|
337
|
+
}
|
|
338
|
+
}
|
|
339
|
+
|
|
340
|
+
@media screen and (max-width: 1100px) {
|
|
341
|
+
.flowContainer {
|
|
342
|
+
height: auto;
|
|
343
|
+
overflow: visible;
|
|
344
|
+
}
|
|
345
|
+
}
|
|
346
|
+
|
|
347
|
+
:global(.rspress-logo) {
|
|
348
|
+
width: auto !important;
|
|
349
|
+
}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import { Head, useLocation } from '@rspress/core/runtime';
|
|
2
|
+
import clsx from 'clsx';
|
|
3
|
+
import { useEffect } from 'react';
|
|
4
|
+
import ContentCard from '../components/ContentCard';
|
|
5
|
+
import { FeatureLayout } from '../components/FeatureLayout';
|
|
6
|
+
import Footer from '../components/Footer';
|
|
7
|
+
import SecondaryTitle from '../components/SecondaryTitle';
|
|
8
|
+
import { useI18n, useUrl } from '../i18n';
|
|
9
|
+
import styles from './index.module.scss';
|
|
10
|
+
|
|
11
|
+
const HomepageHeader = () => {
|
|
12
|
+
const t = useI18n();
|
|
13
|
+
return (
|
|
14
|
+
<div className={styles.header}>
|
|
15
|
+
<header className={clsx('hero hero--primary', styles.heroBanner)}>
|
|
16
|
+
<div className={styles.mask} />
|
|
17
|
+
<a
|
|
18
|
+
href={useUrl('/community/blog/v3-release-note')}
|
|
19
|
+
className={styles.announcement}
|
|
20
|
+
>
|
|
21
|
+
<span className={styles.announcementLabel}>
|
|
22
|
+
{t('announcementLabel')}
|
|
23
|
+
</span>
|
|
24
|
+
<span className={styles.announcementText}>
|
|
25
|
+
{t('announcementText')}
|
|
26
|
+
</span>
|
|
27
|
+
<span className={styles.announcementArrow}>→</span>
|
|
28
|
+
</a>
|
|
29
|
+
<h1 className={styles.title}>
|
|
30
|
+
<span className={clsx([styles.titleGradient, styles.mainTitle])}>
|
|
31
|
+
Modern.js 3.0
|
|
32
|
+
</span>
|
|
33
|
+
<div>{t('slogan')}</div>
|
|
34
|
+
</h1>
|
|
35
|
+
<div className={styles.buttons}>
|
|
36
|
+
<a
|
|
37
|
+
href={useUrl('/guides/get-started/introduction')}
|
|
38
|
+
className={styles.leftButton}
|
|
39
|
+
>
|
|
40
|
+
{t('introduction')}
|
|
41
|
+
</a>
|
|
42
|
+
<a
|
|
43
|
+
href={useUrl('/guides/get-started/quick-start')}
|
|
44
|
+
className={styles.rightButton}
|
|
45
|
+
>
|
|
46
|
+
{t('quickStart')}
|
|
47
|
+
</a>
|
|
48
|
+
</div>
|
|
49
|
+
</header>
|
|
50
|
+
</div>
|
|
51
|
+
);
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
export default function Home() {
|
|
55
|
+
const t = useI18n();
|
|
56
|
+
const { pathname } = useLocation();
|
|
57
|
+
useEffect(() => {
|
|
58
|
+
window.MODERN_THEME = 'dark';
|
|
59
|
+
return () => {
|
|
60
|
+
window.MODERN_THEME = undefined;
|
|
61
|
+
};
|
|
62
|
+
}, [pathname]);
|
|
63
|
+
|
|
64
|
+
const features = [
|
|
65
|
+
{
|
|
66
|
+
id: 'feature1',
|
|
67
|
+
title: t('feature1'),
|
|
68
|
+
href: useUrl('/guides/concept/builder'),
|
|
69
|
+
desc: t('featureDesc1'),
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
id: 'feature2',
|
|
73
|
+
title: t('feature2'),
|
|
74
|
+
href: useUrl('/guides/advanced-features/bff/index'),
|
|
75
|
+
desc: t('featureDesc2'),
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
id: 'feature3',
|
|
79
|
+
title: t('feature3'),
|
|
80
|
+
href: useUrl('/guides/basic-features/routes/routes'),
|
|
81
|
+
desc: t('featureDesc3'),
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
id: 'feature4',
|
|
85
|
+
title: t('feature4'),
|
|
86
|
+
href: useUrl('/guides/basic-features/render/ssr'),
|
|
87
|
+
desc: t('featureDesc4'),
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
id: 'feature5',
|
|
91
|
+
title: t('feature5'),
|
|
92
|
+
href: useUrl('/guides/basic-features/css/css'),
|
|
93
|
+
desc: t('featureDesc5'),
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
id: 'feature6',
|
|
97
|
+
title: t('feature6'),
|
|
98
|
+
href: useUrl('/configure/app/usage'),
|
|
99
|
+
desc: t('featureDesc6'),
|
|
100
|
+
},
|
|
101
|
+
];
|
|
102
|
+
|
|
103
|
+
return (
|
|
104
|
+
<div>
|
|
105
|
+
<Head>
|
|
106
|
+
<html className="dark" />
|
|
107
|
+
<script>window.MODERN_THEME = 'dark';</script>
|
|
108
|
+
<style type="text/css">{`
|
|
109
|
+
.rspress-doc-appearance {
|
|
110
|
+
display: none!important;
|
|
111
|
+
}
|
|
112
|
+
`}</style>
|
|
113
|
+
</Head>
|
|
114
|
+
<HomepageHeader />
|
|
115
|
+
<main className={styles['homepage-main']}>
|
|
116
|
+
<FeatureLayout>
|
|
117
|
+
<div className={styles.cardContainer}>
|
|
118
|
+
{features.map(card => (
|
|
119
|
+
<ContentCard
|
|
120
|
+
key={card.id}
|
|
121
|
+
title={card.title}
|
|
122
|
+
desc={card.desc}
|
|
123
|
+
href={card.href}
|
|
124
|
+
/>
|
|
125
|
+
))}
|
|
126
|
+
</div>
|
|
127
|
+
</FeatureLayout>
|
|
128
|
+
|
|
129
|
+
<Footer />
|
|
130
|
+
</main>
|
|
131
|
+
</div>
|
|
132
|
+
);
|
|
133
|
+
}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { Navigate, useLocation, useNavigate } from '@modern-js/runtime/router';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { fakeAuthProvider } from './fakeAuth';
|
|
4
|
+
|
|
5
|
+
interface AuthContextType {
|
|
6
|
+
user: any;
|
|
7
|
+
signin: (user: string, callback: VoidFunction) => void;
|
|
8
|
+
signout: (callback: VoidFunction) => void;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
const AuthContext = React.createContext<AuthContextType>(null!);
|
|
12
|
+
|
|
13
|
+
export function AuthProvider({ children }: { children: React.ReactNode }) {
|
|
14
|
+
const [user, setUser] = React.useState<any>(null);
|
|
15
|
+
|
|
16
|
+
const signin = (newUser: string, callback: VoidFunction) =>
|
|
17
|
+
fakeAuthProvider.signin(() => {
|
|
18
|
+
setUser(newUser);
|
|
19
|
+
callback();
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
const signout = (callback: VoidFunction) =>
|
|
23
|
+
fakeAuthProvider.signout(() => {
|
|
24
|
+
setUser(null);
|
|
25
|
+
callback();
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
const value = { user, signin, signout };
|
|
29
|
+
|
|
30
|
+
return <AuthContext.Provider value={value}>{children}</AuthContext.Provider>;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
export function useAuth() {
|
|
34
|
+
return React.useContext(AuthContext);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export function AuthStatus() {
|
|
38
|
+
const auth = useAuth();
|
|
39
|
+
console.log('auth', auth);
|
|
40
|
+
const navigate = useNavigate();
|
|
41
|
+
|
|
42
|
+
if (!auth.user) {
|
|
43
|
+
return <p>You are not logged in.</p>;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
return (
|
|
47
|
+
<p>
|
|
48
|
+
Welcome {auth.user}!{' '}
|
|
49
|
+
<button
|
|
50
|
+
type="button"
|
|
51
|
+
onClick={() => {
|
|
52
|
+
auth.signout(() => navigate('/'));
|
|
53
|
+
}}
|
|
54
|
+
>
|
|
55
|
+
Sign out
|
|
56
|
+
</button>
|
|
57
|
+
</p>
|
|
58
|
+
);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
export function RequireAuth({ children }: { children: JSX.Element }) {
|
|
62
|
+
const auth = useAuth();
|
|
63
|
+
const location = useLocation();
|
|
64
|
+
|
|
65
|
+
if (!auth.user) {
|
|
66
|
+
// Redirect them to the /login page, but save the current location they were
|
|
67
|
+
// trying to go to when they were redirected. This allows us to send them
|
|
68
|
+
// along to that page after they login, which is a nicer user experience
|
|
69
|
+
// than dropping them off on the home page.
|
|
70
|
+
return <Navigate to="/login" state={{ from: location }} replace />;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
return children;
|
|
74
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This represents some generic auth provider API, like Firebase.
|
|
3
|
+
*/
|
|
4
|
+
const fakeAuthProvider = {
|
|
5
|
+
isAuthenticated: false,
|
|
6
|
+
signin(callback: VoidFunction) {
|
|
7
|
+
fakeAuthProvider.isAuthenticated = true;
|
|
8
|
+
setTimeout(callback, 100); // fake async
|
|
9
|
+
},
|
|
10
|
+
signout(callback: VoidFunction) {
|
|
11
|
+
fakeAuthProvider.isAuthenticated = false;
|
|
12
|
+
setTimeout(callback, 100);
|
|
13
|
+
},
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
export { fakeAuthProvider };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Link, Outlet } from '@modern-js/runtime/router';
|
|
2
|
+
import { AuthProvider, AuthStatus } from './Auth';
|
|
3
|
+
|
|
4
|
+
export default function Layout() {
|
|
5
|
+
return (
|
|
6
|
+
<AuthProvider>
|
|
7
|
+
<AuthStatus />
|
|
8
|
+
|
|
9
|
+
<ul>
|
|
10
|
+
<li>
|
|
11
|
+
<Link to="/">Public Page</Link>
|
|
12
|
+
</li>
|
|
13
|
+
<li>
|
|
14
|
+
<Link to="/protected">Protected Page</Link>
|
|
15
|
+
</li>
|
|
16
|
+
</ul>
|
|
17
|
+
|
|
18
|
+
<Outlet />
|
|
19
|
+
</AuthProvider>
|
|
20
|
+
);
|
|
21
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { useLocation, useNavigate } from '@modern-js/runtime/router';
|
|
2
|
+
import { useAuth } from '../Auth';
|
|
3
|
+
|
|
4
|
+
export default function Login() {
|
|
5
|
+
const navigate = useNavigate();
|
|
6
|
+
const location = useLocation();
|
|
7
|
+
const auth = useAuth();
|
|
8
|
+
|
|
9
|
+
const from = location.state?.from?.pathname || '/';
|
|
10
|
+
|
|
11
|
+
function handleSubmit(event: React.FormEvent<HTMLFormElement>) {
|
|
12
|
+
event.preventDefault();
|
|
13
|
+
|
|
14
|
+
const formData = new FormData(event.currentTarget);
|
|
15
|
+
const username = formData.get('username') as string;
|
|
16
|
+
|
|
17
|
+
auth.signin(username, () => {
|
|
18
|
+
// Send them back to the page they tried to visit when they were
|
|
19
|
+
// redirected to the login page. Use { replace: true } so we don't create
|
|
20
|
+
// another entry in the history stack for the login page. This means that
|
|
21
|
+
// when they get to the protected page and click the back button, they
|
|
22
|
+
// won't end up back on the login page, which is also really nice for the
|
|
23
|
+
// user experience.
|
|
24
|
+
navigate(from, { replace: true });
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
return (
|
|
29
|
+
<div>
|
|
30
|
+
<p>You must log in to view the page at {from}</p>
|
|
31
|
+
|
|
32
|
+
<form onSubmit={handleSubmit}>
|
|
33
|
+
<label>
|
|
34
|
+
Username: <input name="username" type="text" />
|
|
35
|
+
</label>{' '}
|
|
36
|
+
<button type="submit">Login</button>
|
|
37
|
+
</form>
|
|
38
|
+
</div>
|
|
39
|
+
);
|
|
40
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Helmet } from '@modern-js/runtime/head';
|
|
2
|
+
import './index.css';
|
|
3
|
+
|
|
4
|
+
const PublicPage = (): JSX.Element => (
|
|
5
|
+
<div className="container-box">
|
|
6
|
+
<Helmet>
|
|
7
|
+
<link
|
|
8
|
+
rel="icon"
|
|
9
|
+
type="image/x-icon"
|
|
10
|
+
href="https://lf3-static.bytednsdoc.com/obj/eden-cn/uhbfnupenuhf/favicon.ico"
|
|
11
|
+
/>
|
|
12
|
+
</Helmet>
|
|
13
|
+
<h3>Public</h3>
|
|
14
|
+
</div>
|
|
15
|
+
);
|
|
16
|
+
|
|
17
|
+
export default PublicPage;
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg height='100px' width='100px' xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 60 60" version="1.1" x="0px" y="0px"><title>012 - Computer Thoughts</title><desc>Created with Sketch.</desc><g stroke="none" stroke-width="1" fill-rule="evenodd"><g fill-rule="nonzero"><path d="M0.36,33.859 C-0.0644455646,34.4700348 -0.114638064,35.2661705 0.229706222,35.9256738 C0.574050508,36.5851771 1.256013,36.999035 2,37 L3.5,37 C3.84480965,37.6090457 4.01763407,38.3003434 4,39 C4.00832504,39.5708401 3.89551058,40.1369574 3.669,40.661 C3.44824771,41.1785027 3.46468621,41.7666357 3.714,42.271 C3.96338828,42.7714899 4.42007781,43.137134 4.963,43.271 L5.579,43.421 C5.14242368,43.7839315 4.88992898,44.3222693 4.89,44.89 C4.88443005,45.6177159 5.29869331,46.2834962 5.954,46.6 C6.09022168,46.6659754 6.23964257,46.7001678 6.391,46.7 C6.47390786,46.7005316 6.54841728,46.7507147 6.58007291,46.8273431 C6.61172853,46.9039715 6.59436038,46.9921097 6.536,47.051 L5.536,48.051 C4.63859869,48.9528838 4.14792073,50.1818065 4.17736489,51.4537564 C4.20680905,52.7257063 4.75382719,53.9306076 5.692,54.79 C6.5850442,55.5883037 7.74633528,56.0203954 8.944,56 L16.66,56 C17.5757531,56.0018118 18.3740304,56.6235628 18.6,57.511 L19.029,59.241 C19.1397719,59.6870872 19.5403652,60.0002183 20,60 L49,60 C49.5522847,60 50,59.5522847 50,59 L50,48.922 C49.9896216,48.3582781 50.2246235,47.8178468 50.644,47.441 C59.3937487,39.8795169 62.3564822,27.5854205 58.0116633,16.8682997 C53.6668444,6.1511789 42.9793391,-0.608985674 31.4341999,0.0572645803 C19.8890606,0.723514834 10.0501485,8.66822387 6.967,19.814 C6.73213687,20.6750315 6.88167151,21.5955813 7.377,22.338 C7.49978882,22.5265547 7.56670111,22.7460131 7.57,22.971 C7.56981616,23.2019959 7.49821275,23.4272846 7.365,23.616 L0.36,33.859 Z M9.053,21.246 C8.87131435,20.9835158 8.8135842,20.6546731 8.895,20.346 C11.7439001,10.020168 20.8533359,2.65586434 31.5468792,2.03363446 C42.2404225,1.41140458 52.1425093,7.66947646 56.1697956,17.5952008 C60.1970819,27.5209251 57.4549085,38.9093084 49.351,45.914 L49.346,45.914 C48.1525251,46.9462055 46.8648887,47.8642239 45.5,48.656 C45.1091084,48.882748 44.9188594,49.3434704 45.0358789,49.7799534 C45.1528985,50.2164363 45.5481037,50.5202005 46,50.521 C46.1756138,50.5215641 46.3482044,50.4753098 46.5,50.387 C47.013,50.087 47.5,49.754 48,49.423 L48,58 L20.782,58 L20.539,57.021 C20.4434042,56.6623167 20.2983456,56.3186861 20.108,56 L28.528,56 C31.6526075,56.0126664 34.5122323,54.2465416 35.9,51.447 C36.1468713,50.9527051 35.9462949,50.3518713 35.452,50.105 C34.9577051,49.8581287 34.3568713,50.0587051 34.11,50.553 C33.059452,52.6729515 30.8939547,54.0101907 28.528,54 L17,54 C16.964,54 16.934,54.017 16.9,54.02 C16.819,54.015 16.742,54 16.66,54 L8.944,54 C8.24792803,54.0210532 7.56949661,53.7789603 7.044,53.322 C6.50509389,52.8323355 6.18964109,52.1437525 6.17075919,51.4158551 C6.15187728,50.6879578 6.43120571,49.983946 6.944,49.467 L7.944,48.467 C8.4905816,47.9237635 8.71422939,47.1347696 8.53401629,46.3855163 C8.35380319,45.6362629 7.79583012,45.0352673 7.062,44.8 C7.59086127,44.3301842 7.81619984,43.6062167 7.64739352,42.9192484 C7.47858719,42.23228 6.94337578,41.6951998 6.257,41.524 L5.548,41.352 C5.85389443,40.6059538 6.00757186,39.8062872 6,39 C6.00368008,38.3201389 5.89487824,37.6443512 5.678,37 L5.76,37 C6.28990234,37.0020592 6.79762077,37.2129797 7.173,37.587 L7.293,37.707 C7.68537889,38.0859722 8.30908478,38.0805524 8.69481858,37.6948186 C9.08055237,37.3090848 9.08597221,36.6853789 8.707,36.293 L8.587,36.173 C7.83583306,35.425083 6.82000884,35.0035896 5.76,35 L4,35 L2,34.995 L9.012,24.751 C9.37563739,24.2286835 9.57038906,23.6074326 9.57,22.971 C9.56690983,22.3582808 9.38742373,21.7594152 9.053,21.246 Z"></path><path d="M30,33 L38,33 C39.6568542,33 41,31.6568542 41,30 L41,22 C41,20.3431458 39.6568542,19 38,19 L30,19 C28.3431458,19 27,20.3431458 27,22 L27,30 C27,31.6568542 28.3431458,33 30,33 Z M29,22 C29,21.4477153 29.4477153,21 30,21 L38,21 C38.5522847,21 39,21.4477153 39,22 L39,30 C39,30.5522847 38.5522847,31 38,31 L30,31 C29.4477153,31 29,30.5522847 29,30 L29,22 Z"></path><path d="M19,33 C18.4477153,33 18,33.4477153 18,34 C18,34.5522847 18.4477153,35 19,35 L22.142,35 C22.5061725,36.4002987 23.5997013,37.4938275 25,37.858 L25,41 C25,41.5522847 25.4477153,42 26,42 C26.5522847,42 27,41.5522847 27,41 L27,38 L29,38 L29,41 C29,41.5522847 29.4477153,42 30,42 C30.5522847,42 31,41.5522847 31,41 L31,38 L33,38 L33,41 C33,41.5522847 33.4477153,42 34,42 C34.5522847,42 35,41.5522847 35,41 L35,38 L37,38 L37,41 C37,41.5522847 37.4477153,42 38,42 C38.5522847,42 39,41.5522847 39,41 L39,38 L41,38 L41,41 C41,41.5522847 41.4477153,42 42,42 C42.5522847,42 43,41.5522847 43,41 L43,37.858 C44.4002987,37.4938275 45.4938275,36.4002987 45.858,35 L49,35 C49.5522847,35 50,34.5522847 50,34 C50,33.4477153 49.5522847,33 49,33 L46,33 L46,31 L49,31 C49.5522847,31 50,30.5522847 50,30 C50,29.4477153 49.5522847,29 49,29 L46,29 L46,27 L49,27 C49.5522847,27 50,26.5522847 50,26 C50,25.4477153 49.5522847,25 49,25 L46,25 L46,23 L49,23 C49.5522847,23 50,22.5522847 50,22 C50,21.4477153 49.5522847,21 49,21 L46,21 L46,19 L49,19 C49.5522847,19 50,18.5522847 50,18 C50,17.4477153 49.5522847,17 49,17 L45.858,17 C45.4938275,15.5997013 44.4002987,14.5061725 43,14.142 L43,11 C43,10.4477153 42.5522847,10 42,10 C41.4477153,10 41,10.4477153 41,11 L41,14 L39,14 L39,11 C39,10.4477153 38.5522847,10 38,10 C37.4477153,10 37,10.4477153 37,11 L37,14 L35,14 L35,11 C35,10.4477153 34.5522847,10 34,10 C33.4477153,10 33,10.4477153 33,11 L33,14 L31,14 L31,11 C31,10.4477153 30.5522847,10 30,10 C29.4477153,10 29,10.4477153 29,11 L29,14 L27,14 L27,11 C27,10.4477153 26.5522847,10 26,10 C25.4477153,10 25,10.4477153 25,11 L25,14.142 C23.5997013,14.5061725 22.5061725,15.5997013 22.142,17 L19,17 C18.4477153,17 18,17.4477153 18,18 C18,18.5522847 18.4477153,19 19,19 L22,19 L22,21 L19,21 C18.4477153,21 18,21.4477153 18,22 C18,22.5522847 18.4477153,23 19,23 L22,23 L22,25 L19,25 C18.4477153,25 18,25.4477153 18,26 C18,26.5522847 18.4477153,27 19,27 L22,27 L22,29 L19,29 C18.4477153,29 18,29.4477153 18,30 C18,30.5522847 18.4477153,31 19,31 L22,31 L22,33 L19,33 Z M26,16 L42,16 C43.1045695,16 44,16.8954305 44,18 L44,34 C44,35.1045695 43.1045695,36 42,36 L26,36 C24.8954305,36 24,35.1045695 24,34 L24,18 C24,16.8954305 24.8954305,16 26,16 Z"></path><path d="M32,25 L33,25 C33.5522847,25 34,24.5522847 34,24 C34,23.4477153 33.5522847,23 33,23 L32,23 C31.4477153,23 31,23.4477153 31,24 C31,24.5522847 31.4477153,25 32,25 Z"></path><path d="M35,29 L36,29 C36.5522847,29 37,28.5522847 37,28 C37,27.4477153 36.5522847,27 36,27 L35,27 C34.4477153,27 34,27.4477153 34,28 C34,28.5522847 34.4477153,29 35,29 Z"></path></g></g></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg height='100px' width='100px' fill="#000000" xmlns="http://www.w3.org/2000/svg" data-name="Слой 1" viewBox="0 0 128 128" x="0px" y="0px"><title>ic_api_gears</title><path d="M86,86a15.76,15.76,0,1,0,22.29,0A15.77,15.77,0,0,0,86,86ZM105.5,105.5a11.75,11.75,0,0,1-16.63,0,11.76,11.76,0,1,1,16.63,0Z"></path><path d="M126.65,99.51a2,2,0,0,0-1.25-1l-3.16-.85q0-.5,0-1l3.16-.85a2,2,0,0,0,1.25-1c.31-.58,1.82-3.57,1.2-5.89s-3.43-4.15-4-4.5a2,2,0,0,0-1.57-.23l-3.15.85c-.16-.29-.33-.58-.5-.86L121,81.92a2,2,0,0,0,.59-1.48c0-.65-.21-4-1.91-5.7s-5-1.88-5.7-1.9a1.92,1.92,0,0,0-1.47.58l-2.31,2.31-.86-.5.84-3.15a2,2,0,0,0-.23-1.57c-.34-.56-2.18-3.36-4.5-4s-5.31.89-5.89,1.2a2,2,0,0,0-1,1.24l-.85,3.16h-1L95.84,69a2,2,0,0,0-1-1.24c-.58-.31-3.57-1.83-5.89-1.2s-4.16,3.42-4.5,4a2,2,0,0,0-.23,1.57l.85,3.15-.86.5-2.31-2.31a2,2,0,0,0-1.48-.58c-.65,0-4,.2-5.7,1.9s-1.88,5.05-1.9,5.7a2,2,0,0,0,.58,1.48l2.31,2.31c-.17.28-.34.57-.5.86l-3.15-.85a2,2,0,0,0-1.57.23c-.56.35-3.36,2.18-4,4.5s.89,5.31,1.2,5.89a2,2,0,0,0,1.24,1l3.16.85q0,.5,0,1L69,98.53a2,2,0,0,0-1.24,1c-.31.58-1.83,3.57-1.21,5.89s3.43,4.16,4,4.5a2,2,0,0,0,1.57.23l3.15-.84c.16.29.33.57.5.86l-2.31,2.31a2,2,0,0,0-.58,1.47c0,.65.2,4,1.9,5.7s5.05,1.89,5.7,1.91a2,2,0,0,0,1.48-.59l2.31-2.31.86.5-.85,3.15a2,2,0,0,0,.23,1.57c.34.56,2.18,3.36,4.5,4a4.89,4.89,0,0,0,1.21.15,11.27,11.27,0,0,0,4.68-1.35,2,2,0,0,0,1-1.25l.85-3.16q.5,0,1,0l.85,3.16a2,2,0,0,0,1,1.25c.58.31,3.57,1.82,5.89,1.2s4.16-3.43,4.5-4a2,2,0,0,0,.23-1.57l-.84-3.15.86-.5,2.31,2.31a1.93,1.93,0,0,0,1.47.59c.65,0,4-.21,5.7-1.91s1.89-5,1.91-5.7a2,2,0,0,0-.59-1.47l-2.31-2.31c.17-.29.34-.57.5-.86l3.15.84a2,2,0,0,0,1.57-.23c.56-.34,3.36-2.18,4-4.5S127,100.09,126.65,99.51ZM124,104.37a5,5,0,0,1-1.55,1.66l-3.82-1a2,2,0,0,0-2.33,1.09,21.56,21.56,0,0,1-1.84,3.17,2,2,0,0,0,.22,2.57l2.81,2.8a5.06,5.06,0,0,1-.67,2.17,5,5,0,0,1-2.17.67l-2.8-2.81a2,2,0,0,0-2.57-.22,19.91,19.91,0,0,1-3.17,1.84,2,2,0,0,0-1.09,2.33l1,3.82a5,5,0,0,1-1.66,1.55,4.86,4.86,0,0,1-2.22-.51l-1-3.83A2,2,0,0,0,99,118.17a22.49,22.49,0,0,1-3.67,0,2,2,0,0,0-2.1,1.47l-1,3.83A5,5,0,0,1,90,124a4.9,4.9,0,0,1-1.67-1.55l1-3.82a2,2,0,0,0-1.09-2.33,20.36,20.36,0,0,1-3.17-1.84,2,2,0,0,0-2.56.22l-2.81,2.81a5.11,5.11,0,0,1-2.17-.67,5,5,0,0,1-.67-2.17l2.81-2.8a2,2,0,0,0,.22-2.57,21.05,21.05,0,0,1-1.84-3.17A2,2,0,0,0,75.76,105l-3.82,1a5.08,5.08,0,0,1-1.55-1.66,5,5,0,0,1,.51-2.22l3.83-1A2,2,0,0,0,76.21,99a20.45,20.45,0,0,1,0-3.67,2,2,0,0,0-1.48-2.1l-3.83-1A5,5,0,0,1,70.39,90a4.9,4.9,0,0,1,1.55-1.67l3.82,1a2,2,0,0,0,2.33-1.09,22.09,22.09,0,0,1,1.84-3.17,2,2,0,0,0-.22-2.56L76.9,79.74a5.11,5.11,0,0,1,.67-2.17,5,5,0,0,1,2.17-.67l2.81,2.81a2,2,0,0,0,2.56.22,22.09,22.09,0,0,1,3.17-1.84,2,2,0,0,0,1.09-2.33l-1-3.82A5,5,0,0,1,90,70.39a5,5,0,0,1,2.21.51l1,3.83a2,2,0,0,0,2.1,1.48,20.45,20.45,0,0,1,3.67,0,2,2,0,0,0,2.11-1.48l1-3.83a5.11,5.11,0,0,1,2.22-.51A5,5,0,0,1,106,71.94l-1,3.82a2,2,0,0,0,1.09,2.33,21.56,21.56,0,0,1,3.17,1.84,2,2,0,0,0,2.57-.22l2.8-2.81a5,5,0,0,1,2.17.67,4.86,4.86,0,0,1,.67,2.17l-2.81,2.81a2,2,0,0,0-.22,2.56,21.19,21.19,0,0,1,1.84,3.17,2,2,0,0,0,2.33,1.09l3.82-1A4.9,4.9,0,0,1,124,90a4.83,4.83,0,0,1-.51,2.21l-3.83,1a2,2,0,0,0-1.47,2.1,22.49,22.49,0,0,1,0,3.67,2,2,0,0,0,1.47,2.11l3.83,1A4.94,4.94,0,0,1,124,104.37Z"></path><path d="M69.71,74.69a2,2,0,0,0-.26-.76l-.91-1.59a35.88,35.88,0,0,0,3.8-3.8l1.59.91a2,2,0,0,0,.76.26c3.63.43,8.24.44,9.62-1.94s-1-6.37-3.14-9.3a2,2,0,0,0-.6-.53L79,57a35,35,0,0,0,1.39-5.2h1.83a2.14,2.14,0,0,0,.79-.16c3.36-1.44,7.36-3.74,7.36-6.49s-4-5-7.36-6.48a2,2,0,0,0-.79-.16H80.38A34.8,34.8,0,0,0,79,33.33l1.58-.91a1.91,1.91,0,0,0,.6-.53c2.19-2.93,4.51-6.92,3.14-9.3s-6-2.37-9.62-1.93a2,2,0,0,0-.76.25l-1.59.92A35.14,35.14,0,0,0,68.53,18l.92-1.59a2,2,0,0,0,.26-.76c.43-3.63.44-8.24-1.94-9.62s-6.37,1-9.3,3.14a2,2,0,0,0-.53.6L57,11.37A35,35,0,0,0,51.83,10V8.15a2.14,2.14,0,0,0-.16-.79C50.23,4,47.93,0,45.18,0s-5,4-6.48,7.36a2,2,0,0,0-.17.79V10a35,35,0,0,0-5.2,1.39l-.91-1.58a1.91,1.91,0,0,0-.53-.6C29,7,25,4.68,22.59,6.05s-2.37,6-1.93,9.62a1.85,1.85,0,0,0,.25.76L21.83,18A36.07,36.07,0,0,0,18,21.83l-1.59-.92a2,2,0,0,0-.76-.25c-3.63-.44-8.24-.45-9.62,1.93S7,29,9.19,31.89a1.91,1.91,0,0,0,.6.53l1.58.91A34.8,34.8,0,0,0,10,38.54H8.15a2,2,0,0,0-.79.16C4,40.14,0,42.43,0,45.18s4,5,7.36,6.49a2.14,2.14,0,0,0,.79.16H10A35,35,0,0,0,11.37,57l-1.58.91a2,2,0,0,0-.6.53C7,61.4,4.68,65.39,6.05,67.77s6,2.37,9.62,1.94a2,2,0,0,0,.76-.26L18,68.54a36,36,0,0,0,3.81,3.8l-.92,1.59a1.85,1.85,0,0,0-.25.76c-.44,3.63-.45,8.24,1.93,9.62s6.37-1,9.3-3.14a1.91,1.91,0,0,0,.53-.6L33.33,79a35,35,0,0,0,5.2,1.39v1.83a2,2,0,0,0,.17.79c1.44,3.36,3.73,7.36,6.48,7.36s5-4,6.49-7.36a2.14,2.14,0,0,0,.16-.79V80.38A34.36,34.36,0,0,0,57,79l.91,1.58a2,2,0,0,0,.53.6c2.93,2.19,6.92,4.51,9.3,3.14S70.14,78.32,69.71,74.69Zm-5-4.4a2,2,0,0,0-.5,2.58l1.56,2.69a18.23,18.23,0,0,1-.1,5.12,18,18,0,0,1-4.49-2.47l-1.55-2.69a2,2,0,0,0-2.48-.85,31.56,31.56,0,0,1-7.61,2,2,2,0,0,0-1.72,2v3.11a17.91,17.91,0,0,1-2.65,4.38,18.56,18.56,0,0,1-2.65-4.38V78.68a2,2,0,0,0-1.72-2,31.56,31.56,0,0,1-7.61-2,2,2,0,0,0-2.48.85l-1.55,2.69a18.12,18.12,0,0,1-4.48,2.47,17.78,17.78,0,0,1-.11-5.12l1.56-2.69a2,2,0,0,0-.5-2.58,31.92,31.92,0,0,1-5.57-5.57,2,2,0,0,0-2.58-.5L14.8,65.78a17.79,17.79,0,0,1-5.12-.11,18.12,18.12,0,0,1,2.47-4.48l2.69-1.55a2,2,0,0,0,.85-2.48,31.69,31.69,0,0,1-2-7.61,2,2,0,0,0-2-1.72H8.57a17.91,17.91,0,0,1-4.38-2.65,18.26,18.26,0,0,1,4.38-2.64h3.11a2,2,0,0,0,2-1.73,31.81,31.81,0,0,1,2-7.61,2,2,0,0,0-.85-2.48l-2.69-1.55a18.12,18.12,0,0,1-2.47-4.48,17.79,17.79,0,0,1,5.12-.11l2.69,1.56a2,2,0,0,0,2.58-.5,31.92,31.92,0,0,1,5.57-5.57,2,2,0,0,0,.5-2.58L24.58,14.8a17.79,17.79,0,0,1,.11-5.12,18.12,18.12,0,0,1,4.48,2.47l1.55,2.69a2,2,0,0,0,2.48.85,31.81,31.81,0,0,1,7.61-2,2,2,0,0,0,1.72-2V8.57a18.56,18.56,0,0,1,2.65-4.38,17.91,17.91,0,0,1,2.65,4.38v3.11a2,2,0,0,0,1.72,2,31.69,31.69,0,0,1,7.61,2,2,2,0,0,0,2.48-.85l1.55-2.69a18,18,0,0,1,4.49-2.47,18.24,18.24,0,0,1,.1,5.12l-1.56,2.69a2,2,0,0,0,.5,2.58,31.58,31.58,0,0,1,5.57,5.57,2,2,0,0,0,2.58.5l2.69-1.56a17.78,17.78,0,0,1,5.12.11,18.12,18.12,0,0,1-2.47,4.48l-2.69,1.55a2,2,0,0,0-.85,2.48,31.81,31.81,0,0,1,2,7.61,2,2,0,0,0,2,1.73h3.11a17.63,17.63,0,0,1,4.38,2.64,17.91,17.91,0,0,1-4.38,2.65H78.68a2,2,0,0,0-2,1.72,31.69,31.69,0,0,1-2,7.61,2,2,0,0,0,.85,2.48l2.69,1.55a18.12,18.12,0,0,1,2.47,4.48,17.78,17.78,0,0,1-5.12.11l-2.69-1.56a2,2,0,0,0-2.58.5A31.92,31.92,0,0,1,64.72,70.29Z"></path><path d="M72,54a2,2,0,0,0-2-2H68V36h2a2,2,0,0,0,0-4H62a2,2,0,0,0,0,4h2V52H62a2,2,0,0,0,0,4h8A2,2,0,0,0,72,54Z"></path><path d="M29.83,33.13A2,2,0,0,0,28,31.87h0a2,2,0,0,0-1.85,1.26l-8,20.17a2,2,0,0,0,1.12,2.6A1.94,1.94,0,0,0,20,56a2,2,0,0,0,1.86-1.26l2.24-5.67h7.79l2.25,5.67a2,2,0,0,0,3.72-1.48Zm-4.15,12L28,39.29l2.31,5.82Z"></path><path d="M49,32H44a2,2,0,0,0-2,2V54a2,2,0,0,0,4,0V49h3c5,0,9-3.73,9-8.5S54.05,32,49,32Zm0,13H46V36h3a4.72,4.72,0,0,1,5,4.5A4.72,4.72,0,0,1,49,45Z"></path></svg>
|