arui-scripts 23.0.2 → 23.2.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 +9 -8
- package/CHANGELOG.md +12 -0
- package/README.md +23 -0
- package/build/bin/commands-registry.d.ts +8 -0
- package/build/bin/commands-registry.js +80 -0
- package/build/bin/create-cli.d.ts +2 -0
- package/build/bin/create-cli.js +34 -0
- package/build/bin/index.js +2 -23
- 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/docs/cli.md +23 -0
- package/docs/commands.md +31 -11
- package/package.json +3 -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,24 @@
|
|
|
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/bin/__tests__/create-cli.tests.ts (33.121 s)
|
|
5
|
+
PASS src/plugins/postcss-global-variables/utils/__tests__/add-global-variable.tests.ts (33.348 s)
|
|
5
6
|
PASS src/configs/util/__tests__/create-watch-ignore-regex.tests.ts
|
|
6
|
-
PASS src/configs/
|
|
7
|
-
PASS src/configs/app-configs/__tests__/update-with-presets.tests.ts (24.053 s)
|
|
7
|
+
PASS src/configs/app-configs/__tests__/update-with-presets.tests.ts
|
|
8
8
|
PASS src/configs/app-configs/__tests__/update-with-env.tests.ts
|
|
9
|
+
PASS src/configs/util/__tests__/apply-overrides.tests.ts
|
|
9
10
|
PASS src/configs/app-configs/__tests__/update-with-package.tests.ts
|
|
10
11
|
PASS src/configs/util/__tests__/compress-with-dcb.test.ts
|
|
11
12
|
PASS src/configs/util/__tests__/get-polyfills.tests.ts
|
|
12
13
|
PASS src/plugins/postcss-global-variables/utils/__tests__/parse-variables.tests.ts
|
|
13
14
|
PASS src/plugins/postcss-global-variables/utils/__tests__/get-media-query-name.tests.ts
|
|
14
15
|
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 (
|
|
16
|
+
PASS src/configs/__tests__/webpack-client-modules.tests.ts (11.904 s)
|
|
17
|
+
PASS src/configs/util/__tests__/find-plugin.tests.ts (46.13 s)
|
|
17
18
|
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
19
|
|
|
19
|
-
Test Suites:
|
|
20
|
-
Tests:
|
|
20
|
+
Test Suites: 14 passed, 14 total
|
|
21
|
+
Tests: 37 passed, 37 total
|
|
21
22
|
Snapshots: 0 total
|
|
22
|
-
Time:
|
|
23
|
+
Time: 48.013 s
|
|
23
24
|
Ran all test suites.
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# arui-scripts
|
|
2
2
|
|
|
3
|
+
## 23.2.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#552](https://github.com/core-ds/arui-scripts/pull/552) [`3658e49`](https://github.com/core-ds/arui-scripts/commit/3658e49b0b752c592e738726aa8056569e28e19b) Thanks [@dmitrbrvsk](https://github.com/dmitrbrvsk)! - Добавлен пакет `create-arui-scripts-app` для генерации нового приложения через CLI. В `arui-scripts` CLI был переведен на commander.
|
|
8
|
+
|
|
9
|
+
## 23.1.0
|
|
10
|
+
|
|
11
|
+
### Minor Changes
|
|
12
|
+
|
|
13
|
+
- [#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 с обратной совместимостью
|
|
14
|
+
|
|
3
15
|
## 23.0.2
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -3,7 +3,24 @@ ARUI-scripts
|
|
|
3
3
|
|
|
4
4
|
Простой и гибкий инструмент для одновременной сборки клиентской и серверной части react-приложений.
|
|
5
5
|
|
|
6
|
+
Быстрый старт
|
|
7
|
+
|
|
8
|
+
===
|
|
9
|
+
|
|
10
|
+
Самый быстрый способ начать - запустить интерактивный CLI [`create-arui-scripts-app`](../create-arui-scripts-app/README.md):
|
|
11
|
+
|
|
12
|
+
```bash
|
|
13
|
+
npx create-arui-scripts-app my-app
|
|
14
|
+
cd my-app
|
|
15
|
+
yarn
|
|
16
|
+
yarn start
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
CLI `arui-scripts` поддерживает глобальные флаги `--help`, `--version` и справку по командам
|
|
20
|
+
`arui-scripts <команда> --help`. Подробнее в [CLI](docs/cli.md).
|
|
21
|
+
|
|
6
22
|
Использование
|
|
23
|
+
|
|
7
24
|
===
|
|
8
25
|
|
|
9
26
|
0. Пакет требует использовать следующие версии:
|
|
@@ -19,12 +36,15 @@ ARUI-scripts
|
|
|
19
36
|
```bash
|
|
20
37
|
yarn add arui-scripts --dev
|
|
21
38
|
```
|
|
39
|
+
|
|
22
40
|
или
|
|
41
|
+
|
|
23
42
|
```bash
|
|
24
43
|
npm install arui-scripts --save-dev
|
|
25
44
|
```
|
|
26
45
|
|
|
27
46
|
2. Создайте необходимые файлы
|
|
47
|
+
|
|
28
48
|
- `src/index.{js,jsx,ts,tsx}` - входная точка для клиентского приложения.
|
|
29
49
|
- `src/server/index.{js,jsx,tsx}` - входная точка для серверного приложения.
|
|
30
50
|
Если нужен только клиент, смотреть [Режим clientOnly](./docs/client-only.md).
|
|
@@ -44,8 +64,11 @@ npm install arui-scripts --save-dev
|
|
|
44
64
|
3. Используйте команды из `arui-scripts`!
|
|
45
65
|
|
|
46
66
|
Документация
|
|
67
|
+
|
|
47
68
|
===
|
|
48
69
|
- [Список актуальных версий docker-образов](../alpine-node-nginx/README.md)
|
|
70
|
+
- [Генерация проекта (`create-arui-scripts-app`)](../create-arui-scripts-app/README.md)
|
|
71
|
+
- [CLI](docs/cli.md)
|
|
49
72
|
- [Настройки](docs/settings.md)
|
|
50
73
|
- [Команды](docs/commands.md)
|
|
51
74
|
- [Примеры входных точек](docs/examples.md)
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* eslint-disable global-require */
|
|
3
|
+
/* eslint import/no-dynamic-require: 0 */
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.commands = void 0;
|
|
6
|
+
exports.commands = [
|
|
7
|
+
{
|
|
8
|
+
name: 'start',
|
|
9
|
+
description: 'Dev сервер для клиента и серверный код в watch режиме',
|
|
10
|
+
load: () => require('../commands/start'),
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
name: 'start:prod',
|
|
14
|
+
description: 'То же, что команда start, но с production конфигурацией rspack',
|
|
15
|
+
load: () => require('../commands/start-prod'),
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
name: 'build',
|
|
19
|
+
description: 'Production сборка клиентского и серверного кода',
|
|
20
|
+
load: () => require('../commands/build'),
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
name: 'docker-build',
|
|
24
|
+
description: 'Production сборка, создание docker образа и пуш в registry',
|
|
25
|
+
help: [
|
|
26
|
+
'Имя образа формируется как {dockerRegistry}/{name}:{version}.',
|
|
27
|
+
'name и version по умолчанию берутся из package.json, но их можно переопределить:',
|
|
28
|
+
' arui-scripts docker-build name=container-name version=0.1-beta',
|
|
29
|
+
].join('\n'),
|
|
30
|
+
passthrough: true,
|
|
31
|
+
load: () => require('../commands/docker-build'),
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
name: 'docker-build:compiled',
|
|
35
|
+
description: 'Как docker-build, но использует уже скомпилированный код из папки .build (для CI/CD)',
|
|
36
|
+
help: [
|
|
37
|
+
'Поддерживает те же опции, что и docker-build (name=, version=).',
|
|
38
|
+
'Внимание: не работает в clientOnly-режиме.',
|
|
39
|
+
].join('\n'),
|
|
40
|
+
passthrough: true,
|
|
41
|
+
load: () => require('../commands/docker-build-compiled'),
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
name: 'test',
|
|
45
|
+
description: 'Запускает jest с конфигурацией arui-scripts',
|
|
46
|
+
help: 'Все аргументы после команды пробрасываются в jest (например: arui-scripts test --watch).',
|
|
47
|
+
passthrough: true,
|
|
48
|
+
load: () => require('../commands/test'),
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
name: 'test:vitest',
|
|
52
|
+
description: 'Запускает unit тесты через vitest',
|
|
53
|
+
help: [
|
|
54
|
+
'Использует vitest.config.* из корня проекта, иначе конфигурацию arui-scripts.',
|
|
55
|
+
'Все аргументы после команды пробрасываются в vitest.',
|
|
56
|
+
].join('\n'),
|
|
57
|
+
passthrough: true,
|
|
58
|
+
load: () => require('../commands/test-vitest'),
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
name: 'ensure-yarn',
|
|
62
|
+
description: 'Завершается с кодом 1, если проект запущен не через yarn',
|
|
63
|
+
load: () => require('../commands/ensure-yarn'),
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
name: 'archive-build',
|
|
67
|
+
description: 'Собирает tar-архив с production-сборкой (.build, node_modules, package.json, config)',
|
|
68
|
+
load: () => require('../commands/archive-build'),
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
name: 'bundle-analyze',
|
|
72
|
+
description: 'Запускает webpack-bundle-analyzer и rsdoctor для анализа бандла и сборки',
|
|
73
|
+
load: () => require('../commands/bundle-analyze'),
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
name: 'changelog',
|
|
77
|
+
description: 'postchangelog-хук standard-version: формирует описание версии в CHANGELOG.md',
|
|
78
|
+
load: () => require('../commands/changelog'),
|
|
79
|
+
},
|
|
80
|
+
];
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* eslint-disable global-require */
|
|
3
|
+
/* eslint-disable @typescript-eslint/no-var-requires */
|
|
4
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
5
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
6
|
+
};
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.createCli = createCli;
|
|
9
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
10
|
+
const commander_1 = require("commander");
|
|
11
|
+
const commands_registry_1 = require("./commands-registry");
|
|
12
|
+
const { version } = require('../../package.json');
|
|
13
|
+
function createCli() {
|
|
14
|
+
const program = new commander_1.Command('arui-scripts');
|
|
15
|
+
program
|
|
16
|
+
.description('Инструмент для сборки клиентской и серверной части react приложений')
|
|
17
|
+
.version(version, '-v, --version', 'Показать версию')
|
|
18
|
+
.showHelpAfterError('(используйте --help для списка команд)')
|
|
19
|
+
.showSuggestionAfterError();
|
|
20
|
+
program.addHelpText('beforeAll', ({ command }) => command === program
|
|
21
|
+
? `\n ${chalk_1.default.bgCyan.black(' arui-scripts ')} ${chalk_1.default.dim(`v${version}`)}\n`
|
|
22
|
+
: '');
|
|
23
|
+
commands_registry_1.commands.forEach((cmd) => {
|
|
24
|
+
const command = program.command(cmd.name).description(cmd.description).action(cmd.load);
|
|
25
|
+
if (cmd.passthrough) {
|
|
26
|
+
// --help/-h пробрасываем в jest/vitest/docker, а не показываем help commander.
|
|
27
|
+
command.allowUnknownOption().allowExcessArguments().helpOption(false);
|
|
28
|
+
}
|
|
29
|
+
if (cmd.help) {
|
|
30
|
+
command.addHelpText('after', `\n${chalk_1.default.dim(cmd.help)}`);
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
return program;
|
|
34
|
+
}
|
package/build/bin/index.js
CHANGED
|
@@ -1,26 +1,5 @@
|
|
|
1
1
|
#! /usr/bin/env node
|
|
2
2
|
"use strict";
|
|
3
|
-
/* eslint-disable global-require */
|
|
4
|
-
/* eslint import/no-dynamic-require: 0 */
|
|
5
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const
|
|
7
|
-
|
|
8
|
-
'start:prod': () => require('../commands/start-prod'),
|
|
9
|
-
build: () => require('../commands/build'),
|
|
10
|
-
'docker-build': () => require('../commands/docker-build'),
|
|
11
|
-
'docker-build:compiled': () => require('../commands/docker-build-compiled'),
|
|
12
|
-
test: () => require('../commands/test'),
|
|
13
|
-
'test:vitest': () => require('../commands/test-vitest'),
|
|
14
|
-
'ensure-yarn': () => require('../commands/ensure-yarn'),
|
|
15
|
-
'archive-build': () => require('../commands/archive-build'),
|
|
16
|
-
'bundle-analyze': () => require('../commands/bundle-analyze'),
|
|
17
|
-
changelog: () => require('../commands/changelog'),
|
|
18
|
-
};
|
|
19
|
-
const command = process.argv[2];
|
|
20
|
-
if (!command || !commands[command]) {
|
|
21
|
-
console.error(`Please specify one of available commands: ${Object.keys(commands)
|
|
22
|
-
.map((c) => `"${c}"`)
|
|
23
|
-
.join(' ')}`);
|
|
24
|
-
process.exit(-1);
|
|
25
|
-
}
|
|
26
|
-
commands[command]();
|
|
4
|
+
const create_cli_1 = require("./create-cli");
|
|
5
|
+
(0, create_cli_1.createCli)().parse(process.argv);
|
|
@@ -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)() });
|