@tramvai/cli 2.92.1 → 2.94.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 (62) hide show
  1. package/lib/builder/webpack/devServer/pool/process/pool.js +4 -2
  2. package/lib/builder/webpack/devServer/pool/process/pool.js.map +1 -1
  3. package/lib/builder/webpack/devServer/pool/thread/pool.js +3 -1
  4. package/lib/builder/webpack/devServer/pool/thread/pool.js.map +1 -1
  5. package/lib/builder/webpack/tokens.d.ts +3 -0
  6. package/lib/commands/static/application.js +2 -3
  7. package/lib/commands/static/application.js.map +1 -1
  8. package/lib/commands/static/generate.js +3 -4
  9. package/lib/commands/static/generate.js.map +1 -1
  10. package/lib/di/tokens/config.d.ts +1 -0
  11. package/lib/library/webpack/application/client/dev.js +1 -1
  12. package/lib/library/webpack/application/client/dev.js.map +1 -1
  13. package/lib/library/webpack/application/server/dev.js +1 -1
  14. package/lib/library/webpack/application/server/dev.js.map +1 -1
  15. package/lib/library/webpack/blocks/dedupe.d.ts +4 -0
  16. package/lib/library/webpack/blocks/dedupe.js +12 -0
  17. package/lib/library/webpack/blocks/dedupe.js.map +1 -0
  18. package/lib/library/webpack/child-app/client/dev.js +1 -1
  19. package/lib/library/webpack/child-app/client/dev.js.map +1 -1
  20. package/lib/library/webpack/child-app/server/dev.js +1 -1
  21. package/lib/library/webpack/child-app/server/dev.js.map +1 -1
  22. package/lib/library/webpack/common/client/prod.js +5 -10
  23. package/lib/library/webpack/common/client/prod.js.map +1 -1
  24. package/lib/library/webpack/common/dev.d.ts +2 -1
  25. package/lib/library/webpack/common/dev.js +5 -1
  26. package/lib/library/webpack/common/dev.js.map +1 -1
  27. package/lib/library/webpack/common/server/prod.js +2 -9
  28. package/lib/library/webpack/common/server/prod.js.map +1 -1
  29. package/lib/library/webpack/module/client/dev.js +1 -1
  30. package/lib/library/webpack/module/client/dev.js.map +1 -1
  31. package/lib/library/webpack/module/server/dev.js +1 -1
  32. package/lib/library/webpack/module/server/dev.js.map +1 -1
  33. package/lib/schema/autogeneratedSchema.json +15 -0
  34. package/lib/typings/configEntry/cli.d.ts +6 -0
  35. package/lib/utils/dev-app/request.d.ts +3 -0
  36. package/lib/utils/dev-app/request.js +21 -0
  37. package/lib/utils/dev-app/request.js.map +1 -0
  38. package/package.json +3 -3
  39. package/schema.json +15 -0
  40. package/src/builder/webpack/devServer/pool/process/pool.ts +5 -1
  41. package/src/builder/webpack/devServer/pool/thread/pool.ts +4 -0
  42. package/src/commands/static/application.ts +2 -3
  43. package/src/commands/static/generate.ts +3 -4
  44. package/src/library/webpack/application/client/dev.ts +1 -1
  45. package/src/library/webpack/application/server/dev.ts +1 -1
  46. package/src/library/webpack/blocks/dedupe.ts +17 -0
  47. package/src/library/webpack/child-app/client/dev.ts +1 -1
  48. package/src/library/webpack/child-app/server/dev.ts +1 -1
  49. package/src/library/webpack/common/client/prod.ts +5 -7
  50. package/src/library/webpack/common/dev.ts +7 -1
  51. package/src/library/webpack/common/server/prod.ts +2 -9
  52. package/src/library/webpack/module/client/dev.ts +1 -1
  53. package/src/library/webpack/module/server/dev.ts +1 -1
  54. package/src/models/config.spec.ts +4 -0
  55. package/src/schema/autogeneratedSchema.json +15 -0
  56. package/src/schema/tramvai.spec.ts +2 -0
  57. package/src/typings/configEntry/cli.ts +6 -0
  58. package/src/utils/dev-app/request.ts +26 -0
  59. package/lib/commands/static/request.d.ts +0 -1
  60. package/lib/commands/static/request.js +0 -8
  61. package/lib/commands/static/request.js.map +0 -1
  62. package/src/commands/static/request.ts +0 -4
@@ -12,10 +12,11 @@ const ProcessWorkerBridge = (di) => {
12
12
  const configManager = di.get(tokens_1.SERVER_CONFIG_MANAGER_TOKEN);
13
13
  const stdout = di.get(tokens_2.STDOUT_TOKEN);
14
14
  const stderr = di.get(tokens_2.STDERR_TOKEN);
15
+ let firstWorker = true;
15
16
  return {
16
17
  setup() {
17
18
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
18
- cluster_1.default.setupMaster({
19
+ cluster_1.default.setupPrimary({
19
20
  // указываем другой файл для работы cluster.fork
20
21
  exec: path_1.default.resolve(__dirname, './worker.js'),
21
22
  execArgv: [].concat(configManager.debug ? constants_1.DEBUG_ARGV : [], configManager.trace ? constants_1.TRACE_ARGV : []),
@@ -33,7 +34,8 @@ const ProcessWorkerBridge = (di) => {
33
34
  const worker = cluster_1.default.fork(Object.assign(Object.assign({}, env), { NODE_ENV: 'development',
34
35
  // port=0 позволяет запустить сервер на случайном доступном порту
35
36
  // https://nodejs.org/dist/latest-v15.x/docs/api/all.html#cluster_how_it_works
36
- PORT: `${configManager.port}`, PORT_SERVER: `${configManager.port}` }));
37
+ PORT: `${configManager.port}`, PORT_SERVER: `${configManager.port}`, TRAMVAI_CLI_WATCH_INITIAL_BUILD: firstWorker }));
38
+ firstWorker = false;
37
39
  (_a = worker.process.stdout) === null || _a === void 0 ? void 0 : _a.pipe(stdout);
38
40
  (_b = worker.process.stderr) === null || _b === void 0 ? void 0 : _b.pipe(stderr);
39
41
  return worker;
@@ -1 +1 @@
1
- {"version":3,"file":"pool.js","sourceRoot":"","sources":["../../../../../../src/builder/webpack/devServer/pool/process/pool.ts"],"names":[],"mappings":";;;;AAAA,wDAAwB;AAExB,8DAA8B;AAE9B,+DAAyE;AACzE,4CAA8D;AAC9D,qDAKkC;AAE3B,MAAM,mBAAmB,GAAgC,CAAC,EAAE,EAAE,EAAE;IACrE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,iCAAwB,CAAC,CAAC;IACjD,MAAM,aAAa,GAAG,EAAE,CAAC,GAAG,CAAC,oCAA2B,CAAC,CAAC;IAC1D,MAAM,MAAM,GAAG,EAAE,CAAC,GAAG,CAAC,qBAAY,CAAC,CAAC;IACpC,MAAM,MAAM,GAAG,EAAE,CAAC,GAAG,CAAC,qBAAY,CAAC,CAAC;IAEpC,OAAO;QACC,KAAK;;gBACT,iBAAO,CAAC,WAAW,CAAC;oBAClB,gDAAgD;oBAChD,IAAI,EAAE,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,aAAa,CAAC;oBAC5C,QAAQ,EAAG,EAAe,CAAC,MAAM,CAC/B,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,sBAAU,CAAC,CAAC,CAAC,EAAE,EACrC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,sBAAU,CAAC,CAAC,CAAC,EAAE,CACtC;oBACD,uGAAuG;oBACvG,WAAW,EAAE,OAAO,CAAC,SAAS;oBAC9B,MAAM,EAAE,IAAI;oBACZ,aAAa;oBACb,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,8BAAqB,CAAC;iBACnC,CAAC,CAAC;YACL,CAAC;SAAA;QACK,MAAM;;;gBACV,MAAM,MAAM,GAAG,iBAAO,CAAC,IAAI,iCACtB,GAAG,KACN,QAAQ,EAAE,aAAa;oBACvB,iEAAiE;oBACjE,8EAA8E;oBAC9E,IAAI,EAAE,GAAG,aAAa,CAAC,IAAI,EAAE,EAC7B,WAAW,EAAE,GAAG,aAAa,CAAC,IAAI,EAAE,IACpC,CAAC;gBAEH,MAAA,MAAM,CAAC,OAAO,CAAC,MAAM,0CAAE,IAAI,CAAC,MAAM,CAAC,CAAC;gBACpC,MAAA,MAAM,CAAC,OAAO,CAAC,MAAM,0CAAE,IAAI,CAAC,MAAM,CAAC,CAAC;gBAEpC,OAAO,MAAM,CAAC;;SACf;QACK,OAAO,CAAC,MAAM;;gBAClB,IAAI,MAAM,CAAC,WAAW,EAAE,EAAE;oBACxB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;iBAChC;YACH,CAAC;SAAA;QACK,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO;;gBAC9B,IAAI,IAAI,KAAK,QAAQ,EAAE;oBACrB,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;oBAErC,MAAM,CAAC,IAAI,CAAC;wBACV,QAAQ;wBACR,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;qBACjC,CAAC,CAAC;iBACJ;YACH,CAAC;SAAA;KACF,CAAC;AACJ,CAAC,CAAC;AArDW,QAAA,mBAAmB,uBAqD9B"}
1
+ {"version":3,"file":"pool.js","sourceRoot":"","sources":["../../../../../../src/builder/webpack/devServer/pool/process/pool.ts"],"names":[],"mappings":";;;;AAAA,wDAAwB;AAExB,8DAA8B;AAE9B,+DAAyE;AACzE,4CAA8D;AAC9D,qDAKkC;AAE3B,MAAM,mBAAmB,GAAgC,CAAC,EAAE,EAAE,EAAE;IACrE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,iCAAwB,CAAC,CAAC;IACjD,MAAM,aAAa,GAAG,EAAE,CAAC,GAAG,CAAC,oCAA2B,CAAC,CAAC;IAC1D,MAAM,MAAM,GAAG,EAAE,CAAC,GAAG,CAAC,qBAAY,CAAC,CAAC;IACpC,MAAM,MAAM,GAAG,EAAE,CAAC,GAAG,CAAC,qBAAY,CAAC,CAAC;IACpC,IAAI,WAAW,GAAG,IAAI,CAAC;IAEvB,OAAO;QACC,KAAK;;gBACT,iBAAO,CAAC,YAAY,CAAC;oBACnB,gDAAgD;oBAChD,IAAI,EAAE,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,aAAa,CAAC;oBAC5C,QAAQ,EAAG,EAAe,CAAC,MAAM,CAC/B,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,sBAAU,CAAC,CAAC,CAAC,EAAE,EACrC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,sBAAU,CAAC,CAAC,CAAC,EAAE,CACtC;oBACD,uGAAuG;oBACvG,WAAW,EAAE,OAAO,CAAC,SAAS;oBAC9B,MAAM,EAAE,IAAI;oBACZ,aAAa;oBACb,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,8BAAqB,CAAC;iBACnC,CAAC,CAAC;YACL,CAAC;SAAA;QACK,MAAM;;;gBACV,MAAM,MAAM,GAAG,iBAAO,CAAC,IAAI,iCACtB,GAAG,KACN,QAAQ,EAAE,aAAa;oBACvB,iEAAiE;oBACjE,8EAA8E;oBAC9E,IAAI,EAAE,GAAG,aAAa,CAAC,IAAI,EAAE,EAC7B,WAAW,EAAE,GAAG,aAAa,CAAC,IAAI,EAAE,EACpC,+BAA+B,EAAE,WAAW,IAC5C,CAAC;gBAEH,WAAW,GAAG,KAAK,CAAC;gBAEpB,MAAA,MAAM,CAAC,OAAO,CAAC,MAAM,0CAAE,IAAI,CAAC,MAAM,CAAC,CAAC;gBACpC,MAAA,MAAM,CAAC,OAAO,CAAC,MAAM,0CAAE,IAAI,CAAC,MAAM,CAAC,CAAC;gBAEpC,OAAO,MAAM,CAAC;;SACf;QACK,OAAO,CAAC,MAAM;;gBAClB,IAAI,MAAM,CAAC,WAAW,EAAE,EAAE;oBACxB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;iBAChC;YACH,CAAC;SAAA;QACK,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO;;gBAC9B,IAAI,IAAI,KAAK,QAAQ,EAAE;oBACrB,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;oBAErC,MAAM,CAAC,IAAI,CAAC;wBACV,QAAQ;wBACR,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;qBACjC,CAAC,CAAC;iBACJ;YACH,CAAC;SAAA;KACF,CAAC;AACJ,CAAC,CAAC;AAzDW,QAAA,mBAAmB,uBAyD9B"}
@@ -10,6 +10,7 @@ const tokens_2 = require("../../../../../di/tokens");
10
10
  const ThreadWorkerBridge = (di) => {
11
11
  const { env } = di.get(tokens_2.COMMAND_PARAMETERS_TOKEN);
12
12
  const configManager = di.get(tokens_1.SERVER_CONFIG_MANAGER_TOKEN);
13
+ let firstWorker = true;
13
14
  return {
14
15
  setup() {
15
16
  return tslib_1.__awaiter(this, void 0, void 0, function* () { });
@@ -32,8 +33,9 @@ const ThreadWorkerBridge = (di) => {
32
33
  env: Object.assign(Object.assign(Object.assign({}, process.env), env), { NODE_ENV: 'development',
33
34
  // port=0 позволяет запустить сервер на случайном доступном порту
34
35
  // https://nodejs.org/dist/latest-v15.x/docs/api/all.html#cluster_how_it_works
35
- PORT: `${configManager.port}`, PORT_SERVER: `${configManager.port}` }),
36
+ PORT: `${configManager.port}`, PORT_SERVER: `${configManager.port}`, TRAMVAI_CLI_WATCH_INITIAL_BUILD: firstWorker }),
36
37
  });
38
+ firstWorker = false;
37
39
  return worker;
38
40
  });
39
41
  },
@@ -1 +1 @@
1
- {"version":3,"file":"pool.js","sourceRoot":"","sources":["../../../../../../src/builder/webpack/devServer/pool/thread/pool.ts"],"names":[],"mappings":";;;;AAAA,wDAAwB;AACxB,mDAAwC;AAExC,+DAAyE;AACzE,4CAA8D;AAC9D,qDAA2F;AAEpF,MAAM,kBAAkB,GAAgC,CAAC,EAAE,EAAE,EAAE;IACpE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,iCAAwB,CAAC,CAAC;IACjD,MAAM,aAAa,GAAG,EAAE,CAAC,GAAG,CAAC,oCAA2B,CAAC,CAAC;IAE1D,OAAO;QACC,KAAK;0EAAI,CAAC;SAAA;QACV,MAAM;;gBACV,2GAA2G;gBAC3G,0FAA0F;gBAC1F,4CAA4C;gBAC5C,gBAAgB;gBAChB,qEAAqE;gBACrE,gDAAgD;gBAChD,sEAAsE;gBACtE,yDAAyD;gBACzD,6FAA6F;gBAC7F,oFAAoF;gBACpF,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,8BAAqB,CAAC,CAAC,CAAC;gBAE7C,MAAM,MAAM,GAAG,IAAI,uBAAM,CAAC,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,aAAa,CAAC,EAAE;oBAChE,QAAQ,EAAE,EAAE,CAAC,MAAM,CACjB,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,sBAAU,CAAC,CAAC,CAAC,EAAE,EACrC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,sBAAU,CAAC,CAAC,CAAC,EAAE,CACtC;oBACD,GAAG,gDACE,OAAO,CAAC,GAAG,GACX,GAAG,KACN,QAAQ,EAAE,aAAa;wBACvB,iEAAiE;wBACjE,8EAA8E;wBAC9E,IAAI,EAAE,GAAG,aAAa,CAAC,IAAI,EAAE,EAC7B,WAAW,EAAE,GAAG,aAAa,CAAC,IAAI,EAAE,GACrC;iBACF,CAAC,CAAC;gBAEH,OAAO,MAAM,CAAC;YAChB,CAAC;SAAA;QACK,OAAO,CAAC,MAAM;;gBAClB,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC;YAC3B,CAAC;SAAA;QACK,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO;;gBAC9B,IAAI,IAAI,KAAK,QAAQ,EAAE;oBACrB,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;oBAErC,MAAM,CAAC,WAAW,CAChB;wBACE,QAAQ;wBACR,MAAM;qBACP,EACD,CAAC,MAAM,CAAC,MAAM,CAAC,CAChB,CAAC;iBACH;YACH,CAAC;SAAA;KACF,CAAC;AACJ,CAAC,CAAC;AAtDW,QAAA,kBAAkB,sBAsD7B"}
1
+ {"version":3,"file":"pool.js","sourceRoot":"","sources":["../../../../../../src/builder/webpack/devServer/pool/thread/pool.ts"],"names":[],"mappings":";;;;AAAA,wDAAwB;AACxB,mDAAwC;AAExC,+DAAyE;AACzE,4CAA8D;AAC9D,qDAA2F;AAEpF,MAAM,kBAAkB,GAAgC,CAAC,EAAE,EAAE,EAAE;IACpE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,iCAAwB,CAAC,CAAC;IACjD,MAAM,aAAa,GAAG,EAAE,CAAC,GAAG,CAAC,oCAA2B,CAAC,CAAC;IAC1D,IAAI,WAAW,GAAG,IAAI,CAAC;IAEvB,OAAO;QACC,KAAK;0EAAI,CAAC;SAAA;QACV,MAAM;;gBACV,2GAA2G;gBAC3G,0FAA0F;gBAC1F,4CAA4C;gBAC5C,gBAAgB;gBAChB,qEAAqE;gBACrE,gDAAgD;gBAChD,sEAAsE;gBACtE,yDAAyD;gBACzD,6FAA6F;gBAC7F,oFAAoF;gBACpF,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,8BAAqB,CAAC,CAAC,CAAC;gBAE7C,MAAM,MAAM,GAAG,IAAI,uBAAM,CAAC,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,aAAa,CAAC,EAAE;oBAChE,QAAQ,EAAE,EAAE,CAAC,MAAM,CACjB,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,sBAAU,CAAC,CAAC,CAAC,EAAE,EACrC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,sBAAU,CAAC,CAAC,CAAC,EAAE,CACtC;oBACD,GAAG,gDACE,OAAO,CAAC,GAAG,GACX,GAAG,KACN,QAAQ,EAAE,aAAa;wBACvB,iEAAiE;wBACjE,8EAA8E;wBAC9E,IAAI,EAAE,GAAG,aAAa,CAAC,IAAI,EAAE,EAC7B,WAAW,EAAE,GAAG,aAAa,CAAC,IAAI,EAAE,EACpC,+BAA+B,EAAE,WAAW,GAC7C;iBACF,CAAC,CAAC;gBAEH,WAAW,GAAG,KAAK,CAAC;gBAEpB,OAAO,MAAM,CAAC;YAChB,CAAC;SAAA;QACK,OAAO,CAAC,MAAM;;gBAClB,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC;YAC3B,CAAC;SAAA;QACK,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO;;gBAC9B,IAAI,IAAI,KAAK,QAAQ,EAAE;oBACrB,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;oBAErC,MAAM,CAAC,WAAW,CAChB;wBACE,QAAQ;wBACR,MAAM;qBACP,EACD,CAAC,MAAM,CAAC,MAAM,CAAC,CAChB,CAAC;iBACH;YACH,CAAC;SAAA;KACF,CAAC;AACJ,CAAC,CAAC;AA1DW,QAAA,kBAAkB,sBA0D7B"}
@@ -72,6 +72,7 @@ export declare const CLIENT_CONFIG_MANAGER_TOKEN: {
72
72
  };
73
73
  dedupe: {
74
74
  enabled: boolean;
75
+ enabledDev: boolean;
75
76
  strategy: import("@tinkoff/webpack-dedupe-plugin").DeduplicateStrategy;
76
77
  ignore?: string[];
77
78
  };
@@ -185,6 +186,7 @@ export declare const CLIENT_MODERN_CONFIG_MANAGER_TOKEN: {
185
186
  };
186
187
  dedupe: {
187
188
  enabled: boolean;
189
+ enabledDev: boolean;
188
190
  strategy: import("@tinkoff/webpack-dedupe-plugin").DeduplicateStrategy;
189
191
  ignore?: string[];
190
192
  };
@@ -298,6 +300,7 @@ export declare const SERVER_CONFIG_MANAGER_TOKEN: {
298
300
  };
299
301
  dedupe: {
300
302
  enabled: boolean;
303
+ enabledDev: boolean;
301
304
  strategy: import("@tinkoff/webpack-dedupe-plugin").DeduplicateStrategy;
302
305
  ignore?: string[];
303
306
  };
@@ -2,14 +2,12 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.staticApp = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const propOr_1 = tslib_1.__importDefault(require("@tinkoff/utils/object/propOr"));
6
5
  const intersection_1 = tslib_1.__importDefault(require("@tinkoff/utils/array/intersection"));
7
6
  const path_1 = tslib_1.__importDefault(require("path"));
8
7
  const execa_1 = require("execa");
9
8
  const wait_on_1 = tslib_1.__importDefault(require("wait-on"));
10
9
  const env_ci_1 = tslib_1.__importDefault(require("env-ci"));
11
10
  const configManager_1 = require("../../config/configManager");
12
- const request_1 = require("./request");
13
11
  const generate_1 = require("./generate");
14
12
  const copyStatsJsonFile_1 = require("../../builder/webpack/utils/copyStatsJsonFile");
15
13
  const safeRequire_1 = require("../../utils/safeRequire");
@@ -17,6 +15,7 @@ const index_1 = require("../index");
17
15
  const staticServer_1 = require("./staticServer");
18
16
  const server_1 = require("./server");
19
17
  const handle_server_output_1 = require("./utils/handle-server-output");
18
+ const request_1 = require("../../utils/dev-app/request");
20
19
  // eslint-disable-next-line max-statements
21
20
  const staticApp = (context, configEntry, options) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
22
21
  const clientConfigManager = (0, configManager_1.createConfigManager)(configEntry, Object.assign(Object.assign({ env: 'production' }, options), { buildType: 'client', modern: false }));
@@ -88,7 +87,7 @@ const staticApp = (context, configEntry, options) => tslib_1.__awaiter(void 0, v
88
87
  event: 'COMMAND:STATIC:ROUTES_FETCH',
89
88
  message: `message: server started, fetch application routes`,
90
89
  });
91
- let paths = (0, propOr_1.default)('payload', [], yield (0, request_1.request)({ url: bundleInfoPath }));
90
+ let paths = yield (0, request_1.appBundleInfo)(serverConfigManager);
92
91
  if (options.onlyPages) {
93
92
  paths = (0, intersection_1.default)(paths, options.onlyPages);
94
93
  }
@@ -1 +1 @@
1
- {"version":3,"file":"application.js","sourceRoot":"","sources":["../../../src/commands/static/application.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"application.js","sourceRoot":"","sources":["../../../src/commands/static/application.ts"],"names":[],"mappings":"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"}
@@ -5,15 +5,14 @@ const tslib_1 = require("tslib");
5
5
  const path_1 = require("path");
6
6
  const promise_queue_1 = tslib_1.__importDefault(require("promise-queue"));
7
7
  const fs_extra_1 = require("fs-extra");
8
- const request_1 = require("./request");
8
+ const request_1 = require("../../utils/dev-app/request");
9
9
  const MAX_CONCURRENT = 10;
10
10
  const DYNAMIC_PAGE_REGEX = /\/:.+\//g;
11
11
  const generateStatic = (context, configManager, paths) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
12
12
  const q = new promise_queue_1.default(MAX_CONCURRENT);
13
13
  const promises = [];
14
- const { host, port, rootDir, output } = configManager;
14
+ const { rootDir, output } = configManager;
15
15
  const staticPath = (0, path_1.resolve)(rootDir, output.static);
16
- const serverPath = `http://${host}:${port}`;
17
16
  for (const path of paths) {
18
17
  promises.push(q.add(() => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
19
18
  // @todo need something similar to https://nextjs.org/docs/basic-features/data-fetching#getstaticpaths-static-generation
@@ -31,7 +30,7 @@ const generateStatic = (context, configManager, paths) => tslib_1.__awaiter(void
31
30
  event: 'COMMAND:STATIC:PAGE_FETCH',
32
31
  message: `path: ${path}, message: start fetching page`,
33
32
  });
34
- const html = yield (0, request_1.request)({ url: `${serverPath}${path}` });
33
+ const html = yield (0, request_1.appRequest)(configManager, path);
35
34
  yield (0, fs_extra_1.outputFile)((0, path_1.join)(staticPath, path, 'index.html'), html);
36
35
  context.logger.event({
37
36
  type: 'debug',
@@ -1 +1 @@
1
- {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/commands/static/generate.ts"],"names":[],"mappings":";;;;AAAA,+BAAqC;AACrC,0EAAmC;AACnC,uCAAsC;AACtC,uCAAoC;AAKpC,MAAM,cAAc,GAAG,EAAE,CAAC;AAC1B,MAAM,kBAAkB,GAAG,UAAU,CAAC;AAE/B,MAAM,cAAc,GAAG,CAC5B,OAAgB,EAChB,aAAoD,EACpD,KAAe,EACf,EAAE;IACF,MAAM,CAAC,GAAG,IAAI,uBAAM,CAAC,cAAc,CAAC,CAAC;IACrC,MAAM,QAAQ,GAAG,EAAE,CAAC;IAEpB,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,aAAa,CAAC;IACtD,MAAM,UAAU,GAAG,IAAA,cAAO,EAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;IACnD,MAAM,UAAU,GAAG,UAAU,IAAI,IAAI,IAAI,EAAE,CAAC;IAE5C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACxB,QAAQ,CAAC,IAAI,CACX,CAAC,CAAC,GAAG,CAAC,GAAS,EAAE;YACf,wHAAwH;YACxH,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBACjC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;oBACnB,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,yCAAyC;oBAChD,OAAO,EAAE,SAAS,IAAI,0DAA0D;iBACjF,CAAC,CAAC;gBACH,OAAO;aACR;YAED,IAAI;gBACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;oBACnB,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,2BAA2B;oBAClC,OAAO,EAAE,SAAS,IAAI,gCAAgC;iBACvD,CAAC,CAAC;gBAEH,MAAM,IAAI,GAAG,MAAM,IAAA,iBAAO,EAAC,EAAE,GAAG,EAAE,GAAG,UAAU,GAAG,IAAI,EAAE,EAAE,CAAC,CAAC;gBAE5D,MAAM,IAAA,qBAAU,EAAC,IAAA,WAAI,EAAC,UAAU,EAAE,IAAI,EAAE,YAAY,CAAC,EAAE,IAAI,CAAC,CAAC;gBAE7D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;oBACnB,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,6BAA6B;oBACpC,OAAO,EAAE,SAAS,IAAI,sCAAsC;iBAC7D,CAAC,CAAC;aACJ;YAAC,OAAO,CAAC,EAAE;gBACV,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;oBACnB,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,sBAAsB;oBAC7B,OAAO,EAAE,SAAS,IAAI,cAAc,CAAC,CAAC,OAAO,EAAE;iBAChD,CAAC,CAAC;aACJ;QACH,CAAC,CAAA,CAAC,CACH,CAAC;KACH;IAED,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAC/B,CAAC,CAAA,CAAC;AArDW,QAAA,cAAc,kBAqDzB"}
1
+ {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/commands/static/generate.ts"],"names":[],"mappings":";;;;AAAA,+BAAqC;AACrC,0EAAmC;AACnC,uCAAsC;AAItC,yDAAyD;AAEzD,MAAM,cAAc,GAAG,EAAE,CAAC;AAC1B,MAAM,kBAAkB,GAAG,UAAU,CAAC;AAE/B,MAAM,cAAc,GAAG,CAC5B,OAAgB,EAChB,aAAoD,EACpD,KAAe,EACf,EAAE;IACF,MAAM,CAAC,GAAG,IAAI,uBAAM,CAAC,cAAc,CAAC,CAAC;IACrC,MAAM,QAAQ,GAAG,EAAE,CAAC;IAEpB,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,aAAa,CAAC;IAC1C,MAAM,UAAU,GAAG,IAAA,cAAO,EAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;IAEnD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACxB,QAAQ,CAAC,IAAI,CACX,CAAC,CAAC,GAAG,CAAC,GAAS,EAAE;YACf,wHAAwH;YACxH,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBACjC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;oBACnB,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,yCAAyC;oBAChD,OAAO,EAAE,SAAS,IAAI,0DAA0D;iBACjF,CAAC,CAAC;gBACH,OAAO;aACR;YAED,IAAI;gBACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;oBACnB,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,2BAA2B;oBAClC,OAAO,EAAE,SAAS,IAAI,gCAAgC;iBACvD,CAAC,CAAC;gBAEH,MAAM,IAAI,GAAG,MAAM,IAAA,oBAAU,EAAC,aAAa,EAAE,IAAI,CAAC,CAAC;gBAEnD,MAAM,IAAA,qBAAU,EAAC,IAAA,WAAI,EAAC,UAAU,EAAE,IAAI,EAAE,YAAY,CAAC,EAAE,IAAI,CAAC,CAAC;gBAE7D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;oBACnB,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,6BAA6B;oBACpC,OAAO,EAAE,SAAS,IAAI,sCAAsC;iBAC7D,CAAC,CAAC;aACJ;YAAC,OAAO,CAAC,EAAE;gBACV,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;oBACnB,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,sBAAsB;oBAC7B,OAAO,EAAE,SAAS,IAAI,cAAc,CAAC,CAAC,OAAO,EAAE;iBAChD,CAAC,CAAC;aACJ;QACH,CAAC,CAAA,CAAC,CACH,CAAC;KACH;IAED,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAC/B,CAAC,CAAA,CAAC;AApDW,QAAA,cAAc,kBAoDzB"}
@@ -82,6 +82,7 @@ export declare const CONFIG_MANAGER_TOKEN: {
82
82
  };
83
83
  dedupe: {
84
84
  enabled: boolean;
85
+ enabledDev: boolean;
85
86
  strategy: import("@tinkoff/webpack-dedupe-plugin").DeduplicateStrategy;
86
87
  ignore?: string[];
87
88
  };
@@ -22,7 +22,7 @@ const webpackClientConfig = ({ configManager, showProgress, }) => {
22
22
  var _a, _b;
23
23
  const config = new webpack_chain_1.default();
24
24
  config.batch((0, common_1.default)(configManager));
25
- config.batch((0, dev_1.default)());
25
+ config.batch((0, dev_1.default)(configManager));
26
26
  config.batch((0, dev_2.commonApplicationDev)({
27
27
  entry: path_1.default.resolve(configManager.rootDir, `${configManager.root}/index`),
28
28
  onlyBundles: configManager.onlyBundles,
@@ -1 +1 @@
1
- {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../../../../src/library/webpack/application/client/dev.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../../../../src/library/webpack/application/client/dev.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,7 @@ const webpackServerConfig = ({ configManager, showProgress, }) => {
16
16
  var _a;
17
17
  const config = new webpack_chain_1.default();
18
18
  config.batch((0, common_1.default)(configManager));
19
- config.batch((0, dev_1.default)());
19
+ config.batch((0, dev_1.default)(configManager));
20
20
  config.batch((0, dev_2.commonApplicationDev)({
21
21
  entry: path_1.default.resolve(configManager.rootDir, `${configManager.root}/index`),
22
22
  onlyBundles: configManager.onlyBundles,
@@ -1 +1 @@
1
- {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../../../../src/library/webpack/application/server/dev.ts"],"names":[],"mappings":"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"}
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;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,EACR,MAAA,OAAO,CAAC,GAAG,CAAC,aAAa,mCACzB,WAAW,aAAa,CAAC,UAAU,IACjC,aAAa,CAAC,UAChB,IAAI,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI;SACzD;KACF,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AA3EW,QAAA,mBAAmB,uBA2E9B"}
@@ -0,0 +1,4 @@
1
+ import type Config from 'webpack-chain';
2
+ import type { DedupePluginOptions } from '@tinkoff/webpack-dedupe-plugin';
3
+ import type { CliConfigEntry, ConfigManager } from '../../../api';
4
+ export declare const dedupe: (configManager: ConfigManager<CliConfigEntry>, options?: Partial<DedupePluginOptions>) => (config: Config) => void;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.dedupe = void 0;
4
+ const webpack_dedupe_plugin_1 = require("@tinkoff/webpack-dedupe-plugin");
5
+ const dedupe = (configManager, options) => (config) => {
6
+ var _a;
7
+ config.plugin('dedupe-plugin').use(webpack_dedupe_plugin_1.DedupePlugin, [
8
+ Object.assign({ strategy: configManager.dedupe.strategy, ignorePackages: (_a = configManager.dedupe.ignore) === null || _a === void 0 ? void 0 : _a.map((ignore) => new RegExp(`^${ignore}`)), showLogs: false }, options),
9
+ ]);
10
+ };
11
+ exports.dedupe = dedupe;
12
+ //# sourceMappingURL=dedupe.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dedupe.js","sourceRoot":"","sources":["../../../../src/library/webpack/blocks/dedupe.ts"],"names":[],"mappings":";;;AACA,0EAA8D;AAIvD,MAAM,MAAM,GACjB,CAAC,aAA4C,EAAE,OAAsC,EAAE,EAAE,CACzF,CAAC,MAAc,EAAE,EAAE;;IACjB,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,oCAAY,EAAE;QAC/C,gBACE,QAAQ,EAAE,aAAa,CAAC,MAAM,CAAC,QAAQ,EACvC,cAAc,EAAE,MAAA,aAAa,CAAC,MAAM,CAAC,MAAM,0CAAE,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC,EACtF,QAAQ,EAAE,KAAK,IACZ,OAAO,CACY;KACzB,CAAC,CAAC;AACL,CAAC,CAAC;AAXS,QAAA,MAAM,UAWf"}
@@ -13,7 +13,7 @@ const webpackClientConfig = ({ configManager, showProgress, }) => {
13
13
  var _a, _b;
14
14
  const config = new webpack_chain_1.default();
15
15
  config.batch((0, common_1.default)(configManager));
16
- config.batch((0, dev_1.default)());
16
+ config.batch((0, dev_1.default)(configManager));
17
17
  config.mode('development');
18
18
  if (showProgress) {
19
19
  config.plugin('progress').use(webpackbar_1.default, [
@@ -1 +1 @@
1
- {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../../../../src/library/webpack/child-app/client/dev.ts"],"names":[],"mappings":";;;;AAAA,0EAAmC;AACnC,oEAAoC;AACpC,8DAA8B;AAC9B,gHAAsE;AAEtE,8DAA8B;AAC9B,mEAAyC;AAEzC,yDAAsD;AAG/C,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,GAAE,CAAC,CAAC;IAE1B,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAE3B,IAAI,YAAY,EAAE;QAChB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,oBAAU,EAAE;YACxC;gBACE,IAAI,EAAE,kBAAkB;aACzB;SACF,CAAC,CAAC;KACJ;IAED,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;wCAE/B,IAAI,CAAC,CAAC,CAAC,KACV,sBAAsB,EAAE,eAAe;KAE1C,CAAC,CAAC;IAEH,MAAM,EAAE,UAAU,EAAE,GAAG,aAAa,CAAC;IAErC,IAAI,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,OAAO,EAAE;QACvB,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,iBAAO,CAAC,0BAA0B,CAAC,CAAC;QACpE,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,sCAAkB,EAAE;4CAEhD,UAAU,CAAC,OAAO,KACrB,OAAO,EACL,OAAO,CAAA,MAAA,UAAU,CAAC,OAAO,0CAAE,OAAO,CAAA,KAAK,SAAS;oBAC9C,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO;oBAC5B,CAAC,mBACM,MAAA,UAAU,CAAC,OAAO,0CAAE,OAAO,CAC/B;SAEV,CAAC,CAAC;QAEH,IAAA,yBAAW,EAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE;YAC5C,MAAM,EAAE;gBACN,qFAAqF;aACtF;SACF,CAAC,CAAC;KACJ;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AArDW,QAAA,mBAAmB,uBAqD9B"}
1
+ {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../../../../src/library/webpack/child-app/client/dev.ts"],"names":[],"mappings":";;;;AAAA,0EAAmC;AACnC,oEAAoC;AACpC,8DAA8B;AAC9B,gHAAsE;AAEtE,8DAA8B;AAC9B,mEAAyC;AAEzC,yDAAsD;AAG/C,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;IAEvC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAE3B,IAAI,YAAY,EAAE;QAChB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,oBAAU,EAAE;YACxC;gBACE,IAAI,EAAE,kBAAkB;aACzB;SACF,CAAC,CAAC;KACJ;IAED,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;wCAE/B,IAAI,CAAC,CAAC,CAAC,KACV,sBAAsB,EAAE,eAAe;KAE1C,CAAC,CAAC;IAEH,MAAM,EAAE,UAAU,EAAE,GAAG,aAAa,CAAC;IAErC,IAAI,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,OAAO,EAAE;QACvB,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,iBAAO,CAAC,0BAA0B,CAAC,CAAC;QACpE,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,sCAAkB,EAAE;4CAEhD,UAAU,CAAC,OAAO,KACrB,OAAO,EACL,OAAO,CAAA,MAAA,UAAU,CAAC,OAAO,0CAAE,OAAO,CAAA,KAAK,SAAS;oBAC9C,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO;oBAC5B,CAAC,mBACM,MAAA,UAAU,CAAC,OAAO,0CAAE,OAAO,CAC/B;SAEV,CAAC,CAAC;QAEH,IAAA,yBAAW,EAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE;YAC5C,MAAM,EAAE;gBACN,qFAAqF;aACtF;SACF,CAAC,CAAC;KACJ;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AArDW,QAAA,mBAAmB,uBAqD9B"}
@@ -9,7 +9,7 @@ const dev_1 = tslib_1.__importDefault(require("../../common/dev"));
9
9
  const webpackServerConfig = ({ configManager, showProgress, }) => {
10
10
  const config = new webpack_chain_1.default();
11
11
  config.batch((0, common_1.default)(configManager));
12
- config.batch((0, dev_1.default)());
12
+ config.batch((0, dev_1.default)(configManager));
13
13
  config.mode('development');
14
14
  if (showProgress) {
15
15
  config.plugin('progress').use(webpackbar_1.default, [
@@ -1 +1 @@
1
- {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../../../../src/library/webpack/child-app/server/dev.ts"],"names":[],"mappings":";;;;AAAA,0EAAmC;AACnC,oEAAoC;AAEpC,8DAA8B;AAC9B,mEAAyC;AAIlC,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,GAAE,CAAC,CAAC;IAE1B,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAE3B,IAAI,YAAY,EAAE;QAChB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,oBAAU,EAAE;YACxC;gBACE,IAAI,EAAE,kBAAkB;aACzB;SACF,CAAC,CAAC;KACJ;IAED,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;wCAE/B,IAAI,CAAC,CAAC,CAAC,KACV,sBAAsB,EAAE,eAAe;KAE1C,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AA9BW,QAAA,mBAAmB,uBA8B9B"}
1
+ {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../../../../src/library/webpack/child-app/server/dev.ts"],"names":[],"mappings":";;;;AAAA,0EAAmC;AACnC,oEAAoC;AAEpC,8DAA8B;AAC9B,mEAAyC;AAIlC,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;IAEvC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAE3B,IAAI,YAAY,EAAE;QAChB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,oBAAU,EAAE;YACxC;gBACE,IAAI,EAAE,kBAAkB;aACzB;SACF,CAAC,CAAC;KACJ;IAED,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;wCAE/B,IAAI,CAAC,CAAC,CAAC,KACV,sBAAsB,EAAE,eAAe;KAE1C,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AA9BW,QAAA,mBAAmB,uBA8B9B"}
@@ -4,7 +4,7 @@ const tslib_1 = require("tslib");
4
4
  const once_1 = tslib_1.__importDefault(require("@tinkoff/utils/function/once"));
5
5
  const chalk_1 = tslib_1.__importDefault(require("chalk"));
6
6
  const plugin_1 = require("inspectpack/plugin");
7
- const webpack_dedupe_plugin_1 = require("@tinkoff/webpack-dedupe-plugin");
7
+ const dedupe_1 = require("../../blocks/dedupe");
8
8
  const onDedupeInfo = (0, once_1.default)((logInfo) => {
9
9
  if (logInfo.size > 0) {
10
10
  console.warn(`${chalk_1.default.blue('Duplicates were found and merged during build.')}
@@ -14,20 +14,15 @@ For further details refer to doc - https://tramvai.dev/docs/mistakes/duplicate-d
14
14
  }
15
15
  });
16
16
  exports.default = (configManager) => (config) => {
17
- var _a;
18
17
  config.mode('production');
19
18
  config.plugin('define').tap((args) => [
20
19
  Object.assign(Object.assign({}, args[0]), { 'process.env.NODE_ENV': JSON.stringify('production') }),
21
20
  ]);
22
21
  if (configManager.dedupe.enabled) {
23
- config.plugin('dedupe-plugin').use(webpack_dedupe_plugin_1.DedupePlugin, [
24
- {
25
- strategy: configManager.dedupe.strategy,
26
- ignorePackages: (_a = configManager.dedupe.ignore) === null || _a === void 0 ? void 0 : _a.map((ignore) => new RegExp(`^${ignore}`)),
27
- showLogs: !configManager.modern,
28
- onDedupeInfo,
29
- },
30
- ]);
22
+ config.batch((0, dedupe_1.dedupe)(configManager, {
23
+ showLogs: !configManager.modern,
24
+ onDedupeInfo,
25
+ }));
31
26
  }
32
27
  else {
33
28
  config.plugin('duplicates-plugin').use(plugin_1.DuplicatesPlugin, [
@@ -1 +1 @@
1
- {"version":3,"file":"prod.js","sourceRoot":"","sources":["../../../../../src/library/webpack/common/client/prod.ts"],"names":[],"mappings":";;;AAAA,gFAAgD;AAEhD,0DAA0B;AAC1B,+CAAsD;AAEtD,0EAA8D;AAI9D,MAAM,YAAY,GAAG,IAAA,cAAI,EAAsC,CAAC,OAAO,EAAE,EAAE;IACzE,IAAI,OAAO,CAAC,IAAI,GAAG,CAAC,EAAE;QACpB,OAAO,CAAC,IAAI,CAAC,GAAG,eAAK,CAAC,IAAI,CAAC,gDAAgD,CAAC;;;KAG3E,CAAC,CAAC;KACJ;AACH,CAAC,CAAC,CAAC;AAEH,kBAAe,CAAC,aAA4C,EAAE,EAAE,CAAC,CAAC,MAAc,EAAE,EAAE;;IAClF,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAE1B,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,YAAY,CAAC;KAEvD,CAAC,CAAC;IAEH,IAAI,aAAa,CAAC,MAAM,CAAC,OAAO,EAAE;QAChC,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,oCAAY,EAAE;YAC/C;gBACE,QAAQ,EAAE,aAAa,CAAC,MAAM,CAAC,QAAQ;gBACvC,cAAc,EAAE,MAAA,aAAa,CAAC,MAAM,CAAC,MAAM,0CAAE,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC;gBACtF,QAAQ,EAAE,CAAC,aAAa,CAAC,MAAM;gBAC/B,YAAY;aACU;SACzB,CAAC,CAAC;KACJ;SAAM;QACL,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,GAAG,CAAC,yBAAgB,EAAE;YACvD;gBACE,OAAO,EAAE,IAAI;gBACb,+BAA+B;gBAC/B,+EAA+E;gBAC/E,WAAW,EAAE,CAAC,MAAc,EAAE,EAAE;oBAC9B,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACvB,CAAC;aACF;SACF,CAAC,CAAC;KACJ;AACH,CAAC,CAAC"}
1
+ {"version":3,"file":"prod.js","sourceRoot":"","sources":["../../../../../src/library/webpack/common/client/prod.ts"],"names":[],"mappings":";;;AAAA,gFAAgD;AAEhD,0DAA0B;AAC1B,+CAAsD;AAItD,gDAA6C;AAE7C,MAAM,YAAY,GAAG,IAAA,cAAI,EAAsC,CAAC,OAAO,EAAE,EAAE;IACzE,IAAI,OAAO,CAAC,IAAI,GAAG,CAAC,EAAE;QACpB,OAAO,CAAC,IAAI,CAAC,GAAG,eAAK,CAAC,IAAI,CAAC,gDAAgD,CAAC;;;KAG3E,CAAC,CAAC;KACJ;AACH,CAAC,CAAC,CAAC;AAEH,kBAAe,CAAC,aAA4C,EAAE,EAAE,CAAC,CAAC,MAAc,EAAE,EAAE;IAClF,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAE1B,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,YAAY,CAAC;KAEvD,CAAC,CAAC;IAEH,IAAI,aAAa,CAAC,MAAM,CAAC,OAAO,EAAE;QAChC,MAAM,CAAC,KAAK,CACV,IAAA,eAAM,EAAC,aAAa,EAAE;YACpB,QAAQ,EAAE,CAAC,aAAa,CAAC,MAAM;YAC/B,YAAY;SACb,CAAC,CACH,CAAC;KACH;SAAM;QACL,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,GAAG,CAAC,yBAAgB,EAAE;YACvD;gBACE,OAAO,EAAE,IAAI;gBACb,+BAA+B;gBAC/B,+EAA+E;gBAC/E,WAAW,EAAE,CAAC,MAAc,EAAE,EAAE;oBAC9B,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACvB,CAAC;aACF;SACF,CAAC,CAAC;KACJ;AACH,CAAC,CAAC"}
@@ -1,3 +1,4 @@
1
1
  import type Config from 'webpack-chain';
2
- declare const _default: () => (config: Config) => Config;
2
+ import type { CliConfigEntry, ConfigManager } from '../../../api';
3
+ declare const _default: (configManager: ConfigManager<CliConfigEntry>) => (config: Config) => Config;
3
4
  export default _default;
@@ -3,7 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  const case_sensitive_paths_webpack_plugin_1 = tslib_1.__importDefault(require("case-sensitive-paths-webpack-plugin"));
5
5
  const warningsFilter_1 = require("../utils/warningsFilter");
6
- exports.default = () => (config) => {
6
+ const dedupe_1 = require("../blocks/dedupe");
7
+ exports.default = (configManager) => (config) => {
7
8
  config.plugin('case-sensitive-path').use(case_sensitive_paths_webpack_plugin_1.default);
8
9
  config.stats({
9
10
  preset: 'errors-warnings',
@@ -14,6 +15,9 @@ exports.default = () => (config) => {
14
15
  config.set('infrastructureLogging', { level: 'warn' });
15
16
  config.output.pathinfo(false);
16
17
  config.module.set('unsafeCache', true);
18
+ if (configManager.dedupe.enabledDev) {
19
+ config.batch((0, dedupe_1.dedupe)(configManager));
20
+ }
17
21
  return config;
18
22
  };
19
23
  //# sourceMappingURL=dev.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../../../src/library/webpack/common/dev.ts"],"names":[],"mappings":";;;AACA,sHAA2E;AAC3E,4DAAyD;AAEzD,kBAAe,GAAG,EAAE,CAAC,CAAC,MAAc,EAAE,EAAE;IACtC,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,6CAAwB,CAAC,CAAC;IAEnE,MAAM,CAAC,KAAK,CAAC;QACX,MAAM,EAAE,iBAAiB;QACzB,2EAA2E;QAC3E,aAAa,EAAE,KAAK;KACrB,CAAC,CAAC;IAEH,MAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE,+BAAc,CAAC,CAAC;IAE7C,MAAM,CAAC,GAAG,CAAC,uBAAuB,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IAEvD,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE9B,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;IAEvC,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC"}
1
+ {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../../../src/library/webpack/common/dev.ts"],"names":[],"mappings":";;;AACA,sHAA2E;AAC3E,4DAAyD;AAEzD,6CAA0C;AAE1C,kBAAe,CAAC,aAA4C,EAAE,EAAE,CAAC,CAAC,MAAc,EAAE,EAAE;IAClF,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,6CAAwB,CAAC,CAAC;IAEnE,MAAM,CAAC,KAAK,CAAC;QACX,MAAM,EAAE,iBAAiB;QACzB,2EAA2E;QAC3E,aAAa,EAAE,KAAK;KACrB,CAAC,CAAC;IAEH,MAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE,+BAAc,CAAC,CAAC;IAE7C,MAAM,CAAC,GAAG,CAAC,uBAAuB,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IAEvD,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE9B,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;IAEvC,IAAI,aAAa,CAAC,MAAM,CAAC,UAAU,EAAE;QACnC,MAAM,CAAC,KAAK,CAAC,IAAA,eAAM,EAAC,aAAa,CAAC,CAAC,CAAC;KACrC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC"}
@@ -1,20 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const webpack_dedupe_plugin_1 = require("@tinkoff/webpack-dedupe-plugin");
3
+ const dedupe_1 = require("../../blocks/dedupe");
4
4
  exports.default = (configManager) => (config) => {
5
- var _a;
6
5
  config.mode('production');
7
6
  config.plugin('define').tap((args) => [
8
7
  Object.assign(Object.assign({}, args[0]), { 'process.env.NODE_ENV': JSON.stringify('production') }),
9
8
  ]);
10
9
  if (configManager.dedupe.enabled) {
11
- config.plugin('dedupe-plugin').use(webpack_dedupe_plugin_1.DedupePlugin, [
12
- {
13
- strategy: configManager.dedupe.strategy,
14
- showLogs: false,
15
- ignorePackages: (_a = configManager.dedupe.ignore) === null || _a === void 0 ? void 0 : _a.map((ignore) => new RegExp(`^${ignore}`)),
16
- },
17
- ]);
10
+ config.batch((0, dedupe_1.dedupe)(configManager));
18
11
  }
19
12
  };
20
13
  //# sourceMappingURL=prod.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"prod.js","sourceRoot":"","sources":["../../../../../src/library/webpack/common/server/prod.ts"],"names":[],"mappings":";;AAEA,0EAA8D;AAI9D,kBAAe,CAAC,aAA4C,EAAE,EAAE,CAAC,CAAC,MAAc,EAAE,EAAE;;IAClF,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAE1B,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,YAAY,CAAC;KAEvD,CAAC,CAAC;IAEH,IAAI,aAAa,CAAC,MAAM,CAAC,OAAO,EAAE;QAChC,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,oCAAY,EAAE;YAC/C;gBACE,QAAQ,EAAE,aAAa,CAAC,MAAM,CAAC,QAAQ;gBACvC,QAAQ,EAAE,KAAK;gBACf,cAAc,EAAE,MAAA,aAAa,CAAC,MAAM,CAAC,MAAM,0CAAE,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC;aAChE;SACzB,CAAC,CAAC;KACJ;AACH,CAAC,CAAC"}
1
+ {"version":3,"file":"prod.js","sourceRoot":"","sources":["../../../../../src/library/webpack/common/server/prod.ts"],"names":[],"mappings":";;AAGA,gDAA6C;AAE7C,kBAAe,CAAC,aAA4C,EAAE,EAAE,CAAC,CAAC,MAAc,EAAE,EAAE;IAClF,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAE1B,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,YAAY,CAAC;KAEvD,CAAC,CAAC;IAEH,IAAI,aAAa,CAAC,MAAM,CAAC,OAAO,EAAE;QAChC,MAAM,CAAC,KAAK,CAAC,IAAA,eAAM,EAAC,aAAa,CAAC,CAAC,CAAC;KACrC;AACH,CAAC,CAAC"}
@@ -9,7 +9,7 @@ const dev_1 = tslib_1.__importDefault(require("../../common/dev"));
9
9
  const webpackClientConfig = ({ configManager, showProgress, }) => {
10
10
  const config = new webpack_chain_1.default();
11
11
  config.batch((0, common_1.default)(configManager));
12
- config.batch((0, dev_1.default)());
12
+ config.batch((0, dev_1.default)(configManager));
13
13
  config.mode('development');
14
14
  if (showProgress) {
15
15
  config.plugin('progress').use(webpackbar_1.default, [
@@ -1 +1 @@
1
- {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../../../../src/library/webpack/module/client/dev.ts"],"names":[],"mappings":";;;;AAAA,0EAAmC;AACnC,oEAAoC;AAGpC,8DAA8B;AAC9B,mEAAyC;AAGlC,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,GAAE,CAAC,CAAC;IAE1B,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAE3B,IAAI,YAAY,EAAE;QAChB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,oBAAU,EAAE;YACxC;gBACE,IAAI,EAAE,eAAe;aACtB;SACF,CAAC,CAAC;KACJ;IAED,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;wCAE/B,IAAI,CAAC,CAAC,CAAC,KACV,sBAAsB,EAAE,eAAe;KAE1C,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AA9BW,QAAA,mBAAmB,uBA8B9B"}
1
+ {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../../../../src/library/webpack/module/client/dev.ts"],"names":[],"mappings":";;;;AAAA,0EAAmC;AACnC,oEAAoC;AAGpC,8DAA8B;AAC9B,mEAAyC;AAGlC,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;IAEvC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAE3B,IAAI,YAAY,EAAE;QAChB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,oBAAU,EAAE;YACxC;gBACE,IAAI,EAAE,eAAe;aACtB;SACF,CAAC,CAAC;KACJ;IAED,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;wCAE/B,IAAI,CAAC,CAAC,CAAC,KACV,sBAAsB,EAAE,eAAe;KAE1C,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AA9BW,QAAA,mBAAmB,uBA8B9B"}
@@ -9,7 +9,7 @@ const dev_1 = tslib_1.__importDefault(require("../../common/dev"));
9
9
  const webpackServerConfig = ({ configManager, showProgress, }) => {
10
10
  const config = new webpack_chain_1.default();
11
11
  config.batch((0, common_1.default)(configManager));
12
- config.batch((0, dev_1.default)());
12
+ config.batch((0, dev_1.default)(configManager));
13
13
  config.mode('development');
14
14
  if (showProgress) {
15
15
  config.plugin('progress').use(webpackbar_1.default, [
@@ -1 +1 @@
1
- {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../../../../src/library/webpack/module/server/dev.ts"],"names":[],"mappings":";;;;AAAA,0EAAmC;AACnC,oEAAoC;AAGpC,8DAA8B;AAC9B,mEAAyC;AAGlC,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,GAAE,CAAC,CAAC;IAE1B,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAE3B,IAAI,YAAY,EAAE;QAChB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,oBAAU,EAAE;YACxC;gBACE,IAAI,EAAE,eAAe;aACtB;SACF,CAAC,CAAC;KACJ;IAED,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;wCAE/B,IAAI,CAAC,CAAC,CAAC,KACV,sBAAsB,EAAE,eAAe;KAE1C,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AA9BW,QAAA,mBAAmB,uBA8B9B"}
1
+ {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../../../../src/library/webpack/module/server/dev.ts"],"names":[],"mappings":";;;;AAAA,0EAAmC;AACnC,oEAAoC;AAGpC,8DAA8B;AAC9B,mEAAyC;AAGlC,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;IAEvC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAE3B,IAAI,YAAY,EAAE;QAChB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,oBAAU,EAAE;YACxC;gBACE,IAAI,EAAE,eAAe;aACtB;SACF,CAAC,CAAC;KACJ;IAED,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;wCAE/B,IAAI,CAAC,CAAC,CAAC,KACV,sBAAsB,EAAE,eAAe;KAE1C,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AA9BW,QAAA,mBAAmB,uBA8B9B"}
@@ -818,6 +818,11 @@
818
818
  "default": true,
819
819
  "type": "boolean"
820
820
  },
821
+ "enabledDev": {
822
+ "title": "Does DedupePlugin should be enabled in development mode\nWhy it might be useful see [issue](https://github.com/Tinkoff/tramvai/issues/11)",
823
+ "default": false,
824
+ "type": "boolean"
825
+ },
821
826
  "strategy": {
822
827
  "title": "Strategy for DedupePlugin",
823
828
  "default": "equality",
@@ -1334,6 +1339,11 @@
1334
1339
  "default": true,
1335
1340
  "type": "boolean"
1336
1341
  },
1342
+ "enabledDev": {
1343
+ "title": "Does DedupePlugin should be enabled in development mode\nWhy it might be useful see [issue](https://github.com/Tinkoff/tramvai/issues/11)",
1344
+ "default": false,
1345
+ "type": "boolean"
1346
+ },
1337
1347
  "strategy": {
1338
1348
  "title": "Strategy for DedupePlugin",
1339
1349
  "default": "equality",
@@ -1850,6 +1860,11 @@
1850
1860
  "default": true,
1851
1861
  "type": "boolean"
1852
1862
  },
1863
+ "enabledDev": {
1864
+ "title": "Does DedupePlugin should be enabled in development mode\nWhy it might be useful see [issue](https://github.com/Tinkoff/tramvai/issues/11)",
1865
+ "default": false,
1866
+ "type": "boolean"
1867
+ },
1853
1868
  "strategy": {
1854
1869
  "title": "Strategy for DedupePlugin",
1855
1870
  "default": "equality",
@@ -198,6 +198,12 @@ export interface CliConfigEntry extends ConfigEntry {
198
198
  * @default true
199
199
  */
200
200
  enabled: boolean;
201
+ /**
202
+ * @title Does DedupePlugin should be enabled in development mode
203
+ * Why it might be useful see [issue](https://github.com/Tinkoff/tramvai/issues/11)
204
+ * @default false
205
+ */
206
+ enabledDev: boolean;
201
207
  /**
202
208
  * @title Strategy for DedupePlugin
203
209
  * @default "equality"
@@ -0,0 +1,3 @@
1
+ import type { ConfigManager } from '../../config/configManager';
2
+ export declare const appRequest: <T>(configManager: ConfigManager, path: string) => import("@tinkoff/request-core").MakeRequestResult<T>;
3
+ export declare const appBundleInfo: (configManager: ConfigManager) => Promise<string[]>;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.appBundleInfo = exports.appRequest = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const propOr_1 = tslib_1.__importDefault(require("@tinkoff/utils/object/propOr"));
6
+ const request_core_1 = tslib_1.__importDefault(require("@tinkoff/request-core"));
7
+ const request_plugin_protocol_http_1 = tslib_1.__importDefault(require("@tinkoff/request-plugin-protocol-http"));
8
+ const request = (0, request_core_1.default)([(0, request_plugin_protocol_http_1.default)()]);
9
+ const appRequest = (configManager, path) => {
10
+ const { host, port } = configManager;
11
+ const serverPath = `http://${host}:${port}`;
12
+ return request({ url: `${serverPath}${path}` });
13
+ };
14
+ exports.appRequest = appRequest;
15
+ const appBundleInfo = (configManager) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
16
+ const { name } = configManager;
17
+ const response = yield (0, exports.appRequest)(configManager, `/${name}/papi/bundleInfo`);
18
+ return (0, propOr_1.default)('payload', [], response);
19
+ });
20
+ exports.appBundleInfo = appBundleInfo;
21
+ //# sourceMappingURL=request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request.js","sourceRoot":"","sources":["../../../src/utils/dev-app/request.ts"],"names":[],"mappings":";;;;AAAA,kFAAkD;AAClD,iFAAkD;AAClD,iHAAyD;AAGzD,MAAM,OAAO,GAAG,IAAA,sBAAa,EAAC,CAAC,IAAA,sCAAI,GAAE,CAAC,CAAC,CAAC;AAEjC,MAAM,UAAU,GAAG,CAAI,aAA4B,EAAE,IAAY,EAAE,EAAE;IAC1E,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,aAAa,CAAC;IACrC,MAAM,UAAU,GAAG,UAAU,IAAI,IAAI,IAAI,EAAE,CAAC;IAE5C,OAAO,OAAO,CAAI,EAAE,GAAG,EAAE,GAAG,UAAU,GAAG,IAAI,EAAE,EAAE,CAAC,CAAC;AACrD,CAAC,CAAC;AALW,QAAA,UAAU,cAKrB;AAOK,MAAM,aAAa,GAAG,CAAO,aAA4B,EAAE,EAAE;IAClE,MAAM,EAAE,IAAI,EAAE,GAAG,aAAa,CAAC;IAE/B,MAAM,QAAQ,GAAG,MAAM,IAAA,kBAAU,EAAqB,aAAa,EAAE,IAAI,IAAI,kBAAkB,CAAC,CAAC;IAEjG,OAAO,IAAA,gBAAM,EAAC,SAAS,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;AACzC,CAAC,CAAA,CAAC;AANW,QAAA,aAAa,iBAMxB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tramvai/cli",
3
- "version": "2.92.1",
3
+ "version": "2.94.0",
4
4
  "description": "Cli инструмент для сборки и запуска приложений",
5
5
  "files": [
6
6
  "src",
@@ -69,9 +69,9 @@
69
69
  "@tinkoff/request-core": "^0.9.2",
70
70
  "@tinkoff/request-plugin-protocol-http": "^0.11.6",
71
71
  "@tinkoff/utils": "^2.1.3",
72
- "@tinkoff/webpack-dedupe-plugin": "1.0.4",
72
+ "@tinkoff/webpack-dedupe-plugin": "1.0.5",
73
73
  "@tramvai/build": "3.1.3",
74
- "@tramvai/react": "2.92.1",
74
+ "@tramvai/react": "2.94.0",
75
75
  "@tramvai/tools-check-versions": "0.4.11",
76
76
  "@tramvai/tools-migrate": "0.6.14",
77
77
  "ajv": "^6.12.6",
package/schema.json CHANGED
@@ -839,6 +839,11 @@
839
839
  "default": true,
840
840
  "type": "boolean"
841
841
  },
842
+ "enabledDev": {
843
+ "title": "Does DedupePlugin should be enabled in development mode\nWhy it might be useful see [issue](https://github.com/Tinkoff/tramvai/issues/11)",
844
+ "default": false,
845
+ "type": "boolean"
846
+ },
842
847
  "strategy": {
843
848
  "title": "Strategy for DedupePlugin",
844
849
  "default": "equality",
@@ -1363,6 +1368,11 @@
1363
1368
  "default": true,
1364
1369
  "type": "boolean"
1365
1370
  },
1371
+ "enabledDev": {
1372
+ "title": "Does DedupePlugin should be enabled in development mode\nWhy it might be useful see [issue](https://github.com/Tinkoff/tramvai/issues/11)",
1373
+ "default": false,
1374
+ "type": "boolean"
1375
+ },
1366
1376
  "strategy": {
1367
1377
  "title": "Strategy for DedupePlugin",
1368
1378
  "default": "equality",
@@ -1887,6 +1897,11 @@
1887
1897
  "default": true,
1888
1898
  "type": "boolean"
1889
1899
  },
1900
+ "enabledDev": {
1901
+ "title": "Does DedupePlugin should be enabled in development mode\nWhy it might be useful see [issue](https://github.com/Tinkoff/tramvai/issues/11)",
1902
+ "default": false,
1903
+ "type": "boolean"
1904
+ },
1890
1905
  "strategy": {
1891
1906
  "title": "Strategy for DedupePlugin",
1892
1907
  "default": "equality",
@@ -16,10 +16,11 @@ export const ProcessWorkerBridge: WorkerBridgeFactory<Worker> = (di) => {
16
16
  const configManager = di.get(SERVER_CONFIG_MANAGER_TOKEN);
17
17
  const stdout = di.get(STDOUT_TOKEN);
18
18
  const stderr = di.get(STDERR_TOKEN);
19
+ let firstWorker = true;
19
20
 
20
21
  return {
21
22
  async setup() {
22
- cluster.setupMaster({
23
+ cluster.setupPrimary({
23
24
  // указываем другой файл для работы cluster.fork
24
25
  exec: path.resolve(__dirname, './worker.js'),
25
26
  execArgv: ([] as string[]).concat(
@@ -41,8 +42,11 @@ export const ProcessWorkerBridge: WorkerBridgeFactory<Worker> = (di) => {
41
42
  // https://nodejs.org/dist/latest-v15.x/docs/api/all.html#cluster_how_it_works
42
43
  PORT: `${configManager.port}`,
43
44
  PORT_SERVER: `${configManager.port}`,
45
+ TRAMVAI_CLI_WATCH_INITIAL_BUILD: firstWorker,
44
46
  });
45
47
 
48
+ firstWorker = false;
49
+
46
50
  worker.process.stdout?.pipe(stdout);
47
51
  worker.process.stderr?.pipe(stderr);
48
52
 
@@ -8,6 +8,7 @@ import { COMMAND_PARAMETERS_TOKEN, CONFIG_ROOT_DIR_TOKEN } from '../../../../../
8
8
  export const ThreadWorkerBridge: WorkerBridgeFactory<Worker> = (di) => {
9
9
  const { env } = di.get(COMMAND_PARAMETERS_TOKEN);
10
10
  const configManager = di.get(SERVER_CONFIG_MANAGER_TOKEN);
11
+ let firstWorker = true;
11
12
 
12
13
  return {
13
14
  async setup() {},
@@ -37,9 +38,12 @@ export const ThreadWorkerBridge: WorkerBridgeFactory<Worker> = (di) => {
37
38
  // https://nodejs.org/dist/latest-v15.x/docs/api/all.html#cluster_how_it_works
38
39
  PORT: `${configManager.port}`,
39
40
  PORT_SERVER: `${configManager.port}`,
41
+ TRAMVAI_CLI_WATCH_INITIAL_BUILD: firstWorker,
40
42
  },
41
43
  });
42
44
 
45
+ firstWorker = false;
46
+
43
47
  return worker;
44
48
  },
45
49
  async destroy(worker) {
@@ -1,4 +1,3 @@
1
- import propOr from '@tinkoff/utils/object/propOr';
2
1
  import intersection from '@tinkoff/utils/array/intersection';
3
2
 
4
3
  import path from 'path';
@@ -10,7 +9,6 @@ import type { CommandResult } from '../../models/command';
10
9
  import type { ApplicationConfigEntry } from '../../typings/configEntry/application';
11
10
  import type { Params } from './command';
12
11
  import { createConfigManager } from '../../config/configManager';
13
- import { request } from './request';
14
12
  import { generateStatic } from './generate';
15
13
  import { copyStatsJsonFileToServerDirectory } from '../../builder/webpack/utils/copyStatsJsonFile';
16
14
  import { safeRequire } from '../../utils/safeRequire';
@@ -18,6 +16,7 @@ import { app } from '../index';
18
16
  import { startStaticServer } from './staticServer';
19
17
  import { startServer } from './server';
20
18
  import { handleServerOutput } from './utils/handle-server-output';
19
+ import { appBundleInfo } from '../../utils/dev-app/request';
21
20
 
22
21
  // eslint-disable-next-line max-statements
23
22
  export const staticApp = async (
@@ -124,7 +123,7 @@ export const staticApp = async (
124
123
  message: `message: server started, fetch application routes`,
125
124
  });
126
125
 
127
- let paths = propOr('payload', [], await request({ url: bundleInfoPath }));
126
+ let paths = await appBundleInfo(serverConfigManager);
128
127
 
129
128
  if (options.onlyPages) {
130
129
  paths = intersection(paths, options.onlyPages);
@@ -1,10 +1,10 @@
1
1
  import { resolve, join } from 'path';
2
2
  import PQueue from 'promise-queue';
3
3
  import { outputFile } from 'fs-extra';
4
- import { request } from './request';
5
4
  import type { Context } from '../../models/context';
6
5
  import type { ConfigManager } from '../../config/configManager';
7
6
  import type { ApplicationConfigEntry } from '../../typings/configEntry/application';
7
+ import { appRequest } from '../../utils/dev-app/request';
8
8
 
9
9
  const MAX_CONCURRENT = 10;
10
10
  const DYNAMIC_PAGE_REGEX = /\/:.+\//g;
@@ -17,9 +17,8 @@ export const generateStatic = async (
17
17
  const q = new PQueue(MAX_CONCURRENT);
18
18
  const promises = [];
19
19
 
20
- const { host, port, rootDir, output } = configManager;
20
+ const { rootDir, output } = configManager;
21
21
  const staticPath = resolve(rootDir, output.static);
22
- const serverPath = `http://${host}:${port}`;
23
22
 
24
23
  for (const path of paths) {
25
24
  promises.push(
@@ -41,7 +40,7 @@ export const generateStatic = async (
41
40
  message: `path: ${path}, message: start fetching page`,
42
41
  });
43
42
 
44
- const html = await request({ url: `${serverPath}${path}` });
43
+ const html = await appRequest(configManager, path);
45
44
 
46
45
  await outputFile(join(staticPath, path, 'index.html'), html);
47
46
 
@@ -34,7 +34,7 @@ export const webpackClientConfig = ({
34
34
  const config = new Config();
35
35
 
36
36
  config.batch(common(configManager));
37
- config.batch(commonDev());
37
+ config.batch(commonDev(configManager));
38
38
  config.batch(
39
39
  commonApplicationDev({
40
40
  entry: path.resolve(configManager.rootDir, `${configManager.root}/index`),
@@ -24,7 +24,7 @@ export const webpackServerConfig = ({
24
24
  const config = new Config();
25
25
 
26
26
  config.batch(common(configManager));
27
- config.batch(commonDev());
27
+ config.batch(commonDev(configManager));
28
28
  config.batch(
29
29
  commonApplicationDev({
30
30
  entry: path.resolve(configManager.rootDir, `${configManager.root}/index`),
@@ -0,0 +1,17 @@
1
+ import type Config from 'webpack-chain';
2
+ import { DedupePlugin } from '@tinkoff/webpack-dedupe-plugin';
3
+ import type { DedupePluginOptions } from '@tinkoff/webpack-dedupe-plugin';
4
+ import type { CliConfigEntry, ConfigManager } from '../../../api';
5
+
6
+ export const dedupe =
7
+ (configManager: ConfigManager<CliConfigEntry>, options?: Partial<DedupePluginOptions>) =>
8
+ (config: Config) => {
9
+ config.plugin('dedupe-plugin').use(DedupePlugin, [
10
+ {
11
+ strategy: configManager.dedupe.strategy,
12
+ ignorePackages: configManager.dedupe.ignore?.map((ignore) => new RegExp(`^${ignore}`)),
13
+ showLogs: false,
14
+ ...options,
15
+ } as DedupePluginOptions,
16
+ ]);
17
+ };
@@ -19,7 +19,7 @@ export const webpackClientConfig = ({
19
19
  const config = new Config();
20
20
 
21
21
  config.batch(common(configManager));
22
- config.batch(commonDev());
22
+ config.batch(commonDev(configManager));
23
23
 
24
24
  config.mode('development');
25
25
 
@@ -16,7 +16,7 @@ export const webpackServerConfig = ({
16
16
  const config = new Config();
17
17
 
18
18
  config.batch(common(configManager));
19
- config.batch(commonDev());
19
+ config.batch(commonDev(configManager));
20
20
 
21
21
  config.mode('development');
22
22
 
@@ -3,9 +3,9 @@ import type Config from 'webpack-chain';
3
3
  import chalk from 'chalk';
4
4
  import { DuplicatesPlugin } from 'inspectpack/plugin';
5
5
  import type { DedupePluginOptions } from '@tinkoff/webpack-dedupe-plugin';
6
- import { DedupePlugin } from '@tinkoff/webpack-dedupe-plugin';
7
6
  import type { ConfigManager } from '../../../../config/configManager';
8
7
  import type { CliConfigEntry } from '../../../../typings/configEntry/cli';
8
+ import { dedupe } from '../../blocks/dedupe';
9
9
 
10
10
  const onDedupeInfo = once<DedupePluginOptions['onDedupeInfo']>((logInfo) => {
11
11
  if (logInfo.size > 0) {
@@ -27,14 +27,12 @@ export default (configManager: ConfigManager<CliConfigEntry>) => (config: Config
27
27
  ]);
28
28
 
29
29
  if (configManager.dedupe.enabled) {
30
- config.plugin('dedupe-plugin').use(DedupePlugin, [
31
- {
32
- strategy: configManager.dedupe.strategy,
33
- ignorePackages: configManager.dedupe.ignore?.map((ignore) => new RegExp(`^${ignore}`)),
30
+ config.batch(
31
+ dedupe(configManager, {
34
32
  showLogs: !configManager.modern,
35
33
  onDedupeInfo,
36
- } as DedupePluginOptions,
37
- ]);
34
+ })
35
+ );
38
36
  } else {
39
37
  config.plugin('duplicates-plugin').use(DuplicatesPlugin, [
40
38
  {
@@ -1,8 +1,10 @@
1
1
  import type Config from 'webpack-chain';
2
2
  import CaseSensitivePathsPlugin from 'case-sensitive-paths-webpack-plugin';
3
3
  import { ignoreWarnings } from '../utils/warningsFilter';
4
+ import type { CliConfigEntry, ConfigManager } from '../../../api';
5
+ import { dedupe } from '../blocks/dedupe';
4
6
 
5
- export default () => (config: Config) => {
7
+ export default (configManager: ConfigManager<CliConfigEntry>) => (config: Config) => {
6
8
  config.plugin('case-sensitive-path').use(CaseSensitivePathsPlugin);
7
9
 
8
10
  config.stats({
@@ -19,5 +21,9 @@ export default () => (config: Config) => {
19
21
 
20
22
  config.module.set('unsafeCache', true);
21
23
 
24
+ if (configManager.dedupe.enabledDev) {
25
+ config.batch(dedupe(configManager));
26
+ }
27
+
22
28
  return config;
23
29
  };
@@ -1,8 +1,7 @@
1
1
  import type Config from 'webpack-chain';
2
- import type { DedupePluginOptions } from '@tinkoff/webpack-dedupe-plugin';
3
- import { DedupePlugin } from '@tinkoff/webpack-dedupe-plugin';
4
2
  import type { ConfigManager } from '../../../../config/configManager';
5
3
  import type { CliConfigEntry } from '../../../../typings/configEntry/cli';
4
+ import { dedupe } from '../../blocks/dedupe';
6
5
 
7
6
  export default (configManager: ConfigManager<CliConfigEntry>) => (config: Config) => {
8
7
  config.mode('production');
@@ -15,12 +14,6 @@ export default (configManager: ConfigManager<CliConfigEntry>) => (config: Config
15
14
  ]);
16
15
 
17
16
  if (configManager.dedupe.enabled) {
18
- config.plugin('dedupe-plugin').use(DedupePlugin, [
19
- {
20
- strategy: configManager.dedupe.strategy,
21
- showLogs: false,
22
- ignorePackages: configManager.dedupe.ignore?.map((ignore) => new RegExp(`^${ignore}`)),
23
- } as DedupePluginOptions,
24
- ]);
17
+ config.batch(dedupe(configManager));
25
18
  }
26
19
  };
@@ -16,7 +16,7 @@ export const webpackClientConfig = ({
16
16
  const config = new Config();
17
17
 
18
18
  config.batch(common(configManager));
19
- config.batch(commonDev());
19
+ config.batch(commonDev(configManager));
20
20
 
21
21
  config.mode('development');
22
22
 
@@ -16,7 +16,7 @@ export const webpackServerConfig = ({
16
16
  const config = new Config();
17
17
 
18
18
  config.batch(common(configManager));
19
- config.batch(commonDev());
19
+ config.batch(commonDev(configManager));
20
20
 
21
21
  config.mode('development');
22
22
 
@@ -28,6 +28,7 @@ it('should populate defaults for config', () => {
28
28
  "cssMinimize": "css-minimizer",
29
29
  "dedupe": {
30
30
  "enabled": true,
31
+ "enabledDev": false,
31
32
  "strategy": "equality",
32
33
  },
33
34
  "define": {
@@ -94,6 +95,7 @@ it('should populate defaults for config', () => {
94
95
  "cssMinimize": "css-minimizer",
95
96
  "dedupe": {
96
97
  "enabled": true,
98
+ "enabledDev": false,
97
99
  "strategy": "equality",
98
100
  },
99
101
  "define": {
@@ -225,6 +227,7 @@ it('should populate defaults for overridable options', () => {
225
227
  "cssMinimize": "css-minimizer",
226
228
  "dedupe": {
227
229
  "enabled": true,
230
+ "enabledDev": false,
228
231
  "strategy": "semver",
229
232
  },
230
233
  "define": {
@@ -305,6 +308,7 @@ it('should populate defaults for overridable options', () => {
305
308
  "cssMinimize": "css-minimizer",
306
309
  "dedupe": {
307
310
  "enabled": true,
311
+ "enabledDev": false,
308
312
  "strategy": "equality",
309
313
  },
310
314
  "define": {
@@ -818,6 +818,11 @@
818
818
  "default": true,
819
819
  "type": "boolean"
820
820
  },
821
+ "enabledDev": {
822
+ "title": "Does DedupePlugin should be enabled in development mode\nWhy it might be useful see [issue](https://github.com/Tinkoff/tramvai/issues/11)",
823
+ "default": false,
824
+ "type": "boolean"
825
+ },
821
826
  "strategy": {
822
827
  "title": "Strategy for DedupePlugin",
823
828
  "default": "equality",
@@ -1334,6 +1339,11 @@
1334
1339
  "default": true,
1335
1340
  "type": "boolean"
1336
1341
  },
1342
+ "enabledDev": {
1343
+ "title": "Does DedupePlugin should be enabled in development mode\nWhy it might be useful see [issue](https://github.com/Tinkoff/tramvai/issues/11)",
1344
+ "default": false,
1345
+ "type": "boolean"
1346
+ },
1337
1347
  "strategy": {
1338
1348
  "title": "Strategy for DedupePlugin",
1339
1349
  "default": "equality",
@@ -1850,6 +1860,11 @@
1850
1860
  "default": true,
1851
1861
  "type": "boolean"
1852
1862
  },
1863
+ "enabledDev": {
1864
+ "title": "Does DedupePlugin should be enabled in development mode\nWhy it might be useful see [issue](https://github.com/Tinkoff/tramvai/issues/11)",
1865
+ "default": false,
1866
+ "type": "boolean"
1867
+ },
1853
1868
  "strategy": {
1854
1869
  "title": "Strategy for DedupePlugin",
1855
1870
  "default": "equality",
@@ -51,6 +51,7 @@ describe('JSON schema для tramvai.json', () => {
51
51
  "cssMinimize": "css-minimizer",
52
52
  "dedupe": {
53
53
  "enabled": true,
54
+ "enabledDev": false,
54
55
  "strategy": "equality",
55
56
  },
56
57
  "define": {
@@ -117,6 +118,7 @@ describe('JSON schema для tramvai.json', () => {
117
118
  "cssMinimize": "css-minimizer",
118
119
  "dedupe": {
119
120
  "enabled": true,
121
+ "enabledDev": false,
120
122
  "strategy": "equality",
121
123
  },
122
124
  "define": {
@@ -213,6 +213,12 @@ export interface CliConfigEntry extends ConfigEntry {
213
213
  * @default true
214
214
  */
215
215
  enabled: boolean;
216
+ /**
217
+ * @title Does DedupePlugin should be enabled in development mode
218
+ * Why it might be useful see [issue](https://github.com/Tinkoff/tramvai/issues/11)
219
+ * @default false
220
+ */
221
+ enabledDev: boolean;
216
222
  /**
217
223
  * @title Strategy for DedupePlugin
218
224
  * @default "equality"
@@ -0,0 +1,26 @@
1
+ import propOr from '@tinkoff/utils/object/propOr';
2
+ import createRequest from '@tinkoff/request-core';
3
+ import http from '@tinkoff/request-plugin-protocol-http';
4
+ import type { ConfigManager } from '../../config/configManager';
5
+
6
+ const request = createRequest([http()]);
7
+
8
+ export const appRequest = <T>(configManager: ConfigManager, path: string) => {
9
+ const { host, port } = configManager;
10
+ const serverPath = `http://${host}:${port}`;
11
+
12
+ return request<T>({ url: `${serverPath}${path}` });
13
+ };
14
+
15
+ interface BundleInfoResponse {
16
+ resultCode: string;
17
+ payload: string[];
18
+ }
19
+
20
+ export const appBundleInfo = async (configManager: ConfigManager) => {
21
+ const { name } = configManager;
22
+
23
+ const response = await appRequest<BundleInfoResponse>(configManager, `/${name}/papi/bundleInfo`);
24
+
25
+ return propOr('payload', [], response);
26
+ };
@@ -1 +0,0 @@
1
- export declare const request: import("@tinkoff/request-core").MakeRequest;
@@ -1,8 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.request = void 0;
4
- const tslib_1 = require("tslib");
5
- const request_core_1 = tslib_1.__importDefault(require("@tinkoff/request-core"));
6
- const request_plugin_protocol_http_1 = tslib_1.__importDefault(require("@tinkoff/request-plugin-protocol-http"));
7
- exports.request = (0, request_core_1.default)([(0, request_plugin_protocol_http_1.default)()]);
8
- //# sourceMappingURL=request.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"request.js","sourceRoot":"","sources":["../../../src/commands/static/request.ts"],"names":[],"mappings":";;;;AAAA,iFAAkD;AAClD,iHAAyD;AAE5C,QAAA,OAAO,GAAG,IAAA,sBAAa,EAAC,CAAC,IAAA,sCAAI,GAAE,CAAC,CAAC,CAAC"}
@@ -1,4 +0,0 @@
1
- import createRequest from '@tinkoff/request-core';
2
- import http from '@tinkoff/request-plugin-protocol-http';
3
-
4
- export const request = createRequest([http()]);