arui-scripts 17.0.2 → 17.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-lint.log +16 -27
- package/.turbo/turbo-test.log +4 -4
- package/CHANGELOG.md +6 -0
- package/README.md +1 -0
- package/build/commands/build/index.js +8 -1
- package/build/commands/bundle-analyze/index.js +2 -2
- package/build/commands/start/index.js +10 -16
- package/build/commands/start-prod/index.js +12 -1
- package/build/commands/util/tsc.d.ts +1 -0
- package/build/commands/util/tsc.js +14 -0
- package/build/commands/util/yarn.js +5 -2
- package/build/configs/app-configs/calculate-dependent-config.d.ts +1 -0
- package/build/configs/app-configs/get-defaults.js +1 -0
- package/build/configs/app-configs/types.d.ts +1 -0
- package/build/configs/dev-server.js +37 -34
- package/build/configs/util/apply-overrides.d.ts +1 -0
- package/build/configs/webpack.client.js +43 -37
- package/build/templates/dockerfile.template.js +11 -6
- package/build/templates/html.template.d.ts +1 -0
- package/build/templates/html.template.js +22 -0
- package/build/templates/nginx.conf.template.js +14 -9
- package/build/tsconfig-local.tsbuildinfo +1 -1
- package/docs/client-only.md +11 -0
- package/docs/commands.md +2 -0
- package/docs/overrides.md +2 -1
- package/docs/settings.md +4 -0
- package/package.json +2 -1
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
## Режим clientOnly
|
|
2
|
+
Если на вашем проекте не требуется иметь nodejs-сервер, то clientOnly режим работы - для вас.
|
|
3
|
+
|
|
4
|
+
Он полностью отключает сборку сервера, добавляет [HtmlWebpackPlugin](https://webpack.js.org/plugins/html-webpack-plugin/) для генерации
|
|
5
|
+
простой html, а так же значительно упрощает докер-контейнер, собираемый в качестве артефакта.
|
|
6
|
+
|
|
7
|
+
По-умолчанию html, создаваемый скриптами будет иметь единственный div с id `react-app`. Вы модифицировать этот html
|
|
8
|
+
используя [механизм оверрайдов](./overrides.md).
|
|
9
|
+
|
|
10
|
+
docker-контейнер, формируемый командой [arui-scripts docker-build](./commands.md#docker-build) будет содержать
|
|
11
|
+
только собранные файлы. node_modules, все что лежит в вашем `src` и других папках проекта будет игнорироваться.
|
package/docs/commands.md
CHANGED
|
@@ -89,6 +89,8 @@ docker run -p 8080:8080 container-name:version ./start.sh
|
|
|
89
89
|
За счет того, что в контейнер папки node_modules не копируются, а устанавливаются только production зависимости, скорость сборки контейнера значительно увеличивается.
|
|
90
90
|
В процессе сборки так же будет модифицироваться файл `.dockerignore` для того чтобы гарантировано исключить папку `node_modules` из контекста сборки докера.
|
|
91
91
|
|
|
92
|
+
**⚠️ Внимание** команда не работает с `clientOnly` режимом.
|
|
93
|
+
|
|
92
94
|
`arui-scripts docker-build:compiled` имеет те же опции, что и `arui-scripts docker-build`.
|
|
93
95
|
Dockerfile при этом будет сгенерирован автоматически, но вы можете переопределить его используя механизм [overrides](overrides.md).
|
|
94
96
|
Локальный `Dockerfile` в корне проекта в данном случае полностью игнорируется.
|
package/docs/overrides.md
CHANGED
|
@@ -92,6 +92,7 @@ export default overrides;
|
|
|
92
92
|
[Файл `nginx.conf`](nginx.md) в корне имеет приоритет над оверрайдами.
|
|
93
93
|
- `start.sh` - шаблон entrypoint докер контейнера. Базовый шаблон [тут](../src/templates/start.template.ts).
|
|
94
94
|
- `serverExternalsExemptions` - список модулей, которые не будут добавлены в список внешних зависимостей сервера. [Подробнее](caveats.md#node-externals).
|
|
95
|
+
- `html` - шаблон для htmlWebpackPlugin, будет использоваться только в режиме [`clientOnly`](./settings.md#clientonly).
|
|
95
96
|
|
|
96
97
|
Для некоторых конфигураций определены несколько ключей, они будут применяться в том порядке, в котором они приведены в этом файле.
|
|
97
98
|
|
|
@@ -128,7 +129,7 @@ import type { OverrideFile } from 'arui-scripts';
|
|
|
128
129
|
|
|
129
130
|
const overrides: OverrideFile = {
|
|
130
131
|
webpackClient: (config, appConfig, { findLoader, findPlugin }) => {
|
|
131
|
-
// ...
|
|
132
|
+
// ...
|
|
132
133
|
}
|
|
133
134
|
};
|
|
134
135
|
|
package/docs/settings.md
CHANGED
|
@@ -115,6 +115,10 @@ export default settings;
|
|
|
115
115
|
|
|
116
116
|
:warning: Эта настройка работает только в **дев режиме**.
|
|
117
117
|
|
|
118
|
+
#### clientOnly
|
|
119
|
+
Позволяет отключить сборку сервера, оставив только клиентскую часть. По умолчанию `false`. Подробнее можно прочитать в
|
|
120
|
+
[документации client-only режима](./client-only.md).
|
|
121
|
+
|
|
118
122
|
|
|
119
123
|
### Настройки путей
|
|
120
124
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "arui-scripts",
|
|
3
|
-
"version": "17.0
|
|
3
|
+
"version": "17.1.0",
|
|
4
4
|
"main": "./build/index.js",
|
|
5
5
|
"typings": "./build/index.d.ts",
|
|
6
6
|
"license": "MPL-2.0",
|
|
@@ -55,6 +55,7 @@
|
|
|
55
55
|
"fork-ts-checker-webpack-plugin": "6.5.3",
|
|
56
56
|
"fs-extra": "6.0.1",
|
|
57
57
|
"gzip-size": "5.1.1",
|
|
58
|
+
"html-webpack-plugin": "^5.6.0",
|
|
58
59
|
"image-minimizer-webpack-plugin": "^3.8.3",
|
|
59
60
|
"imagemin": "^8.0.1",
|
|
60
61
|
"imagemin-svgo": "^10.0.1",
|