@modern-js/app-tools 3.4.0 → 3.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -48,6 +48,13 @@ async function generateBuilder(options, bundlerType) {
48
48
  else mergedEnvironments[name] = builderConfig.environments[name];
49
49
  builderConfig.environments = mergedEnvironments;
50
50
  } else builderConfig.environments = environments;
51
+ const hooks = appContext._internalContext.pluginAPI?.getHooks();
52
+ if (hooks?.modifyBuilderEnvironments) {
53
+ const { environments: modifiedEnvironments } = await hooks.modifyBuilderEnvironments.call({
54
+ environments: builderConfig.environments
55
+ });
56
+ builderConfig.environments = modifiedEnvironments;
57
+ }
51
58
  const builder = await (0, builder_namespaceObject.createBuilder)({
52
59
  cwd: appContext.appDirectory,
53
60
  rscClientRuntimePath: `@${appContext.metaName}/runtime/rsc/client`,
package/dist/cjs/index.js CHANGED
@@ -195,6 +195,7 @@ var __webpack_exports__ = {};
195
195
  deploy: (0, _modern_js_plugin__rspack_import_3.createAsyncHook)(),
196
196
  checkEntryPoint: (0, _modern_js_plugin__rspack_import_3.createAsyncHook)(),
197
197
  modifyEntrypoints: (0, _modern_js_plugin__rspack_import_3.createAsyncHook)(),
198
+ modifyBuilderEnvironments: (0, _modern_js_plugin__rspack_import_3.createAsyncHook)(),
198
199
  modifyFileSystemRoutes: (0, _modern_js_plugin__rspack_import_3.createAsyncHook)(),
199
200
  generateEntryCode: (0, _modern_js_plugin__rspack_import_3.createAsyncHook)(),
200
201
  onBeforeGenerateRoutes: (0, _modern_js_plugin__rspack_import_3.createAsyncHook)(),
@@ -16,6 +16,13 @@ async function generateBuilder(options, bundlerType) {
16
16
  else mergedEnvironments[name] = builderConfig.environments[name];
17
17
  builderConfig.environments = mergedEnvironments;
18
18
  } else builderConfig.environments = environments;
19
+ const hooks = appContext._internalContext.pluginAPI?.getHooks();
20
+ if (hooks?.modifyBuilderEnvironments) {
21
+ const { environments: modifiedEnvironments } = await hooks.modifyBuilderEnvironments.call({
22
+ environments: builderConfig.environments
23
+ });
24
+ builderConfig.environments = modifiedEnvironments;
25
+ }
19
26
  const builder = await createBuilder({
20
27
  cwd: appContext.appDirectory,
21
28
  rscClientRuntimePath: `@${appContext.metaName}/runtime/rsc/client`,
@@ -40,6 +40,7 @@ const appTools = ()=>({
40
40
  deploy: createAsyncHook(),
41
41
  checkEntryPoint: createAsyncHook(),
42
42
  modifyEntrypoints: createAsyncHook(),
43
+ modifyBuilderEnvironments: createAsyncHook(),
43
44
  modifyFileSystemRoutes: createAsyncHook(),
44
45
  generateEntryCode: createAsyncHook(),
45
46
  onBeforeGenerateRoutes: createAsyncHook(),
@@ -17,6 +17,13 @@ async function generateBuilder(options, bundlerType) {
17
17
  else mergedEnvironments[name] = builderConfig.environments[name];
18
18
  builderConfig.environments = mergedEnvironments;
19
19
  } else builderConfig.environments = environments;
20
+ const hooks = appContext._internalContext.pluginAPI?.getHooks();
21
+ if (hooks?.modifyBuilderEnvironments) {
22
+ const { environments: modifiedEnvironments } = await hooks.modifyBuilderEnvironments.call({
23
+ environments: builderConfig.environments
24
+ });
25
+ builderConfig.environments = modifiedEnvironments;
26
+ }
20
27
  const builder = await createBuilder({
21
28
  cwd: appContext.appDirectory,
22
29
  rscClientRuntimePath: `@${appContext.metaName}/runtime/rsc/client`,
@@ -42,6 +42,7 @@ const appTools = ()=>({
42
42
  deploy: createAsyncHook(),
43
43
  checkEntryPoint: createAsyncHook(),
44
44
  modifyEntrypoints: createAsyncHook(),
45
+ modifyBuilderEnvironments: createAsyncHook(),
45
46
  modifyFileSystemRoutes: createAsyncHook(),
46
47
  generateEntryCode: createAsyncHook(),
47
48
  onBeforeGenerateRoutes: createAsyncHook(),
@@ -2,6 +2,7 @@ import type { AppContext, AsyncHook, InternalContext, PluginHook, PluginHookTap,
2
2
  import type { Hooks } from '@modern-js/plugin/cli';
3
3
  import type { Entrypoint, HtmlPartials, HtmlTemplates, NestedRouteForCli, PageRoute, RouteLegacy, ServerPlugin, ServerRoute } from '@modern-js/types';
4
4
  import type { EagerRouteComponentFilesByEntry } from '@modern-js/utils';
5
+ import type { EnvironmentConfig } from '@rsbuild/core';
5
6
  import type { AppTools } from '.';
6
7
  import type { getHookRunners } from '../compat/hooks';
7
8
  import type { AppToolsNormalizedConfig, AppToolsUserConfig } from './config';
@@ -13,6 +14,9 @@ export type CheckEntryPointFn = TransformFunction<{
13
14
  export type ModifyEntrypointsFn = TransformFunction<{
14
15
  entrypoints: Entrypoint[];
15
16
  }>;
17
+ export type ModifyBuilderEnvironmentsFn = TransformFunction<{
18
+ environments: Record<string, EnvironmentConfig>;
19
+ }>;
16
20
  export type ModifyFileSystemRoutesFn = TransformFunction<{
17
21
  entrypoint: Entrypoint;
18
22
  routes: RouteLegacy[] | (NestedRouteForCli | PageRoute)[];
@@ -34,6 +38,7 @@ export interface AppToolsExtendAPI {
34
38
  deploy: PluginHookTap<DeplpoyFn>;
35
39
  checkEntryPoint: PluginHookTap<CheckEntryPointFn>;
36
40
  modifyEntrypoints: PluginHookTap<ModifyEntrypointsFn>;
41
+ modifyBuilderEnvironments: PluginHookTap<ModifyBuilderEnvironmentsFn>;
37
42
  modifyFileSystemRoutes: PluginHookTap<ModifyFileSystemRoutesFn>;
38
43
  generateEntryCode: PluginHookTap<GenerateEntryCodeFn>;
39
44
  onBeforeGenerateRoutes: PluginHookTap<BeforeGenerateRoutesFn>;
@@ -63,6 +68,7 @@ export interface AppToolsExtendHooks extends Record<string, PluginHook<(...args:
63
68
  deploy: AsyncHook<DeplpoyFn>;
64
69
  checkEntryPoint: AsyncHook<CheckEntryPointFn>;
65
70
  modifyEntrypoints: AsyncHook<ModifyEntrypointsFn>;
71
+ modifyBuilderEnvironments: AsyncHook<ModifyBuilderEnvironmentsFn>;
66
72
  modifyFileSystemRoutes: AsyncHook<ModifyFileSystemRoutesFn>;
67
73
  generateEntryCode: AsyncHook<GenerateEntryCodeFn>;
68
74
  onBeforeGenerateRoutes: AsyncHook<BeforeGenerateRoutesFn>;
package/package.json CHANGED
@@ -15,7 +15,7 @@
15
15
  "modern",
16
16
  "modern.js"
17
17
  ],
18
- "version": "3.4.0",
18
+ "version": "3.5.0",
19
19
  "types": "./dist/types/index.d.ts",
20
20
  "main": "./dist/cjs/index.js",
21
21
  "exports": {
@@ -83,7 +83,7 @@
83
83
  "@babel/parser": "^7.29.7",
84
84
  "@babel/traverse": "^7.29.7",
85
85
  "@babel/types": "^7.29.7",
86
- "@rsbuild/core": "2.0.10",
86
+ "@rsbuild/core": "2.1.0",
87
87
  "@swc/core": "1.15.41",
88
88
  "@swc/helpers": "^0.5.17",
89
89
  "es-module-lexer": "^1.7.0",
@@ -93,19 +93,19 @@
93
93
  "ndepe": "^0.1.13",
94
94
  "pkg-types": "^1.3.1",
95
95
  "std-env": "^3.10.0",
96
- "@modern-js/builder": "3.4.0",
97
- "@modern-js/plugin-data-loader": "3.4.0",
98
- "@modern-js/plugin": "3.4.0",
99
- "@modern-js/i18n-utils": "3.4.0",
100
- "@modern-js/prod-server": "3.4.0",
101
- "@modern-js/server-core": "3.4.0",
102
- "@modern-js/server": "3.4.0",
103
- "@modern-js/server-utils": "3.4.0",
104
- "@modern-js/types": "3.4.0",
105
- "@modern-js/utils": "3.4.0"
96
+ "@modern-js/builder": "3.5.0",
97
+ "@modern-js/i18n-utils": "3.5.0",
98
+ "@modern-js/plugin": "3.5.0",
99
+ "@modern-js/plugin-data-loader": "3.5.0",
100
+ "@modern-js/prod-server": "3.5.0",
101
+ "@modern-js/server": "3.5.0",
102
+ "@modern-js/server-core": "3.5.0",
103
+ "@modern-js/server-utils": "3.5.0",
104
+ "@modern-js/types": "3.5.0",
105
+ "@modern-js/utils": "3.5.0"
106
106
  },
107
107
  "devDependencies": {
108
- "@rslib/core": "0.22.1",
108
+ "@rslib/core": "0.23.0",
109
109
  "@types/babel__traverse": "7.28.0",
110
110
  "@types/node": "^20",
111
111
  "ts-node": "^10.9.2",