@teambit/react 1.0.336 → 1.0.338

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 (60) hide show
  1. package/dist/jest/jest.cjs.config.d.ts +11 -12
  2. package/dist/jest/jest.cjs.config.js +12 -8
  3. package/dist/jest/jest.cjs.config.js.map +1 -1
  4. package/dist/jest/jest.esm.config.d.ts +12 -13
  5. package/dist/jest/jest.esm.config.js +12 -9
  6. package/dist/jest/jest.esm.config.js.map +1 -1
  7. package/dist/{preview-1721013596376.js → preview-1721186478884.js} +2 -2
  8. package/dist/react.env.d.ts +14 -10
  9. package/dist/react.env.js +48 -11
  10. package/dist/react.env.js.map +1 -1
  11. package/dist/react.main.runtime.d.ts +4 -4
  12. package/dist/react.main.runtime.js +18 -11
  13. package/dist/react.main.runtime.js.map +1 -1
  14. package/jest/jest.cjs.config.js +13 -7
  15. package/jest/jest.esm.config.js +13 -6
  16. package/package.json +41 -51
  17. package/react.env.ts +44 -10
  18. package/react.main.runtime.ts +11 -7
  19. package/dist/jest/jest.base.config.d.ts +0 -16
  20. package/dist/jest/jest.base.config.js +0 -35
  21. package/dist/jest/jest.base.config.js.map +0 -1
  22. package/dist/jest/jest.config.d.ts +0 -2
  23. package/dist/jest/jest.config.js +0 -10
  24. package/dist/jest/jest.config.js.map +0 -1
  25. package/dist/jest/setupTests.d.ts +0 -1
  26. package/dist/jest/setupTests.js +0 -11
  27. package/dist/jest/setupTests.js.map +0 -1
  28. package/dist/jest/transformers/base-transformer-plugins.d.ts +0 -1
  29. package/dist/jest/transformers/base-transformer-plugins.js +0 -14
  30. package/dist/jest/transformers/base-transformer-plugins.js.map +0 -1
  31. package/dist/jest/transformers/base-transformer-presets.d.ts +0 -1
  32. package/dist/jest/transformers/base-transformer-presets.js +0 -12
  33. package/dist/jest/transformers/base-transformer-presets.js.map +0 -1
  34. package/dist/jest/transformers/base-transformer-process.d.ts +0 -1
  35. package/dist/jest/transformers/base-transformer-process.js +0 -23
  36. package/dist/jest/transformers/base-transformer-process.js.map +0 -1
  37. package/dist/jest/transformers/cjs-transformer.d.ts +0 -1
  38. package/dist/jest/transformers/cjs-transformer.js +0 -26
  39. package/dist/jest/transformers/cjs-transformer.js.map +0 -1
  40. package/dist/jest/transformers/css-transform.d.ts +0 -2
  41. package/dist/jest/transformers/css-transform.js +0 -16
  42. package/dist/jest/transformers/css-transform.js.map +0 -1
  43. package/dist/jest/transformers/esm-transformer.d.ts +0 -1
  44. package/dist/jest/transformers/esm-transformer.js +0 -28
  45. package/dist/jest/transformers/esm-transformer.js.map +0 -1
  46. package/dist/jest/transformers/file-transform.d.ts +0 -1
  47. package/dist/jest/transformers/file-transform.js +0 -40
  48. package/dist/jest/transformers/file-transform.js.map +0 -1
  49. package/jest/jest.base.config.js +0 -31
  50. package/jest/jest.config.js +0 -7
  51. package/jest/setupTests.js +0 -7
  52. package/jest/transformers/base-transformer-plugins.js +0 -13
  53. package/jest/transformers/base-transformer-presets.js +0 -11
  54. package/jest/transformers/base-transformer-process.js +0 -20
  55. package/jest/transformers/cjs-transformer.js +0 -25
  56. package/jest/transformers/css-transform.js +0 -12
  57. package/jest/transformers/esm-transformer.js +0 -27
  58. package/jest/transformers/file-transform.js +0 -38
  59. /package/{compositions-1721013596376.js → compositions-1721186478884.js} +0 -0
  60. /package/{overview-1721013596376.js → overview-1721186478884.js} +0 -0
@@ -1,20 +1,19 @@
1
- export = cjsConfig;
2
- declare const cjsConfig: {
1
+ declare const _exports: {
2
+ transformIgnorePatterns: string[];
3
3
  transform: {
4
4
  '^.+\\.(js|jsx|ts|tsx|cjs)$': string;
5
5
  '^.+\\.css$': string;
6
- '^(?!.*\\.(js|jsx|ts|tsx|css|json)$)': string;
6
+ '^.+\\.svg$': string;
7
7
  };
8
- setupFiles: string[];
9
- setupFilesAfterEnv: string[];
10
- testEnvironment: string;
11
- transformIgnorePatterns: string[];
12
- modulePaths: never[];
8
+ modulePaths: any[];
13
9
  moduleNameMapper: {
14
- '\\.(css|less|scss|sass)$': string;
15
- '^react-native$': string;
16
- '^.+\\.module\\.(css|sass|scss)$': string;
10
+ '\\.(jpg|jpeg|png|gif|eot|otf|webp|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$': string;
11
+ '^.+\\.(css|sass|scss|less)$': string;
12
+ '^.+\\.module\\.(css|sass|scss|less)$': string;
17
13
  };
18
14
  moduleFileExtensions: string[];
19
- testTimeout: number;
15
+ testEnvironment: string;
16
+ setupFiles: string[];
17
+ setupFilesAfterEnv: string[];
20
18
  };
19
+ export = _exports;
@@ -5,14 +5,18 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
5
5
  function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
6
6
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
7
7
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
8
- const baseConfig = require('./jest.base.config');
9
- const cjsTransformer = require.resolve('./transformers/cjs-transformer.js');
10
- const cjsTransform = _objectSpread(_objectSpread({}, baseConfig.transform), {}, {
11
- '^.+\\.(js|jsx|ts|tsx|cjs)$': cjsTransformer
8
+ const {
9
+ cjsConfig
10
+ } = require('@teambit/react.jest.react-jest');
11
+ const {
12
+ generateNodeModulesPattern
13
+ } = require('@teambit/dependencies.modules.packages-excluder');
14
+ const packagesToExclude = ['@teambit'];
15
+ module.exports = _objectSpread(_objectSpread({}, cjsConfig), {}, {
16
+ transformIgnorePatterns: ['^.+.module.(css|sass|scss)$', generateNodeModulesPattern({
17
+ packages: packagesToExclude,
18
+ excludeComponents: true
19
+ })]
12
20
  });
13
- const cjsConfig = _objectSpread(_objectSpread({}, baseConfig), {}, {
14
- transform: cjsTransform
15
- });
16
- module.exports = cjsConfig;
17
21
 
18
22
  //# sourceMappingURL=jest.cjs.config.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["baseConfig","require","cjsTransformer","resolve","cjsTransform","_objectSpread","transform","cjsConfig","module","exports"],"sources":["jest.cjs.config.js"],"sourcesContent":["const baseConfig = require('./jest.base.config');\n\nconst cjsTransformer = require.resolve('./transformers/cjs-transformer.js');\n\nconst cjsTransform = { ...baseConfig.transform, '^.+\\\\.(js|jsx|ts|tsx|cjs)$': cjsTransformer };\nconst cjsConfig = { ...baseConfig, transform: cjsTransform };\n\nmodule.exports = cjsConfig;\n"],"mappings":";;;;;;;AAAA,MAAMA,UAAU,GAAGC,OAAO,CAAC,oBAAoB,CAAC;AAEhD,MAAMC,cAAc,GAAGD,OAAO,CAACE,OAAO,CAAC,mCAAmC,CAAC;AAE3E,MAAMC,YAAY,GAAAC,aAAA,CAAAA,aAAA,KAAQL,UAAU,CAACM,SAAS;EAAE,4BAA4B,EAAEJ;AAAc,EAAE;AAC9F,MAAMK,SAAS,GAAAF,aAAA,CAAAA,aAAA,KAAQL,UAAU;EAAEM,SAAS,EAAEF;AAAY,EAAE;AAE5DI,MAAM,CAACC,OAAO,GAAGF,SAAS","ignoreList":[]}
1
+ {"version":3,"names":["cjsConfig","require","generateNodeModulesPattern","packagesToExclude","module","exports","_objectSpread","transformIgnorePatterns","packages","excludeComponents"],"sources":["jest.cjs.config.js"],"sourcesContent":["const { cjsConfig } = require('@teambit/react.jest.react-jest');\nconst { generateNodeModulesPattern } = require('@teambit/dependencies.modules.packages-excluder');\nconst packagesToExclude = ['@teambit'];\n\nmodule.exports = {\n ...cjsConfig,\n transformIgnorePatterns: [\n '^.+.module.(css|sass|scss)$',\n generateNodeModulesPattern({\n packages: packagesToExclude,\n excludeComponents: true,\n }),\n ],\n};\n"],"mappings":";;;;;;;AAAA,MAAM;EAAEA;AAAU,CAAC,GAAGC,OAAO,CAAC,gCAAgC,CAAC;AAC/D,MAAM;EAAEC;AAA2B,CAAC,GAAGD,OAAO,CAAC,iDAAiD,CAAC;AACjG,MAAME,iBAAiB,GAAG,CAAC,UAAU,CAAC;AAEtCC,MAAM,CAACC,OAAO,GAAAC,aAAA,CAAAA,aAAA,KACTN,SAAS;EACZO,uBAAuB,EAAE,CACvB,6BAA6B,EAC7BL,0BAA0B,CAAC;IACzBM,QAAQ,EAAEL,iBAAiB;IAC3BM,iBAAiB,EAAE;EACrB,CAAC,CAAC;AACH,EACF","ignoreList":[]}
@@ -1,21 +1,20 @@
1
- export = esmConfig;
2
- declare const esmConfig: {
3
- extensionsToTreatAsEsm: string[];
1
+ declare const _exports: {
2
+ transformIgnorePatterns: string[];
4
3
  transform: {
5
4
  '^.+\\.(js|jsx|ts|tsx)$': string;
6
5
  '^.+\\.css$': string;
7
- '^(?!.*\\.(js|jsx|ts|tsx|css|json)$)': string;
6
+ '^.+\\.svg$': string;
8
7
  };
9
- setupFiles: string[];
10
- setupFilesAfterEnv: string[];
11
- testEnvironment: string;
12
- transformIgnorePatterns: string[];
13
- modulePaths: never[];
8
+ extensionsToTreatAsEsm: string[];
9
+ modulePaths: any[];
14
10
  moduleNameMapper: {
15
- '\\.(css|less|scss|sass)$': string;
16
- '^react-native$': string;
17
- '^.+\\.module\\.(css|sass|scss)$': string;
11
+ '\\.(jpg|jpeg|png|gif|eot|otf|webp|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$': string;
12
+ '^.+\\.(css|sass|scss|less)$': string;
13
+ '^.+\\.module\\.(css|sass|scss|less)$': string;
18
14
  };
19
15
  moduleFileExtensions: string[];
20
- testTimeout: number;
16
+ testEnvironment: string;
17
+ setupFiles: string[];
18
+ setupFilesAfterEnv: string[];
21
19
  };
20
+ export = _exports;
@@ -5,15 +5,18 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
5
5
  function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
6
6
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
7
7
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
8
- const baseConfig = require('./jest.base.config');
9
- const esmTransformer = require.resolve('./transformers/esm-transformer.js');
10
- const esmTransform = _objectSpread(_objectSpread({}, baseConfig.transform), {}, {
11
- '^.+\\.(js|jsx|ts|tsx)$': esmTransformer
8
+ const {
9
+ esmConfig
10
+ } = require('@teambit/react.jest.react-jest');
11
+ const {
12
+ generateNodeModulesPattern
13
+ } = require('@teambit/dependencies.modules.packages-excluder');
14
+ const packagesToExclude = ['@teambit'];
15
+ module.exports = _objectSpread(_objectSpread({}, esmConfig), {}, {
16
+ transformIgnorePatterns: ['^.+.module.(css|sass|scss)$', generateNodeModulesPattern({
17
+ packages: packagesToExclude,
18
+ excludeComponents: true
19
+ })]
12
20
  });
13
- const esmConfig = _objectSpread(_objectSpread({}, baseConfig), {}, {
14
- extensionsToTreatAsEsm: ['.ts', '.tsx', '.jsx'],
15
- transform: esmTransform
16
- });
17
- module.exports = esmConfig;
18
21
 
19
22
  //# sourceMappingURL=jest.esm.config.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["baseConfig","require","esmTransformer","resolve","esmTransform","_objectSpread","transform","esmConfig","extensionsToTreatAsEsm","module","exports"],"sources":["jest.esm.config.js"],"sourcesContent":["const baseConfig = require('./jest.base.config');\n\nconst esmTransformer = require.resolve('./transformers/esm-transformer.js');\nconst esmTransform = { ...baseConfig.transform, '^.+\\\\.(js|jsx|ts|tsx)$': esmTransformer };\nconst esmConfig = { ...baseConfig, extensionsToTreatAsEsm: ['.ts', '.tsx', '.jsx'], transform: esmTransform };\n\nmodule.exports = esmConfig;\n"],"mappings":";;;;;;;AAAA,MAAMA,UAAU,GAAGC,OAAO,CAAC,oBAAoB,CAAC;AAEhD,MAAMC,cAAc,GAAGD,OAAO,CAACE,OAAO,CAAC,mCAAmC,CAAC;AAC3E,MAAMC,YAAY,GAAAC,aAAA,CAAAA,aAAA,KAAQL,UAAU,CAACM,SAAS;EAAE,wBAAwB,EAAEJ;AAAc,EAAE;AAC1F,MAAMK,SAAS,GAAAF,aAAA,CAAAA,aAAA,KAAQL,UAAU;EAAEQ,sBAAsB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC;EAAEF,SAAS,EAAEF;AAAY,EAAE;AAE7GK,MAAM,CAACC,OAAO,GAAGH,SAAS","ignoreList":[]}
1
+ {"version":3,"names":["esmConfig","require","generateNodeModulesPattern","packagesToExclude","module","exports","_objectSpread","transformIgnorePatterns","packages","excludeComponents"],"sources":["jest.esm.config.js"],"sourcesContent":["const { esmConfig } = require('@teambit/react.jest.react-jest');\nconst { generateNodeModulesPattern } = require('@teambit/dependencies.modules.packages-excluder');\nconst packagesToExclude = ['@teambit'];\n\nmodule.exports = {\n ...esmConfig,\n transformIgnorePatterns: [\n '^.+.module.(css|sass|scss)$',\n generateNodeModulesPattern({\n packages: packagesToExclude,\n excludeComponents: true,\n }),\n ],\n};\n"],"mappings":";;;;;;;AAAA,MAAM;EAAEA;AAAU,CAAC,GAAGC,OAAO,CAAC,gCAAgC,CAAC;AAC/D,MAAM;EAAEC;AAA2B,CAAC,GAAGD,OAAO,CAAC,iDAAiD,CAAC;AACjG,MAAME,iBAAiB,GAAG,CAAC,UAAU,CAAC;AAEtCC,MAAM,CAACC,OAAO,GAAAC,aAAA,CAAAA,aAAA,KACTN,SAAS;EACZO,uBAAuB,EAAE,CACvB,6BAA6B,EAC7BL,0BAA0B,CAAC;IACzBM,QAAQ,EAAEL,iBAAiB;IAC3BM,iBAAiB,EAAE;EACrB,CAAC,CAAC;AACH,EACF","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.react_react@1.0.336/dist/react.composition.js';
2
- import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.react_react@1.0.336/dist/react.docs.mdx';
1
+ import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.react_react@1.0.338/dist/react.composition.js';
2
+ import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.react_react@1.0.338/dist/react.docs.mdx';
3
3
 
4
4
  export const compositions = [compositions_0];
5
5
  export const overview = [overview_0];
@@ -5,7 +5,6 @@ import { PreviewStrategyName } from '@teambit/preview';
5
5
  import { PrettierConfigTransformer } from '@teambit/defender.prettier.config-mutator';
6
6
  import { CompilerMain } from '@teambit/compiler';
7
7
  import { BuilderEnv, CompilerEnv, DependenciesEnv, DevEnv, LinterEnv, PackageEnv, TesterEnv, FormatterEnv, PipeServiceModifier, PipeServiceModifiersMap } from '@teambit/envs';
8
- import { JestMain } from '@teambit/jest';
9
8
  import { PackageJsonProps, PkgMain } from '@teambit/pkg';
10
9
  import { Tester, TesterMain } from '@teambit/tester';
11
10
  import { TsConfigTransformer, TypescriptMain } from '@teambit/typescript';
@@ -19,19 +18,18 @@ import { SchemaExtractor } from '@teambit/schema';
19
18
  import { Logger } from '@teambit/logger';
20
19
  import { ConfigWriterEntry } from '@teambit/workspace-config-files';
21
20
  import type { ReactMainConfig } from './react.main.runtime';
21
+ import type { WorkerMain } from '@teambit/worker';
22
+ import type { DevFilesMain } from '@teambit/dev-files';
22
23
  export declare const ReactEnvType = "react";
23
24
  type CompilerMode = 'build' | 'dev';
24
25
  type GetBuildPipeModifiers = PipeServiceModifiersMap & {
25
26
  tsModifier?: PipeServiceModifier;
27
+ jestModifier?: PipeServiceModifier;
26
28
  };
27
29
  /**
28
30
  * a component environment built for [React](https://reactjs.org) .
29
31
  */
30
32
  export declare class ReactEnv implements TesterEnv, CompilerEnv, LinterEnv, DevEnv, BuilderEnv, DependenciesEnv, PackageEnv, FormatterEnv {
31
- /**
32
- * jest extension
33
- */
34
- private jestAspect;
35
33
  /**
36
34
  * typescript extension.
37
35
  */
@@ -48,6 +46,10 @@ export declare class ReactEnv implements TesterEnv, CompilerEnv, LinterEnv, DevE
48
46
  * workspace extension.
49
47
  */
50
48
  private workspace;
49
+ /**
50
+ * worker extension.
51
+ */
52
+ private worker;
51
53
  /**
52
54
  * pkg extension.
53
55
  */
@@ -58,13 +60,10 @@ export declare class ReactEnv implements TesterEnv, CompilerEnv, LinterEnv, DevE
58
60
  private tester;
59
61
  private config;
60
62
  private dependencyResolver;
63
+ private devFiles;
61
64
  private logger;
62
65
  private compilerAspectId;
63
66
  constructor(
64
- /**
65
- * jest extension
66
- */
67
- jestAspect: JestMain,
68
67
  /**
69
68
  * typescript extension.
70
69
  */
@@ -81,6 +80,10 @@ export declare class ReactEnv implements TesterEnv, CompilerEnv, LinterEnv, DevE
81
80
  * workspace extension.
82
81
  */
83
82
  workspace: Workspace,
83
+ /**
84
+ * worker extension.
85
+ */
86
+ worker: WorkerMain,
84
87
  /**
85
88
  * pkg extension.
86
89
  */
@@ -88,7 +91,7 @@ export declare class ReactEnv implements TesterEnv, CompilerEnv, LinterEnv, DevE
88
91
  /**
89
92
  * tester extension
90
93
  */
91
- tester: TesterMain, config: ReactMainConfig, dependencyResolver: DependencyResolverMain, logger: Logger, compilerAspectId: string);
94
+ tester: TesterMain, config: ReactMainConfig, dependencyResolver: DependencyResolverMain, devFiles: DevFilesMain, logger: Logger, compilerAspectId: string);
92
95
  getTsConfig(targetTsConfig?: TsConfigSourceFile): TsConfigSourceFile;
93
96
  getBuildTsConfig(targetTsConfig?: TsConfigSourceFile): TsConfigSourceFile;
94
97
  /**
@@ -102,6 +105,7 @@ export declare class ReactEnv implements TesterEnv, CompilerEnv, LinterEnv, DevE
102
105
  * @returns
103
106
  */
104
107
  createCjsJestTester(jestConfigPath?: string, jestModulePath?: string): Tester;
108
+ private getJestWorker;
105
109
  /**
106
110
  * @deprecated use createEsmJestTester()
107
111
  */
package/dist/react.env.js CHANGED
@@ -75,6 +75,13 @@ function _defender2() {
75
75
  };
76
76
  return data;
77
77
  }
78
+ function _defender3() {
79
+ const data = require("@teambit/defender.jest-tester");
80
+ _defender3 = function () {
81
+ return data;
82
+ };
83
+ return data;
84
+ }
78
85
  function _defenderEslint() {
79
86
  const data = require("@teambit/defender.eslint.config-mutator");
80
87
  _defenderEslint = function () {
@@ -176,10 +183,6 @@ const prettierConfig = require('./prettier/prettier.config');
176
183
  */
177
184
  class ReactEnv {
178
185
  constructor(
179
- /**
180
- * jest extension
181
- */
182
- jestAspect,
183
186
  /**
184
187
  * typescript extension.
185
188
  */
@@ -196,6 +199,10 @@ class ReactEnv {
196
199
  * workspace extension.
197
200
  */
198
201
  workspace,
202
+ /**
203
+ * worker extension.
204
+ */
205
+ worker,
199
206
  /**
200
207
  * pkg extension.
201
208
  */
@@ -203,16 +210,17 @@ class ReactEnv {
203
210
  /**
204
211
  * tester extension
205
212
  */
206
- tester, config, dependencyResolver, logger, compilerAspectId) {
207
- this.jestAspect = jestAspect;
213
+ tester, config, dependencyResolver, devFiles, logger, compilerAspectId) {
208
214
  this.tsAspect = tsAspect;
209
215
  this.compiler = compiler;
210
216
  this.webpack = webpack;
211
217
  this.workspace = workspace;
218
+ this.worker = worker;
212
219
  this.pkg = pkg;
213
220
  this.tester = tester;
214
221
  this.config = config;
215
222
  this.dependencyResolver = dependencyResolver;
223
+ this.devFiles = devFiles;
216
224
  this.logger = logger;
217
225
  this.compilerAspectId = compilerAspectId;
218
226
  _defineProperty(this, "icon", 'https://static.bit.dev/extensions-icons/react.svg');
@@ -241,7 +249,18 @@ class ReactEnv {
241
249
  const pathToSource = (0, _toolboxPath().pathNormalizeToLinux)(__dirname).replace('/dist', '');
242
250
  const defaultConfig = (0, _path().join)(pathToSource, './jest/jest.cjs.config.js');
243
251
  const config = jestConfigPath || defaultConfig;
244
- return this.jestAspect.createTester(config, jestModulePath || require.resolve('jest'));
252
+ const worker = this.getJestWorker();
253
+ const tester = _defender3().JestTester.create({
254
+ jest: jestModulePath || require.resolve('jest'),
255
+ config
256
+ }, {
257
+ logger: this.logger,
258
+ worker
259
+ });
260
+ return tester;
261
+ }
262
+ getJestWorker() {
263
+ return this.worker.declareWorker('jest', _defender3().jestWorkerPath);
245
264
  }
246
265
 
247
266
  /**
@@ -261,14 +280,20 @@ class ReactEnv {
261
280
  const pathToSource = (0, _toolboxPath().pathNormalizeToLinux)(__dirname).replace('/dist', '');
262
281
  const defaultConfig = (0, _path().join)(pathToSource, './jest/jest.esm.config.js');
263
282
  const config = jestConfigPath || defaultConfig;
264
- return this.jestAspect.createTester(config, jestModulePath || require.resolve('jest'));
283
+ const worker = this.getJestWorker();
284
+ return _defender3().JestTester.create({
285
+ jest: jestModulePath || require.resolve('jest'),
286
+ config
287
+ }, {
288
+ logger: this.logger,
289
+ worker
290
+ });
265
291
  }
266
292
 
267
293
  /**
268
294
  * returns a component tester.
269
295
  */
270
296
  getTester(jestConfigPath, jestModulePath) {
271
- // return this.createEsmJestTester(jestConfigPath, jestModulePath);
272
297
  return this.createCjsJestTester(jestConfigPath, jestModulePath);
273
298
  }
274
299
  createTsCompilerOptions(mode = 'dev') {
@@ -554,9 +579,21 @@ class ReactEnv {
554
579
  * returns the component build pipeline.
555
580
  */
556
581
  getBuildPipe(modifiers = {}) {
557
- var _modifiers$tsModifier, _modifiers$tsModifier2;
582
+ var _modifiers$tsModifier, _modifiers$jestModifi, _modifiers$jestModifi2, _modifiers$tsModifier2;
558
583
  const transformers = (modifiers === null || modifiers === void 0 || (_modifiers$tsModifier = modifiers.tsModifier) === null || _modifiers$tsModifier === void 0 ? void 0 : _modifiers$tsModifier.transformers) || [];
559
- return [this.createCjsCompilerTask(transformers, (modifiers === null || modifiers === void 0 || (_modifiers$tsModifier2 = modifiers.tsModifier) === null || _modifiers$tsModifier2 === void 0 ? void 0 : _modifiers$tsModifier2.module) || _typescript().default), this.tester.task];
584
+ const pathToSource = (0, _toolboxPath().pathNormalizeToLinux)(__dirname).replace('/dist', '');
585
+ const jestConfigPath = (modifiers === null || modifiers === void 0 || (_modifiers$jestModifi = modifiers.jestModifier) === null || _modifiers$jestModifi === void 0 || (_modifiers$jestModifi = _modifiers$jestModifi.transformers) === null || _modifiers$jestModifi === void 0 ? void 0 : _modifiers$jestModifi[0]()) || (0, _path().join)(pathToSource, './jest/jest.cjs.config.js');
586
+ const jestPath = (modifiers === null || modifiers === void 0 || (_modifiers$jestModifi2 = modifiers.jestModifier) === null || _modifiers$jestModifi2 === void 0 ? void 0 : _modifiers$jestModifi2.module) || require.resolve('jest');
587
+ const worker = this.getJestWorker();
588
+ const testerTask = _defender3().JestTask.create({
589
+ config: jestConfigPath,
590
+ jest: jestPath
591
+ }, {
592
+ logger: this.logger,
593
+ worker,
594
+ devFiles: this.devFiles
595
+ });
596
+ return [this.createCjsCompilerTask(transformers, (modifiers === null || modifiers === void 0 || (_modifiers$tsModifier2 = modifiers.tsModifier) === null || _modifiers$tsModifier2 === void 0 ? void 0 : _modifiers$tsModifier2.module) || _typescript().default), testerTask];
560
597
  }
561
598
 
562
599
  /**
@@ -1 +1 @@
1
- {"version":3,"names":["_typescript","data","_interopRequireDefault","require","_os","_componentModules","_builder","_lodash","_preview","_defender","_defenderPrettier","_typescript2","_defender2","_defenderEslint","_toolboxPath","_path","_fsExtra","_react","_webpackConfig","_webpackConfigBase","_webpackConfigEnv","_webpackConfigEnv2","_webpackConfigComponent","_webpackConfigComponent2","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ReactEnvType","exports","defaultTsConfig","buildTsConfig","eslintConfig","prettierConfig","ReactEnv","constructor","jestAspect","tsAspect","compiler","webpack","workspace","pkg","tester","config","dependencyResolver","logger","compilerAspectId","getTsConfig","targetTsConfig","merge","getBuildTsConfig","getCjsJestTester","jestConfigPath","jestModulePath","createCjsJestTester","pathToSource","pathNormalizeToLinux","__dirname","replace","defaultConfig","join","createTester","resolve","getEsmJestTester","createEsmJestTester","getTester","createTsCompilerOptions","mode","tsconfig","cloneDeep","compileJs","compileJsx","types","getTsCjsCompiler","transformers","tsModule","ts","createTsCjsCompiler","tsCompileOptions","createCjsCompiler","getTsEsmCompiler","createTsEsmCompiler","createEsmCompiler","getCompiler","getEslintOptions","options","pluginPath","context","mergedConfig","overrideConfig","extensions","extensionFormats","useEslintrc","cwd","fix","fixTypes","assign","getLinter","tsconfigPath","mergedOptions","configMutator","EslintConfigMutator","transformerContext","addExtensionTypes","setTsConfig","afterMutation","runTransformersWithContext","clone","ESLintLinter","create","raw","getFormatter","PrettierConfigMutator","check","PrettierFormatter","getFileMap","components","local","reduce","index","component","state","filesystem","files","forEach","file","path","id","toString","homepage","fullName","ComponentUrl","toUrl","writeFileMap","fileMap","tmpdir","Math","random","slice","outputFileSync","JSON","stringify","getDevEnvId","ReactAspect","getSchemaExtractor","tsserverPath","contextPath","createSchemaExtractor","getDevServer","webpackModulePath","webpackDevServerModulePath","baseConfig","basePreviewConfigFactory","envDevConfig","envPreviewDevConfigFactory","componentDevConfig","componentPreviewDevConfigFactory","defaultTransformer","merged","createDevServer","getBundler","createComponentsWebpackBundler","development","baseProdConfig","basePreviewProdConfigFactory","componentProdConfig","componentPreviewProdConfigFactory","mergedTransformers","createWebpackBundler","createTemplateWebpackBundler","templateConfig","templateWebpackConfigFactory","createBundler","undefined","getAdditionalHostDependencies","getDocsTemplate","getMounter","getPreviewConfig","strategyName","COMPONENT_PREVIEW_STRATEGY_NAME","splitComponentBundle","isScaling","getPackageJsonProps","getCjsPackageJsonProps","createCjsPackageJsonProps","getEsmPackageJsonProps","createEsmPackageJsonProps","getNpmIgnore","CAPSULE_ARTIFACTS_DIR","getDependencies","dependencies","react","devDependencies","peerDependencies","getBuildPipe","modifiers","_modifiers$tsModifier","_modifiers$tsModifier2","tsModifier","createCjsCompilerTask","module","task","getBuildPipeWithoutCompiler","createBuildPipeWithoutCompiler","pipeWithoutCompiler","filter","aspectId","getEsmCompilerTask","createEsmCompilerTask","tsCompiler","createTask","getCjsCompilerTask","workspaceConfig","TypescriptConfigWriter","EslintConfigWriter","configPath","PrettierConfigWriter","__getDescriptor","type","Array","isArray","newConfig","acc","transformer"],"sources":["react.env.ts"],"sourcesContent":["import ts, { TsConfigSourceFile } from 'typescript';\nimport { tmpdir } from 'os';\nimport { Component } from '@teambit/component';\nimport { ESLint as ESLintLib } from 'eslint';\nimport { ComponentUrl } from '@teambit/component.modules.component-url';\nimport { BuildTask, CAPSULE_ARTIFACTS_DIR } from '@teambit/builder';\nimport { merge, cloneDeep } from 'lodash';\nimport { Bundler, BundlerContext, DevServer, DevServerContext } from '@teambit/bundler';\nimport { COMPONENT_PREVIEW_STRATEGY_NAME, PreviewStrategyName } from '@teambit/preview';\nimport { PrettierConfigWriter, PrettierFormatter } from '@teambit/defender.prettier-formatter';\nimport {\n PrettierConfigMutator,\n PrettierConfigTransformContext,\n PrettierConfigTransformer,\n} from '@teambit/defender.prettier.config-mutator';\nimport { TypescriptConfigWriter } from '@teambit/typescript.typescript-compiler';\nimport { EslintConfigWriter, ESLintLinter } from '@teambit/defender.eslint-linter';\nimport type { ESLintOptions } from '@teambit/defender.eslint-linter';\nimport { CompilerMain } from '@teambit/compiler';\nimport {\n BuilderEnv,\n CompilerEnv,\n DependenciesEnv,\n DevEnv,\n LinterEnv,\n PackageEnv,\n TesterEnv,\n FormatterEnv,\n PipeServiceModifier,\n PipeServiceModifiersMap,\n} from '@teambit/envs';\nimport { JestMain } from '@teambit/jest';\nimport { PackageJsonProps, PkgMain } from '@teambit/pkg';\nimport { Tester, TesterMain } from '@teambit/tester';\nimport { TsConfigTransformer, TypescriptMain } from '@teambit/typescript';\nimport type { TypeScriptCompilerOptions } from '@teambit/typescript';\nimport { WebpackConfigTransformer, WebpackMain } from '@teambit/webpack';\nimport { Workspace } from '@teambit/workspace';\nimport {\n EslintConfigMutator,\n EslintConfigTransformContext,\n EslintConfigTransformer,\n} from '@teambit/defender.eslint.config-mutator';\nimport { DependencyResolverMain } from '@teambit/dependency-resolver';\nimport { Linter, LinterContext } from '@teambit/linter';\nimport { Formatter, FormatterContext } from '@teambit/formatter';\nimport { pathNormalizeToLinux } from '@teambit/toolbox.path.path';\nimport type { ComponentMeta } from '@teambit/react.ui.highlighter.component-metadata.bit-component-meta';\nimport { SchemaExtractor } from '@teambit/schema';\nimport { join, resolve } from 'path';\nimport { outputFileSync } from 'fs-extra';\nimport { Logger } from '@teambit/logger';\nimport { ConfigWriterEntry } from '@teambit/workspace-config-files';\n\n// ensure reactEnv depends on compositions-app\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport { CompositionsApp } from '@teambit/react.ui.compositions-app';\n// ensure reactEnv depends on docs-app\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport DocsApps from '@teambit/react.ui.docs-app';\nimport type { ReactMainConfig } from './react.main.runtime';\nimport { ReactAspect } from './react.aspect';\n// webpack configs for both components and envs\nimport basePreviewConfigFactory from './webpack/webpack.config.base';\nimport basePreviewProdConfigFactory from './webpack/webpack.config.base.prod';\n\n// webpack configs for envs only\n// import devPreviewConfigFactory from './webpack/webpack.config.preview.dev';\nimport envPreviewDevConfigFactory from './webpack/webpack.config.env.dev';\nimport { templateWebpackConfigFactory } from './webpack/webpack.config.env.template';\n\n// webpack configs for components only\nimport componentPreviewProdConfigFactory from './webpack/webpack.config.component.prod';\nimport componentPreviewDevConfigFactory from './webpack/webpack.config.component.dev';\n\nexport const ReactEnvType = 'react';\nconst defaultTsConfig = require('./typescript/tsconfig.json');\nconst buildTsConfig = require('./typescript/tsconfig.build.json');\nconst eslintConfig = require('./eslint/eslintrc');\nconst prettierConfig = require('./prettier/prettier.config');\n\n// TODO: move to be taken from the key mode of compiler context\ntype CompilerMode = 'build' | 'dev';\n\ntype GetBuildPipeModifiers = PipeServiceModifiersMap & {\n tsModifier?: PipeServiceModifier;\n};\n\n/**\n * a component environment built for [React](https://reactjs.org) .\n */\nexport class ReactEnv\n implements TesterEnv, CompilerEnv, LinterEnv, DevEnv, BuilderEnv, DependenciesEnv, PackageEnv, FormatterEnv\n{\n constructor(\n /**\n * jest extension\n */\n private jestAspect: JestMain,\n\n /**\n * typescript extension.\n */\n protected tsAspect: TypescriptMain,\n\n /**\n * compiler extension.\n */\n private compiler: CompilerMain,\n\n /**\n * webpack extension.\n */\n private webpack: WebpackMain,\n\n /**\n * workspace extension.\n */\n private workspace: Workspace,\n\n /**\n * pkg extension.\n */\n private pkg: PkgMain,\n\n /**\n * tester extension\n */\n private tester: TesterMain,\n\n private config: ReactMainConfig,\n\n private dependencyResolver: DependencyResolverMain,\n\n private logger: Logger,\n\n private compilerAspectId: string\n ) {}\n\n getTsConfig(targetTsConfig?: TsConfigSourceFile): TsConfigSourceFile {\n return targetTsConfig ? merge({}, defaultTsConfig, targetTsConfig) : defaultTsConfig;\n }\n\n getBuildTsConfig(targetTsConfig?: TsConfigSourceFile): TsConfigSourceFile {\n return targetTsConfig ? merge({}, buildTsConfig, targetTsConfig) : buildTsConfig;\n }\n\n /**\n * @deprecated use createCjsJestTester()\n */\n getCjsJestTester(jestConfigPath?: string, jestModulePath?: string): Tester {\n return this.createCjsJestTester(jestConfigPath, jestModulePath);\n }\n\n /**\n * Get a jest tester instance with react config and cjs configs\n * @param jestConfigPath\n * @param jestModulePath\n * @returns\n */\n createCjsJestTester(jestConfigPath?: string, jestModulePath?: string): Tester {\n const pathToSource = pathNormalizeToLinux(__dirname).replace('/dist', '');\n const defaultConfig = join(pathToSource, './jest/jest.cjs.config.js');\n const config = jestConfigPath || defaultConfig;\n return this.jestAspect.createTester(config, jestModulePath || require.resolve('jest'));\n }\n\n /**\n * @deprecated use createEsmJestTester()\n */\n getEsmJestTester(jestConfigPath?: string, jestModulePath?: string): Tester {\n return this.createEsmJestTester(jestConfigPath, jestModulePath);\n }\n\n /**\n * Get a jest tester instance with react config and esm configs\n * @param jestConfigPath\n * @param jestModulePath\n * @returns\n */\n createEsmJestTester(jestConfigPath?: string, jestModulePath?: string): Tester {\n const pathToSource = pathNormalizeToLinux(__dirname).replace('/dist', '');\n const defaultConfig = join(pathToSource, './jest/jest.esm.config.js');\n const config = jestConfigPath || defaultConfig;\n return this.jestAspect.createTester(config, jestModulePath || require.resolve('jest'));\n }\n\n /**\n * returns a component tester.\n */\n getTester(jestConfigPath: string, jestModulePath?: string): Tester {\n // return this.createEsmJestTester(jestConfigPath, jestModulePath);\n return this.createCjsJestTester(jestConfigPath, jestModulePath);\n }\n\n private createTsCompilerOptions(mode: CompilerMode = 'dev'): TypeScriptCompilerOptions {\n const tsconfig = mode === 'dev' ? cloneDeep(defaultTsConfig) : cloneDeep(buildTsConfig);\n const pathToSource = pathNormalizeToLinux(__dirname).replace('/dist/', '/src/');\n const compileJs = true;\n const compileJsx = true;\n return {\n tsconfig,\n // TODO: @david please remove this line and refactor to be something that makes sense.\n types: [resolve(pathToSource, './typescript/style.d.ts'), resolve(pathToSource, './typescript/asset.d.ts')],\n compileJs,\n compileJsx,\n };\n }\n\n /**\n * @deprecated use createTsCjsCompiler()\n */\n getTsCjsCompiler(mode: CompilerMode = 'dev', transformers: TsConfigTransformer[] = [], tsModule = ts) {\n return this.createTsCjsCompiler(mode, transformers, tsModule);\n }\n\n /**\n * Get a compiler instance with react config and set it to cjs module\n * @param mode\n * @param transformers\n * @param tsModule\n * @returns\n */\n createTsCjsCompiler(mode: CompilerMode = 'dev', transformers: TsConfigTransformer[] = [], tsModule = ts) {\n const tsCompileOptions = this.createTsCompilerOptions(mode);\n return this.tsAspect.createCjsCompiler(tsCompileOptions, transformers, tsModule);\n }\n\n /**\n * @deprecated use createTsEsmCompiler()\n */\n getTsEsmCompiler(mode: CompilerMode = 'dev', transformers: TsConfigTransformer[] = [], tsModule = ts) {\n this.createTsEsmCompiler(mode, transformers, tsModule);\n }\n\n /**\n * Get a compiler instance with react config and set it to esm module\n * @param mode\n * @param transformers\n * @param tsModule\n * @returns\n */\n createTsEsmCompiler(mode: CompilerMode = 'dev', transformers: TsConfigTransformer[] = [], tsModule = ts) {\n const tsCompileOptions = this.createTsCompilerOptions(mode);\n return this.tsAspect.createEsmCompiler(tsCompileOptions, transformers, tsModule);\n }\n\n getCompiler(transformers: TsConfigTransformer[] = [], tsModule = ts) {\n // return this.getTsEsmCompiler('dev', transformers, tsModule);\n return this.createTsCjsCompiler('dev', transformers, tsModule);\n }\n\n private getEslintOptions(options: ESLintLib.Options, pluginPath: string, context: LinterContext): ESLintOptions {\n const mergedConfig: ESLintLib.Options = {\n // @ts-ignore - this is a bug in the @types/eslint types\n overrideConfig: options,\n extensions: context.extensionFormats,\n useEslintrc: false,\n // TODO: this should be probably be replaced with resolve-plugins-relative-to\n // https://eslint.org/docs/latest/use/command-line-interface#--resolve-plugins-relative-to\n cwd: pluginPath,\n fix: !!context.fix,\n fixTypes: context.fixTypes,\n };\n return Object.assign({}, options, { config: mergedConfig, extensions: context.extensionFormats });\n }\n\n /**\n * returns and configures the component linter.\n */\n getLinter(context: LinterContext, transformers: EslintConfigTransformer[] = []): Linter {\n const tsconfigPath = require.resolve('./typescript/tsconfig.json');\n\n // resolve all plugins from the react environment.\n const mergedOptions = this.getEslintOptions(eslintConfig, __dirname, context);\n const configMutator = new EslintConfigMutator(mergedOptions);\n const transformerContext: EslintConfigTransformContext = { fix: !!context.fix };\n configMutator.addExtensionTypes(['.md', '.mdx']);\n configMutator.setTsConfig(tsconfigPath);\n const afterMutation = runTransformersWithContext(configMutator.clone(), transformers, transformerContext);\n return ESLintLinter.create(afterMutation.raw, { logger: this.logger });\n }\n\n /**\n * returns and configures the component formatter.\n */\n getFormatter(context: FormatterContext, transformers: PrettierConfigTransformer[] = []): Formatter {\n const configMutator = new PrettierConfigMutator(prettierConfig);\n const transformerContext: PrettierConfigTransformContext = { check: !!context?.check };\n const afterMutation = runTransformersWithContext(configMutator.clone(), transformers, transformerContext);\n return PrettierFormatter.create({ config: afterMutation.raw }, { logger: this.logger });\n }\n\n private getFileMap(components: Component[], local = false) {\n return components.reduce<{ [key: string]: ComponentMeta }>((index, component: Component) => {\n component.state.filesystem.files.forEach((file) => {\n index[file.path] = {\n id: component.id.toString(),\n homepage: local ? `/${component.id.fullName}` : ComponentUrl.toUrl(component.id),\n };\n });\n\n return index;\n }, {});\n }\n\n private writeFileMap(components: Component[], local?: boolean) {\n const fileMap = this.getFileMap(components, local);\n const path = join(tmpdir(), `${Math.random().toString(36).slice(2, 11)}.json`);\n outputFileSync(path, JSON.stringify(fileMap));\n return path;\n }\n\n /**\n * required for `bit start`\n */\n getDevEnvId(id?: string) {\n if (typeof id !== 'string') return ReactAspect.id;\n return id || ReactAspect.id;\n }\n\n /**\n * get a schema generator instance configured with the correct tsconfig.\n */\n getSchemaExtractor(tsconfig: TsConfigSourceFile, tsserverPath?: string, contextPath?: string): SchemaExtractor {\n return this.tsAspect.createSchemaExtractor(this.getTsConfig(tsconfig), tsserverPath, contextPath);\n }\n\n /**\n * returns and configures the React component dev server.\n * required for `bit start`\n */\n getDevServer(\n context: DevServerContext,\n transformers: WebpackConfigTransformer[] = [],\n webpackModulePath?: string,\n webpackDevServerModulePath?: string\n ): DevServer {\n const baseConfig = basePreviewConfigFactory(false);\n const envDevConfig = envPreviewDevConfigFactory(context.id);\n const componentDevConfig = componentPreviewDevConfigFactory(this.workspace.path, context.id);\n\n const defaultTransformer: WebpackConfigTransformer = (configMutator) => {\n const merged = configMutator.merge([baseConfig, envDevConfig, componentDevConfig]);\n return merged;\n };\n\n return this.webpack.createDevServer(\n context,\n [defaultTransformer, ...transformers],\n webpackModulePath,\n webpackDevServerModulePath\n );\n }\n\n async getBundler(\n context: BundlerContext,\n transformers: WebpackConfigTransformer[] = [],\n webpackModulePath?: string\n ): Promise<Bundler> {\n return this.createComponentsWebpackBundler(context, transformers, webpackModulePath);\n }\n\n async createComponentsWebpackBundler(\n context: BundlerContext,\n transformers: WebpackConfigTransformer[] = [],\n webpackModulePath?: string\n ): Promise<Bundler> {\n const baseConfig = basePreviewConfigFactory(!context.development);\n const baseProdConfig = basePreviewProdConfigFactory(context.development);\n const componentProdConfig = componentPreviewProdConfigFactory();\n\n const defaultTransformer: WebpackConfigTransformer = (configMutator) => {\n const merged = configMutator.merge([baseConfig, baseProdConfig, componentProdConfig]);\n return merged;\n };\n const mergedTransformers = [defaultTransformer, ...transformers];\n return this.createWebpackBundler(context, mergedTransformers, webpackModulePath);\n }\n\n async createTemplateWebpackBundler(\n context: BundlerContext,\n transformers: WebpackConfigTransformer[] = [],\n webpackModulePath?: string\n ): Promise<Bundler> {\n const baseConfig = basePreviewConfigFactory(!context.development);\n const baseProdConfig = basePreviewProdConfigFactory(context.development);\n const templateConfig = templateWebpackConfigFactory();\n\n const defaultTransformer: WebpackConfigTransformer = (configMutator) => {\n const merged = configMutator.merge([baseConfig, baseProdConfig, templateConfig]);\n return merged;\n };\n const mergedTransformers = [defaultTransformer, ...transformers];\n return this.createWebpackBundler(context, mergedTransformers, webpackModulePath);\n }\n\n private async createWebpackBundler(\n context: BundlerContext,\n transformers: WebpackConfigTransformer[] = [],\n webpackModulePath?: string\n ): Promise<Bundler> {\n return this.webpack.createBundler(context, transformers, undefined, webpackModulePath);\n }\n\n getAdditionalHostDependencies(): string[] {\n return ['@teambit/mdx.ui.mdx-scope-context', '@mdx-js/react', 'react', 'react-dom'];\n }\n\n /**\n * returns a path to a docs template.\n */\n getDocsTemplate() {\n return require.resolve('@teambit/react.ui.docs-app');\n }\n\n icon = 'https://static.bit.dev/extensions-icons/react.svg';\n\n /**\n * returns the path to the compositions template\n */\n getMounter() {\n return require.resolve('@teambit/react.ui.compositions-app');\n }\n\n getPreviewConfig() {\n return {\n strategyName: COMPONENT_PREVIEW_STRATEGY_NAME as PreviewStrategyName,\n splitComponentBundle: true,\n isScaling: true,\n };\n }\n\n /**\n * define the package json properties to add to each component.\n */\n getPackageJsonProps(): PackageJsonProps {\n // React compile by default to esm, so uses type module\n // return this.getEsmPackageJsonProps();\n return this.getCjsPackageJsonProps();\n }\n\n /**\n * @deprecated use createCjsPackageJsonProps()\n */\n getCjsPackageJsonProps(): PackageJsonProps {\n return this.createCjsPackageJsonProps();\n }\n\n /**\n * Get the default package.json props for a cjs component\n * @returns\n */\n createCjsPackageJsonProps(): PackageJsonProps {\n return this.tsAspect.getCjsPackageJsonProps();\n }\n\n /**\n * @deprecated use createEsmPackageJsonProps()\n */\n getEsmPackageJsonProps(): PackageJsonProps {\n return this.createEsmPackageJsonProps();\n }\n\n /**\n * Get the default package.json props for an esm component\n * @returns\n */\n createEsmPackageJsonProps(): PackageJsonProps {\n return this.tsAspect.getEsmPackageJsonProps();\n }\n\n getNpmIgnore() {\n return [`${CAPSULE_ARTIFACTS_DIR}/`];\n }\n\n /**\n * adds dependencies to all configured components.\n */\n getDependencies() {\n return {\n dependencies: {\n react: '-',\n 'react-dom': '-',\n 'core-js': '^3.0.0',\n },\n // TODO: add this only if using ts\n devDependencies: {\n react: '-',\n 'react-dom': '-',\n '@types/mocha': '-',\n '@types/node': '12.20.4',\n '@types/react': '^17.0.8',\n '@types/react-dom': '^17.0.5',\n '@types/jest': '^26.0.0',\n // This is added as dev dep since our jest file transformer uses babel plugins that require this to be installed\n '@babel/runtime': '7.20.0',\n '@types/testing-library__jest-dom': '5.9.5',\n },\n peerDependencies: {\n react: '^16.8.0 || ^17.0.0',\n 'react-dom': '^16.8.0 || ^17.0.0',\n },\n };\n }\n\n /**\n * returns the component build pipeline.\n */\n getBuildPipe(modifiers: GetBuildPipeModifiers = {}): BuildTask[] {\n const transformers: Function[] = modifiers?.tsModifier?.transformers || [];\n return [this.createCjsCompilerTask(transformers, modifiers?.tsModifier?.module || ts), this.tester.task];\n }\n\n /**\n * @deprecated use createBuildPipeWithoutCompiler()\n */\n getBuildPipeWithoutCompiler(): BuildTask[] {\n return this.createBuildPipeWithoutCompiler();\n }\n\n /**\n * Get the react build pipeline without the compilation task.\n * This help in cases you want to only replace the compilation task with something else\n * @returns\n */\n createBuildPipeWithoutCompiler(): BuildTask[] {\n const pipeWithoutCompiler = this.getBuildPipe().filter((task) => task.aspectId !== this.compilerAspectId);\n return pipeWithoutCompiler;\n }\n\n /**\n * @deprecated use createEsmCompilerTask()\n */\n getEsmCompilerTask(transformers: TsConfigTransformer[] = [], tsModule = ts) {\n return this.createEsmCompilerTask(transformers as Function[], tsModule);\n }\n\n /**\n * Get a compiler task with react config and set to esm module\n * @param transformers\n * @param tsModule\n * @returns\n */\n createEsmCompilerTask(transformers: Function[] = [], tsModule = ts) {\n const tsCompiler = this.createTsEsmCompiler('build', transformers as TsConfigTransformer[], tsModule);\n return this.compiler.createTask('TSCompiler', tsCompiler);\n }\n\n /**\n * @deprecated use createCjsCompilerTask()\n * */\n getCjsCompilerTask(transformers: TsConfigTransformer[] = [], tsModule = ts) {\n return this.createCjsCompilerTask(transformers as Function[], tsModule);\n }\n\n /**\n * Get a compiler task with react config and set to cjs module\n * @param transformers\n * @param tsModule\n * @returns\n */\n createCjsCompilerTask(transformers: Function[] = [], tsModule = ts) {\n const tsCompiler = this.createTsCjsCompiler('build', transformers as TsConfigTransformer[], tsModule);\n return this.compiler.createTask('TSCompiler', tsCompiler);\n }\n\n workspaceConfig(): ConfigWriterEntry[] {\n return [\n TypescriptConfigWriter.create(\n {\n tsconfig: require.resolve('./typescript/tsconfig.cjs.json'),\n // types: resolveTypes(__dirname, [\"./types\"]),\n },\n this.logger\n ),\n EslintConfigWriter.create(\n {\n configPath: require.resolve('./eslint/eslintrc.js'),\n tsconfig: require.resolve('./typescript/tsconfig.cjs.json'),\n },\n this.logger\n ),\n PrettierConfigWriter.create(\n {\n configPath: require.resolve('./prettier/prettier.config.js'),\n },\n this.logger\n ),\n ];\n }\n\n async __getDescriptor() {\n return {\n type: ReactEnvType,\n };\n }\n}\n\nexport function runTransformersWithContext<P, T extends Function, C>(config: P, transformers: T[] = [], context: C): P {\n if (!Array.isArray(transformers)) return config;\n const newConfig = transformers.reduce((acc, transformer) => {\n return transformer(acc, context);\n }, config);\n return newConfig;\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_typescript","data","_interopRequireDefault","require","_os","_componentModules","_builder","_lodash","_preview","_defender","_defenderPrettier","_typescript2","_defender2","_defender3","_defenderEslint","_toolboxPath","_path","_fsExtra","_react","_webpackConfig","_webpackConfigBase","_webpackConfigEnv","_webpackConfigEnv2","_webpackConfigComponent","_webpackConfigComponent2","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ReactEnvType","exports","defaultTsConfig","buildTsConfig","eslintConfig","prettierConfig","ReactEnv","constructor","tsAspect","compiler","webpack","workspace","worker","pkg","tester","config","dependencyResolver","devFiles","logger","compilerAspectId","getTsConfig","targetTsConfig","merge","getBuildTsConfig","getCjsJestTester","jestConfigPath","jestModulePath","createCjsJestTester","pathToSource","pathNormalizeToLinux","__dirname","replace","defaultConfig","join","getJestWorker","JestTester","create","jest","resolve","declareWorker","jestWorkerPath","getEsmJestTester","createEsmJestTester","getTester","createTsCompilerOptions","mode","tsconfig","cloneDeep","compileJs","compileJsx","types","getTsCjsCompiler","transformers","tsModule","ts","createTsCjsCompiler","tsCompileOptions","createCjsCompiler","getTsEsmCompiler","createTsEsmCompiler","createEsmCompiler","getCompiler","getEslintOptions","options","pluginPath","context","mergedConfig","overrideConfig","extensions","extensionFormats","useEslintrc","cwd","fix","fixTypes","assign","getLinter","tsconfigPath","mergedOptions","configMutator","EslintConfigMutator","transformerContext","addExtensionTypes","setTsConfig","afterMutation","runTransformersWithContext","clone","ESLintLinter","raw","getFormatter","PrettierConfigMutator","check","PrettierFormatter","getFileMap","components","local","reduce","index","component","state","filesystem","files","forEach","file","path","id","toString","homepage","fullName","ComponentUrl","toUrl","writeFileMap","fileMap","tmpdir","Math","random","slice","outputFileSync","JSON","stringify","getDevEnvId","ReactAspect","getSchemaExtractor","tsserverPath","contextPath","createSchemaExtractor","getDevServer","webpackModulePath","webpackDevServerModulePath","baseConfig","basePreviewConfigFactory","envDevConfig","envPreviewDevConfigFactory","componentDevConfig","componentPreviewDevConfigFactory","defaultTransformer","merged","createDevServer","getBundler","createComponentsWebpackBundler","development","baseProdConfig","basePreviewProdConfigFactory","componentProdConfig","componentPreviewProdConfigFactory","mergedTransformers","createWebpackBundler","createTemplateWebpackBundler","templateConfig","templateWebpackConfigFactory","createBundler","undefined","getAdditionalHostDependencies","getDocsTemplate","getMounter","getPreviewConfig","strategyName","COMPONENT_PREVIEW_STRATEGY_NAME","splitComponentBundle","isScaling","getPackageJsonProps","getCjsPackageJsonProps","createCjsPackageJsonProps","getEsmPackageJsonProps","createEsmPackageJsonProps","getNpmIgnore","CAPSULE_ARTIFACTS_DIR","getDependencies","dependencies","react","devDependencies","peerDependencies","getBuildPipe","modifiers","_modifiers$tsModifier","_modifiers$jestModifi","_modifiers$jestModifi2","_modifiers$tsModifier2","tsModifier","jestModifier","jestPath","module","testerTask","JestTask","createCjsCompilerTask","getBuildPipeWithoutCompiler","createBuildPipeWithoutCompiler","pipeWithoutCompiler","filter","task","aspectId","getEsmCompilerTask","createEsmCompilerTask","tsCompiler","createTask","getCjsCompilerTask","workspaceConfig","TypescriptConfigWriter","EslintConfigWriter","configPath","PrettierConfigWriter","__getDescriptor","type","Array","isArray","newConfig","acc","transformer"],"sources":["react.env.ts"],"sourcesContent":["import ts, { TsConfigSourceFile } from 'typescript';\nimport { tmpdir } from 'os';\nimport { Component } from '@teambit/component';\nimport { ESLint as ESLintLib } from 'eslint';\nimport { ComponentUrl } from '@teambit/component.modules.component-url';\nimport { BuildTask, CAPSULE_ARTIFACTS_DIR } from '@teambit/builder';\nimport { merge, cloneDeep } from 'lodash';\nimport { Bundler, BundlerContext, DevServer, DevServerContext } from '@teambit/bundler';\nimport { COMPONENT_PREVIEW_STRATEGY_NAME, PreviewStrategyName } from '@teambit/preview';\nimport { PrettierConfigWriter, PrettierFormatter } from '@teambit/defender.prettier-formatter';\nimport {\n PrettierConfigMutator,\n PrettierConfigTransformContext,\n PrettierConfigTransformer,\n} from '@teambit/defender.prettier.config-mutator';\nimport { TypescriptConfigWriter } from '@teambit/typescript.typescript-compiler';\nimport { EslintConfigWriter, ESLintLinter } from '@teambit/defender.eslint-linter';\nimport type { ESLintOptions } from '@teambit/defender.eslint-linter';\nimport { CompilerMain } from '@teambit/compiler';\nimport {\n BuilderEnv,\n CompilerEnv,\n DependenciesEnv,\n DevEnv,\n LinterEnv,\n PackageEnv,\n TesterEnv,\n FormatterEnv,\n PipeServiceModifier,\n PipeServiceModifiersMap,\n} from '@teambit/envs';\nimport { JestTask, JestTester, jestWorkerPath } from '@teambit/defender.jest-tester';\nimport type { JestWorker } from '@teambit/defender.jest-tester';\nimport { PackageJsonProps, PkgMain } from '@teambit/pkg';\nimport { Tester, TesterMain } from '@teambit/tester';\nimport { TsConfigTransformer, TypescriptMain } from '@teambit/typescript';\nimport type { TypeScriptCompilerOptions } from '@teambit/typescript';\nimport { WebpackConfigTransformer, WebpackMain } from '@teambit/webpack';\nimport { Workspace } from '@teambit/workspace';\nimport {\n EslintConfigMutator,\n EslintConfigTransformContext,\n EslintConfigTransformer,\n} from '@teambit/defender.eslint.config-mutator';\nimport { DependencyResolverMain } from '@teambit/dependency-resolver';\nimport { Linter, LinterContext } from '@teambit/linter';\nimport { Formatter, FormatterContext } from '@teambit/formatter';\nimport { pathNormalizeToLinux } from '@teambit/toolbox.path.path';\nimport type { ComponentMeta } from '@teambit/react.ui.highlighter.component-metadata.bit-component-meta';\nimport { SchemaExtractor } from '@teambit/schema';\nimport { join, resolve } from 'path';\nimport { outputFileSync } from 'fs-extra';\nimport { Logger } from '@teambit/logger';\nimport { ConfigWriterEntry } from '@teambit/workspace-config-files';\n\n// ensure reactEnv depends on compositions-app\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport { CompositionsApp } from '@teambit/react.ui.compositions-app';\n// ensure reactEnv depends on docs-app\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport DocsApps from '@teambit/react.ui.docs-app';\nimport type { ReactMainConfig } from './react.main.runtime';\nimport { ReactAspect } from './react.aspect';\n// webpack configs for both components and envs\nimport basePreviewConfigFactory from './webpack/webpack.config.base';\nimport basePreviewProdConfigFactory from './webpack/webpack.config.base.prod';\n\n// webpack configs for envs only\n// import devPreviewConfigFactory from './webpack/webpack.config.preview.dev';\nimport envPreviewDevConfigFactory from './webpack/webpack.config.env.dev';\nimport { templateWebpackConfigFactory } from './webpack/webpack.config.env.template';\n\n// webpack configs for components only\nimport componentPreviewProdConfigFactory from './webpack/webpack.config.component.prod';\nimport componentPreviewDevConfigFactory from './webpack/webpack.config.component.dev';\nimport type { WorkerMain } from '@teambit/worker';\nimport type { DevFilesMain } from '@teambit/dev-files';\n\nexport const ReactEnvType = 'react';\nconst defaultTsConfig = require('./typescript/tsconfig.json');\nconst buildTsConfig = require('./typescript/tsconfig.build.json');\nconst eslintConfig = require('./eslint/eslintrc');\nconst prettierConfig = require('./prettier/prettier.config');\n\n// TODO: move to be taken from the key mode of compiler context\ntype CompilerMode = 'build' | 'dev';\n\ntype GetBuildPipeModifiers = PipeServiceModifiersMap & {\n tsModifier?: PipeServiceModifier;\n jestModifier?: PipeServiceModifier;\n};\n\n/**\n * a component environment built for [React](https://reactjs.org) .\n */\nexport class ReactEnv\n implements TesterEnv, CompilerEnv, LinterEnv, DevEnv, BuilderEnv, DependenciesEnv, PackageEnv, FormatterEnv\n{\n constructor(\n /**\n * typescript extension.\n */\n protected tsAspect: TypescriptMain,\n\n /**\n * compiler extension.\n */\n private compiler: CompilerMain,\n\n /**\n * webpack extension.\n */\n private webpack: WebpackMain,\n\n /**\n * workspace extension.\n */\n private workspace: Workspace,\n\n /**\n * worker extension.\n */\n private worker: WorkerMain,\n\n /**\n * pkg extension.\n */\n private pkg: PkgMain,\n\n /**\n * tester extension\n */\n private tester: TesterMain,\n\n private config: ReactMainConfig,\n\n private dependencyResolver: DependencyResolverMain,\n\n private devFiles: DevFilesMain,\n\n private logger: Logger,\n\n private compilerAspectId: string\n ) {}\n\n getTsConfig(targetTsConfig?: TsConfigSourceFile): TsConfigSourceFile {\n return targetTsConfig ? merge({}, defaultTsConfig, targetTsConfig) : defaultTsConfig;\n }\n\n getBuildTsConfig(targetTsConfig?: TsConfigSourceFile): TsConfigSourceFile {\n return targetTsConfig ? merge({}, buildTsConfig, targetTsConfig) : buildTsConfig;\n }\n\n /**\n * @deprecated use createCjsJestTester()\n */\n getCjsJestTester(jestConfigPath?: string, jestModulePath?: string): Tester {\n return this.createCjsJestTester(jestConfigPath, jestModulePath);\n }\n\n /**\n * Get a jest tester instance with react config and cjs configs\n * @param jestConfigPath\n * @param jestModulePath\n * @returns\n */\n createCjsJestTester(jestConfigPath?: string, jestModulePath?: string): Tester {\n const pathToSource = pathNormalizeToLinux(__dirname).replace('/dist', '');\n const defaultConfig = join(pathToSource, './jest/jest.cjs.config.js');\n const config = jestConfigPath || defaultConfig;\n const worker = this.getJestWorker();\n const tester = JestTester.create(\n {\n jest: jestModulePath || require.resolve('jest'),\n config,\n },\n { logger: this.logger, worker }\n );\n\n return tester;\n }\n\n private getJestWorker() {\n return this.worker.declareWorker<JestWorker>('jest', jestWorkerPath);\n }\n\n /**\n * @deprecated use createEsmJestTester()\n */\n getEsmJestTester(jestConfigPath?: string, jestModulePath?: string): Tester {\n return this.createEsmJestTester(jestConfigPath, jestModulePath);\n }\n\n /**\n * Get a jest tester instance with react config and esm configs\n * @param jestConfigPath\n * @param jestModulePath\n * @returns\n */\n createEsmJestTester(jestConfigPath?: string, jestModulePath?: string): Tester {\n const pathToSource = pathNormalizeToLinux(__dirname).replace('/dist', '');\n const defaultConfig = join(pathToSource, './jest/jest.esm.config.js');\n const config = jestConfigPath || defaultConfig;\n const worker = this.getJestWorker();\n return JestTester.create(\n {\n jest: jestModulePath || require.resolve('jest'),\n config,\n },\n { logger: this.logger, worker }\n );\n }\n\n /**\n * returns a component tester.\n */\n getTester(jestConfigPath: string, jestModulePath?: string): Tester {\n return this.createCjsJestTester(jestConfigPath, jestModulePath);\n }\n\n private createTsCompilerOptions(mode: CompilerMode = 'dev'): TypeScriptCompilerOptions {\n const tsconfig = mode === 'dev' ? cloneDeep(defaultTsConfig) : cloneDeep(buildTsConfig);\n const pathToSource = pathNormalizeToLinux(__dirname).replace('/dist/', '/src/');\n const compileJs = true;\n const compileJsx = true;\n return {\n tsconfig,\n // TODO: @david please remove this line and refactor to be something that makes sense.\n types: [resolve(pathToSource, './typescript/style.d.ts'), resolve(pathToSource, './typescript/asset.d.ts')],\n compileJs,\n compileJsx,\n };\n }\n\n /**\n * @deprecated use createTsCjsCompiler()\n */\n getTsCjsCompiler(mode: CompilerMode = 'dev', transformers: TsConfigTransformer[] = [], tsModule = ts) {\n return this.createTsCjsCompiler(mode, transformers, tsModule);\n }\n\n /**\n * Get a compiler instance with react config and set it to cjs module\n * @param mode\n * @param transformers\n * @param tsModule\n * @returns\n */\n createTsCjsCompiler(mode: CompilerMode = 'dev', transformers: TsConfigTransformer[] = [], tsModule = ts) {\n const tsCompileOptions = this.createTsCompilerOptions(mode);\n return this.tsAspect.createCjsCompiler(tsCompileOptions, transformers, tsModule);\n }\n\n /**\n * @deprecated use createTsEsmCompiler()\n */\n getTsEsmCompiler(mode: CompilerMode = 'dev', transformers: TsConfigTransformer[] = [], tsModule = ts) {\n this.createTsEsmCompiler(mode, transformers, tsModule);\n }\n\n /**\n * Get a compiler instance with react config and set it to esm module\n * @param mode\n * @param transformers\n * @param tsModule\n * @returns\n */\n createTsEsmCompiler(mode: CompilerMode = 'dev', transformers: TsConfigTransformer[] = [], tsModule = ts) {\n const tsCompileOptions = this.createTsCompilerOptions(mode);\n return this.tsAspect.createEsmCompiler(tsCompileOptions, transformers, tsModule);\n }\n\n getCompiler(transformers: TsConfigTransformer[] = [], tsModule = ts) {\n // return this.getTsEsmCompiler('dev', transformers, tsModule);\n return this.createTsCjsCompiler('dev', transformers, tsModule);\n }\n\n private getEslintOptions(options: ESLintLib.Options, pluginPath: string, context: LinterContext): ESLintOptions {\n const mergedConfig: ESLintLib.Options = {\n // @ts-ignore - this is a bug in the @types/eslint types\n overrideConfig: options,\n extensions: context.extensionFormats,\n useEslintrc: false,\n // TODO: this should be probably be replaced with resolve-plugins-relative-to\n // https://eslint.org/docs/latest/use/command-line-interface#--resolve-plugins-relative-to\n cwd: pluginPath,\n fix: !!context.fix,\n fixTypes: context.fixTypes,\n };\n return Object.assign({}, options, { config: mergedConfig, extensions: context.extensionFormats });\n }\n\n /**\n * returns and configures the component linter.\n */\n getLinter(context: LinterContext, transformers: EslintConfigTransformer[] = []): Linter {\n const tsconfigPath = require.resolve('./typescript/tsconfig.json');\n\n // resolve all plugins from the react environment.\n const mergedOptions = this.getEslintOptions(eslintConfig, __dirname, context);\n const configMutator = new EslintConfigMutator(mergedOptions);\n const transformerContext: EslintConfigTransformContext = { fix: !!context.fix };\n configMutator.addExtensionTypes(['.md', '.mdx']);\n configMutator.setTsConfig(tsconfigPath);\n const afterMutation = runTransformersWithContext(configMutator.clone(), transformers, transformerContext);\n return ESLintLinter.create(afterMutation.raw, { logger: this.logger });\n }\n\n /**\n * returns and configures the component formatter.\n */\n getFormatter(context: FormatterContext, transformers: PrettierConfigTransformer[] = []): Formatter {\n const configMutator = new PrettierConfigMutator(prettierConfig);\n const transformerContext: PrettierConfigTransformContext = { check: !!context?.check };\n const afterMutation = runTransformersWithContext(configMutator.clone(), transformers, transformerContext);\n return PrettierFormatter.create({ config: afterMutation.raw }, { logger: this.logger });\n }\n\n private getFileMap(components: Component[], local = false) {\n return components.reduce<{ [key: string]: ComponentMeta }>((index, component: Component) => {\n component.state.filesystem.files.forEach((file) => {\n index[file.path] = {\n id: component.id.toString(),\n homepage: local ? `/${component.id.fullName}` : ComponentUrl.toUrl(component.id),\n };\n });\n\n return index;\n }, {});\n }\n\n private writeFileMap(components: Component[], local?: boolean) {\n const fileMap = this.getFileMap(components, local);\n const path = join(tmpdir(), `${Math.random().toString(36).slice(2, 11)}.json`);\n outputFileSync(path, JSON.stringify(fileMap));\n return path;\n }\n\n /**\n * required for `bit start`\n */\n getDevEnvId(id?: string) {\n if (typeof id !== 'string') return ReactAspect.id;\n return id || ReactAspect.id;\n }\n\n /**\n * get a schema generator instance configured with the correct tsconfig.\n */\n getSchemaExtractor(tsconfig: TsConfigSourceFile, tsserverPath?: string, contextPath?: string): SchemaExtractor {\n return this.tsAspect.createSchemaExtractor(this.getTsConfig(tsconfig), tsserverPath, contextPath);\n }\n\n /**\n * returns and configures the React component dev server.\n * required for `bit start`\n */\n getDevServer(\n context: DevServerContext,\n transformers: WebpackConfigTransformer[] = [],\n webpackModulePath?: string,\n webpackDevServerModulePath?: string\n ): DevServer {\n const baseConfig = basePreviewConfigFactory(false);\n const envDevConfig = envPreviewDevConfigFactory(context.id);\n const componentDevConfig = componentPreviewDevConfigFactory(this.workspace.path, context.id);\n\n const defaultTransformer: WebpackConfigTransformer = (configMutator) => {\n const merged = configMutator.merge([baseConfig, envDevConfig, componentDevConfig]);\n return merged;\n };\n\n return this.webpack.createDevServer(\n context,\n [defaultTransformer, ...transformers],\n webpackModulePath,\n webpackDevServerModulePath\n );\n }\n\n async getBundler(\n context: BundlerContext,\n transformers: WebpackConfigTransformer[] = [],\n webpackModulePath?: string\n ): Promise<Bundler> {\n return this.createComponentsWebpackBundler(context, transformers, webpackModulePath);\n }\n\n async createComponentsWebpackBundler(\n context: BundlerContext,\n transformers: WebpackConfigTransformer[] = [],\n webpackModulePath?: string\n ): Promise<Bundler> {\n const baseConfig = basePreviewConfigFactory(!context.development);\n const baseProdConfig = basePreviewProdConfigFactory(context.development);\n const componentProdConfig = componentPreviewProdConfigFactory();\n\n const defaultTransformer: WebpackConfigTransformer = (configMutator) => {\n const merged = configMutator.merge([baseConfig, baseProdConfig, componentProdConfig]);\n return merged;\n };\n const mergedTransformers = [defaultTransformer, ...transformers];\n return this.createWebpackBundler(context, mergedTransformers, webpackModulePath);\n }\n\n async createTemplateWebpackBundler(\n context: BundlerContext,\n transformers: WebpackConfigTransformer[] = [],\n webpackModulePath?: string\n ): Promise<Bundler> {\n const baseConfig = basePreviewConfigFactory(!context.development);\n const baseProdConfig = basePreviewProdConfigFactory(context.development);\n const templateConfig = templateWebpackConfigFactory();\n\n const defaultTransformer: WebpackConfigTransformer = (configMutator) => {\n const merged = configMutator.merge([baseConfig, baseProdConfig, templateConfig]);\n return merged;\n };\n const mergedTransformers = [defaultTransformer, ...transformers];\n return this.createWebpackBundler(context, mergedTransformers, webpackModulePath);\n }\n\n private async createWebpackBundler(\n context: BundlerContext,\n transformers: WebpackConfigTransformer[] = [],\n webpackModulePath?: string\n ): Promise<Bundler> {\n return this.webpack.createBundler(context, transformers, undefined, webpackModulePath);\n }\n\n getAdditionalHostDependencies(): string[] {\n return ['@teambit/mdx.ui.mdx-scope-context', '@mdx-js/react', 'react', 'react-dom'];\n }\n\n /**\n * returns a path to a docs template.\n */\n getDocsTemplate() {\n return require.resolve('@teambit/react.ui.docs-app');\n }\n\n icon = 'https://static.bit.dev/extensions-icons/react.svg';\n\n /**\n * returns the path to the compositions template\n */\n getMounter() {\n return require.resolve('@teambit/react.ui.compositions-app');\n }\n\n getPreviewConfig() {\n return {\n strategyName: COMPONENT_PREVIEW_STRATEGY_NAME as PreviewStrategyName,\n splitComponentBundle: true,\n isScaling: true,\n };\n }\n\n /**\n * define the package json properties to add to each component.\n */\n getPackageJsonProps(): PackageJsonProps {\n // React compile by default to esm, so uses type module\n // return this.getEsmPackageJsonProps();\n return this.getCjsPackageJsonProps();\n }\n\n /**\n * @deprecated use createCjsPackageJsonProps()\n */\n getCjsPackageJsonProps(): PackageJsonProps {\n return this.createCjsPackageJsonProps();\n }\n\n /**\n * Get the default package.json props for a cjs component\n * @returns\n */\n createCjsPackageJsonProps(): PackageJsonProps {\n return this.tsAspect.getCjsPackageJsonProps();\n }\n\n /**\n * @deprecated use createEsmPackageJsonProps()\n */\n getEsmPackageJsonProps(): PackageJsonProps {\n return this.createEsmPackageJsonProps();\n }\n\n /**\n * Get the default package.json props for an esm component\n * @returns\n */\n createEsmPackageJsonProps(): PackageJsonProps {\n return this.tsAspect.getEsmPackageJsonProps();\n }\n\n getNpmIgnore() {\n return [`${CAPSULE_ARTIFACTS_DIR}/`];\n }\n\n /**\n * adds dependencies to all configured components.\n */\n getDependencies() {\n return {\n dependencies: {\n react: '-',\n 'react-dom': '-',\n 'core-js': '^3.0.0',\n },\n // TODO: add this only if using ts\n devDependencies: {\n react: '-',\n 'react-dom': '-',\n '@types/mocha': '-',\n '@types/node': '12.20.4',\n '@types/react': '^17.0.8',\n '@types/react-dom': '^17.0.5',\n '@types/jest': '^26.0.0',\n // This is added as dev dep since our jest file transformer uses babel plugins that require this to be installed\n '@babel/runtime': '7.20.0',\n '@types/testing-library__jest-dom': '5.9.5',\n },\n peerDependencies: {\n react: '^16.8.0 || ^17.0.0',\n 'react-dom': '^16.8.0 || ^17.0.0',\n },\n };\n }\n\n /**\n * returns the component build pipeline.\n */\n getBuildPipe(modifiers: GetBuildPipeModifiers = {}): BuildTask[] {\n const transformers: Function[] = modifiers?.tsModifier?.transformers || [];\n const pathToSource = pathNormalizeToLinux(__dirname).replace('/dist', '');\n const jestConfigPath =\n modifiers?.jestModifier?.transformers?.[0]() || join(pathToSource, './jest/jest.cjs.config.js');\n const jestPath = modifiers?.jestModifier?.module || require.resolve('jest');\n const worker = this.getJestWorker();\n const testerTask = JestTask.create(\n { config: jestConfigPath, jest: jestPath },\n { logger: this.logger, worker, devFiles: this.devFiles }\n );\n return [this.createCjsCompilerTask(transformers, modifiers?.tsModifier?.module || ts), testerTask];\n }\n\n /**\n * @deprecated use createBuildPipeWithoutCompiler()\n */\n getBuildPipeWithoutCompiler(): BuildTask[] {\n return this.createBuildPipeWithoutCompiler();\n }\n\n /**\n * Get the react build pipeline without the compilation task.\n * This help in cases you want to only replace the compilation task with something else\n * @returns\n */\n createBuildPipeWithoutCompiler(): BuildTask[] {\n const pipeWithoutCompiler = this.getBuildPipe().filter((task) => task.aspectId !== this.compilerAspectId);\n return pipeWithoutCompiler;\n }\n\n /**\n * @deprecated use createEsmCompilerTask()\n */\n getEsmCompilerTask(transformers: TsConfigTransformer[] = [], tsModule = ts) {\n return this.createEsmCompilerTask(transformers as Function[], tsModule);\n }\n\n /**\n * Get a compiler task with react config and set to esm module\n * @param transformers\n * @param tsModule\n * @returns\n */\n createEsmCompilerTask(transformers: Function[] = [], tsModule = ts) {\n const tsCompiler = this.createTsEsmCompiler('build', transformers as TsConfigTransformer[], tsModule);\n return this.compiler.createTask('TSCompiler', tsCompiler);\n }\n\n /**\n * @deprecated use createCjsCompilerTask()\n * */\n getCjsCompilerTask(transformers: TsConfigTransformer[] = [], tsModule = ts) {\n return this.createCjsCompilerTask(transformers as Function[], tsModule);\n }\n\n /**\n * Get a compiler task with react config and set to cjs module\n * @param transformers\n * @param tsModule\n * @returns\n */\n createCjsCompilerTask(transformers: Function[] = [], tsModule = ts) {\n const tsCompiler = this.createTsCjsCompiler('build', transformers as TsConfigTransformer[], tsModule);\n return this.compiler.createTask('TSCompiler', tsCompiler);\n }\n\n workspaceConfig(): ConfigWriterEntry[] {\n return [\n TypescriptConfigWriter.create(\n {\n tsconfig: require.resolve('./typescript/tsconfig.cjs.json'),\n // types: resolveTypes(__dirname, [\"./types\"]),\n },\n this.logger\n ),\n EslintConfigWriter.create(\n {\n configPath: require.resolve('./eslint/eslintrc.js'),\n tsconfig: require.resolve('./typescript/tsconfig.cjs.json'),\n },\n this.logger\n ),\n PrettierConfigWriter.create(\n {\n configPath: require.resolve('./prettier/prettier.config.js'),\n },\n this.logger\n ),\n ];\n }\n\n async __getDescriptor() {\n return {\n type: ReactEnvType,\n };\n }\n}\n\nexport function runTransformersWithContext<P, T extends Function, C>(config: P, transformers: T[] = [], context: C): P {\n if (!Array.isArray(transformers)) return config;\n const newConfig = transformers.reduce((acc, transformer) => {\n return transformer(acc, context);\n }, config);\n return newConfig;\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,3 +1,4 @@
1
+ import type { DevFilesMain } from '@teambit/dev-files';
1
2
  import { Harmony } from '@teambit/harmony';
2
3
  import type { CompilerMain } from '@teambit/compiler';
3
4
  import { Compiler } from '@teambit/compiler';
@@ -5,7 +6,6 @@ import { BuildTask } from '@teambit/builder';
5
6
  import { Component } from '@teambit/component';
6
7
  import { EnvsMain, EnvTransformer, Environment } from '@teambit/envs';
7
8
  import type { GraphqlMain } from '@teambit/graphql';
8
- import type { JestMain } from '@teambit/jest';
9
9
  import type { PkgMain, PackageJsonProps } from '@teambit/pkg';
10
10
  import { SchemaMain } from '@teambit/schema';
11
11
  import type { TesterMain } from '@teambit/tester';
@@ -24,7 +24,6 @@ import { ReactAppOptions } from './apps/web/react-app-options';
24
24
  import { PrettierConfigTransformer } from '@teambit/defender.prettier.config-mutator';
25
25
  type ReactDeps = [
26
26
  EnvsMain,
27
- JestMain,
28
27
  TypescriptMain,
29
28
  CompilerMain,
30
29
  WebpackMain,
@@ -37,7 +36,8 @@ type ReactDeps = [
37
36
  DependencyResolverMain,
38
37
  LoggerMain,
39
38
  SchemaMain,
40
- WorkerMain
39
+ WorkerMain,
40
+ DevFilesMain
41
41
  ];
42
42
  export type ReactMainConfig = {
43
43
  /**
@@ -184,6 +184,6 @@ export declare class ReactMain {
184
184
  } | null;
185
185
  static runtime: import("@teambit/harmony").RuntimeDefinition;
186
186
  static dependencies: import("@teambit/harmony").Aspect[];
187
- static provider([envs, jestAspect, tsAspect, compiler, webpack, workspace, graphql, pkg, tester, application, generator, dependencyResolver, loggerMain, schemaMain, workerMain,]: ReactDeps, config: ReactMainConfig, slots: any, harmony: Harmony): Promise<ReactMain>;
187
+ static provider([envs, tsAspect, compiler, webpack, workspace, graphql, pkg, tester, application, generator, dependencyResolver, loggerMain, schemaMain, workerMain, devFilesMain,]: ReactDeps, config: ReactMainConfig, slots: any, harmony: Harmony): Promise<ReactMain>;
188
188
  }
189
189
  export {};