@teambit/react 0.0.736 → 0.0.739

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 (159) hide show
  1. package/apps/web/compute-results.ts +18 -0
  2. package/apps/web/react.application.ts +14 -4
  3. package/artifacts/env-template/public/295.js +29 -29
  4. package/artifacts/env-template/public/{117.js → 786.js} +3 -3
  5. package/artifacts/env-template/public/assets-manifest.json +10 -10
  6. package/artifacts/env-template/public/{compositions.71a43bb4dd964fdbe6eb.js → compositions.0d00c6a0c95a1629320f.js} +1 -1
  7. package/artifacts/env-template/public/compositions.html +1 -1
  8. package/artifacts/env-template/public/{overview.31f8a65a16df86aaec1b.js → overview.dc235d0310255cf655ab.js} +1 -1
  9. package/artifacts/env-template/public/overview.html +1 -1
  10. package/artifacts/env-template/public/{preview-root.7a24e602c0fa0ba9f5f1.js → preview-root.4217408043b19c8465c0.js} +1 -1
  11. package/artifacts/env-template/public/service-worker.js +1 -1
  12. package/artifacts/env-template/public/static/css/{295.e370e333.css → 295.506aad7a.css} +1 -1
  13. package/artifacts/preview/teambit_react_react-preview.js +2 -2
  14. package/{compositions-1652844422371.js → compositions-1653362849981.js} +0 -0
  15. package/dist/apps/web/compute-results.d.ts +7 -0
  16. package/dist/apps/web/compute-results.js +21 -0
  17. package/dist/apps/web/compute-results.js.map +1 -0
  18. package/dist/apps/web/default-bundler.js.map +1 -1
  19. package/dist/apps/web/deploy-context.js.map +1 -1
  20. package/dist/apps/web/index.js.map +1 -1
  21. package/dist/apps/web/plugins/index.js.map +1 -1
  22. package/dist/apps/web/plugins/prerender.js.map +1 -1
  23. package/dist/apps/web/react-app-options.js.map +1 -1
  24. package/dist/apps/web/react-build-result.js.map +1 -1
  25. package/dist/apps/web/react.app-type.js.map +1 -1
  26. package/dist/apps/web/react.application.d.ts +1 -0
  27. package/dist/apps/web/react.application.js +25 -7
  28. package/dist/apps/web/react.application.js.map +1 -1
  29. package/dist/compositions-app.js.map +1 -1
  30. package/dist/eslint/eslintrc.js.map +1 -1
  31. package/dist/highlighter-widget.js.map +1 -1
  32. package/dist/index.js.map +1 -1
  33. package/dist/jest/index.js.map +1 -1
  34. package/dist/jest/jest.base.config.js.map +1 -1
  35. package/dist/jest/jest.cjs.config.js.map +1 -1
  36. package/dist/jest/jest.config.js.map +1 -1
  37. package/dist/jest/jest.esm.config.js.map +1 -1
  38. package/dist/jest/setupTests.js.map +1 -1
  39. package/dist/jest/transformers/base-transformer-plugins.js.map +1 -1
  40. package/dist/jest/transformers/base-transformer-presets.js.map +1 -1
  41. package/dist/jest/transformers/base-transformer-process.js.map +1 -1
  42. package/dist/jest/transformers/cjs-transformer.js.map +1 -1
  43. package/dist/jest/transformers/css-transform.js.map +1 -1
  44. package/dist/jest/transformers/esm-transformer.js.map +1 -1
  45. package/dist/jest/transformers/file-transform.js.map +1 -1
  46. package/dist/mount.js.map +1 -1
  47. package/dist/prettier/prettier.config.js.map +1 -1
  48. package/dist/react.aspect.js.map +1 -1
  49. package/dist/react.composition.js.map +1 -1
  50. package/dist/react.env.d.ts +4 -2
  51. package/dist/react.env.js +10 -29
  52. package/dist/react.env.js.map +1 -1
  53. package/dist/react.graphql.js.map +1 -1
  54. package/dist/react.main.runtime.d.ts +3 -2
  55. package/dist/react.main.runtime.js +13 -3
  56. package/dist/react.main.runtime.js.map +1 -1
  57. package/dist/react.preview.runtime.js.map +1 -1
  58. package/dist/react.templates.js.map +1 -1
  59. package/dist/react.ui.runtime.js.map +1 -1
  60. package/dist/templates/react-app/files/app-plugin.js.map +1 -1
  61. package/dist/templates/react-app/files/app-root.js.map +1 -1
  62. package/dist/templates/react-app/files/app.js.map +1 -1
  63. package/dist/templates/react-app/files/compositions.js.map +1 -1
  64. package/dist/templates/react-app/files/doc.js.map +1 -1
  65. package/dist/templates/react-app/files/index.js.map +1 -1
  66. package/dist/templates/react-app/index.js.map +1 -1
  67. package/dist/templates/react-component/files/component.js.map +1 -1
  68. package/dist/templates/react-component/files/composition.js.map +1 -1
  69. package/dist/templates/react-component/files/docs.js.map +1 -1
  70. package/dist/templates/react-component/files/index-file.js.map +1 -1
  71. package/dist/templates/react-component/files/test.js.map +1 -1
  72. package/dist/templates/react-component/index.js.map +1 -1
  73. package/dist/templates/react-component-js/files/component.js.map +1 -1
  74. package/dist/templates/react-component-js/files/composition.js.map +1 -1
  75. package/dist/templates/react-component-js/files/docs.js.map +1 -1
  76. package/dist/templates/react-component-js/files/test.js.map +1 -1
  77. package/dist/templates/react-component-js/index.js.map +1 -1
  78. package/dist/templates/react-context/files/composition.js.map +1 -1
  79. package/dist/templates/react-context/files/context-provider.js.map +1 -1
  80. package/dist/templates/react-context/files/context.js.map +1 -1
  81. package/dist/templates/react-context/files/docs.js.map +1 -1
  82. package/dist/templates/react-context/files/index-file.js.map +1 -1
  83. package/dist/templates/react-context/files/test.js.map +1 -1
  84. package/dist/templates/react-context/index.js.map +1 -1
  85. package/dist/templates/react-env/files/aspect.js.map +1 -1
  86. package/dist/templates/react-env/files/doc.js.map +1 -1
  87. package/dist/templates/react-env/files/index.js.map +1 -1
  88. package/dist/templates/react-env/files/jest.config.js.map +1 -1
  89. package/dist/templates/react-env/files/main.runtime.js.map +1 -1
  90. package/dist/templates/react-env/files/preview.runtime.js.map +1 -1
  91. package/dist/templates/react-env/files/typescript/styles.js.map +1 -1
  92. package/dist/templates/react-env/files/typescript/ts-transformer.js.map +1 -1
  93. package/dist/templates/react-env/files/typescript/typescript.config.js.map +1 -1
  94. package/dist/templates/react-env/files/webpack.config.js.map +1 -1
  95. package/dist/templates/react-env/index.js.map +1 -1
  96. package/dist/templates/react-hook/files/component.js.map +1 -1
  97. package/dist/templates/react-hook/files/composition.js.map +1 -1
  98. package/dist/templates/react-hook/files/docs.js.map +1 -1
  99. package/dist/templates/react-hook/files/index-file.js.map +1 -1
  100. package/dist/templates/react-hook/files/test.js.map +1 -1
  101. package/dist/templates/react-hook/index.js.map +1 -1
  102. package/dist/templates/react-workspace/index.js.map +1 -1
  103. package/dist/templates/react-workspace-analytics/index.js.map +1 -1
  104. package/dist/templates/react-workspace-app/index.js.map +1 -1
  105. package/dist/templates/react-workspace-data-fetching/index.js.map +1 -1
  106. package/dist/templates/react-workspace-deprecated/index.js.map +1 -1
  107. package/dist/templates/react-workspace-design-system/index.js.map +1 -1
  108. package/dist/templates/react-workspace-lib/index.js.map +1 -1
  109. package/dist/templates/react-workspace-wiki/index.js.map +1 -1
  110. package/dist/templates/workspace-common/files/eslint-config.js.map +1 -1
  111. package/dist/templates/workspace-common/files/git-ignore.js.map +1 -1
  112. package/dist/templates/workspace-common/files/launch-json.js.map +1 -1
  113. package/dist/templates/workspace-common/files/prettier-config.js.map +1 -1
  114. package/dist/templates/workspace-common/files/readme-file.js.map +1 -1
  115. package/dist/templates/workspace-common/files/ts-config.js.map +1 -1
  116. package/dist/templates/workspace-common/files/types/asset.js.map +1 -1
  117. package/dist/templates/workspace-common/files/types/style.js.map +1 -1
  118. package/dist/templates/workspace-common/files/workspace-config.js.map +1 -1
  119. package/dist/templates/workspace-common/generate-files.js.map +1 -1
  120. package/dist/templates/workspace-common/index.js.map +1 -1
  121. package/dist/typescript/tsconfig.build.json +1 -0
  122. package/dist/webpack/html.js.map +1 -1
  123. package/dist/webpack/index.js.map +1 -1
  124. package/dist/webpack/overlay/formatWebpackMessages.js.map +1 -1
  125. package/dist/webpack/overlay/launchEditorEndpoint.js.map +1 -1
  126. package/dist/webpack/overlay/refreshOverlayInterop.js.map +1 -1
  127. package/dist/webpack/overlay/webpackHotDevClient.js.map +1 -1
  128. package/dist/webpack/postcss.config.js.map +1 -1
  129. package/dist/webpack/webpack.config.base.js.map +1 -1
  130. package/dist/webpack/webpack.config.base.prod.d.ts +1 -1
  131. package/dist/webpack/webpack.config.base.prod.js +1 -13
  132. package/dist/webpack/webpack.config.base.prod.js.map +1 -1
  133. package/dist/webpack/webpack.config.component.dev.js.map +1 -1
  134. package/dist/webpack/webpack.config.component.prod.js.map +1 -1
  135. package/dist/webpack/webpack.config.env.dev.js.map +1 -1
  136. package/{overview-1652844422371.js → overview-1653362849981.js} +0 -0
  137. package/package-tar/teambit-react-0.0.739.tgz +0 -0
  138. package/package.json +26 -33
  139. package/{preview-1652844422371.js → preview-1653362849981.js} +2 -2
  140. package/tsconfig.json +1 -1
  141. package/typescript/tsconfig.build.json +1 -0
  142. package/webpack/webpack.config.base.prod.ts +1 -5
  143. package/dist/webpack/get-exposed-rules.d.ts +0 -3
  144. package/dist/webpack/get-exposed-rules.js +0 -60
  145. package/dist/webpack/get-exposed-rules.js.map +0 -1
  146. package/dist/webpack/get-externals.d.ts +0 -1
  147. package/dist/webpack/get-externals.js +0 -42
  148. package/dist/webpack/get-externals.js.map +0 -1
  149. package/dist/webpack/resolve-peer.d.ts +0 -14
  150. package/dist/webpack/resolve-peer.js +0 -108
  151. package/dist/webpack/resolve-peer.js.map +0 -1
  152. package/dist/webpack/transformers.d.ts +0 -10
  153. package/dist/webpack/transformers.js +0 -66
  154. package/dist/webpack/transformers.js.map +0 -1
  155. package/package-tar/teambit-react-0.0.736.tgz +0 -0
  156. package/webpack/get-exposed-rules.ts +0 -14
  157. package/webpack/get-externals.ts +0 -8
  158. package/webpack/resolve-peer.ts +0 -60
  159. package/webpack/transformers.ts +0 -37
@@ -11,6 +11,7 @@ import { WebpackConfigTransformer, WebpackMain } from '@teambit/webpack';
11
11
  import { Workspace } from '@teambit/workspace';
12
12
  import { ESLintMain, EslintConfigTransformer } from '@teambit/eslint';
13
13
  import { PrettierConfigTransformer, PrettierMain } from '@teambit/prettier';
14
+ import { DependencyResolverMain } from '@teambit/dependency-resolver';
14
15
  import { Linter, LinterContext } from '@teambit/linter';
15
16
  import { Formatter, FormatterContext } from '@teambit/formatter';
16
17
  import { SchemaExtractor } from '@teambit/schema';
@@ -56,6 +57,7 @@ export declare class ReactEnv implements TesterEnv, CompilerEnv, LinterEnv, DevE
56
57
  private config;
57
58
  private eslint;
58
59
  private prettier;
60
+ private dependencyResolver;
59
61
  private logger;
60
62
  private compilerAspectId;
61
63
  constructor(
@@ -86,7 +88,7 @@ export declare class ReactEnv implements TesterEnv, CompilerEnv, LinterEnv, DevE
86
88
  /**
87
89
  * tester extension
88
90
  */
89
- tester: TesterMain, config: ReactMainConfig, eslint: ESLintMain, prettier: PrettierMain, logger: Logger, compilerAspectId: string);
91
+ tester: TesterMain, config: ReactMainConfig, eslint: ESLintMain, prettier: PrettierMain, dependencyResolver: DependencyResolverMain, logger: Logger, compilerAspectId: string);
90
92
  getTsConfig(targetTsConfig?: TsConfigSourceFile): TsConfigSourceFile;
91
93
  getBuildTsConfig(targetTsConfig?: TsConfigSourceFile): TsConfigSourceFile;
92
94
  /**
@@ -155,7 +157,7 @@ export declare class ReactEnv implements TesterEnv, CompilerEnv, LinterEnv, DevE
155
157
  /**
156
158
  * Get the peers configured by the env on the components + the host deps configured by the env
157
159
  */
158
- getAllHostDependencies(): string[];
160
+ getPeerDependenciesList(): Promise<string[]>;
159
161
  getAdditionalHostDependencies(): string[];
160
162
  /**
161
163
  * returns a path to a docs template.
package/dist/react.env.js CHANGED
@@ -165,16 +165,6 @@ function _webpackConfigComponent2() {
165
165
  return data;
166
166
  }
167
167
 
168
- function _transformers() {
169
- const data = require("./webpack/transformers");
170
-
171
- _transformers = function () {
172
- return data;
173
- };
174
-
175
- return data;
176
- }
177
-
178
168
  // webpack configs for both components and envs
179
169
  // webpack configs for envs only
180
170
  // import devPreviewConfigFactory from './webpack/webpack.config.preview.dev';
@@ -223,7 +213,7 @@ class ReactEnv {
223
213
  /**
224
214
  * tester extension
225
215
  */
226
- tester, config, eslint, prettier, logger, compilerAspectId) {
216
+ tester, config, eslint, prettier, dependencyResolver, logger, compilerAspectId) {
227
217
  this.jestAspect = jestAspect;
228
218
  this.tsAspect = tsAspect;
229
219
  this.compiler = compiler;
@@ -234,6 +224,7 @@ class ReactEnv {
234
224
  this.config = config;
235
225
  this.eslint = eslint;
236
226
  this.prettier = prettier;
227
+ this.dependencyResolver = dependencyResolver;
237
228
  this.logger = logger;
238
229
  this.compilerAspectId = compilerAspectId;
239
230
  (0, _defineProperty2().default)(this, "icon", 'https://static.bit.dev/extensions-icons/react.svg');
@@ -402,15 +393,13 @@ class ReactEnv {
402
393
  const baseConfig = (0, _webpackConfig().default)(false);
403
394
  const envDevConfig = (0, _webpackConfigEnv().default)(context.id);
404
395
  const componentDevConfig = (0, _webpackConfigComponent2().default)(this.workspace.path, context.id);
405
- const peers = this.getAllHostDependencies();
406
- const peerAliasesTransformer = (0, _transformers().generateAddAliasesFromPeersTransformer)(peers, this.logger);
407
396
 
408
397
  const defaultTransformer = configMutator => {
409
398
  const merged = configMutator.merge([baseConfig, envDevConfig, componentDevConfig]);
410
399
  return merged;
411
400
  };
412
401
 
413
- return this.webpack.createDevServer(context, [defaultTransformer, peerAliasesTransformer, ...transformers]);
402
+ return this.webpack.createDevServer(context, [defaultTransformer, ...transformers]);
414
403
  }
415
404
 
416
405
  async getBundler(context, transformers = []) {
@@ -418,10 +407,8 @@ class ReactEnv {
418
407
  }
419
408
 
420
409
  async createComponentsWebpackBundler(context, transformers = []) {
421
- const peers = this.getAllHostDependencies();
422
- const peerAliasesTransformer = (0, _transformers().generateAddAliasesFromPeersTransformer)(peers, this.logger);
423
410
  const baseConfig = (0, _webpackConfig().default)(!context.development);
424
- const baseProdConfig = (0, _webpackConfigBase().default)(Boolean(context.externalizePeer), peers, context.development);
411
+ const baseProdConfig = (0, _webpackConfigBase().default)(context.development);
425
412
  const componentProdConfig = (0, _webpackConfigComponent().default)();
426
413
 
427
414
  const defaultTransformer = configMutator => {
@@ -429,23 +416,20 @@ class ReactEnv {
429
416
  return merged;
430
417
  };
431
418
 
432
- const mergedTransformers = [defaultTransformer, peerAliasesTransformer, ...transformers];
419
+ const mergedTransformers = [defaultTransformer, ...transformers];
433
420
  return this.createWebpackBundler(context, mergedTransformers);
434
421
  }
435
422
 
436
423
  async createTemplateWebpackBundler(context, transformers = []) {
437
- const peers = this.getAllHostDependencies();
438
- const peerAliasesTransformer = (0, _transformers().generateAddAliasesFromPeersTransformer)(peers, this.logger);
439
- const exposePeersTransformer = (0, _transformers().generateExposePeersTransformer)(peers, this.logger);
440
424
  const baseConfig = (0, _webpackConfig().default)(!context.development);
441
- const baseProdConfig = (0, _webpackConfigBase().default)(Boolean(context.externalizePeer), peers, context.development);
425
+ const baseProdConfig = (0, _webpackConfigBase().default)(context.development);
442
426
 
443
427
  const defaultTransformer = configMutator => {
444
428
  const merged = configMutator.merge([baseConfig, baseProdConfig]);
445
429
  return merged;
446
430
  };
447
431
 
448
- const mergedTransformers = [defaultTransformer, peerAliasesTransformer, exposePeersTransformer, ...transformers];
432
+ const mergedTransformers = [defaultTransformer, ...transformers];
449
433
  return this.createWebpackBundler(context, mergedTransformers);
450
434
  }
451
435
 
@@ -457,15 +441,12 @@ class ReactEnv {
457
441
  */
458
442
 
459
443
 
460
- getAllHostDependencies() {
461
- const envComponentPeers = Object.keys(this.getDependencies().peerDependencies || {}) || [];
462
- const additionalHostDeps = this.getAdditionalHostDependencies() || [];
463
- const peers = envComponentPeers.concat(additionalHostDeps);
464
- return peers;
444
+ getPeerDependenciesList() {
445
+ return this.dependencyResolver.getPeerDependenciesListFromEnv(this);
465
446
  }
466
447
 
467
448
  getAdditionalHostDependencies() {
468
- return ['@teambit/mdx.ui.mdx-scope-context', '@mdx-js/react'];
449
+ return ['@teambit/mdx.ui.mdx-scope-context', '@mdx-js/react', 'react'];
469
450
  }
470
451
  /**
471
452
  * returns a path to a docs template.
@@ -1 +1 @@
1
- {"version":3,"sources":["react.env.ts"],"names":["ReactEnvType","defaultTsConfig","require","buildTsConfig","eslintConfig","prettierConfig","ReactEnv","constructor","jestAspect","tsAspect","compiler","webpack","workspace","pkg","tester","config","eslint","prettier","logger","compilerAspectId","getTsConfig","targetTsConfig","getBuildTsConfig","getCjsJestTester","jestConfigPath","jestModulePath","pathToSource","__dirname","replace","defaultConfig","createTester","resolve","getEsmJestTester","getTester","getTsCompilerOptions","mode","tsconfig","compileJs","compileJsx","types","getTsCjsCompiler","transformers","tsModule","ts","tsCompileOptions","createCjsCompiler","getTsEsmCompiler","createEsmCompiler","getCompiler","getLinter","context","defaultTransformer","configMutator","addExtensionTypes","allTransformers","createLinter","pluginPath","getFormatter","createFormatter","getFileMap","components","local","reduce","index","component","state","filesystem","files","forEach","file","path","id","toString","homepage","fullName","ComponentUrl","toUrl","writeFileMap","fileMap","Math","random","slice","JSON","stringify","getDevEnvId","ReactAspect","getSchemaExtractor","createSchemaExtractor","getDevServer","baseConfig","envDevConfig","componentDevConfig","peers","getAllHostDependencies","peerAliasesTransformer","merged","merge","createDevServer","getBundler","createComponentsWebpackBundler","development","baseProdConfig","Boolean","externalizePeer","componentProdConfig","mergedTransformers","createWebpackBundler","createTemplateWebpackBundler","exposePeersTransformer","createBundler","envComponentPeers","Object","keys","getDependencies","peerDependencies","additionalHostDeps","getAdditionalHostDependencies","concat","getDocsTemplate","getMounter","getPreviewConfig","strategyName","splitComponentBundle","getPackageJsonProps","getCjsPackageJsonProps","getEsmPackageJsonProps","getNpmIgnore","CAPSULE_ARTIFACTS_DIR","dependencies","react","devDependencies","getBuildPipe","modifiers","tsModifier","getCompilerTask","module","task","getBuildPipeWithoutCompiler","pipeWithoutCompiler","filter","aspectId","getEsmCompilerTask","tsCompiler","createTask","getCjsCompilerTask","__getDescriptor","type"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AA0BA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAGA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAMA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAIA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAGA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAXA;AAIA;AACA;AAGA;AAKO,MAAMA,YAAY,GAAG,OAArB;;;AACP,MAAMC,eAAe,GAAGC,OAAO,CAAC,4BAAD,CAA/B;;AACA,MAAMC,aAAa,GAAGD,OAAO,CAAC,kCAAD,CAA7B;;AACA,MAAME,YAAY,GAAGF,OAAO,CAAC,mBAAD,CAA5B;;AACA,MAAMG,cAAc,GAAGH,OAAO,CAAC,+BAAD,CAA9B,C,CAEA;;;AAOA;AACA;AACA;AACO,MAAMI,QAAN,CAEP;AACEC,EAAAA,WAAW;AACT;AACJ;AACA;AACYC,EAAAA,UAJC;AAMT;AACJ;AACA;AACcC,EAAAA,QATD;AAWT;AACJ;AACA;AACYC,EAAAA,QAdC;AAgBT;AACJ;AACA;AACYC,EAAAA,OAnBC;AAqBT;AACJ;AACA;AACYC,EAAAA,SAxBC;AA0BT;AACJ;AACA;AACYC,EAAAA,GA7BC;AA+BT;AACJ;AACA;AACYC,EAAAA,MAlCC,EAoCDC,MApCC,EAsCDC,MAtCC,EAwCDC,QAxCC,EA0CDC,MA1CC,EA4CDC,gBA5CC,EA6CT;AAAA,SAzCQX,UAyCR,GAzCQA,UAyCR;AAAA,SApCUC,QAoCV,GApCUA,QAoCV;AAAA,SA/BQC,QA+BR,GA/BQA,QA+BR;AAAA,SA1BQC,OA0BR,GA1BQA,OA0BR;AAAA,SArBQC,SAqBR,GArBQA,SAqBR;AAAA,SAhBQC,GAgBR,GAhBQA,GAgBR;AAAA,SAXQC,MAWR,GAXQA,MAWR;AAAA,SATQC,MASR,GATQA,MASR;AAAA,SAPQC,MAOR,GAPQA,MAOR;AAAA,SALQC,QAKR,GALQA,QAKR;AAAA,SAHQC,MAGR,GAHQA,MAGR;AAAA,SADQC,gBACR,GADQA,gBACR;AAAA,kDAoPK,mDApPL;AAAE;;AAEJC,EAAAA,WAAW,CAACC,cAAD,EAA0D;AACnE,WAAOA,cAAc,GAAG,qBAAM,EAAN,EAAUpB,eAAV,EAA2BoB,cAA3B,CAAH,GAAgDpB,eAArE;AACD;;AAEDqB,EAAAA,gBAAgB,CAACD,cAAD,EAA0D;AACxE,WAAOA,cAAc,GAAG,qBAAM,EAAN,EAAUlB,aAAV,EAAyBkB,cAAzB,CAAH,GAA8ClB,aAAnE;AACD;AAED;AACF;AACA;AACA;AACA;AACA;;;AACEoB,EAAAA,gBAAgB,CAACC,cAAD,EAA0BC,cAA1B,EAA2D;AACzE,UAAMC,YAAY,GAAG,mCAAqBC,SAArB,EAAgCC,OAAhC,CAAwC,OAAxC,EAAiD,EAAjD,CAArB;AACA,UAAMC,aAAa,GAAG,kBAAKH,YAAL,EAAmB,2BAAnB,CAAtB;AACA,UAAMX,MAAM,GAAGS,cAAc,IAAIK,aAAjC;AACA,WAAO,KAAKrB,UAAL,CAAgBsB,YAAhB,CAA6Bf,MAA7B,EAAqCU,cAAc,IAAIvB,OAAO,CAAC6B,OAAR,CAAgB,MAAhB,CAAvD,CAAP;AACD;AAED;AACF;AACA;AACA;AACA;AACA;;;AACEC,EAAAA,gBAAgB,CAACR,cAAD,EAA0BC,cAA1B,EAA2D;AACzE,UAAMC,YAAY,GAAG,mCAAqBC,SAArB,EAAgCC,OAAhC,CAAwC,OAAxC,EAAiD,EAAjD,CAArB;AACA,UAAMC,aAAa,GAAG,kBAAKH,YAAL,EAAmB,2BAAnB,CAAtB;AACA,UAAMX,MAAM,GAAGS,cAAc,IAAIK,aAAjC;AACA,WAAO,KAAKrB,UAAL,CAAgBsB,YAAhB,CAA6Bf,MAA7B,EAAqCU,cAAc,IAAIvB,OAAO,CAAC6B,OAAR,CAAgB,MAAhB,CAAvD,CAAP;AACD;AAED;AACF;AACA;;;AACEE,EAAAA,SAAS,CAACT,cAAD,EAAyBC,cAAzB,EAA0D;AACjE;AACA,WAAO,KAAKF,gBAAL,CAAsBC,cAAtB,EAAsCC,cAAtC,CAAP;AACD;;AAEOS,EAAAA,oBAAoB,CAACC,IAAkB,GAAG,KAAtB,EAAwD;AAClF,UAAMC,QAAQ,GAAGD,IAAI,KAAK,KAAT,GAAiB,yBAAUlC,eAAV,CAAjB,GAA8C,yBAAUE,aAAV,CAA/D;AACA,UAAMuB,YAAY,GAAG,mCAAqBC,SAArB,EAAgCC,OAAhC,CAAwC,QAAxC,EAAkD,OAAlD,CAArB;AACA,UAAMS,SAAS,GAAG,IAAlB;AACA,UAAMC,UAAU,GAAG,IAAnB;AACA,WAAO;AACLF,MAAAA,QADK;AAEL;AACAG,MAAAA,KAAK,EAAE,CAAC,qBAAQb,YAAR,EAAsB,yBAAtB,CAAD,EAAmD,qBAAQA,YAAR,EAAsB,yBAAtB,CAAnD,CAHF;AAILW,MAAAA,SAJK;AAKLC,MAAAA;AALK,KAAP;AAOD;AAED;AACF;AACA;AACA;AACA;AACA;AACA;;;AACEE,EAAAA,gBAAgB,CAACL,IAAkB,GAAG,KAAtB,EAA6BM,YAAmC,GAAG,EAAnE,EAAuEC,QAAQ,GAAGC,qBAAlF,EAAsF;AACpG,UAAMC,gBAAgB,GAAG,KAAKV,oBAAL,CAA0BC,IAA1B,CAAzB;AACA,WAAO,KAAK1B,QAAL,CAAcoC,iBAAd,CAAgCD,gBAAhC,EAAkDH,YAAlD,EAAgEC,QAAhE,CAAP;AACD;AAED;AACF;AACA;AACA;AACA;AACA;AACA;;;AACEI,EAAAA,gBAAgB,CAACX,IAAkB,GAAG,KAAtB,EAA6BM,YAAmC,GAAG,EAAnE,EAAuEC,QAAQ,GAAGC,qBAAlF,EAAsF;AACpG,UAAMC,gBAAgB,GAAG,KAAKV,oBAAL,CAA0BC,IAA1B,CAAzB;AACA,WAAO,KAAK1B,QAAL,CAAcsC,iBAAd,CAAgCH,gBAAhC,EAAkDH,YAAlD,EAAgEC,QAAhE,CAAP;AACD;;AAEDM,EAAAA,WAAW,CAACP,YAAmC,GAAG,EAAvC,EAA2CC,QAAQ,GAAGC,qBAAtD,EAA0D;AACnE;AACA,WAAO,KAAKH,gBAAL,CAAsB,KAAtB,EAA6BC,YAA7B,EAA2CC,QAA3C,CAAP;AACD;AAED;AACF;AACA;;;AACEO,EAAAA,SAAS,CAACC,OAAD,EAAyBT,YAAuC,GAAG,EAAnE,EAA+E;AACtF,UAAMU,kBAA2C,GAAIC,aAAD,IAAmB;AACrEA,MAAAA,aAAa,CAACC,iBAAd,CAAgC,CAAC,KAAD,EAAQ,MAAR,CAAhC;AACA,aAAOD,aAAP;AACD,KAHD;;AAKA,UAAME,eAAe,GAAG,CAACH,kBAAD,EAAqB,GAAGV,YAAxB,CAAxB;AAEA,WAAO,KAAKzB,MAAL,CAAYuC,YAAZ,CACLL,OADK,EAEL;AACEnC,MAAAA,MAAM,EAAEX,YADV;AAEE;AACAoD,MAAAA,UAAU,EAAE7B;AAHd,KAFK,EAOL2B,eAPK,CAAP;AASD;AAED;AACF;AACA;;;AACEG,EAAAA,YAAY,CAACP,OAAD,EAA4BT,YAAyC,GAAG,EAAxE,EAAuF;AACjG,WAAO,KAAKxB,QAAL,CAAcyC,eAAd,CACLR,OADK,EAEL;AACEnC,MAAAA,MAAM,EAAEV;AADV,KAFK,EAKLoC,YALK,CAAP;AAOD;;AAEOkB,EAAAA,UAAU,CAACC,UAAD,EAA0BC,KAAK,GAAG,KAAlC,EAAyC;AACzD,WAAOD,UAAU,CAACE,MAAX,CAAoD,CAACC,KAAD,EAAQC,SAAR,KAAiC;AAC1FA,MAAAA,SAAS,CAACC,KAAV,CAAgBC,UAAhB,CAA2BC,KAA3B,CAAiCC,OAAjC,CAA0CC,IAAD,IAAU;AACjDN,QAAAA,KAAK,CAACM,IAAI,CAACC,IAAN,CAAL,GAAmB;AACjBC,UAAAA,EAAE,EAAEP,SAAS,CAACO,EAAV,CAAaC,QAAb,EADa;AAEjBC,UAAAA,QAAQ,EAAEZ,KAAK,GAAI,IAAGG,SAAS,CAACO,EAAV,CAAaG,QAAS,EAA7B,GAAiCC,iCAAaC,KAAb,CAAmBZ,SAAS,CAACO,EAA7B;AAF/B,SAAnB;AAID,OALD;AAOA,aAAOR,KAAP;AACD,KATM,EASJ,EATI,CAAP;AAUD;;AAEOc,EAAAA,YAAY,CAACjB,UAAD,EAA0BC,KAA1B,EAA2C;AAC7D,UAAMiB,OAAO,GAAG,KAAKnB,UAAL,CAAgBC,UAAhB,EAA4BC,KAA5B,CAAhB;AACA,UAAMS,IAAI,GAAG,kBAAK,mBAAL,EAAgB,GAAES,IAAI,CAACC,MAAL,GAAcR,QAAd,CAAuB,EAAvB,EAA2BS,KAA3B,CAAiC,CAAjC,EAAoC,EAApC,CAAwC,OAA1D,CAAb;AACA,mCAAeX,IAAf,EAAqBY,IAAI,CAACC,SAAL,CAAeL,OAAf,CAArB;AACA,WAAOR,IAAP;AACD;AAED;AACF;AACA;;;AACEc,EAAAA,WAAW,CAACb,EAAD,EAAc;AACvB,QAAI,OAAOA,EAAP,KAAc,QAAlB,EAA4B,OAAOc,qBAAYd,EAAnB;AAC5B,WAAOA,EAAE,IAAIc,qBAAYd,EAAzB;AACD;AAED;AACF;AACA;;;AACEe,EAAAA,kBAAkB,CAAClD,QAAD,EAAgD;AAChE,WAAO,KAAK3B,QAAL,CAAc8E,qBAAd,CAAoC,KAAKnE,WAAL,CAAiBgB,QAAjB,CAApC,CAAP;AACD;AAED;AACF;AACA;AACA;;;AACEoD,EAAAA,YAAY,CAACtC,OAAD,EAA4BT,YAAwC,GAAG,EAAvE,EAAsF;AAChG,UAAMgD,UAAU,GAAG,8BAAyB,KAAzB,CAAnB;AACA,UAAMC,YAAY,GAAG,iCAA2BxC,OAAO,CAACqB,EAAnC,CAArB;AACA,UAAMoB,kBAAkB,GAAG,wCAAiC,KAAK/E,SAAL,CAAe0D,IAAhD,EAAsDpB,OAAO,CAACqB,EAA9D,CAA3B;AACA,UAAMqB,KAAK,GAAG,KAAKC,sBAAL,EAAd;AACA,UAAMC,sBAAsB,GAAG,4DAAuCF,KAAvC,EAA8C,KAAK1E,MAAnD,CAA/B;;AAEA,UAAMiC,kBAA4C,GAAIC,aAAD,IAAmB;AACtE,YAAM2C,MAAM,GAAG3C,aAAa,CAAC4C,KAAd,CAAoB,CAACP,UAAD,EAAaC,YAAb,EAA2BC,kBAA3B,CAApB,CAAf;AACA,aAAOI,MAAP;AACD,KAHD;;AAKA,WAAO,KAAKpF,OAAL,CAAasF,eAAb,CAA6B/C,OAA7B,EAAsC,CAACC,kBAAD,EAAqB2C,sBAArB,EAA6C,GAAGrD,YAAhD,CAAtC,CAAP;AACD;;AAEe,QAAVyD,UAAU,CAAChD,OAAD,EAA0BT,YAAwC,GAAG,EAArE,EAA2F;AACzG,WAAO,KAAK0D,8BAAL,CAAoCjD,OAApC,EAA6CT,YAA7C,CAAP;AACD;;AAEmC,QAA9B0D,8BAA8B,CAClCjD,OADkC,EAElCT,YAAwC,GAAG,EAFT,EAGhB;AAClB,UAAMmD,KAAK,GAAG,KAAKC,sBAAL,EAAd;AACA,UAAMC,sBAAsB,GAAG,4DAAuCF,KAAvC,EAA8C,KAAK1E,MAAnD,CAA/B;AACA,UAAMuE,UAAU,GAAG,8BAAyB,CAACvC,OAAO,CAACkD,WAAlC,CAAnB;AACA,UAAMC,cAAc,GAAG,kCAA6BC,OAAO,CAACpD,OAAO,CAACqD,eAAT,CAApC,EAA+DX,KAA/D,EAAsE1C,OAAO,CAACkD,WAA9E,CAAvB;AACA,UAAMI,mBAAmB,GAAG,wCAA5B;;AAEA,UAAMrD,kBAA4C,GAAIC,aAAD,IAAmB;AACtE,YAAM2C,MAAM,GAAG3C,aAAa,CAAC4C,KAAd,CAAoB,CAACP,UAAD,EAAaY,cAAb,EAA6BG,mBAA7B,CAApB,CAAf;AACA,aAAOT,MAAP;AACD,KAHD;;AAIA,UAAMU,kBAAkB,GAAG,CAACtD,kBAAD,EAAqB2C,sBAArB,EAA6C,GAAGrD,YAAhD,CAA3B;AACA,WAAO,KAAKiE,oBAAL,CAA0BxD,OAA1B,EAAmCuD,kBAAnC,CAAP;AACD;;AAEiC,QAA5BE,4BAA4B,CAChCzD,OADgC,EAEhCT,YAAwC,GAAG,EAFX,EAGd;AAClB,UAAMmD,KAAK,GAAG,KAAKC,sBAAL,EAAd;AACA,UAAMC,sBAAsB,GAAG,4DAAuCF,KAAvC,EAA8C,KAAK1E,MAAnD,CAA/B;AACA,UAAM0F,sBAAsB,GAAG,oDAA+BhB,KAA/B,EAAsC,KAAK1E,MAA3C,CAA/B;AACA,UAAMuE,UAAU,GAAG,8BAAyB,CAACvC,OAAO,CAACkD,WAAlC,CAAnB;AACA,UAAMC,cAAc,GAAG,kCAA6BC,OAAO,CAACpD,OAAO,CAACqD,eAAT,CAApC,EAA+DX,KAA/D,EAAsE1C,OAAO,CAACkD,WAA9E,CAAvB;;AAEA,UAAMjD,kBAA4C,GAAIC,aAAD,IAAmB;AACtE,YAAM2C,MAAM,GAAG3C,aAAa,CAAC4C,KAAd,CAAoB,CAACP,UAAD,EAAaY,cAAb,CAApB,CAAf;AACA,aAAON,MAAP;AACD,KAHD;;AAIA,UAAMU,kBAAkB,GAAG,CAACtD,kBAAD,EAAqB2C,sBAArB,EAA6Cc,sBAA7C,EAAqE,GAAGnE,YAAxE,CAA3B;AACA,WAAO,KAAKiE,oBAAL,CAA0BxD,OAA1B,EAAmCuD,kBAAnC,CAAP;AACD;;AAEiC,QAApBC,oBAAoB,CAChCxD,OADgC,EAEhCT,YAAwC,GAAG,EAFX,EAGd;AAClB,WAAO,KAAK9B,OAAL,CAAakG,aAAb,CAA2B3D,OAA3B,EAAoCT,YAApC,CAAP;AACD;AAED;AACF;AACA;;;AACEoD,EAAAA,sBAAsB,GAAG;AACvB,UAAMiB,iBAAiB,GAAGC,MAAM,CAACC,IAAP,CAAY,KAAKC,eAAL,GAAuBC,gBAAvB,IAA2C,EAAvD,KAA8D,EAAxF;AACA,UAAMC,kBAAkB,GAAG,KAAKC,6BAAL,MAAwC,EAAnE;AACA,UAAMxB,KAAK,GAAGkB,iBAAiB,CAACO,MAAlB,CAAyBF,kBAAzB,CAAd;AACA,WAAOvB,KAAP;AACD;;AAEDwB,EAAAA,6BAA6B,GAAa;AACxC,WAAO,CAAC,mCAAD,EAAsC,eAAtC,CAAP;AACD;AAED;AACF;AACA;;;AACEE,EAAAA,eAAe,GAAG;AAChB,WAAOpH,OAAO,CAAC6B,OAAR,CAAgB,4BAAhB,CAAP;AACD;;AAID;AACF;AACA;AACEwF,EAAAA,UAAU,GAAG;AACX,WAAOrH,OAAO,CAAC6B,OAAR,CAAgB,SAAhB,CAAP;AACD;;AAEDyF,EAAAA,gBAAgB,GAAG;AACjB,WAAO;AACLC,MAAAA,YAAY,EAAE,WADT;AAELC,MAAAA,oBAAoB,EAAE;AAFjB,KAAP;AAID;AAED;AACF;AACA;;;AACEC,EAAAA,mBAAmB,GAAqB;AACtC;AACA;AACA,WAAO,KAAKC,sBAAL,EAAP;AACD;AAED;AACF;AACA;AACA;;;AACEA,EAAAA,sBAAsB,GAAqB;AACzC,WAAO,KAAKnH,QAAL,CAAcmH,sBAAd,EAAP;AACD;AAED;AACF;AACA;AACA;;;AACEC,EAAAA,sBAAsB,GAAqB;AACzC,WAAO,KAAKpH,QAAL,CAAcoH,sBAAd,EAAP;AACD;;AAEDC,EAAAA,YAAY,GAAG;AACb;AACA;AACA;AACA,WAAO,CAAE,GAAEC,gCAAsB,GAA1B,CAAP;AACD;AAED;AACF;AACA;;;AACEd,EAAAA,eAAe,GAAG;AAChB,WAAO;AACLe,MAAAA,YAAY,EAAE;AACZC,QAAAA,KAAK,EAAE,GADK;AAEZ,qBAAa,GAFD;AAGZ,mBAAW;AAHC,OADT;AAML;AACAC,MAAAA,eAAe,EAAE;AACfD,QAAAA,KAAK,EAAE,GADQ;AAEf,qBAAa,GAFE;AAGf,wBAAgB,GAHD;AAIf,uBAAe,SAJA;AAKf,wBAAgB,SALD;AAMf,4BAAoB,SANL;AAOf,uBAAe,SAPA;AAQf;AACA,0BAAkB,SATH;AAUf,4CAAoC;AAVrB,OAPZ;AAmBLf,MAAAA,gBAAgB,EAAE;AAChBe,QAAAA,KAAK,EAAE,oBADS;AAEhB,qBAAa;AAFG;AAnBb,KAAP;AAwBD;AAED;AACF;AACA;;;AACEE,EAAAA,YAAY,CAACC,SAAgC,GAAG,EAApC,EAAqD;AAAA;;AAC/D,UAAM3F,YAAmC,GACvC,CAAC2F,SAAD,aAACA,SAAD,gDAACA,SAAS,CAAEC,UAAZ,0DAAC,sBAAuB5F,YAAxB,KAAyE,EAD3E;AAEA,WAAO,CAAC,KAAK6F,eAAL,CAAqB7F,YAArB,EAAmC,CAAA2F,SAAS,SAAT,IAAAA,SAAS,WAAT,sCAAAA,SAAS,CAAEC,UAAX,kFAAuBE,MAAvB,KAAiC5F,qBAApE,CAAD,EAA0E,KAAK7B,MAAL,CAAY0H,IAAtF,CAAP;AACD;AAED;AACF;AACA;AACA;AACA;;;AACEC,EAAAA,2BAA2B,GAAgB;AACzC,UAAMC,mBAAmB,GAAG,KAAKP,YAAL,GAAoBQ,MAApB,CAA4BH,IAAD,IAAUA,IAAI,CAACI,QAAL,KAAkB,KAAKzH,gBAA5D,CAA5B;AACA,WAAOuH,mBAAP;AACD;AAED;AACF;AACA;AACA;AACA;AACA;;;AACEG,EAAAA,kBAAkB,CAACpG,YAAmC,GAAG,EAAvC,EAA2CC,QAAQ,GAAGC,qBAAtD,EAA0D;AAC1E,UAAMmG,UAAU,GAAG,KAAKhG,gBAAL,CAAsB,OAAtB,EAA+BL,YAA/B,EAA6CC,QAA7C,CAAnB;AACA,WAAO,KAAKhC,QAAL,CAAcqI,UAAd,CAAyB,YAAzB,EAAuCD,UAAvC,CAAP;AACD;AAED;AACF;AACA;AACA;AACA;AACA;;;AACEE,EAAAA,kBAAkB,CAACvG,YAAmC,GAAG,EAAvC,EAA2CC,QAAQ,GAAGC,qBAAtD,EAA0D;AAC1E,UAAMmG,UAAU,GAAG,KAAKtG,gBAAL,CAAsB,OAAtB,EAA+BC,YAA/B,EAA6CC,QAA7C,CAAnB;AACA,WAAO,KAAKhC,QAAL,CAAcqI,UAAd,CAAyB,YAAzB,EAAuCD,UAAvC,CAAP;AACD;;AAEOR,EAAAA,eAAe,CAAC7F,YAAmC,GAAG,EAAvC,EAA2CC,QAAQ,GAAGC,qBAAtD,EAA0D;AAC/E,WAAO,KAAKqG,kBAAL,CAAwBvG,YAAxB,EAAsCC,QAAtC,CAAP;AACD;;AAEoB,QAAfuG,eAAe,GAAG;AACtB,WAAO;AACLC,MAAAA,IAAI,EAAElJ;AADD,KAAP;AAGD;;AAjaH","sourcesContent":["import ts, { TsConfigSourceFile } from 'typescript';\nimport { tmpdir } from 'os';\nimport { Component } from '@teambit/component';\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 { 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 { ESLintMain, EslintConfigTransformer } from '@teambit/eslint';\nimport { PrettierConfigTransformer, PrettierMain } from '@teambit/prettier';\nimport { Linter, LinterContext } from '@teambit/linter';\nimport { Formatter, FormatterContext } from '@teambit/formatter';\nimport { pathNormalizeToLinux } from '@teambit/legacy/dist/utils';\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';\n// Makes sure the @teambit/react.ui.docs-app is a dependency\n// TODO: remove this import once we can set policy from component to component with workspace version. Then set it via the component.json\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport { 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';\n\n// webpack configs for components only\nimport componentPreviewProdConfigFactory from './webpack/webpack.config.component.prod';\nimport componentPreviewDevConfigFactory from './webpack/webpack.config.component.dev';\nimport { generateAddAliasesFromPeersTransformer, generateExposePeersTransformer } from './webpack/transformers';\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.js');\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 eslint: ESLintMain,\n\n private prettier: PrettierMain,\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 * Get a jest tester instance with react config and cjs configs\n * @param jestConfigPath\n * @param jestModulePath\n * @returns\n */\n getCjsJestTester(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 * Get a jest tester instance with react config and esm configs\n * @param jestConfigPath\n * @param jestModulePath\n * @returns\n */\n getEsmJestTester(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.getEsmJestTester(jestConfigPath, jestModulePath);\n return this.getCjsJestTester(jestConfigPath, jestModulePath);\n }\n\n private getTsCompilerOptions(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 * 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 getTsCjsCompiler(mode: CompilerMode = 'dev', transformers: TsConfigTransformer[] = [], tsModule = ts) {\n const tsCompileOptions = this.getTsCompilerOptions(mode);\n return this.tsAspect.createCjsCompiler(tsCompileOptions, 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 getTsEsmCompiler(mode: CompilerMode = 'dev', transformers: TsConfigTransformer[] = [], tsModule = ts) {\n const tsCompileOptions = this.getTsCompilerOptions(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.getTsCjsCompiler('dev', transformers, tsModule);\n }\n\n /**\n * returns and configures the component linter.\n */\n getLinter(context: LinterContext, transformers: EslintConfigTransformer[] = []): Linter {\n const defaultTransformer: EslintConfigTransformer = (configMutator) => {\n configMutator.addExtensionTypes(['.md', '.mdx']);\n return configMutator;\n };\n\n const allTransformers = [defaultTransformer, ...transformers];\n\n return this.eslint.createLinter(\n context,\n {\n config: eslintConfig,\n // resolve all plugins from the react environment.\n pluginPath: __dirname,\n },\n allTransformers\n );\n }\n\n /**\n * returns and configures the component formatter.\n */\n getFormatter(context: FormatterContext, transformers: PrettierConfigTransformer[] = []): Formatter {\n return this.prettier.createFormatter(\n context,\n {\n config: prettierConfig,\n },\n transformers\n );\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): SchemaExtractor {\n return this.tsAspect.createSchemaExtractor(this.getTsConfig(tsconfig));\n }\n\n /**\n * returns and configures the React component dev server.\n * required for `bit start`\n */\n getDevServer(context: DevServerContext, transformers: WebpackConfigTransformer[] = []): DevServer {\n const baseConfig = basePreviewConfigFactory(false);\n const envDevConfig = envPreviewDevConfigFactory(context.id);\n const componentDevConfig = componentPreviewDevConfigFactory(this.workspace.path, context.id);\n const peers = this.getAllHostDependencies();\n const peerAliasesTransformer = generateAddAliasesFromPeersTransformer(peers, this.logger);\n\n const defaultTransformer: WebpackConfigTransformer = (configMutator) => {\n const merged = configMutator.merge([baseConfig, envDevConfig, componentDevConfig]);\n return merged;\n };\n\n return this.webpack.createDevServer(context, [defaultTransformer, peerAliasesTransformer, ...transformers]);\n }\n\n async getBundler(context: BundlerContext, transformers: WebpackConfigTransformer[] = []): Promise<Bundler> {\n return this.createComponentsWebpackBundler(context, transformers);\n }\n\n async createComponentsWebpackBundler(\n context: BundlerContext,\n transformers: WebpackConfigTransformer[] = []\n ): Promise<Bundler> {\n const peers = this.getAllHostDependencies();\n const peerAliasesTransformer = generateAddAliasesFromPeersTransformer(peers, this.logger);\n const baseConfig = basePreviewConfigFactory(!context.development);\n const baseProdConfig = basePreviewProdConfigFactory(Boolean(context.externalizePeer), peers, 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, peerAliasesTransformer, ...transformers];\n return this.createWebpackBundler(context, mergedTransformers);\n }\n\n async createTemplateWebpackBundler(\n context: BundlerContext,\n transformers: WebpackConfigTransformer[] = []\n ): Promise<Bundler> {\n const peers = this.getAllHostDependencies();\n const peerAliasesTransformer = generateAddAliasesFromPeersTransformer(peers, this.logger);\n const exposePeersTransformer = generateExposePeersTransformer(peers, this.logger);\n const baseConfig = basePreviewConfigFactory(!context.development);\n const baseProdConfig = basePreviewProdConfigFactory(Boolean(context.externalizePeer), peers, context.development);\n\n const defaultTransformer: WebpackConfigTransformer = (configMutator) => {\n const merged = configMutator.merge([baseConfig, baseProdConfig]);\n return merged;\n };\n const mergedTransformers = [defaultTransformer, peerAliasesTransformer, exposePeersTransformer, ...transformers];\n return this.createWebpackBundler(context, mergedTransformers);\n }\n\n private async createWebpackBundler(\n context: BundlerContext,\n transformers: WebpackConfigTransformer[] = []\n ): Promise<Bundler> {\n return this.webpack.createBundler(context, transformers);\n }\n\n /**\n * Get the peers configured by the env on the components + the host deps configured by the env\n */\n getAllHostDependencies() {\n const envComponentPeers = Object.keys(this.getDependencies().peerDependencies || {}) || [];\n const additionalHostDeps = this.getAdditionalHostDependencies() || [];\n const peers = envComponentPeers.concat(additionalHostDeps);\n return peers;\n }\n\n getAdditionalHostDependencies(): string[] {\n return ['@teambit/mdx.ui.mdx-scope-context', '@mdx-js/react'];\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 a paths to a function which mounts a given component to DOM\n */\n getMounter() {\n return require.resolve('./mount');\n }\n\n getPreviewConfig() {\n return {\n strategyName: 'component',\n splitComponentBundle: 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 * Get the default package.json props for a cjs component\n * @returns\n */\n getCjsPackageJsonProps(): PackageJsonProps {\n return this.tsAspect.getCjsPackageJsonProps();\n }\n\n /**\n * Get the default package.json props for an esm component\n * @returns\n */\n getEsmPackageJsonProps(): PackageJsonProps {\n return this.tsAspect.getEsmPackageJsonProps();\n }\n\n getNpmIgnore() {\n // ignores only .ts files in the root directory, so d.ts files inside dists are unaffected.\n // without this change, the package has \"index.ts\" file in the root, causing typescript to parse it instead of the\n // d.ts files. (changing the \"types\" prop in the package.json file doesn't help).\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.12.18',\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: TsConfigTransformer[] =\n (modifiers?.tsModifier?.transformers as any as TsConfigTransformer[]) || [];\n return [this.getCompilerTask(transformers, modifiers?.tsModifier?.module || ts), this.tester.task];\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 getBuildPipeWithoutCompiler(): BuildTask[] {\n const pipeWithoutCompiler = this.getBuildPipe().filter((task) => task.aspectId !== this.compilerAspectId);\n return pipeWithoutCompiler;\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 getEsmCompilerTask(transformers: TsConfigTransformer[] = [], tsModule = ts) {\n const tsCompiler = this.getTsEsmCompiler('build', transformers, tsModule);\n return this.compiler.createTask('TSCompiler', tsCompiler);\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 getCjsCompilerTask(transformers: TsConfigTransformer[] = [], tsModule = ts) {\n const tsCompiler = this.getTsCjsCompiler('build', transformers, tsModule);\n return this.compiler.createTask('TSCompiler', tsCompiler);\n }\n\n private getCompilerTask(transformers: TsConfigTransformer[] = [], tsModule = ts) {\n return this.getCjsCompilerTask(transformers, tsModule);\n }\n\n async __getDescriptor() {\n return {\n type: ReactEnvType,\n };\n }\n}\n"]}
1
+ {"version":3,"names":["ReactEnvType","defaultTsConfig","require","buildTsConfig","eslintConfig","prettierConfig","ReactEnv","constructor","jestAspect","tsAspect","compiler","webpack","workspace","pkg","tester","config","eslint","prettier","dependencyResolver","logger","compilerAspectId","getTsConfig","targetTsConfig","merge","getBuildTsConfig","getCjsJestTester","jestConfigPath","jestModulePath","pathToSource","pathNormalizeToLinux","__dirname","replace","defaultConfig","join","createTester","resolve","getEsmJestTester","getTester","getTsCompilerOptions","mode","tsconfig","cloneDeep","compileJs","compileJsx","types","getTsCjsCompiler","transformers","tsModule","ts","tsCompileOptions","createCjsCompiler","getTsEsmCompiler","createEsmCompiler","getCompiler","getLinter","context","defaultTransformer","configMutator","addExtensionTypes","allTransformers","createLinter","pluginPath","getFormatter","createFormatter","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","createSchemaExtractor","getDevServer","baseConfig","basePreviewConfigFactory","envDevConfig","envPreviewDevConfigFactory","componentDevConfig","componentPreviewDevConfigFactory","merged","createDevServer","getBundler","createComponentsWebpackBundler","development","baseProdConfig","basePreviewProdConfigFactory","componentProdConfig","componentPreviewProdConfigFactory","mergedTransformers","createWebpackBundler","createTemplateWebpackBundler","createBundler","getPeerDependenciesList","getPeerDependenciesListFromEnv","getAdditionalHostDependencies","getDocsTemplate","getMounter","getPreviewConfig","strategyName","splitComponentBundle","getPackageJsonProps","getCjsPackageJsonProps","getEsmPackageJsonProps","getNpmIgnore","CAPSULE_ARTIFACTS_DIR","getDependencies","dependencies","react","devDependencies","peerDependencies","getBuildPipe","modifiers","tsModifier","getCompilerTask","module","task","getBuildPipeWithoutCompiler","pipeWithoutCompiler","filter","aspectId","getEsmCompilerTask","tsCompiler","createTask","getCjsCompilerTask","__getDescriptor","type"],"sources":["react.env.ts"],"sourcesContent":["import ts, { TsConfigSourceFile } from 'typescript';\nimport { tmpdir } from 'os';\nimport { Component } from '@teambit/component';\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 { 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 { ESLintMain, EslintConfigTransformer } from '@teambit/eslint';\nimport { PrettierConfigTransformer, PrettierMain } from '@teambit/prettier';\nimport { DependencyResolverMain } from '@teambit/dependency-resolver';\nimport { Linter, LinterContext } from '@teambit/linter';\nimport { Formatter, FormatterContext } from '@teambit/formatter';\nimport { pathNormalizeToLinux } from '@teambit/legacy/dist/utils';\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';\n// Makes sure the @teambit/react.ui.docs-app is a dependency\n// TODO: remove this import once we can set policy from component to component with workspace version. Then set it via the component.json\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport { 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';\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.js');\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 eslint: ESLintMain,\n\n private prettier: PrettierMain,\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 * Get a jest tester instance with react config and cjs configs\n * @param jestConfigPath\n * @param jestModulePath\n * @returns\n */\n getCjsJestTester(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 * Get a jest tester instance with react config and esm configs\n * @param jestConfigPath\n * @param jestModulePath\n * @returns\n */\n getEsmJestTester(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.getEsmJestTester(jestConfigPath, jestModulePath);\n return this.getCjsJestTester(jestConfigPath, jestModulePath);\n }\n\n private getTsCompilerOptions(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 * 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 getTsCjsCompiler(mode: CompilerMode = 'dev', transformers: TsConfigTransformer[] = [], tsModule = ts) {\n const tsCompileOptions = this.getTsCompilerOptions(mode);\n return this.tsAspect.createCjsCompiler(tsCompileOptions, 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 getTsEsmCompiler(mode: CompilerMode = 'dev', transformers: TsConfigTransformer[] = [], tsModule = ts) {\n const tsCompileOptions = this.getTsCompilerOptions(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.getTsCjsCompiler('dev', transformers, tsModule);\n }\n\n /**\n * returns and configures the component linter.\n */\n getLinter(context: LinterContext, transformers: EslintConfigTransformer[] = []): Linter {\n const defaultTransformer: EslintConfigTransformer = (configMutator) => {\n configMutator.addExtensionTypes(['.md', '.mdx']);\n return configMutator;\n };\n\n const allTransformers = [defaultTransformer, ...transformers];\n\n return this.eslint.createLinter(\n context,\n {\n config: eslintConfig,\n // resolve all plugins from the react environment.\n pluginPath: __dirname,\n },\n allTransformers\n );\n }\n\n /**\n * returns and configures the component formatter.\n */\n getFormatter(context: FormatterContext, transformers: PrettierConfigTransformer[] = []): Formatter {\n return this.prettier.createFormatter(\n context,\n {\n config: prettierConfig,\n },\n transformers\n );\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): SchemaExtractor {\n return this.tsAspect.createSchemaExtractor(this.getTsConfig(tsconfig));\n }\n\n /**\n * returns and configures the React component dev server.\n * required for `bit start`\n */\n getDevServer(context: DevServerContext, transformers: WebpackConfigTransformer[] = []): 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(context, [defaultTransformer, ...transformers]);\n }\n\n async getBundler(context: BundlerContext, transformers: WebpackConfigTransformer[] = []): Promise<Bundler> {\n return this.createComponentsWebpackBundler(context, transformers);\n }\n\n async createComponentsWebpackBundler(\n context: BundlerContext,\n transformers: WebpackConfigTransformer[] = []\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);\n }\n\n async createTemplateWebpackBundler(\n context: BundlerContext,\n transformers: WebpackConfigTransformer[] = []\n ): Promise<Bundler> {\n const baseConfig = basePreviewConfigFactory(!context.development);\n const baseProdConfig = basePreviewProdConfigFactory(context.development);\n\n const defaultTransformer: WebpackConfigTransformer = (configMutator) => {\n const merged = configMutator.merge([baseConfig, baseProdConfig]);\n return merged;\n };\n const mergedTransformers = [defaultTransformer, ...transformers];\n return this.createWebpackBundler(context, mergedTransformers);\n }\n\n private async createWebpackBundler(\n context: BundlerContext,\n transformers: WebpackConfigTransformer[] = []\n ): Promise<Bundler> {\n return this.webpack.createBundler(context, transformers);\n }\n\n /**\n * Get the peers configured by the env on the components + the host deps configured by the env\n */\n getPeerDependenciesList() {\n return this.dependencyResolver.getPeerDependenciesListFromEnv(this);\n }\n\n getAdditionalHostDependencies(): string[] {\n return ['@teambit/mdx.ui.mdx-scope-context', '@mdx-js/react', 'react'];\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 a paths to a function which mounts a given component to DOM\n */\n getMounter() {\n return require.resolve('./mount');\n }\n\n getPreviewConfig() {\n return {\n strategyName: 'component',\n splitComponentBundle: 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 * Get the default package.json props for a cjs component\n * @returns\n */\n getCjsPackageJsonProps(): PackageJsonProps {\n return this.tsAspect.getCjsPackageJsonProps();\n }\n\n /**\n * Get the default package.json props for an esm component\n * @returns\n */\n getEsmPackageJsonProps(): PackageJsonProps {\n return this.tsAspect.getEsmPackageJsonProps();\n }\n\n getNpmIgnore() {\n // ignores only .ts files in the root directory, so d.ts files inside dists are unaffected.\n // without this change, the package has \"index.ts\" file in the root, causing typescript to parse it instead of the\n // d.ts files. (changing the \"types\" prop in the package.json file doesn't help).\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.12.18',\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: TsConfigTransformer[] =\n (modifiers?.tsModifier?.transformers as any as TsConfigTransformer[]) || [];\n return [this.getCompilerTask(transformers, modifiers?.tsModifier?.module || ts), this.tester.task];\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 getBuildPipeWithoutCompiler(): BuildTask[] {\n const pipeWithoutCompiler = this.getBuildPipe().filter((task) => task.aspectId !== this.compilerAspectId);\n return pipeWithoutCompiler;\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 getEsmCompilerTask(transformers: TsConfigTransformer[] = [], tsModule = ts) {\n const tsCompiler = this.getTsEsmCompiler('build', transformers, tsModule);\n return this.compiler.createTask('TSCompiler', tsCompiler);\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 getCjsCompilerTask(transformers: TsConfigTransformer[] = [], tsModule = ts) {\n const tsCompiler = this.getTsCjsCompiler('build', transformers, tsModule);\n return this.compiler.createTask('TSCompiler', tsCompiler);\n }\n\n private getCompilerTask(transformers: TsConfigTransformer[] = [], tsModule = ts) {\n return this.getCjsCompilerTask(transformers, tsModule);\n }\n\n async __getDescriptor() {\n return {\n type: ReactEnvType,\n };\n }\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["react.graphql.ts"],"names":["reactSchema","react","typeDefs","resolvers","ComponentHost","getDocs","host","id","componentId","resolveComponentId","component","get","empty","abstract","filePath","properties","docs"],"mappings":";;;;;;;;;;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAIO,SAASA,WAAT,CAAqBC,KAArB,EAAuC;AAC5C,SAAO;AACLC,IAAAA,QAAQ,EAAE,0BAAI;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAxBS;AAyBLC,IAAAA,SAAS,EAAE;AACTC,MAAAA,aAAa,EAAE;AACbC,QAAAA,OAAO,EAAE,OAAOC,IAAP,EAA+B;AAAEC,UAAAA;AAAF,SAA/B,KAA0D;AACjE,gBAAMC,WAAW,GAAG,MAAMF,IAAI,CAACG,kBAAL,CAAwBF,EAAxB,CAA1B;AACA,gBAAMG,SAAS,GAAG,MAAMJ,IAAI,CAACK,GAAL,CAASH,WAAT,CAAxB;AACA,gBAAMI,KAAK,GAAG;AACZC,YAAAA,QAAQ,EAAE,EADE;AAEZC,YAAAA,QAAQ,EAAE,EAFE;AAGZC,YAAAA,UAAU,EAAE;AAHA,WAAd;AAMA,cAAI,CAACL,SAAL,EAAgB,OAAOE,KAAP;AAChB,gBAAMI,IAAI,GAAGf,KAAK,CAACI,OAAN,CAAcK,SAAd,CAAb;AACA,cAAI,CAACM,IAAL,EAAW,OAAOJ,KAAP;AAEX,iBAAOI,IAAP;AACD;AAfY;AADN;AAzBN,GAAP;AA6CD","sourcesContent":["import { ComponentFactory } from '@teambit/component';\nimport gql from 'graphql-tag';\n\nimport { ReactMain } from './react.main.runtime';\n\nexport function reactSchema(react: ReactMain) {\n return {\n typeDefs: gql`\n extend type ComponentHost {\n getDocs(id: String!): ReactDocs\n }\n\n type ReactDocs {\n abstract: String\n filePath: String\n properties: [Property]\n }\n\n type Property {\n name: String\n description: String\n required: Boolean\n type: String\n defaultValue: DefaultValue\n }\n\n type DefaultValue {\n value: String\n computed: Boolean\n }\n `,\n resolvers: {\n ComponentHost: {\n getDocs: async (host: ComponentFactory, { id }: { id: string }) => {\n const componentId = await host.resolveComponentId(id);\n const component = await host.get(componentId);\n const empty = {\n abstract: '',\n filePath: '',\n properties: [],\n };\n\n if (!component) return empty;\n const docs = react.getDocs(component);\n if (!docs) return empty;\n\n return docs;\n },\n },\n },\n };\n}\n"]}
1
+ {"version":3,"names":["reactSchema","react","typeDefs","gql","resolvers","ComponentHost","getDocs","host","id","componentId","resolveComponentId","component","get","empty","abstract","filePath","properties","docs"],"sources":["react.graphql.ts"],"sourcesContent":["import { ComponentFactory } from '@teambit/component';\nimport gql from 'graphql-tag';\n\nimport { ReactMain } from './react.main.runtime';\n\nexport function reactSchema(react: ReactMain) {\n return {\n typeDefs: gql`\n extend type ComponentHost {\n getDocs(id: String!): ReactDocs\n }\n\n type ReactDocs {\n abstract: String\n filePath: String\n properties: [Property]\n }\n\n type Property {\n name: String\n description: String\n required: Boolean\n type: String\n defaultValue: DefaultValue\n }\n\n type DefaultValue {\n value: String\n computed: Boolean\n }\n `,\n resolvers: {\n ComponentHost: {\n getDocs: async (host: ComponentFactory, { id }: { id: string }) => {\n const componentId = await host.resolveComponentId(id);\n const component = await host.get(componentId);\n const empty = {\n abstract: '',\n filePath: '',\n properties: [],\n };\n\n if (!component) return empty;\n const docs = react.getDocs(component);\n if (!docs) return empty;\n\n return docs;\n },\n },\n },\n };\n}\n"],"mappings":";;;;;;;;;;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAIO,SAASA,WAAT,CAAqBC,KAArB,EAAuC;EAC5C,OAAO;IACLC,QAAQ,EAAE,IAAAC,qBAAA,CAAI;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAxBS;IAyBLC,SAAS,EAAE;MACTC,aAAa,EAAE;QACbC,OAAO,EAAE,OAAOC,IAAP,EAA+B;UAAEC;QAAF,CAA/B,KAA0D;UACjE,MAAMC,WAAW,GAAG,MAAMF,IAAI,CAACG,kBAAL,CAAwBF,EAAxB,CAA1B;UACA,MAAMG,SAAS,GAAG,MAAMJ,IAAI,CAACK,GAAL,CAASH,WAAT,CAAxB;UACA,MAAMI,KAAK,GAAG;YACZC,QAAQ,EAAE,EADE;YAEZC,QAAQ,EAAE,EAFE;YAGZC,UAAU,EAAE;UAHA,CAAd;UAMA,IAAI,CAACL,SAAL,EAAgB,OAAOE,KAAP;UAChB,MAAMI,IAAI,GAAGhB,KAAK,CAACK,OAAN,CAAcK,SAAd,CAAb;UACA,IAAI,CAACM,IAAL,EAAW,OAAOJ,KAAP;UAEX,OAAOI,IAAP;QACD;MAfY;IADN;EAzBN,CAAP;AA6CD"}
@@ -11,7 +11,7 @@ import type { TypescriptMain, TsCompilerOptionsWithoutTsConfig, TsConfigTransfor
11
11
  import type { WebpackMain, Configuration, WebpackConfigTransformer } from '@teambit/webpack';
12
12
  import { GeneratorMain } from '@teambit/generator';
13
13
  import { Workspace } from '@teambit/workspace';
14
- import { EnvPolicyConfigObject } from '@teambit/dependency-resolver';
14
+ import { DependencyResolverMain, EnvPolicyConfigObject } from '@teambit/dependency-resolver';
15
15
  import { ApplicationMain } from '@teambit/application';
16
16
  import { LoggerMain } from '@teambit/logger';
17
17
  import { ESLintMain, EslintConfigTransformer } from '@teambit/eslint';
@@ -33,6 +33,7 @@ declare type ReactDeps = [
33
33
  PrettierMain,
34
34
  ApplicationMain,
35
35
  GeneratorMain,
36
+ DependencyResolverMain,
36
37
  LoggerMain
37
38
  ];
38
39
  export declare type ReactMainConfig = {
@@ -176,6 +177,6 @@ export declare class ReactMain {
176
177
  } | null;
177
178
  static runtime: import("@teambit/harmony").RuntimeDefinition;
178
179
  static dependencies: import("@teambit/harmony").Aspect[];
179
- static provider([envs, jestAspect, tsAspect, compiler, webpack, workspace, graphql, pkg, tester, eslint, prettier, application, generator, loggerMain,]: ReactDeps, config: ReactMainConfig): Promise<ReactMain>;
180
+ static provider([envs, jestAspect, tsAspect, compiler, webpack, workspace, graphql, pkg, tester, eslint, prettier, application, generator, dependencyResolver, loggerMain,]: ReactDeps, config: ReactMainConfig): Promise<ReactMain>;
180
181
  }
181
182
  export {};
@@ -153,6 +153,16 @@ function _workspace() {
153
153
  return data;
154
154
  }
155
155
 
156
+ function _dependencyResolver() {
157
+ const data = require("@teambit/dependency-resolver");
158
+
159
+ _dependencyResolver = function () {
160
+ return data;
161
+ };
162
+
163
+ return data;
164
+ }
165
+
156
166
  function _typescript2() {
157
167
  const data = _interopRequireDefault(require("typescript"));
158
168
 
@@ -574,9 +584,9 @@ class ReactMain {
574
584
  };
575
585
  }
576
586
 
577
- static async provider([envs, jestAspect, tsAspect, compiler, webpack, workspace, graphql, pkg, tester, eslint, prettier, application, generator, loggerMain], config) {
587
+ static async provider([envs, jestAspect, tsAspect, compiler, webpack, workspace, graphql, pkg, tester, eslint, prettier, application, generator, dependencyResolver, loggerMain], config) {
578
588
  const logger = loggerMain.createLogger(_react().ReactAspect.id);
579
- const reactEnv = new (_react2().ReactEnv)(jestAspect, tsAspect, compiler, webpack, workspace, pkg, tester, config, eslint, prettier, logger, _compiler().CompilerAspect.id);
589
+ const reactEnv = new (_react2().ReactEnv)(jestAspect, tsAspect, compiler, webpack, workspace, pkg, tester, config, eslint, prettier, dependencyResolver, logger, _compiler().CompilerAspect.id);
580
590
  const appType = new (_web().ReactAppType)('react-app', reactEnv);
581
591
  const react = new ReactMain(reactEnv, envs, application, appType);
582
592
  graphql.register((0, _react3().reactSchema)(react));
@@ -591,7 +601,7 @@ class ReactMain {
591
601
 
592
602
  exports.ReactMain = ReactMain;
593
603
  (0, _defineProperty2().default)(ReactMain, "runtime", _cli().MainRuntime);
594
- (0, _defineProperty2().default)(ReactMain, "dependencies", [_envs().EnvsAspect, _jest().JestAspect, _typescript().TypescriptAspect, _compiler().CompilerAspect, _webpack().WebpackAspect, _workspace().WorkspaceAspect, _graphql().GraphqlAspect, _pkg().PkgAspect, _tester().TesterAspect, _eslint().ESLintAspect, _prettier().PrettierAspect, _application().ApplicationAspect, _generator().GeneratorAspect, _logger().LoggerAspect]);
604
+ (0, _defineProperty2().default)(ReactMain, "dependencies", [_envs().EnvsAspect, _jest().JestAspect, _typescript().TypescriptAspect, _compiler().CompilerAspect, _webpack().WebpackAspect, _workspace().WorkspaceAspect, _graphql().GraphqlAspect, _pkg().PkgAspect, _tester().TesterAspect, _eslint().ESLintAspect, _prettier().PrettierAspect, _application().ApplicationAspect, _generator().GeneratorAspect, _dependencyResolver().DependencyResolverAspect, _logger().LoggerAspect]);
595
605
 
596
606
  _react().ReactAspect.addRuntime(ReactMain);
597
607
 
@@ -1 +1 @@
1
- {"version":3,"sources":["react.main.runtime.ts"],"names":["ReactMain","constructor","reactEnv","envs","application","reactAppType","getReactAppType","name","ReactAppType","registerApp","reactApp","createApp","useTypescript","modifiers","tsModule","ts","overrides","devTransformers","devConfig","getCompiler","buildTransformers","buildConfig","buildPipeModifiers","tsModifier","transformers","module","getBuildPipe","override","overrideTsConfig","tsconfig","compilerOptions","transformer","configMutator","mergeTsConfig","raw","compileJs","compileJsx","types","addTypes","genericCompilerOptions","Object","assign","overrideDocsTemplate","templatePath","getDocsTemplate","overrideBuildTsConfig","useWebpack","devServerTransformers","devServerConfig","getDevServer","context","getDevEnvId","envDefinition","id","previewTransformers","previewConfig","getBundler","useEslint","getLinter","usePrettier","getFormatter","overrideDevServerConfig","config","merge","overridePreviewConfig","overrideMounter","mounterPath","getMounter","compose","targetEnv","overrideJestConfig","jestConfigPath","jestModulePath","getTester","overrideBuildPipe","tasks","overrideCompilerTasks","pipeWithoutCompiler","getBuildPipeWithoutCompiler","overrideDependencies","dependencyPolicy","getDependencies","reactDeps","overrideCompiler","compiler","overrideEslintConfig","overridePackageJsonProps","props","getPackageJsonProps","getDocs","component","docsArray","state","_consumer","docs","abstract","description","filePath","properties","provider","jestAspect","tsAspect","webpack","workspace","graphql","pkg","tester","eslint","prettier","generator","loggerMain","logger","createLogger","ReactAspect","ReactEnv","CompilerAspect","appType","react","register","registerEnv","registerComponentTemplate","componentTemplates","registerWorkspaceTemplate","workspaceTemplates","registerAppType","MainRuntime","EnvsAspect","JestAspect","TypescriptAspect","WebpackAspect","WorkspaceAspect","GraphqlAspect","PkgAspect","TesterAspect","ESLintAspect","PrettierAspect","ApplicationAspect","GeneratorAspect","LoggerAspect","addRuntime"],"mappings":"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","sourcesContent":["import mergeDeepLeft from 'ramda/src/mergeDeepLeft';\nimport { omit } from 'lodash';\nimport { MainRuntime } from '@teambit/cli';\nimport type { CompilerMain } from '@teambit/compiler';\nimport { CompilerAspect, Compiler } from '@teambit/compiler';\nimport { BuildTask } from '@teambit/builder';\nimport { Component } from '@teambit/component';\nimport { EnvsAspect, EnvsMain, EnvTransformer, Environment } from '@teambit/envs';\nimport type { GraphqlMain } from '@teambit/graphql';\nimport { GraphqlAspect } from '@teambit/graphql';\nimport type { JestMain } from '@teambit/jest';\nimport { JestAspect } from '@teambit/jest';\nimport type { PkgMain, PackageJsonProps } from '@teambit/pkg';\nimport { PkgAspect } from '@teambit/pkg';\nimport type { TesterMain } from '@teambit/tester';\nimport { TesterAspect } from '@teambit/tester';\nimport type { TypescriptMain, TsCompilerOptionsWithoutTsConfig, TsConfigTransformer } from '@teambit/typescript';\nimport { TypescriptAspect } from '@teambit/typescript';\nimport type { WebpackMain, Configuration, WebpackConfigTransformer } from '@teambit/webpack';\nimport { WebpackAspect } from '@teambit/webpack';\nimport { GeneratorAspect, GeneratorMain } from '@teambit/generator';\nimport { Workspace, WorkspaceAspect } from '@teambit/workspace';\nimport { DevServerContext, BundlerContext } from '@teambit/bundler';\nimport { EnvPolicyConfigObject } from '@teambit/dependency-resolver';\nimport ts from 'typescript';\nimport { ApplicationAspect, ApplicationMain } from '@teambit/application';\nimport { FormatterContext } from '@teambit/formatter';\nimport { LinterContext } from '@teambit/linter';\nimport { LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { ESLintMain, ESLintAspect, EslintConfigTransformer } from '@teambit/eslint';\nimport { PrettierMain, PrettierAspect, PrettierConfigTransformer } from '@teambit/prettier';\nimport { ReactAspect } from './react.aspect';\nimport { ReactEnv } from './react.env';\nimport { ReactAppType } from './apps/web';\nimport { reactSchema } from './react.graphql';\nimport { componentTemplates, workspaceTemplates } from './react.templates';\nimport { ReactAppOptions } from './apps/web/react-app-options';\n\ntype ReactDeps = [\n EnvsMain,\n JestMain,\n TypescriptMain,\n CompilerMain,\n WebpackMain,\n Workspace,\n GraphqlMain,\n PkgMain,\n TesterMain,\n ESLintMain,\n PrettierMain,\n ApplicationMain,\n GeneratorMain,\n LoggerMain\n];\n\nexport type ReactMainConfig = {\n /**\n * configure the react env compiler.\n * can be configured to either TypeScript ('ts') or Babel ('babel').\n */\n compiler: 'babel' | 'ts';\n\n /**\n * configure the component tester.\n * can be either Jest ('jest') or Mocha ('mocha')\n */\n tester: 'jest' | 'mocha';\n\n /**\n * version of React to configure.\n */\n reactVersion: string;\n};\n\nexport type UseWebpackModifiers = {\n previewConfig?: WebpackConfigTransformer[];\n devServerConfig?: WebpackConfigTransformer[];\n};\n\nexport type UseTypescriptModifiers = {\n buildConfig?: TsConfigTransformer[];\n devConfig?: TsConfigTransformer[];\n};\n\nexport type UseEslintModifiers = {\n transformers: EslintConfigTransformer[];\n};\nexport type UsePrettierModifiers = {\n transformers: PrettierConfigTransformer[];\n};\n\nexport class ReactMain {\n constructor(\n /**\n * an instance of the React env.\n */\n readonly reactEnv: ReactEnv,\n\n private envs: EnvsMain,\n\n private application: ApplicationMain,\n\n private reactAppType: ReactAppType\n ) {}\n\n readonly env = this.reactEnv;\n\n getReactAppType(name: string) {\n return new ReactAppType(name, this.reactEnv);\n }\n\n /**\n * use this to register apps programmatically.\n */\n async registerApp(reactApp: ReactAppOptions) {\n return this.application.registerApp(await this.reactAppType.createApp(reactApp));\n }\n\n /**\n * override the env's typescript config for both dev and build time.\n * Replaces both overrideTsConfig (devConfig) and overrideBuildTsConfig (buildConfig)\n */\n useTypescript(modifiers?: UseTypescriptModifiers, tsModule: any = ts) {\n const overrides: any = {};\n const devTransformers = modifiers?.devConfig;\n if (devTransformers) {\n overrides.getCompiler = () => this.reactEnv.getCompiler(devTransformers, tsModule);\n }\n const buildTransformers = modifiers?.buildConfig;\n if (buildTransformers) {\n const buildPipeModifiers = {\n tsModifier: {\n transformers: buildTransformers,\n module: tsModule,\n },\n };\n overrides.getBuildPipe = () => this.reactEnv.getBuildPipe(buildPipeModifiers);\n }\n return this.envs.override(overrides);\n }\n\n /**\n * @deprecated use useTypescript()\n * override the TS config of the React environment.\n * @param tsModule typeof `ts` module instance.\n */\n overrideTsConfig(\n tsconfig: Record<string, any> = {},\n compilerOptions: Partial<TsCompilerOptionsWithoutTsConfig> = {},\n tsModule: any = ts\n ) {\n const transformer: TsConfigTransformer = (configMutator) => {\n configMutator.mergeTsConfig(tsconfig);\n configMutator.raw.compileJs = compilerOptions.compileJs ?? configMutator.raw.compileJs;\n configMutator.raw.compileJsx = compilerOptions.compileJsx ?? configMutator.raw.compileJsx;\n if (compilerOptions.types) {\n configMutator.addTypes(compilerOptions.types);\n }\n const genericCompilerOptions = omit(compilerOptions, ['types', 'compileJs', 'compileJsx']);\n configMutator.raw = Object.assign(configMutator.raw, genericCompilerOptions);\n return configMutator;\n };\n // return this.envs.override({\n // getCompiler: () => this.reactEnv.getCompiler([transformer], tsModule),\n // });\n return this.useTypescript({ devConfig: [transformer] }, tsModule);\n }\n\n /**\n * Override the Bit documentation link. See docs: https://bit.dev/docs/docs/doc-templates\n */\n overrideDocsTemplate(templatePath: string) {\n return this.envs.override({\n getDocsTemplate: () => templatePath,\n });\n }\n\n /**\n * @deprecated use useTypescript()\n * override the build tsconfig.\n */\n overrideBuildTsConfig(\n tsconfig: Record<string, any> = {},\n compilerOptions: Partial<TsCompilerOptionsWithoutTsConfig> = {},\n tsModule: any = ts\n ) {\n const transformer: TsConfigTransformer = (configMutator) => {\n configMutator.mergeTsConfig(tsconfig);\n configMutator.raw.compileJs = compilerOptions.compileJs ?? configMutator.raw.compileJs;\n configMutator.raw.compileJsx = compilerOptions.compileJsx ?? configMutator.raw.compileJsx;\n if (compilerOptions.types) {\n configMutator.addTypes(compilerOptions.types);\n }\n const genericCompilerOptions = omit(compilerOptions, ['types', 'compileJs', 'compileJsx']);\n configMutator.raw = Object.assign(configMutator.raw, genericCompilerOptions);\n return configMutator;\n };\n // return this.envs.override({\n // getBuildPipe: () => this.reactEnv.getBuildPipe([transformer], tsModule),\n // });\n return this.useTypescript({ buildConfig: [transformer] }, tsModule);\n }\n\n /**\n * override the env's dev server and preview webpack configurations.\n * Replaces both overrideDevServerConfig and overridePreviewConfig\n */\n useWebpack(modifiers?: UseWebpackModifiers): EnvTransformer {\n const overrides: any = {};\n const devServerTransformers = modifiers?.devServerConfig;\n if (devServerTransformers) {\n overrides.getDevServer = (context: DevServerContext) =>\n this.reactEnv.getDevServer(context, devServerTransformers);\n overrides.getDevEnvId = (context: DevServerContext) => this.reactEnv.getDevEnvId(context.envDefinition.id);\n }\n const previewTransformers = modifiers?.previewConfig;\n if (previewTransformers) {\n overrides.getBundler = (context: BundlerContext) => this.reactEnv.getBundler(context, previewTransformers);\n }\n return this.envs.override(overrides);\n }\n\n /**\n * An API to mutate the prettier config\n * @param modifiers\n * @returns\n */\n useEslint(modifiers?: UseEslintModifiers): EnvTransformer {\n const transformers = modifiers?.transformers || [];\n return this.envs.override({\n getLinter: (context: LinterContext) => this.reactEnv.getLinter(context, transformers),\n });\n }\n\n /**\n * An API to mutate the prettier config\n * @param modifiers\n * @returns\n */\n usePrettier(modifiers?: UsePrettierModifiers): EnvTransformer {\n const transformers = modifiers?.transformers || [];\n return this.envs.override({\n getFormatter: (context: FormatterContext) => this.reactEnv.getFormatter(context, transformers),\n });\n }\n\n /**\n * @deprecated use useWebpack()\n * override the dev server webpack config.\n */\n overrideDevServerConfig(config: Configuration) {\n const transformer: WebpackConfigTransformer = (configMutator) => {\n return configMutator.merge([config]);\n };\n\n return this.envs.override({\n getDevServer: (context: DevServerContext) => this.reactEnv.getDevServer(context, [transformer]),\n getDevEnvId: (context: DevServerContext) => this.reactEnv.getDevEnvId(context.envDefinition.id),\n });\n }\n\n /**\n * @deprecated use useWebpack()\n * override the preview webpack config.\n */\n overridePreviewConfig(config: Configuration) {\n const transformer: WebpackConfigTransformer = (configMutator) => {\n return configMutator.merge([config]);\n };\n return this.envs.override({\n getBundler: (context: BundlerContext) => this.reactEnv.getBundler(context, [transformer]),\n });\n }\n\n overrideMounter(mounterPath: string) {\n return this.envs.override({\n getMounter: () => {\n return mounterPath;\n },\n });\n }\n\n /**\n * create a new composition of the react environment.\n */\n compose(transformers: EnvTransformer[], targetEnv: Environment = {}) {\n return this.envs.compose(this.envs.merge(targetEnv, this.reactEnv), transformers);\n }\n\n /**\n * override the jest configuration.\n * @param jestConfigPath {typeof jest} absolute path to jest.config.json.\n * @param jestModulePath absolute path to jest\n */\n overrideJestConfig(jestConfigPath: string, jestModulePath?: string) {\n return this.envs.override({\n getTester: () => this.reactEnv.getTester(jestConfigPath, jestModulePath),\n });\n }\n\n /**\n * override the build pipeline of the component environment.\n */\n overrideBuildPipe(tasks: BuildTask[]) {\n return this.envs.override({\n getBuildPipe: () => tasks,\n });\n }\n\n /**\n * override the compiler tasks inside the build pipeline of the component environment.\n */\n overrideCompilerTasks(tasks: BuildTask[]) {\n const pipeWithoutCompiler = this.reactEnv.getBuildPipeWithoutCompiler();\n\n return this.envs.override({\n getBuildPipe: () => [...tasks, ...pipeWithoutCompiler],\n });\n }\n\n /**\n * override the dependency configuration of the component environment.\n */\n overrideDependencies(dependencyPolicy: EnvPolicyConfigObject) {\n return this.envs.override({\n getDependencies: async () => {\n const reactDeps = await this.reactEnv.getDependencies();\n return mergeDeepLeft(dependencyPolicy, reactDeps);\n },\n });\n }\n\n /**\n * override the workspace compiler.\n */\n overrideCompiler(compiler: Compiler) {\n return this.envs.override({\n getCompiler: () => {\n return compiler;\n },\n });\n }\n\n /**\n * TODO: @gilad we need to implement this.\n */\n overrideEslintConfig() {}\n\n /**\n * override the package json props of the component environment.\n */\n overridePackageJsonProps(props: PackageJsonProps) {\n return this.envs.override({\n getPackageJsonProps: () => {\n return {\n ...this.reactEnv.getPackageJsonProps(),\n ...props,\n };\n },\n });\n }\n\n /**\n * returns doc adjusted specifically for react components.\n */\n getDocs(component: Component) {\n const docsArray = component.state._consumer.docs;\n if (!docsArray || !docsArray[0]) {\n return null;\n }\n\n const docs = docsArray[0];\n\n return {\n abstract: docs.description,\n filePath: docs.filePath,\n properties: docs.properties,\n };\n }\n\n static runtime = MainRuntime;\n static dependencies = [\n EnvsAspect,\n JestAspect,\n TypescriptAspect,\n CompilerAspect,\n WebpackAspect,\n WorkspaceAspect,\n GraphqlAspect,\n PkgAspect,\n TesterAspect,\n ESLintAspect,\n PrettierAspect,\n ApplicationAspect,\n GeneratorAspect,\n LoggerAspect,\n ];\n\n static async provider(\n [\n envs,\n jestAspect,\n tsAspect,\n compiler,\n webpack,\n workspace,\n graphql,\n pkg,\n tester,\n eslint,\n prettier,\n application,\n generator,\n loggerMain,\n ]: ReactDeps,\n config: ReactMainConfig\n ) {\n const logger = loggerMain.createLogger(ReactAspect.id);\n const reactEnv = new ReactEnv(\n jestAspect,\n tsAspect,\n compiler,\n webpack,\n workspace,\n pkg,\n tester,\n config,\n eslint,\n prettier,\n logger,\n CompilerAspect.id\n );\n const appType = new ReactAppType('react-app', reactEnv);\n const react = new ReactMain(reactEnv, envs, application, appType);\n graphql.register(reactSchema(react));\n envs.registerEnv(reactEnv);\n generator.registerComponentTemplate(componentTemplates);\n generator.registerWorkspaceTemplate(workspaceTemplates);\n application.registerAppType(appType);\n\n return react;\n }\n}\n\nReactAspect.addRuntime(ReactMain);\n"]}
1
+ {"version":3,"names":["ReactMain","constructor","reactEnv","envs","application","reactAppType","getReactAppType","name","ReactAppType","registerApp","reactApp","createApp","useTypescript","modifiers","tsModule","ts","overrides","devTransformers","devConfig","getCompiler","buildTransformers","buildConfig","buildPipeModifiers","tsModifier","transformers","module","getBuildPipe","override","overrideTsConfig","tsconfig","compilerOptions","transformer","configMutator","mergeTsConfig","raw","compileJs","compileJsx","types","addTypes","genericCompilerOptions","omit","Object","assign","overrideDocsTemplate","templatePath","getDocsTemplate","overrideBuildTsConfig","useWebpack","devServerTransformers","devServerConfig","getDevServer","context","getDevEnvId","envDefinition","id","previewTransformers","previewConfig","getBundler","useEslint","getLinter","usePrettier","getFormatter","overrideDevServerConfig","config","merge","overridePreviewConfig","overrideMounter","mounterPath","getMounter","compose","targetEnv","overrideJestConfig","jestConfigPath","jestModulePath","getTester","overrideBuildPipe","tasks","overrideCompilerTasks","pipeWithoutCompiler","getBuildPipeWithoutCompiler","overrideDependencies","dependencyPolicy","getDependencies","reactDeps","mergeDeepLeft","overrideCompiler","compiler","overrideEslintConfig","overridePackageJsonProps","props","getPackageJsonProps","getDocs","component","docsArray","state","_consumer","docs","abstract","description","filePath","properties","provider","jestAspect","tsAspect","webpack","workspace","graphql","pkg","tester","eslint","prettier","generator","dependencyResolver","loggerMain","logger","createLogger","ReactAspect","ReactEnv","CompilerAspect","appType","react","register","reactSchema","registerEnv","registerComponentTemplate","componentTemplates","registerWorkspaceTemplate","workspaceTemplates","registerAppType","MainRuntime","EnvsAspect","JestAspect","TypescriptAspect","WebpackAspect","WorkspaceAspect","GraphqlAspect","PkgAspect","TesterAspect","ESLintAspect","PrettierAspect","ApplicationAspect","GeneratorAspect","DependencyResolverAspect","LoggerAspect","addRuntime"],"sources":["react.main.runtime.ts"],"sourcesContent":["import mergeDeepLeft from 'ramda/src/mergeDeepLeft';\nimport { omit } from 'lodash';\nimport { MainRuntime } from '@teambit/cli';\nimport type { CompilerMain } from '@teambit/compiler';\nimport { CompilerAspect, Compiler } from '@teambit/compiler';\nimport { BuildTask } from '@teambit/builder';\nimport { Component } from '@teambit/component';\nimport { EnvsAspect, EnvsMain, EnvTransformer, Environment } from '@teambit/envs';\nimport type { GraphqlMain } from '@teambit/graphql';\nimport { GraphqlAspect } from '@teambit/graphql';\nimport type { JestMain } from '@teambit/jest';\nimport { JestAspect } from '@teambit/jest';\nimport type { PkgMain, PackageJsonProps } from '@teambit/pkg';\nimport { PkgAspect } from '@teambit/pkg';\nimport type { TesterMain } from '@teambit/tester';\nimport { TesterAspect } from '@teambit/tester';\nimport type { TypescriptMain, TsCompilerOptionsWithoutTsConfig, TsConfigTransformer } from '@teambit/typescript';\nimport { TypescriptAspect } from '@teambit/typescript';\nimport type { WebpackMain, Configuration, WebpackConfigTransformer } from '@teambit/webpack';\nimport { WebpackAspect } from '@teambit/webpack';\nimport { GeneratorAspect, GeneratorMain } from '@teambit/generator';\nimport { Workspace, WorkspaceAspect } from '@teambit/workspace';\nimport { DevServerContext, BundlerContext } from '@teambit/bundler';\nimport { DependencyResolverAspect, DependencyResolverMain, EnvPolicyConfigObject } from '@teambit/dependency-resolver';\nimport ts from 'typescript';\nimport { ApplicationAspect, ApplicationMain } from '@teambit/application';\nimport { FormatterContext } from '@teambit/formatter';\nimport { LinterContext } from '@teambit/linter';\nimport { LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { ESLintMain, ESLintAspect, EslintConfigTransformer } from '@teambit/eslint';\nimport { PrettierMain, PrettierAspect, PrettierConfigTransformer } from '@teambit/prettier';\nimport { ReactAspect } from './react.aspect';\nimport { ReactEnv } from './react.env';\nimport { ReactAppType } from './apps/web';\nimport { reactSchema } from './react.graphql';\nimport { componentTemplates, workspaceTemplates } from './react.templates';\nimport { ReactAppOptions } from './apps/web/react-app-options';\n\ntype ReactDeps = [\n EnvsMain,\n JestMain,\n TypescriptMain,\n CompilerMain,\n WebpackMain,\n Workspace,\n GraphqlMain,\n PkgMain,\n TesterMain,\n ESLintMain,\n PrettierMain,\n ApplicationMain,\n GeneratorMain,\n DependencyResolverMain,\n LoggerMain\n];\n\nexport type ReactMainConfig = {\n /**\n * configure the react env compiler.\n * can be configured to either TypeScript ('ts') or Babel ('babel').\n */\n compiler: 'babel' | 'ts';\n\n /**\n * configure the component tester.\n * can be either Jest ('jest') or Mocha ('mocha')\n */\n tester: 'jest' | 'mocha';\n\n /**\n * version of React to configure.\n */\n reactVersion: string;\n};\n\nexport type UseWebpackModifiers = {\n previewConfig?: WebpackConfigTransformer[];\n devServerConfig?: WebpackConfigTransformer[];\n};\n\nexport type UseTypescriptModifiers = {\n buildConfig?: TsConfigTransformer[];\n devConfig?: TsConfigTransformer[];\n};\n\nexport type UseEslintModifiers = {\n transformers: EslintConfigTransformer[];\n};\nexport type UsePrettierModifiers = {\n transformers: PrettierConfigTransformer[];\n};\n\nexport class ReactMain {\n constructor(\n /**\n * an instance of the React env.\n */\n readonly reactEnv: ReactEnv,\n\n private envs: EnvsMain,\n\n private application: ApplicationMain,\n\n private reactAppType: ReactAppType\n ) {}\n\n readonly env = this.reactEnv;\n\n getReactAppType(name: string) {\n return new ReactAppType(name, this.reactEnv);\n }\n\n /**\n * use this to register apps programmatically.\n */\n async registerApp(reactApp: ReactAppOptions) {\n return this.application.registerApp(await this.reactAppType.createApp(reactApp));\n }\n\n /**\n * override the env's typescript config for both dev and build time.\n * Replaces both overrideTsConfig (devConfig) and overrideBuildTsConfig (buildConfig)\n */\n useTypescript(modifiers?: UseTypescriptModifiers, tsModule: any = ts) {\n const overrides: any = {};\n const devTransformers = modifiers?.devConfig;\n if (devTransformers) {\n overrides.getCompiler = () => this.reactEnv.getCompiler(devTransformers, tsModule);\n }\n const buildTransformers = modifiers?.buildConfig;\n if (buildTransformers) {\n const buildPipeModifiers = {\n tsModifier: {\n transformers: buildTransformers,\n module: tsModule,\n },\n };\n overrides.getBuildPipe = () => this.reactEnv.getBuildPipe(buildPipeModifiers);\n }\n return this.envs.override(overrides);\n }\n\n /**\n * @deprecated use useTypescript()\n * override the TS config of the React environment.\n * @param tsModule typeof `ts` module instance.\n */\n overrideTsConfig(\n tsconfig: Record<string, any> = {},\n compilerOptions: Partial<TsCompilerOptionsWithoutTsConfig> = {},\n tsModule: any = ts\n ) {\n const transformer: TsConfigTransformer = (configMutator) => {\n configMutator.mergeTsConfig(tsconfig);\n configMutator.raw.compileJs = compilerOptions.compileJs ?? configMutator.raw.compileJs;\n configMutator.raw.compileJsx = compilerOptions.compileJsx ?? configMutator.raw.compileJsx;\n if (compilerOptions.types) {\n configMutator.addTypes(compilerOptions.types);\n }\n const genericCompilerOptions = omit(compilerOptions, ['types', 'compileJs', 'compileJsx']);\n configMutator.raw = Object.assign(configMutator.raw, genericCompilerOptions);\n return configMutator;\n };\n // return this.envs.override({\n // getCompiler: () => this.reactEnv.getCompiler([transformer], tsModule),\n // });\n return this.useTypescript({ devConfig: [transformer] }, tsModule);\n }\n\n /**\n * Override the Bit documentation link. See docs: https://bit.dev/docs/docs/doc-templates\n */\n overrideDocsTemplate(templatePath: string) {\n return this.envs.override({\n getDocsTemplate: () => templatePath,\n });\n }\n\n /**\n * @deprecated use useTypescript()\n * override the build tsconfig.\n */\n overrideBuildTsConfig(\n tsconfig: Record<string, any> = {},\n compilerOptions: Partial<TsCompilerOptionsWithoutTsConfig> = {},\n tsModule: any = ts\n ) {\n const transformer: TsConfigTransformer = (configMutator) => {\n configMutator.mergeTsConfig(tsconfig);\n configMutator.raw.compileJs = compilerOptions.compileJs ?? configMutator.raw.compileJs;\n configMutator.raw.compileJsx = compilerOptions.compileJsx ?? configMutator.raw.compileJsx;\n if (compilerOptions.types) {\n configMutator.addTypes(compilerOptions.types);\n }\n const genericCompilerOptions = omit(compilerOptions, ['types', 'compileJs', 'compileJsx']);\n configMutator.raw = Object.assign(configMutator.raw, genericCompilerOptions);\n return configMutator;\n };\n // return this.envs.override({\n // getBuildPipe: () => this.reactEnv.getBuildPipe([transformer], tsModule),\n // });\n return this.useTypescript({ buildConfig: [transformer] }, tsModule);\n }\n\n /**\n * override the env's dev server and preview webpack configurations.\n * Replaces both overrideDevServerConfig and overridePreviewConfig\n */\n useWebpack(modifiers?: UseWebpackModifiers): EnvTransformer {\n const overrides: any = {};\n const devServerTransformers = modifiers?.devServerConfig;\n if (devServerTransformers) {\n overrides.getDevServer = (context: DevServerContext) =>\n this.reactEnv.getDevServer(context, devServerTransformers);\n overrides.getDevEnvId = (context: DevServerContext) => this.reactEnv.getDevEnvId(context.envDefinition.id);\n }\n const previewTransformers = modifiers?.previewConfig;\n if (previewTransformers) {\n overrides.getBundler = (context: BundlerContext) => this.reactEnv.getBundler(context, previewTransformers);\n }\n return this.envs.override(overrides);\n }\n\n /**\n * An API to mutate the prettier config\n * @param modifiers\n * @returns\n */\n useEslint(modifiers?: UseEslintModifiers): EnvTransformer {\n const transformers = modifiers?.transformers || [];\n return this.envs.override({\n getLinter: (context: LinterContext) => this.reactEnv.getLinter(context, transformers),\n });\n }\n\n /**\n * An API to mutate the prettier config\n * @param modifiers\n * @returns\n */\n usePrettier(modifiers?: UsePrettierModifiers): EnvTransformer {\n const transformers = modifiers?.transformers || [];\n return this.envs.override({\n getFormatter: (context: FormatterContext) => this.reactEnv.getFormatter(context, transformers),\n });\n }\n\n /**\n * @deprecated use useWebpack()\n * override the dev server webpack config.\n */\n overrideDevServerConfig(config: Configuration) {\n const transformer: WebpackConfigTransformer = (configMutator) => {\n return configMutator.merge([config]);\n };\n\n return this.envs.override({\n getDevServer: (context: DevServerContext) => this.reactEnv.getDevServer(context, [transformer]),\n getDevEnvId: (context: DevServerContext) => this.reactEnv.getDevEnvId(context.envDefinition.id),\n });\n }\n\n /**\n * @deprecated use useWebpack()\n * override the preview webpack config.\n */\n overridePreviewConfig(config: Configuration) {\n const transformer: WebpackConfigTransformer = (configMutator) => {\n return configMutator.merge([config]);\n };\n return this.envs.override({\n getBundler: (context: BundlerContext) => this.reactEnv.getBundler(context, [transformer]),\n });\n }\n\n overrideMounter(mounterPath: string) {\n return this.envs.override({\n getMounter: () => {\n return mounterPath;\n },\n });\n }\n\n /**\n * create a new composition of the react environment.\n */\n compose(transformers: EnvTransformer[], targetEnv: Environment = {}) {\n return this.envs.compose(this.envs.merge(targetEnv, this.reactEnv), transformers);\n }\n\n /**\n * override the jest configuration.\n * @param jestConfigPath {typeof jest} absolute path to jest.config.json.\n * @param jestModulePath absolute path to jest\n */\n overrideJestConfig(jestConfigPath: string, jestModulePath?: string) {\n return this.envs.override({\n getTester: () => this.reactEnv.getTester(jestConfigPath, jestModulePath),\n });\n }\n\n /**\n * override the build pipeline of the component environment.\n */\n overrideBuildPipe(tasks: BuildTask[]) {\n return this.envs.override({\n getBuildPipe: () => tasks,\n });\n }\n\n /**\n * override the compiler tasks inside the build pipeline of the component environment.\n */\n overrideCompilerTasks(tasks: BuildTask[]) {\n const pipeWithoutCompiler = this.reactEnv.getBuildPipeWithoutCompiler();\n\n return this.envs.override({\n getBuildPipe: () => [...tasks, ...pipeWithoutCompiler],\n });\n }\n\n /**\n * override the dependency configuration of the component environment.\n */\n overrideDependencies(dependencyPolicy: EnvPolicyConfigObject) {\n return this.envs.override({\n getDependencies: async () => {\n const reactDeps = await this.reactEnv.getDependencies();\n return mergeDeepLeft(dependencyPolicy, reactDeps);\n },\n });\n }\n\n /**\n * override the workspace compiler.\n */\n overrideCompiler(compiler: Compiler) {\n return this.envs.override({\n getCompiler: () => {\n return compiler;\n },\n });\n }\n\n /**\n * TODO: @gilad we need to implement this.\n */\n overrideEslintConfig() {}\n\n /**\n * override the package json props of the component environment.\n */\n overridePackageJsonProps(props: PackageJsonProps) {\n return this.envs.override({\n getPackageJsonProps: () => {\n return {\n ...this.reactEnv.getPackageJsonProps(),\n ...props,\n };\n },\n });\n }\n\n /**\n * returns doc adjusted specifically for react components.\n */\n getDocs(component: Component) {\n const docsArray = component.state._consumer.docs;\n if (!docsArray || !docsArray[0]) {\n return null;\n }\n\n const docs = docsArray[0];\n\n return {\n abstract: docs.description,\n filePath: docs.filePath,\n properties: docs.properties,\n };\n }\n\n static runtime = MainRuntime;\n static dependencies = [\n EnvsAspect,\n JestAspect,\n TypescriptAspect,\n CompilerAspect,\n WebpackAspect,\n WorkspaceAspect,\n GraphqlAspect,\n PkgAspect,\n TesterAspect,\n ESLintAspect,\n PrettierAspect,\n ApplicationAspect,\n GeneratorAspect,\n DependencyResolverAspect,\n LoggerAspect,\n ];\n\n static async provider(\n [\n envs,\n jestAspect,\n tsAspect,\n compiler,\n webpack,\n workspace,\n graphql,\n pkg,\n tester,\n eslint,\n prettier,\n application,\n generator,\n dependencyResolver,\n loggerMain,\n ]: ReactDeps,\n config: ReactMainConfig\n ) {\n const logger = loggerMain.createLogger(ReactAspect.id);\n const reactEnv = new ReactEnv(\n jestAspect,\n tsAspect,\n compiler,\n webpack,\n workspace,\n pkg,\n tester,\n config,\n eslint,\n prettier,\n dependencyResolver,\n logger,\n CompilerAspect.id\n );\n const appType = new ReactAppType('react-app', reactEnv);\n const react = new ReactMain(reactEnv, envs, application, appType);\n graphql.register(reactSchema(react));\n envs.registerEnv(reactEnv);\n generator.registerComponentTemplate(componentTemplates);\n generator.registerWorkspaceTemplate(workspaceTemplates);\n application.registerAppType(appType);\n\n return react;\n }\n}\n\nReactAspect.addRuntime(ReactMain);\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["react.preview.runtime.ts"],"names":["ReactPreview","constructor","preview","providerSlot","aspectsFilter","entries","toArray","allowedAspects","Set","add","ReactAspect","id","filter","aspectId","has","providers","map","provider","registerProvider","register","config","reactPreview","HighlighterProvider","registerRenderContext","getRenderingContext","PreviewRuntime","Slot","withType","PreviewAspect","addRuntime"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;;;;;AAKO,MAAMA,YAAN,CAAmB;AACxBC,EAAAA,WAAW,CAASC,OAAT,EAA0CC,YAA1C,EAAsE;AAAA,SAA7DD,OAA6D,GAA7DA,OAA6D;AAAA,SAA5BC,YAA4B,GAA5BA,YAA4B;AAAA,iEAMjC,CAAC;AAAEC,MAAAA;AAAF,KAAD,KAAuB;AACrE,UAAIC,OAAO,GAAG,KAAKF,YAAL,CAAkBG,OAAlB,EAAd;;AAEA,UAAIF,aAAJ,EAAmB;AACjB,cAAMG,cAAc,GAAG,IAAIC,GAAJ,CAAQJ,aAAR,CAAvB;AACAG,QAAAA,cAAc,CAACE,GAAf,CAAmBC,qBAAYC,EAA/B;AAEAN,QAAAA,OAAO,GAAGA,OAAO,CAACO,MAAR,CAAe,CAAC,CAACC,QAAD,CAAD,KAAgBN,cAAc,CAACO,GAAf,CAAmBD,QAAnB,CAA/B,CAAV;AACD;;AAED,YAAME,SAAS,GAAG,uBAAQV,OAAO,CAACW,GAAR,CAAY,CAAC,GAAGC,QAAH,CAAD,KAAkBA,QAA9B,CAAR,CAAlB;AAEA,aAAO;AACLF,QAAAA;AADK,OAAP;AAGD,KArBgF;AAAE;;AAEnFG,EAAAA,gBAAgB,CAACD,QAAD,EAAuB;AACrC,SAAKd,YAAL,CAAkBgB,QAAlB,CAA2BF,QAA3B;AACD;;AAyBoB,eAARA,QAAQ,CAAC,CAACf,OAAD,CAAD,EAA8BkB,MAA9B,EAAsC,CAACjB,YAAD,CAAtC,EAAsE;AACzF,UAAMkB,YAAY,GAAG,IAAIrB,YAAJ,CAAiBE,OAAjB,EAA0BC,YAA1B,CAArB;AAEAkB,IAAAA,YAAY,CAACH,gBAAb,CAA8B,CAACI,8BAAD,CAA9B;AAEApB,IAAAA,OAAO,CAACqB,qBAAR,CAA8BF,YAAY,CAACG,mBAA3C;AAEA,WAAOH,YAAP;AACD;;AAtCuB;;;gCAAbrB,Y,aAwBMyB,yB;gCAxBNzB,Y,WA0BI,CAAC0B,gBAAKC,QAAL,EAAD,C;gCA1BJ3B,Y,kBA4BW,CAAC4B,kBAAD,C;;AAaxBlB,qBAAYmB,UAAZ,CAAuB7B,YAAvB;;eAEeA,Y","sourcesContent":["import { ComponentType } from 'react';\nimport flatten from 'lodash.flatten';\nimport { SlotRegistry, Slot } from '@teambit/harmony';\nimport PreviewAspect, { PreviewPreview, PreviewRuntime, RenderingContextProvider } from '@teambit/preview';\nimport { HighlighterProvider } from '@teambit/react.ui.highlighter-provider';\nimport { ReactAspect } from './react.aspect';\n\nexport type Provider = ComponentType<{}>;\nexport type ProviderSlot = SlotRegistry<Provider[]>;\n\nexport class ReactPreview {\n constructor(private preview: PreviewPreview, private providerSlot: ProviderSlot) {}\n\n registerProvider(provider: Provider[]) {\n this.providerSlot.register(provider);\n }\n\n getRenderingContext: RenderingContextProvider = ({ aspectsFilter }) => {\n let entries = this.providerSlot.toArray();\n\n if (aspectsFilter) {\n const allowedAspects = new Set(aspectsFilter);\n allowedAspects.add(ReactAspect.id);\n\n entries = entries.filter(([aspectId]) => allowedAspects.has(aspectId));\n }\n\n const providers = flatten(entries.map(([, provider]) => provider));\n\n return {\n providers,\n };\n };\n\n static runtime = PreviewRuntime;\n\n static slots = [Slot.withType<Provider>()];\n\n static dependencies = [PreviewAspect];\n\n static async provider([preview]: [PreviewPreview], config, [providerSlot]: [ProviderSlot]) {\n const reactPreview = new ReactPreview(preview, providerSlot);\n\n reactPreview.registerProvider([HighlighterProvider]);\n\n preview.registerRenderContext(reactPreview.getRenderingContext);\n\n return reactPreview;\n }\n}\n\nReactAspect.addRuntime(ReactPreview);\n\nexport default ReactPreview;\n"]}
1
+ {"version":3,"names":["ReactPreview","constructor","preview","providerSlot","aspectsFilter","entries","toArray","allowedAspects","Set","add","ReactAspect","id","filter","aspectId","has","providers","flatten","map","provider","registerProvider","register","config","reactPreview","HighlighterProvider","registerRenderContext","getRenderingContext","PreviewRuntime","Slot","withType","PreviewAspect","addRuntime"],"sources":["react.preview.runtime.ts"],"sourcesContent":["import { ComponentType } from 'react';\nimport flatten from 'lodash.flatten';\nimport { SlotRegistry, Slot } from '@teambit/harmony';\nimport PreviewAspect, { PreviewPreview, PreviewRuntime, RenderingContextProvider } from '@teambit/preview';\nimport { HighlighterProvider } from '@teambit/react.ui.highlighter-provider';\nimport { ReactAspect } from './react.aspect';\n\nexport type Provider = ComponentType<{}>;\nexport type ProviderSlot = SlotRegistry<Provider[]>;\n\nexport class ReactPreview {\n constructor(private preview: PreviewPreview, private providerSlot: ProviderSlot) {}\n\n registerProvider(provider: Provider[]) {\n this.providerSlot.register(provider);\n }\n\n getRenderingContext: RenderingContextProvider = ({ aspectsFilter }) => {\n let entries = this.providerSlot.toArray();\n\n if (aspectsFilter) {\n const allowedAspects = new Set(aspectsFilter);\n allowedAspects.add(ReactAspect.id);\n\n entries = entries.filter(([aspectId]) => allowedAspects.has(aspectId));\n }\n\n const providers = flatten(entries.map(([, provider]) => provider));\n\n return {\n providers,\n };\n };\n\n static runtime = PreviewRuntime;\n\n static slots = [Slot.withType<Provider>()];\n\n static dependencies = [PreviewAspect];\n\n static async provider([preview]: [PreviewPreview], config, [providerSlot]: [ProviderSlot]) {\n const reactPreview = new ReactPreview(preview, providerSlot);\n\n reactPreview.registerProvider([HighlighterProvider]);\n\n preview.registerRenderContext(reactPreview.getRenderingContext);\n\n return reactPreview;\n }\n}\n\nReactAspect.addRuntime(ReactPreview);\n\nexport default ReactPreview;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;;;;;AAKO,MAAMA,YAAN,CAAmB;EACxBC,WAAW,CAASC,OAAT,EAA0CC,YAA1C,EAAsE;IAAA,KAA7DD,OAA6D,GAA7DA,OAA6D;IAAA,KAA5BC,YAA4B,GAA5BA,YAA4B;IAAA,6DAMjC,CAAC;MAAEC;IAAF,CAAD,KAAuB;MACrE,IAAIC,OAAO,GAAG,KAAKF,YAAL,CAAkBG,OAAlB,EAAd;;MAEA,IAAIF,aAAJ,EAAmB;QACjB,MAAMG,cAAc,GAAG,IAAIC,GAAJ,CAAQJ,aAAR,CAAvB;QACAG,cAAc,CAACE,GAAf,CAAmBC,oBAAA,CAAYC,EAA/B;QAEAN,OAAO,GAAGA,OAAO,CAACO,MAAR,CAAe,CAAC,CAACC,QAAD,CAAD,KAAgBN,cAAc,CAACO,GAAf,CAAmBD,QAAnB,CAA/B,CAAV;MACD;;MAED,MAAME,SAAS,GAAG,IAAAC,iBAAA,EAAQX,OAAO,CAACY,GAAR,CAAY,CAAC,GAAGC,QAAH,CAAD,KAAkBA,QAA9B,CAAR,CAAlB;MAEA,OAAO;QACLH;MADK,CAAP;IAGD,CArBgF;EAAE;;EAEnFI,gBAAgB,CAACD,QAAD,EAAuB;IACrC,KAAKf,YAAL,CAAkBiB,QAAlB,CAA2BF,QAA3B;EACD;;EAyBoB,aAARA,QAAQ,CAAC,CAAChB,OAAD,CAAD,EAA8BmB,MAA9B,EAAsC,CAAClB,YAAD,CAAtC,EAAsE;IACzF,MAAMmB,YAAY,GAAG,IAAItB,YAAJ,CAAiBE,OAAjB,EAA0BC,YAA1B,CAArB;IAEAmB,YAAY,CAACH,gBAAb,CAA8B,CAACI,8BAAD,CAA9B;IAEArB,OAAO,CAACsB,qBAAR,CAA8BF,YAAY,CAACG,mBAA3C;IAEA,OAAOH,YAAP;EACD;;AAtCuB;;;gCAAbtB,Y,aAwBM0B,yB;gCAxBN1B,Y,WA0BI,CAAC2B,eAAA,CAAKC,QAAL,EAAD,C;gCA1BJ5B,Y,kBA4BW,CAAC6B,kBAAD,C;;AAaxBnB,oBAAA,CAAYoB,UAAZ,CAAuB9B,YAAvB;;eAEeA,Y"}
@@ -1 +1 @@
1
- {"version":3,"sources":["react.templates.ts"],"names":["componentTemplates","reactComponent","reactContext","reactHook","reactComponentJS","reactEnvTemplate","reactAppTemplate","deprecatedReactComponent","deprecatedReactComponentJS","workspaceTemplates","reactWorkspaceTemplate","reactWorkspaceAppTemplate","reactWorkspaceLibTemplate","deprecatedReactWorkspaceTemplate","reactWorkspaceDesignSystemTemplate","reactWorkspaceWikiTemplate","reactWorkspaceAnalyticsTemplate","reactWorkspaceDataFetchingTemplate"],"mappings":";;;;;;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEO,MAAMA,kBAAuC,GAAG,CACrDC,gCADqD,EAErDC,4BAFqD,EAGrDC,sBAHqD,EAIrDC,oCAJqD,EAKrDC,4BALqD,EAMrDC,4BANqD,EAOrDC,0CAPqD,EAQrDC,8CARqD,CAAhD;;AAWA,MAAMC,kBAAuC,GAAG,CACrDC,wCADqD,EAErDC,8CAFqD,EAGrDC,8CAHqD,EAIrDC,4DAJqD,EAKrDC,gEALqD,EAMrDC,gDANqD,EAOrDC,0DAPqD,EAQrDC,gEARqD,CAAhD","sourcesContent":["import { ComponentTemplate, WorkspaceTemplate } from '@teambit/generator';\nimport { reactComponent, deprecatedReactComponent } from './templates/react-component';\nimport { reactComponentJS, deprecatedReactComponentJS } from './templates/react-component-js';\nimport { reactEnvTemplate } from './templates/react-env';\nimport { deprecatedReactWorkspaceTemplate } from './templates/react-workspace-deprecated';\nimport { reactHook } from './templates/react-hook';\nimport { reactContext } from './templates/react-context';\nimport { reactAppTemplate } from './templates/react-app';\nimport { reactWorkspaceTemplate } from './templates/react-workspace';\nimport { reactWorkspaceDesignSystemTemplate } from './templates/react-workspace-design-system';\nimport { reactWorkspaceWikiTemplate } from './templates/react-workspace-wiki';\nimport { reactWorkspaceAnalyticsTemplate } from './templates/react-workspace-analytics';\nimport { reactWorkspaceDataFetchingTemplate } from './templates/react-workspace-data-fetching';\nimport { reactWorkspaceAppTemplate } from './templates/react-workspace-app';\nimport { reactWorkspaceLibTemplate } from './templates/react-workspace-lib';\n\nexport const componentTemplates: ComponentTemplate[] = [\n reactComponent,\n reactContext,\n reactHook,\n reactComponentJS,\n reactEnvTemplate,\n reactAppTemplate,\n deprecatedReactComponent,\n deprecatedReactComponentJS,\n];\n\nexport const workspaceTemplates: WorkspaceTemplate[] = [\n reactWorkspaceTemplate,\n reactWorkspaceAppTemplate,\n reactWorkspaceLibTemplate,\n deprecatedReactWorkspaceTemplate,\n reactWorkspaceDesignSystemTemplate,\n reactWorkspaceWikiTemplate,\n reactWorkspaceAnalyticsTemplate,\n reactWorkspaceDataFetchingTemplate,\n];\n"]}
1
+ {"version":3,"names":["componentTemplates","reactComponent","reactContext","reactHook","reactComponentJS","reactEnvTemplate","reactAppTemplate","deprecatedReactComponent","deprecatedReactComponentJS","workspaceTemplates","reactWorkspaceTemplate","reactWorkspaceAppTemplate","reactWorkspaceLibTemplate","deprecatedReactWorkspaceTemplate","reactWorkspaceDesignSystemTemplate","reactWorkspaceWikiTemplate","reactWorkspaceAnalyticsTemplate","reactWorkspaceDataFetchingTemplate"],"sources":["react.templates.ts"],"sourcesContent":["import { ComponentTemplate, WorkspaceTemplate } from '@teambit/generator';\nimport { reactComponent, deprecatedReactComponent } from './templates/react-component';\nimport { reactComponentJS, deprecatedReactComponentJS } from './templates/react-component-js';\nimport { reactEnvTemplate } from './templates/react-env';\nimport { deprecatedReactWorkspaceTemplate } from './templates/react-workspace-deprecated';\nimport { reactHook } from './templates/react-hook';\nimport { reactContext } from './templates/react-context';\nimport { reactAppTemplate } from './templates/react-app';\nimport { reactWorkspaceTemplate } from './templates/react-workspace';\nimport { reactWorkspaceDesignSystemTemplate } from './templates/react-workspace-design-system';\nimport { reactWorkspaceWikiTemplate } from './templates/react-workspace-wiki';\nimport { reactWorkspaceAnalyticsTemplate } from './templates/react-workspace-analytics';\nimport { reactWorkspaceDataFetchingTemplate } from './templates/react-workspace-data-fetching';\nimport { reactWorkspaceAppTemplate } from './templates/react-workspace-app';\nimport { reactWorkspaceLibTemplate } from './templates/react-workspace-lib';\n\nexport const componentTemplates: ComponentTemplate[] = [\n reactComponent,\n reactContext,\n reactHook,\n reactComponentJS,\n reactEnvTemplate,\n reactAppTemplate,\n deprecatedReactComponent,\n deprecatedReactComponentJS,\n];\n\nexport const workspaceTemplates: WorkspaceTemplate[] = [\n reactWorkspaceTemplate,\n reactWorkspaceAppTemplate,\n reactWorkspaceLibTemplate,\n deprecatedReactWorkspaceTemplate,\n reactWorkspaceDesignSystemTemplate,\n reactWorkspaceWikiTemplate,\n reactWorkspaceAnalyticsTemplate,\n reactWorkspaceDataFetchingTemplate,\n];\n"],"mappings":";;;;;;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEO,MAAMA,kBAAuC,GAAG,CACrDC,gCADqD,EAErDC,4BAFqD,EAGrDC,sBAHqD,EAIrDC,oCAJqD,EAKrDC,4BALqD,EAMrDC,4BANqD,EAOrDC,0CAPqD,EAQrDC,8CARqD,CAAhD;;AAWA,MAAMC,kBAAuC,GAAG,CACrDC,wCADqD,EAErDC,8CAFqD,EAGrDC,8CAHqD,EAIrDC,4DAJqD,EAKrDC,gEALqD,EAMrDC,gDANqD,EAOrDC,0DAPqD,EAQrDC,gEARqD,CAAhD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["react.ui.runtime.tsx"],"names":["ReactUI","provider","compositionsUI","testerUi","reactUI","registerEmptyState","registerMenuWidget","location","content","UIRuntime","CompositionsAspect","TesterAspect","ReactAspect","addRuntime"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEO,MAAMA,OAAN,CAAc;AAKE,eAARC,QAAQ,CAAC,CAACC,cAAD,EAAiBC,QAAjB,CAAD,EAAyD;AAC5E,UAAMC,OAAO,GAAG,IAAIJ,OAAJ,EAAhB;AACAG,IAAAA,QAAQ,CAACE,kBAAT,CAA4B,MAAM;AAChC,0BAAO,+BAAC,qCAAD,OAAP;AACD,KAFD;AAGAH,IAAAA,cAAc,CAACG,kBAAf,CAAkC,MAAM;AACtC,0BAAO,+BAAC,6CAAD,OAAP;AACD,KAFD;AAIAH,IAAAA,cAAc,CAACI,kBAAf,CAAkC;AAChCC,MAAAA,QAAQ,EAAE,OADsB;AAEhCC,MAAAA,OAAO,eAAE,+BAAC,sCAAD;AAFuB,KAAlC;AAKA,WAAOJ,OAAP;AACD;;AApBkB;;;gCAARJ,O,aACMS,e;gCADNT,O,WAEI,E;gCAFJA,O,kBAGW,CAACU,kCAAD,EAAqBC,sBAArB,C;;AAoBxBC,sBAAYC,UAAZ,CAAuBb,OAAvB;;eAEeA,O","sourcesContent":["import React from 'react';\nimport { CompositionsAspect, CompositionsUI } from '@teambit/compositions';\nimport { UIRuntime } from '@teambit/ui';\nimport { TesterAspect, TesterUI } from '@teambit/tester';\nimport { AddingTests } from '@teambit/react.instructions.react.adding-tests';\nimport { AddingCompositions } from '@teambit/react.instructions.react.adding-compositions';\nimport { ReactAspect } from './react.aspect';\nimport { HighlighterWidget } from './highlighter-widget';\n\nexport class ReactUI {\n static runtime = UIRuntime;\n static slots = [];\n static dependencies = [CompositionsAspect, TesterAspect];\n\n static async provider([compositionsUI, testerUi]: [CompositionsUI, TesterUI]) {\n const reactUI = new ReactUI();\n testerUi.registerEmptyState(() => {\n return <AddingTests />;\n });\n compositionsUI.registerEmptyState(() => {\n return <AddingCompositions />;\n });\n\n compositionsUI.registerMenuWidget({\n location: 'start',\n content: <HighlighterWidget />,\n });\n\n return reactUI;\n }\n}\n\nReactAspect.addRuntime(ReactUI);\n\nexport default ReactUI;\n"]}
1
+ {"version":3,"names":["ReactUI","provider","compositionsUI","testerUi","reactUI","registerEmptyState","registerMenuWidget","location","content","UIRuntime","CompositionsAspect","TesterAspect","ReactAspect","addRuntime"],"sources":["react.ui.runtime.tsx"],"sourcesContent":["import React from 'react';\nimport { CompositionsAspect, CompositionsUI } from '@teambit/compositions';\nimport { UIRuntime } from '@teambit/ui';\nimport { TesterAspect, TesterUI } from '@teambit/tester';\nimport { AddingTests } from '@teambit/react.instructions.react.adding-tests';\nimport { AddingCompositions } from '@teambit/react.instructions.react.adding-compositions';\nimport { ReactAspect } from './react.aspect';\nimport { HighlighterWidget } from './highlighter-widget';\n\nexport class ReactUI {\n static runtime = UIRuntime;\n static slots = [];\n static dependencies = [CompositionsAspect, TesterAspect];\n\n static async provider([compositionsUI, testerUi]: [CompositionsUI, TesterUI]) {\n const reactUI = new ReactUI();\n testerUi.registerEmptyState(() => {\n return <AddingTests />;\n });\n compositionsUI.registerEmptyState(() => {\n return <AddingCompositions />;\n });\n\n compositionsUI.registerMenuWidget({\n location: 'start',\n content: <HighlighterWidget />,\n });\n\n return reactUI;\n }\n}\n\nReactAspect.addRuntime(ReactUI);\n\nexport default ReactUI;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEO,MAAMA,OAAN,CAAc;EAKE,aAARC,QAAQ,CAAC,CAACC,cAAD,EAAiBC,QAAjB,CAAD,EAAyD;IAC5E,MAAMC,OAAO,GAAG,IAAIJ,OAAJ,EAAhB;IACAG,QAAQ,CAACE,kBAAT,CAA4B,MAAM;MAChC,oBAAO,+BAAC,qCAAD,OAAP;IACD,CAFD;IAGAH,cAAc,CAACG,kBAAf,CAAkC,MAAM;MACtC,oBAAO,+BAAC,6CAAD,OAAP;IACD,CAFD;IAIAH,cAAc,CAACI,kBAAf,CAAkC;MAChCC,QAAQ,EAAE,OADsB;MAEhCC,OAAO,eAAE,+BAAC,sCAAD;IAFuB,CAAlC;IAKA,OAAOJ,OAAP;EACD;;AApBkB;;;gCAARJ,O,aACMS,e;gCADNT,O,WAEI,E;gCAFJA,O,kBAGW,CAACU,kCAAD,EAAqBC,sBAArB,C;;AAoBxBC,qBAAA,CAAYC,UAAZ,CAAuBb,OAAvB;;eAEeA,O"}
@@ -1 +1 @@
1
- {"version":3,"sources":["app-plugin.ts"],"names":["appPlugin","name","namePascalCase","Name"],"mappings":";;;;;;;AAEO,SAASA,SAAT,CAAmB;AAAEC,EAAAA,IAAF;AAAQC,EAAAA,cAAc,EAAEC;AAAxB,CAAnB,EAAqE;AAC1E,SAAQ;AACV;AACA,eAAeA,IAAK;AACpB,WAAWF,IAAK;AAChB,+BAA+BA,IAAK;AACpC;AACA;AACA;AACA;AACA;AACA,iBAAiBE,IAAK;AACtB,CAXE;AAYD","sourcesContent":["import { ComponentContext } from '@teambit/generator';\n\nexport function appPlugin({ name, namePascalCase: Name }: ComponentContext) {\n return `import { ReactAppOptions } from '@teambit/react';\n\nexport const ${Name}App: ReactAppOptions = {\n name: '${name}',\n entry: [require.resolve('./${name}.app-root')],\n prerender: {\n routes: ['/']\n }\n};\n\nexport default ${Name}App;\n`;\n}\n"]}
1
+ {"version":3,"names":["appPlugin","name","namePascalCase","Name"],"sources":["app-plugin.ts"],"sourcesContent":["import { ComponentContext } from '@teambit/generator';\n\nexport function appPlugin({ name, namePascalCase: Name }: ComponentContext) {\n return `import { ReactAppOptions } from '@teambit/react';\n\nexport const ${Name}App: ReactAppOptions = {\n name: '${name}',\n entry: [require.resolve('./${name}.app-root')],\n prerender: {\n routes: ['/']\n }\n};\n\nexport default ${Name}App;\n`;\n}\n"],"mappings":";;;;;;;AAEO,SAASA,SAAT,CAAmB;EAAEC,IAAF;EAAQC,cAAc,EAAEC;AAAxB,CAAnB,EAAqE;EAC1E,OAAQ;AACV;AACA,eAAeA,IAAK;AACpB,WAAWF,IAAK;AAChB,+BAA+BA,IAAK;AACpC;AACA;AACA;AACA;AACA;AACA,iBAAiBE,IAAK;AACtB,CAXE;AAYD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["app-root.ts"],"names":["appRootFile","namePascalCase","Name"],"mappings":";;;;;;;AAEO,SAASA,WAAT,CAAqB;AAAEC,EAAAA,cAAc,EAAEC;AAAlB,CAArB,EAAiE;AACtE,SAAQ;AACV;AACA;AACA,WAAWA,IAAK;AAChB;AACA;AACA;AACA,OAAOA,IAAK;AACZ;AACA;AACA;AACA,CAXE;AAYD","sourcesContent":["import { ComponentContext } from '@teambit/generator';\n\nexport function appRootFile({ namePascalCase: Name }: ComponentContext) {\n return `import React from 'react';\nimport ReactDOM from 'react-dom';\nimport { BrowserRouter } from 'react-router-dom';\nimport { ${Name}App } from './app';\n\nReactDOM.render((\n <BrowserRouter>\n <${Name}App />\n </BrowserRouter>\n), document.getElementById('root'));\n\n`;\n}\n"]}
1
+ {"version":3,"names":["appRootFile","namePascalCase","Name"],"sources":["app-root.ts"],"sourcesContent":["import { ComponentContext } from '@teambit/generator';\n\nexport function appRootFile({ namePascalCase: Name }: ComponentContext) {\n return `import React from 'react';\nimport ReactDOM from 'react-dom';\nimport { BrowserRouter } from 'react-router-dom';\nimport { ${Name}App } from './app';\n\nReactDOM.render((\n <BrowserRouter>\n <${Name}App />\n </BrowserRouter>\n), document.getElementById('root'));\n\n`;\n}\n"],"mappings":";;;;;;;AAEO,SAASA,WAAT,CAAqB;EAAEC,cAAc,EAAEC;AAAlB,CAArB,EAAiE;EACtE,OAAQ;AACV;AACA;AACA,WAAWA,IAAK;AAChB;AACA;AACA;AACA,OAAOA,IAAK;AACZ;AACA;AACA;AACA,CAXE;AAYD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["app.ts"],"names":["appFile","namePascalCase","Name"],"mappings":";;;;;;;AAEO,SAASA,OAAT,CAAiB;AAAEC,EAAAA,cAAc,EAAEC;AAAlB,CAAjB,EAA6D;AAClE,SAAQ;AACV;AACA;AACA,kBAAkBA,IAAK;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CArBE;AAsBD","sourcesContent":["import { ComponentContext } from '@teambit/generator';\n\nexport function appFile({ namePascalCase: Name }: ComponentContext) {\n return `import React from 'react';\nimport { Routes, Route } from 'react-router-dom';\n\nexport function ${Name}App() {\n return (\n <>\n {/* header component */}\n <Routes>\n <Route path=\"/\" element={<div>Hello World!!</div>}>\n {/* home page component */}\n </Route>\n\n <Route path=\"/about\">\n {/* about page component */}\n </Route>\n\n </Routes>\n {/* footer component */}\n </>\n );\n}\n`;\n}\n"]}
1
+ {"version":3,"names":["appFile","namePascalCase","Name"],"sources":["app.ts"],"sourcesContent":["import { ComponentContext } from '@teambit/generator';\n\nexport function appFile({ namePascalCase: Name }: ComponentContext) {\n return `import React from 'react';\nimport { Routes, Route } from 'react-router-dom';\n\nexport function ${Name}App() {\n return (\n <>\n {/* header component */}\n <Routes>\n <Route path=\"/\" element={<div>Hello World!!</div>}>\n {/* home page component */}\n </Route>\n\n <Route path=\"/about\">\n {/* about page component */}\n </Route>\n\n </Routes>\n {/* footer component */}\n </>\n );\n}\n`;\n}\n"],"mappings":";;;;;;;AAEO,SAASA,OAAT,CAAiB;EAAEC,cAAc,EAAEC;AAAlB,CAAjB,EAA6D;EAClE,OAAQ;AACV;AACA;AACA,kBAAkBA,IAAK;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CArBE;AAsBD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["compositions.ts"],"names":["compositionsFile","namePascalCase","Name"],"mappings":";;;;;;;AAEO,SAASA,gBAAT,CAA0B;AAAEC,EAAAA,cAAc,EAAEC;AAAlB,CAA1B,EAAsE;AAC3E,SAAQ;AACV;AACA,WAAWA,IAAK;AAChB;AACA,eAAeA,IAAK;AACpB;AACA;AACA,SAASA,IAAK;AACd;AACA;AACA;AACA,CAXE;AAYD","sourcesContent":["import { ComponentContext } from '@teambit/generator';\n\nexport function compositionsFile({ namePascalCase: Name }: ComponentContext) {\n return `import React from 'react';\nimport { MemoryRouter } from 'react-router-dom';\nimport { ${Name}App } from './app';\n\nexport const ${Name}Basic = () => {\n return (\n <MemoryRouter>\n <${Name}App />\n </MemoryRouter>\n );\n};\n`;\n}\n"]}
1
+ {"version":3,"names":["compositionsFile","namePascalCase","Name"],"sources":["compositions.ts"],"sourcesContent":["import { ComponentContext } from '@teambit/generator';\n\nexport function compositionsFile({ namePascalCase: Name }: ComponentContext) {\n return `import React from 'react';\nimport { MemoryRouter } from 'react-router-dom';\nimport { ${Name}App } from './app';\n\nexport const ${Name}Basic = () => {\n return (\n <MemoryRouter>\n <${Name}App />\n </MemoryRouter>\n );\n};\n`;\n}\n"],"mappings":";;;;;;;AAEO,SAASA,gBAAT,CAA0B;EAAEC,cAAc,EAAEC;AAAlB,CAA1B,EAAsE;EAC3E,OAAQ;AACV;AACA,WAAWA,IAAK;AAChB;AACA,eAAeA,IAAK;AACpB;AACA;AACA,SAASA,IAAK;AACd;AACA;AACA;AACA,CAXE;AAYD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["doc.ts"],"names":["docFile","name","componentId","nameCamelCase","toString"],"mappings":";;;;;;;AAEO,SAASA,OAAT,CAAiB;AAAEC,EAAAA,IAAF;AAAQC,EAAAA,WAAR;AAAqBC,EAAAA;AAArB,CAAjB,EAAyE;AAC9E,SAAQ;AACV,eAAeA,aAAc;AAC7B,YAAYF,IAAK;AACjB;AACA;AACA;AACA;AACA;AACA,GAAGC,WAAW,CAACE,QAAZ,EAAuB;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAUH,IAAK;AACf;AACA,CAlBE;AAmBD","sourcesContent":["import { ComponentContext } from '@teambit/generator';\n\nexport function docFile({ name, componentId, nameCamelCase }: ComponentContext) {\n return `---\ndescription: ${nameCamelCase} application component.\nlabels: ['${name}', 'app']\n---\n\nConfigure the app plugin on your workspace:\n\n\\`\\`\\`json\n\"${componentId.toString()}\": {},\n\\`\\`\\`\n\n### Run the application\n\nYou can run your application on a separate port to see it outside of the Bit workspace\n\n\\`\\`\\`bash\nbit run ${name}\n\\`\\`\\`\n`;\n}\n"]}
1
+ {"version":3,"names":["docFile","name","componentId","nameCamelCase","toString"],"sources":["doc.ts"],"sourcesContent":["import { ComponentContext } from '@teambit/generator';\n\nexport function docFile({ name, componentId, nameCamelCase }: ComponentContext) {\n return `---\ndescription: ${nameCamelCase} application component.\nlabels: ['${name}', 'app']\n---\n\nConfigure the app plugin on your workspace:\n\n\\`\\`\\`json\n\"${componentId.toString()}\": {},\n\\`\\`\\`\n\n### Run the application\n\nYou can run your application on a separate port to see it outside of the Bit workspace\n\n\\`\\`\\`bash\nbit run ${name}\n\\`\\`\\`\n`;\n}\n"],"mappings":";;;;;;;AAEO,SAASA,OAAT,CAAiB;EAAEC,IAAF;EAAQC,WAAR;EAAqBC;AAArB,CAAjB,EAAyE;EAC9E,OAAQ;AACV,eAAeA,aAAc;AAC7B,YAAYF,IAAK;AACjB;AACA;AACA;AACA;AACA;AACA,GAAGC,WAAW,CAACE,QAAZ,EAAuB;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAUH,IAAK;AACf;AACA,CAlBE;AAmBD"}