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.
Files changed (45) hide show
  1. package/.turbo/turbo-test.log +9 -8
  2. package/CHANGELOG.md +12 -0
  3. package/README.md +23 -0
  4. package/build/bin/commands-registry.d.ts +8 -0
  5. package/build/bin/commands-registry.js +80 -0
  6. package/build/bin/create-cli.d.ts +2 -0
  7. package/build/bin/create-cli.js +34 -0
  8. package/build/bin/index.js +2 -23
  9. package/build/commands/build/client.js +6 -6
  10. package/build/commands/build/server.js +2 -2
  11. package/build/commands/bundle-analyze/index.js +4 -4
  12. package/build/commands/start/client.js +2 -2
  13. package/build/commands/start/index.js +1 -1
  14. package/build/commands/start/server.js +2 -2
  15. package/build/commands/start-prod/client.js +2 -2
  16. package/build/commands/start-prod/index.js +1 -1
  17. package/build/commands/start-prod/server.js +2 -2
  18. package/build/configs/app-configs/get-defaults.js +1 -1
  19. package/build/configs/app-configs/types.d.ts +3 -1
  20. package/build/configs/app-configs/warn-about-deprecations.js +5 -0
  21. package/build/configs/modules.d.ts +3 -1
  22. package/build/configs/modules.js +5 -3
  23. package/build/configs/{webpack.client.dev.js → rspack.client.dev.js} +3 -3
  24. package/build/configs/{webpack.client.js → rspack.client.js} +4 -4
  25. package/build/configs/{webpack.client.prod.js → rspack.client.prod.js} +3 -3
  26. package/build/configs/{webpack.server.dev.js → rspack.server.dev.js} +2 -2
  27. package/build/configs/{webpack.server.prod.js → rspack.server.prod.js} +2 -2
  28. package/build/configs/util/apply-overrides.d.ts +53 -23
  29. package/build/configs/util/apply-overrides.js +38 -2
  30. package/build/configs/util/find-plugin.d.ts +2 -2
  31. package/build/index.d.ts +1 -1
  32. package/build/index.js +2 -1
  33. package/build/plugins/reload-server-plugin.d.ts +1 -1
  34. package/build/plugins/watch-missing-node-modules-plugin.d.ts +1 -1
  35. package/docs/cli.md +23 -0
  36. package/docs/commands.md +31 -11
  37. package/package.json +3 -7
  38. package/tsconfig-local.tsbuildinfo +1 -1
  39. /package/build/configs/{webpack.client.d.ts → rspack.client.d.ts} +0 -0
  40. /package/build/configs/{webpack.client.dev.d.ts → rspack.client.dev.d.ts} +0 -0
  41. /package/build/configs/{webpack.client.prod.d.ts → rspack.client.prod.d.ts} +0 -0
  42. /package/build/configs/{webpack.server.d.ts → rspack.server.d.ts} +0 -0
  43. /package/build/configs/{webpack.server.dev.d.ts → rspack.server.dev.d.ts} +0 -0
  44. /package/build/configs/{webpack.server.js → rspack.server.js} +0 -0
  45. /package/build/configs/{webpack.server.prod.d.ts → rspack.server.prod.d.ts} +0 -0
@@ -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 '../webpack.client';
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
- webpack: rspack.Configuration | rspack.Configuration[];
10
- webpackClient: rspack.Configuration | rspack.Configuration[];
11
- webpackDev: rspack.Configuration | rspack.Configuration[];
12
- webpackClientDev: rspack.Configuration | rspack.Configuration[];
13
- webpackServer: rspack.Configuration;
14
- webpackServerDev: rspack.Configuration;
15
- webpackProd: rspack.Configuration;
16
- webpackClientProd: rspack.Configuration | rspack.Configuration[];
17
- webpackServerProd: rspack.Configuration;
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 ClientWebpackAdditionalArgs = {
54
+ type ClientRspackAdditionalArgs = {
43
55
  createSingleClientWebpackConfig: BoundCreateSingleClientWebpackConfig;
44
56
  findLoader: typeof findLoader;
45
57
  findPlugin: ReturnType<typeof createFindPluginFunction<'client'>>;
46
58
  };
47
- type ServerWebpackAdditionalArgs = {
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
- webpack: ClientWebpackAdditionalArgs;
56
- webpackClient: ClientWebpackAdditionalArgs;
57
- webpackDev: ClientWebpackAdditionalArgs;
58
- webpackClientDev: ClientWebpackAdditionalArgs;
59
- webpackProd: ClientWebpackAdditionalArgs;
60
- webpackClientProd: ClientWebpackAdditionalArgs;
61
- webpackServer: ServerWebpackAdditionalArgs;
62
- webpackServerDev: ServerWebpackAdditionalArgs;
63
- webpackServerProd: ServerWebpackAdditionalArgs;
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, AdditionalArgs = K extends keyof OverridesAdditionalArgs ? OverridesAdditionalArgs[K] : undefined> = (config: Overrides[K], appConfig: AppContextWithConfigs, additionalArgs: AdditionalArgs) => Overrides[K];
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 WebpackManifestPlugin>[number];
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; } });
@@ -1,5 +1,5 @@
1
1
  import { type Worker } from 'cluster';
2
- import { type Compiler } from 'webpack';
2
+ import { type Compiler } from '@rspack/core';
3
3
  export declare class ReloadServerPlugin {
4
4
  workers: Worker[];
5
5
  done: null | (() => void);
@@ -1,4 +1,4 @@
1
- import { type Compiler } from 'webpack';
1
+ import { type Compiler } from '@rspack/core';
2
2
  export declare class WatchMissingNodeModulesPlugin {
3
3
  nodeModulesPath: string;
4
4
  constructor(nodeModulesPath: string);
package/docs/cli.md ADDED
@@ -0,0 +1,23 @@
1
+ # CLI arui-scripts
2
+
3
+ `arui-scripts` предоставляет CLI для сборки, запуска и тестирования react-приложений.
4
+ После установки пакета команды доступны через `arui-scripts <команда>`
5
+
6
+ Для генерации нового проекта используйте отдельный пакет
7
+ [`create-arui-scripts-app`](../../create-arui-scripts-app/README.md):
8
+
9
+ ```bash
10
+ npx create-arui-scripts-app my-app
11
+ ```
12
+
13
+ ## Глобальные флаги
14
+
15
+ - `arui-scripts --help` — список всех команд с описаниями.
16
+ - `arui-scripts --version` (`-v`) - версия пакета.
17
+ - `arui-scripts <команда> --help` - справка по конкретной команде.
18
+
19
+ ## Команды
20
+
21
+ Полный список и описание — в [docs/commands.md](commands.md):
22
+ `start`, `start:prod`, `build`, `docker-build`, `docker-build:compiled`, `test`, `test:vitest`,
23
+ `archive-build`, `bundle-analyze`, `ensure-yarn`, `changelog`.
package/docs/commands.md CHANGED
@@ -1,33 +1,45 @@
1
- Доступные команды
1
+ # Доступные команды
2
+
2
3
  ===
3
4
 
4
- ### start
5
+ CLI `arui-scripts` поддерживает глобальные флаги:
6
+
7
+ - `arui-scripts --help` - список всех команд с описаниями.
8
+ - `arui-scripts --version` (`-v`) - версия пакета.
9
+ - `arui-scripts <command> --help` - справка по конкретной команде.
10
+
11
+ ## start
12
+
5
13
  Запускает dev-сервер для клиентского кода и серверный код в watch-режиме.
6
14
 
7
15
  **Как запустить?**
16
+
8
17
  ```bash
9
18
  arui-scripts start
10
19
  ```
11
20
 
12
- ### start:prod
21
+ ## start:prod
22
+
13
23
  Запускает dev-сервер для клиентского кода и серверный код в watch-режиме. При этом использует production-конфигурацию для rspack.
14
24
  Может быть полезна для сбора метрик производительности.
15
25
 
16
26
  **Как запустить?**
27
+
17
28
  ```bash
18
29
  arui-scripts start:prod
19
30
  ```
20
31
 
21
- ### build
32
+ ## build
33
+
22
34
  Собирает клиентский и серверный код в production-режиме.
23
35
 
24
36
  **Как запустить?**
37
+
25
38
  ```bash
26
39
  arui-scripts build
27
40
  ```
28
41
 
29
- ### test
30
- Команда `arui-scripts test` внутри запускает jest с дополнительной конфигурацией.
42
+ ## test
31
43
 
32
44
  Конфигурация включает в себя:
33
45
  - Использование `jest-snapshot-serializer-class-name-to-string` для правильной работы с `cn`
@@ -36,6 +48,8 @@ arui-scripts build
36
48
  - Компиляцию .ts/.tsx файлов используя tsc
37
49
  - Замену импортов остальных типов файлов на импорт строк с названием файла
38
50
 
51
+ Команда `arui-scripts test` внутри запускает jest с дополнительной конфигурацией.
52
+
39
53
  По умолчанию под маску для поиска тестов попадают все файлы `*test*.(js|jsx|ts|tsx)`, `*spec*.((js|jsx|ts|tsx))`, `*/__test__/*.(js|jsx|ts|tsx)`.
40
54
 
41
55
  Вы можете переопределять любые настройки jest в `package.json`, [документация](https://facebook.github.io/jest/docs/en/configuration.html).
@@ -53,11 +67,13 @@ _package.json_
53
67
  ```
54
68
 
55
69
  **Как запустить?**
70
+
56
71
  ```bash
57
72
  arui-scripts test
58
73
  ```
59
74
 
60
- ### test:vitest
75
+ ## test:vitest
76
+
61
77
  Команда `arui-scripts test:vitest` запускает unit тесты через [Vitest](https://vitest.dev/).
62
78
 
63
79
  Если в корне проекта есть `vitest.config.ts` (или `.js`, `.mjs`, `.cjs`), то используется он.
@@ -91,10 +107,12 @@ export default mergeConfig(aruiConfig, defineConfig({
91
107
  arui-scripts test:vitest
92
108
  ```
93
109
 
94
- ### docker-build
110
+ ## docker-build
111
+
95
112
  Собирает клиентский и серверный код в production-режиме, создает docker-образ и пушит его в docker-репозиторий.
96
113
 
97
114
  **Как запустить?**
115
+
98
116
  ```bash
99
117
  arui-scripts docker-build
100
118
  ```
@@ -115,7 +133,7 @@ yarn будет использоваться когда в рутовой пап
115
133
  docker run -p 8080:8080 container-name:version ./start.sh
116
134
  ```
117
135
 
118
- ### docker-build:compiled
136
+ ## docker-build:compiled
119
137
 
120
138
  Команда `arui-scripts docker-build:compiled` во многом аналогична `docker-build`, но вместо сборки проекта использует уже скомпилированный в папку `.build` код.
121
139
  При этом в контейнер будут устанавливаться только production зависимости.
@@ -130,11 +148,12 @@ Dockerfile при этом будет сгенерирован автомати
130
148
  Локальный `Dockerfile` в корне проекта в данном случае полностью игнорируется.
131
149
 
132
150
  **Как запустить?**
151
+
133
152
  ```bash
134
153
  arui-scripts docker-build:compiled
135
154
  ```
136
155
 
137
- ### archive-build
156
+ ## archive-build
138
157
 
139
158
  Собирает архив с production сборкой.
140
159
 
@@ -147,11 +166,12 @@ yarn будет использоваться когда в рутовой пап
147
166
  Итоговый архив будет содержать в себе `.build`, `node_modules`, `package.json` и `config` папки вашего проекта.
148
167
 
149
168
  **Как запустить?**
169
+
150
170
  ```bash
151
171
  arui-scripts archive-build
152
172
  ```
153
173
 
154
- ### bundle-analyze
174
+ ## bundle-analyze
155
175
 
156
176
  Запускает [webpack-bundle-analyzer](https://www.npmjs.com/package/webpack-bundle-analyzer) и [rsdoctor](https://rsdoctor.dev/) для анализа бандла и сборки.
157
177
  Так же при запуске будет генерироваться [stats-файл](https://webpack.js.org/api/stats/), который можно использовать в
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "arui-scripts",
3
- "version": "23.0.2",
3
+ "version": "23.2.0",
4
4
  "main": "./build/index.js",
5
5
  "typings": "./build/index.d.ts",
6
6
  "exports": {
@@ -63,6 +63,7 @@
63
63
  "brotli-dict": "^1.1.4",
64
64
  "case-sensitive-paths-webpack-plugin": "2.4.0",
65
65
  "chalk": "^2.4.2",
66
+ "commander": "^12",
66
67
  "compression-webpack-plugin": "9.2.0",
67
68
  "core-js": "3.32.0",
68
69
  "css-loader": "6.8.1",
@@ -83,7 +84,6 @@
83
84
  "mini-css-extract-plugin": "2.7.6",
84
85
  "mini-svg-data-uri": "^1.4.4",
85
86
  "null-loader": "0.1.1",
86
- "pnp-webpack-plugin": "1.7.0",
87
87
  "postcss": "^8.5.10",
88
88
  "postcss-calc": "^9.0.0",
89
89
  "postcss-color-function": "^4.0.0",
@@ -126,7 +126,6 @@
126
126
  "vitest": "^4.1.5",
127
127
  "webpack-bundle-analyzer": "4.10.2",
128
128
  "webpack-deduplication-plugin": "^0.0.8",
129
- "webpack-manifest-plugin": "3.2.0",
130
129
  "webpack-node-externals": "3.0.0"
131
130
  },
132
131
  "devDependencies": {
@@ -141,12 +140,8 @@
141
140
  "@types/semver": "^7.5.0",
142
141
  "@types/serialize-javascript": "^5.0.4",
143
142
  "@types/shelljs": "^0.8.12",
144
- "@types/start-server-webpack-plugin": "2.2.2",
145
143
  "@types/tar": "^4.0.5",
146
- "@types/webpack": "^5.28.5",
147
144
  "@types/webpack-bundle-analyzer": "4.7.0",
148
- "@types/webpack-dev-server": "4.7.2",
149
- "@types/webpack-manifest-plugin": "3.0.5",
150
145
  "@types/webpack-node-externals": "^3.0.0",
151
146
  "babel-plugin-transform-import-meta": "^2.3.3",
152
147
  "type-fest": "2.19.0",
@@ -157,6 +152,7 @@
157
152
  },
158
153
  "scripts": {
159
154
  "build": "sh bin/build.sh",
155
+ "cli": "node build/bin/index.js",
160
156
  "test": "jest",
161
157
  "test:vitest": "vitest",
162
158
  "lint:scripts": "arui-presets-lint scripts",