arui-scripts 23.0.2 → 23.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.turbo/turbo-test.log +5 -5
- package/CHANGELOG.md +6 -0
- package/build/commands/build/client.js +6 -6
- package/build/commands/build/server.js +2 -2
- package/build/commands/bundle-analyze/index.js +4 -4
- package/build/commands/start/client.js +2 -2
- package/build/commands/start/index.js +1 -1
- package/build/commands/start/server.js +2 -2
- package/build/commands/start-prod/client.js +2 -2
- package/build/commands/start-prod/index.js +1 -1
- package/build/commands/start-prod/server.js +2 -2
- package/build/configs/app-configs/get-defaults.js +1 -1
- package/build/configs/app-configs/types.d.ts +3 -1
- package/build/configs/app-configs/warn-about-deprecations.js +5 -0
- package/build/configs/modules.d.ts +3 -1
- package/build/configs/modules.js +5 -3
- package/build/configs/{webpack.client.dev.js → rspack.client.dev.js} +3 -3
- package/build/configs/{webpack.client.js → rspack.client.js} +4 -4
- package/build/configs/{webpack.client.prod.js → rspack.client.prod.js} +3 -3
- package/build/configs/{webpack.server.dev.js → rspack.server.dev.js} +2 -2
- package/build/configs/{webpack.server.prod.js → rspack.server.prod.js} +2 -2
- package/build/configs/util/apply-overrides.d.ts +53 -23
- package/build/configs/util/apply-overrides.js +38 -2
- package/build/configs/util/find-plugin.d.ts +2 -2
- package/build/index.d.ts +1 -1
- package/build/index.js +2 -1
- package/build/plugins/reload-server-plugin.d.ts +1 -1
- package/build/plugins/watch-missing-node-modules-plugin.d.ts +1 -1
- package/package.json +1 -7
- package/tsconfig-local.tsbuildinfo +1 -1
- /package/build/configs/{webpack.client.d.ts → rspack.client.d.ts} +0 -0
- /package/build/configs/{webpack.client.dev.d.ts → rspack.client.dev.d.ts} +0 -0
- /package/build/configs/{webpack.client.prod.d.ts → rspack.client.prod.d.ts} +0 -0
- /package/build/configs/{webpack.server.d.ts → rspack.server.d.ts} +0 -0
- /package/build/configs/{webpack.server.dev.d.ts → rspack.server.dev.d.ts} +0 -0
- /package/build/configs/{webpack.server.js → rspack.server.js} +0 -0
- /package/build/configs/{webpack.server.prod.d.ts → rspack.server.prod.d.ts} +0 -0
package/.turbo/turbo-test.log
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
ts-jest[versions] (WARN) Version 6.0.2 of typescript installed has not been tested with ts-jest. If you're experiencing issues, consider using a supported version (>=4.3.0 <6.0.0-0). Please do not report issues in ts-jest if you are using unsupported versions.
|
|
2
2
|
ts-jest[versions] (WARN) Version 6.0.2 of typescript installed has not been tested with ts-jest. If you're experiencing issues, consider using a supported version (>=4.3.0 <6.0.0-0). Please do not report issues in ts-jest if you are using unsupported versions.
|
|
3
3
|
ts-jest[versions] (WARN) Version 6.0.2 of typescript installed has not been tested with ts-jest. If you're experiencing issues, consider using a supported version (>=4.3.0 <6.0.0-0). Please do not report issues in ts-jest if you are using unsupported versions.
|
|
4
|
-
PASS src/
|
|
4
|
+
PASS src/configs/app-configs/__tests__/update-with-presets.tests.ts (23.818 s)
|
|
5
5
|
PASS src/configs/util/__tests__/create-watch-ignore-regex.tests.ts
|
|
6
6
|
PASS src/configs/util/__tests__/apply-overrides.tests.ts
|
|
7
|
-
PASS src/configs/app-configs/__tests__/update-with-presets.tests.ts (24.053 s)
|
|
8
7
|
PASS src/configs/app-configs/__tests__/update-with-env.tests.ts
|
|
8
|
+
PASS src/plugins/postcss-global-variables/utils/__tests__/add-global-variable.tests.ts (24.667 s)
|
|
9
9
|
PASS src/configs/app-configs/__tests__/update-with-package.tests.ts
|
|
10
10
|
PASS src/configs/util/__tests__/compress-with-dcb.test.ts
|
|
11
11
|
PASS src/configs/util/__tests__/get-polyfills.tests.ts
|
|
12
12
|
PASS src/plugins/postcss-global-variables/utils/__tests__/parse-variables.tests.ts
|
|
13
13
|
PASS src/plugins/postcss-global-variables/utils/__tests__/get-media-query-name.tests.ts
|
|
14
14
|
PASS src/configs/app-configs/__tests__/validate-settings-keys.tests.ts
|
|
15
|
-
PASS src/configs/__tests__/webpack-client-modules.tests.ts (
|
|
16
|
-
PASS src/configs/util/__tests__/find-plugin.tests.ts (41.
|
|
15
|
+
PASS src/configs/__tests__/webpack-client-modules.tests.ts (15.828 s)
|
|
16
|
+
PASS src/configs/util/__tests__/find-plugin.tests.ts (41.64 s)
|
|
17
17
|
A worker process has failed to exit gracefully and has been force exited. This is likely caused by tests leaking due to improper teardown. Try running with --detectOpenHandles to find leaks. Active timers can also cause this, ensure that .unref() was called on them.
|
|
18
18
|
|
|
19
19
|
Test Suites: 13 passed, 13 total
|
|
20
20
|
Tests: 31 passed, 31 total
|
|
21
21
|
Snapshots: 0 total
|
|
22
|
-
Time: 43.
|
|
22
|
+
Time: 43.267 s
|
|
23
23
|
Ran all test suites.
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# arui-scripts
|
|
2
2
|
|
|
3
|
+
## 23.1.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#537](https://github.com/core-ds/arui-scripts/pull/537) [`a1666b0`](https://github.com/core-ds/arui-scripts/commit/a1666b047e991acd2147dfd22197e31785be8fbf) Thanks [@dmitrbrvsk](https://github.com/dmitrbrvsk)! - переименование webpack-ключей оверрайдов в rspack с обратной совместимостью
|
|
8
|
+
|
|
3
9
|
## 23.0.2
|
|
4
10
|
|
|
5
11
|
### Patch Changes
|
|
@@ -13,17 +13,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
const chalk_1 = __importDefault(require("chalk"));
|
|
16
|
-
const
|
|
16
|
+
const rspack_client_prod_1 = require("../../configs/rspack.client.prod");
|
|
17
17
|
const client_assets_sizes_1 = require("../util/client-assets-sizes");
|
|
18
|
-
const webpack_client_prod_1 = require("../../configs/webpack.client.prod");
|
|
19
18
|
const load_browserslist_1 = require("../util/load-browserslist");
|
|
20
19
|
const print_build_error_1 = require("../util/print-build-error");
|
|
20
|
+
const build_wrapper_1 = __importDefault(require("./build-wrapper"));
|
|
21
21
|
(0, load_browserslist_1.loadBrowserslist)();
|
|
22
22
|
console.log(chalk_1.default.magenta('Building client...'));
|
|
23
23
|
function main() {
|
|
24
24
|
return __awaiter(this, void 0, void 0, function* () {
|
|
25
25
|
try {
|
|
26
|
-
const { stats, warnings } = yield (0, build_wrapper_1.default)(
|
|
26
|
+
const { stats, warnings } = yield (0, build_wrapper_1.default)(rspack_client_prod_1.webpackClientConfig);
|
|
27
27
|
if (warnings.length) {
|
|
28
28
|
console.log(chalk_1.default.yellow('Client compiled with warnings.\n'));
|
|
29
29
|
console.log(warnings.join('\n\n'));
|
|
@@ -37,11 +37,11 @@ function main() {
|
|
|
37
37
|
console.log(chalk_1.default.bold(`Sizes for "${webpackConfig.name || 'main'}"`));
|
|
38
38
|
(0, client_assets_sizes_1.printAssetsSizes)(stats);
|
|
39
39
|
}
|
|
40
|
-
if (Array.isArray(
|
|
41
|
-
|
|
40
|
+
if (Array.isArray(rspack_client_prod_1.webpackClientConfig)) {
|
|
41
|
+
rspack_client_prod_1.webpackClientConfig.forEach((conf, index) => printOutputSizes(conf, stats.stats[index]));
|
|
42
42
|
}
|
|
43
43
|
else {
|
|
44
|
-
printOutputSizes(
|
|
44
|
+
printOutputSizes(rspack_client_prod_1.webpackClientConfig, stats);
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
47
|
catch (err) {
|
|
@@ -5,12 +5,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const chalk_1 = __importDefault(require("chalk"));
|
|
7
7
|
const build_wrapper_1 = __importDefault(require("./build-wrapper"));
|
|
8
|
-
const
|
|
8
|
+
const rspack_server_prod_1 = require("../../configs/rspack.server.prod");
|
|
9
9
|
const supporting_node_1 = require("../../configs/supporting-node");
|
|
10
10
|
const print_build_error_1 = require("../util/print-build-error");
|
|
11
11
|
process.env.BROWSERSLIST = supporting_node_1.supportingNode.join(',');
|
|
12
12
|
console.log(chalk_1.default.magenta('Building server...'));
|
|
13
|
-
(0, build_wrapper_1.default)(
|
|
13
|
+
(0, build_wrapper_1.default)(rspack_server_prod_1.webpackServerConfig)
|
|
14
14
|
.then(({ warnings }) => {
|
|
15
15
|
if (warnings.length) {
|
|
16
16
|
console.log(chalk_1.default.yellow('Server compiled with warnings.\n'));
|
|
@@ -13,7 +13,7 @@ const rspack_plugin_1 = require("@rsdoctor/rspack-plugin");
|
|
|
13
13
|
const core_1 = require("@rspack/core");
|
|
14
14
|
const webpack_bundle_analyzer_1 = require("webpack-bundle-analyzer");
|
|
15
15
|
const app_configs_1 = require("../../configs/app-configs");
|
|
16
|
-
const
|
|
16
|
+
const rspack_client_prod_1 = require("../../configs/rspack.client.prod");
|
|
17
17
|
const make_tmp_dir_1 = require("../util/make-tmp-dir");
|
|
18
18
|
// В rspack по умолчанию больше не включаются эти поля, но для webpack-bundle-analyzer они нужны
|
|
19
19
|
// https://rspack.rs/guide/migration/rspack_1.x#changed-default-parameters-of-statstojson
|
|
@@ -28,9 +28,9 @@ const bundleAnalyzerStatsOptions = {
|
|
|
28
28
|
};
|
|
29
29
|
(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
30
30
|
console.log('Starting bundle analysis...');
|
|
31
|
-
const clientWebpackConfigs = Array.isArray(
|
|
32
|
-
?
|
|
33
|
-
: [
|
|
31
|
+
const clientWebpackConfigs = Array.isArray(rspack_client_prod_1.webpackClientConfig)
|
|
32
|
+
? rspack_client_prod_1.webpackClientConfig
|
|
33
|
+
: [rspack_client_prod_1.webpackClientConfig];
|
|
34
34
|
/* eslint-disable no-param-reassign */
|
|
35
35
|
const promises = clientWebpackConfigs.map((webpackConfig, i) => __awaiter(void 0, void 0, void 0, function* () {
|
|
36
36
|
const tmpDir = yield (0, make_tmp_dir_1.makeTmpDir)(i.toString());
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const
|
|
3
|
+
const rspack_client_dev_1 = require("../../configs/rspack.client.dev");
|
|
4
4
|
const load_browserslist_1 = require("../util/load-browserslist");
|
|
5
5
|
const run_client_dev_server_1 = require("../util/run-client-dev-server");
|
|
6
6
|
(0, load_browserslist_1.loadBrowserslist)();
|
|
7
|
-
(0, run_client_dev_server_1.runClientDevServer)(
|
|
7
|
+
(0, run_client_dev_server_1.runClientDevServer)(rspack_client_dev_1.config);
|
|
@@ -7,7 +7,7 @@ const compilersCommands = [require.resolve('./client')];
|
|
|
7
7
|
if (!app_configs_1.configs.clientOnly) {
|
|
8
8
|
compilersCommands.push(require.resolve('./server'));
|
|
9
9
|
}
|
|
10
|
-
if (app_configs_1.configs.tsconfig && app_configs_1.configs.
|
|
10
|
+
if (app_configs_1.configs.tsconfig && app_configs_1.configs.disableDevRspackTypecheck) {
|
|
11
11
|
compilersCommands.push((0, tsc_1.getTscWatchCommand)(app_configs_1.configs.tsconfig));
|
|
12
12
|
}
|
|
13
13
|
(0, run_compilers_1.runCompilers)(compilersCommands);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const rspack_server_dev_1 = require("../../configs/rspack.server.dev");
|
|
3
4
|
const supporting_node_1 = require("../../configs/supporting-node");
|
|
4
|
-
const webpack_server_dev_1 = require("../../configs/webpack.server.dev");
|
|
5
5
|
const run_server_watch_compiler_1 = require("../util/run-server-watch-compiler");
|
|
6
6
|
process.env.BROWSERSLIST = supporting_node_1.supportingNode.join(',');
|
|
7
|
-
(0, run_server_watch_compiler_1.runServerWatchCompiler)(
|
|
7
|
+
(0, run_server_watch_compiler_1.runServerWatchCompiler)(rspack_server_dev_1.webpackServerConfig);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const
|
|
3
|
+
const rspack_client_prod_1 = require("../../configs/rspack.client.prod");
|
|
4
4
|
const load_browserslist_1 = require("../util/load-browserslist");
|
|
5
5
|
const run_client_dev_server_1 = require("../util/run-client-dev-server");
|
|
6
6
|
(0, load_browserslist_1.loadBrowserslist)();
|
|
7
|
-
(0, run_client_dev_server_1.runClientDevServer)(
|
|
7
|
+
(0, run_client_dev_server_1.runClientDevServer)(rspack_client_prod_1.webpackClientConfig);
|
|
@@ -7,7 +7,7 @@ const compilersCommands = [require.resolve('./client')];
|
|
|
7
7
|
if (!app_configs_1.configs.clientOnly) {
|
|
8
8
|
compilersCommands.push(require.resolve('./server'));
|
|
9
9
|
}
|
|
10
|
-
if (app_configs_1.configs.tsconfig && app_configs_1.configs.
|
|
10
|
+
if (app_configs_1.configs.tsconfig && app_configs_1.configs.disableDevRspackTypecheck) {
|
|
11
11
|
compilersCommands.push((0, tsc_1.getTscWatchCommand)(app_configs_1.configs.tsconfig));
|
|
12
12
|
}
|
|
13
13
|
(0, run_compilers_1.runCompilers)(compilersCommands);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const rspack_server_prod_1 = require("../../configs/rspack.server.prod");
|
|
3
4
|
const supporting_node_1 = require("../../configs/supporting-node");
|
|
4
|
-
const webpack_server_prod_1 = require("../../configs/webpack.server.prod");
|
|
5
5
|
const run_server_watch_compiler_1 = require("../util/run-server-watch-compiler");
|
|
6
6
|
process.env.BROWSERSLIST = supporting_node_1.supportingNode.join(',');
|
|
7
|
-
(0, run_server_watch_compiler_1.runServerWatchCompiler)(
|
|
7
|
+
(0, run_server_watch_compiler_1.runServerWatchCompiler)(rspack_server_prod_1.webpackServerConfig);
|
|
@@ -56,7 +56,7 @@ function getDefaultAppConfig() {
|
|
|
56
56
|
codeLoader: 'swc',
|
|
57
57
|
experimentalReactCompiler: 'disabled',
|
|
58
58
|
installServerSourceMaps: false,
|
|
59
|
-
|
|
59
|
+
disableDevRspackTypecheck: true,
|
|
60
60
|
jestCodeTransformer: 'swc',
|
|
61
61
|
collectCoverage: process.env.NODE_ENV === 'cypress' || process.env.USE_ISTANBUL === 'enabled',
|
|
62
62
|
// image processing
|
|
@@ -44,7 +44,9 @@ export type AppConfigs = {
|
|
|
44
44
|
codeLoader: 'babel' | 'tsc' | 'swc';
|
|
45
45
|
experimentalReactCompiler: 'disabled' | ReactCompilerOptions;
|
|
46
46
|
installServerSourceMaps: boolean;
|
|
47
|
-
|
|
47
|
+
disableDevRspackTypecheck: boolean;
|
|
48
|
+
/** @deprecated используйте `disableDevRspackTypecheck` */
|
|
49
|
+
disableDevWebpackTypecheck?: boolean;
|
|
48
50
|
jestCodeTransformer: 'babel' | 'tsc' | 'swc';
|
|
49
51
|
collectCoverage: boolean;
|
|
50
52
|
dataUrlMaxSize?: number;
|
|
@@ -7,6 +7,11 @@ function warnAboutDeprecations(config) {
|
|
|
7
7
|
// eslint-disable-next-line no-param-reassign
|
|
8
8
|
config.proxy = convertObjectProxyConfigurationToArray(config.proxy);
|
|
9
9
|
}
|
|
10
|
+
if (config.disableDevWebpackTypecheck !== undefined) {
|
|
11
|
+
console.warn('Настройка `disableDevWebpackTypecheck` устарела, используйте `disableDevRspackTypecheck`. ', 'Поддержка `disableDevWebpackTypecheck` будет скоро удалена.');
|
|
12
|
+
// eslint-disable-next-line no-param-reassign
|
|
13
|
+
config.disableDevRspackTypecheck = config.disableDevWebpackTypecheck;
|
|
14
|
+
}
|
|
10
15
|
}
|
|
11
16
|
function convertObjectProxyConfigurationToArray(proxyConfiguration) {
|
|
12
17
|
const arrayProxy = [];
|
|
@@ -3,7 +3,9 @@ import { type CompatModuleConfig } from './app-configs/types';
|
|
|
3
3
|
export declare function haveExposedDefaultModules(): Record<string, string> | undefined;
|
|
4
4
|
export declare const MODULES_ENTRY_NAME = "remoteEntry.js";
|
|
5
5
|
export declare const MODULES_SEPARATE_BUILD_NAME = "wmf";
|
|
6
|
-
export declare function
|
|
6
|
+
export declare function patchMainRspackConfigForModules(webpackConf: rspack.Configuration, mode: 'consumer' | 'provider' | 'both'): rspack.RspackOptions;
|
|
7
|
+
/** @deprecated используйте `patchMainRspackConfigForModules` */
|
|
8
|
+
export declare const patchMainWebpackConfigForModules: typeof patchMainRspackConfigForModules;
|
|
7
9
|
export declare function getCssPrefixForModule(module: CompatModuleConfig): string | undefined;
|
|
8
10
|
export declare function getExposeLoadersFormCompatModules(): {
|
|
9
11
|
test: string;
|
package/build/configs/modules.js
CHANGED
|
@@ -33,9 +33,9 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.MODULES_SEPARATE_BUILD_NAME = exports.MODULES_ENTRY_NAME = void 0;
|
|
36
|
+
exports.patchMainWebpackConfigForModules = exports.MODULES_SEPARATE_BUILD_NAME = exports.MODULES_ENTRY_NAME = void 0;
|
|
37
37
|
exports.haveExposedDefaultModules = haveExposedDefaultModules;
|
|
38
|
-
exports.
|
|
38
|
+
exports.patchMainRspackConfigForModules = patchMainRspackConfigForModules;
|
|
39
39
|
exports.getCssPrefixForModule = getCssPrefixForModule;
|
|
40
40
|
exports.getExposeLoadersFormCompatModules = getExposeLoadersFormCompatModules;
|
|
41
41
|
exports.patchWebpackConfigForCompat = patchWebpackConfigForCompat;
|
|
@@ -57,7 +57,7 @@ function getModuleFederationContainerName() {
|
|
|
57
57
|
function getSeparateBuildRuntimeName() {
|
|
58
58
|
return `${getModuleFederationContainerName().replace(/\W/g, '_')}_${exports.MODULES_SEPARATE_BUILD_NAME}`;
|
|
59
59
|
}
|
|
60
|
-
function
|
|
60
|
+
function patchMainRspackConfigForModules(webpackConf, mode) {
|
|
61
61
|
var _a, _b;
|
|
62
62
|
/* eslint-disable no-param-reassign */
|
|
63
63
|
const isConsumer = mode === 'consumer' || mode === 'both';
|
|
@@ -104,6 +104,8 @@ function patchMainWebpackConfigForModules(webpackConf, mode) {
|
|
|
104
104
|
return webpackConf;
|
|
105
105
|
/* eslint-enable no-param-reassign */
|
|
106
106
|
}
|
|
107
|
+
/** @deprecated используйте `patchMainRspackConfigForModules` */
|
|
108
|
+
exports.patchMainWebpackConfigForModules = patchMainRspackConfigForModules;
|
|
107
109
|
function getCssPrefixForModule(module) {
|
|
108
110
|
if (module.cssPrefix) {
|
|
109
111
|
return module.cssPrefix;
|
|
@@ -4,9 +4,9 @@ exports.config = void 0;
|
|
|
4
4
|
const apply_overrides_1 = require("./util/apply-overrides");
|
|
5
5
|
const find_loader_1 = require("./util/find-loader");
|
|
6
6
|
const find_plugin_1 = require("./util/find-plugin");
|
|
7
|
-
const
|
|
8
|
-
exports.config = (0, apply_overrides_1.applyOverrides)(['
|
|
9
|
-
createSingleClientWebpackConfig:
|
|
7
|
+
const rspack_client_1 = require("./rspack.client");
|
|
8
|
+
exports.config = (0, apply_overrides_1.applyOverrides)(['rspack', 'rspackClient', 'rspackDev', 'rspackClientDev'], (0, rspack_client_1.createClientWebpackConfig)('dev'), {
|
|
9
|
+
createSingleClientWebpackConfig: rspack_client_1.createSingleClientWebpackConfig.bind(null, 'dev'),
|
|
10
10
|
findLoader: find_loader_1.findLoader,
|
|
11
11
|
findPlugin: (0, find_plugin_1.createFindPluginFunction)(),
|
|
12
12
|
});
|
|
@@ -294,7 +294,7 @@ const createSingleClientWebpackConfig = (mode, entry, configName) => (Object.ass
|
|
|
294
294
|
insert: (0, arui_runtime_1.getInsertCssRuntimeMethod)(),
|
|
295
295
|
};
|
|
296
296
|
})()),
|
|
297
|
-
(mode === 'prod' || !app_configs_1.configs.
|
|
297
|
+
(mode === 'prod' || !app_configs_1.configs.disableDevRspackTypecheck) &&
|
|
298
298
|
app_configs_1.configs.tsconfig !== null &&
|
|
299
299
|
app_configs_1.configs.codeLoader !== 'tsc' &&
|
|
300
300
|
new ts_checker_rspack_plugin_1.TsCheckerRspackPlugin(),
|
|
@@ -381,11 +381,11 @@ const createClientWebpackConfig = (mode) => {
|
|
|
381
381
|
var _a, _b, _c;
|
|
382
382
|
const baseWebpackConfig = [(0, exports.createSingleClientWebpackConfig)(mode, app_configs_1.configs.clientEntry)];
|
|
383
383
|
if ((_b = (_a = app_configs_1.configs.modules) === null || _a === void 0 ? void 0 : _a.options) === null || _b === void 0 ? void 0 : _b.useSeparateBuild) {
|
|
384
|
-
baseWebpackConfig[0] = (0, modules_1.
|
|
385
|
-
baseWebpackConfig.push((0, modules_1.
|
|
384
|
+
baseWebpackConfig[0] = (0, modules_1.patchMainRspackConfigForModules)(baseWebpackConfig[0], 'consumer');
|
|
385
|
+
baseWebpackConfig.push((0, modules_1.patchMainRspackConfigForModules)((0, exports.createSingleClientWebpackConfig)(mode, {}, modules_1.MODULES_SEPARATE_BUILD_NAME), 'provider'));
|
|
386
386
|
}
|
|
387
387
|
else {
|
|
388
|
-
baseWebpackConfig[0] = (0, modules_1.
|
|
388
|
+
baseWebpackConfig[0] = (0, modules_1.patchMainRspackConfigForModules)(baseWebpackConfig[0], 'both');
|
|
389
389
|
}
|
|
390
390
|
const exposedCompatModules = (_c = app_configs_1.configs.compatModules) === null || _c === void 0 ? void 0 : _c.exposes;
|
|
391
391
|
if (!exposedCompatModules || Object.keys(exposedCompatModules).length === 0) {
|
|
@@ -4,9 +4,9 @@ exports.webpackClientConfig = void 0;
|
|
|
4
4
|
const apply_overrides_1 = require("./util/apply-overrides");
|
|
5
5
|
const find_loader_1 = require("./util/find-loader");
|
|
6
6
|
const find_plugin_1 = require("./util/find-plugin");
|
|
7
|
-
const
|
|
8
|
-
exports.webpackClientConfig = (0, apply_overrides_1.applyOverrides)(['
|
|
9
|
-
createSingleClientWebpackConfig:
|
|
7
|
+
const rspack_client_1 = require("./rspack.client");
|
|
8
|
+
exports.webpackClientConfig = (0, apply_overrides_1.applyOverrides)(['rspack', 'rspackClient', 'rspackProd', 'rspackClientProd'], (0, rspack_client_1.createClientWebpackConfig)('prod'), {
|
|
9
|
+
createSingleClientWebpackConfig: rspack_client_1.createSingleClientWebpackConfig.bind(null, 'prod'),
|
|
10
10
|
findLoader: find_loader_1.findLoader,
|
|
11
11
|
findPlugin: (0, find_plugin_1.createFindPluginFunction)(),
|
|
12
12
|
});
|
|
@@ -4,5 +4,5 @@ exports.webpackServerConfig = void 0;
|
|
|
4
4
|
const apply_overrides_1 = require("./util/apply-overrides");
|
|
5
5
|
const find_loader_1 = require("./util/find-loader");
|
|
6
6
|
const find_plugin_1 = require("./util/find-plugin");
|
|
7
|
-
const
|
|
8
|
-
exports.webpackServerConfig = (0, apply_overrides_1.applyOverrides)(['
|
|
7
|
+
const rspack_server_1 = require("./rspack.server");
|
|
8
|
+
exports.webpackServerConfig = (0, apply_overrides_1.applyOverrides)(['rspack', 'rspackServer', 'rspackDev', 'rspackServerDev'], (0, rspack_server_1.createServerConfig)('dev'), { findLoader: find_loader_1.findLoader, findPlugin: (0, find_plugin_1.createFindPluginFunction)() });
|
|
@@ -4,5 +4,5 @@ exports.webpackServerConfig = void 0;
|
|
|
4
4
|
const apply_overrides_1 = require("./util/apply-overrides");
|
|
5
5
|
const find_loader_1 = require("./util/find-loader");
|
|
6
6
|
const find_plugin_1 = require("./util/find-plugin");
|
|
7
|
-
const
|
|
8
|
-
exports.webpackServerConfig = (0, apply_overrides_1.applyOverrides)(['
|
|
7
|
+
const rspack_server_1 = require("./rspack.server");
|
|
8
|
+
exports.webpackServerConfig = (0, apply_overrides_1.applyOverrides)(['rspack', 'rspackServer', 'rspackProd', 'rspackServerProd'], (0, rspack_server_1.createServerConfig)('prod'), { findLoader: find_loader_1.findLoader, findPlugin: (0, find_plugin_1.createFindPluginFunction)() });
|
|
@@ -2,19 +2,19 @@ import type * as rspack from '@rspack/core';
|
|
|
2
2
|
import { type Configuration as RspackDevServerConfiguration } from '@rspack/dev-server';
|
|
3
3
|
import { type Options as SwcOptions } from '@swc/core';
|
|
4
4
|
import { type AppContextWithConfigs } from '../app-configs/types';
|
|
5
|
-
import { type createSingleClientWebpackConfig } from '../
|
|
5
|
+
import { type createSingleClientWebpackConfig } from '../rspack.client';
|
|
6
6
|
import { type findLoader } from './find-loader';
|
|
7
7
|
import { type createFindPluginFunction } from './find-plugin';
|
|
8
8
|
type Overrides = {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
9
|
+
rspack: rspack.Configuration | rspack.Configuration[];
|
|
10
|
+
rspackClient: rspack.Configuration | rspack.Configuration[];
|
|
11
|
+
rspackDev: rspack.Configuration | rspack.Configuration[];
|
|
12
|
+
rspackClientDev: rspack.Configuration | rspack.Configuration[];
|
|
13
|
+
rspackServer: rspack.Configuration;
|
|
14
|
+
rspackServerDev: rspack.Configuration;
|
|
15
|
+
rspackProd: rspack.Configuration;
|
|
16
|
+
rspackClientProd: rspack.Configuration | rspack.Configuration[];
|
|
17
|
+
rspackServerProd: rspack.Configuration;
|
|
18
18
|
devServer: RspackDevServerConfiguration;
|
|
19
19
|
stats: rspack.RspackOptionsNormalized['stats'];
|
|
20
20
|
babel: any;
|
|
@@ -37,14 +37,26 @@ type Overrides = {
|
|
|
37
37
|
serverExternalsExemptions: Array<string | RegExp>;
|
|
38
38
|
html: string;
|
|
39
39
|
};
|
|
40
|
+
declare const DEPRECATED_OVERRIDE_KEYS: {
|
|
41
|
+
readonly webpack: "rspack";
|
|
42
|
+
readonly webpackClient: "rspackClient";
|
|
43
|
+
readonly webpackDev: "rspackDev";
|
|
44
|
+
readonly webpackClientDev: "rspackClientDev";
|
|
45
|
+
readonly webpackServer: "rspackServer";
|
|
46
|
+
readonly webpackServerDev: "rspackServerDev";
|
|
47
|
+
readonly webpackProd: "rspackProd";
|
|
48
|
+
readonly webpackClientProd: "rspackClientProd";
|
|
49
|
+
readonly webpackServerProd: "rspackServerProd";
|
|
50
|
+
};
|
|
51
|
+
type DeprecatedOverrideKey = keyof typeof DEPRECATED_OVERRIDE_KEYS;
|
|
40
52
|
type OmitFirstArg<F> = F extends (x: any, ...args: infer P) => infer R ? (...args: P) => R : never;
|
|
41
53
|
type BoundCreateSingleClientWebpackConfig = OmitFirstArg<typeof createSingleClientWebpackConfig>;
|
|
42
|
-
type
|
|
54
|
+
type ClientRspackAdditionalArgs = {
|
|
43
55
|
createSingleClientWebpackConfig: BoundCreateSingleClientWebpackConfig;
|
|
44
56
|
findLoader: typeof findLoader;
|
|
45
57
|
findPlugin: ReturnType<typeof createFindPluginFunction<'client'>>;
|
|
46
58
|
};
|
|
47
|
-
type
|
|
59
|
+
type ServerRspackAdditionalArgs = {
|
|
48
60
|
findLoader: typeof findLoader;
|
|
49
61
|
findPlugin: ReturnType<typeof createFindPluginFunction<'server'>>;
|
|
50
62
|
};
|
|
@@ -52,20 +64,38 @@ type ServerWebpackAdditionalArgs = {
|
|
|
52
64
|
* Дополнительные аргументы, которые будут переданы в функцию оверрайда
|
|
53
65
|
*/
|
|
54
66
|
type OverridesAdditionalArgs = {
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
67
|
+
rspack: ClientRspackAdditionalArgs;
|
|
68
|
+
rspackClient: ClientRspackAdditionalArgs;
|
|
69
|
+
rspackDev: ClientRspackAdditionalArgs;
|
|
70
|
+
rspackClientDev: ClientRspackAdditionalArgs;
|
|
71
|
+
rspackProd: ClientRspackAdditionalArgs;
|
|
72
|
+
rspackClientProd: ClientRspackAdditionalArgs;
|
|
73
|
+
rspackServer: ServerRspackAdditionalArgs;
|
|
74
|
+
rspackServerDev: ServerRspackAdditionalArgs;
|
|
75
|
+
rspackServerProd: ServerRspackAdditionalArgs;
|
|
76
|
+
/** @deprecated используйте rspack */
|
|
77
|
+
webpack: ClientRspackAdditionalArgs;
|
|
78
|
+
/** @deprecated используйте rspackClient */
|
|
79
|
+
webpackClient: ClientRspackAdditionalArgs;
|
|
80
|
+
/** @deprecated используйте rspackDev */
|
|
81
|
+
webpackDev: ClientRspackAdditionalArgs;
|
|
82
|
+
/** @deprecated используйте rspackClientDev */
|
|
83
|
+
webpackClientDev: ClientRspackAdditionalArgs;
|
|
84
|
+
/** @deprecated используйте rspackProd */
|
|
85
|
+
webpackProd: ClientRspackAdditionalArgs;
|
|
86
|
+
/** @deprecated используйте rspackClientProd */
|
|
87
|
+
webpackClientProd: ClientRspackAdditionalArgs;
|
|
88
|
+
/** @deprecated используйте rspackServer */
|
|
89
|
+
webpackServer: ServerRspackAdditionalArgs;
|
|
90
|
+
/** @deprecated используйте rspackServerDev */
|
|
91
|
+
webpackServerDev: ServerRspackAdditionalArgs;
|
|
92
|
+
/** @deprecated используйте rspackServerProd */
|
|
93
|
+
webpackServerProd: ServerRspackAdditionalArgs;
|
|
64
94
|
};
|
|
65
|
-
type OverrideFunction<K extends keyof Overrides
|
|
95
|
+
type OverrideFunction<K extends keyof Overrides> = (config: Overrides[K], appConfig: AppContextWithConfigs, additionalArgs: K extends keyof OverridesAdditionalArgs ? OverridesAdditionalArgs[K] : undefined) => Overrides[K];
|
|
66
96
|
export type OverrideFile = {
|
|
67
97
|
[K in keyof Overrides]?: OverrideFunction<K>;
|
|
68
|
-
}
|
|
98
|
+
} & Partial<Record<DeprecatedOverrideKey, OverrideFunction<'rspack'>>>;
|
|
69
99
|
/**
|
|
70
100
|
*
|
|
71
101
|
* @param {String|String[]} overridesKey Ключи оверрайда
|
|
@@ -2,6 +2,40 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.applyOverrides = applyOverrides;
|
|
4
4
|
const app_configs_1 = require("../app-configs");
|
|
5
|
+
// Маппинг устаревших webpack-ключей оверрайдов на актуальные ключи для rspack
|
|
6
|
+
// Поддержка webpack-ключей будет скоро удалена.
|
|
7
|
+
const DEPRECATED_OVERRIDE_KEYS = {
|
|
8
|
+
webpack: 'rspack',
|
|
9
|
+
webpackClient: 'rspackClient',
|
|
10
|
+
webpackDev: 'rspackDev',
|
|
11
|
+
webpackClientDev: 'rspackClientDev',
|
|
12
|
+
webpackServer: 'rspackServer',
|
|
13
|
+
webpackServerDev: 'rspackServerDev',
|
|
14
|
+
webpackProd: 'rspackProd',
|
|
15
|
+
webpackClientProd: 'rspackClientProd',
|
|
16
|
+
webpackServerProd: 'rspackServerProd',
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* Переносит устаревшие webpack-ключи оверрайдов на актуальные rspack-ключи и
|
|
20
|
+
* предупреждает о необходимости миграции. Если заданы оба ключа — приоритет у
|
|
21
|
+
* нового, устаревший игнорируется.
|
|
22
|
+
*/
|
|
23
|
+
function normalizeDeprecatedOverrideKeys(override) {
|
|
24
|
+
const result = Object.assign({}, override);
|
|
25
|
+
Object.keys(DEPRECATED_OVERRIDE_KEYS).forEach((deprecatedKey) => {
|
|
26
|
+
if (!Object.prototype.hasOwnProperty.call(result, deprecatedKey)) {
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
const newKey = DEPRECATED_OVERRIDE_KEYS[deprecatedKey];
|
|
30
|
+
console.warn(`[arui-scripts] Ключ оверрайда "${deprecatedKey}" устарел, используйте "${newKey}". ` +
|
|
31
|
+
`Поддержка "${deprecatedKey}" будет скоре удалена.`);
|
|
32
|
+
if (!Object.prototype.hasOwnProperty.call(result, newKey)) {
|
|
33
|
+
result[newKey] = result[deprecatedKey];
|
|
34
|
+
}
|
|
35
|
+
delete result[deprecatedKey];
|
|
36
|
+
});
|
|
37
|
+
return result;
|
|
38
|
+
}
|
|
5
39
|
let overrides = [];
|
|
6
40
|
overrides = app_configs_1.configs.overridesPath.map((path) => {
|
|
7
41
|
try {
|
|
@@ -10,9 +44,9 @@ overrides = app_configs_1.configs.overridesPath.map((path) => {
|
|
|
10
44
|
// eslint-disable-next-line no-underscore-dangle
|
|
11
45
|
if (requireResult.__esModule) {
|
|
12
46
|
// ts-node импортирует esModules, из них надо вытягивать default именно так
|
|
13
|
-
return requireResult.default;
|
|
47
|
+
return normalizeDeprecatedOverrideKeys(requireResult.default);
|
|
14
48
|
}
|
|
15
|
-
return requireResult;
|
|
49
|
+
return normalizeDeprecatedOverrideKeys(requireResult);
|
|
16
50
|
}
|
|
17
51
|
catch (e) {
|
|
18
52
|
console.error(`Unable to process override file "${path}"`);
|
|
@@ -40,6 +74,8 @@ function applyOverrides(overridesKey, config, args) {
|
|
|
40
74
|
throw new TypeError(`Override ${key} must be a function`);
|
|
41
75
|
}
|
|
42
76
|
// eslint-disable-next-line no-param-reassign
|
|
77
|
+
// @ts-expect-error Union type conflict between rspack and deprecated webpack keys - resolved at runtime
|
|
78
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any,no-param-reassign
|
|
43
79
|
config = overrideFn(config, app_configs_1.configs, args);
|
|
44
80
|
}
|
|
45
81
|
});
|
|
@@ -5,10 +5,10 @@ import type AssetsPlugin from 'assets-webpack-plugin';
|
|
|
5
5
|
import type CaseSensitivePathsPlugin from 'case-sensitive-paths-webpack-plugin';
|
|
6
6
|
import type CompressionPlugin from 'compression-webpack-plugin';
|
|
7
7
|
import type MiniCssExtractPlugin from 'mini-css-extract-plugin';
|
|
8
|
+
import { type RspackManifestPlugin } from 'rspack-manifest-plugin';
|
|
8
9
|
import { type RunScriptWebpackPlugin } from 'run-script-webpack-plugin';
|
|
9
10
|
import { type TsCheckerRspackPluginOptions } from 'ts-checker-rspack-plugin/lib/plugin-options';
|
|
10
11
|
import { type WebpackDeduplicationPlugin } from 'webpack-deduplication-plugin';
|
|
11
|
-
import { type WebpackManifestPlugin } from 'webpack-manifest-plugin';
|
|
12
12
|
type PluginsListClient = {
|
|
13
13
|
AssetsWebpackPlugin: {
|
|
14
14
|
options: AssetsPlugin.Options;
|
|
@@ -45,7 +45,7 @@ type PluginsListClient = {
|
|
|
45
45
|
};
|
|
46
46
|
};
|
|
47
47
|
WebpackManifestPlugin: {
|
|
48
|
-
options: ConstructorParameters<typeof
|
|
48
|
+
options: ConstructorParameters<typeof RspackManifestPlugin>[number];
|
|
49
49
|
};
|
|
50
50
|
CompressionPlugin: {
|
|
51
51
|
options: ConstructorParameters<typeof CompressionPlugin>[number];
|
package/build/index.d.ts
CHANGED
|
@@ -3,4 +3,4 @@ export type { AppConfigs, CompatModuleConfig, PackageSettings } from './configs/
|
|
|
3
3
|
export { prepareFilesForDocker } from './commands/util/docker-build';
|
|
4
4
|
export { getBuildParamsFromArgs } from './commands/util/docker-build';
|
|
5
5
|
export { getDockerBuildCommand } from './commands/util/docker-build';
|
|
6
|
-
export { patchMainWebpackConfigForModules } from './configs/modules';
|
|
6
|
+
export { patchMainRspackConfigForModules, patchMainWebpackConfigForModules, } from './configs/modules';
|
package/build/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.patchMainWebpackConfigForModules = exports.getDockerBuildCommand = exports.getBuildParamsFromArgs = exports.prepareFilesForDocker = void 0;
|
|
3
|
+
exports.patchMainWebpackConfigForModules = exports.patchMainRspackConfigForModules = exports.getDockerBuildCommand = exports.getBuildParamsFromArgs = exports.prepareFilesForDocker = void 0;
|
|
4
4
|
var docker_build_1 = require("./commands/util/docker-build");
|
|
5
5
|
Object.defineProperty(exports, "prepareFilesForDocker", { enumerable: true, get: function () { return docker_build_1.prepareFilesForDocker; } });
|
|
6
6
|
var docker_build_2 = require("./commands/util/docker-build");
|
|
@@ -8,4 +8,5 @@ Object.defineProperty(exports, "getBuildParamsFromArgs", { enumerable: true, get
|
|
|
8
8
|
var docker_build_3 = require("./commands/util/docker-build");
|
|
9
9
|
Object.defineProperty(exports, "getDockerBuildCommand", { enumerable: true, get: function () { return docker_build_3.getDockerBuildCommand; } });
|
|
10
10
|
var modules_1 = require("./configs/modules");
|
|
11
|
+
Object.defineProperty(exports, "patchMainRspackConfigForModules", { enumerable: true, get: function () { return modules_1.patchMainRspackConfigForModules; } });
|
|
11
12
|
Object.defineProperty(exports, "patchMainWebpackConfigForModules", { enumerable: true, get: function () { return modules_1.patchMainWebpackConfigForModules; } });
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "arui-scripts",
|
|
3
|
-
"version": "23.0
|
|
3
|
+
"version": "23.1.0",
|
|
4
4
|
"main": "./build/index.js",
|
|
5
5
|
"typings": "./build/index.d.ts",
|
|
6
6
|
"exports": {
|
|
@@ -83,7 +83,6 @@
|
|
|
83
83
|
"mini-css-extract-plugin": "2.7.6",
|
|
84
84
|
"mini-svg-data-uri": "^1.4.4",
|
|
85
85
|
"null-loader": "0.1.1",
|
|
86
|
-
"pnp-webpack-plugin": "1.7.0",
|
|
87
86
|
"postcss": "^8.5.10",
|
|
88
87
|
"postcss-calc": "^9.0.0",
|
|
89
88
|
"postcss-color-function": "^4.0.0",
|
|
@@ -126,7 +125,6 @@
|
|
|
126
125
|
"vitest": "^4.1.5",
|
|
127
126
|
"webpack-bundle-analyzer": "4.10.2",
|
|
128
127
|
"webpack-deduplication-plugin": "^0.0.8",
|
|
129
|
-
"webpack-manifest-plugin": "3.2.0",
|
|
130
128
|
"webpack-node-externals": "3.0.0"
|
|
131
129
|
},
|
|
132
130
|
"devDependencies": {
|
|
@@ -141,12 +139,8 @@
|
|
|
141
139
|
"@types/semver": "^7.5.0",
|
|
142
140
|
"@types/serialize-javascript": "^5.0.4",
|
|
143
141
|
"@types/shelljs": "^0.8.12",
|
|
144
|
-
"@types/start-server-webpack-plugin": "2.2.2",
|
|
145
142
|
"@types/tar": "^4.0.5",
|
|
146
|
-
"@types/webpack": "^5.28.5",
|
|
147
143
|
"@types/webpack-bundle-analyzer": "4.7.0",
|
|
148
|
-
"@types/webpack-dev-server": "4.7.2",
|
|
149
|
-
"@types/webpack-manifest-plugin": "3.0.5",
|
|
150
144
|
"@types/webpack-node-externals": "^3.0.0",
|
|
151
145
|
"babel-plugin-transform-import-meta": "^2.3.3",
|
|
152
146
|
"type-fest": "2.19.0",
|