@modern-js/app-tools 3.7.0 → 3.8.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/bin/modern-bundle-docs.js +7 -0
- package/dist/cjs/builder/generator/createBuilderProviderConfig.js +5 -1
- package/dist/cjs/bundleDocs.js +114 -0
- package/dist/cjs/commands/build.js +2 -1
- package/dist/cjs/commands/deploy.js +4 -2
- package/dist/cjs/commands/index.js +0 -4
- package/dist/cjs/config/default.js +2 -0
- package/dist/cjs/index.js +52 -14
- package/dist/cjs/plugins/analyze/index.js +2 -2
- package/dist/cjs/plugins/analyze/utils.js +3 -2
- package/dist/cjs/plugins/initialize/index.js +4 -3
- package/dist/cjs/plugins/serverBuild.js +3 -2
- package/dist/esm/builder/generator/createBuilderProviderConfig.mjs +5 -1
- package/dist/esm/bundleDocs.mjs +62 -0
- package/dist/esm/commands/build.mjs +2 -1
- package/dist/esm/commands/deploy.mjs +4 -2
- package/dist/esm/commands/index.mjs +0 -4
- package/dist/esm/config/default.mjs +2 -0
- package/dist/esm/index.mjs +15 -1
- package/dist/esm/plugins/analyze/index.mjs +2 -2
- package/dist/esm/plugins/analyze/utils.mjs +3 -2
- package/dist/esm/plugins/initialize/index.mjs +4 -3
- package/dist/esm/plugins/serverBuild.mjs +3 -2
- package/dist/esm-node/builder/generator/createBuilderProviderConfig.mjs +5 -1
- package/dist/esm-node/bundleDocs.mjs +63 -0
- package/dist/esm-node/commands/build.mjs +2 -1
- package/dist/esm-node/commands/deploy.mjs +4 -2
- package/dist/esm-node/commands/index.mjs +0 -4
- package/dist/esm-node/config/default.mjs +2 -0
- package/dist/esm-node/index.mjs +15 -1
- package/dist/esm-node/plugins/analyze/index.mjs +2 -2
- package/dist/esm-node/plugins/analyze/utils.mjs +3 -2
- package/dist/esm-node/plugins/initialize/index.mjs +4 -3
- package/dist/esm-node/plugins/serverBuild.mjs +3 -2
- package/dist/types/bundleDocs.d.ts +20 -0
- package/dist/types/commands/deploy.d.ts +2 -1
- package/dist/types/index.d.ts +4 -1
- package/dist/types/plugins/analyze/utils.d.ts +1 -1
- package/dist/types/types/config/dev.d.ts +6 -0
- package/docs/apis/app/commands.md +241 -0
- package/docs/apis/app/hooks/api/lambda.md +9 -0
- package/docs/apis/app/hooks/config/favicon.md +24 -0
- package/docs/apis/app/hooks/config/html.md +5 -0
- package/docs/apis/app/hooks/config/icon.md +24 -0
- package/docs/apis/app/hooks/config/mock.md +6 -0
- package/docs/apis/app/hooks/config/public.md +26 -0
- package/docs/apis/app/hooks/config/upload.md +50 -0
- package/docs/apis/app/hooks/modern-config.md +5 -0
- package/docs/apis/app/hooks/server/server.md +5 -0
- package/docs/apis/app/hooks/shared.md +3 -0
- package/docs/apis/app/hooks/src/app.md +30 -0
- package/docs/apis/app/hooks/src/entry.md +34 -0
- package/docs/apis/app/hooks/src/entry.server.md +51 -0
- package/docs/apis/app/hooks/src/modern.runtime.md +5 -0
- package/docs/apis/app/hooks/src/routes.md +86 -0
- package/docs/apis/app/hooks/src/server.md +3 -0
- package/docs/apis/app/runtime/bff/use-hono-context.md +27 -0
- package/docs/apis/app/runtime/core/create-root.md +19 -0
- package/docs/apis/app/runtime/core/render.md +39 -0
- package/docs/apis/app/runtime/core/runtime-context.md +156 -0
- package/docs/apis/app/runtime/router/router.md +280 -0
- package/docs/apis/app/runtime/ssr/no-ssr.md +35 -0
- package/docs/apis/app/runtime/ssr/renderStreaming.md +67 -0
- package/docs/apis/app/runtime/ssr/renderString.md +60 -0
- package/docs/apis/app/runtime/ssr/requestHandler.md +44 -0
- package/docs/apis/app/runtime/utility/css-in-js.md +40 -0
- package/docs/apis/app/runtime/utility/head.md +35 -0
- package/docs/apis/app/runtime/utility/loadable.md +82 -0
- package/docs/community/blog/2022-0708-updates.md +91 -0
- package/docs/community/blog/2022-0910-updates.md +76 -0
- package/docs/community/blog/overview.md +63 -0
- package/docs/community/blog/v2-release-note.md +238 -0
- package/docs/community/blog/v3-release-note.md +622 -0
- package/docs/community/contributing-guide.md +253 -0
- package/docs/community/releases.md +27 -0
- package/docs/community/showcase.md +34 -0
- package/docs/community/team.md +14 -0
- package/docs/configure/app/bff/cross-project.md +20 -0
- package/docs/configure/app/bff/prefix.md +29 -0
- package/docs/configure/app/builder-plugins.md +66 -0
- package/docs/configure/app/dev/asset-prefix.md +13 -0
- package/docs/configure/app/dev/before-start-url.md +17 -0
- package/docs/configure/app/dev/client.md +41 -0
- package/docs/configure/app/dev/hmr.md +10 -0
- package/docs/configure/app/dev/host.md +18 -0
- package/docs/configure/app/dev/https.md +77 -0
- package/docs/configure/app/dev/lazy-compilation.md +39 -0
- package/docs/configure/app/dev/live-reload.md +10 -0
- package/docs/configure/app/dev/mock-dir.md +31 -0
- package/docs/configure/app/dev/progress-bar.md +19 -0
- package/docs/configure/app/dev/server.md +124 -0
- package/docs/configure/app/dev/setup-middlewares.md +32 -0
- package/docs/configure/app/dev/start-url.md +48 -0
- package/docs/configure/app/dev/watch-files.md +27 -0
- package/docs/configure/app/dev/write-to-disk.md +10 -0
- package/docs/configure/app/experiments/source-build.md +31 -0
- package/docs/configure/app/html/app-icon.md +28 -0
- package/docs/configure/app/html/crossorigin.md +10 -0
- package/docs/configure/app/html/favicon.md +16 -0
- package/docs/configure/app/html/inject.md +10 -0
- package/docs/configure/app/html/meta.md +24 -0
- package/docs/configure/app/html/mount-id.md +10 -0
- package/docs/configure/app/html/output-structure.md +10 -0
- package/docs/configure/app/html/script-loading.md +10 -0
- package/docs/configure/app/html/tags.md +15 -0
- package/docs/configure/app/html/template-parameters.md +33 -0
- package/docs/configure/app/html/template.md +10 -0
- package/docs/configure/app/html/title.md +18 -0
- package/docs/configure/app/output/asset-prefix.md +11 -0
- package/docs/configure/app/output/assets-retry.md +77 -0
- package/docs/configure/app/output/charset.md +10 -0
- package/docs/configure/app/output/clean-dist-path.md +16 -0
- package/docs/configure/app/output/convert-to-rem.md +79 -0
- package/docs/configure/app/output/copy.md +10 -0
- package/docs/configure/app/output/css-modules.md +48 -0
- package/docs/configure/app/output/data-uri-limit.md +26 -0
- package/docs/configure/app/output/disable-css-module-extension.md +55 -0
- package/docs/configure/app/output/disable-inline-runtime-chunk.md +41 -0
- package/docs/configure/app/output/disable-svgr.md +16 -0
- package/docs/configure/app/output/disable-ts-checker.md +49 -0
- package/docs/configure/app/output/dist-path.md +43 -0
- package/docs/configure/app/output/enable-asset-manifest.md +36 -0
- package/docs/configure/app/output/enable-css-module-tsdeclaration.md +28 -0
- package/docs/configure/app/output/enable-inline-route-manifests.md +16 -0
- package/docs/configure/app/output/externals.md +20 -0
- package/docs/configure/app/output/filename-hash.md +10 -0
- package/docs/configure/app/output/filename.md +55 -0
- package/docs/configure/app/output/inject-styles.md +10 -0
- package/docs/configure/app/output/inline-scripts.md +29 -0
- package/docs/configure/app/output/inline-styles.md +29 -0
- package/docs/configure/app/output/legal-comments.md +18 -0
- package/docs/configure/app/output/minify.md +22 -0
- package/docs/configure/app/output/override-browserslist.md +22 -0
- package/docs/configure/app/output/polyfill.md +12 -0
- package/docs/configure/app/output/source-map.md +30 -0
- package/docs/configure/app/output/split-route-chunks.md +16 -0
- package/docs/configure/app/output/ssg.md +81 -0
- package/docs/configure/app/output/ssgByEntries.md +90 -0
- package/docs/configure/app/output/svg-default-export.md +30 -0
- package/docs/configure/app/output/temp-dir.md +20 -0
- package/docs/configure/app/performance/build-cache.md +39 -0
- package/docs/configure/app/performance/chunk-split.md +40 -0
- package/docs/configure/app/performance/dns-prefetch.md +15 -0
- package/docs/configure/app/performance/preconnect.md +16 -0
- package/docs/configure/app/performance/prefetch.md +21 -0
- package/docs/configure/app/performance/preload.md +23 -0
- package/docs/configure/app/performance/print-file-size.md +40 -0
- package/docs/configure/app/performance/profile.md +10 -0
- package/docs/configure/app/performance/remove-console.md +10 -0
- package/docs/configure/app/performance/remove-moment-locale.md +10 -0
- package/docs/configure/app/plugins.md +59 -0
- package/docs/configure/app/resolve/alias-strategy.md +10 -0
- package/docs/configure/app/resolve/alias.md +9 -0
- package/docs/configure/app/resolve/condition-names.md +13 -0
- package/docs/configure/app/resolve/dedupe.md +9 -0
- package/docs/configure/app/resolve/extensions.md +13 -0
- package/docs/configure/app/runtime/0-intro.md +58 -0
- package/docs/configure/app/runtime/plugins.md +58 -0
- package/docs/configure/app/runtime/router.md +35 -0
- package/docs/configure/app/security/check-syntax.md +69 -0
- package/docs/configure/app/security/nonce.md +15 -0
- package/docs/configure/app/security/sri.md +20 -0
- package/docs/configure/app/server/base-url.md +26 -0
- package/docs/configure/app/server/port.md +18 -0
- package/docs/configure/app/server/public-routes.md +22 -0
- package/docs/configure/app/server/routes.md +86 -0
- package/docs/configure/app/server/rsc.md +26 -0
- package/docs/configure/app/server/ssr-by-entries.md +25 -0
- package/docs/configure/app/server/ssr.md +78 -0
- package/docs/configure/app/server/tsconfig-path.md +59 -0
- package/docs/configure/app/source/alias-strategy.md +14 -0
- package/docs/configure/app/source/alias.md +23 -0
- package/docs/configure/app/source/config-dir.md +20 -0
- package/docs/configure/app/source/decorators.md +25 -0
- package/docs/configure/app/source/define.md +16 -0
- package/docs/configure/app/source/disable-default-entries.md +28 -0
- package/docs/configure/app/source/enable-async-entry.md +54 -0
- package/docs/configure/app/source/enable-async-pre-entry.md +26 -0
- package/docs/configure/app/source/entries-dir.md +35 -0
- package/docs/configure/app/source/entries.md +179 -0
- package/docs/configure/app/source/exclude.md +10 -0
- package/docs/configure/app/source/global-vars.md +106 -0
- package/docs/configure/app/source/include.md +36 -0
- package/docs/configure/app/source/main-entry-name.md +24 -0
- package/docs/configure/app/source/pre-entry.md +10 -0
- package/docs/configure/app/source/react-compiler.md +68 -0
- package/docs/configure/app/source/transform-import.md +27 -0
- package/docs/configure/app/split-chunks.md +17 -0
- package/docs/configure/app/tools/autoprefixer.md +44 -0
- package/docs/configure/app/tools/bundler-chain.md +26 -0
- package/docs/configure/app/tools/css-extract.md +33 -0
- package/docs/configure/app/tools/css-loader.md +17 -0
- package/docs/configure/app/tools/dev-server.md +113 -0
- package/docs/configure/app/tools/html-plugin.md +41 -0
- package/docs/configure/app/tools/less.md +81 -0
- package/docs/configure/app/tools/lightningcss-loader.md +35 -0
- package/docs/configure/app/tools/minify-css.md +53 -0
- package/docs/configure/app/tools/postcss.md +34 -0
- package/docs/configure/app/tools/rspack.md +10 -0
- package/docs/configure/app/tools/sass.md +78 -0
- package/docs/configure/app/tools/style-loader.md +10 -0
- package/docs/configure/app/tools/swc.md +65 -0
- package/docs/configure/app/tools/ts-checker.md +109 -0
- package/docs/configure/app/usage.md +276 -0
- package/docs/guides/advanced-features/bff/cross-project.md +109 -0
- package/docs/guides/advanced-features/bff/extend-server.md +120 -0
- package/docs/guides/advanced-features/bff/frameworks.md +124 -0
- package/docs/guides/advanced-features/bff/function.md +314 -0
- package/docs/guides/advanced-features/bff/operators.md +554 -0
- package/docs/guides/advanced-features/bff/sdk.md +116 -0
- package/docs/guides/advanced-features/bff/upload.md +101 -0
- package/docs/guides/advanced-features/bff.md +18 -0
- package/docs/guides/advanced-features/build-performance.md +130 -0
- package/docs/guides/advanced-features/compatibility.md +120 -0
- package/docs/guides/advanced-features/international/advanced.md +128 -0
- package/docs/guides/advanced-features/international/api.md +231 -0
- package/docs/guides/advanced-features/international/best-practices.md +286 -0
- package/docs/guides/advanced-features/international/configuration.md +227 -0
- package/docs/guides/advanced-features/international/locale-detection.md +126 -0
- package/docs/guides/advanced-features/international/quick-start.md +128 -0
- package/docs/guides/advanced-features/international/resource-loading.md +154 -0
- package/docs/guides/advanced-features/international/routing.md +130 -0
- package/docs/guides/advanced-features/international.md +27 -0
- package/docs/guides/advanced-features/low-level.md +46 -0
- package/docs/guides/advanced-features/page-performance/code-split.md +77 -0
- package/docs/guides/advanced-features/page-performance/inline-assets.md +159 -0
- package/docs/guides/advanced-features/page-performance/optimize-bundle.md +97 -0
- package/docs/guides/advanced-features/page-performance/react-compiler.md +69 -0
- package/docs/guides/advanced-features/server-monitor/logger.md +41 -0
- package/docs/guides/advanced-features/server-monitor/metrics.md +58 -0
- package/docs/guides/advanced-features/server-monitor/monitors.md +242 -0
- package/docs/guides/advanced-features/source-build.md +164 -0
- package/docs/guides/advanced-features/web-server.md +288 -0
- package/docs/guides/basic-features/alias.md +102 -0
- package/docs/guides/basic-features/css/css-in-js.md +72 -0
- package/docs/guides/basic-features/css/css-modules.md +212 -0
- package/docs/guides/basic-features/css/css.md +27 -0
- package/docs/guides/basic-features/css/tailwindcss.md +27 -0
- package/docs/guides/basic-features/data/data-cache.md +510 -0
- package/docs/guides/basic-features/data/data-fetch.md +415 -0
- package/docs/guides/basic-features/data/data-write.md +227 -0
- package/docs/guides/basic-features/debug/mock.md +109 -0
- package/docs/guides/basic-features/debug/proxy.md +21 -0
- package/docs/guides/basic-features/debug/rsdoctor.md +62 -0
- package/docs/guides/basic-features/debug/using-storybook.md +112 -0
- package/docs/guides/basic-features/deploy.md +458 -0
- package/docs/guides/basic-features/env-vars.md +177 -0
- package/docs/guides/basic-features/html.md +255 -0
- package/docs/guides/basic-features/output-files.md +141 -0
- package/docs/guides/basic-features/render/before-render.md +108 -0
- package/docs/guides/basic-features/render/overview.md +47 -0
- package/docs/guides/basic-features/render/rsc.md +525 -0
- package/docs/guides/basic-features/render/ssg.md +228 -0
- package/docs/guides/basic-features/render/ssr-cache.md +201 -0
- package/docs/guides/basic-features/render/ssr.md +321 -0
- package/docs/guides/basic-features/render/streaming-ssr.md +264 -0
- package/docs/guides/basic-features/routes/config-routes.md +426 -0
- package/docs/guides/basic-features/routes/routes.md +498 -0
- package/docs/guides/basic-features/static-assets/json-files.md +120 -0
- package/docs/guides/basic-features/static-assets/svg-assets.md +168 -0
- package/docs/guides/basic-features/static-assets/wasm-assets.md +62 -0
- package/docs/guides/basic-features/static-assets.md +160 -0
- package/docs/guides/basic-features/testing/playwright.md +120 -0
- package/docs/guides/basic-features/testing/rstest.md +251 -0
- package/docs/guides/concept/builder.md +37 -0
- package/docs/guides/concept/entries.md +319 -0
- package/docs/guides/concept/server.md +35 -0
- package/docs/guides/get-started/ai-coding-agents.md +58 -0
- package/docs/guides/get-started/glossary.md +63 -0
- package/docs/guides/get-started/introduction.md +36 -0
- package/docs/guides/get-started/quick-start.md +236 -0
- package/docs/guides/get-started/tech-stack.md +82 -0
- package/docs/guides/get-started/upgrade.md +123 -0
- package/docs/guides/topic-detail/module-federation/application.md +116 -0
- package/docs/guides/topic-detail/module-federation/deploy.md +104 -0
- package/docs/guides/topic-detail/module-federation/i18n.md +670 -0
- package/docs/guides/topic-detail/module-federation/introduce.md +35 -0
- package/docs/guides/topic-detail/module-federation/ssr.md +118 -0
- package/docs/guides/topic-detail/module-federation/usage.md +219 -0
- package/docs/guides/troubleshooting/builder.md +110 -0
- package/docs/guides/troubleshooting/cli.md +35 -0
- package/docs/guides/troubleshooting/dependencies.md +119 -0
- package/docs/guides/troubleshooting/hmr.md +144 -0
- package/docs/guides/upgrade/config.md +963 -0
- package/docs/guides/upgrade/entry.md +463 -0
- package/docs/guides/upgrade/other.md +183 -0
- package/docs/guides/upgrade/overview.md +33 -0
- package/docs/guides/upgrade/tailwindcss.md +91 -0
- package/docs/guides/upgrade/web-server.md +109 -0
- package/docs/index.md +33 -0
- package/docs/llms.txt +285 -0
- package/docs/plugin/cli-plugins/api.md +573 -0
- package/docs/plugin/cli-plugins/life-cycle.md +2 -0
- package/docs/plugin/introduction.md +152 -0
- package/docs/plugin/official/cli-plugins/plugin-bff.md +5 -0
- package/docs/plugin/official/cli-plugins/plugin-ssg.md +5 -0
- package/docs/plugin/official/cli-plugins/plugin-styled-components.md +5 -0
- package/docs/plugin/official/cli-plugins.md +4 -0
- package/docs/plugin/plugin-system.md +238 -0
- package/docs/plugin/runtime-plugins/api.md +194 -0
- package/docs/plugin/runtime-plugins/life-cycle.md +2 -0
- package/docs/plugin/server-plugins/api.md +209 -0
- package/docs/plugin/server-plugins/life-cycle.md +13 -0
- package/docs/tutorials/examples/csr-auth.md +9 -0
- package/docs/tutorials/foundations/introduction.md +16 -0
- package/package.json +46 -13
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
# output.convertToRem
|
|
2
|
+
|
|
3
|
+
- **Type:** `boolean | object`
|
|
4
|
+
- **Default:** `false`
|
|
5
|
+
|
|
6
|
+
By setting `output.convertToRem`, Modern.js can do the following things:
|
|
7
|
+
|
|
8
|
+
- Convert px to rem in CSS.
|
|
9
|
+
- Insert runtime code into the HTML template to set the fontSize of the root element.
|
|
10
|
+
|
|
11
|
+
### Boolean Type
|
|
12
|
+
|
|
13
|
+
If `output.convertToRem` is set to `true`, Rem processing capability will be turned on.
|
|
14
|
+
|
|
15
|
+
```js
|
|
16
|
+
export default {
|
|
17
|
+
output: {
|
|
18
|
+
convertToRem: true,
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
At this point, the rem configuration defaults as follows:
|
|
24
|
+
|
|
25
|
+
```js
|
|
26
|
+
{
|
|
27
|
+
enableRuntime: true,
|
|
28
|
+
rootFontSize: 50,
|
|
29
|
+
screenWidth: 375,
|
|
30
|
+
rootFontSize: 50,
|
|
31
|
+
maxRootFontSize: 64,
|
|
32
|
+
widthQueryKey: '',
|
|
33
|
+
excludeEntries: [],
|
|
34
|
+
supportLandscape: false,
|
|
35
|
+
useRootFontSizeBeyondMax: false,
|
|
36
|
+
pxtorem: {
|
|
37
|
+
rootValue: 50,
|
|
38
|
+
unitPrecision: 5,
|
|
39
|
+
propList: ['*'],
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
### Object Type
|
|
45
|
+
|
|
46
|
+
When the value of `output.convertToRem` is `object` type, Modern.js will perform Rem processing based on the current configuration.
|
|
47
|
+
|
|
48
|
+
options:
|
|
49
|
+
|
|
50
|
+
| Name | Type | Default | Description |
|
|
51
|
+
| ------------------------ | ---------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
52
|
+
| enableRuntime | `boolean` | `true` | Whether to generate runtime code to calculate and set the font size of the root element |
|
|
53
|
+
| inlineRuntime | `boolean` | `true` | Whether to inline the runtime code to HTML. If set to `false`, the runtime code will be extracted into a separate `convert-rem.[version].js` file and output to the dist directory |
|
|
54
|
+
| rootFontSize | `number` | `50` | The root element font size |
|
|
55
|
+
| maxRootFontSize | `number` | `64` | The root element max font size |
|
|
56
|
+
| widthQueryKey | `string` | `'' ` | Get clientWidth from the url query based on widthQueryKey |
|
|
57
|
+
| screenWidth | `number` | `375` | The screen width for UI design drawings (Usually, `fontSize = (clientWidth * rootFontSize) / screenWidth`) |
|
|
58
|
+
| excludeEntries | `string[]` | `[]` | To exclude some page entries from injecting runtime code, it is usually used with `pxtorem.exclude` |
|
|
59
|
+
| supportLandscape | `boolean` | `false` | Use height to calculate rem in landscape |
|
|
60
|
+
| useRootFontSizeBeyondMax | `boolean` | `false` | Whether to use rootFontSize when large than maxRootFontSize |
|
|
61
|
+
| pxtorem | `object` | <ul><li>rootValue (Default is the same as rootFontSize) </li><li>unitPrecision: 5 </li><li>propList: \['\*']</li></ul> | [postcss-pxtorem](https://github.com/cuth/postcss-pxtorem#options) options |
|
|
62
|
+
|
|
63
|
+
### Example
|
|
64
|
+
|
|
65
|
+
```js
|
|
66
|
+
export default {
|
|
67
|
+
output: {
|
|
68
|
+
convertToRem: {
|
|
69
|
+
rootFontSize: 30,
|
|
70
|
+
excludeEntries: ['404', 'page2'],
|
|
71
|
+
pxtorem: {
|
|
72
|
+
propList: ['font-size'],
|
|
73
|
+
},
|
|
74
|
+
},
|
|
75
|
+
},
|
|
76
|
+
};
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
For detailed usage, please refer to [rsbuild-plugin-rem](https://github.com/rstackjs/rsbuild-plugin-rem).
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# output.copy
|
|
2
|
+
|
|
3
|
+
- **Type:**`Rspack.CopyRspackPluginOptions | Rspack.CopyRspackPluginOptions['patterns']`
|
|
4
|
+
- **Default:** `undefined`
|
|
5
|
+
|
|
6
|
+
Copies the specified file or directory to the dist directory, implemented based on [rspack.CopyRspackPlugin](https://rspack.rs/zh/plugins/rspack/copy-rspack-plugin).
|
|
7
|
+
|
|
8
|
+
:::info
|
|
9
|
+
The usage of this configuration item is exactly the same as that of Rsbuild. For detailed information, please refer to [Rsbuild - output.copy](https://v2.rsbuild.dev/config/output/copy).
|
|
10
|
+
:::
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# output.cssModules
|
|
2
|
+
|
|
3
|
+
- **Type:**
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type CssModules = {
|
|
7
|
+
auto?:
|
|
8
|
+
| boolean
|
|
9
|
+
| RegExp
|
|
10
|
+
| ((
|
|
11
|
+
resourcePath: string,
|
|
12
|
+
resourceQuery: string,
|
|
13
|
+
resourceFragment: string,
|
|
14
|
+
) => boolean);
|
|
15
|
+
exportLocalsConvention?:
|
|
16
|
+
| 'asIs'
|
|
17
|
+
| 'camelCase'
|
|
18
|
+
| 'camelCaseOnly'
|
|
19
|
+
| 'dashes'
|
|
20
|
+
| 'dashesOnly';
|
|
21
|
+
exportGlobals?: boolean;
|
|
22
|
+
localIdentName?: string;
|
|
23
|
+
mode?:
|
|
24
|
+
| 'local'
|
|
25
|
+
| 'global'
|
|
26
|
+
| 'pure'
|
|
27
|
+
| 'icss'
|
|
28
|
+
| ((resourcePath: string) => 'local' | 'global' | 'pure' | 'icss');
|
|
29
|
+
namedExport?: boolean;
|
|
30
|
+
};
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
- **Default:**
|
|
34
|
+
|
|
35
|
+
```ts
|
|
36
|
+
const defaultCssModules = {
|
|
37
|
+
auto: true,
|
|
38
|
+
namedExport: false,
|
|
39
|
+
exportGlobals: false,
|
|
40
|
+
exportLocalsConvention: 'camelCase',
|
|
41
|
+
};
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
For custom CSS Modules configuration.
|
|
45
|
+
|
|
46
|
+
:::info
|
|
47
|
+
The usage of this configuration item is exactly the same as that of Rsbuild. For detailed information, please refer to [Rsbuild - output.cssModules](https://v2.rsbuild.dev/config/output/css-modules).
|
|
48
|
+
:::
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# output.dataUriLimit
|
|
2
|
+
|
|
3
|
+
- **Type:**
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type DataUriLimitConfig =
|
|
7
|
+
| number
|
|
8
|
+
| {
|
|
9
|
+
svg?: number;
|
|
10
|
+
font?: number;
|
|
11
|
+
image?: number;
|
|
12
|
+
media?: number;
|
|
13
|
+
};
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
- **Default:**
|
|
17
|
+
|
|
18
|
+
```js
|
|
19
|
+
const defaultDatUriLimit = 10000;
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
Set the size threshold to inline static assets such as images and fonts.
|
|
23
|
+
|
|
24
|
+
:::info
|
|
25
|
+
The usage of this configuration item is exactly the same as that of Rsbuild. For detailed information, please refer to [Rsbuild - output.dataUriLimit](https://v2.rsbuild.dev/config/output/data-uri-limit).
|
|
26
|
+
:::
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
# output.disableCssModuleExtension
|
|
2
|
+
|
|
3
|
+
- **Type:** `boolean`
|
|
4
|
+
- **Default:** `false`
|
|
5
|
+
|
|
6
|
+
Whether to treat all `.css` files in the source directory as CSS Modules.
|
|
7
|
+
|
|
8
|
+
By default, only the `*.module.css` files are treated as CSS Modules. After enabling this config, all `*.css` style files in the source directory will be regarded as CSS Modules.
|
|
9
|
+
|
|
10
|
+
`.sass`, `.scss` and `.less` files are also affected by `disableCssModuleExtension`.
|
|
11
|
+
|
|
12
|
+
:::tip
|
|
13
|
+
We do not recommend enabling this config, because after enabling `disableCssModuleExtension`, CSS Modules files and ordinary CSS files cannot be clearly distinguished, which is not conducive to long-term maintenance.
|
|
14
|
+
:::
|
|
15
|
+
|
|
16
|
+
### Example
|
|
17
|
+
|
|
18
|
+
```js
|
|
19
|
+
export default {
|
|
20
|
+
output: {
|
|
21
|
+
disableCssModuleExtension: true,
|
|
22
|
+
},
|
|
23
|
+
};
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
### Detailed
|
|
27
|
+
|
|
28
|
+
The following is a detailed explanation of the CSS Modules rules:
|
|
29
|
+
|
|
30
|
+
#### disableCssModuleExtension is false (default)
|
|
31
|
+
|
|
32
|
+
The following files are treated as CSS Modules:
|
|
33
|
+
|
|
34
|
+
- all `*.module.css` files
|
|
35
|
+
|
|
36
|
+
The following files are treated as normal CSS:
|
|
37
|
+
|
|
38
|
+
- all `*.css` files (excluding `.module`)
|
|
39
|
+
- all `*.global.css` files
|
|
40
|
+
|
|
41
|
+
#### disableCssModuleExtension is true
|
|
42
|
+
|
|
43
|
+
The following files are treated as CSS Modules:
|
|
44
|
+
|
|
45
|
+
- `*.css` and `*.module.css` files in the source directory
|
|
46
|
+
- `*.module.css` files under node\_modules
|
|
47
|
+
|
|
48
|
+
The following files are treated as normal CSS:
|
|
49
|
+
|
|
50
|
+
- all `*.global.css` files
|
|
51
|
+
- `*.css` files under node\_modules (without `.module`)
|
|
52
|
+
|
|
53
|
+
:::tip
|
|
54
|
+
For CSS Modules files inside node\_modules, please always use the `*.module.css` suffix.
|
|
55
|
+
:::
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# output.disableInlineRuntimeChunk
|
|
2
|
+
|
|
3
|
+
- **Type:** `boolean`
|
|
4
|
+
- **Default:** `false`
|
|
5
|
+
|
|
6
|
+
Used to control whether to inline the bundler's runtime code into HTML.
|
|
7
|
+
|
|
8
|
+
:::tip What is runtimeChunk
|
|
9
|
+
Modern.js will generate a `builder-runtime.js` file in the dist directory, which is the runtime code of Rspack.
|
|
10
|
+
|
|
11
|
+
runtimeChunk is a piece of runtime code, which is provided by Rspack, that contains the necessary module processing logic, such as module loading, module parsing, etc. See [Runtime Chunk](https://rspack.rs/config/optimization#optimizationruntimechunk) for details.
|
|
12
|
+
|
|
13
|
+
:::
|
|
14
|
+
|
|
15
|
+
In the production environment, Modern.js will inline the runtimeChunk file into the HTML file by default instead of writing it to the dist directory. This is done to reduce the number of file requests.
|
|
16
|
+
|
|
17
|
+
### Disable Inlining
|
|
18
|
+
|
|
19
|
+
If you don't want the runtimeChunk file to be inlined into the HTML file, you can set `disableInlineRuntimeChunk` to `true` and a separate `builder-runtime.js` file will be generated.
|
|
20
|
+
|
|
21
|
+
```js
|
|
22
|
+
export default {
|
|
23
|
+
output: {
|
|
24
|
+
disableInlineRuntimeChunk: true,
|
|
25
|
+
},
|
|
26
|
+
};
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
### Merge Into Page Chunk
|
|
30
|
+
|
|
31
|
+
If you don't want to generate a separate runtimeChunk file, but want the runtimeChunk code to be bundled into the page chunk, you can set the config like this:
|
|
32
|
+
|
|
33
|
+
```js
|
|
34
|
+
export default {
|
|
35
|
+
tools: {
|
|
36
|
+
bundlerChain(chain) {
|
|
37
|
+
chain.optimization.runtimeChunk(false);
|
|
38
|
+
},
|
|
39
|
+
},
|
|
40
|
+
};
|
|
41
|
+
```
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# output.disableSvgr
|
|
2
|
+
|
|
3
|
+
- **Type:** `boolean`
|
|
4
|
+
- **Default:** `false`
|
|
5
|
+
|
|
6
|
+
Whether to transform SVGs into React components. If true, will treat all .svg files as assets.
|
|
7
|
+
|
|
8
|
+
By default, when an SVG resource is referenced in a JS file, Modern.js will call SVGR to convert the SVG into a React component. If you are sure that all SVG resources in your project are not being used as React components, you can turn off this conversion by setting `disableSvgr` to true to improve build performance.
|
|
9
|
+
|
|
10
|
+
```js
|
|
11
|
+
export default {
|
|
12
|
+
output: {
|
|
13
|
+
disableSvgr: true,
|
|
14
|
+
},
|
|
15
|
+
};
|
|
16
|
+
```
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
# output.disableTsChecker
|
|
2
|
+
|
|
3
|
+
- **Type:** `boolean`
|
|
4
|
+
- **Default:** `false`
|
|
5
|
+
|
|
6
|
+
Whether to disable TypeScript type checker during compilation.
|
|
7
|
+
|
|
8
|
+
By default, Modern.js will run the TypeScript type checker in a separate process during the build process. Its checking logic is consistent with TypeScript's native `tsc` command. You can use `tsconfig.json` or `tools.tsChecker` config to customize the checking behavior.
|
|
9
|
+
|
|
10
|
+
### Blocking Compilation
|
|
11
|
+
|
|
12
|
+
- In development build, type errors will not block the compilation process.
|
|
13
|
+
- In production build, type errors will cause the build to fail to ensure the stability of the production code.
|
|
14
|
+
|
|
15
|
+
### Example
|
|
16
|
+
|
|
17
|
+
Disable TypeScript type checker:
|
|
18
|
+
|
|
19
|
+
```js
|
|
20
|
+
export default {
|
|
21
|
+
output: {
|
|
22
|
+
disableTsChecker: true,
|
|
23
|
+
},
|
|
24
|
+
};
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
Disable type checker in development:
|
|
28
|
+
|
|
29
|
+
```js
|
|
30
|
+
export default {
|
|
31
|
+
output: {
|
|
32
|
+
disableTsChecker: process.env.NODE_ENV === 'development',
|
|
33
|
+
},
|
|
34
|
+
};
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
Disable type checker in production:
|
|
38
|
+
|
|
39
|
+
```js
|
|
40
|
+
export default {
|
|
41
|
+
output: {
|
|
42
|
+
disableTsChecker: process.env.NODE_ENV === 'production',
|
|
43
|
+
},
|
|
44
|
+
};
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
:::tip
|
|
48
|
+
It is not recommended to disable type checker in production, which will reduce the stability of the production code, please use it with caution.
|
|
49
|
+
:::
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# output.distPath
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
- **Type:**
|
|
5
|
+
|
|
6
|
+
```ts
|
|
7
|
+
type DistPathConfig = {
|
|
8
|
+
root?: string;
|
|
9
|
+
html?: string;
|
|
10
|
+
js?: string;
|
|
11
|
+
css?: string;
|
|
12
|
+
svg?: string;
|
|
13
|
+
font?: string;
|
|
14
|
+
wasm?: string;
|
|
15
|
+
image?: string;
|
|
16
|
+
media?: string;
|
|
17
|
+
worker?: string;
|
|
18
|
+
assets?: string;
|
|
19
|
+
};
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
- **Default:**
|
|
23
|
+
|
|
24
|
+
```js
|
|
25
|
+
const defaultDistPath = {
|
|
26
|
+
root: 'dist',
|
|
27
|
+
css: 'static/css',
|
|
28
|
+
svg: 'static/svg',
|
|
29
|
+
font: 'static/font',
|
|
30
|
+
html: 'html',
|
|
31
|
+
wasm: 'static/wasm',
|
|
32
|
+
image: 'static/image',
|
|
33
|
+
media: 'static/media',
|
|
34
|
+
js: 'static/js',
|
|
35
|
+
assets: 'static/assets',
|
|
36
|
+
};
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
Set the directory of the dist files. Modern.js will output files to the corresponding subdirectory according to the file type.
|
|
40
|
+
|
|
41
|
+
:::info
|
|
42
|
+
The usage of this configuration item is exactly the same as that of Rsbuild. For detailed information, please refer to [Rsbuild - output.distPath](https://v2.rsbuild.dev/config/output/dist-path).
|
|
43
|
+
:::
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# output.enableAssetManifest
|
|
2
|
+
|
|
3
|
+
- **Type:** `boolean`
|
|
4
|
+
- **Default:** `false`
|
|
5
|
+
|
|
6
|
+
Whether to generate a manifest file that contains information of all assets.
|
|
7
|
+
|
|
8
|
+
### Example
|
|
9
|
+
|
|
10
|
+
Enable asset manifest:
|
|
11
|
+
|
|
12
|
+
```js
|
|
13
|
+
export default {
|
|
14
|
+
output: {
|
|
15
|
+
enableAssetManifest: true,
|
|
16
|
+
},
|
|
17
|
+
};
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
After compiler, there will be a `dist/manifest.json` file:
|
|
21
|
+
|
|
22
|
+
```json
|
|
23
|
+
{
|
|
24
|
+
"files": {
|
|
25
|
+
"main.css": "/static/css/main.45b01211.css",
|
|
26
|
+
"main.js": "/static/js/main.52fd298f.js",
|
|
27
|
+
"html/main/index.html": "/html/main/index.html"
|
|
28
|
+
},
|
|
29
|
+
"entrypoints": ["static/css/main.45b01211.css", "static/js/main.52fd298f.js"]
|
|
30
|
+
}
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
If the current project has multiple types of build artifacts, such as including SSR build artifacts, multiple manifest.json files will be generated.
|
|
34
|
+
|
|
35
|
+
- web artifact: `asset-manifest.json`
|
|
36
|
+
- node artifact: `asset-manifest-node.json`
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# output.enableCssModuleTSDeclaration
|
|
2
|
+
|
|
3
|
+
- **Type:** `boolean`
|
|
4
|
+
- **Default:** `false`
|
|
5
|
+
|
|
6
|
+
Whether to generate a TypeScript declaration file for CSS modules.
|
|
7
|
+
|
|
8
|
+
### Example
|
|
9
|
+
|
|
10
|
+
Enable CSS module TypeScript declaration:
|
|
11
|
+
|
|
12
|
+
```js
|
|
13
|
+
export default {
|
|
14
|
+
output: {
|
|
15
|
+
enableCssModuleTSDeclaration: true,
|
|
16
|
+
},
|
|
17
|
+
};
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
After building, there will be a `.d.ts` file for each CSS module file. For example
|
|
21
|
+
|
|
22
|
+
```ts
|
|
23
|
+
interface CssExports {
|
|
24
|
+
title: string;
|
|
25
|
+
}
|
|
26
|
+
export const cssExports: CssExports;
|
|
27
|
+
export default cssExports;
|
|
28
|
+
```
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# output.disableInlineRouteManifests
|
|
2
|
+
|
|
3
|
+
- **Type:** `boolean`
|
|
4
|
+
- **Default:** `false`
|
|
5
|
+
|
|
6
|
+
When using convention-based routing, the framework injects routing information into the client for optimization purposes. By default, routing information is injected into the html, but when this is configured to `true`, routing information is injected into a separate JS file.
|
|
7
|
+
|
|
8
|
+
Example:
|
|
9
|
+
|
|
10
|
+
```ts
|
|
11
|
+
export default {
|
|
12
|
+
output: {
|
|
13
|
+
disableInlineRouteManifests: true,
|
|
14
|
+
},
|
|
15
|
+
};
|
|
16
|
+
```
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# output.externals
|
|
2
|
+
|
|
3
|
+
- **Type:**
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type Externals =
|
|
7
|
+
| string
|
|
8
|
+
| object
|
|
9
|
+
| function
|
|
10
|
+
| RegExp
|
|
11
|
+
| Array<string | object | function | RegExp>;
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
- **Default:** `undefined`
|
|
15
|
+
|
|
16
|
+
At build time, prevent some `import` dependencies from being packed into bundles in your code, and instead fetch them externally at runtime.
|
|
17
|
+
|
|
18
|
+
:::info
|
|
19
|
+
The usage of this configuration item is exactly the same as that of Rsbuild. For detailed information, please refer to [Rsbuild - output.externals](https://v2.rsbuild.dev/config/output/externals).
|
|
20
|
+
:::
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# output.filenameHash
|
|
2
|
+
|
|
3
|
+
- **Type:** `boolean | string`
|
|
4
|
+
- **Default:** `true`
|
|
5
|
+
|
|
6
|
+
Whether to add a hash value to the filename after the production build.
|
|
7
|
+
|
|
8
|
+
:::info
|
|
9
|
+
The usage of this configuration item is exactly the same as that of Rsbuild. For detailed information, please refer to [Rsbuild - output.filenameHash](https://v2.rsbuild.dev/config/output/filename-hash).
|
|
10
|
+
:::
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
# output.filename
|
|
2
|
+
|
|
3
|
+
:::warning
|
|
4
|
+
|
|
5
|
+
In Modern.js `dev` command or use Modern.js server deployment, don't modify the html output filename. This will cause the page to be 404.
|
|
6
|
+
|
|
7
|
+
:::
|
|
8
|
+
|
|
9
|
+
- **Type:**
|
|
10
|
+
|
|
11
|
+
```ts
|
|
12
|
+
type FilenameConfig = {
|
|
13
|
+
js?:
|
|
14
|
+
| string
|
|
15
|
+
| ((pathData: Rspack.PathData, assetInfo: Rspack.JsAssetInfo) => string);
|
|
16
|
+
css?: string;
|
|
17
|
+
svg?: string;
|
|
18
|
+
font?: string;
|
|
19
|
+
image?: string;
|
|
20
|
+
media?: string;
|
|
21
|
+
assets?: string;
|
|
22
|
+
};
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
- **Default:**
|
|
26
|
+
|
|
27
|
+
```js
|
|
28
|
+
// Development mode
|
|
29
|
+
const devDefaultFilename = {
|
|
30
|
+
js: '[name].js',
|
|
31
|
+
css: '[name].css',
|
|
32
|
+
svg: '[name].[contenthash:8].svg',
|
|
33
|
+
font: '[name].[contenthash:8][ext]',
|
|
34
|
+
image: '[name].[contenthash:8][ext]',
|
|
35
|
+
media: '[name].[contenthash:8][ext]',
|
|
36
|
+
assets: '[name].[contenthash:8][ext]',
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
// Production mode
|
|
40
|
+
const prodDefaultFilename = {
|
|
41
|
+
js: output.target === 'node' ? '[name].js' : '[name].[contenthash:8].js',
|
|
42
|
+
css: '[name].[contenthash:8].css',
|
|
43
|
+
svg: '[name].[contenthash:8].svg',
|
|
44
|
+
font: '[name].[contenthash:8][ext]',
|
|
45
|
+
image: '[name].[contenthash:8][ext]',
|
|
46
|
+
media: '[name].[contenthash:8][ext]',
|
|
47
|
+
assets: '[name].[contenthash:8][ext]',
|
|
48
|
+
};
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
Sets the filename of dist files.
|
|
52
|
+
|
|
53
|
+
:::info
|
|
54
|
+
The usage of this configuration item is exactly the same as that of Rsbuild. For detailed information, please refer to [Rsbuild - output.filename](https://v2.rsbuild.dev/config/output/filename).
|
|
55
|
+
:::
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# output.injectStyles
|
|
2
|
+
|
|
3
|
+
- **Type:** `boolean`
|
|
4
|
+
- **Default:** `false`
|
|
5
|
+
|
|
6
|
+
Whether to inject styles into DOM.
|
|
7
|
+
|
|
8
|
+
:::info
|
|
9
|
+
The usage of this configuration item is exactly the same as that of Rsbuild. For detailed information, please refer to [Rsbuild - output.injectStyles](https://v2.rsbuild.dev/config/output/inject-styles).
|
|
10
|
+
:::
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# output.inlineScripts
|
|
2
|
+
|
|
3
|
+
- **Type:**
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type InlineScriptsTest =
|
|
7
|
+
| RegExp
|
|
8
|
+
| ((params: { size: number; name: string }) => boolean);
|
|
9
|
+
|
|
10
|
+
type InlineScripts =
|
|
11
|
+
| boolean
|
|
12
|
+
| InlineScriptsTest
|
|
13
|
+
| {
|
|
14
|
+
enable?: boolean | 'auto';
|
|
15
|
+
test: InlineScriptsTest;
|
|
16
|
+
};
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
- **Default:** `/builder-runtime([.].+)?\.js$/`
|
|
20
|
+
|
|
21
|
+
Whether to inline output scripts files (.js files) into HTML with `<script>` tags.
|
|
22
|
+
|
|
23
|
+
:::tip
|
|
24
|
+
When using convention-based routing, you need to set [output.splitRouteChunks](/configure/app/output/split-route-chunks.md) to false if this option is turned on.
|
|
25
|
+
:::
|
|
26
|
+
|
|
27
|
+
:::info
|
|
28
|
+
The usage of this configuration item is exactly the same as that of Rsbuild. For detailed information, please refer to [Rsbuild - output.inlineScripts](https://v2.rsbuild.dev/config/output/inline-scripts).
|
|
29
|
+
:::
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# output.inlineStyles
|
|
2
|
+
|
|
3
|
+
- **Type:**
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type InlineStylesTest =
|
|
7
|
+
| RegExp
|
|
8
|
+
| ((params: { size: number; name: string }) => boolean);
|
|
9
|
+
|
|
10
|
+
type InlineStyles =
|
|
11
|
+
| boolean
|
|
12
|
+
| InlineStylesTest
|
|
13
|
+
| {
|
|
14
|
+
enable?: boolean | 'auto';
|
|
15
|
+
test: InlineStylesTest;
|
|
16
|
+
};
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
- **Default:** `false`
|
|
20
|
+
|
|
21
|
+
Whether to inline output style files (.css files) into HTML with `<style>` tags.
|
|
22
|
+
|
|
23
|
+
:::tip
|
|
24
|
+
When using convention-based routing, you need to set [output.splitRouteChunks](/configure/app/output/split-route-chunks.md) to false if this option is turned on.
|
|
25
|
+
:::
|
|
26
|
+
|
|
27
|
+
:::info
|
|
28
|
+
The usage of this configuration item is exactly the same as that of Rsbuild. For detailed information, please refer to [Rsbuild - output.inlineStyles](https://v2.rsbuild.dev/config/output/inline-styles).
|
|
29
|
+
:::
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# output.legalComments
|
|
2
|
+
|
|
3
|
+
- **Type:** `'linked' | 'inline' | 'none'`
|
|
4
|
+
- **Default:** `'linked'`
|
|
5
|
+
|
|
6
|
+
Configure how to handle the legal comment.
|
|
7
|
+
|
|
8
|
+
A "legal comment" is considered to be any statement-level comment in JS or rule-level comment in CSS that contains `@license` or `@preserve` or that starts with `//!` or `/*!`. These comments are preserved in output files by default since that follows the intent of the original authors of the code.
|
|
9
|
+
|
|
10
|
+
This behavior can be configured by using one of the following options:
|
|
11
|
+
|
|
12
|
+
- `linked`: Extract all legal comments to a .LEGAL.txt file and link to them with a comment.
|
|
13
|
+
- `inline`: Preserve all legal comments in original position.
|
|
14
|
+
- `none`: Remove all legal comments.
|
|
15
|
+
|
|
16
|
+
:::info
|
|
17
|
+
The usage of this configuration item is exactly the same as that of Rsbuild. For detailed information, please refer to [Rsbuild - output.legalComments](https://v2.rsbuild.dev/config/output/legal-comments).
|
|
18
|
+
:::
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# output.minify
|
|
2
|
+
|
|
3
|
+
- **Type:**
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type Minify =
|
|
7
|
+
| boolean
|
|
8
|
+
| {
|
|
9
|
+
js?: boolean;
|
|
10
|
+
jsOptions?: SwcJsMinimizerRspackPluginOptions;
|
|
11
|
+
css?: boolean;
|
|
12
|
+
cssOptions?: LightningCssMinimizerRspackPluginOptions;
|
|
13
|
+
};
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
- **Default:** `true`
|
|
17
|
+
|
|
18
|
+
Configure whether to enable code minification in production mode, or to configure minimizer options.
|
|
19
|
+
|
|
20
|
+
:::info
|
|
21
|
+
The usage of this configuration item is exactly the same as that of Rsbuild. For detailed information, please refer to [Rsbuild - output.minify](https://v2.rsbuild.dev/config/output/minify).
|
|
22
|
+
:::
|