@tramvai/cli 2.130.11 → 2.132.1
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/lib/builder/webpack/tokens.d.ts +9 -12
- package/lib/builder/webpack/utils/runWebpack.js +26 -3
- package/lib/builder/webpack/utils/runWebpack.js.map +1 -1
- package/lib/di/tokens/config.d.ts +3 -4
- package/lib/library/webpack/utils/files.d.ts +3 -7
- package/lib/library/webpack/utils/files.js +7 -6
- package/lib/library/webpack/utils/files.js.map +1 -1
- package/lib/schema/autogeneratedSchema.json +66 -42
- package/lib/typings/configEntry/cli.d.ts +7 -6
- package/package.json +4 -5
- package/schema.json +66 -42
- package/src/builder/webpack/utils/runWebpack.ts +36 -9
- package/src/library/webpack/utils/files.ts +12 -8
- package/src/schema/autogeneratedSchema.json +66 -42
- package/src/typings/configEntry/cli.ts +5 -6
|
@@ -53,11 +53,10 @@ export declare const CLIENT_CONFIG_MANAGER_TOKEN: {
|
|
|
53
53
|
[x: string]: any;
|
|
54
54
|
};
|
|
55
55
|
svgo?: {
|
|
56
|
-
plugins?: {
|
|
57
|
-
[x: string]: any;
|
|
56
|
+
plugins?: (string | {
|
|
58
57
|
name: string;
|
|
59
|
-
|
|
60
|
-
}[];
|
|
58
|
+
params: Record<string, any>;
|
|
59
|
+
})[];
|
|
61
60
|
};
|
|
62
61
|
imageOptimization?: {
|
|
63
62
|
enabled?: boolean;
|
|
@@ -181,11 +180,10 @@ export declare const CLIENT_MODERN_CONFIG_MANAGER_TOKEN: {
|
|
|
181
180
|
[x: string]: any;
|
|
182
181
|
};
|
|
183
182
|
svgo?: {
|
|
184
|
-
plugins?: {
|
|
185
|
-
[x: string]: any;
|
|
183
|
+
plugins?: (string | {
|
|
186
184
|
name: string;
|
|
187
|
-
|
|
188
|
-
}[];
|
|
185
|
+
params: Record<string, any>;
|
|
186
|
+
})[];
|
|
189
187
|
};
|
|
190
188
|
imageOptimization?: {
|
|
191
189
|
enabled?: boolean;
|
|
@@ -309,11 +307,10 @@ export declare const SERVER_CONFIG_MANAGER_TOKEN: {
|
|
|
309
307
|
[x: string]: any;
|
|
310
308
|
};
|
|
311
309
|
svgo?: {
|
|
312
|
-
plugins?: {
|
|
313
|
-
[x: string]: any;
|
|
310
|
+
plugins?: (string | {
|
|
314
311
|
name: string;
|
|
315
|
-
|
|
316
|
-
}[];
|
|
312
|
+
params: Record<string, any>;
|
|
313
|
+
})[];
|
|
317
314
|
};
|
|
318
315
|
imageOptimization?: {
|
|
319
316
|
enabled?: boolean;
|
|
@@ -1,16 +1,39 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.runWebpack = void 0;
|
|
4
|
+
const warnFilter = (warning) => {
|
|
5
|
+
// this library is not suited for bundling for Node.js environment https://github.com/browserslist/browserslist/issues/199
|
|
6
|
+
// but we don't have any issues with it
|
|
7
|
+
if (warning.includes('node_modules/browserslist/node.js') &&
|
|
8
|
+
warning.includes('Critical dependency')) {
|
|
9
|
+
return false;
|
|
10
|
+
}
|
|
11
|
+
// always trigger to platform.js and react.js chunks, looks like a noise
|
|
12
|
+
if (warning.includes('combined asset size exceeds the recommended limit')) {
|
|
13
|
+
return false;
|
|
14
|
+
}
|
|
15
|
+
// https://github.com/webpack/webpack/pull/11646 not works for warnings
|
|
16
|
+
if (warning.includes('not found') &&
|
|
17
|
+
(warning.includes('dependenciesVersion.js') || warning.includes('@/__private__/'))) {
|
|
18
|
+
return false;
|
|
19
|
+
}
|
|
20
|
+
return warning;
|
|
21
|
+
};
|
|
4
22
|
const runWebpack = (compiler) => {
|
|
5
23
|
return new Promise((resolve, reject) => {
|
|
6
24
|
compiler.run((err, stats) => {
|
|
7
|
-
|
|
25
|
+
// stats can be undefined when error exists
|
|
26
|
+
let warnings = stats === null || stats === void 0 ? void 0 : stats.toString({
|
|
8
27
|
all: false,
|
|
9
28
|
colors: true,
|
|
10
29
|
warnings: true,
|
|
11
30
|
errors: true,
|
|
12
|
-
})
|
|
13
|
-
if (
|
|
31
|
+
});
|
|
32
|
+
if (warnings) {
|
|
33
|
+
warnings = warnings.split('WARNING').filter(warnFilter).join('WARNING');
|
|
34
|
+
console.warn(warnings);
|
|
35
|
+
}
|
|
36
|
+
if (err || (stats === null || stats === void 0 ? void 0 : stats.hasErrors())) {
|
|
14
37
|
return reject(err ||
|
|
15
38
|
new Error(stats
|
|
16
39
|
.toJson()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runWebpack.js","sourceRoot":"","sources":["../../../../src/builder/webpack/utils/runWebpack.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"runWebpack.js","sourceRoot":"","sources":["../../../../src/builder/webpack/utils/runWebpack.ts"],"names":[],"mappings":";;;AAEA,MAAM,UAAU,GAAG,CAAC,OAAe,EAAE,EAAE;IACrC,0HAA0H;IAC1H,uCAAuC;IACvC,IACE,OAAO,CAAC,QAAQ,CAAC,mCAAmC,CAAC;QACrD,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAC,EACvC;QACA,OAAO,KAAK,CAAC;KACd;IACD,wEAAwE;IACxE,IAAI,OAAO,CAAC,QAAQ,CAAC,mDAAmD,CAAC,EAAE;QACzE,OAAO,KAAK,CAAC;KACd;IACD,uEAAuE;IACvE,IACE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC;QAC7B,CAAC,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,EAClF;QACA,OAAO,KAAK,CAAC;KACd;IACD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEK,MAAM,UAAU,GAAG,CAAC,QAAkC,EAAE,EAAE;IAC/D,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC3C,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YAC1B,2CAA2C;YAC3C,IAAI,QAAQ,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,QAAQ,CAAC;gBAC7B,GAAG,EAAE,KAAK;gBACV,MAAM,EAAE,IAAI;gBACZ,QAAQ,EAAE,IAAI;gBACd,MAAM,EAAE,IAAI;aACb,CAAC,CAAC;YAEH,IAAI,QAAQ,EAAE;gBACZ,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACxE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aACxB;YAED,IAAI,GAAG,KAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,SAAS,EAAE,CAAA,EAAE;gBAC7B,OAAO,MAAM,CACX,GAAG;oBACD,IAAI,KAAK,CACP,KAAK;yBACF,MAAM,EAAE;yBACR,MAAM,CAAC,GAAG,CAAC,CAAC,KAAU,EAAE,EAAE,WAAC,OAAA,MAAA,KAAK,CAAC,OAAO,mCAAI,KAAK,CAAA,EAAA,CAAC;yBAClD,IAAI,CAAC,IAAI,CAAC,CACd,CACJ,CAAC;aACH;YAED,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AA/BW,QAAA,UAAU,cA+BrB"}
|
|
@@ -63,11 +63,10 @@ export declare const CONFIG_MANAGER_TOKEN: {
|
|
|
63
63
|
[x: string]: any;
|
|
64
64
|
};
|
|
65
65
|
svgo?: {
|
|
66
|
-
plugins?: {
|
|
67
|
-
[x: string]: any;
|
|
66
|
+
plugins?: (string | {
|
|
68
67
|
name: string;
|
|
69
|
-
|
|
70
|
-
}[];
|
|
68
|
+
params: Record<string, any>;
|
|
69
|
+
})[];
|
|
71
70
|
};
|
|
72
71
|
imageOptimization?: {
|
|
73
72
|
enabled?: boolean;
|
|
@@ -1,12 +1,8 @@
|
|
|
1
1
|
import type Config from 'webpack-chain';
|
|
2
|
+
import type { Config as SvgoConfig } from 'svgo';
|
|
2
3
|
import type { ConfigManager } from '../../../config/configManager';
|
|
3
4
|
import type { CliConfigEntry } from '../../../typings/configEntry/cli';
|
|
4
5
|
export declare const addSvgrLoader: (configManager: ConfigManager<CliConfigEntry>, config: Config, svgoOptions: Record<string, any>) => void;
|
|
5
|
-
export declare const getSvgoOptions: (configManager: ConfigManager<CliConfigEntry>) => {
|
|
6
|
-
configFile
|
|
7
|
-
plugins: {
|
|
8
|
-
[x: string]: any;
|
|
9
|
-
name: string;
|
|
10
|
-
active: boolean;
|
|
11
|
-
}[];
|
|
6
|
+
export declare const getSvgoOptions: (configManager: ConfigManager<CliConfigEntry>) => SvgoConfig & {
|
|
7
|
+
configFile?: boolean;
|
|
12
8
|
};
|
|
@@ -22,12 +22,13 @@ const getSvgoOptions = (configManager) => {
|
|
|
22
22
|
configFile: false,
|
|
23
23
|
plugins: (_b = (_a = configManager.svgo) === null || _a === void 0 ? void 0 : _a.plugins) !== null && _b !== void 0 ? _b : [
|
|
24
24
|
{
|
|
25
|
-
name: '
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
25
|
+
name: 'preset-default',
|
|
26
|
+
params: {
|
|
27
|
+
overrides: {
|
|
28
|
+
cleanupIds: false,
|
|
29
|
+
collapseGroups: false,
|
|
30
|
+
},
|
|
31
|
+
},
|
|
31
32
|
},
|
|
32
33
|
],
|
|
33
34
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"files.js","sourceRoot":"","sources":["../../../../src/library/webpack/utils/files.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"files.js","sourceRoot":"","sources":["../../../../src/library/webpack/utils/files.ts"],"names":[],"mappings":";;;AAIA,6CAAwE;AAEjE,MAAM,aAAa,GAAG,CAC3B,aAA4C,EAC5C,MAAc,EACd,WAAgC,EAChC,EAAE;IACF,MAAM,gBAAgB,GAAG,IAAA,gCAAmB,EAAC,aAAa,CAAC,CAAC;IAC5D,4FAA4F;IAC5F,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM;SAC7B,IAAI,CAAC,MAAM,CAAC;SACZ,IAAI,CAAC,QAAQ,CAAC;QACf,4CAA4C;SAC3C,GAAG,CAAC,eAAe,EAAE,OAAO,CAAC;SAC7B,GAAG,CAAC,iBAAiB,CAAC;SACtB,KAAK,CACJ,IAAA,gCAAmB,EAAC,aAAa,kCAC5B,gBAAgB,KACnB,UAAU,EAAE,IAAI,IAChB,CACH;SACA,GAAG,EAAE,CAAC;IAET,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC;AACpG,CAAC,CAAC;AAtBW,QAAA,aAAa,iBAsBxB;AAEK,MAAM,cAAc,GAAG,CAC5B,aAA4C,EACL,EAAE;;IACzC,OAAO;QACL,UAAU,EAAE,KAAK;QACjB,OAAO,EAAE,MAAC,MAAA,aAAa,CAAC,IAAI,0CAAE,OAAiC,mCAAI;YACjE;gBACE,IAAI,EAAE,gBAAgB;gBACtB,MAAM,EAAE;oBACN,SAAS,EAAE;wBACT,UAAU,EAAE,KAAK;wBACjB,cAAc,EAAE,KAAK;qBACtB;iBACF;aACF;SACF;KACF,CAAC;AACJ,CAAC,CAAC;AAjBW,QAAA,cAAc,kBAiBzB"}
|
|
@@ -1015,19 +1015,27 @@
|
|
|
1015
1015
|
"type": "object",
|
|
1016
1016
|
"properties": {
|
|
1017
1017
|
"plugins": {
|
|
1018
|
-
"title": "svgo plugins",
|
|
1018
|
+
"title": "svgo plugins, you can find full types in PluginConfig inside `svgo` source code,\nbut this interface too complex and heavy for schema",
|
|
1019
1019
|
"type": "array",
|
|
1020
1020
|
"items": {
|
|
1021
|
-
"
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
"
|
|
1021
|
+
"anyOf": [
|
|
1022
|
+
{
|
|
1023
|
+
"type": "object",
|
|
1024
|
+
"properties": {
|
|
1025
|
+
"name": {
|
|
1026
|
+
"type": "string"
|
|
1027
|
+
},
|
|
1028
|
+
"params": {
|
|
1029
|
+
"type": "object",
|
|
1030
|
+
"additionalProperties": false
|
|
1031
|
+
}
|
|
1032
|
+
},
|
|
1033
|
+
"additionalProperties": false
|
|
1025
1034
|
},
|
|
1026
|
-
|
|
1027
|
-
"type": "
|
|
1035
|
+
{
|
|
1036
|
+
"type": "string"
|
|
1028
1037
|
}
|
|
1029
|
-
|
|
1030
|
-
"additionalProperties": false
|
|
1038
|
+
]
|
|
1031
1039
|
}
|
|
1032
1040
|
}
|
|
1033
1041
|
},
|
|
@@ -1133,23 +1141,23 @@
|
|
|
1133
1141
|
"dotAll": {
|
|
1134
1142
|
"type": "boolean"
|
|
1135
1143
|
},
|
|
1136
|
-
"__@match@
|
|
1144
|
+
"__@match@8221": {
|
|
1137
1145
|
"type": "object",
|
|
1138
1146
|
"additionalProperties": false
|
|
1139
1147
|
},
|
|
1140
|
-
"__@replace@
|
|
1148
|
+
"__@replace@8223": {
|
|
1141
1149
|
"type": "object",
|
|
1142
1150
|
"additionalProperties": false
|
|
1143
1151
|
},
|
|
1144
|
-
"__@search@
|
|
1152
|
+
"__@search@8226": {
|
|
1145
1153
|
"type": "object",
|
|
1146
1154
|
"additionalProperties": false
|
|
1147
1155
|
},
|
|
1148
|
-
"__@split@
|
|
1156
|
+
"__@split@8228": {
|
|
1149
1157
|
"type": "object",
|
|
1150
1158
|
"additionalProperties": false
|
|
1151
1159
|
},
|
|
1152
|
-
"__@matchAll@
|
|
1160
|
+
"__@matchAll@8230": {
|
|
1153
1161
|
"type": "object",
|
|
1154
1162
|
"additionalProperties": false
|
|
1155
1163
|
}
|
|
@@ -1668,19 +1676,27 @@
|
|
|
1668
1676
|
"type": "object",
|
|
1669
1677
|
"properties": {
|
|
1670
1678
|
"plugins": {
|
|
1671
|
-
"title": "svgo plugins",
|
|
1679
|
+
"title": "svgo plugins, you can find full types in PluginConfig inside `svgo` source code,\nbut this interface too complex and heavy for schema",
|
|
1672
1680
|
"type": "array",
|
|
1673
1681
|
"items": {
|
|
1674
|
-
"
|
|
1675
|
-
|
|
1676
|
-
|
|
1677
|
-
"
|
|
1682
|
+
"anyOf": [
|
|
1683
|
+
{
|
|
1684
|
+
"type": "object",
|
|
1685
|
+
"properties": {
|
|
1686
|
+
"name": {
|
|
1687
|
+
"type": "string"
|
|
1688
|
+
},
|
|
1689
|
+
"params": {
|
|
1690
|
+
"type": "object",
|
|
1691
|
+
"additionalProperties": false
|
|
1692
|
+
}
|
|
1693
|
+
},
|
|
1694
|
+
"additionalProperties": false
|
|
1678
1695
|
},
|
|
1679
|
-
|
|
1680
|
-
"type": "
|
|
1696
|
+
{
|
|
1697
|
+
"type": "string"
|
|
1681
1698
|
}
|
|
1682
|
-
|
|
1683
|
-
"additionalProperties": false
|
|
1699
|
+
]
|
|
1684
1700
|
}
|
|
1685
1701
|
}
|
|
1686
1702
|
},
|
|
@@ -1786,23 +1802,23 @@
|
|
|
1786
1802
|
"dotAll": {
|
|
1787
1803
|
"type": "boolean"
|
|
1788
1804
|
},
|
|
1789
|
-
"__@match@
|
|
1805
|
+
"__@match@8221": {
|
|
1790
1806
|
"type": "object",
|
|
1791
1807
|
"additionalProperties": false
|
|
1792
1808
|
},
|
|
1793
|
-
"__@replace@
|
|
1809
|
+
"__@replace@8223": {
|
|
1794
1810
|
"type": "object",
|
|
1795
1811
|
"additionalProperties": false
|
|
1796
1812
|
},
|
|
1797
|
-
"__@search@
|
|
1813
|
+
"__@search@8226": {
|
|
1798
1814
|
"type": "object",
|
|
1799
1815
|
"additionalProperties": false
|
|
1800
1816
|
},
|
|
1801
|
-
"__@split@
|
|
1817
|
+
"__@split@8228": {
|
|
1802
1818
|
"type": "object",
|
|
1803
1819
|
"additionalProperties": false
|
|
1804
1820
|
},
|
|
1805
|
-
"__@matchAll@
|
|
1821
|
+
"__@matchAll@8230": {
|
|
1806
1822
|
"type": "object",
|
|
1807
1823
|
"additionalProperties": false
|
|
1808
1824
|
}
|
|
@@ -2321,19 +2337,27 @@
|
|
|
2321
2337
|
"type": "object",
|
|
2322
2338
|
"properties": {
|
|
2323
2339
|
"plugins": {
|
|
2324
|
-
"title": "svgo plugins",
|
|
2340
|
+
"title": "svgo plugins, you can find full types in PluginConfig inside `svgo` source code,\nbut this interface too complex and heavy for schema",
|
|
2325
2341
|
"type": "array",
|
|
2326
2342
|
"items": {
|
|
2327
|
-
"
|
|
2328
|
-
|
|
2329
|
-
|
|
2330
|
-
"
|
|
2343
|
+
"anyOf": [
|
|
2344
|
+
{
|
|
2345
|
+
"type": "object",
|
|
2346
|
+
"properties": {
|
|
2347
|
+
"name": {
|
|
2348
|
+
"type": "string"
|
|
2349
|
+
},
|
|
2350
|
+
"params": {
|
|
2351
|
+
"type": "object",
|
|
2352
|
+
"additionalProperties": false
|
|
2353
|
+
}
|
|
2354
|
+
},
|
|
2355
|
+
"additionalProperties": false
|
|
2331
2356
|
},
|
|
2332
|
-
|
|
2333
|
-
"type": "
|
|
2357
|
+
{
|
|
2358
|
+
"type": "string"
|
|
2334
2359
|
}
|
|
2335
|
-
|
|
2336
|
-
"additionalProperties": false
|
|
2360
|
+
]
|
|
2337
2361
|
}
|
|
2338
2362
|
}
|
|
2339
2363
|
},
|
|
@@ -2439,23 +2463,23 @@
|
|
|
2439
2463
|
"dotAll": {
|
|
2440
2464
|
"type": "boolean"
|
|
2441
2465
|
},
|
|
2442
|
-
"__@match@
|
|
2466
|
+
"__@match@8221": {
|
|
2443
2467
|
"type": "object",
|
|
2444
2468
|
"additionalProperties": false
|
|
2445
2469
|
},
|
|
2446
|
-
"__@replace@
|
|
2470
|
+
"__@replace@8223": {
|
|
2447
2471
|
"type": "object",
|
|
2448
2472
|
"additionalProperties": false
|
|
2449
2473
|
},
|
|
2450
|
-
"__@search@
|
|
2474
|
+
"__@search@8226": {
|
|
2451
2475
|
"type": "object",
|
|
2452
2476
|
"additionalProperties": false
|
|
2453
2477
|
},
|
|
2454
|
-
"__@split@
|
|
2478
|
+
"__@split@8228": {
|
|
2455
2479
|
"type": "object",
|
|
2456
2480
|
"additionalProperties": false
|
|
2457
2481
|
},
|
|
2458
|
-
"__@matchAll@
|
|
2482
|
+
"__@matchAll@8230": {
|
|
2459
2483
|
"type": "object",
|
|
2460
2484
|
"additionalProperties": false
|
|
2461
2485
|
}
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
import type { Configuration } from 'webpack';
|
|
2
2
|
import type { DeduplicateStrategy } from '@tinkoff/webpack-dedupe-plugin';
|
|
3
3
|
import type { ConfigEntry, OverridableOption } from './common';
|
|
4
|
+
type SimplifiedSvgoConfig = string | {
|
|
5
|
+
name: string;
|
|
6
|
+
params: Record<string, any>;
|
|
7
|
+
};
|
|
4
8
|
type Notifications = {
|
|
5
9
|
/**
|
|
6
10
|
* @title Defines when success notifications are shown
|
|
@@ -149,13 +153,10 @@ export interface CliConfigEntry extends ConfigEntry {
|
|
|
149
153
|
*/
|
|
150
154
|
svgo?: {
|
|
151
155
|
/**
|
|
152
|
-
* @title svgo plugins
|
|
156
|
+
* @title svgo plugins, you can find full types in PluginConfig inside `svgo` source code,
|
|
157
|
+
* but this interface too complex and heavy for schema
|
|
153
158
|
*/
|
|
154
|
-
plugins?:
|
|
155
|
-
name: string;
|
|
156
|
-
active: boolean;
|
|
157
|
-
[key: string]: any;
|
|
158
|
-
}>;
|
|
159
|
+
plugins?: SimplifiedSvgoConfig[];
|
|
159
160
|
};
|
|
160
161
|
/**
|
|
161
162
|
* @title Settings for image-webpack-loader
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tramvai/cli",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.132.1",
|
|
4
4
|
"description": "Cli инструмент для сборки и запуска приложений",
|
|
5
5
|
"files": [
|
|
6
6
|
"src",
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
"@module-federation/node": "^0.15.1",
|
|
60
60
|
"@pmmmwh/react-refresh-webpack-plugin": "^0.5.10",
|
|
61
61
|
"@sentry/node": "^6.2.5",
|
|
62
|
-
"@svgr/webpack": "^
|
|
62
|
+
"@svgr/webpack": "^8.1.0",
|
|
63
63
|
"@tinkoff/browserslist-config": "0.2.7",
|
|
64
64
|
"@tinkoff/dippy": "0.8.15",
|
|
65
65
|
"@tinkoff/is-modern-lib": "2.0.11",
|
|
@@ -71,7 +71,7 @@
|
|
|
71
71
|
"@tinkoff/utils": "^2.1.3",
|
|
72
72
|
"@tinkoff/webpack-dedupe-plugin": "1.0.5",
|
|
73
73
|
"@tramvai/build": "3.1.4",
|
|
74
|
-
"@tramvai/react": "2.
|
|
74
|
+
"@tramvai/react": "2.132.1",
|
|
75
75
|
"@tramvai/tools-check-versions": "0.4.17",
|
|
76
76
|
"@tramvai/tools-migrate": "0.6.21",
|
|
77
77
|
"ajv": "^6.12.6",
|
|
@@ -91,7 +91,7 @@
|
|
|
91
91
|
"core-js": "^3.0.0",
|
|
92
92
|
"css-class-generator": "^2.0.0",
|
|
93
93
|
"css-loader": "^6.7.1",
|
|
94
|
-
"css-minimizer-webpack-plugin": "^
|
|
94
|
+
"css-minimizer-webpack-plugin": "^5.0.1",
|
|
95
95
|
"csso-webpack-plugin": "2.0.0-beta.3",
|
|
96
96
|
"death": "^1.1.0",
|
|
97
97
|
"detect-port": "^1.5.1",
|
|
@@ -183,7 +183,6 @@
|
|
|
183
183
|
"@types/rimraf": "^3.0.2",
|
|
184
184
|
"@types/semver": "^7.3.12",
|
|
185
185
|
"@types/stoppable": "^1.1.1",
|
|
186
|
-
"@types/svgo": "^1.3.6",
|
|
187
186
|
"@types/universal-analytics": "^0.4.5",
|
|
188
187
|
"@types/webpack": ">=5.28",
|
|
189
188
|
"@types/webpack-dev-middleware": "^5.0.2",
|
package/schema.json
CHANGED
|
@@ -1036,19 +1036,27 @@
|
|
|
1036
1036
|
"type": "object",
|
|
1037
1037
|
"properties": {
|
|
1038
1038
|
"plugins": {
|
|
1039
|
-
"title": "svgo plugins",
|
|
1039
|
+
"title": "svgo plugins, you can find full types in PluginConfig inside `svgo` source code,\nbut this interface too complex and heavy for schema",
|
|
1040
1040
|
"type": "array",
|
|
1041
1041
|
"items": {
|
|
1042
|
-
"
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
"
|
|
1042
|
+
"anyOf": [
|
|
1043
|
+
{
|
|
1044
|
+
"type": "object",
|
|
1045
|
+
"properties": {
|
|
1046
|
+
"name": {
|
|
1047
|
+
"type": "string"
|
|
1048
|
+
},
|
|
1049
|
+
"params": {
|
|
1050
|
+
"type": "object",
|
|
1051
|
+
"additionalProperties": false
|
|
1052
|
+
}
|
|
1053
|
+
},
|
|
1054
|
+
"additionalProperties": false
|
|
1046
1055
|
},
|
|
1047
|
-
|
|
1048
|
-
"type": "
|
|
1056
|
+
{
|
|
1057
|
+
"type": "string"
|
|
1049
1058
|
}
|
|
1050
|
-
|
|
1051
|
-
"additionalProperties": false
|
|
1059
|
+
]
|
|
1052
1060
|
}
|
|
1053
1061
|
}
|
|
1054
1062
|
},
|
|
@@ -1154,23 +1162,23 @@
|
|
|
1154
1162
|
"dotAll": {
|
|
1155
1163
|
"type": "boolean"
|
|
1156
1164
|
},
|
|
1157
|
-
"__@match@
|
|
1165
|
+
"__@match@8221": {
|
|
1158
1166
|
"type": "object",
|
|
1159
1167
|
"additionalProperties": false
|
|
1160
1168
|
},
|
|
1161
|
-
"__@replace@
|
|
1169
|
+
"__@replace@8223": {
|
|
1162
1170
|
"type": "object",
|
|
1163
1171
|
"additionalProperties": false
|
|
1164
1172
|
},
|
|
1165
|
-
"__@search@
|
|
1173
|
+
"__@search@8226": {
|
|
1166
1174
|
"type": "object",
|
|
1167
1175
|
"additionalProperties": false
|
|
1168
1176
|
},
|
|
1169
|
-
"__@split@
|
|
1177
|
+
"__@split@8228": {
|
|
1170
1178
|
"type": "object",
|
|
1171
1179
|
"additionalProperties": false
|
|
1172
1180
|
},
|
|
1173
|
-
"__@matchAll@
|
|
1181
|
+
"__@matchAll@8230": {
|
|
1174
1182
|
"type": "object",
|
|
1175
1183
|
"additionalProperties": false
|
|
1176
1184
|
}
|
|
@@ -1697,19 +1705,27 @@
|
|
|
1697
1705
|
"type": "object",
|
|
1698
1706
|
"properties": {
|
|
1699
1707
|
"plugins": {
|
|
1700
|
-
"title": "svgo plugins",
|
|
1708
|
+
"title": "svgo plugins, you can find full types in PluginConfig inside `svgo` source code,\nbut this interface too complex and heavy for schema",
|
|
1701
1709
|
"type": "array",
|
|
1702
1710
|
"items": {
|
|
1703
|
-
"
|
|
1704
|
-
|
|
1705
|
-
|
|
1706
|
-
"
|
|
1711
|
+
"anyOf": [
|
|
1712
|
+
{
|
|
1713
|
+
"type": "object",
|
|
1714
|
+
"properties": {
|
|
1715
|
+
"name": {
|
|
1716
|
+
"type": "string"
|
|
1717
|
+
},
|
|
1718
|
+
"params": {
|
|
1719
|
+
"type": "object",
|
|
1720
|
+
"additionalProperties": false
|
|
1721
|
+
}
|
|
1722
|
+
},
|
|
1723
|
+
"additionalProperties": false
|
|
1707
1724
|
},
|
|
1708
|
-
|
|
1709
|
-
"type": "
|
|
1725
|
+
{
|
|
1726
|
+
"type": "string"
|
|
1710
1727
|
}
|
|
1711
|
-
|
|
1712
|
-
"additionalProperties": false
|
|
1728
|
+
]
|
|
1713
1729
|
}
|
|
1714
1730
|
}
|
|
1715
1731
|
},
|
|
@@ -1815,23 +1831,23 @@
|
|
|
1815
1831
|
"dotAll": {
|
|
1816
1832
|
"type": "boolean"
|
|
1817
1833
|
},
|
|
1818
|
-
"__@match@
|
|
1834
|
+
"__@match@8221": {
|
|
1819
1835
|
"type": "object",
|
|
1820
1836
|
"additionalProperties": false
|
|
1821
1837
|
},
|
|
1822
|
-
"__@replace@
|
|
1838
|
+
"__@replace@8223": {
|
|
1823
1839
|
"type": "object",
|
|
1824
1840
|
"additionalProperties": false
|
|
1825
1841
|
},
|
|
1826
|
-
"__@search@
|
|
1842
|
+
"__@search@8226": {
|
|
1827
1843
|
"type": "object",
|
|
1828
1844
|
"additionalProperties": false
|
|
1829
1845
|
},
|
|
1830
|
-
"__@split@
|
|
1846
|
+
"__@split@8228": {
|
|
1831
1847
|
"type": "object",
|
|
1832
1848
|
"additionalProperties": false
|
|
1833
1849
|
},
|
|
1834
|
-
"__@matchAll@
|
|
1850
|
+
"__@matchAll@8230": {
|
|
1835
1851
|
"type": "object",
|
|
1836
1852
|
"additionalProperties": false
|
|
1837
1853
|
}
|
|
@@ -2358,19 +2374,27 @@
|
|
|
2358
2374
|
"type": "object",
|
|
2359
2375
|
"properties": {
|
|
2360
2376
|
"plugins": {
|
|
2361
|
-
"title": "svgo plugins",
|
|
2377
|
+
"title": "svgo plugins, you can find full types in PluginConfig inside `svgo` source code,\nbut this interface too complex and heavy for schema",
|
|
2362
2378
|
"type": "array",
|
|
2363
2379
|
"items": {
|
|
2364
|
-
"
|
|
2365
|
-
|
|
2366
|
-
|
|
2367
|
-
"
|
|
2380
|
+
"anyOf": [
|
|
2381
|
+
{
|
|
2382
|
+
"type": "object",
|
|
2383
|
+
"properties": {
|
|
2384
|
+
"name": {
|
|
2385
|
+
"type": "string"
|
|
2386
|
+
},
|
|
2387
|
+
"params": {
|
|
2388
|
+
"type": "object",
|
|
2389
|
+
"additionalProperties": false
|
|
2390
|
+
}
|
|
2391
|
+
},
|
|
2392
|
+
"additionalProperties": false
|
|
2368
2393
|
},
|
|
2369
|
-
|
|
2370
|
-
"type": "
|
|
2394
|
+
{
|
|
2395
|
+
"type": "string"
|
|
2371
2396
|
}
|
|
2372
|
-
|
|
2373
|
-
"additionalProperties": false
|
|
2397
|
+
]
|
|
2374
2398
|
}
|
|
2375
2399
|
}
|
|
2376
2400
|
},
|
|
@@ -2476,23 +2500,23 @@
|
|
|
2476
2500
|
"dotAll": {
|
|
2477
2501
|
"type": "boolean"
|
|
2478
2502
|
},
|
|
2479
|
-
"__@match@
|
|
2503
|
+
"__@match@8221": {
|
|
2480
2504
|
"type": "object",
|
|
2481
2505
|
"additionalProperties": false
|
|
2482
2506
|
},
|
|
2483
|
-
"__@replace@
|
|
2507
|
+
"__@replace@8223": {
|
|
2484
2508
|
"type": "object",
|
|
2485
2509
|
"additionalProperties": false
|
|
2486
2510
|
},
|
|
2487
|
-
"__@search@
|
|
2511
|
+
"__@search@8226": {
|
|
2488
2512
|
"type": "object",
|
|
2489
2513
|
"additionalProperties": false
|
|
2490
2514
|
},
|
|
2491
|
-
"__@split@
|
|
2515
|
+
"__@split@8228": {
|
|
2492
2516
|
"type": "object",
|
|
2493
2517
|
"additionalProperties": false
|
|
2494
2518
|
},
|
|
2495
|
-
"__@matchAll@
|
|
2519
|
+
"__@matchAll@8230": {
|
|
2496
2520
|
"type": "object",
|
|
2497
2521
|
"additionalProperties": false
|
|
2498
2522
|
}
|
|
@@ -1,18 +1,45 @@
|
|
|
1
1
|
import type { Compiler, MultiCompiler } from 'webpack';
|
|
2
2
|
|
|
3
|
+
const warnFilter = (warning: string) => {
|
|
4
|
+
// this library is not suited for bundling for Node.js environment https://github.com/browserslist/browserslist/issues/199
|
|
5
|
+
// but we don't have any issues with it
|
|
6
|
+
if (
|
|
7
|
+
warning.includes('node_modules/browserslist/node.js') &&
|
|
8
|
+
warning.includes('Critical dependency')
|
|
9
|
+
) {
|
|
10
|
+
return false;
|
|
11
|
+
}
|
|
12
|
+
// always trigger to platform.js and react.js chunks, looks like a noise
|
|
13
|
+
if (warning.includes('combined asset size exceeds the recommended limit')) {
|
|
14
|
+
return false;
|
|
15
|
+
}
|
|
16
|
+
// https://github.com/webpack/webpack/pull/11646 not works for warnings
|
|
17
|
+
if (
|
|
18
|
+
warning.includes('not found') &&
|
|
19
|
+
(warning.includes('dependenciesVersion.js') || warning.includes('@/__private__/'))
|
|
20
|
+
) {
|
|
21
|
+
return false;
|
|
22
|
+
}
|
|
23
|
+
return warning;
|
|
24
|
+
};
|
|
25
|
+
|
|
3
26
|
export const runWebpack = (compiler: Compiler | MultiCompiler) => {
|
|
4
27
|
return new Promise<void>((resolve, reject) => {
|
|
5
28
|
compiler.run((err, stats) => {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
29
|
+
// stats can be undefined when error exists
|
|
30
|
+
let warnings = stats?.toString({
|
|
31
|
+
all: false,
|
|
32
|
+
colors: true,
|
|
33
|
+
warnings: true,
|
|
34
|
+
errors: true,
|
|
35
|
+
});
|
|
36
|
+
|
|
37
|
+
if (warnings) {
|
|
38
|
+
warnings = warnings.split('WARNING').filter(warnFilter).join('WARNING');
|
|
39
|
+
console.warn(warnings);
|
|
40
|
+
}
|
|
14
41
|
|
|
15
|
-
if (err || stats
|
|
42
|
+
if (err || stats?.hasErrors()) {
|
|
16
43
|
return reject(
|
|
17
44
|
err ||
|
|
18
45
|
new Error(
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type Config from 'webpack-chain';
|
|
2
|
+
import type { PluginConfig, Config as SvgoConfig } from 'svgo';
|
|
2
3
|
import type { ConfigManager } from '../../../config/configManager';
|
|
3
4
|
import type { CliConfigEntry } from '../../../typings/configEntry/cli';
|
|
4
5
|
import { addTranspilerLoader, getTranspilerConfig } from './transpiler';
|
|
@@ -27,17 +28,20 @@ export const addSvgrLoader = (
|
|
|
27
28
|
svgrConfig.use('svgr').loader('@svgr/webpack').options({ babel: false, svgo: svgoOptions }).end();
|
|
28
29
|
};
|
|
29
30
|
|
|
30
|
-
export const getSvgoOptions = (
|
|
31
|
+
export const getSvgoOptions = (
|
|
32
|
+
configManager: ConfigManager<CliConfigEntry>
|
|
33
|
+
): SvgoConfig & { configFile?: boolean } => {
|
|
31
34
|
return {
|
|
32
35
|
configFile: false,
|
|
33
|
-
plugins: configManager.svgo?.plugins ?? [
|
|
36
|
+
plugins: (configManager.svgo?.plugins as any as PluginConfig[]) ?? [
|
|
34
37
|
{
|
|
35
|
-
name: '
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
38
|
+
name: 'preset-default',
|
|
39
|
+
params: {
|
|
40
|
+
overrides: {
|
|
41
|
+
cleanupIds: false,
|
|
42
|
+
collapseGroups: false,
|
|
43
|
+
},
|
|
44
|
+
},
|
|
41
45
|
},
|
|
42
46
|
],
|
|
43
47
|
};
|
|
@@ -1015,19 +1015,27 @@
|
|
|
1015
1015
|
"type": "object",
|
|
1016
1016
|
"properties": {
|
|
1017
1017
|
"plugins": {
|
|
1018
|
-
"title": "svgo plugins",
|
|
1018
|
+
"title": "svgo plugins, you can find full types in PluginConfig inside `svgo` source code,\nbut this interface too complex and heavy for schema",
|
|
1019
1019
|
"type": "array",
|
|
1020
1020
|
"items": {
|
|
1021
|
-
"
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
"
|
|
1021
|
+
"anyOf": [
|
|
1022
|
+
{
|
|
1023
|
+
"type": "object",
|
|
1024
|
+
"properties": {
|
|
1025
|
+
"name": {
|
|
1026
|
+
"type": "string"
|
|
1027
|
+
},
|
|
1028
|
+
"params": {
|
|
1029
|
+
"type": "object",
|
|
1030
|
+
"additionalProperties": false
|
|
1031
|
+
}
|
|
1032
|
+
},
|
|
1033
|
+
"additionalProperties": false
|
|
1025
1034
|
},
|
|
1026
|
-
|
|
1027
|
-
"type": "
|
|
1035
|
+
{
|
|
1036
|
+
"type": "string"
|
|
1028
1037
|
}
|
|
1029
|
-
|
|
1030
|
-
"additionalProperties": false
|
|
1038
|
+
]
|
|
1031
1039
|
}
|
|
1032
1040
|
}
|
|
1033
1041
|
},
|
|
@@ -1133,23 +1141,23 @@
|
|
|
1133
1141
|
"dotAll": {
|
|
1134
1142
|
"type": "boolean"
|
|
1135
1143
|
},
|
|
1136
|
-
"__@match@
|
|
1144
|
+
"__@match@8221": {
|
|
1137
1145
|
"type": "object",
|
|
1138
1146
|
"additionalProperties": false
|
|
1139
1147
|
},
|
|
1140
|
-
"__@replace@
|
|
1148
|
+
"__@replace@8223": {
|
|
1141
1149
|
"type": "object",
|
|
1142
1150
|
"additionalProperties": false
|
|
1143
1151
|
},
|
|
1144
|
-
"__@search@
|
|
1152
|
+
"__@search@8226": {
|
|
1145
1153
|
"type": "object",
|
|
1146
1154
|
"additionalProperties": false
|
|
1147
1155
|
},
|
|
1148
|
-
"__@split@
|
|
1156
|
+
"__@split@8228": {
|
|
1149
1157
|
"type": "object",
|
|
1150
1158
|
"additionalProperties": false
|
|
1151
1159
|
},
|
|
1152
|
-
"__@matchAll@
|
|
1160
|
+
"__@matchAll@8230": {
|
|
1153
1161
|
"type": "object",
|
|
1154
1162
|
"additionalProperties": false
|
|
1155
1163
|
}
|
|
@@ -1668,19 +1676,27 @@
|
|
|
1668
1676
|
"type": "object",
|
|
1669
1677
|
"properties": {
|
|
1670
1678
|
"plugins": {
|
|
1671
|
-
"title": "svgo plugins",
|
|
1679
|
+
"title": "svgo plugins, you can find full types in PluginConfig inside `svgo` source code,\nbut this interface too complex and heavy for schema",
|
|
1672
1680
|
"type": "array",
|
|
1673
1681
|
"items": {
|
|
1674
|
-
"
|
|
1675
|
-
|
|
1676
|
-
|
|
1677
|
-
"
|
|
1682
|
+
"anyOf": [
|
|
1683
|
+
{
|
|
1684
|
+
"type": "object",
|
|
1685
|
+
"properties": {
|
|
1686
|
+
"name": {
|
|
1687
|
+
"type": "string"
|
|
1688
|
+
},
|
|
1689
|
+
"params": {
|
|
1690
|
+
"type": "object",
|
|
1691
|
+
"additionalProperties": false
|
|
1692
|
+
}
|
|
1693
|
+
},
|
|
1694
|
+
"additionalProperties": false
|
|
1678
1695
|
},
|
|
1679
|
-
|
|
1680
|
-
"type": "
|
|
1696
|
+
{
|
|
1697
|
+
"type": "string"
|
|
1681
1698
|
}
|
|
1682
|
-
|
|
1683
|
-
"additionalProperties": false
|
|
1699
|
+
]
|
|
1684
1700
|
}
|
|
1685
1701
|
}
|
|
1686
1702
|
},
|
|
@@ -1786,23 +1802,23 @@
|
|
|
1786
1802
|
"dotAll": {
|
|
1787
1803
|
"type": "boolean"
|
|
1788
1804
|
},
|
|
1789
|
-
"__@match@
|
|
1805
|
+
"__@match@8221": {
|
|
1790
1806
|
"type": "object",
|
|
1791
1807
|
"additionalProperties": false
|
|
1792
1808
|
},
|
|
1793
|
-
"__@replace@
|
|
1809
|
+
"__@replace@8223": {
|
|
1794
1810
|
"type": "object",
|
|
1795
1811
|
"additionalProperties": false
|
|
1796
1812
|
},
|
|
1797
|
-
"__@search@
|
|
1813
|
+
"__@search@8226": {
|
|
1798
1814
|
"type": "object",
|
|
1799
1815
|
"additionalProperties": false
|
|
1800
1816
|
},
|
|
1801
|
-
"__@split@
|
|
1817
|
+
"__@split@8228": {
|
|
1802
1818
|
"type": "object",
|
|
1803
1819
|
"additionalProperties": false
|
|
1804
1820
|
},
|
|
1805
|
-
"__@matchAll@
|
|
1821
|
+
"__@matchAll@8230": {
|
|
1806
1822
|
"type": "object",
|
|
1807
1823
|
"additionalProperties": false
|
|
1808
1824
|
}
|
|
@@ -2321,19 +2337,27 @@
|
|
|
2321
2337
|
"type": "object",
|
|
2322
2338
|
"properties": {
|
|
2323
2339
|
"plugins": {
|
|
2324
|
-
"title": "svgo plugins",
|
|
2340
|
+
"title": "svgo plugins, you can find full types in PluginConfig inside `svgo` source code,\nbut this interface too complex and heavy for schema",
|
|
2325
2341
|
"type": "array",
|
|
2326
2342
|
"items": {
|
|
2327
|
-
"
|
|
2328
|
-
|
|
2329
|
-
|
|
2330
|
-
"
|
|
2343
|
+
"anyOf": [
|
|
2344
|
+
{
|
|
2345
|
+
"type": "object",
|
|
2346
|
+
"properties": {
|
|
2347
|
+
"name": {
|
|
2348
|
+
"type": "string"
|
|
2349
|
+
},
|
|
2350
|
+
"params": {
|
|
2351
|
+
"type": "object",
|
|
2352
|
+
"additionalProperties": false
|
|
2353
|
+
}
|
|
2354
|
+
},
|
|
2355
|
+
"additionalProperties": false
|
|
2331
2356
|
},
|
|
2332
|
-
|
|
2333
|
-
"type": "
|
|
2357
|
+
{
|
|
2358
|
+
"type": "string"
|
|
2334
2359
|
}
|
|
2335
|
-
|
|
2336
|
-
"additionalProperties": false
|
|
2360
|
+
]
|
|
2337
2361
|
}
|
|
2338
2362
|
}
|
|
2339
2363
|
},
|
|
@@ -2439,23 +2463,23 @@
|
|
|
2439
2463
|
"dotAll": {
|
|
2440
2464
|
"type": "boolean"
|
|
2441
2465
|
},
|
|
2442
|
-
"__@match@
|
|
2466
|
+
"__@match@8221": {
|
|
2443
2467
|
"type": "object",
|
|
2444
2468
|
"additionalProperties": false
|
|
2445
2469
|
},
|
|
2446
|
-
"__@replace@
|
|
2470
|
+
"__@replace@8223": {
|
|
2447
2471
|
"type": "object",
|
|
2448
2472
|
"additionalProperties": false
|
|
2449
2473
|
},
|
|
2450
|
-
"__@search@
|
|
2474
|
+
"__@search@8226": {
|
|
2451
2475
|
"type": "object",
|
|
2452
2476
|
"additionalProperties": false
|
|
2453
2477
|
},
|
|
2454
|
-
"__@split@
|
|
2478
|
+
"__@split@8228": {
|
|
2455
2479
|
"type": "object",
|
|
2456
2480
|
"additionalProperties": false
|
|
2457
2481
|
},
|
|
2458
|
-
"__@matchAll@
|
|
2482
|
+
"__@matchAll@8230": {
|
|
2459
2483
|
"type": "object",
|
|
2460
2484
|
"additionalProperties": false
|
|
2461
2485
|
}
|
|
@@ -2,6 +2,8 @@ import type { Configuration } from 'webpack';
|
|
|
2
2
|
import type { DeduplicateStrategy } from '@tinkoff/webpack-dedupe-plugin';
|
|
3
3
|
import type { ConfigEntry, OverridableOption } from './common';
|
|
4
4
|
|
|
5
|
+
type SimplifiedSvgoConfig = string | { name: string; params: Record<string, any> };
|
|
6
|
+
|
|
5
7
|
type Notifications = {
|
|
6
8
|
/**
|
|
7
9
|
* @title Defines when success notifications are shown
|
|
@@ -161,13 +163,10 @@ export interface CliConfigEntry extends ConfigEntry {
|
|
|
161
163
|
*/
|
|
162
164
|
svgo?: {
|
|
163
165
|
/**
|
|
164
|
-
* @title svgo plugins
|
|
166
|
+
* @title svgo plugins, you can find full types in PluginConfig inside `svgo` source code,
|
|
167
|
+
* but this interface too complex and heavy for schema
|
|
165
168
|
*/
|
|
166
|
-
plugins?:
|
|
167
|
-
name: string;
|
|
168
|
-
active: boolean;
|
|
169
|
-
[key: string]: any;
|
|
170
|
-
}>;
|
|
169
|
+
plugins?: SimplifiedSvgoConfig[];
|
|
171
170
|
};
|
|
172
171
|
|
|
173
172
|
/**
|