@modern-js/main-doc 2.7.0 → 2.9.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1123) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/README.md +15 -18
  3. package/docs/en/apis/app/commands.mdx +299 -0
  4. package/docs/en/apis/app/hooks/api/framework/lambda.mdx +57 -0
  5. package/docs/en/apis/app/hooks/api/functions/api.mdx +81 -0
  6. package/docs/en/apis/app/hooks/src/routes.mdx +90 -0
  7. package/docs/en/apis/app/hooks/src/server.mdx +34 -0
  8. package/docs/en/apis/app/runtime/model/connect.mdx +145 -0
  9. package/docs/en/apis/app/runtime/model/model_.mdx +199 -0
  10. package/docs/en/apis/app/runtime/model/use-model.mdx +89 -0
  11. package/docs/en/apis/app/runtime/router/router.mdx +262 -0
  12. package/docs/en/apis/app/runtime/web-server/hook.mdx +133 -0
  13. package/docs/en/apis/app/runtime/web-server/middleware.mdx +134 -0
  14. package/docs/en/components/enable-bff.mdx +31 -0
  15. package/docs/en/components/init-app.mdx +43 -0
  16. package/docs/en/components/init-rspack-app.mdx +7 -0
  17. package/docs/en/components/prerequisites.mdx +18 -0
  18. package/docs/en/configure/app/bff/enable-handle-web.mdx +24 -0
  19. package/docs/en/configure/app/dev/asset-prefix.mdx +13 -0
  20. package/docs/en/configure/app/dev/before-start-url.mdx +13 -0
  21. package/docs/en/configure/app/dev/hmr.mdx +13 -0
  22. package/docs/en/configure/app/dev/host.mdx +13 -0
  23. package/docs/en/configure/app/dev/https.mdx +13 -0
  24. package/docs/en/configure/app/dev/port.mdx +13 -0
  25. package/docs/en/configure/app/dev/progress-bar.mdx +13 -0
  26. package/docs/en/configure/app/dev/start-url.mdx +13 -0
  27. package/docs/en/configure/app/experiments/lazy-compilation.mdx +13 -0
  28. package/docs/en/configure/app/html/app-icon.mdx +13 -0
  29. package/docs/en/configure/app/html/crossorigin.mdx +13 -0
  30. package/docs/en/configure/app/html/disable-html-folder.mdx +13 -0
  31. package/docs/en/configure/app/html/favicon-by-entries.mdx +13 -0
  32. package/docs/en/configure/app/html/favicon.mdx +13 -0
  33. package/docs/en/configure/app/html/inject-by-entries.mdx +13 -0
  34. package/docs/en/configure/app/html/inject.mdx +13 -0
  35. package/docs/en/configure/app/html/meta-by-entries.mdx +13 -0
  36. package/docs/en/configure/app/html/meta.mdx +13 -0
  37. package/docs/en/configure/app/html/mount-id.mdx +13 -0
  38. package/docs/en/configure/app/html/tags-by-entries.mdx +13 -0
  39. package/docs/en/configure/app/html/tags.mdx +13 -0
  40. package/docs/en/configure/app/html/template-by-entries.mdx +13 -0
  41. package/docs/en/configure/app/html/template-parameters-by-entries.mdx +13 -0
  42. package/docs/en/configure/app/html/template-parameters.mdx +13 -0
  43. package/docs/en/configure/app/html/template.mdx +13 -0
  44. package/docs/en/configure/app/html/title-by-entries.mdx +13 -0
  45. package/docs/en/configure/app/html/title.mdx +13 -0
  46. package/docs/en/configure/app/output/asset-prefix.mdx +13 -0
  47. package/docs/en/configure/app/output/assets-retry.mdx +13 -0
  48. package/docs/en/configure/app/output/charset.mdx +13 -0
  49. package/docs/en/configure/app/output/clean-dist-path.mdx +13 -0
  50. package/docs/en/configure/app/output/convert-to-rem.mdx +13 -0
  51. package/docs/en/configure/app/output/copy.mdx +13 -0
  52. package/docs/en/configure/app/output/css-module-local-ident-name.mdx +13 -0
  53. package/docs/en/configure/app/output/data-uri-limit.mdx +13 -0
  54. package/docs/en/configure/app/output/disable-css-extract.mdx +13 -0
  55. package/docs/en/configure/app/output/disable-css-module-extension.mdx +13 -0
  56. package/docs/en/configure/app/output/disable-filename-hash.mdx +13 -0
  57. package/docs/en/configure/app/output/disable-inline-runtime-chunk.mdx +13 -0
  58. package/docs/en/configure/app/output/disable-minimize.mdx +13 -0
  59. package/docs/en/configure/app/output/disable-source-map.mdx +13 -0
  60. package/docs/en/configure/app/output/disable-ts-checker.mdx +13 -0
  61. package/docs/en/configure/app/output/dist-path.mdx +13 -0
  62. package/docs/en/configure/app/output/enable-asset-fallback.mdx +13 -0
  63. package/docs/en/configure/app/output/enable-asset-manifest.mdx +13 -0
  64. package/docs/en/configure/app/output/enable-css-module-tsdeclaration.mdx +13 -0
  65. package/docs/en/configure/app/output/enable-inline-scripts.mdx +13 -0
  66. package/docs/en/configure/app/output/enable-inline-styles.mdx +13 -0
  67. package/docs/en/configure/app/output/enable-latest-decorators.mdx +13 -0
  68. package/docs/en/configure/app/output/externals.mdx +13 -0
  69. package/docs/en/configure/app/output/filename.mdx +13 -0
  70. package/docs/en/configure/app/output/legal-comments.mdx +13 -0
  71. package/docs/en/configure/app/output/override-browserslist.mdx +13 -0
  72. package/docs/en/configure/app/output/polyfill.mdx +13 -0
  73. package/docs/en/configure/app/output/ssg.mdx +196 -0
  74. package/docs/en/configure/app/output/svg-default-export.mdx +13 -0
  75. package/docs/en/configure/app/performance/build-cache.mdx +13 -0
  76. package/docs/en/configure/app/performance/bundle-analyze.mdx +13 -0
  77. package/docs/en/configure/app/performance/chunk-split.mdx +13 -0
  78. package/docs/en/configure/app/performance/print-file-size.mdx +13 -0
  79. package/docs/en/configure/app/performance/profile.mdx +13 -0
  80. package/docs/en/configure/app/performance/remove-console.mdx +13 -0
  81. package/docs/en/configure/app/performance/remove-moment-locale.mdx +13 -0
  82. package/docs/en/configure/app/security/check-syntax.mdx +13 -0
  83. package/docs/en/configure/app/security/sri.mdx +13 -0
  84. package/docs/en/configure/app/server/enable-framework-ext.mdx +49 -0
  85. package/docs/en/configure/app/server/public-routes.mdx +26 -0
  86. package/docs/en/configure/app/server/ssr.mdx +38 -0
  87. package/docs/en/configure/app/source/alias.mdx +13 -0
  88. package/docs/en/configure/app/source/compile-js-data-uri.mdx +13 -0
  89. package/docs/en/configure/app/source/define.mdx +13 -0
  90. package/docs/en/configure/app/source/design-system.mdx +1175 -0
  91. package/docs/en/configure/app/source/disable-entry-dirs.mdx +39 -0
  92. package/docs/en/configure/app/source/entries.mdx +123 -0
  93. package/docs/en/configure/app/source/exclude.mdx +13 -0
  94. package/docs/en/configure/app/source/global-vars.mdx +13 -0
  95. package/docs/en/configure/app/source/include.mdx +13 -0
  96. package/docs/en/configure/app/source/module-scopes.mdx +13 -0
  97. package/docs/en/configure/app/source/pre-entry.mdx +13 -0
  98. package/docs/en/configure/app/source/resolve-extension-prefix.mdx +13 -0
  99. package/docs/en/configure/app/source/resolve-main-fields.mdx +13 -0
  100. package/docs/en/configure/app/tools/autoprefixer.mdx +13 -0
  101. package/docs/en/configure/app/tools/babel.mdx +13 -0
  102. package/docs/en/configure/app/tools/css-extract.mdx +13 -0
  103. package/docs/en/configure/app/tools/css-loader.mdx +13 -0
  104. package/docs/en/configure/app/tools/dev-server.mdx +13 -0
  105. package/docs/en/configure/app/tools/html-plugin.mdx +13 -0
  106. package/docs/en/configure/app/tools/inspector.mdx +13 -0
  107. package/docs/en/configure/app/tools/less.mdx +13 -0
  108. package/docs/en/configure/app/tools/minify-css.mdx +13 -0
  109. package/docs/en/configure/app/tools/postcss.mdx +13 -0
  110. package/docs/en/configure/app/tools/pug.mdx +13 -0
  111. package/docs/en/configure/app/tools/rspack.mdx +13 -0
  112. package/docs/en/configure/app/tools/sass.mdx +13 -0
  113. package/docs/en/configure/app/tools/style-loader.mdx +13 -0
  114. package/docs/en/configure/app/tools/styled-components.mdx +13 -0
  115. package/docs/en/configure/app/tools/terser.mdx +13 -0
  116. package/docs/en/configure/app/tools/ts-checker.mdx +13 -0
  117. package/docs/en/configure/app/tools/ts-loader.mdx +13 -0
  118. package/docs/en/configure/app/tools/webpack-chain.mdx +13 -0
  119. package/docs/en/configure/app/tools/webpack.mdx +13 -0
  120. package/docs/en/guides/advanced-features/bff/_category_.json +8 -0
  121. package/docs/en/guides/advanced-features/code-split.mdx +80 -0
  122. package/docs/en/guides/advanced-features/compatibility.mdx +78 -0
  123. package/docs/en/guides/advanced-features/eslint.mdx +148 -0
  124. package/docs/en/guides/advanced-features/low-level.mdx +45 -0
  125. package/docs/en/guides/advanced-features/rspack-start.mdx +61 -0
  126. package/docs/en/guides/advanced-features/ssg.mdx +116 -0
  127. package/docs/en/guides/advanced-features/ssr.mdx +518 -0
  128. package/docs/en/guides/advanced-features/testing.mdx +46 -0
  129. package/docs/en/guides/advanced-features/web-server.mdx +124 -0
  130. package/docs/en/guides/basic-features/data-fetch.mdx +404 -0
  131. package/docs/en/guides/basic-features/env-vars.mdx +174 -0
  132. package/docs/en/guides/basic-features/html.mdx +247 -0
  133. package/docs/en/guides/basic-features/proxy.mdx +61 -0
  134. package/docs/en/guides/concept/builder.mdx +47 -0
  135. package/docs/en/guides/get-started/introduction.mdx +50 -0
  136. package/docs/en/guides/get-started/quick-start.mdx +162 -0
  137. package/docs/en/guides/topic-detail/framework-plugin/extend.mdx +164 -0
  138. package/docs/en/guides/topic-detail/framework-plugin/hook-list.mdx +827 -0
  139. package/docs/en/guides/topic-detail/framework-plugin/hook.mdx +188 -0
  140. package/docs/en/guides/topic-detail/framework-plugin/implement.mdx +246 -0
  141. package/docs/en/guides/topic-detail/framework-plugin/introduction.mdx +50 -0
  142. package/docs/en/guides/topic-detail/framework-plugin/plugin-api.mdx +117 -0
  143. package/docs/en/guides/topic-detail/framework-plugin/relationship.mdx +119 -0
  144. package/docs/en/guides/topic-detail/generator/codesmith/api/npm.mdx +48 -0
  145. package/docs/en/guides/topic-detail/generator/codesmith/develop.mdx +53 -0
  146. package/docs/en/guides/topic-detail/generator/config/app.mdx +82 -0
  147. package/docs/en/guides/topic-detail/generator/plugin/api/input/addInputAfter.mdx +55 -0
  148. package/docs/en/guides/topic-detail/generator/plugin/api/input/addInputBefore.mdx +55 -0
  149. package/docs/en/guides/topic-detail/generator/plugin/api/npm/install.mdx +18 -0
  150. package/docs/en/guides/topic-detail/generator/plugin/develop.mdx +125 -0
  151. package/docs/en/guides/topic-detail/generator/project.mdx +118 -0
  152. package/docs/en/guides/topic-detail/micro-frontend/c01-introduction.mdx +29 -0
  153. package/docs/en/guides/topic-detail/micro-frontend/c02-development.mdx +254 -0
  154. package/docs/en/guides/topic-detail/micro-frontend/c03-main-app.mdx +282 -0
  155. package/docs/en/guides/topic-detail/micro-frontend/c04-communicate.mdx +57 -0
  156. package/docs/en/guides/topic-detail/micro-frontend/c05-mixed-stack.mdx +26 -0
  157. package/docs/en/guides/topic-detail/model/auto-actions.mdx +89 -0
  158. package/docs/en/guides/topic-detail/model/computed-state.mdx +153 -0
  159. package/docs/en/guides/topic-detail/model/define-model.mdx +66 -0
  160. package/docs/en/guides/topic-detail/model/faq.mdx +40 -0
  161. package/docs/en/guides/topic-detail/model/manage-effects.mdx +251 -0
  162. package/docs/en/guides/topic-detail/model/model-communicate.mdx +222 -0
  163. package/docs/en/guides/topic-detail/model/performance.mdx +170 -0
  164. package/docs/en/guides/topic-detail/model/quick-start.mdx +114 -0
  165. package/docs/en/guides/topic-detail/model/redux-integration.mdx +24 -0
  166. package/docs/en/guides/topic-detail/model/test-model.mdx +45 -0
  167. package/docs/en/guides/topic-detail/model/typescript-best-practice.mdx +72 -0
  168. package/docs/en/guides/topic-detail/model/use-model.mdx +247 -0
  169. package/docs/en/guides/topic-detail/model/use-out-of-modernjs.mdx +50 -0
  170. package/docs/en/guides/troubleshooting/cli.mdx +63 -0
  171. package/docs/en/tutorials/first-app/c03-css.mdx +323 -0
  172. package/docs/zh/apis/app/commands.mdx +301 -0
  173. package/docs/zh/apis/app/runtime/model/connect.mdx +143 -0
  174. package/docs/zh/apis/app/runtime/model/model_.mdx +199 -0
  175. package/docs/zh/apis/app/runtime/model/use-model.mdx +89 -0
  176. package/docs/zh/apis/app/runtime/web-server/hook.mdx +132 -0
  177. package/docs/zh/apis/app/runtime/web-server/middleware.mdx +131 -0
  178. package/docs/zh/apis/monorepo/commands/gen-release-note.mdx +32 -0
  179. package/docs/zh/apis/monorepo/commands/new.mdx +39 -0
  180. package/docs/zh/components/default-mwa-generate.mdx +5 -0
  181. package/docs/zh/components/enable-bff.mdx +31 -0
  182. package/docs/zh/components/init-app.mdx +44 -0
  183. package/docs/zh/components/init-rspack-app.mdx +7 -0
  184. package/docs/zh/components/prerequisites.mdx +18 -0
  185. package/docs/zh/components/release-note.mdx +1 -0
  186. package/docs/zh/configure/app/bff/enable-handle-web.mdx +24 -0
  187. package/docs/zh/configure/app/dev/asset-prefix.mdx +13 -0
  188. package/docs/zh/configure/app/dev/before-start-url.mdx +13 -0
  189. package/docs/zh/configure/app/dev/hmr.mdx +13 -0
  190. package/docs/zh/configure/app/dev/host.mdx +13 -0
  191. package/docs/zh/configure/app/dev/https.mdx +13 -0
  192. package/docs/zh/configure/app/dev/port.mdx +13 -0
  193. package/docs/zh/configure/app/dev/progress-bar.mdx +13 -0
  194. package/docs/zh/configure/app/dev/start-url.mdx +13 -0
  195. package/docs/zh/configure/app/experiments/lazy-compilation.mdx +13 -0
  196. package/docs/zh/configure/app/html/app-icon.mdx +13 -0
  197. package/docs/zh/configure/app/html/crossorigin.mdx +13 -0
  198. package/docs/zh/configure/app/html/disable-html-folder.mdx +13 -0
  199. package/docs/zh/configure/app/html/favicon-by-entries.mdx +13 -0
  200. package/docs/zh/configure/app/html/favicon.mdx +13 -0
  201. package/docs/zh/configure/app/html/inject-by-entries.mdx +13 -0
  202. package/docs/zh/configure/app/html/inject.mdx +13 -0
  203. package/docs/zh/configure/app/html/meta-by-entries.mdx +13 -0
  204. package/docs/zh/configure/app/html/meta.mdx +13 -0
  205. package/docs/zh/configure/app/html/mount-id.mdx +13 -0
  206. package/docs/zh/configure/app/html/tags-by-entries.mdx +13 -0
  207. package/docs/zh/configure/app/html/tags.mdx +13 -0
  208. package/docs/zh/configure/app/html/template-by-entries.mdx +13 -0
  209. package/docs/zh/configure/app/html/template-parameters-by-entries.mdx +13 -0
  210. package/docs/zh/configure/app/html/template-parameters.mdx +13 -0
  211. package/docs/zh/configure/app/html/template.mdx +13 -0
  212. package/docs/zh/configure/app/html/title-by-entries.mdx +13 -0
  213. package/docs/zh/configure/app/html/title.mdx +13 -0
  214. package/docs/zh/configure/app/output/asset-prefix.mdx +13 -0
  215. package/docs/zh/configure/app/output/assets-retry.mdx +13 -0
  216. package/docs/zh/configure/app/output/charset.mdx +13 -0
  217. package/docs/zh/configure/app/output/clean-dist-path.mdx +13 -0
  218. package/docs/zh/configure/app/output/convert-to-rem.mdx +13 -0
  219. package/docs/zh/configure/app/output/copy.mdx +13 -0
  220. package/docs/zh/configure/app/output/css-module-local-ident-name.mdx +13 -0
  221. package/docs/zh/configure/app/output/data-uri-limit.mdx +13 -0
  222. package/docs/zh/configure/app/output/disable-css-extract.mdx +13 -0
  223. package/docs/zh/configure/app/output/disable-css-module-extension.mdx +13 -0
  224. package/docs/zh/configure/app/output/disable-filename-hash.mdx +13 -0
  225. package/docs/zh/configure/app/output/disable-inline-runtime-chunk.mdx +13 -0
  226. package/docs/zh/configure/app/output/disable-minimize.mdx +13 -0
  227. package/docs/zh/configure/app/output/disable-source-map.mdx +13 -0
  228. package/docs/zh/configure/app/output/disable-ts-checker.mdx +13 -0
  229. package/docs/zh/configure/app/output/dist-path.mdx +13 -0
  230. package/docs/zh/configure/app/output/enable-asset-fallback.mdx +13 -0
  231. package/docs/zh/configure/app/output/enable-asset-manifest.mdx +13 -0
  232. package/docs/zh/configure/app/output/enable-css-module-tsdeclaration.mdx +13 -0
  233. package/docs/zh/configure/app/output/enable-inline-scripts.mdx +13 -0
  234. package/docs/zh/configure/app/output/enable-inline-styles.mdx +13 -0
  235. package/docs/zh/configure/app/output/enable-latest-decorators.mdx +13 -0
  236. package/docs/zh/configure/app/output/externals.mdx +13 -0
  237. package/docs/zh/configure/app/output/filename.mdx +13 -0
  238. package/docs/zh/configure/app/output/legal-comments.mdx +13 -0
  239. package/docs/zh/configure/app/output/override-browserslist.mdx +13 -0
  240. package/docs/zh/configure/app/output/polyfill.mdx +13 -0
  241. package/docs/zh/configure/app/output/svg-default-export.mdx +13 -0
  242. package/docs/zh/configure/app/performance/build-cache.mdx +13 -0
  243. package/docs/zh/configure/app/performance/bundle-analyze.mdx +13 -0
  244. package/docs/zh/configure/app/performance/chunk-split.mdx +13 -0
  245. package/docs/zh/configure/app/performance/print-file-size.mdx +13 -0
  246. package/docs/zh/configure/app/performance/profile.mdx +13 -0
  247. package/docs/zh/configure/app/performance/remove-console.mdx +13 -0
  248. package/docs/zh/configure/app/performance/remove-moment-locale.mdx +13 -0
  249. package/docs/zh/configure/app/security/check-syntax.mdx +13 -0
  250. package/docs/zh/configure/app/security/sri.mdx +13 -0
  251. package/docs/zh/configure/app/server/enable-framework-ext.mdx +49 -0
  252. package/docs/zh/configure/app/source/alias.mdx +13 -0
  253. package/docs/zh/configure/app/source/compile-js-data-uri.mdx +13 -0
  254. package/docs/zh/configure/app/source/define.mdx +13 -0
  255. package/docs/zh/configure/app/source/exclude.mdx +13 -0
  256. package/docs/zh/configure/app/source/global-vars.mdx +13 -0
  257. package/docs/zh/configure/app/source/include.mdx +13 -0
  258. package/docs/zh/configure/app/source/module-scopes.mdx +13 -0
  259. package/docs/zh/configure/app/source/pre-entry.mdx +13 -0
  260. package/docs/zh/configure/app/source/resolve-extension-prefix.mdx +13 -0
  261. package/docs/zh/configure/app/source/resolve-main-fields.mdx +13 -0
  262. package/docs/zh/configure/app/tools/autoprefixer.mdx +13 -0
  263. package/docs/zh/configure/app/tools/babel.mdx +13 -0
  264. package/docs/zh/configure/app/tools/css-extract.mdx +13 -0
  265. package/docs/zh/configure/app/tools/css-loader.mdx +13 -0
  266. package/docs/zh/configure/app/tools/dev-server.mdx +13 -0
  267. package/docs/zh/configure/app/tools/html-plugin.mdx +13 -0
  268. package/docs/zh/configure/app/tools/inspector.mdx +13 -0
  269. package/docs/zh/configure/app/tools/less.mdx +13 -0
  270. package/docs/zh/configure/app/tools/minify-css.mdx +13 -0
  271. package/docs/zh/configure/app/tools/postcss.mdx +13 -0
  272. package/docs/zh/configure/app/tools/pug.mdx +13 -0
  273. package/docs/zh/configure/app/tools/rspack.mdx +13 -0
  274. package/docs/zh/configure/app/tools/sass.mdx +13 -0
  275. package/docs/zh/configure/app/tools/style-loader.mdx +13 -0
  276. package/docs/zh/configure/app/tools/styled-components.mdx +13 -0
  277. package/docs/zh/configure/app/tools/terser.mdx +13 -0
  278. package/docs/zh/configure/app/tools/ts-checker.mdx +13 -0
  279. package/docs/zh/configure/app/tools/ts-loader.mdx +13 -0
  280. package/docs/zh/configure/app/tools/webpack-chain.mdx +13 -0
  281. package/docs/zh/configure/app/tools/webpack.mdx +13 -0
  282. package/docs/zh/guides/advanced-features/bff/_category_.json +8 -0
  283. package/docs/zh/guides/advanced-features/rspack-start.mdx +62 -0
  284. package/docs/zh/guides/advanced-features/ssr.mdx +507 -0
  285. package/docs/zh/guides/advanced-features/web-server.mdx +122 -0
  286. package/docs/zh/guides/basic-features/mock.mdx +99 -0
  287. package/docs/zh/guides/concept/builder.mdx +47 -0
  288. package/docs/zh/guides/get-started/introduction.mdx +47 -0
  289. package/docs/zh/guides/topic-detail/changesets/changelog.mdx +238 -0
  290. package/docs/zh/guides/topic-detail/changesets/commit.mdx +271 -0
  291. package/docs/zh/guides/topic-detail/changesets/github.mdx +164 -0
  292. package/docs/zh/guides/topic-detail/changesets/release-note.mdx +259 -0
  293. package/docs/zh/guides/topic-detail/framework-plugin/plugin-api.mdx +117 -0
  294. package/docs/zh/guides/topic-detail/generator/plugin/develop.mdx +125 -0
  295. package/docs/zh/guides/topic-detail/model/faq.mdx +41 -0
  296. package/docs/zh/guides/topic-detail/model/manage-effects.mdx +260 -0
  297. package/docs/zh/guides/topic-detail/model/model-communicate.mdx +220 -0
  298. package/docs/zh/guides/topic-detail/model/performance.mdx +171 -0
  299. package/docs/zh/guides/topic-detail/model/quick-start.mdx +113 -0
  300. package/docs/zh/guides/topic-detail/model/use-model.mdx +252 -0
  301. package/docs/zh/guides/topic-detail/monorepo/create-sub-project.mdx +67 -0
  302. package/docs/zh/guides/topic-detail/monorepo/sub-project-interface.mdx +179 -0
  303. package/docs/zh/index.md +4 -0
  304. package/en/configure/app/dev/asset-prefix.mdx +1 -1
  305. package/en/configure/app/dev/before-start-url.mdx +1 -1
  306. package/en/configure/app/dev/hmr.mdx +1 -1
  307. package/en/configure/app/dev/host.mdx +1 -1
  308. package/en/configure/app/dev/https.mdx +1 -1
  309. package/en/configure/app/dev/port.mdx +1 -1
  310. package/en/configure/app/dev/progress-bar.mdx +1 -1
  311. package/en/configure/app/dev/start-url.mdx +1 -1
  312. package/en/configure/app/experiments/lazy-compilation.mdx +1 -1
  313. package/en/configure/app/html/app-icon.mdx +1 -1
  314. package/en/configure/app/html/crossorigin.mdx +1 -1
  315. package/en/configure/app/html/disable-html-folder.mdx +1 -1
  316. package/en/configure/app/html/favicon-by-entries.mdx +1 -1
  317. package/en/configure/app/html/favicon.mdx +1 -1
  318. package/en/configure/app/html/inject-by-entries.mdx +1 -1
  319. package/en/configure/app/html/inject.mdx +1 -1
  320. package/en/configure/app/html/meta-by-entries.mdx +1 -1
  321. package/en/configure/app/html/meta.mdx +1 -1
  322. package/en/configure/app/html/mount-id.mdx +1 -1
  323. package/en/configure/app/html/tags-by-entries.mdx +1 -1
  324. package/en/configure/app/html/tags.mdx +1 -1
  325. package/en/configure/app/html/template-by-entries.mdx +1 -1
  326. package/en/configure/app/html/template-parameters-by-entries.mdx +1 -1
  327. package/en/configure/app/html/template-parameters.mdx +1 -1
  328. package/en/configure/app/html/template.mdx +1 -1
  329. package/en/configure/app/html/title-by-entries.mdx +1 -1
  330. package/en/configure/app/html/title.mdx +1 -1
  331. package/en/configure/app/output/asset-prefix.mdx +1 -1
  332. package/en/configure/app/output/assets-retry.mdx +1 -1
  333. package/en/configure/app/output/charset.mdx +1 -1
  334. package/en/configure/app/output/clean-dist-path.mdx +1 -1
  335. package/en/configure/app/output/convert-to-rem.mdx +1 -1
  336. package/en/configure/app/output/copy.mdx +1 -1
  337. package/en/configure/app/output/css-module-local-ident-name.mdx +1 -1
  338. package/en/configure/app/output/data-uri-limit.mdx +1 -1
  339. package/en/configure/app/output/disable-css-extract.mdx +1 -1
  340. package/en/configure/app/output/disable-css-module-extension.mdx +1 -1
  341. package/en/configure/app/output/disable-filename-hash.mdx +1 -1
  342. package/en/configure/app/output/disable-inline-runtime-chunk.mdx +1 -1
  343. package/en/configure/app/output/disable-minimize.mdx +1 -1
  344. package/en/configure/app/output/disable-source-map.mdx +1 -1
  345. package/en/configure/app/output/disable-ts-checker.mdx +1 -1
  346. package/en/configure/app/output/dist-path.mdx +1 -1
  347. package/en/configure/app/output/enable-asset-fallback.mdx +1 -1
  348. package/en/configure/app/output/enable-asset-manifest.mdx +1 -1
  349. package/en/configure/app/output/enable-css-module-tsdeclaration.mdx +1 -1
  350. package/en/configure/app/output/enable-inline-scripts.mdx +1 -1
  351. package/en/configure/app/output/enable-inline-styles.mdx +1 -1
  352. package/en/configure/app/output/enable-latest-decorators.mdx +1 -1
  353. package/en/configure/app/output/externals.mdx +1 -1
  354. package/en/configure/app/output/filename.mdx +1 -1
  355. package/en/configure/app/output/legal-comments.mdx +1 -1
  356. package/en/configure/app/output/override-browserslist.mdx +1 -1
  357. package/en/configure/app/output/polyfill.mdx +1 -1
  358. package/en/configure/app/output/svg-default-export.mdx +1 -1
  359. package/en/configure/app/performance/build-cache.mdx +1 -1
  360. package/en/configure/app/performance/bundle-analyze.mdx +1 -1
  361. package/en/configure/app/performance/chunk-split.mdx +1 -1
  362. package/en/configure/app/performance/print-file-size.mdx +1 -1
  363. package/en/configure/app/performance/profile.mdx +1 -1
  364. package/en/configure/app/performance/remove-console.mdx +1 -1
  365. package/en/configure/app/performance/remove-moment-locale.mdx +1 -1
  366. package/en/configure/app/security/check-syntax.mdx +1 -1
  367. package/en/configure/app/security/sri.mdx +1 -1
  368. package/en/configure/app/source/alias.mdx +1 -1
  369. package/en/configure/app/source/compile-js-data-uri.mdx +1 -1
  370. package/en/configure/app/source/define.mdx +1 -1
  371. package/en/configure/app/source/exclude.mdx +1 -1
  372. package/en/configure/app/source/global-vars.mdx +1 -1
  373. package/en/configure/app/source/include.mdx +1 -1
  374. package/en/configure/app/source/module-scopes.mdx +1 -1
  375. package/en/configure/app/source/pre-entry.mdx +1 -1
  376. package/en/configure/app/source/resolve-extension-prefix.mdx +1 -1
  377. package/en/configure/app/source/resolve-main-fields.mdx +1 -1
  378. package/en/configure/app/tools/autoprefixer.mdx +1 -1
  379. package/en/configure/app/tools/babel.mdx +1 -1
  380. package/en/configure/app/tools/css-extract.mdx +1 -1
  381. package/en/configure/app/tools/css-loader.mdx +1 -1
  382. package/en/configure/app/tools/dev-server.mdx +1 -1
  383. package/en/configure/app/tools/html-plugin.mdx +1 -1
  384. package/en/configure/app/tools/inspector.mdx +1 -1
  385. package/en/configure/app/tools/less.mdx +1 -1
  386. package/en/configure/app/tools/minify-css.mdx +1 -1
  387. package/en/configure/app/tools/postcss.mdx +1 -1
  388. package/en/configure/app/tools/pug.mdx +1 -1
  389. package/en/configure/app/tools/rspack.mdx +1 -1
  390. package/en/configure/app/tools/sass.mdx +1 -1
  391. package/en/configure/app/tools/style-loader.mdx +1 -1
  392. package/en/configure/app/tools/styled-components.mdx +1 -1
  393. package/en/configure/app/tools/terser.mdx +1 -1
  394. package/en/configure/app/tools/ts-checker.mdx +1 -1
  395. package/en/configure/app/tools/ts-loader.mdx +1 -1
  396. package/en/configure/app/tools/webpack-chain.mdx +1 -1
  397. package/en/configure/app/tools/webpack.mdx +1 -1
  398. package/modern.config.ts +157 -0
  399. package/package.json +16 -7
  400. package/src/components/ContentCard/index.module.scss +61 -0
  401. package/src/components/ContentCard/index.tsx +25 -0
  402. package/src/components/FeatureLayout/index.module.css +8 -0
  403. package/src/components/FeatureLayout/index.tsx +8 -0
  404. package/src/components/Footer/index.tsx +131 -0
  405. package/src/components/Footer/styles.module.scss +49 -0
  406. package/src/components/ListCard/index.module.css +58 -0
  407. package/src/components/ListCard/index.tsx +26 -0
  408. package/src/components/SecondaryTitle/index.module.css +14 -0
  409. package/src/components/SecondaryTitle/index.tsx +15 -0
  410. package/src/global.d.ts +28 -0
  411. package/src/i18n/enUS.ts +50 -0
  412. package/src/i18n/index.ts +18 -0
  413. package/src/i18n/zhCN.ts +50 -0
  414. package/src/index.ts +9 -0
  415. package/src/pages/index.module.scss +238 -0
  416. package/src/pages/index.tsx +162 -0
  417. package/static/img/favicon.ico +0 -0
  418. package/static/img/features/ai.svg +1 -0
  419. package/static/img/features/api.svg +1 -0
  420. package/static/img/features/app.svg +1 -0
  421. package/static/img/features/blocks.svg +1 -0
  422. package/static/img/features/browser.svg +12 -0
  423. package/static/img/features/cloud.svg +1 -0
  424. package/static/img/features/coding-backend.svg +1 -0
  425. package/static/img/features/compiler.svg +1 -0
  426. package/static/img/features/css-file.svg +1 -0
  427. package/static/img/features/customize.svg +1 -0
  428. package/static/img/features/developer.svg +1 -0
  429. package/static/img/features/dynamic.svg +1 -0
  430. package/static/img/features/editor.svg +1 -0
  431. package/static/img/features/framework-config.svg +1 -0
  432. package/static/img/features/framework.svg +1 -0
  433. package/static/img/features/frameworks.svg +1 -0
  434. package/static/img/features/html.svg +1 -0
  435. package/static/img/features/icon2.svg +1 -0
  436. package/static/img/features/javascript.svg +1 -0
  437. package/static/img/features/monorepo.svg +1 -0
  438. package/static/img/features/product.svg +1 -0
  439. package/static/img/features/server-network.svg +1 -0
  440. package/static/img/features/serverless.svg +1 -0
  441. package/static/img/features/test.svg +1 -0
  442. package/static/img/features/trinity.svg +1 -0
  443. package/static/img/features/unity.svg +1 -0
  444. package/static/img/features/url.svg +1 -0
  445. package/static/img/features/visual.svg +1 -0
  446. package/static/img/features/web-server.svg +1 -0
  447. package/zh/configure/app/dev/asset-prefix.mdx +1 -1
  448. package/zh/configure/app/dev/before-start-url.mdx +1 -1
  449. package/zh/configure/app/dev/hmr.mdx +1 -1
  450. package/zh/configure/app/dev/host.mdx +1 -1
  451. package/zh/configure/app/dev/https.mdx +1 -1
  452. package/zh/configure/app/dev/port.mdx +1 -1
  453. package/zh/configure/app/dev/progress-bar.mdx +1 -1
  454. package/zh/configure/app/dev/start-url.mdx +1 -1
  455. package/zh/configure/app/experiments/lazy-compilation.mdx +1 -1
  456. package/zh/configure/app/html/app-icon.mdx +1 -1
  457. package/zh/configure/app/html/crossorigin.mdx +1 -1
  458. package/zh/configure/app/html/disable-html-folder.mdx +1 -1
  459. package/zh/configure/app/html/favicon-by-entries.mdx +1 -1
  460. package/zh/configure/app/html/favicon.mdx +1 -1
  461. package/zh/configure/app/html/inject-by-entries.mdx +1 -1
  462. package/zh/configure/app/html/inject.mdx +1 -1
  463. package/zh/configure/app/html/meta-by-entries.mdx +1 -1
  464. package/zh/configure/app/html/meta.mdx +1 -1
  465. package/zh/configure/app/html/mount-id.mdx +1 -1
  466. package/zh/configure/app/html/tags-by-entries.mdx +1 -1
  467. package/zh/configure/app/html/tags.mdx +1 -1
  468. package/zh/configure/app/html/template-by-entries.mdx +1 -1
  469. package/zh/configure/app/html/template-parameters-by-entries.mdx +1 -1
  470. package/zh/configure/app/html/template-parameters.mdx +1 -1
  471. package/zh/configure/app/html/template.mdx +1 -1
  472. package/zh/configure/app/html/title-by-entries.mdx +1 -1
  473. package/zh/configure/app/html/title.mdx +1 -1
  474. package/zh/configure/app/output/asset-prefix.mdx +1 -1
  475. package/zh/configure/app/output/assets-retry.mdx +1 -1
  476. package/zh/configure/app/output/charset.mdx +1 -1
  477. package/zh/configure/app/output/clean-dist-path.mdx +1 -1
  478. package/zh/configure/app/output/convert-to-rem.mdx +1 -1
  479. package/zh/configure/app/output/copy.mdx +1 -1
  480. package/zh/configure/app/output/css-module-local-ident-name.mdx +1 -1
  481. package/zh/configure/app/output/data-uri-limit.mdx +1 -1
  482. package/zh/configure/app/output/disable-css-extract.mdx +1 -1
  483. package/zh/configure/app/output/disable-css-module-extension.mdx +1 -1
  484. package/zh/configure/app/output/disable-filename-hash.mdx +1 -1
  485. package/zh/configure/app/output/disable-inline-runtime-chunk.mdx +1 -1
  486. package/zh/configure/app/output/disable-minimize.mdx +1 -1
  487. package/zh/configure/app/output/disable-source-map.mdx +1 -1
  488. package/zh/configure/app/output/disable-ts-checker.mdx +1 -1
  489. package/zh/configure/app/output/dist-path.mdx +1 -1
  490. package/zh/configure/app/output/enable-asset-fallback.mdx +1 -1
  491. package/zh/configure/app/output/enable-asset-manifest.mdx +1 -1
  492. package/zh/configure/app/output/enable-css-module-tsdeclaration.mdx +1 -1
  493. package/zh/configure/app/output/enable-inline-scripts.mdx +1 -1
  494. package/zh/configure/app/output/enable-inline-styles.mdx +1 -1
  495. package/zh/configure/app/output/enable-latest-decorators.mdx +1 -1
  496. package/zh/configure/app/output/externals.mdx +1 -1
  497. package/zh/configure/app/output/filename.mdx +1 -1
  498. package/zh/configure/app/output/legal-comments.mdx +1 -1
  499. package/zh/configure/app/output/override-browserslist.mdx +1 -1
  500. package/zh/configure/app/output/polyfill.mdx +1 -1
  501. package/zh/configure/app/output/svg-default-export.mdx +1 -1
  502. package/zh/configure/app/performance/build-cache.mdx +1 -1
  503. package/zh/configure/app/performance/bundle-analyze.mdx +1 -1
  504. package/zh/configure/app/performance/chunk-split.mdx +1 -1
  505. package/zh/configure/app/performance/print-file-size.mdx +1 -1
  506. package/zh/configure/app/performance/profile.mdx +1 -1
  507. package/zh/configure/app/performance/remove-console.mdx +1 -1
  508. package/zh/configure/app/performance/remove-moment-locale.mdx +1 -1
  509. package/zh/configure/app/security/check-syntax.mdx +1 -1
  510. package/zh/configure/app/security/sri.mdx +1 -1
  511. package/zh/configure/app/source/alias.mdx +1 -1
  512. package/zh/configure/app/source/compile-js-data-uri.mdx +1 -1
  513. package/zh/configure/app/source/define.mdx +1 -1
  514. package/zh/configure/app/source/exclude.mdx +1 -1
  515. package/zh/configure/app/source/global-vars.mdx +1 -1
  516. package/zh/configure/app/source/include.mdx +1 -1
  517. package/zh/configure/app/source/module-scopes.mdx +1 -1
  518. package/zh/configure/app/source/pre-entry.mdx +1 -1
  519. package/zh/configure/app/source/resolve-extension-prefix.mdx +1 -1
  520. package/zh/configure/app/source/resolve-main-fields.mdx +1 -1
  521. package/zh/configure/app/tools/autoprefixer.mdx +1 -1
  522. package/zh/configure/app/tools/babel.mdx +1 -1
  523. package/zh/configure/app/tools/css-extract.mdx +1 -1
  524. package/zh/configure/app/tools/css-loader.mdx +1 -1
  525. package/zh/configure/app/tools/dev-server.mdx +1 -1
  526. package/zh/configure/app/tools/html-plugin.mdx +1 -1
  527. package/zh/configure/app/tools/inspector.mdx +1 -1
  528. package/zh/configure/app/tools/less.mdx +1 -1
  529. package/zh/configure/app/tools/minify-css.mdx +1 -1
  530. package/zh/configure/app/tools/postcss.mdx +1 -1
  531. package/zh/configure/app/tools/pug.mdx +1 -1
  532. package/zh/configure/app/tools/rspack.mdx +1 -1
  533. package/zh/configure/app/tools/sass.mdx +1 -1
  534. package/zh/configure/app/tools/style-loader.mdx +1 -1
  535. package/zh/configure/app/tools/styled-components.mdx +1 -1
  536. package/zh/configure/app/tools/terser.mdx +1 -1
  537. package/zh/configure/app/tools/ts-checker.mdx +1 -1
  538. package/zh/configure/app/tools/ts-loader.mdx +1 -1
  539. package/zh/configure/app/tools/webpack-chain.mdx +1 -1
  540. package/zh/configure/app/tools/webpack.mdx +1 -1
  541. package/.eslintrc.js +0 -12
  542. package/.turbo/turbo-build.log +0 -4
  543. package/en/apis/app/commands.mdx +0 -297
  544. package/en/apis/app/hooks/api/framework/lambda.mdx +0 -57
  545. package/en/apis/app/hooks/api/functions/api.mdx +0 -81
  546. package/en/apis/app/hooks/src/routes.mdx +0 -90
  547. package/en/apis/app/hooks/src/server.mdx +0 -34
  548. package/en/apis/app/runtime/model/connect.mdx +0 -145
  549. package/en/apis/app/runtime/model/model_.mdx +0 -199
  550. package/en/apis/app/runtime/model/use-model.mdx +0 -89
  551. package/en/apis/app/runtime/router/router.mdx +0 -262
  552. package/en/apis/app/runtime/web-server/hook.mdx +0 -133
  553. package/en/apis/app/runtime/web-server/middleware.mdx +0 -110
  554. package/en/components/enable-bff.mdx +0 -31
  555. package/en/components/init-app.mdx +0 -43
  556. package/en/components/prerequisites.mdx +0 -20
  557. package/en/configure/app/output/ssg.mdx +0 -196
  558. package/en/configure/app/server/enable-framework-ext.mdx +0 -49
  559. package/en/configure/app/server/public-routes.mdx +0 -26
  560. package/en/configure/app/server/ssr.mdx +0 -38
  561. package/en/configure/app/source/design-system.mdx +0 -1175
  562. package/en/configure/app/source/disable-entry-dirs.mdx +0 -39
  563. package/en/configure/app/source/entries.mdx +0 -123
  564. package/en/guides/advanced-features/bff/_category_.json +0 -8
  565. package/en/guides/advanced-features/code-split.mdx +0 -80
  566. package/en/guides/advanced-features/compatibility.mdx +0 -78
  567. package/en/guides/advanced-features/eslint.mdx +0 -150
  568. package/en/guides/advanced-features/low-level.mdx +0 -45
  569. package/en/guides/advanced-features/rspack-start.mdx +0 -69
  570. package/en/guides/advanced-features/ssg.mdx +0 -116
  571. package/en/guides/advanced-features/ssr.mdx +0 -513
  572. package/en/guides/advanced-features/testing.mdx +0 -46
  573. package/en/guides/advanced-features/web-server.mdx +0 -57
  574. package/en/guides/basic-features/data-fetch.mdx +0 -404
  575. package/en/guides/basic-features/env-vars.mdx +0 -174
  576. package/en/guides/basic-features/html.mdx +0 -247
  577. package/en/guides/basic-features/proxy.mdx +0 -61
  578. package/en/guides/concept/builder.mdx +0 -47
  579. package/en/guides/get-started/introduction.mdx +0 -34
  580. package/en/guides/get-started/quick-start.mdx +0 -162
  581. package/en/guides/topic-detail/framework-plugin/hook-list.mdx +0 -828
  582. package/en/guides/topic-detail/framework-plugin/plugin-api.mdx +0 -117
  583. package/en/guides/topic-detail/generator/codesmith/api/npm.mdx +0 -48
  584. package/en/guides/topic-detail/generator/codesmith/develop.mdx +0 -53
  585. package/en/guides/topic-detail/generator/config/app.mdx +0 -82
  586. package/en/guides/topic-detail/generator/plugin/api/input/addInputAfter.mdx +0 -55
  587. package/en/guides/topic-detail/generator/plugin/api/input/addInputBefore.mdx +0 -55
  588. package/en/guides/topic-detail/generator/plugin/api/npm/install.mdx +0 -18
  589. package/en/guides/topic-detail/generator/plugin/develop.mdx +0 -125
  590. package/en/guides/topic-detail/generator/project.mdx +0 -118
  591. package/en/guides/topic-detail/micro-frontend/c02-development.mdx +0 -256
  592. package/en/guides/topic-detail/micro-frontend/c03-main-app.mdx +0 -276
  593. package/en/guides/topic-detail/model/faq.mdx +0 -41
  594. package/en/guides/topic-detail/model/manage-effects.mdx +0 -260
  595. package/en/guides/topic-detail/model/model-communicate.mdx +0 -220
  596. package/en/guides/topic-detail/model/performance.mdx +0 -171
  597. package/en/guides/topic-detail/model/quick-start.mdx +0 -113
  598. package/en/guides/topic-detail/model/use-model.mdx +0 -252
  599. package/en/guides/troubleshooting/cli.mdx +0 -63
  600. package/en/tutorials/first-app/c03-css.mdx +0 -323
  601. package/scripts/config.ts +0 -96
  602. package/scripts/summary.en.json +0 -1
  603. package/scripts/summary.zh.json +0 -1
  604. package/scripts/sync.ts +0 -57
  605. package/tsconfig.json +0 -7
  606. package/zh/apis/app/commands.mdx +0 -299
  607. package/zh/apis/app/runtime/model/connect.mdx +0 -143
  608. package/zh/apis/app/runtime/model/model_.mdx +0 -199
  609. package/zh/apis/app/runtime/model/use-model.mdx +0 -89
  610. package/zh/apis/app/runtime/web-server/hook.mdx +0 -134
  611. package/zh/apis/app/runtime/web-server/middleware.mdx +0 -111
  612. package/zh/apis/monorepo/commands/gen-release-note.mdx +0 -32
  613. package/zh/apis/monorepo/commands/new.mdx +0 -39
  614. package/zh/components/default-mwa-generate.mdx +0 -5
  615. package/zh/components/enable-bff.mdx +0 -31
  616. package/zh/components/init-app.mdx +0 -44
  617. package/zh/components/prerequisites.mdx +0 -20
  618. package/zh/components/release-note.mdx +0 -1
  619. package/zh/configure/app/server/enable-framework-ext.mdx +0 -49
  620. package/zh/guides/advanced-features/bff/_category_.json +0 -8
  621. package/zh/guides/advanced-features/rspack-start.mdx +0 -69
  622. package/zh/guides/advanced-features/ssr.mdx +0 -501
  623. package/zh/guides/advanced-features/web-server.mdx +0 -57
  624. package/zh/guides/basic-features/mock.mdx +0 -99
  625. package/zh/guides/concept/builder.mdx +0 -47
  626. package/zh/guides/get-started/introduction.mdx +0 -31
  627. package/zh/guides/topic-detail/changesets/changelog.mdx +0 -238
  628. package/zh/guides/topic-detail/changesets/commit.mdx +0 -271
  629. package/zh/guides/topic-detail/changesets/github.mdx +0 -164
  630. package/zh/guides/topic-detail/changesets/release-note.mdx +0 -259
  631. package/zh/guides/topic-detail/framework-plugin/extend.mdx +0 -163
  632. package/zh/guides/topic-detail/framework-plugin/hook.mdx +0 -173
  633. package/zh/guides/topic-detail/framework-plugin/implement.mdx +0 -248
  634. package/zh/guides/topic-detail/framework-plugin/introduction.mdx +0 -51
  635. package/zh/guides/topic-detail/framework-plugin/plugin-api.mdx +0 -117
  636. package/zh/guides/topic-detail/framework-plugin/relationship.mdx +0 -119
  637. package/zh/guides/topic-detail/generator/plugin/develop.mdx +0 -125
  638. package/zh/guides/topic-detail/micro-frontend/c01-introduction.mdx +0 -29
  639. package/zh/guides/topic-detail/micro-frontend/c04-communicate.mdx +0 -57
  640. package/zh/guides/topic-detail/micro-frontend/c05-mixed-stack.mdx +0 -26
  641. package/zh/guides/topic-detail/model/auto-actions.mdx +0 -92
  642. package/zh/guides/topic-detail/model/computed-state.mdx +0 -151
  643. package/zh/guides/topic-detail/model/define-model.mdx +0 -66
  644. package/zh/guides/topic-detail/model/faq.mdx +0 -41
  645. package/zh/guides/topic-detail/model/manage-effects.mdx +0 -260
  646. package/zh/guides/topic-detail/model/model-communicate.mdx +0 -220
  647. package/zh/guides/topic-detail/model/performance.mdx +0 -171
  648. package/zh/guides/topic-detail/model/quick-start.mdx +0 -113
  649. package/zh/guides/topic-detail/model/redux-integration.mdx +0 -24
  650. package/zh/guides/topic-detail/model/test-model.mdx +0 -45
  651. package/zh/guides/topic-detail/model/typescript-best-practice.mdx +0 -71
  652. package/zh/guides/topic-detail/model/use-model.mdx +0 -252
  653. package/zh/guides/topic-detail/model/use-out-of-modernjs.mdx +0 -50
  654. package/zh/guides/topic-detail/monorepo/create-sub-project.mdx +0 -67
  655. package/zh/guides/topic-detail/monorepo/sub-project-interface.mdx +0 -179
  656. package/zh/index.md +0 -4
  657. /package/{en → docs/en}/apis/app/hooks/_category_.json +0 -0
  658. /package/{en → docs/en}/apis/app/hooks/api/_category_.json +0 -0
  659. /package/{en → docs/en}/apis/app/hooks/api/framework/_category_.json +0 -0
  660. /package/{en → docs/en}/apis/app/hooks/api/functions/_category_.json +0 -0
  661. /package/{en → docs/en}/apis/app/hooks/api/functions/app.mdx +0 -0
  662. /package/{en → docs/en}/apis/app/hooks/api/functions/common.mdx +0 -0
  663. /package/{en → docs/en}/apis/app/hooks/api/test.mdx +0 -0
  664. /package/{en → docs/en}/apis/app/hooks/config/_category_.json +0 -0
  665. /package/{en → docs/en}/apis/app/hooks/config/html.mdx +0 -0
  666. /package/{en → docs/en}/apis/app/hooks/config/icon.mdx +0 -0
  667. /package/{en → docs/en}/apis/app/hooks/config/mock.mdx +0 -0
  668. /package/{en → docs/en}/apis/app/hooks/config/public.mdx +0 -0
  669. /package/{en → docs/en}/apis/app/hooks/config/storybook.mdx +0 -0
  670. /package/{en → docs/en}/apis/app/hooks/config/upload.mdx +0 -0
  671. /package/{en → docs/en}/apis/app/hooks/modern-config.mdx +0 -0
  672. /package/{en → docs/en}/apis/app/hooks/server/_category_.json +0 -0
  673. /package/{en → docs/en}/apis/app/hooks/server/index_.mdx +0 -0
  674. /package/{en → docs/en}/apis/app/hooks/server/test.mdx +0 -0
  675. /package/{en → docs/en}/apis/app/hooks/shared.mdx +0 -0
  676. /package/{en → docs/en}/apis/app/hooks/src/_category_.json +0 -0
  677. /package/{en → docs/en}/apis/app/hooks/src/app.mdx +0 -0
  678. /package/{en → docs/en}/apis/app/hooks/src/index_.mdx +0 -0
  679. /package/{en → docs/en}/apis/app/hooks/src/pages.mdx +0 -0
  680. /package/{en → docs/en}/apis/app/hooks/src/stories.mdx +0 -0
  681. /package/{en → docs/en}/apis/app/hooks/src/test.mdx +0 -0
  682. /package/{en → docs/en}/apis/app/runtime/_category_.json +0 -0
  683. /package/{en → docs/en}/apis/app/runtime/app/_category_.json +0 -0
  684. /package/{en → docs/en}/apis/app/runtime/app/define-config.mdx +0 -0
  685. /package/{en → docs/en}/apis/app/runtime/bff/_category_.json +0 -0
  686. /package/{en → docs/en}/apis/app/runtime/bff/hook.mdx +0 -0
  687. /package/{en → docs/en}/apis/app/runtime/bff/use-context.mdx +0 -0
  688. /package/{en → docs/en}/apis/app/runtime/core/_category_.json +0 -0
  689. /package/{en → docs/en}/apis/app/runtime/core/bootstrap.mdx +0 -0
  690. /package/{en → docs/en}/apis/app/runtime/core/create-app.mdx +0 -0
  691. /package/{en → docs/en}/apis/app/runtime/core/use-loader.mdx +0 -0
  692. /package/{en → docs/en}/apis/app/runtime/core/use-module-apps.mdx +0 -0
  693. /package/{en → docs/en}/apis/app/runtime/core/use-runtime-context.mdx +0 -0
  694. /package/{en → docs/en}/apis/app/runtime/model/Provider.mdx +0 -0
  695. /package/{en → docs/en}/apis/app/runtime/model/_category_.json +0 -0
  696. /package/{en → docs/en}/apis/app/runtime/model/auto-actions.mdx +0 -0
  697. /package/{en → docs/en}/apis/app/runtime/model/create-app.mdx +0 -0
  698. /package/{en → docs/en}/apis/app/runtime/model/create-store.mdx +0 -0
  699. /package/{en → docs/en}/apis/app/runtime/model/handle-effect.mdx +0 -0
  700. /package/{en → docs/en}/apis/app/runtime/model/use-local-model.mdx +0 -0
  701. /package/{en → docs/en}/apis/app/runtime/model/use-static-model.mdx +0 -0
  702. /package/{en → docs/en}/apis/app/runtime/model/use-store.mdx +0 -0
  703. /package/{en → docs/en}/apis/app/runtime/router/_category_.json +0 -0
  704. /package/{en → docs/en}/apis/app/runtime/ssr/_category_.json +0 -0
  705. /package/{en → docs/en}/apis/app/runtime/ssr/no-ssr.mdx +0 -0
  706. /package/{en → docs/en}/apis/app/runtime/ssr/pre-render.mdx +0 -0
  707. /package/{en → docs/en}/apis/app/runtime/testing/_category_.json +0 -0
  708. /package/{en → docs/en}/apis/app/runtime/testing/act.mdx +0 -0
  709. /package/{en → docs/en}/apis/app/runtime/testing/cleanup.mdx +0 -0
  710. /package/{en → docs/en}/apis/app/runtime/testing/render.mdx +0 -0
  711. /package/{en → docs/en}/apis/app/runtime/testing/renderApp.mdx +0 -0
  712. /package/{en → docs/en}/apis/app/runtime/utility/_category_.json +0 -0
  713. /package/{en → docs/en}/apis/app/runtime/utility/css-in-js.mdx +0 -0
  714. /package/{en → docs/en}/apis/app/runtime/utility/head.mdx +0 -0
  715. /package/{en → docs/en}/apis/app/runtime/utility/loadable.mdx +0 -0
  716. /package/{en → docs/en}/apis/app/runtime/web-server/_category_.json +0 -0
  717. /package/{en → docs/en}/components/debug-app.mdx +0 -0
  718. /package/{en → docs/en}/components/enable-micro-frontend.mdx +0 -0
  719. /package/{en → docs/en}/components/global-proxy-config.mdx +0 -0
  720. /package/{en → docs/en}/components/global-proxy.mdx +0 -0
  721. /package/{en → docs/en}/components/micro-master-manifest-config.mdx +0 -0
  722. /package/{en → docs/en}/components/micro-runtime-config.mdx +0 -0
  723. /package/{en → docs/en}/components/reduck-migration.mdx +0 -0
  724. /package/{en → docs/en}/components/reduck-tip.mdx +0 -0
  725. /package/{en → docs/en}/components/router-legacy-tip.mdx +0 -0
  726. /package/{en → docs/en}/configure/app/auto-load-plugin.mdx +0 -0
  727. /package/{en → docs/en}/configure/app/bff/_category_.json +0 -0
  728. /package/{en → docs/en}/configure/app/bff/prefix.mdx +0 -0
  729. /package/{en → docs/en}/configure/app/bff/proxy.mdx +0 -0
  730. /package/{en → docs/en}/configure/app/builder-plugins.mdx +0 -0
  731. /package/{en → docs/en}/configure/app/deploy/_category_.json +0 -0
  732. /package/{en → docs/en}/configure/app/deploy/microFrontend.mdx +0 -0
  733. /package/{en → docs/en}/configure/app/dev/_category_.json +0 -0
  734. /package/{en → docs/en}/configure/app/dev/proxy.mdx +0 -0
  735. /package/{en → docs/en}/configure/app/experiments/_category_.json +0 -0
  736. /package/{en → docs/en}/configure/app/html/_category_.json +0 -0
  737. /package/{en → docs/en}/configure/app/output/_category_.json +0 -0
  738. /package/{en → docs/en}/configure/app/output/disable-node-polyfill.mdx +0 -0
  739. /package/{en → docs/en}/configure/app/performance/_category_.json +0 -0
  740. /package/{en → docs/en}/configure/app/plugins.mdx +0 -0
  741. /package/{en → docs/en}/configure/app/runtime/_category_.json +0 -0
  742. /package/{en → docs/en}/configure/app/runtime/intro.mdx +0 -0
  743. /package/{en → docs/en}/configure/app/runtime/master-app.mdx +0 -0
  744. /package/{en → docs/en}/configure/app/runtime/router.mdx +0 -0
  745. /package/{en → docs/en}/configure/app/runtime/state.mdx +0 -0
  746. /package/{en → docs/en}/configure/app/security/_category_.json +0 -0
  747. /package/{en → docs/en}/configure/app/server/_category_.json +0 -0
  748. /package/{en → docs/en}/configure/app/server/base-url.mdx +0 -0
  749. /package/{en → docs/en}/configure/app/server/port.mdx +0 -0
  750. /package/{en → docs/en}/configure/app/server/routes.mdx +0 -0
  751. /package/{en → docs/en}/configure/app/server/ssr-by-entries.mdx +0 -0
  752. /package/{en → docs/en}/configure/app/source/_category_.json +0 -0
  753. /package/{en → docs/en}/configure/app/source/config-dir.mdx +0 -0
  754. /package/{en → docs/en}/configure/app/source/disable-default-entries.mdx +0 -0
  755. /package/{en → docs/en}/configure/app/source/enable-async-entry.mdx +0 -0
  756. /package/{en → docs/en}/configure/app/source/entries-dir.mdx +0 -0
  757. /package/{en → docs/en}/configure/app/testing/_category_.json +0 -0
  758. /package/{en → docs/en}/configure/app/testing/transformer.mdx +0 -0
  759. /package/{en → docs/en}/configure/app/tools/_category_.json +0 -0
  760. /package/{en → docs/en}/configure/app/tools/esbuild.mdx +0 -0
  761. /package/{en → docs/en}/configure/app/tools/jest.mdx +0 -0
  762. /package/{en → docs/en}/configure/app/tools/swc.mdx +0 -0
  763. /package/{en → docs/en}/configure/app/tools/tailwindcss.mdx +0 -0
  764. /package/{en → docs/en}/configure/app/usage.mdx +0 -0
  765. /package/{en → docs/en}/guides/advanced-features/_category_.json +0 -0
  766. /package/{en → docs/en}/guides/advanced-features/bff/bff-proxy.mdx +0 -0
  767. /package/{en → docs/en}/guides/advanced-features/bff/frameworks.mdx +0 -0
  768. /package/{en → docs/en}/guides/advanced-features/bff/function.mdx +0 -0
  769. /package/{en → docs/en}/guides/advanced-features/bff/index.mdx +0 -0
  770. /package/{en → docs/en}/guides/advanced-features/bff/type.mdx +0 -0
  771. /package/{en → docs/en}/guides/basic-features/_category_.json +0 -0
  772. /package/{en → docs/en}/guides/basic-features/alias.mdx +0 -0
  773. /package/{en → docs/en}/guides/basic-features/css.mdx +0 -0
  774. /package/{en → docs/en}/guides/basic-features/mock.mdx +0 -0
  775. /package/{en → docs/en}/guides/basic-features/routes.mdx +0 -0
  776. /package/{en → docs/en}/guides/concept/_category_.json +0 -0
  777. /package/{en → docs/en}/guides/concept/entries.mdx +0 -0
  778. /package/{en → docs/en}/guides/get-started/_category_.json +0 -0
  779. /package/{en → docs/en}/guides/get-started/upgrade.mdx +0 -0
  780. /package/{en → docs/en}/guides/topic-detail/_category_.json +0 -0
  781. /package/{en → docs/en}/guides/topic-detail/framework-plugin/_category_.json +0 -0
  782. /package/{en → docs/en}/guides/topic-detail/framework-plugin/lifecycle.mdx +0 -0
  783. /package/{en → docs/en}/guides/topic-detail/generator/_category_.json +0 -0
  784. /package/{en → docs/en}/guides/topic-detail/generator/codesmith/_category_.json +0 -0
  785. /package/{en → docs/en}/guides/topic-detail/generator/codesmith/api/_category_.json +0 -0
  786. /package/{en → docs/en}/guides/topic-detail/generator/codesmith/api/app.mdx +0 -0
  787. /package/{en → docs/en}/guides/topic-detail/generator/codesmith/api/ejs.mdx +0 -0
  788. /package/{en → docs/en}/guides/topic-detail/generator/codesmith/api/fs.mdx +0 -0
  789. /package/{en → docs/en}/guides/topic-detail/generator/codesmith/api/git.mdx +0 -0
  790. /package/{en → docs/en}/guides/topic-detail/generator/codesmith/api/handlebars.mdx +0 -0
  791. /package/{en → docs/en}/guides/topic-detail/generator/codesmith/api/json.mdx +0 -0
  792. /package/{en → docs/en}/guides/topic-detail/generator/codesmith/introduce.mdx +0 -0
  793. /package/{en → docs/en}/guides/topic-detail/generator/codesmith/run-in-js.mdx +0 -0
  794. /package/{en → docs/en}/guides/topic-detail/generator/codesmith/structure.mdx +0 -0
  795. /package/{en → docs/en}/guides/topic-detail/generator/config/_category_.json +0 -0
  796. /package/{en → docs/en}/guides/topic-detail/generator/config/common.mdx +0 -0
  797. /package/{en → docs/en}/guides/topic-detail/generator/config/module.mdx +0 -0
  798. /package/{en → docs/en}/guides/topic-detail/generator/config/monorepo.mdx +0 -0
  799. /package/{en → docs/en}/guides/topic-detail/generator/plugin/_category_.json +0 -0
  800. /package/{en → docs/en}/guides/topic-detail/generator/plugin/abstract.mdx +0 -0
  801. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/_category_.json +0 -0
  802. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/file/_category_.json +0 -0
  803. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/file/addFile.mdx +0 -0
  804. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/file/addHelper.mdx +0 -0
  805. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/file/addManyFile.mdx +0 -0
  806. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/file/addPartial.mdx +0 -0
  807. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/file/introduce.mdx +0 -0
  808. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/file/rmDir.mdx +0 -0
  809. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/file/rmFile.mdx +0 -0
  810. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/file/updateJSONFile.mdx +0 -0
  811. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/file/updateModernConfig.mdx +0 -0
  812. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/file/updateTextRawFile.mdx +0 -0
  813. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/git/_category_.json +0 -0
  814. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/git/gitAddAndCommit.mdx +0 -0
  815. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/git/initGitRepo.mdx +0 -0
  816. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/git/isInGitRepo.mdx +0 -0
  817. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/hook/_category_.json +0 -0
  818. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/hook/afterForged.mdx +0 -0
  819. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/hook/onForged.mdx +0 -0
  820. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/info/_category_.json +0 -0
  821. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/info/isFileExit.mdx +0 -0
  822. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/info/locale.mdx +0 -0
  823. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/info/readDir.mdx +0 -0
  824. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/input/_category_.json +0 -0
  825. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/input/setInput.mdx +0 -0
  826. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/input/setInputValue.mdx +0 -0
  827. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/input/type.mdx +0 -0
  828. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/introduce.mdx +0 -0
  829. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/new/_category_.json +0 -0
  830. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/new/createElement.mdx +0 -0
  831. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/new/createSubProject.mdx +0 -0
  832. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/new/enableFunc.mdx +0 -0
  833. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/new/introduce.mdx +0 -0
  834. /package/{en → docs/en}/guides/topic-detail/generator/plugin/api/npm/_category_.json +0 -0
  835. /package/{en → docs/en}/guides/topic-detail/generator/plugin/use.mdx +0 -0
  836. /package/{en → docs/en}/guides/topic-detail/micro-frontend/_category_.json +0 -0
  837. /package/{en → docs/en}/guides/topic-detail/model/_category_.json +0 -0
  838. /package/{en → docs/en}/guides/troubleshooting/_category_.json +0 -0
  839. /package/{en → docs/en}/index.md +0 -0
  840. /package/{en → docs/en}/tutorials/first-app/_category_.json +0 -0
  841. /package/{en → docs/en}/tutorials/first-app/c01-start.mdx +0 -0
  842. /package/{en → docs/en}/tutorials/first-app/c02-component.mdx +0 -0
  843. /package/{en → docs/en}/tutorials/first-app/c04-routes.mdx +0 -0
  844. /package/{en → docs/en}/tutorials/first-app/c05-loader.mdx +0 -0
  845. /package/{en → docs/en}/tutorials/first-app/c06-model.mdx +0 -0
  846. /package/{en → docs/en}/tutorials/first-app/c07-container.mdx +0 -0
  847. /package/{en → docs/en}/tutorials/first-app/c08-entries.mdx +0 -0
  848. /package/{en → docs/en}/tutorials/foundations/_category_.json +0 -0
  849. /package/{en → docs/en}/tutorials/foundations/introduction.mdx +0 -0
  850. /package/{zh → docs/zh}/apis/app/hooks/_category_.json +0 -0
  851. /package/{zh → docs/zh}/apis/app/hooks/api/_category_.json +0 -0
  852. /package/{zh → docs/zh}/apis/app/hooks/api/framework/_category_.json +0 -0
  853. /package/{zh → docs/zh}/apis/app/hooks/api/framework/lambda.mdx +0 -0
  854. /package/{zh → docs/zh}/apis/app/hooks/api/functions/_category_.json +0 -0
  855. /package/{zh → docs/zh}/apis/app/hooks/api/functions/api.mdx +0 -0
  856. /package/{zh → docs/zh}/apis/app/hooks/api/functions/app.mdx +0 -0
  857. /package/{zh → docs/zh}/apis/app/hooks/api/functions/common.mdx +0 -0
  858. /package/{zh → docs/zh}/apis/app/hooks/api/test.mdx +0 -0
  859. /package/{zh → docs/zh}/apis/app/hooks/config/_category_.json +0 -0
  860. /package/{zh → docs/zh}/apis/app/hooks/config/html.mdx +0 -0
  861. /package/{zh → docs/zh}/apis/app/hooks/config/icon.mdx +0 -0
  862. /package/{zh → docs/zh}/apis/app/hooks/config/mock.mdx +0 -0
  863. /package/{zh → docs/zh}/apis/app/hooks/config/public.mdx +0 -0
  864. /package/{zh → docs/zh}/apis/app/hooks/config/storybook.mdx +0 -0
  865. /package/{zh → docs/zh}/apis/app/hooks/config/upload.mdx +0 -0
  866. /package/{zh → docs/zh}/apis/app/hooks/modern-config.mdx +0 -0
  867. /package/{zh → docs/zh}/apis/app/hooks/server/_category_.json +0 -0
  868. /package/{zh → docs/zh}/apis/app/hooks/server/index_.mdx +0 -0
  869. /package/{zh → docs/zh}/apis/app/hooks/server/test.mdx +0 -0
  870. /package/{zh → docs/zh}/apis/app/hooks/shared.mdx +0 -0
  871. /package/{zh → docs/zh}/apis/app/hooks/src/_category_.json +0 -0
  872. /package/{zh → docs/zh}/apis/app/hooks/src/app.mdx +0 -0
  873. /package/{zh → docs/zh}/apis/app/hooks/src/index_.mdx +0 -0
  874. /package/{zh → docs/zh}/apis/app/hooks/src/pages.mdx +0 -0
  875. /package/{zh → docs/zh}/apis/app/hooks/src/routes.mdx +0 -0
  876. /package/{zh → docs/zh}/apis/app/hooks/src/server.mdx +0 -0
  877. /package/{zh → docs/zh}/apis/app/hooks/src/stories.mdx +0 -0
  878. /package/{zh → docs/zh}/apis/app/hooks/src/test.mdx +0 -0
  879. /package/{zh → docs/zh}/apis/app/runtime/_category_.json +0 -0
  880. /package/{zh → docs/zh}/apis/app/runtime/app/_category_.json +0 -0
  881. /package/{zh → docs/zh}/apis/app/runtime/app/define-config.mdx +0 -0
  882. /package/{zh → docs/zh}/apis/app/runtime/bff/_category_.json +0 -0
  883. /package/{zh → docs/zh}/apis/app/runtime/bff/hook.mdx +0 -0
  884. /package/{zh → docs/zh}/apis/app/runtime/bff/use-context.mdx +0 -0
  885. /package/{zh → docs/zh}/apis/app/runtime/core/_category_.json +0 -0
  886. /package/{zh → docs/zh}/apis/app/runtime/core/bootstrap.mdx +0 -0
  887. /package/{zh → docs/zh}/apis/app/runtime/core/create-app.mdx +0 -0
  888. /package/{zh → docs/zh}/apis/app/runtime/core/use-loader.mdx +0 -0
  889. /package/{zh → docs/zh}/apis/app/runtime/core/use-module-apps.mdx +0 -0
  890. /package/{zh → docs/zh}/apis/app/runtime/core/use-runtime-context.mdx +0 -0
  891. /package/{zh → docs/zh}/apis/app/runtime/model/Provider.mdx +0 -0
  892. /package/{zh → docs/zh}/apis/app/runtime/model/_category_.json +0 -0
  893. /package/{zh → docs/zh}/apis/app/runtime/model/auto-actions.mdx +0 -0
  894. /package/{zh → docs/zh}/apis/app/runtime/model/create-app.mdx +0 -0
  895. /package/{zh → docs/zh}/apis/app/runtime/model/create-store.mdx +0 -0
  896. /package/{zh → docs/zh}/apis/app/runtime/model/handle-effect.mdx +0 -0
  897. /package/{zh → docs/zh}/apis/app/runtime/model/use-local-model.mdx +0 -0
  898. /package/{zh → docs/zh}/apis/app/runtime/model/use-static-model.mdx +0 -0
  899. /package/{zh → docs/zh}/apis/app/runtime/model/use-store.mdx +0 -0
  900. /package/{zh → docs/zh}/apis/app/runtime/router/_category_.json +0 -0
  901. /package/{zh → docs/zh}/apis/app/runtime/router/router.mdx +0 -0
  902. /package/{zh → docs/zh}/apis/app/runtime/ssr/_category_.json +0 -0
  903. /package/{zh → docs/zh}/apis/app/runtime/ssr/no-ssr.mdx +0 -0
  904. /package/{zh → docs/zh}/apis/app/runtime/ssr/pre-render.mdx +0 -0
  905. /package/{zh → docs/zh}/apis/app/runtime/testing/_category_.json +0 -0
  906. /package/{zh → docs/zh}/apis/app/runtime/testing/act.mdx +0 -0
  907. /package/{zh → docs/zh}/apis/app/runtime/testing/cleanup.mdx +0 -0
  908. /package/{zh → docs/zh}/apis/app/runtime/testing/render.mdx +0 -0
  909. /package/{zh → docs/zh}/apis/app/runtime/testing/renderApp.mdx +0 -0
  910. /package/{zh → docs/zh}/apis/app/runtime/utility/_category_.json +0 -0
  911. /package/{zh → docs/zh}/apis/app/runtime/utility/css-in-js.mdx +0 -0
  912. /package/{zh → docs/zh}/apis/app/runtime/utility/head.mdx +0 -0
  913. /package/{zh → docs/zh}/apis/app/runtime/utility/loadable.mdx +0 -0
  914. /package/{zh → docs/zh}/apis/app/runtime/web-server/_category_.json +0 -0
  915. /package/{zh → docs/zh}/apis/monorepo/commands/_category_.json +0 -0
  916. /package/{zh → docs/zh}/apis/monorepo/commands/bump.mdx +0 -0
  917. /package/{zh → docs/zh}/apis/monorepo/commands/change.mdx +0 -0
  918. /package/{zh → docs/zh}/apis/monorepo/commands/clear.mdx +0 -0
  919. /package/{zh → docs/zh}/apis/monorepo/commands/deploy.mdx +0 -0
  920. /package/{zh → docs/zh}/apis/monorepo/commands/index.mdx +0 -0
  921. /package/{zh → docs/zh}/apis/monorepo/commands/lint.mdx +0 -0
  922. /package/{zh → docs/zh}/apis/monorepo/commands/pre.mdx +0 -0
  923. /package/{zh → docs/zh}/apis/monorepo/commands/release.mdx +0 -0
  924. /package/{zh → docs/zh}/apis/monorepo/commands/upgrade.mdx +0 -0
  925. /package/{zh → docs/zh}/apis/monorepo/hooks/_category_.json +0 -0
  926. /package/{zh → docs/zh}/apis/monorepo/hooks/apps.mdx +0 -0
  927. /package/{zh → docs/zh}/apis/monorepo/hooks/code-workspace.mdx +0 -0
  928. /package/{zh → docs/zh}/apis/monorepo/hooks/examples.mdx +0 -0
  929. /package/{zh → docs/zh}/apis/monorepo/hooks/features.mdx +0 -0
  930. /package/{zh → docs/zh}/apis/monorepo/hooks/index.mdx +0 -0
  931. /package/{zh → docs/zh}/apis/monorepo/hooks/packages.mdx +0 -0
  932. /package/{zh → docs/zh}/apis/monorepo/hooks/pnpm-workspace.mdx +0 -0
  933. /package/{zh → docs/zh}/apis/monorepo/hooks/pnpmfile.mdx +0 -0
  934. /package/{zh → docs/zh}/blog/index.md +0 -0
  935. /package/{zh → docs/zh}/community/index.mdx +0 -0
  936. /package/{zh → docs/zh}/components/custom-router-micro-frontend.mdx +0 -0
  937. /package/{zh → docs/zh}/components/debug-app.mdx +0 -0
  938. /package/{zh → docs/zh}/components/deploy.mdx +0 -0
  939. /package/{zh → docs/zh}/components/enable-micro-frontend.mdx +0 -0
  940. /package/{zh → docs/zh}/components/global-proxy-config.mdx +0 -0
  941. /package/{zh → docs/zh}/components/global-proxy.mdx +0 -0
  942. /package/{zh → docs/zh}/components/micro-master-manifest-config.mdx +0 -0
  943. /package/{zh → docs/zh}/components/micro-runtime-config.mdx +0 -0
  944. /package/{zh → docs/zh}/components/reduck-migration.mdx +0 -0
  945. /package/{zh → docs/zh}/components/reduck-tip.mdx +0 -0
  946. /package/{zh → docs/zh}/components/router-legacy-tip.mdx +0 -0
  947. /package/{zh → docs/zh}/components/self-route-example.mdx +0 -0
  948. /package/{zh → docs/zh}/configure/app/auto-load-plugin.mdx +0 -0
  949. /package/{zh → docs/zh}/configure/app/bff/_category_.json +0 -0
  950. /package/{zh → docs/zh}/configure/app/bff/prefix.mdx +0 -0
  951. /package/{zh → docs/zh}/configure/app/bff/proxy.mdx +0 -0
  952. /package/{zh → docs/zh}/configure/app/builder-plugins.mdx +0 -0
  953. /package/{zh → docs/zh}/configure/app/deploy/_category_.json +0 -0
  954. /package/{zh → docs/zh}/configure/app/deploy/microFrontend.mdx +0 -0
  955. /package/{zh → docs/zh}/configure/app/dev/_category_.json +0 -0
  956. /package/{zh → docs/zh}/configure/app/dev/proxy.mdx +0 -0
  957. /package/{zh → docs/zh}/configure/app/experiments/_category_.json +0 -0
  958. /package/{zh → docs/zh}/configure/app/html/_category_.json +0 -0
  959. /package/{zh → docs/zh}/configure/app/output/_category_.json +0 -0
  960. /package/{zh → docs/zh}/configure/app/output/disable-node-polyfill.mdx +0 -0
  961. /package/{zh → docs/zh}/configure/app/output/ssg.mdx +0 -0
  962. /package/{zh → docs/zh}/configure/app/performance/_category_.json +0 -0
  963. /package/{zh → docs/zh}/configure/app/plugins.mdx +0 -0
  964. /package/{zh → docs/zh}/configure/app/runtime/_category_.json +0 -0
  965. /package/{zh → docs/zh}/configure/app/runtime/intro.mdx +0 -0
  966. /package/{zh → docs/zh}/configure/app/runtime/master-app.mdx +0 -0
  967. /package/{zh → docs/zh}/configure/app/runtime/router.mdx +0 -0
  968. /package/{zh → docs/zh}/configure/app/runtime/state.mdx +0 -0
  969. /package/{zh → docs/zh}/configure/app/security/_category_.json +0 -0
  970. /package/{zh → docs/zh}/configure/app/server/_category_.json +0 -0
  971. /package/{zh → docs/zh}/configure/app/server/base-url.mdx +0 -0
  972. /package/{zh → docs/zh}/configure/app/server/port.mdx +0 -0
  973. /package/{zh → docs/zh}/configure/app/server/public-routes.mdx +0 -0
  974. /package/{zh → docs/zh}/configure/app/server/routes.mdx +0 -0
  975. /package/{zh → docs/zh}/configure/app/server/ssr-by-entries.mdx +0 -0
  976. /package/{zh → docs/zh}/configure/app/server/ssr.mdx +0 -0
  977. /package/{zh → docs/zh}/configure/app/source/_category_.json +0 -0
  978. /package/{zh → docs/zh}/configure/app/source/config-dir.mdx +0 -0
  979. /package/{zh → docs/zh}/configure/app/source/design-system.mdx +0 -0
  980. /package/{zh → docs/zh}/configure/app/source/disable-default-entries.mdx +0 -0
  981. /package/{zh → docs/zh}/configure/app/source/disable-entry-dirs.mdx +0 -0
  982. /package/{zh → docs/zh}/configure/app/source/enable-async-entry.mdx +0 -0
  983. /package/{zh → docs/zh}/configure/app/source/entries-dir.mdx +0 -0
  984. /package/{zh → docs/zh}/configure/app/source/entries.mdx +0 -0
  985. /package/{zh → docs/zh}/configure/app/testing/_category_.json +0 -0
  986. /package/{zh → docs/zh}/configure/app/testing/transformer.mdx +0 -0
  987. /package/{zh → docs/zh}/configure/app/tools/_category_.json +0 -0
  988. /package/{zh → docs/zh}/configure/app/tools/esbuild.mdx +0 -0
  989. /package/{zh → docs/zh}/configure/app/tools/jest.mdx +0 -0
  990. /package/{zh → docs/zh}/configure/app/tools/swc.mdx +0 -0
  991. /package/{zh → docs/zh}/configure/app/tools/tailwindcss.mdx +0 -0
  992. /package/{zh → docs/zh}/configure/app/usage.mdx +0 -0
  993. /package/{zh → docs/zh}/guides/advanced-features/_category_.json +0 -0
  994. /package/{zh → docs/zh}/guides/advanced-features/bff/bff-proxy.mdx +0 -0
  995. /package/{zh → docs/zh}/guides/advanced-features/bff/frameworks.mdx +0 -0
  996. /package/{zh → docs/zh}/guides/advanced-features/bff/function.mdx +0 -0
  997. /package/{zh → docs/zh}/guides/advanced-features/bff/index.mdx +0 -0
  998. /package/{zh → docs/zh}/guides/advanced-features/bff/type.mdx +0 -0
  999. /package/{zh → docs/zh}/guides/advanced-features/code-split.mdx +0 -0
  1000. /package/{zh → docs/zh}/guides/advanced-features/compatibility.mdx +0 -0
  1001. /package/{zh → docs/zh}/guides/advanced-features/eslint.mdx +0 -0
  1002. /package/{zh → docs/zh}/guides/advanced-features/low-level.mdx +0 -0
  1003. /package/{zh → docs/zh}/guides/advanced-features/ssg.mdx +0 -0
  1004. /package/{zh → docs/zh}/guides/advanced-features/testing.mdx +0 -0
  1005. /package/{zh → docs/zh}/guides/basic-features/_category_.json +0 -0
  1006. /package/{zh → docs/zh}/guides/basic-features/alias.mdx +0 -0
  1007. /package/{zh → docs/zh}/guides/basic-features/css.mdx +0 -0
  1008. /package/{zh → docs/zh}/guides/basic-features/data-fetch.mdx +0 -0
  1009. /package/{zh → docs/zh}/guides/basic-features/env-vars.mdx +0 -0
  1010. /package/{zh → docs/zh}/guides/basic-features/html.mdx +0 -0
  1011. /package/{zh → docs/zh}/guides/basic-features/proxy.mdx +0 -0
  1012. /package/{zh → docs/zh}/guides/basic-features/routes.mdx +0 -0
  1013. /package/{zh → docs/zh}/guides/concept/_category_.json +0 -0
  1014. /package/{zh → docs/zh}/guides/concept/entries.mdx +0 -0
  1015. /package/{zh → docs/zh}/guides/get-started/_category_.json +0 -0
  1016. /package/{zh → docs/zh}/guides/get-started/quick-start.mdx +0 -0
  1017. /package/{zh → docs/zh}/guides/get-started/upgrade.mdx +0 -0
  1018. /package/{zh → docs/zh}/guides/topic-detail/_category_.json +0 -0
  1019. /package/{zh → docs/zh}/guides/topic-detail/changesets/_category_.json +0 -0
  1020. /package/{zh → docs/zh}/guides/topic-detail/changesets/add.mdx +0 -0
  1021. /package/{zh → docs/zh}/guides/topic-detail/changesets/config.mdx +0 -0
  1022. /package/{zh → docs/zh}/guides/topic-detail/changesets/introduce.mdx +0 -0
  1023. /package/{zh → docs/zh}/guides/topic-detail/changesets/release-pre.mdx +0 -0
  1024. /package/{zh → docs/zh}/guides/topic-detail/changesets/release.mdx +0 -0
  1025. /package/{zh → docs/zh}/guides/topic-detail/framework-plugin/_category_.json +0 -0
  1026. /package/{en → docs/zh}/guides/topic-detail/framework-plugin/extend.mdx +0 -0
  1027. /package/{zh → docs/zh}/guides/topic-detail/framework-plugin/hook-list.mdx +0 -0
  1028. /package/{en → docs/zh}/guides/topic-detail/framework-plugin/hook.mdx +0 -0
  1029. /package/{en → docs/zh}/guides/topic-detail/framework-plugin/implement.mdx +0 -0
  1030. /package/{en → docs/zh}/guides/topic-detail/framework-plugin/introduction.mdx +0 -0
  1031. /package/{zh → docs/zh}/guides/topic-detail/framework-plugin/lifecycle.mdx +0 -0
  1032. /package/{en → docs/zh}/guides/topic-detail/framework-plugin/relationship.mdx +0 -0
  1033. /package/{zh → docs/zh}/guides/topic-detail/generator/_category_.json +0 -0
  1034. /package/{zh → docs/zh}/guides/topic-detail/generator/codesmith/_category_.json +0 -0
  1035. /package/{zh → docs/zh}/guides/topic-detail/generator/codesmith/api/_category_.json +0 -0
  1036. /package/{zh → docs/zh}/guides/topic-detail/generator/codesmith/api/app.mdx +0 -0
  1037. /package/{zh → docs/zh}/guides/topic-detail/generator/codesmith/api/ejs.mdx +0 -0
  1038. /package/{zh → docs/zh}/guides/topic-detail/generator/codesmith/api/fs.mdx +0 -0
  1039. /package/{zh → docs/zh}/guides/topic-detail/generator/codesmith/api/git.mdx +0 -0
  1040. /package/{zh → docs/zh}/guides/topic-detail/generator/codesmith/api/handlebars.mdx +0 -0
  1041. /package/{zh → docs/zh}/guides/topic-detail/generator/codesmith/api/json.mdx +0 -0
  1042. /package/{zh → docs/zh}/guides/topic-detail/generator/codesmith/api/npm.mdx +0 -0
  1043. /package/{zh → docs/zh}/guides/topic-detail/generator/codesmith/develop.mdx +0 -0
  1044. /package/{zh → docs/zh}/guides/topic-detail/generator/codesmith/introduce.mdx +0 -0
  1045. /package/{zh → docs/zh}/guides/topic-detail/generator/codesmith/run-in-js.mdx +0 -0
  1046. /package/{zh → docs/zh}/guides/topic-detail/generator/codesmith/structure.mdx +0 -0
  1047. /package/{zh → docs/zh}/guides/topic-detail/generator/config/_category_.json +0 -0
  1048. /package/{zh → docs/zh}/guides/topic-detail/generator/config/app.mdx +0 -0
  1049. /package/{zh → docs/zh}/guides/topic-detail/generator/config/common.mdx +0 -0
  1050. /package/{zh → docs/zh}/guides/topic-detail/generator/config/module.mdx +0 -0
  1051. /package/{zh → docs/zh}/guides/topic-detail/generator/config/monorepo.mdx +0 -0
  1052. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/_category_.json +0 -0
  1053. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/abstract.mdx +0 -0
  1054. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/_category_.json +0 -0
  1055. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/file/_category_.json +0 -0
  1056. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/file/addFile.mdx +0 -0
  1057. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/file/addHelper.mdx +0 -0
  1058. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/file/addManyFile.mdx +0 -0
  1059. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/file/addPartial.mdx +0 -0
  1060. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/file/introduce.mdx +0 -0
  1061. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/file/rmDir.mdx +0 -0
  1062. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/file/rmFile.mdx +0 -0
  1063. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/file/updateJSONFile.mdx +0 -0
  1064. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/file/updateModernConfig.mdx +0 -0
  1065. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/file/updateTextRawFile.mdx +0 -0
  1066. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/git/_category_.json +0 -0
  1067. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/git/gitAddAndCommit.mdx +0 -0
  1068. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/git/initGitRepo.mdx +0 -0
  1069. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/git/isInGitRepo.mdx +0 -0
  1070. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/hook/_category_.json +0 -0
  1071. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/hook/afterForged.mdx +0 -0
  1072. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/hook/onForged.mdx +0 -0
  1073. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/info/_category_.json +0 -0
  1074. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/info/isFileExit.mdx +0 -0
  1075. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/info/locale.mdx +0 -0
  1076. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/info/readDir.mdx +0 -0
  1077. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/input/_category_.json +0 -0
  1078. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/input/addInputAfter.mdx +0 -0
  1079. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/input/addInputBefore.mdx +0 -0
  1080. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/input/setInput.mdx +0 -0
  1081. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/input/setInputValue.mdx +0 -0
  1082. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/input/type.mdx +0 -0
  1083. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/introduce.mdx +0 -0
  1084. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/new/_category_.json +0 -0
  1085. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/new/createElement.mdx +0 -0
  1086. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/new/createSubProject.mdx +0 -0
  1087. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/new/enableFunc.mdx +0 -0
  1088. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/new/introduce.mdx +0 -0
  1089. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/npm/_category_.json +0 -0
  1090. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/api/npm/install.mdx +0 -0
  1091. /package/{zh → docs/zh}/guides/topic-detail/generator/plugin/use.mdx +0 -0
  1092. /package/{zh → docs/zh}/guides/topic-detail/generator/project.mdx +0 -0
  1093. /package/{zh → docs/zh}/guides/topic-detail/micro-frontend/_category_.json +0 -0
  1094. /package/{en → docs/zh}/guides/topic-detail/micro-frontend/c01-introduction.mdx +0 -0
  1095. /package/{zh → docs/zh}/guides/topic-detail/micro-frontend/c02-development.mdx +0 -0
  1096. /package/{zh → docs/zh}/guides/topic-detail/micro-frontend/c03-main-app.mdx +0 -0
  1097. /package/{en → docs/zh}/guides/topic-detail/micro-frontend/c04-communicate.mdx +0 -0
  1098. /package/{en → docs/zh}/guides/topic-detail/micro-frontend/c05-mixed-stack.mdx +0 -0
  1099. /package/{zh → docs/zh}/guides/topic-detail/model/_category_.json +0 -0
  1100. /package/{en → docs/zh}/guides/topic-detail/model/auto-actions.mdx +0 -0
  1101. /package/{en → docs/zh}/guides/topic-detail/model/computed-state.mdx +0 -0
  1102. /package/{en → docs/zh}/guides/topic-detail/model/define-model.mdx +0 -0
  1103. /package/{en → docs/zh}/guides/topic-detail/model/redux-integration.mdx +0 -0
  1104. /package/{en → docs/zh}/guides/topic-detail/model/test-model.mdx +0 -0
  1105. /package/{en → docs/zh}/guides/topic-detail/model/typescript-best-practice.mdx +0 -0
  1106. /package/{en → docs/zh}/guides/topic-detail/model/use-out-of-modernjs.mdx +0 -0
  1107. /package/{zh → docs/zh}/guides/topic-detail/monorepo/_category_.json +0 -0
  1108. /package/{zh → docs/zh}/guides/topic-detail/monorepo/intro.mdx +0 -0
  1109. /package/{zh → docs/zh}/guides/topic-detail/monorepo/publish.mdx +0 -0
  1110. /package/{zh → docs/zh}/guides/troubleshooting/_category_.json +0 -0
  1111. /package/{zh → docs/zh}/guides/troubleshooting/cli.mdx +0 -0
  1112. /package/{zh → docs/zh}/guides/troubleshooting/dependencies.mdx +0 -0
  1113. /package/{zh → docs/zh}/tutorials/first-app/_category_.json +0 -0
  1114. /package/{zh → docs/zh}/tutorials/first-app/c01-start.mdx +0 -0
  1115. /package/{zh → docs/zh}/tutorials/first-app/c02-component.mdx +0 -0
  1116. /package/{zh → docs/zh}/tutorials/first-app/c03-css.mdx +0 -0
  1117. /package/{zh → docs/zh}/tutorials/first-app/c04-routes.mdx +0 -0
  1118. /package/{zh → docs/zh}/tutorials/first-app/c05-loader.mdx +0 -0
  1119. /package/{zh → docs/zh}/tutorials/first-app/c06-model.mdx +0 -0
  1120. /package/{zh → docs/zh}/tutorials/first-app/c07-container.mdx +0 -0
  1121. /package/{zh → docs/zh}/tutorials/first-app/c08-entries.mdx +0 -0
  1122. /package/{zh → docs/zh}/tutorials/foundations/_category_.json +0 -0
  1123. /package/{zh → docs/zh}/tutorials/foundations/introduction.mdx +0 -0
@@ -0,0 +1,222 @@
1
+ ---
2
+ sidebar_position: 7
3
+ title: Model Communication
4
+ ---
5
+
6
+ # Model Communication
7
+
8
+ Model communication refers to communication between different Models, as well as communication between Effects and Actions within the same Model.
9
+
10
+ ## Communication between Models
11
+
12
+ Models are not isolated from each other and can communicate with each other. There are mainly two scenarios:
13
+
14
+ 1. Accessing the State and Actions of other Models in the Model.
15
+ 2. Listening to changes in other Models in the Model.
16
+
17
+ Here, we will transform the simple counter application in the [Quick Start](/guides/topic-detail/model/quick-start) section into a counter application that allows you to set the step frequency. By setting the step frequency, you can affect the magnitude of each counter increase.
18
+
19
+ We abstract two Models, `stepModel` (step frequency) and `counterModel` (counter):
20
+
21
+ ```ts
22
+ import { model } from '@modern-js/runtime/model';
23
+
24
+ const stepModel = model('step').define({
25
+ state: 1,
26
+ });
27
+
28
+ const counterModel = model('count').define((context, { use, onMount }) => {
29
+ const [, , subscribeStep] = use(stepModel);
30
+
31
+ onMount(() => {
32
+ return subscribeStep(() => {
33
+ console.log(
34
+ `Subscribe in counterModel: stepModel change to ${use(stepModel)[0]}`,
35
+ );
36
+ });
37
+ });
38
+
39
+ return {
40
+ state: {
41
+ value: 1,
42
+ },
43
+ actions: {
44
+ add(state) {
45
+ const step = use(stepModel)[0];
46
+ state.value += step;
47
+ },
48
+ },
49
+ };
50
+ });
51
+
52
+ export { stepModel, counterModel };
53
+ ```
54
+
55
+ `stepModel` declares only one `state`, with an initial value of 1.
56
+
57
+ `counterModel` loads `stepModel` with the `use` function, and retrieves the returned `subscribeStep` function to listen for changes to the `stepModel` state. `onMount` is a hook function that is executed after the Model is mounted. `counterModel` begins to subscribe to the state changes of `stepModel` after it has been mounted, and prints out the latest value of `stepModel`.
58
+
59
+ `counterModel` accesses `stepModel` using the `use` function, and in the `add` function, the current value of `stepModel` (step frequency) can be obtained to perform increments using this value.
60
+
61
+ :::caution Note
62
+ When you need to access the state of another Model, you must call `use` during the actual execution phase of the current Actions or Effects function (in this example, the `add` function) to ensure that the obtained State is the latest value. Therefore, although we also call `use(stepModel)` in the callback function of `define`, we do not destructure the `state` value of `stepModel` because the callback function of `define` is executed during the mounting phase of the Model, and at this time, the `state` of `stepModel` obtained may be different from the value obtained when `add` is executed.
63
+ :::
64
+
65
+ Modify App.tsx:
66
+
67
+ ```tsx
68
+ import { useModel } from '@modern-js/runtime/model';
69
+ import { counterModel, stepModel } from './models/count';
70
+
71
+ function Counter() {
72
+ const [state, actions] = useModel(counterModel);
73
+ const [step, stepActions] = useModel(stepModel);
74
+
75
+ return (
76
+ <div>
77
+ <div>step: {step}</div>
78
+ <button onClick={() => stepActions.setState(step + 1)}>add step</button>
79
+ <div>counter: {state.value}</div>
80
+ <button onClick={() => actions.add()}>add counter</button>
81
+ </div>
82
+ );
83
+ }
84
+
85
+ export default function App() {
86
+ return <Counter />;
87
+ }
88
+ ```
89
+
90
+ :::info Additional Information
91
+ Modern.js has enabled [auto-generate actions](./auto-actions.mdx) by default, so even though there are no Actions defined manually in the `stepModel`, the auto-generated `setState` can still be used.
92
+
93
+ :::
94
+
95
+ - Click **add step** to add steps.
96
+ - Click **add counter** to trigger the counter to increase.
97
+
98
+ The final effect is as follows:
99
+
100
+ ![communicate-models](https://lf3-static.bytednsdoc.com/obj/eden-cn/aphqeh7uhohpquloj/modern-js/docs/models-communicate.gif)
101
+
102
+ :::info Additional Information
103
+ - Full example code for this section can be found [here](https://github.com/web-infra-dev/modern-js-examples/tree/main/series/tutorials/runtime-api/model/models-communication).
104
+ - For more information about the relevant API, please refer to: [model](/apis/app/runtime/model/model_#function-types).
105
+
106
+ :::
107
+
108
+ In the previous example of `counterModel`, we called `use` within the Actions function to get other Model objects. If we only need to call Actions of other Models, we can also use `use` to get the Actions of Models in the `define` callback function because Actions are functions and there is no issue of value expiration. For example:
109
+
110
+ ```ts
111
+ const barModel = model('bar').define({
112
+ // ..
113
+ });
114
+
115
+ const fooModel = model('foo').define((context, utils) => {
116
+ // get barModel actions
117
+ const [, actions] = utils.use(barModel);
118
+ return {
119
+ // ...
120
+ effects: {
121
+ async loadA() {
122
+ // ...
123
+ // invoke barModel action
124
+ barModel.actionA();
125
+ },
126
+ async loadB() {
127
+ // ...
128
+ // invoke barModel action
129
+ barModel.actionB();
130
+ },
131
+ },
132
+ };
133
+ });
134
+ ```
135
+
136
+ Here, we no longer need to repeatedly get the `barModel` object in `loadA` and `loadB`, which simplifies the code logic.
137
+
138
+ ## Communication within a Model
139
+
140
+ Communication within a Model can also be divided into two main scenarios:
141
+
142
+ 1. Effects functions call the Actions functions of the same Model or other Effects functions.
143
+ 2. Actions functions call other Actions functions of the same Model.
144
+
145
+ In the [Managing Side Effects](/guides/topic-detail/model/manage-effects) section, we demonstrated how Effects functions call Actions functions.
146
+
147
+ Here we provide another example:
148
+
149
+ ```ts
150
+ const fooModel = model('foo').define((context, { use, onMount }) => ({
151
+ state: {
152
+ a: '',
153
+ b: '',
154
+ },
155
+ actions: {
156
+ setA(state, payload) {
157
+ state.a = payload;
158
+ },
159
+ setB(state, payload) {
160
+ state.a = payload;
161
+ },
162
+ },
163
+ effects: {
164
+ async loadA() {
165
+ // get current Model actions
166
+ const [, actions] = use(fooModel);
167
+ const res = await mockFetchA();
168
+ actions.setA(res);
169
+ },
170
+ async loadB() {
171
+ // get current Model actions
172
+ const [, actions] = use(fooModel);
173
+ const res = await mockFetchB();
174
+ actions.setB(res);
175
+ },
176
+ },
177
+ }));
178
+ ```
179
+
180
+ In this example, the two Effects functions of `fooModel` need to call their own Actions functions. Here, we have called `use` once in each Effects function. Why can't we use `use` to get the Actions of the Model itself in the `define` callback function, as in the example of Model communication? This is because when calling `use` to get a Model, it first checks whether the Model has been mounted. If it has not been mounted, the mounting logic will be executed first.
181
+
182
+ The `define` callback function is executed during the mounting phase, so calling `use` to get the Model itself during the mounting phase will result in an infinite loop (which will throw an error in the actual execution process). Therefore, **you must not call `use` in the `define` callback function to get the Model itself**.
183
+
184
+ However, we can use the `onMount` hook function to get the Model itself through `use` after the Model has been mounted:
185
+
186
+ ```ts
187
+ const fooModel = model('foo').define((context, { use, onMount }) => {
188
+ let actions;
189
+
190
+ onMount(() => {
191
+ // after fooModel mounted,get actions
192
+ [, actions] = use(fooModel);
193
+ });
194
+
195
+ return {
196
+ state: {
197
+ a: '',
198
+ b: '',
199
+ },
200
+ actions: {
201
+ setA(state, payload) {
202
+ state.a = payload;
203
+ },
204
+ setB(state, payload) {
205
+ state.a = payload;
206
+ },
207
+ },
208
+ effects: {
209
+ async loadA() {
210
+ const res = await mockFetchA();
211
+ actions.setA(res);
212
+ },
213
+ async loadB() {
214
+ const res = await mockFetchB();
215
+ actions.setB(res);
216
+ },
217
+ },
218
+ };
219
+ });
220
+ ```
221
+
222
+ In this way, we can also simplify the code.
@@ -0,0 +1,170 @@
1
+ ---
2
+ sidebar_position: 8
3
+ title: Performance Optimization
4
+ ---
5
+ # Performance Optimization
6
+
7
+ Reduck has already done a lot of performance optimization work internally, so performance issues generally do not need to be considered. However, when performance is more sensitive, or when encountering performance issues, you can consider more targeted performance optimization from the following three aspects.
8
+
9
+ ## Splitting Models
10
+
11
+ When `useModel` returns the complete State object of the Model, any change in any part of the State will cause the component that calls `useModel` to be re-rendered.
12
+
13
+ For example:
14
+
15
+ ```ts
16
+ const fooModel = model('foo').define({
17
+ state: {
18
+ a: '',
19
+ b: '',
20
+ },
21
+ actions: {
22
+ setA(state, payload) {
23
+ state.a = payload;
24
+ },
25
+ setB(state, payload) {
26
+ state.b = payload;
27
+ },
28
+ },
29
+ });
30
+
31
+ function ComponentA() {
32
+ const [state] = useModel(fooModel);
33
+
34
+ return <div>{state.a}</div>;
35
+ }
36
+ ```
37
+
38
+ Although `ComponentA` only needs to use the `a` state, it will still be re-rendered when the `b` state changes. In this case, we can consider splitting `fooModel` into separate Models responsible for managing `a` and `b` respectively:
39
+
40
+ ```ts
41
+ const fooModel = model('foo').define({
42
+ state: {
43
+ a: '',
44
+ },
45
+ actions: {
46
+ setA(state, payload) {
47
+ state.a = payload;
48
+ },
49
+ },
50
+ });
51
+
52
+ const barModel = model('bar').define({
53
+ state: {
54
+ b: '',
55
+ },
56
+ actions: {
57
+ setB(state, payload) {
58
+ state.b = payload;
59
+ },
60
+ },
61
+ });
62
+ ```
63
+
64
+ ## State Selection
65
+
66
+ `useModel` supports passing in a selector function to filter the returned State and Actions for the component. We can use a selector function to ensure that the State returned to the component is what the component needs directly, thus ensuring that the component is not re-rendered due to changes in other unrelated states.
67
+
68
+ For the same example above, we can use a selector function for performance optimization, the code is as follows:
69
+
70
+ ```ts
71
+ const fooModel = model('foo').define({
72
+ state: {
73
+ a: '',
74
+ b: '',
75
+ },
76
+ actions: {
77
+ setA(state, payload) {
78
+ state.a = payload;
79
+ },
80
+ setB(state, payload) {
81
+ state.b = payload;
82
+ },
83
+ },
84
+ });
85
+
86
+ function ComponentA() {
87
+ // 通过传入 selector 函数,只返回 a 状态给组件
88
+ const [stateA] = useModel(fooModel, state => state.a);
89
+
90
+ return <div>{stateA}</div>;
91
+ }
92
+ ```
93
+
94
+ ## Derivative State Caching
95
+
96
+ When a Model has `computed` property, the `computed` function will be executed every time `useModel` is called.
97
+
98
+ Consider the following code:
99
+
100
+ ```ts
101
+ const barModel = model('bar').define({
102
+ state: {
103
+ value: 'bar',
104
+ },
105
+ computed: {
106
+ combineA: [
107
+ fooModel, // fooModel define as above
108
+ (state, fooState) => {
109
+ return state + fooState.a;
110
+ },
111
+ ],
112
+ },
113
+ actions: {
114
+ setValue(state, payload) {
115
+ state.value = payload;
116
+ },
117
+ },
118
+ });
119
+
120
+ function ComponentB() {
121
+ const [state, actions] = useModel(fooModel);
122
+ const [{ combineA }] = useModel(barModel);
123
+ // ...
124
+ }
125
+ ```
126
+ Even if the `b` state of `fooModel` changes, the `combineA` function (more precisely, the last function type element of `combineA`) will still be called and executed when the component is re-rendered, although the derivative state `combineA` of `barModel` depends on `barModel` itself and the state `a` of `fooModel`.
127
+
128
+ In general, the logic in the `computed` function is usually very lightweight, but when the logic in the `computed` function is relatively complex, we can consider caching the calculation logic. For example, we can use [reselect](https://github.com/reduxjs/reselect) to cache `combineA` of `barModel`:
129
+
130
+ ```ts
131
+ import 'createSelector' from 'reselect';
132
+
133
+ // create cache function
134
+ const selectCombineA = createSelector(
135
+ (state) => state.bar.value,
136
+ (state) => state.foo.a,
137
+ (barState, fooState) => {
138
+ return barState + fooState;
139
+ }
140
+ );
141
+
142
+ const barModel = model("bar").define({
143
+ state: {
144
+ value: "bar",
145
+ },
146
+ computed: {
147
+ combineA: [
148
+ fooModel,
149
+ (state, fooState) => {
150
+ return selectCombineA({
151
+ foo: fooState,
152
+ bar: state,
153
+ });
154
+ },
155
+ ],
156
+ },
157
+ actions: {
158
+ setValue(state, payload) {
159
+ state.value = payload;
160
+ },
161
+ },
162
+ });
163
+ ```
164
+
165
+ We created a caching function `createSelector`, which only recalculates the value of `combineA` when the state of `barModel` changes or the state `a` of `fooModel` changes.
166
+
167
+ :::info Additional Information
168
+ You can find the complete example code of this section [here](https://github.com/web-infra-dev/modern-js-examples/tree/main/series/tutorials/runtime-api/model/performance-optimization).
169
+ :::
170
+
@@ -0,0 +1,114 @@
1
+ ---
2
+ sidebar_position: 1
3
+ title: Quick Start
4
+ ---
5
+ # Quick Start
6
+
7
+ import ReduckMigration from "@site-docs/components/reduck-migration"
8
+
9
+ <ReduckMigration />
10
+
11
+ [Reduck](https://github.com/web-infra-dev/reduck) is a state management library developed by the Modern.js team that follows the MVC pattern. Its underlying state storage is based on [Redux](https://redux.js.org/) implementation, while providing a higher level of abstraction and full compatibility with the Redux ecosystem.
12
+
13
+ The goal of Reduck is to organize the development structure of React applications in the MVC pattern, maintain business logic in the Model layer, decoupling business logic from UI, making it easier for developers to focus on business logic, and reducing duplicated work (boilerplate code) through higher level of abstraction.
14
+
15
+ In the MVC pattern, Reduck plays the role of M(Model), React UI Component corresponds to V(View), and gets the Model from Reduck and modifies the Model's React Container Component, which corresponds to C(View Controller/Container).
16
+
17
+ The state management solution of Modern.js is implemented through built-in Reduck. Using Reduck in Modern.js not only eliminates the manual integration process, but also allows all Reduck APIs to be imported and used directly from the Modern.js Runtime package, providing a better consistency experience.
18
+
19
+ :::info
20
+ 1. To use Reduck APIs in Modern.js, you need to set [runtime.state](/configure/app/runtime/state) to enable the state management plugin.
21
+ 2. Reduck can also be used separately as a state management library [outside of Modern.js](/guides/topic-detail/model/use-out-of-modernjs).
22
+
23
+ :::
24
+
25
+ ## Core Concepts
26
+
27
+ There are only four core concepts in Reduck: Model, State, Actions, and Effects.
28
+
29
+ Model: Encapsulates the logic and required state of an independent module, consisting of State, Actions, and Effects.
30
+
31
+ State: The state stored in the Model.
32
+
33
+ Actions: Pure functions used to modify State, functions must be **Synchronous**.
34
+
35
+ Effects: Functions with side effects used to modify State, functions can be **Asynchronous**. Effects can call their own Actions and Effects or those of other Models.
36
+
37
+ The Reduck data flow is shown in the following figure:
38
+
39
+ ![Reduck Data Flow](https://lf3-static.bytednsdoc.com/obj/eden-cn/zq-uylkvT/ljhwZthlaukjlkulzlp/reduck-concept.svg)
40
+
41
+ ## Basic Usage
42
+
43
+ Next, let's take a simple **Counter** application as an example to demonstrate the basic usage of Reduck.
44
+
45
+ First, we define a Model named `count`:
46
+
47
+ ```js
48
+ import { model } from '@modern-js/runtime/model';
49
+
50
+ const countModel = model('count').define({
51
+ state: {
52
+ value: 1,
53
+ },
54
+ });
55
+
56
+ export default countModel;
57
+ ```
58
+
59
+ We use the API `model` to create `countModel`, which currently only contains the state that stores the counter `value`, that is, value in the code.
60
+
61
+ We define an action to increase the counter by 1:
62
+
63
+ ```js
64
+ import { model } from '@modern-js/runtime/model';
65
+
66
+ const countModel = model('count').define({
67
+ state: {
68
+ value: 1,
69
+ },
70
+ actions: {
71
+ add(state) {
72
+ state.value += 1;
73
+ },
74
+ },
75
+ });
76
+
77
+ export default countModel;
78
+ ```
79
+
80
+ In the `add` action, we can directly modify the value of the state and perform the increment operation without treating the state as an immutable object. This is because Reduck integrates [immer](https://github.com/immerjs/immer), which can directly modify the original state object.
81
+
82
+ Next, we will demonstrate how to use the Model in a component.
83
+
84
+ Create a new component called `Counter`, and use the `countModel` via the `useModel` API inside the component:
85
+
86
+ ```js
87
+ import { useModel } from '@modern-js/runtime/model';
88
+ import countModel from './models/count';
89
+
90
+ function Counter() {
91
+ const [state, actions] = useModel(countModel);
92
+
93
+ return (
94
+ <div>
95
+ <div>counter: {state.value}</div>
96
+ <button onClick={() => actions.add()}>add</button>
97
+ </div>
98
+ );
99
+ }
100
+ ```
101
+
102
+ `useModel` gets the `state` and `actions` of `countModel`. The component displays the current value of the counter, and clicking the `add` button increments the counter by 1.
103
+
104
+ :::info
105
+ Due to the simplicity of the example used here, the layering of the MVC pattern is not strictly followed. The `Counter` component acts as both the V and C layers.
106
+
107
+ :::
108
+
109
+ The final demonstration effect is as follows:
110
+
111
+ ![countModel](https://lf3-static.bytednsdoc.com/obj/eden-cn/eueh7vhojuh/modern/simple-count-model.gif)
112
+
113
+ That completes a simple counter application. You can view the complete example code for this section [here](https://github.com/web-infra-dev/modern-js-examples/tree/main/series/tutorials/runtime-api/model/counter-model).
114
+
@@ -0,0 +1,24 @@
1
+ ---
2
+ sidebar_position: 11
3
+ title: Ecosystem Integration
4
+ ---
5
+ # Redux Ecosystem Integration
6
+
7
+ Reduck is based on Redux, so you can use libraries from the [Redux ecosystem](https://redux.js.org/introduction/ecosystem) to enhance its functionality. APIs like [`Provider`](/apis/app/runtime/model/Provider), [`createApp`](/apis/app/runtime/model/create-app), and [`createStore`](/apis/app/runtime/model/create-store) allow you to configure the use of [middlewares](https://redux.js.org/understanding/thinking-in-redux/glossary#middleware) and [store enhancers](https://redux.js.org/understanding/thinking-in-redux/glossary#store-enhancer); and using [`createStore`](/apis/app/runtime/model/create-store), you can take complete control over the process of creating the store.
8
+
9
+ For example, if we want to use the middleware [`redux-logger`](https://github.com/LogRocket/redux-logger), the example code is as follows:
10
+
11
+
12
+ ```ts
13
+ ReactDOM.render(
14
+ <Provider config={{ middlewares: [logger] }}>
15
+ // Set middleware through the config parameter of Provider
16
+ <App />
17
+ </Provider>,
18
+ document.getElementById('root'),
19
+ );
20
+ ```
21
+
22
+ :::caution
23
+ Reduck is built on top of the lower-level Redux API, and abstracts away some of the underlying concepts of Redux, such as Reducers. Reduck allows models to be dynamically mounted, whereas Redux mounts all the necessary state at Store creation time. Due to these implementation differences, some libraries from the Redux ecosystem cannot be used directly in Reduck.
24
+ :::
@@ -0,0 +1,45 @@
1
+ ---
2
+ sidebar_position: 9
3
+ title: Test Model
4
+ ---
5
+ # Test Model
6
+
7
+ Testing is crucial for the stability of code. Here's an example using the `countModel` from [Quick Start](/guides/topic-detail/model/quick-start) to demonstrate how to perform unit testing on a Model in Modern.js.
8
+
9
+ To use the testing feature, you need to first enable it. In the project root directory, execute `pnpm run new` and make the following selection:
10
+
11
+ ```bash
12
+ ? Please select the operation you want to perform: Enable optional features
13
+ ? Enable optional features Enable "Unit Testing / Integration Testing" feature
14
+ ```
15
+
16
+ This will enable testing feature support.
17
+
18
+ Create a new file called `count.test.ts` with the following code:
19
+
20
+ ```ts
21
+ import { createStore } from '@modern-js/runtime/testing';
22
+ import countModel from './count';
23
+
24
+ describe('test model', () => {
25
+ it('count value should plus one after add', () => {
26
+ const store = createStore();
27
+ const [state, { add }] = store.use(countModel);
28
+
29
+ expect(state).toEqual({ value: 1 });
30
+
31
+ add();
32
+
33
+ expect(store.use(countModel)[0]).toEqual({ value: 2 });
34
+ });
35
+ });
36
+ ```
37
+
38
+ :::info
39
+ The [`createStore`](/apis/app/runtime/model/create-store) used here is imported from `@modern-js/runtime/testing`, which internally uses the configuration of [`runtime.state`](/configure/app/runtime/state) to create a `store`.
40
+
41
+ :::
42
+
43
+ In the test case, we create a new `store` to mount `countModel`, use `store.use` to get the State and Actions of `countModel`. Then, we call the `add` Action to update the state and assert the updated state value.
44
+
45
+ Execute the `pnpm run test` command to trigger the execution of the test case.
@@ -0,0 +1,72 @@
1
+ ---
2
+ sidebar_position: 10
3
+ title: TS Best Practices
4
+ ---
5
+ # TS Best Practices
6
+
7
+ Reduck provides excellent support for TypeScript, and in most cases, you can get API type prompts directly without any extra work. In this section, we will provide additional information on other usage scenarios.
8
+
9
+ ## Defining the State Type of the Model
10
+
11
+ Declaring type information for the State of a Model is a best practice when using Reduck in TypeScript.
12
+
13
+ ```ts
14
+ interface State {
15
+ data: string;
16
+ }
17
+
18
+ export const foo = model<State>('foo').define({
19
+ state: {
20
+ data: '',
21
+ },
22
+ computed: {
23
+ withSuffix: state => state.data + 'suffix',
24
+ },
25
+ actions: {
26
+ setData: (state, payload: string) => {
27
+ state.data = payload;
28
+ },
29
+ },
30
+ });
31
+ ```
32
+
33
+ When you declare type information for the State of a Model, the `computed` and `actions` of the Model can get the correct type information. In fact, even if we don't define State type information in the example code above, the type information of State can be automatically inferred based on the initial value information of `state`. However, we still recommend that you declare the type information of State when defining a Model because the type information of State inferred based on the initial value information of `state` may be incomplete (missing fields or field type information), and the type information of State cannot be automatically inferred based on the initial value information of `state` when using [Function Type](/apis/app/runtime/model/model_#函数类型) to define the Model.
34
+
35
+ ## Dependent types of Derived State
36
+
37
+ When the derived state of a Model depends on other Models, you need to manually specify the State of the other Models.
38
+
39
+
40
+ ```ts
41
+ interface State {
42
+ data: string;
43
+ }
44
+
45
+ export const bar = model<State>('bar').define({
46
+ state: {
47
+ data: '',
48
+ },
49
+ computed: {
50
+ // 为 fooState 指定类型
51
+ withFoo: [foo, (state, fooState: FooState) => state.data + fooState.data],
52
+ },
53
+ });
54
+ ```
55
+
56
+ ## Hooks for Getting Model Type Information
57
+
58
+ Reduck provides a set of utility types for getting Model type information:
59
+
60
+ - `GetModelState`: Get the type information of the State (including derived state) of the Model.
61
+ - `GetModelActions`: Get the type information of the Actions (including Effects functions) of the Model.
62
+
63
+ ```ts
64
+ export const foo = model<State2>('foo').define({
65
+ // 省略
66
+ });
67
+
68
+ // 获取 foo 的 State 类型
69
+ let fooActions: GetModelActions<typeof foo>;
70
+ // 获取 foo 的 Actions 类型
71
+ let fooState: GetModelState<typeof foo>;
72
+ ```