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.
@@ -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.2",
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",