@teambit/react 0.0.802 → 0.0.805

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 (45) hide show
  1. package/apps/web/react-app-options.ts +4 -4
  2. package/apps/web/react.app-type.ts +5 -2
  3. package/apps/web/react.application.ts +120 -25
  4. package/apps/web/ssr/ssr-express.ts +81 -0
  5. package/apps/web/webpack/mutators.ts +21 -0
  6. package/apps/web/webpack/webpack.app.ssr.config.ts +37 -0
  7. package/artifacts/__bit_junit.xml +2 -2
  8. package/artifacts/env-template/public/{22.20acd98351f2158a41da.js → 22.0f657f2dfdd8e90d81ba.js} +0 -0
  9. package/artifacts/env-template/public/{697.d653451cb84e67a5a1e6.js → 750.2bbe0002ca73603de518.js} +19 -11
  10. package/artifacts/env-template/public/assets-manifest.json +16 -16
  11. package/artifacts/env-template/public/{compositions.4f32d45facc10b788b84.js → compositions.853254f720441442d37a.js} +1 -1
  12. package/artifacts/env-template/public/compositions.html +1 -1
  13. package/artifacts/env-template/public/{overview.3b7b230063483eef660c.js → overview.0ca27c1c75ca340b6722.js} +1 -1
  14. package/artifacts/env-template/public/overview.html +1 -1
  15. package/artifacts/env-template/public/{peers.185e5d6ee27c15e8a771.js → peers.283551d5f03dbfad5477.js} +1 -1
  16. package/artifacts/env-template/public/{preview-root.291f6f0c253a631863cb.js → preview-root.b859b02336387c766d60.js} +1 -1
  17. package/artifacts/env-template/public/static/css/{697.90cfc900.css → 750.f6840c3e.css} +1 -1
  18. package/artifacts/env-template/public/static/css/{overview.df4a22d4.css → overview.c86de60f.css} +1 -1
  19. package/artifacts/preview/teambit_react_react-preview.js +2 -2
  20. package/{compositions-1659151732866.js → compositions-1659456045857.js} +0 -0
  21. package/dist/apps/web/react-app-options.d.ts +4 -4
  22. package/dist/apps/web/react-app-options.js.map +1 -1
  23. package/dist/apps/web/react.app-type.d.ts +3 -1
  24. package/dist/apps/web/react.app-type.js +3 -2
  25. package/dist/apps/web/react.app-type.js.map +1 -1
  26. package/dist/apps/web/react.application.d.ts +12 -5
  27. package/dist/apps/web/react.application.js +135 -15
  28. package/dist/apps/web/react.application.js.map +1 -1
  29. package/dist/apps/web/ssr/ssr-express.d.ts +15 -0
  30. package/dist/apps/web/ssr/ssr-express.js +151 -0
  31. package/dist/apps/web/ssr/ssr-express.js.map +1 -0
  32. package/dist/apps/web/webpack/mutators.d.ts +3 -0
  33. package/dist/apps/web/webpack/mutators.js +28 -0
  34. package/dist/apps/web/webpack/mutators.js.map +1 -0
  35. package/dist/apps/web/webpack/webpack.app.ssr.config.d.ts +15 -0
  36. package/dist/apps/web/webpack/webpack.app.ssr.config.js +62 -0
  37. package/dist/apps/web/webpack/webpack.app.ssr.config.js.map +1 -0
  38. package/dist/react.main.runtime.d.ts +3 -2
  39. package/dist/react.main.runtime.js +5 -4
  40. package/dist/react.main.runtime.js.map +1 -1
  41. package/{overview-1659151732866.js → overview-1659456045857.js} +0 -0
  42. package/package-tar/teambit-react-0.0.805.tgz +0 -0
  43. package/package.json +40 -32
  44. package/{preview-1659151732866.js → preview-1659456045857.js} +2 -2
  45. package/package-tar/teambit-react-0.0.802.tgz +0 -0
@@ -0,0 +1,151 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ require("core-js/modules/es.array.iterator.js");
6
+
7
+ require("core-js/modules/es.promise.js");
8
+
9
+ Object.defineProperty(exports, "__esModule", {
10
+ value: true
11
+ });
12
+ exports.createExpressSsr = createExpressSsr;
13
+ exports.loadSsrApp = loadSsrApp;
14
+ exports.parseAssets = parseAssets;
15
+
16
+ function _uiFoundationUiPages() {
17
+ const data = require("@teambit/ui-foundation.ui.pages.static-error");
18
+
19
+ _uiFoundationUiPages = function () {
20
+ return data;
21
+ };
22
+
23
+ return data;
24
+ }
25
+
26
+ function _reactRendering() {
27
+ const data = require("@teambit/react.rendering.ssr");
28
+
29
+ _reactRendering = function () {
30
+ return data;
31
+ };
32
+
33
+ return data;
34
+ }
35
+
36
+ function _express() {
37
+ const data = _interopRequireDefault(require("express"));
38
+
39
+ _express = function () {
40
+ return data;
41
+ };
42
+
43
+ return data;
44
+ }
45
+
46
+ function fs() {
47
+ const data = _interopRequireWildcard(require("fs-extra"));
48
+
49
+ fs = function () {
50
+ return data;
51
+ };
52
+
53
+ return data;
54
+ }
55
+
56
+ function _path() {
57
+ const data = require("path");
58
+
59
+ _path = function () {
60
+ return data;
61
+ };
62
+
63
+ return data;
64
+ }
65
+
66
+ function _urlJoin() {
67
+ const data = _interopRequireDefault(require("url-join"));
68
+
69
+ _urlJoin = function () {
70
+ return data;
71
+ };
72
+
73
+ return data;
74
+ }
75
+
76
+ function _webpackAppSsr() {
77
+ const data = require("../webpack/webpack.app.ssr.config");
78
+
79
+ _webpackAppSsr = function () {
80
+ return data;
81
+ };
82
+
83
+ return data;
84
+ }
85
+
86
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
87
+
88
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
89
+
90
+ const MAGIC_FOLDER = 'public'; // idk where this is comping from
91
+
92
+ function createExpressSsr({
93
+ name,
94
+ workdir,
95
+ port,
96
+ app,
97
+ assets,
98
+ logger
99
+ }) {
100
+ const express = (0, _express().default)();
101
+ const publicFolder = (0, _path().resolve)(workdir, (0, _webpackAppSsr().calcOutputPath)(name, 'browser'), MAGIC_FOLDER);
102
+ express.use(_webpackAppSsr().PUBLIC_PATH, _express().default.static(publicFolder));
103
+ express.use((request, response, next) => {
104
+ if (request.query._rendering !== 'client') {
105
+ next();
106
+ return;
107
+ }
108
+
109
+ response.sendFile((0, _path().resolve)(workdir, (0, _webpackAppSsr().calcOutputPath)(name, 'browser'), MAGIC_FOLDER, 'index.html'));
110
+ });
111
+ express.use(async (request, response) => {
112
+ logger === null || logger === void 0 ? void 0 : logger.info(`[react.application] [ssr] handling "${request.url}"`);
113
+ const browser = (0, _reactRendering().browserFromExpress)(request, port);
114
+ const session = {
115
+ assets,
116
+ browser,
117
+ request,
118
+ response
119
+ };
120
+
121
+ try {
122
+ // the app itself controls the response
123
+ await app(session);
124
+ logger === null || logger === void 0 ? void 0 : logger.console(`[react.application] [ssr] success "${request.url}"`);
125
+ } catch (error) {
126
+ logger === null || logger === void 0 ? void 0 : logger.consoleError(`[react.application] [ssr] error at "${request.url}"`, error);
127
+ response.status(500).send((0, _uiFoundationUiPages().serverError)());
128
+ }
129
+ });
130
+ return express;
131
+ }
132
+
133
+ async function loadSsrApp(workdir, appName) {
134
+ const entryFile = (0, _path().resolve)(workdir, (0, _webpackAppSsr().calcOutputPath)(appName, 'ssr'), MAGIC_FOLDER, _webpackAppSsr().SSR_ENTRY_FILE);
135
+ if (!fs().existsSync(entryFile)) throw new Error(`expected ssr bundle entry file at "${entryFile}"`);
136
+ const entry = await Promise.resolve(`${entryFile}`).then(s => _interopRequireWildcard(require(s)));
137
+ const app = entry === null || entry === void 0 ? void 0 : entry.default;
138
+ if (!app) throw new Error(`bundle entry file has no default export (at "${entryFile}")`);
139
+ return app;
140
+ }
141
+
142
+ function parseAssets(assets, publicPath = _webpackAppSsr().PUBLIC_PATH) {
143
+ const deadAssets = assets.filter(x => !x.name);
144
+ if (deadAssets.length > 0) throw new Error('missing some build assets (maybe need to turn on cachedAssets, etc)');
145
+ return {
146
+ css: assets.map(x => x.name).filter(name => name === null || name === void 0 ? void 0 : name.endsWith('.css')).map(name => (0, _urlJoin().default)(publicPath, name)),
147
+ js: assets.map(x => x.name).filter(name => name === null || name === void 0 ? void 0 : name.endsWith('.js')).map(name => (0, _urlJoin().default)(publicPath, name))
148
+ };
149
+ }
150
+
151
+ //# sourceMappingURL=ssr-express.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["MAGIC_FOLDER","createExpressSsr","name","workdir","port","app","assets","logger","express","Express","publicFolder","resolve","calcOutputPath","use","PUBLIC_PATH","static","request","response","next","query","_rendering","sendFile","info","url","browser","browserFromExpress","session","console","error","consoleError","status","send","serverError","loadSsrApp","appName","entryFile","SSR_ENTRY_FILE","fs","existsSync","Error","entry","default","parseAssets","publicPath","deadAssets","filter","x","length","css","map","endsWith","urlJoin","js"],"sources":["ssr-express.ts"],"sourcesContent":["import { Asset } from '@teambit/bundler';\nimport { Logger } from '@teambit/logger';\nimport { serverError } from '@teambit/ui-foundation.ui.pages.static-error';\nimport { browserFromExpress } from '@teambit/react.rendering.ssr';\nimport type { HtmlAssets, SsrSession } from '@teambit/react.rendering.ssr';\n\nimport Express from 'express';\nimport * as fs from 'fs-extra';\nimport { resolve } from 'path';\nimport urlJoin from 'url-join';\n\nimport { calcOutputPath, PUBLIC_PATH, SSR_ENTRY_FILE } from '../webpack/webpack.app.ssr.config';\n\nconst MAGIC_FOLDER = 'public'; // idk where this is comping from\n\ntype ExpressSsrOptions = {\n name: string;\n workdir: string;\n port: number;\n app: any;\n assets: HtmlAssets;\n logger?: Logger;\n};\n\nexport function createExpressSsr({ name, workdir, port, app, assets, logger }: ExpressSsrOptions) {\n const express = Express();\n\n const publicFolder = resolve(workdir, calcOutputPath(name, 'browser'), MAGIC_FOLDER);\n\n express.use(PUBLIC_PATH, Express.static(publicFolder));\n express.use((request, response, next) => {\n if (request.query._rendering !== 'client') {\n next();\n return;\n }\n response.sendFile(resolve(workdir, calcOutputPath(name, 'browser'), MAGIC_FOLDER, 'index.html'));\n });\n express.use(async (request, response) => {\n logger?.info(`[react.application] [ssr] handling \"${request.url}\"`);\n const browser = browserFromExpress(request, port);\n const session: SsrSession = { assets, browser, request, response };\n\n try {\n // the app itself controls the response\n await app(session);\n logger?.console(`[react.application] [ssr] success \"${request.url}\"`);\n } catch (error: any) {\n logger?.consoleError(`[react.application] [ssr] error at \"${request.url}\"`, error);\n response.status(500).send(serverError());\n }\n });\n\n return express;\n}\n\nexport async function loadSsrApp(workdir: string, appName: string) {\n const entryFile = resolve(workdir, calcOutputPath(appName, 'ssr'), MAGIC_FOLDER, SSR_ENTRY_FILE);\n if (!fs.existsSync(entryFile)) throw new Error(`expected ssr bundle entry file at \"${entryFile}\"`);\n\n const entry = await import(entryFile);\n const app = entry?.default;\n if (!app) throw new Error(`bundle entry file has no default export (at \"${entryFile}\")`);\n\n return app;\n}\n\nexport function parseAssets(assets: Asset[], publicPath = PUBLIC_PATH): HtmlAssets {\n const deadAssets = assets.filter((x) => !x.name);\n if (deadAssets.length > 0) throw new Error('missing some build assets (maybe need to turn on cachedAssets, etc)');\n\n return {\n css: assets\n .map((x) => x.name)\n .filter((name) => name?.endsWith('.css'))\n .map((name) => urlJoin(publicPath, name)),\n js: assets\n .map((x) => x.name)\n .filter((name) => name?.endsWith('.js'))\n .map((name) => urlJoin(publicPath, name)),\n };\n}\n"],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { WebpackConfigMutator } from '@teambit/webpack';
2
+ export declare function addDevServer(configMutator: WebpackConfigMutator): WebpackConfigMutator;
3
+ export declare function setOutput(configMutator: WebpackConfigMutator): WebpackConfigMutator;
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.addDevServer = addDevServer;
7
+ exports.setOutput = setOutput;
8
+
9
+ function addDevServer(configMutator) {
10
+ return configMutator.addTopLevel('devServer', {
11
+ allowedHosts: 'all',
12
+ historyApiFallback: {
13
+ index: '/index.html',
14
+ disableDotRule: true
15
+ },
16
+ headers: {
17
+ 'Access-Control-Allow-Origin': '*'
18
+ }
19
+ });
20
+ }
21
+
22
+ function setOutput(configMutator) {
23
+ if (!configMutator.raw.output) configMutator.raw.output = {};
24
+ configMutator.raw.output.publicPath = '/';
25
+ return configMutator;
26
+ }
27
+
28
+ //# sourceMappingURL=mutators.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["addDevServer","configMutator","addTopLevel","allowedHosts","historyApiFallback","index","disableDotRule","headers","setOutput","raw","output","publicPath"],"sources":["mutators.ts"],"sourcesContent":["import { WebpackConfigMutator } from '@teambit/webpack';\n\nexport function addDevServer(configMutator: WebpackConfigMutator) {\n return configMutator.addTopLevel('devServer', {\n allowedHosts: 'all',\n historyApiFallback: {\n index: '/index.html',\n disableDotRule: true,\n },\n headers: {\n 'Access-Control-Allow-Origin': '*',\n },\n });\n}\n\nexport function setOutput(configMutator: WebpackConfigMutator) {\n if (!configMutator.raw.output) configMutator.raw.output = {};\n configMutator.raw.output.publicPath = '/';\n\n return configMutator;\n}\n"],"mappings":";;;;;;;;AAEO,SAASA,YAAT,CAAsBC,aAAtB,EAA2D;EAChE,OAAOA,aAAa,CAACC,WAAd,CAA0B,WAA1B,EAAuC;IAC5CC,YAAY,EAAE,KAD8B;IAE5CC,kBAAkB,EAAE;MAClBC,KAAK,EAAE,aADW;MAElBC,cAAc,EAAE;IAFE,CAFwB;IAM5CC,OAAO,EAAE;MACP,+BAA+B;IADxB;EANmC,CAAvC,CAAP;AAUD;;AAEM,SAASC,SAAT,CAAmBP,aAAnB,EAAwD;EAC7D,IAAI,CAACA,aAAa,CAACQ,GAAd,CAAkBC,MAAvB,EAA+BT,aAAa,CAACQ,GAAd,CAAkBC,MAAlB,GAA2B,EAA3B;EAC/BT,aAAa,CAACQ,GAAd,CAAkBC,MAAlB,CAAyBC,UAAzB,GAAsC,GAAtC;EAEA,OAAOV,aAAP;AACD"}
@@ -0,0 +1,15 @@
1
+ import type { Configuration } from 'webpack';
2
+ export declare const SSR_ENTRY_FILE = "index.js";
3
+ /** _external_ base url for static files. (is not a folder)
4
+ * @example
5
+ * "http://localhost:3000/public/main.88a88d47d86aaabc0230.js"
6
+ */
7
+ export declare const PUBLIC_PATH = "/public";
8
+ declare enum Targets {
9
+ ssr = "ssr",
10
+ browser = "browser"
11
+ }
12
+ export declare function calcOutputPath(appName: string, target: Targets | keyof typeof Targets): string;
13
+ export declare function clientConfig(): Configuration;
14
+ export declare function ssrConfig(): Configuration;
15
+ export {};
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.SSR_ENTRY_FILE = exports.PUBLIC_PATH = void 0;
7
+ exports.calcOutputPath = calcOutputPath;
8
+ exports.clientConfig = clientConfig;
9
+ exports.ssrConfig = ssrConfig;
10
+
11
+ function _path() {
12
+ const data = require("path");
13
+
14
+ _path = function () {
15
+ return data;
16
+ };
17
+
18
+ return data;
19
+ }
20
+
21
+ const OUTPUT_FOLDER = 'public/bit-apps';
22
+ const SSR_ENTRY_FILE = 'index.js';
23
+ /** _external_ base url for static files. (is not a folder)
24
+ * @example
25
+ * "http://localhost:3000/public/main.88a88d47d86aaabc0230.js"
26
+ */
27
+
28
+ exports.SSR_ENTRY_FILE = SSR_ENTRY_FILE;
29
+ const PUBLIC_PATH = '/public';
30
+ exports.PUBLIC_PATH = PUBLIC_PATH;
31
+ var Targets;
32
+
33
+ (function (Targets) {
34
+ Targets["ssr"] = "ssr";
35
+ Targets["browser"] = "browser";
36
+ })(Targets || (Targets = {}));
37
+
38
+ function calcOutputPath(appName, target) {
39
+ return (0, _path().join)(OUTPUT_FOLDER, appName, target);
40
+ }
41
+
42
+ function clientConfig() {
43
+ return {
44
+ output: {
45
+ publicPath: PUBLIC_PATH,
46
+ filename: '[name].[chunkhash].js'
47
+ }
48
+ };
49
+ }
50
+
51
+ function ssrConfig() {
52
+ return {
53
+ target: 'node',
54
+ devtool: 'eval-cheap-source-map',
55
+ output: {
56
+ libraryTarget: 'commonjs',
57
+ filename: SSR_ENTRY_FILE
58
+ }
59
+ };
60
+ }
61
+
62
+ //# sourceMappingURL=webpack.app.ssr.config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["OUTPUT_FOLDER","SSR_ENTRY_FILE","PUBLIC_PATH","Targets","calcOutputPath","appName","target","join","clientConfig","output","publicPath","filename","ssrConfig","devtool","libraryTarget"],"sources":["webpack.app.ssr.config.ts"],"sourcesContent":["import { join } from 'path';\nimport type { Configuration } from 'webpack';\n\nconst OUTPUT_FOLDER = 'public/bit-apps';\nexport const SSR_ENTRY_FILE = 'index.js';\n/** _external_ base url for static files. (is not a folder)\n * @example\n * \"http://localhost:3000/public/main.88a88d47d86aaabc0230.js\"\n */\nexport const PUBLIC_PATH = '/public';\n\nenum Targets {\n ssr = 'ssr',\n browser = 'browser',\n}\n\nexport function calcOutputPath(appName: string, target: Targets | keyof typeof Targets) {\n return join(OUTPUT_FOLDER, appName, target);\n}\n\nexport function clientConfig(): Configuration {\n return {\n output: { publicPath: PUBLIC_PATH, filename: '[name].[chunkhash].js' },\n };\n}\n\nexport function ssrConfig(): Configuration {\n return {\n target: 'node',\n devtool: 'eval-cheap-source-map',\n\n output: {\n libraryTarget: 'commonjs',\n filename: SSR_ENTRY_FILE,\n },\n };\n}\n"],"mappings":";;;;;;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAGA,MAAMA,aAAa,GAAG,iBAAtB;AACO,MAAMC,cAAc,GAAG,UAAvB;AACP;AACA;AACA;AACA;;;AACO,MAAMC,WAAW,GAAG,SAApB;;IAEFC,O;;WAAAA,O;EAAAA,O;EAAAA,O;GAAAA,O,KAAAA,O;;AAKE,SAASC,cAAT,CAAwBC,OAAxB,EAAyCC,MAAzC,EAAiF;EACtF,OAAO,IAAAC,YAAA,EAAKP,aAAL,EAAoBK,OAApB,EAA6BC,MAA7B,CAAP;AACD;;AAEM,SAASE,YAAT,GAAuC;EAC5C,OAAO;IACLC,MAAM,EAAE;MAAEC,UAAU,EAAER,WAAd;MAA2BS,QAAQ,EAAE;IAArC;EADH,CAAP;AAGD;;AAEM,SAASC,SAAT,GAAoC;EACzC,OAAO;IACLN,MAAM,EAAE,MADH;IAELO,OAAO,EAAE,uBAFJ;IAILJ,MAAM,EAAE;MACNK,aAAa,EAAE,UADT;MAENH,QAAQ,EAAEV;IAFJ;EAJH,CAAP;AASD"}
@@ -13,7 +13,7 @@ import { GeneratorMain } from '@teambit/generator';
13
13
  import { Workspace } from '@teambit/workspace';
14
14
  import { DependencyResolverMain, EnvPolicyConfigObject } from '@teambit/dependency-resolver';
15
15
  import { ApplicationMain } from '@teambit/application';
16
- import { LoggerMain } from '@teambit/logger';
16
+ import { Logger, LoggerMain } from '@teambit/logger';
17
17
  import { ESLintMain, EslintConfigTransformer } from '@teambit/eslint';
18
18
  import { PrettierMain, PrettierConfigTransformer } from '@teambit/prettier';
19
19
  import { ReactEnv } from './react.env';
@@ -74,11 +74,12 @@ export declare class ReactMain {
74
74
  private envs;
75
75
  private application;
76
76
  private reactAppType;
77
+ private logger?;
77
78
  constructor(
78
79
  /**
79
80
  * an instance of the React env.
80
81
  */
81
- reactEnv: ReactEnv, envs: EnvsMain, application: ApplicationMain, reactAppType: ReactAppType);
82
+ reactEnv: ReactEnv, envs: EnvsMain, application: ApplicationMain, reactAppType: ReactAppType, logger?: Logger | undefined);
82
83
  readonly env: ReactEnv;
83
84
  getReactAppType(name: string): ReactAppType;
84
85
  /**
@@ -272,16 +272,17 @@ class ReactMain {
272
272
  /**
273
273
  * an instance of the React env.
274
274
  */
275
- reactEnv, envs, application, reactAppType) {
275
+ reactEnv, envs, application, reactAppType, logger) {
276
276
  this.reactEnv = reactEnv;
277
277
  this.envs = envs;
278
278
  this.application = application;
279
279
  this.reactAppType = reactAppType;
280
+ this.logger = logger;
280
281
  (0, _defineProperty2().default)(this, "env", this.reactEnv);
281
282
  }
282
283
 
283
284
  getReactAppType(name) {
284
- return new (_web().ReactAppType)(name, this.reactEnv);
285
+ return new (_web().ReactAppType)(name, this.reactEnv, this.logger);
285
286
  }
286
287
  /**
287
288
  * use this to register apps programmatically.
@@ -588,8 +589,8 @@ class ReactMain {
588
589
  static async provider([envs, jestAspect, tsAspect, compiler, webpack, workspace, graphql, pkg, tester, eslint, prettier, application, generator, dependencyResolver, loggerMain], config) {
589
590
  const logger = loggerMain.createLogger(_react().ReactAspect.id);
590
591
  const reactEnv = new (_react2().ReactEnv)(jestAspect, tsAspect, compiler, webpack, workspace, pkg, tester, config, eslint, prettier, dependencyResolver, logger, _compiler().CompilerAspect.id);
591
- const appType = new (_web().ReactAppType)('react-app', reactEnv);
592
- const react = new ReactMain(reactEnv, envs, application, appType);
592
+ const appType = new (_web().ReactAppType)('react-app', reactEnv, logger);
593
+ const react = new ReactMain(reactEnv, envs, application, appType, logger);
593
594
  graphql.register((0, _react3().reactSchema)(react));
594
595
  envs.registerEnv(reactEnv);
595
596
  generator.registerComponentTemplate(_react4().componentTemplates);
@@ -1 +1 @@
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","getDevEnvId","context","envDefinition","id","getDocsTemplate","overrideBuildTsConfig","useWebpack","devServerTransformers","devServerConfig","getDevServer","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(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 getDevEnvId: (context: DevServerContext) => this.reactEnv.getDevEnvId(context.envDefinition.id),\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
+ {"version":3,"names":["ReactMain","constructor","reactEnv","envs","application","reactAppType","logger","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","getDevEnvId","context","envDefinition","id","getDocsTemplate","overrideBuildTsConfig","useWebpack","devServerTransformers","devServerConfig","getDevServer","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","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 { Logger, 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 private logger?: Logger,\n ) {}\n\n readonly env = this.reactEnv;\n\n getReactAppType(name: string) {\n return new ReactAppType(name, this.reactEnv, this.logger);\n }\n\n /**\n * use this to register apps programmatically.\n */\n async registerApp(reactApp: ReactAppOptions) {\n return this.application.registerApp(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 getDevEnvId: (context: DevServerContext) => this.reactEnv.getDevEnvId(context.envDefinition.id),\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, logger);\n const react = new ReactMain(reactEnv, envs, application, appType, logger);\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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"}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/react",
3
- "version": "0.0.802",
3
+ "version": "0.0.805",
4
4
  "homepage": "https://bit.dev/teambit/react/react",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.react",
8
8
  "name": "react",
9
- "version": "0.0.802"
9
+ "version": "0.0.805"
10
10
  },
11
11
  "dependencies": {
12
12
  "fs-extra": "10.0.0",
@@ -39,6 +39,8 @@
39
39
  "react-error-overlay": "6.0.9",
40
40
  "strip-ansi": "6.0.0",
41
41
  "prerender-spa-plugin-next": "4.2.0",
42
+ "express": "4.17.1",
43
+ "url-join": "4.0.1",
42
44
  "comment-json": "3.0.3",
43
45
  "react-refresh": "0.10.0",
44
46
  "@babel/runtime": "^7.12.18",
@@ -57,6 +59,7 @@
57
59
  "jest-watch-typeahead": "1.0.0",
58
60
  "identity-obj-proxy": "3.0.0",
59
61
  "jest-environment-jsdom": "27.5.1",
62
+ "jest": "27.5.1",
60
63
  "@mdx-js/react": "1.6.22",
61
64
  "resolve-url-loader": "3.1.2",
62
65
  "react-app-polyfill": "1.0.6",
@@ -77,47 +80,50 @@
77
80
  "@teambit/harmony": "0.3.3",
78
81
  "@teambit/react.instructions.react.adding-compositions": "0.0.6",
79
82
  "@teambit/react.instructions.react.adding-tests": "0.0.6",
83
+ "@teambit/react.rendering.ssr": "0.0.3",
80
84
  "@teambit/compositions.ui.hooks.use-composition": "0.0.163",
81
85
  "@teambit/design.ui.tooltip": "0.0.352",
82
- "@teambit/builder": "0.0.802",
83
- "@teambit/bundler": "0.0.802",
84
- "@teambit/compiler": "0.0.802",
86
+ "@teambit/builder": "0.0.805",
87
+ "@teambit/bundler": "0.0.805",
88
+ "@teambit/compiler": "0.0.805",
85
89
  "@teambit/component.modules.component-url": "0.0.128",
86
- "@teambit/component": "0.0.802",
87
- "@teambit/dependency-resolver": "0.0.802",
88
- "@teambit/envs": "0.0.802",
89
- "@teambit/eslint": "0.0.802",
90
- "@teambit/formatter": "0.0.353",
91
- "@teambit/jest": "0.0.802",
92
- "@teambit/linter": "0.0.802",
93
- "@teambit/logger": "0.0.627",
94
- "@teambit/pkg": "0.0.802",
95
- "@teambit/prettier": "0.0.353",
90
+ "@teambit/component": "0.0.805",
91
+ "@teambit/dependency-resolver": "0.0.805",
92
+ "@teambit/envs": "0.0.805",
93
+ "@teambit/eslint": "0.0.805",
94
+ "@teambit/formatter": "0.0.356",
95
+ "@teambit/jest": "0.0.805",
96
+ "@teambit/linter": "0.0.805",
97
+ "@teambit/logger": "0.0.629",
98
+ "@teambit/pkg": "0.0.805",
99
+ "@teambit/prettier": "0.0.356",
96
100
  "@teambit/react.ui.compositions-app": "0.0.1",
97
- "@teambit/react.ui.docs-app": "0.0.181",
101
+ "@teambit/react.ui.docs-app": "0.0.182",
98
102
  "@teambit/react.ui.highlighter.component-metadata.bit-component-meta": "0.0.21",
99
- "@teambit/schema": "0.0.802",
100
- "@teambit/tester": "0.0.802",
101
- "@teambit/typescript": "0.0.802",
102
- "@teambit/webpack": "0.0.802",
103
- "@teambit/workspace": "0.0.802",
104
- "@teambit/application": "0.0.444",
105
- "@teambit/cli": "0.0.534",
106
- "@teambit/generator": "0.0.802",
107
- "@teambit/graphql": "0.0.802",
108
- "@teambit/preview": "0.0.802",
103
+ "@teambit/schema": "0.0.805",
104
+ "@teambit/tester": "0.0.805",
105
+ "@teambit/typescript": "0.0.805",
106
+ "@teambit/webpack": "0.0.805",
107
+ "@teambit/workspace": "0.0.805",
108
+ "@teambit/application": "0.0.447",
109
+ "@teambit/cli": "0.0.536",
110
+ "@teambit/generator": "0.0.805",
111
+ "@teambit/graphql": "0.0.805",
112
+ "@teambit/preview": "0.0.805",
109
113
  "@teambit/react.ui.highlighter-provider": "0.0.190",
110
- "@teambit/compositions": "0.0.802",
111
- "@teambit/ui": "0.0.802",
112
- "@teambit/react.eslint-config-bit-react": "0.0.608",
113
- "@teambit/mdx.modules.mdx-loader": "0.0.491",
114
+ "@teambit/compositions": "0.0.805",
115
+ "@teambit/ui": "0.0.805",
116
+ "@teambit/react.eslint-config-bit-react": "0.0.610",
117
+ "@teambit/mdx.modules.mdx-loader": "0.0.492",
114
118
  "@teambit/react.babel.bit-react-transformer": "0.0.504",
115
119
  "@teambit/webpack.modules.generate-style-loaders": "0.0.103",
116
120
  "@teambit/webpack.modules.style-regexps": "0.0.132",
117
121
  "@teambit/component-id": "0.0.405",
122
+ "@teambit/bit-error": "0.0.394",
118
123
  "@teambit/toolbox.network.get-port": "0.0.113",
119
124
  "@teambit/react.modules.prerenderer-puppeteer": "0.0.2",
120
- "@teambit/config": "0.0.547"
125
+ "@teambit/ui-foundation.ui.pages.static-error": "0.0.74",
126
+ "@teambit/config": "0.0.549"
121
127
  },
122
128
  "devDependencies": {
123
129
  "@types/react": "^17.0.8",
@@ -127,6 +133,8 @@
127
133
  "@types/webpack": "5.28.0",
128
134
  "@types/mini-css-extract-plugin": "2.2.0",
129
135
  "@types/react-dev-utils": "9.0.10",
136
+ "@types/express": "4.17.13",
137
+ "@types/url-join": "4.0.0",
130
138
  "@types/react-dom": "^17.0.5",
131
139
  "@types/postcss-normalize": "9.0.1",
132
140
  "@types/node": "12.20.4",
@@ -136,7 +144,7 @@
136
144
  "@teambit/react.content.react-overview": "1.95.0"
137
145
  },
138
146
  "peerDependencies": {
139
- "@teambit/legacy": "1.0.316",
147
+ "@teambit/legacy": "1.0.319",
140
148
  "react-dom": "^16.8.0 || ^17.0.0",
141
149
  "react": "^16.8.0 || ^17.0.0"
142
150
  },
@@ -1,5 +1,5 @@
1
- import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.react_react@0.0.802/dist/react.composition.js';
2
- import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.react_react@0.0.802/dist/react.docs.mdx';
1
+ import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.react_react@0.0.805/dist/react.composition.js';
2
+ import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.react_react@0.0.805/dist/react.docs.mdx';
3
3
 
4
4
  export const compositions = [compositions_0];
5
5
  export const overview = [overview_0];