@tramvai/cli 2.133.0 → 2.133.4
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/providers/build/client.js +4 -4
- package/lib/builder/webpack/providers/build/client.js.map +1 -1
- package/lib/builder/webpack/providers/build/clientModern.js +4 -4
- package/lib/builder/webpack/providers/build/clientModern.js.map +1 -1
- package/lib/builder/webpack/providers/build/server.js +4 -3
- package/lib/builder/webpack/providers/build/server.js.map +1 -1
- package/lib/builder/webpack/providers/start/shared.js +25 -1
- package/lib/builder/webpack/providers/start/shared.js.map +1 -1
- package/lib/builder/webpack/utils/compiler.d.ts +4 -0
- package/lib/builder/webpack/utils/compiler.js +25 -0
- package/lib/builder/webpack/utils/compiler.js.map +1 -0
- package/lib/library/webpack/application/server/dev.js +4 -2
- package/lib/library/webpack/application/server/dev.js.map +1 -1
- package/lib/schema/autogeneratedSchema.json +15 -15
- package/package.json +4 -2
- package/schema.json +15 -15
- package/src/builder/webpack/providers/build/client.ts +5 -4
- package/src/builder/webpack/providers/build/clientModern.ts +5 -4
- package/src/builder/webpack/providers/build/server.ts +5 -4
- package/src/builder/webpack/providers/start/shared.ts +28 -1
- package/src/builder/webpack/utils/compiler.ts +24 -0
- package/src/commands/new/templates/app/monorepo/tramvai.json.hbs +4 -1
- package/src/commands/new/templates/app/multirepo/tramvai.json.hbs +4 -0
- package/src/library/webpack/application/server/dev.ts +5 -5
- package/src/schema/autogeneratedSchema.json +15 -15
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.buildClientProviders = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
4
|
const dippy_1 = require("@tinkoff/dippy");
|
|
6
|
-
const webpack_1 = tslib_1.__importDefault(require("webpack"));
|
|
7
5
|
const tokens_1 = require("../../../../di/tokens");
|
|
8
6
|
const toWebpackConfig_1 = require("../../../../library/webpack/utils/toWebpackConfig");
|
|
9
7
|
const tokens_2 = require("../../tokens");
|
|
10
8
|
const closeWebpack_1 = require("../../utils/closeWebpack");
|
|
11
9
|
const runWebpack_1 = require("../../utils/runWebpack");
|
|
10
|
+
const compiler_1 = require("../../utils/compiler");
|
|
12
11
|
exports.buildClientProviders = [
|
|
13
12
|
(0, dippy_1.provide)({
|
|
14
13
|
provide: tokens_2.CLIENT_CONFIG_MANAGER_TOKEN,
|
|
@@ -24,11 +23,12 @@ exports.buildClientProviders = [
|
|
|
24
23
|
}),
|
|
25
24
|
(0, dippy_1.provide)({
|
|
26
25
|
provide: tokens_2.WEBPACK_CLIENT_COMPILER_TOKEN,
|
|
27
|
-
useFactory: ({ webpackConfig }) => {
|
|
28
|
-
return (0,
|
|
26
|
+
useFactory: ({ webpackConfig, di }) => {
|
|
27
|
+
return (0, compiler_1.createCompiler)((0, toWebpackConfig_1.toWebpackConfig)(webpackConfig), di);
|
|
29
28
|
},
|
|
30
29
|
deps: {
|
|
31
30
|
webpackConfig: tokens_2.WEBPACK_CLIENT_CONFIG_TOKEN,
|
|
31
|
+
di: dippy_1.DI_TOKEN,
|
|
32
32
|
},
|
|
33
33
|
}),
|
|
34
34
|
(0, dippy_1.provide)({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../../src/builder/webpack/providers/build/client.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../../src/builder/webpack/providers/build/client.ts"],"names":[],"mappings":";;;AACA,0CAAmD;AACnD,kDAA6D;AAC7D,uFAAoF;AACpF,yCAMsB;AACtB,2DAAwD;AACxD,uDAAoD;AACpD,mDAAsD;AAEzC,QAAA,oBAAoB,GAAe;IAC9C,IAAA,eAAO,EAAC;QACN,OAAO,EAAE,oCAA2B;QACpC,UAAU,EAAE,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE;YAChC,OAAO,aAAa,CAAC,YAAY,CAAC;gBAChC,SAAS,EAAE,QAAQ;gBACnB,MAAM,EAAE,KAAK;aACd,CAAC,CAAC;QACL,CAAC;QACD,IAAI,EAAE;YACJ,aAAa,EAAE,6BAAoB;SACpC;KACF,CAAC;IACF,IAAA,eAAO,EAAC;QACN,OAAO,EAAE,sCAA6B;QACtC,UAAU,EAAE,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,EAAE,EAAE;YACpC,OAAO,IAAA,yBAAc,EAAC,IAAA,iCAAe,EAAC,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5D,CAAC;QACD,IAAI,EAAE;YACJ,aAAa,EAAE,oCAA2B;YAC1C,EAAE,EAAE,gBAAQ;SACb;KACF,CAAC;IACF,IAAA,eAAO,EAAC;QACN,OAAO,EAAE,8BAAqB;QAC9B,KAAK,EAAE,IAAI;QACX,UAAU,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,EAAE;YAClC,OAAO,SAAS,YAAY;gBAC1B,OAAO,IAAA,uBAAU,EAAC,eAAe,CAAC,CAAC;YACrC,CAAC,CAAC;QACJ,CAAC;QACD,IAAI,EAAE;YACJ,eAAe,EAAE,sCAA6B;SAC/C;KACF,CAAC;IACF,IAAA,eAAO,EAAC;QACN,OAAO,EAAE,4BAAmB;QAC5B,KAAK,EAAE,IAAI;QACX,UAAU,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,EAAE;YAClC,OAAO,SAAS,YAAY;gBAC1B,OAAO,IAAA,2BAAY,EAAC,eAAe,CAAC,CAAC;YACvC,CAAC,CAAC;QACJ,CAAC;QACD,IAAI,EAAE;YACJ,eAAe,EAAE,sCAA6B;SAC/C;KACF,CAAC;CACH,CAAC"}
|
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.buildClientModernProviders = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
4
|
const dippy_1 = require("@tinkoff/dippy");
|
|
6
|
-
const webpack_1 = tslib_1.__importDefault(require("webpack"));
|
|
7
5
|
const tokens_1 = require("../../../../di/tokens");
|
|
8
6
|
const toWebpackConfig_1 = require("../../../../library/webpack/utils/toWebpackConfig");
|
|
9
7
|
const tokens_2 = require("../../tokens");
|
|
10
8
|
const closeWebpack_1 = require("../../utils/closeWebpack");
|
|
11
9
|
const runWebpack_1 = require("../../utils/runWebpack");
|
|
10
|
+
const compiler_1 = require("../../utils/compiler");
|
|
12
11
|
exports.buildClientModernProviders = [
|
|
13
12
|
(0, dippy_1.provide)({
|
|
14
13
|
provide: tokens_2.CLIENT_MODERN_CONFIG_MANAGER_TOKEN,
|
|
@@ -24,11 +23,12 @@ exports.buildClientModernProviders = [
|
|
|
24
23
|
}),
|
|
25
24
|
(0, dippy_1.provide)({
|
|
26
25
|
provide: tokens_2.WEBPACK_CLIENT_MODERN_COMPILER_TOKEN,
|
|
27
|
-
useFactory: ({ webpackConfig }) => {
|
|
28
|
-
return (0,
|
|
26
|
+
useFactory: ({ webpackConfig, di }) => {
|
|
27
|
+
return (0, compiler_1.createCompiler)((0, toWebpackConfig_1.toWebpackConfig)(webpackConfig), di);
|
|
29
28
|
},
|
|
30
29
|
deps: {
|
|
31
30
|
webpackConfig: tokens_2.WEBPACK_CLIENT_MODERN_CONFIG_TOKEN,
|
|
31
|
+
di: dippy_1.DI_TOKEN,
|
|
32
32
|
},
|
|
33
33
|
}),
|
|
34
34
|
(0, dippy_1.provide)({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clientModern.js","sourceRoot":"","sources":["../../../../../src/builder/webpack/providers/build/clientModern.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"clientModern.js","sourceRoot":"","sources":["../../../../../src/builder/webpack/providers/build/clientModern.ts"],"names":[],"mappings":";;;AACA,0CAAmD;AACnD,kDAA6D;AAC7D,uFAAoF;AACpF,yCAMsB;AACtB,2DAAwD;AACxD,uDAAoD;AACpD,mDAAsD;AAEzC,QAAA,0BAA0B,GAAe;IACpD,IAAA,eAAO,EAAC;QACN,OAAO,EAAE,2CAAkC;QAC3C,UAAU,EAAE,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE;YAChC,OAAO,aAAa,CAAC,YAAY,CAAC;gBAChC,SAAS,EAAE,QAAQ;gBACnB,MAAM,EAAE,IAAI;aACb,CAAC,CAAC;QACL,CAAC;QACD,IAAI,EAAE;YACJ,aAAa,EAAE,6BAAoB;SACpC;KACF,CAAC;IACF,IAAA,eAAO,EAAC;QACN,OAAO,EAAE,6CAAoC;QAC7C,UAAU,EAAE,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,EAAE,EAAE;YACpC,OAAO,IAAA,yBAAc,EAAC,IAAA,iCAAe,EAAC,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5D,CAAC;QACD,IAAI,EAAE;YACJ,aAAa,EAAE,2CAAkC;YACjD,EAAE,EAAE,gBAAQ;SACb;KACF,CAAC;IACF,IAAA,eAAO,EAAC;QACN,OAAO,EAAE,8BAAqB;QAC9B,KAAK,EAAE,IAAI;QACX,UAAU,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,EAAE;YAClC,OAAO,SAAS,YAAY;gBAC1B,OAAO,IAAA,uBAAU,EAAC,eAAe,CAAC,CAAC;YACrC,CAAC,CAAC;QACJ,CAAC;QACD,IAAI,EAAE;YACJ,eAAe,EAAE,6CAAoC;SACtD;KACF,CAAC;IACF,IAAA,eAAO,EAAC;QACN,OAAO,EAAE,4BAAmB;QAC5B,KAAK,EAAE,IAAI;QACX,UAAU,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,EAAE;YAClC,OAAO,SAAS,YAAY;gBAC1B,OAAO,IAAA,2BAAY,EAAC,eAAe,CAAC,CAAC;YACvC,CAAC,CAAC;QACJ,CAAC;QACD,IAAI,EAAE;YACJ,eAAe,EAAE,6CAAoC;SACtD;KACF,CAAC;CACH,CAAC"}
|
|
@@ -4,19 +4,20 @@ exports.buildServerProviders = void 0;
|
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const dippy_1 = require("@tinkoff/dippy");
|
|
6
6
|
const rimraf_1 = tslib_1.__importDefault(require("rimraf"));
|
|
7
|
-
const webpack_1 = tslib_1.__importDefault(require("webpack"));
|
|
8
7
|
const toWebpackConfig_1 = require("../../../../library/webpack/utils/toWebpackConfig");
|
|
9
8
|
const tokens_1 = require("../../tokens");
|
|
10
9
|
const closeWebpack_1 = require("../../utils/closeWebpack");
|
|
11
10
|
const runWebpack_1 = require("../../utils/runWebpack");
|
|
11
|
+
const compiler_1 = require("../../utils/compiler");
|
|
12
12
|
exports.buildServerProviders = [
|
|
13
13
|
(0, dippy_1.provide)({
|
|
14
14
|
provide: tokens_1.WEBPACK_SERVER_COMPILER_TOKEN,
|
|
15
|
-
useFactory: ({ webpackConfig }) => {
|
|
16
|
-
return (0,
|
|
15
|
+
useFactory: ({ webpackConfig, di }) => {
|
|
16
|
+
return (0, compiler_1.createCompiler)((0, toWebpackConfig_1.toWebpackConfig)(webpackConfig), di);
|
|
17
17
|
},
|
|
18
18
|
deps: {
|
|
19
19
|
webpackConfig: tokens_1.WEBPACK_SERVER_CONFIG_TOKEN,
|
|
20
|
+
di: dippy_1.DI_TOKEN,
|
|
20
21
|
},
|
|
21
22
|
}),
|
|
22
23
|
(0, dippy_1.provide)({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../../../../src/builder/webpack/providers/build/server.ts"],"names":[],"mappings":";;;;AACA,
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../../../../src/builder/webpack/providers/build/server.ts"],"names":[],"mappings":";;;;AACA,0CAAmD;AACnD,4DAA4B;AAC5B,uFAAoF;AACpF,yCAOsB;AACtB,2DAAwD;AACxD,uDAAoD;AACpD,mDAAsD;AAEzC,QAAA,oBAAoB,GAAe;IAC9C,IAAA,eAAO,EAAC;QACN,OAAO,EAAE,sCAA6B;QACtC,UAAU,EAAE,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,EAAE,EAAE;YACpC,OAAO,IAAA,yBAAc,EAAC,IAAA,iCAAe,EAAC,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5D,CAAC;QACD,IAAI,EAAE;YACJ,aAAa,EAAE,oCAA2B;YAC1C,EAAE,EAAE,gBAAQ;SACb;KACF,CAAC;IACF,IAAA,eAAO,EAAC;QACN,OAAO,EAAE,2BAAkB;QAC3B,KAAK,EAAE,IAAI;QACX,UAAU,EAAE,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE;YAChC,OAAO,SAAS,aAAa;gBAC3B,OAAO,gBAAM,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,SAAS,KAAK,EAAE,EAAE,CAAC,CAAC;YAC1D,CAAC,CAAC;QACJ,CAAC;QACD,IAAI,EAAE;YACJ,aAAa,EAAE,oCAA2B;SAC3C;KACF,CAAC;IACF,IAAA,eAAO,EAAC;QACN,OAAO,EAAE,8BAAqB;QAC9B,KAAK,EAAE,IAAI;QACX,UAAU,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,EAAE;YAClC,OAAO,SAAS,YAAY;gBAC1B,OAAO,IAAA,uBAAU,EAAC,eAAe,CAAC,CAAC;YACrC,CAAC,CAAC;QACJ,CAAC;QACD,IAAI,EAAE;YACJ,eAAe,EAAE,sCAA6B;SAC/C;KACF,CAAC;IACF,IAAA,eAAO,EAAC;QACN,OAAO,EAAE,4BAAmB;QAC5B,KAAK,EAAE,IAAI;QACX,UAAU,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,EAAE;YAClC,OAAO,SAAS,YAAY;gBAC1B,OAAO,IAAA,2BAAY,EAAC,eAAe,CAAC,CAAC;YACvC,CAAC,CAAC;QACJ,CAAC;QACD,IAAI,EAAE;YACJ,eAAe,EAAE,sCAA6B;SAC/C;KACF,CAAC;CACH,CAAC"}
|
|
@@ -13,7 +13,31 @@ exports.startSharedProviders = [
|
|
|
13
13
|
provide: tokens_1.WEBPACK_COMPILER_TOKEN,
|
|
14
14
|
useFactory: ({ clientConfig, serverConfig }) => {
|
|
15
15
|
const configs = [clientConfig, serverConfig].filter(Boolean).map(toWebpackConfig_1.toWebpackConfig);
|
|
16
|
-
|
|
16
|
+
const multiCompiler = (0, webpack_1.default)(configs);
|
|
17
|
+
const { inputFileSystem } = multiCompiler.compilers[0];
|
|
18
|
+
// reuse input file system between compilers for faster builds, reference - https://github.com/vercel/next.js/pull/51879
|
|
19
|
+
multiCompiler.compilers.forEach((compiler) => {
|
|
20
|
+
// eslint-disable-next-line no-param-reassign
|
|
21
|
+
compiler.inputFileSystem = inputFileSystem;
|
|
22
|
+
// This is set for the initial compile. After that Watching class in webpack adds it.
|
|
23
|
+
// eslint-disable-next-line no-param-reassign
|
|
24
|
+
compiler.fsStartTime = Date.now();
|
|
25
|
+
// Ensure NodeEnvironmentPlugin doesn't purge the inputFileSystem. Purging is handled in `done` below.
|
|
26
|
+
// https://github.com/webpack/webpack/blob/main/lib/node/NodeEnvironmentPlugin.js#L51
|
|
27
|
+
compiler.hooks.beforeRun.intercept({
|
|
28
|
+
register(tapInfo) {
|
|
29
|
+
if (tapInfo.name === 'NodeEnvironmentPlugin') {
|
|
30
|
+
return null;
|
|
31
|
+
}
|
|
32
|
+
return tapInfo;
|
|
33
|
+
},
|
|
34
|
+
});
|
|
35
|
+
});
|
|
36
|
+
multiCompiler.hooks.done.tap('rebuildDone', () => {
|
|
37
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
38
|
+
inputFileSystem.purge();
|
|
39
|
+
});
|
|
40
|
+
return multiCompiler;
|
|
17
41
|
},
|
|
18
42
|
deps: {
|
|
19
43
|
clientConfig: { token: tokens_1.WEBPACK_CLIENT_CONFIG_TOKEN, optional: true },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../../../src/builder/webpack/providers/start/shared.ts"],"names":[],"mappings":";;;;AACA,0CAAmD;AACnD,8DAA8B;AAC9B,uFAAoF;AACpF,yCAOsB;AACtB,iDAAwD;AACxD,kDAAkF;AAErE,QAAA,oBAAoB,GAAe;IAC9C,IAAA,eAAO,EAAC;QACN,OAAO,EAAE,+BAAsB;QAC/B,UAAU,EAAE,CAAC,EAAE,YAAY,EAAE,YAAY,EAAE,EAAE,EAAE;YAC7C,MAAM,OAAO,GAAG,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,iCAAe,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../../../src/builder/webpack/providers/start/shared.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createCompiler = void 0;
|
|
4
|
+
const webpack_1 = require("webpack");
|
|
5
|
+
// reuse input file system between compilers for faster builds, reference - https://github.com/vercel/next.js/pull/51879
|
|
6
|
+
const createCompiler = (config, di) => {
|
|
7
|
+
const compiler = (0, webpack_1.webpack)(config);
|
|
8
|
+
const inputFileSystem = di.get({
|
|
9
|
+
token: 'webpack inputFileSystem',
|
|
10
|
+
optional: true,
|
|
11
|
+
});
|
|
12
|
+
if (inputFileSystem) {
|
|
13
|
+
// eslint-disable-next-line no-param-reassign
|
|
14
|
+
compiler.inputFileSystem = inputFileSystem;
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
di.register({
|
|
18
|
+
provide: 'webpack inputFileSystem',
|
|
19
|
+
useValue: compiler.inputFileSystem,
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
return compiler;
|
|
23
|
+
};
|
|
24
|
+
exports.createCompiler = createCompiler;
|
|
25
|
+
//# sourceMappingURL=compiler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compiler.js","sourceRoot":"","sources":["../../../../src/builder/webpack/utils/compiler.ts"],"names":[],"mappings":";;;AAEA,qCAAiD;AAEjD,wHAAwH;AACjH,MAAM,cAAc,GAAG,CAAC,MAAqB,EAAE,EAAmB,EAAY,EAAE;IACrF,MAAM,QAAQ,GAAG,IAAA,iBAAO,EAAC,MAAM,CAAC,CAAC;IACjC,MAAM,eAAe,GAAuC,EAAE,CAAC,GAAG,CAAC;QACjE,KAAK,EAAE,yBAAyB;QAChC,QAAQ,EAAE,IAAI;KACf,CAAQ,CAAC;IAEV,IAAI,eAAe,EAAE;QACnB,6CAA6C;QAC7C,QAAQ,CAAC,eAAe,GAAG,eAAe,CAAC;KAC5C;SAAM;QACL,EAAE,CAAC,QAAQ,CAAC;YACV,OAAO,EAAE,yBAAyB;YAClC,QAAQ,EAAE,QAAQ,CAAC,eAAe;SACnC,CAAC,CAAC;KACJ;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AAlBW,QAAA,cAAc,kBAkBzB"}
|
|
@@ -13,7 +13,7 @@ const configResolve_1 = tslib_1.__importDefault(require("../../blocks/configReso
|
|
|
13
13
|
const sourcemaps_1 = tslib_1.__importDefault(require("../../blocks/sourcemaps"));
|
|
14
14
|
const fancy_1 = tslib_1.__importDefault(require("../../plugins/WebpackBar/reporters/fancy"));
|
|
15
15
|
const webpackServerConfig = ({ configManager, showProgress, }) => {
|
|
16
|
-
var _a
|
|
16
|
+
var _a;
|
|
17
17
|
const config = new webpack_chain_1.default();
|
|
18
18
|
config.batch((0, common_1.default)(configManager));
|
|
19
19
|
config.batch((0, dev_1.default)(configManager));
|
|
@@ -58,7 +58,9 @@ const webpackServerConfig = ({ configManager, showProgress, }) => {
|
|
|
58
58
|
]);
|
|
59
59
|
config.plugin('runtime-path').use(RuntimePathPlugin_1.default, [
|
|
60
60
|
{
|
|
61
|
-
publicPath:
|
|
61
|
+
publicPath: process.env.ASSETS_PREFIX
|
|
62
|
+
? 'process.env.ASSETS_PREFIX'
|
|
63
|
+
: `"http://${configManager.staticHost}:${configManager.staticPort}/${configManager.output.client.replace(/\/$/, '')}/"`,
|
|
62
64
|
},
|
|
63
65
|
]);
|
|
64
66
|
return config;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev.js","sourceRoot":"","sources":["../../../../../src/library/webpack/application/server/dev.ts"],"names":[],"mappings":";;;;AAAA,wDAAwB;AACxB,0EAAmC;AACnC,oEAAoC;AAKpC,gGAAgE;AAChE,8DAA8B;AAC9B,mEAAyC;AACzC,gCAA8C;AAC9C,uFAAuD;AAEvD,iFAAiD;AACjD,6FAAqE;AAE9D,MAAM,mBAAmB,GAAG,CAAC,EAClC,aAAa,EACb,YAAY,GAIb,EAAE,EAAE;;IACH,MAAM,MAAM,GAAG,IAAI,uBAAM,EAAE,CAAC;IAE5B,MAAM,CAAC,KAAK,CAAC,IAAA,gBAAM,EAAC,aAAa,CAAC,CAAC,CAAC;IACpC,MAAM,CAAC,KAAK,CAAC,IAAA,aAAS,EAAC,aAAa,CAAC,CAAC,CAAC;IACvC,MAAM,CAAC,KAAK,CACV,IAAA,0BAAoB,EAAC;QACnB,KAAK,EAAE,cAAI,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,EAAE,GAAG,aAAa,CAAC,IAAI,QAAQ,CAAC;QACzE,WAAW,EAAE,aAAa,CAAC,WAAW;KACvC,CAAC,CACH,CAAC;IACF,MAAM,CAAC,KAAK,CAAC,IAAA,uBAAa,EAAC,aAAa,CAAC,CAAC,CAAC;IAE3C,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAE3B,IAAI,aAAa,CAAC,SAAS,EAAE;QAC3B,MAAM,CAAC,KAAK,CAAC,IAAA,oBAAU,EAAC,aAAa,CAAC,CAAC,CAAC;KACzC;IAED,IAAI,aAAa,CAAC,eAAe,EAAE;QACjC,MAAM,CAAC,YAAY,CAAC;YAClB,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;KACJ;SAAM;QACL,MAAM,CAAC,YAAY,CACjB,MAAA,aAAa,CAAC,OAAO,CAAC,YAAY,mCAAI;YACpC,gBAAgB,EAAE,CAAC;YACnB,OAAO,EAAE,CAAC,oBAAoB,EAAE,YAAY,CAAC;SAC9C,CACF,CAAC;KACH;IAED,MAAM,CAAC,SAAS,CACd,CAAC,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC,GAAG,CACzF,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAC3B,CACF,CAAC;IAEF,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IAE/C,IAAI,YAAY,EAAE;QAChB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,oBAAU,EAAE;YACxC;gBACE,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,QAAQ;gBACf,SAAS,EAAE,CAAC,IAAI,eAAa,EAAE,CAAC;aACjC;SACF,CAAC,CAAC;QAEH,IAAI,aAAa,CAAC,OAAO,EAAE;YACzB,MAAM;iBACH,MAAM,CAAC,UAAU,CAAC;iBAClB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,iCAAM,IAAI,CAAC,CAAC,CAAC,KAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,SAAS,CAAC,IAAG,CAAC,CAAC;SAC3E;KACF;IAED,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;wCAE/B,IAAI,CAAC,CAAC,CAAC,KACV,sBAAsB,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,EACrD,yBAAyB,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,UAAU,CAAC,EACnE,yBAAyB,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,UAAU,CAAC;KAEtE,CAAC,CAAC;IAEH,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,2BAAiB,EAAE;QACnD;YACE,UAAU,
|
|
1
|
+
{"version":3,"file":"dev.js","sourceRoot":"","sources":["../../../../../src/library/webpack/application/server/dev.ts"],"names":[],"mappings":"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"}
|
|
@@ -1141,23 +1141,23 @@
|
|
|
1141
1141
|
"dotAll": {
|
|
1142
1142
|
"type": "boolean"
|
|
1143
1143
|
},
|
|
1144
|
-
"__@match@
|
|
1144
|
+
"__@match@8255": {
|
|
1145
1145
|
"type": "object",
|
|
1146
1146
|
"additionalProperties": false
|
|
1147
1147
|
},
|
|
1148
|
-
"__@replace@
|
|
1148
|
+
"__@replace@8257": {
|
|
1149
1149
|
"type": "object",
|
|
1150
1150
|
"additionalProperties": false
|
|
1151
1151
|
},
|
|
1152
|
-
"__@search@
|
|
1152
|
+
"__@search@8260": {
|
|
1153
1153
|
"type": "object",
|
|
1154
1154
|
"additionalProperties": false
|
|
1155
1155
|
},
|
|
1156
|
-
"__@split@
|
|
1156
|
+
"__@split@8262": {
|
|
1157
1157
|
"type": "object",
|
|
1158
1158
|
"additionalProperties": false
|
|
1159
1159
|
},
|
|
1160
|
-
"__@matchAll@
|
|
1160
|
+
"__@matchAll@8264": {
|
|
1161
1161
|
"type": "object",
|
|
1162
1162
|
"additionalProperties": false
|
|
1163
1163
|
}
|
|
@@ -1802,23 +1802,23 @@
|
|
|
1802
1802
|
"dotAll": {
|
|
1803
1803
|
"type": "boolean"
|
|
1804
1804
|
},
|
|
1805
|
-
"__@match@
|
|
1805
|
+
"__@match@8255": {
|
|
1806
1806
|
"type": "object",
|
|
1807
1807
|
"additionalProperties": false
|
|
1808
1808
|
},
|
|
1809
|
-
"__@replace@
|
|
1809
|
+
"__@replace@8257": {
|
|
1810
1810
|
"type": "object",
|
|
1811
1811
|
"additionalProperties": false
|
|
1812
1812
|
},
|
|
1813
|
-
"__@search@
|
|
1813
|
+
"__@search@8260": {
|
|
1814
1814
|
"type": "object",
|
|
1815
1815
|
"additionalProperties": false
|
|
1816
1816
|
},
|
|
1817
|
-
"__@split@
|
|
1817
|
+
"__@split@8262": {
|
|
1818
1818
|
"type": "object",
|
|
1819
1819
|
"additionalProperties": false
|
|
1820
1820
|
},
|
|
1821
|
-
"__@matchAll@
|
|
1821
|
+
"__@matchAll@8264": {
|
|
1822
1822
|
"type": "object",
|
|
1823
1823
|
"additionalProperties": false
|
|
1824
1824
|
}
|
|
@@ -2463,23 +2463,23 @@
|
|
|
2463
2463
|
"dotAll": {
|
|
2464
2464
|
"type": "boolean"
|
|
2465
2465
|
},
|
|
2466
|
-
"__@match@
|
|
2466
|
+
"__@match@8255": {
|
|
2467
2467
|
"type": "object",
|
|
2468
2468
|
"additionalProperties": false
|
|
2469
2469
|
},
|
|
2470
|
-
"__@replace@
|
|
2470
|
+
"__@replace@8257": {
|
|
2471
2471
|
"type": "object",
|
|
2472
2472
|
"additionalProperties": false
|
|
2473
2473
|
},
|
|
2474
|
-
"__@search@
|
|
2474
|
+
"__@search@8260": {
|
|
2475
2475
|
"type": "object",
|
|
2476
2476
|
"additionalProperties": false
|
|
2477
2477
|
},
|
|
2478
|
-
"__@split@
|
|
2478
|
+
"__@split@8262": {
|
|
2479
2479
|
"type": "object",
|
|
2480
2480
|
"additionalProperties": false
|
|
2481
2481
|
},
|
|
2482
|
-
"__@matchAll@
|
|
2482
|
+
"__@matchAll@8264": {
|
|
2483
2483
|
"type": "object",
|
|
2484
2484
|
"additionalProperties": false
|
|
2485
2485
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tramvai/cli",
|
|
3
|
-
"version": "2.133.
|
|
3
|
+
"version": "2.133.4",
|
|
4
4
|
"description": "Cli инструмент для сборки и запуска приложений",
|
|
5
5
|
"files": [
|
|
6
6
|
"src",
|
|
@@ -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.133.
|
|
74
|
+
"@tramvai/react": "2.133.4",
|
|
75
75
|
"@tramvai/tools-check-versions": "0.4.17",
|
|
76
76
|
"@tramvai/tools-migrate": "0.6.21",
|
|
77
77
|
"ajv": "^6.12.6",
|
|
@@ -143,6 +143,7 @@
|
|
|
143
143
|
"resolve": "^1.22.4",
|
|
144
144
|
"rimraf": "^3.0.2",
|
|
145
145
|
"semver": "^7.3.7",
|
|
146
|
+
"source-map": "^0.7.4",
|
|
146
147
|
"source-map-loader": "^4.0.0",
|
|
147
148
|
"spark-md5": "^3.0.2",
|
|
148
149
|
"stoppable": "^1.1.0",
|
|
@@ -158,6 +159,7 @@
|
|
|
158
159
|
"validate-npm-package-name": "^3.0.0",
|
|
159
160
|
"wait-on": "^5.3.0",
|
|
160
161
|
"webpack": "5.87.0",
|
|
162
|
+
"webpack-sources": "^3.2.3",
|
|
161
163
|
"webpack-bundle-analyzer": "^4.9.0",
|
|
162
164
|
"webpack-chain": "^6.5.1",
|
|
163
165
|
"webpack-dev-middleware": "^6.1.1",
|
package/schema.json
CHANGED
|
@@ -1162,23 +1162,23 @@
|
|
|
1162
1162
|
"dotAll": {
|
|
1163
1163
|
"type": "boolean"
|
|
1164
1164
|
},
|
|
1165
|
-
"__@match@
|
|
1165
|
+
"__@match@8255": {
|
|
1166
1166
|
"type": "object",
|
|
1167
1167
|
"additionalProperties": false
|
|
1168
1168
|
},
|
|
1169
|
-
"__@replace@
|
|
1169
|
+
"__@replace@8257": {
|
|
1170
1170
|
"type": "object",
|
|
1171
1171
|
"additionalProperties": false
|
|
1172
1172
|
},
|
|
1173
|
-
"__@search@
|
|
1173
|
+
"__@search@8260": {
|
|
1174
1174
|
"type": "object",
|
|
1175
1175
|
"additionalProperties": false
|
|
1176
1176
|
},
|
|
1177
|
-
"__@split@
|
|
1177
|
+
"__@split@8262": {
|
|
1178
1178
|
"type": "object",
|
|
1179
1179
|
"additionalProperties": false
|
|
1180
1180
|
},
|
|
1181
|
-
"__@matchAll@
|
|
1181
|
+
"__@matchAll@8264": {
|
|
1182
1182
|
"type": "object",
|
|
1183
1183
|
"additionalProperties": false
|
|
1184
1184
|
}
|
|
@@ -1831,23 +1831,23 @@
|
|
|
1831
1831
|
"dotAll": {
|
|
1832
1832
|
"type": "boolean"
|
|
1833
1833
|
},
|
|
1834
|
-
"__@match@
|
|
1834
|
+
"__@match@8255": {
|
|
1835
1835
|
"type": "object",
|
|
1836
1836
|
"additionalProperties": false
|
|
1837
1837
|
},
|
|
1838
|
-
"__@replace@
|
|
1838
|
+
"__@replace@8257": {
|
|
1839
1839
|
"type": "object",
|
|
1840
1840
|
"additionalProperties": false
|
|
1841
1841
|
},
|
|
1842
|
-
"__@search@
|
|
1842
|
+
"__@search@8260": {
|
|
1843
1843
|
"type": "object",
|
|
1844
1844
|
"additionalProperties": false
|
|
1845
1845
|
},
|
|
1846
|
-
"__@split@
|
|
1846
|
+
"__@split@8262": {
|
|
1847
1847
|
"type": "object",
|
|
1848
1848
|
"additionalProperties": false
|
|
1849
1849
|
},
|
|
1850
|
-
"__@matchAll@
|
|
1850
|
+
"__@matchAll@8264": {
|
|
1851
1851
|
"type": "object",
|
|
1852
1852
|
"additionalProperties": false
|
|
1853
1853
|
}
|
|
@@ -2500,23 +2500,23 @@
|
|
|
2500
2500
|
"dotAll": {
|
|
2501
2501
|
"type": "boolean"
|
|
2502
2502
|
},
|
|
2503
|
-
"__@match@
|
|
2503
|
+
"__@match@8255": {
|
|
2504
2504
|
"type": "object",
|
|
2505
2505
|
"additionalProperties": false
|
|
2506
2506
|
},
|
|
2507
|
-
"__@replace@
|
|
2507
|
+
"__@replace@8257": {
|
|
2508
2508
|
"type": "object",
|
|
2509
2509
|
"additionalProperties": false
|
|
2510
2510
|
},
|
|
2511
|
-
"__@search@
|
|
2511
|
+
"__@search@8260": {
|
|
2512
2512
|
"type": "object",
|
|
2513
2513
|
"additionalProperties": false
|
|
2514
2514
|
},
|
|
2515
|
-
"__@split@
|
|
2515
|
+
"__@split@8262": {
|
|
2516
2516
|
"type": "object",
|
|
2517
2517
|
"additionalProperties": false
|
|
2518
2518
|
},
|
|
2519
|
-
"__@matchAll@
|
|
2519
|
+
"__@matchAll@8264": {
|
|
2520
2520
|
"type": "object",
|
|
2521
2521
|
"additionalProperties": false
|
|
2522
2522
|
}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import type { Provider } from '@tinkoff/dippy';
|
|
2
|
-
import { provide } from '@tinkoff/dippy';
|
|
3
|
-
import webpack from 'webpack';
|
|
2
|
+
import { DI_TOKEN, provide } from '@tinkoff/dippy';
|
|
4
3
|
import { CONFIG_MANAGER_TOKEN } from '../../../../di/tokens';
|
|
5
4
|
import { toWebpackConfig } from '../../../../library/webpack/utils/toWebpackConfig';
|
|
6
5
|
import {
|
|
@@ -12,6 +11,7 @@ import {
|
|
|
12
11
|
} from '../../tokens';
|
|
13
12
|
import { closeWebpack } from '../../utils/closeWebpack';
|
|
14
13
|
import { runWebpack } from '../../utils/runWebpack';
|
|
14
|
+
import { createCompiler } from '../../utils/compiler';
|
|
15
15
|
|
|
16
16
|
export const buildClientProviders: Provider[] = [
|
|
17
17
|
provide({
|
|
@@ -28,11 +28,12 @@ export const buildClientProviders: Provider[] = [
|
|
|
28
28
|
}),
|
|
29
29
|
provide({
|
|
30
30
|
provide: WEBPACK_CLIENT_COMPILER_TOKEN,
|
|
31
|
-
useFactory: ({ webpackConfig }) => {
|
|
32
|
-
return
|
|
31
|
+
useFactory: ({ webpackConfig, di }) => {
|
|
32
|
+
return createCompiler(toWebpackConfig(webpackConfig), di);
|
|
33
33
|
},
|
|
34
34
|
deps: {
|
|
35
35
|
webpackConfig: WEBPACK_CLIENT_CONFIG_TOKEN,
|
|
36
|
+
di: DI_TOKEN,
|
|
36
37
|
},
|
|
37
38
|
}),
|
|
38
39
|
provide({
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import type { Provider } from '@tinkoff/dippy';
|
|
2
|
-
import { provide } from '@tinkoff/dippy';
|
|
3
|
-
import webpack from 'webpack';
|
|
2
|
+
import { DI_TOKEN, provide } from '@tinkoff/dippy';
|
|
4
3
|
import { CONFIG_MANAGER_TOKEN } from '../../../../di/tokens';
|
|
5
4
|
import { toWebpackConfig } from '../../../../library/webpack/utils/toWebpackConfig';
|
|
6
5
|
import {
|
|
@@ -12,6 +11,7 @@ import {
|
|
|
12
11
|
} from '../../tokens';
|
|
13
12
|
import { closeWebpack } from '../../utils/closeWebpack';
|
|
14
13
|
import { runWebpack } from '../../utils/runWebpack';
|
|
14
|
+
import { createCompiler } from '../../utils/compiler';
|
|
15
15
|
|
|
16
16
|
export const buildClientModernProviders: Provider[] = [
|
|
17
17
|
provide({
|
|
@@ -28,11 +28,12 @@ export const buildClientModernProviders: Provider[] = [
|
|
|
28
28
|
}),
|
|
29
29
|
provide({
|
|
30
30
|
provide: WEBPACK_CLIENT_MODERN_COMPILER_TOKEN,
|
|
31
|
-
useFactory: ({ webpackConfig }) => {
|
|
32
|
-
return
|
|
31
|
+
useFactory: ({ webpackConfig, di }) => {
|
|
32
|
+
return createCompiler(toWebpackConfig(webpackConfig), di);
|
|
33
33
|
},
|
|
34
34
|
deps: {
|
|
35
35
|
webpackConfig: WEBPACK_CLIENT_MODERN_CONFIG_TOKEN,
|
|
36
|
+
di: DI_TOKEN,
|
|
36
37
|
},
|
|
37
38
|
}),
|
|
38
39
|
provide({
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import type { Provider } from '@tinkoff/dippy';
|
|
2
|
-
import { provide } from '@tinkoff/dippy';
|
|
2
|
+
import { DI_TOKEN, provide } from '@tinkoff/dippy';
|
|
3
3
|
import rimraf from 'rimraf';
|
|
4
|
-
import webpack from 'webpack';
|
|
5
4
|
import { toWebpackConfig } from '../../../../library/webpack/utils/toWebpackConfig';
|
|
6
5
|
import {
|
|
7
6
|
CLOSE_HANDLER_TOKEN,
|
|
@@ -13,15 +12,17 @@ import {
|
|
|
13
12
|
} from '../../tokens';
|
|
14
13
|
import { closeWebpack } from '../../utils/closeWebpack';
|
|
15
14
|
import { runWebpack } from '../../utils/runWebpack';
|
|
15
|
+
import { createCompiler } from '../../utils/compiler';
|
|
16
16
|
|
|
17
17
|
export const buildServerProviders: Provider[] = [
|
|
18
18
|
provide({
|
|
19
19
|
provide: WEBPACK_SERVER_COMPILER_TOKEN,
|
|
20
|
-
useFactory: ({ webpackConfig }) => {
|
|
21
|
-
return
|
|
20
|
+
useFactory: ({ webpackConfig, di }) => {
|
|
21
|
+
return createCompiler(toWebpackConfig(webpackConfig), di);
|
|
22
22
|
},
|
|
23
23
|
deps: {
|
|
24
24
|
webpackConfig: WEBPACK_SERVER_CONFIG_TOKEN,
|
|
25
|
+
di: DI_TOKEN,
|
|
25
26
|
},
|
|
26
27
|
}),
|
|
27
28
|
provide({
|
|
@@ -18,8 +18,35 @@ export const startSharedProviders: Provider[] = [
|
|
|
18
18
|
provide: WEBPACK_COMPILER_TOKEN,
|
|
19
19
|
useFactory: ({ clientConfig, serverConfig }) => {
|
|
20
20
|
const configs = [clientConfig, serverConfig].filter(Boolean).map(toWebpackConfig);
|
|
21
|
+
const multiCompiler = webpack(configs);
|
|
22
|
+
const { inputFileSystem } = multiCompiler.compilers[0];
|
|
21
23
|
|
|
22
|
-
|
|
24
|
+
// reuse input file system between compilers for faster builds, reference - https://github.com/vercel/next.js/pull/51879
|
|
25
|
+
multiCompiler.compilers.forEach((compiler) => {
|
|
26
|
+
// eslint-disable-next-line no-param-reassign
|
|
27
|
+
compiler.inputFileSystem = inputFileSystem;
|
|
28
|
+
|
|
29
|
+
// This is set for the initial compile. After that Watching class in webpack adds it.
|
|
30
|
+
// eslint-disable-next-line no-param-reassign
|
|
31
|
+
compiler.fsStartTime = Date.now();
|
|
32
|
+
// Ensure NodeEnvironmentPlugin doesn't purge the inputFileSystem. Purging is handled in `done` below.
|
|
33
|
+
// https://github.com/webpack/webpack/blob/main/lib/node/NodeEnvironmentPlugin.js#L51
|
|
34
|
+
compiler.hooks.beforeRun.intercept({
|
|
35
|
+
register(tapInfo: any) {
|
|
36
|
+
if (tapInfo.name === 'NodeEnvironmentPlugin') {
|
|
37
|
+
return null;
|
|
38
|
+
}
|
|
39
|
+
return tapInfo;
|
|
40
|
+
},
|
|
41
|
+
});
|
|
42
|
+
});
|
|
43
|
+
|
|
44
|
+
multiCompiler.hooks.done.tap('rebuildDone', () => {
|
|
45
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
46
|
+
inputFileSystem.purge!();
|
|
47
|
+
});
|
|
48
|
+
|
|
49
|
+
return multiCompiler;
|
|
23
50
|
},
|
|
24
51
|
deps: {
|
|
25
52
|
clientConfig: { token: WEBPACK_CLIENT_CONFIG_TOKEN, optional: true },
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { DI_TOKEN } from '@tinkoff/dippy';
|
|
2
|
+
import type { Configuration } from 'webpack';
|
|
3
|
+
import { webpack, type Compiler } from 'webpack';
|
|
4
|
+
|
|
5
|
+
// reuse input file system between compilers for faster builds, reference - https://github.com/vercel/next.js/pull/51879
|
|
6
|
+
export const createCompiler = (config: Configuration, di: typeof DI_TOKEN): Compiler => {
|
|
7
|
+
const compiler = webpack(config);
|
|
8
|
+
const inputFileSystem: Compiler['inputFileSystem'] | null = di.get({
|
|
9
|
+
token: 'webpack inputFileSystem',
|
|
10
|
+
optional: true,
|
|
11
|
+
}) as any;
|
|
12
|
+
|
|
13
|
+
if (inputFileSystem) {
|
|
14
|
+
// eslint-disable-next-line no-param-reassign
|
|
15
|
+
compiler.inputFileSystem = inputFileSystem;
|
|
16
|
+
} else {
|
|
17
|
+
di.register({
|
|
18
|
+
provide: 'webpack inputFileSystem',
|
|
19
|
+
useValue: compiler.inputFileSystem,
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
return compiler;
|
|
24
|
+
};
|
|
@@ -87,11 +87,11 @@ export const webpackServerConfig = ({
|
|
|
87
87
|
|
|
88
88
|
config.plugin('runtime-path').use(RuntimePathPlugin, [
|
|
89
89
|
{
|
|
90
|
-
publicPath:
|
|
91
|
-
process.env.ASSETS_PREFIX
|
|
92
|
-
`"http://${configManager.staticHost}:${
|
|
93
|
-
|
|
94
|
-
|
|
90
|
+
publicPath: process.env.ASSETS_PREFIX
|
|
91
|
+
? 'process.env.ASSETS_PREFIX'
|
|
92
|
+
: `"http://${configManager.staticHost}:${
|
|
93
|
+
configManager.staticPort
|
|
94
|
+
}/${configManager.output.client.replace(/\/$/, '')}/"`,
|
|
95
95
|
},
|
|
96
96
|
]);
|
|
97
97
|
|
|
@@ -1141,23 +1141,23 @@
|
|
|
1141
1141
|
"dotAll": {
|
|
1142
1142
|
"type": "boolean"
|
|
1143
1143
|
},
|
|
1144
|
-
"__@match@
|
|
1144
|
+
"__@match@8255": {
|
|
1145
1145
|
"type": "object",
|
|
1146
1146
|
"additionalProperties": false
|
|
1147
1147
|
},
|
|
1148
|
-
"__@replace@
|
|
1148
|
+
"__@replace@8257": {
|
|
1149
1149
|
"type": "object",
|
|
1150
1150
|
"additionalProperties": false
|
|
1151
1151
|
},
|
|
1152
|
-
"__@search@
|
|
1152
|
+
"__@search@8260": {
|
|
1153
1153
|
"type": "object",
|
|
1154
1154
|
"additionalProperties": false
|
|
1155
1155
|
},
|
|
1156
|
-
"__@split@
|
|
1156
|
+
"__@split@8262": {
|
|
1157
1157
|
"type": "object",
|
|
1158
1158
|
"additionalProperties": false
|
|
1159
1159
|
},
|
|
1160
|
-
"__@matchAll@
|
|
1160
|
+
"__@matchAll@8264": {
|
|
1161
1161
|
"type": "object",
|
|
1162
1162
|
"additionalProperties": false
|
|
1163
1163
|
}
|
|
@@ -1802,23 +1802,23 @@
|
|
|
1802
1802
|
"dotAll": {
|
|
1803
1803
|
"type": "boolean"
|
|
1804
1804
|
},
|
|
1805
|
-
"__@match@
|
|
1805
|
+
"__@match@8255": {
|
|
1806
1806
|
"type": "object",
|
|
1807
1807
|
"additionalProperties": false
|
|
1808
1808
|
},
|
|
1809
|
-
"__@replace@
|
|
1809
|
+
"__@replace@8257": {
|
|
1810
1810
|
"type": "object",
|
|
1811
1811
|
"additionalProperties": false
|
|
1812
1812
|
},
|
|
1813
|
-
"__@search@
|
|
1813
|
+
"__@search@8260": {
|
|
1814
1814
|
"type": "object",
|
|
1815
1815
|
"additionalProperties": false
|
|
1816
1816
|
},
|
|
1817
|
-
"__@split@
|
|
1817
|
+
"__@split@8262": {
|
|
1818
1818
|
"type": "object",
|
|
1819
1819
|
"additionalProperties": false
|
|
1820
1820
|
},
|
|
1821
|
-
"__@matchAll@
|
|
1821
|
+
"__@matchAll@8264": {
|
|
1822
1822
|
"type": "object",
|
|
1823
1823
|
"additionalProperties": false
|
|
1824
1824
|
}
|
|
@@ -2463,23 +2463,23 @@
|
|
|
2463
2463
|
"dotAll": {
|
|
2464
2464
|
"type": "boolean"
|
|
2465
2465
|
},
|
|
2466
|
-
"__@match@
|
|
2466
|
+
"__@match@8255": {
|
|
2467
2467
|
"type": "object",
|
|
2468
2468
|
"additionalProperties": false
|
|
2469
2469
|
},
|
|
2470
|
-
"__@replace@
|
|
2470
|
+
"__@replace@8257": {
|
|
2471
2471
|
"type": "object",
|
|
2472
2472
|
"additionalProperties": false
|
|
2473
2473
|
},
|
|
2474
|
-
"__@search@
|
|
2474
|
+
"__@search@8260": {
|
|
2475
2475
|
"type": "object",
|
|
2476
2476
|
"additionalProperties": false
|
|
2477
2477
|
},
|
|
2478
|
-
"__@split@
|
|
2478
|
+
"__@split@8262": {
|
|
2479
2479
|
"type": "object",
|
|
2480
2480
|
"additionalProperties": false
|
|
2481
2481
|
},
|
|
2482
|
-
"__@matchAll@
|
|
2482
|
+
"__@matchAll@8264": {
|
|
2483
2483
|
"type": "object",
|
|
2484
2484
|
"additionalProperties": false
|
|
2485
2485
|
}
|