@teambit/aspect 0.0.881 → 0.0.882

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 (48) hide show
  1. package/artifacts/env-template/public/{238.2ddc5a20aad2fef149e6.js → 700.fcb0085dcdf160cc65c9.js} +15 -15
  2. package/artifacts/env-template/public/assets-manifest.json +16 -16
  3. package/artifacts/env-template/public/{compositions.e8ddc91452b356e56302.js → compositions.3570b4161030637817a4.js} +1 -1
  4. package/artifacts/env-template/public/compositions.html +1 -1
  5. package/artifacts/env-template/public/overview.9ce4acb865e3903586e9.js +1 -0
  6. package/artifacts/env-template/public/overview.html +1 -1
  7. package/artifacts/env-template/public/{peers.c8034486e942b3532a50.js → peers.acafb9d260b35c89ab74.js} +1 -1
  8. package/artifacts/env-template/public/{preview-root.b9ea187989f25bad7bf4.js → preview-root.a829360e0cc95e341dfd.js} +1 -1
  9. package/artifacts/env-template/public/static/css/700.bd8655a5.css +1 -0
  10. package/artifacts/env-template/public/static/css/compositions.e163efe5.css +1 -0
  11. package/artifacts/env-template/public/static/css/{overview.367aeb5b.css → overview.18adf1ee.css} +1 -1
  12. package/artifacts/preview/teambit_harmony_aspect-preview.js +1 -1
  13. package/{compositions-1666409808293.js → compositions-1666496165706.js} +0 -0
  14. package/dist/aspect.aspect.js +0 -5
  15. package/dist/aspect.aspect.js.map +1 -1
  16. package/dist/aspect.cmd.js +1 -49
  17. package/dist/aspect.cmd.js.map +1 -1
  18. package/dist/aspect.composition.js +0 -6
  19. package/dist/aspect.composition.js.map +1 -1
  20. package/dist/aspect.env.js +8 -34
  21. package/dist/aspect.env.js.map +1 -1
  22. package/dist/aspect.main.runtime.js +6 -96
  23. package/dist/aspect.main.runtime.js.map +1 -1
  24. package/dist/aspect.ui.runtime.js +4 -33
  25. package/dist/aspect.ui.runtime.js.map +1 -1
  26. package/dist/babel/babel-config.js.map +1 -1
  27. package/dist/core-exporter.task.js +0 -29
  28. package/dist/core-exporter.task.js.map +1 -1
  29. package/dist/index.js +0 -3
  30. package/dist/index.js.map +1 -1
  31. package/dist/templates/aspect/files/aspect-file.js +0 -1
  32. package/dist/templates/aspect/files/aspect-file.js.map +1 -1
  33. package/dist/templates/aspect/files/config-file.js +0 -1
  34. package/dist/templates/aspect/files/config-file.js.map +1 -1
  35. package/dist/templates/aspect/files/index.js +0 -1
  36. package/dist/templates/aspect/files/index.js.map +1 -1
  37. package/dist/templates/aspect/files/main-runtime.js +0 -1
  38. package/dist/templates/aspect/files/main-runtime.js.map +1 -1
  39. package/dist/templates/aspect/index.js +0 -10
  40. package/dist/templates/aspect/index.js.map +1 -1
  41. package/{overview-1666409808293.js → overview-1666496165706.js} +0 -0
  42. package/package-tar/teambit-aspect-0.0.882.tgz +0 -0
  43. package/package.json +19 -19
  44. package/{preview-1666409808293.js → preview-1666496165706.js} +2 -2
  45. package/artifacts/env-template/public/overview.055fb4d6ca88597765cd.js +0 -1
  46. package/artifacts/env-template/public/static/css/238.a0238c25.css +0 -1
  47. package/artifacts/env-template/public/static/css/compositions.6d8c7702.css +0 -1
  48. package/package-tar/teambit-aspect-0.0.881.tgz +0 -0
@@ -1,229 +1,164 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  require("core-js/modules/es.array.iterator.js");
6
-
7
5
  require("core-js/modules/es.promise.js");
8
-
9
6
  Object.defineProperty(exports, "__esModule", {
10
7
  value: true
11
8
  });
12
9
  exports.AspectMain = void 0;
13
-
14
10
  function _defineProperty2() {
15
11
  const data = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
16
-
17
12
  _defineProperty2 = function () {
18
13
  return data;
19
14
  };
20
-
21
15
  return data;
22
16
  }
23
-
24
17
  function _aspectLoader() {
25
18
  const data = require("@teambit/aspect-loader");
26
-
27
19
  _aspectLoader = function () {
28
20
  return data;
29
21
  };
30
-
31
22
  return data;
32
23
  }
33
-
34
24
  function _mergeDeepLeft() {
35
25
  const data = _interopRequireDefault(require("ramda/src/mergeDeepLeft"));
36
-
37
26
  _mergeDeepLeft = function () {
38
27
  return data;
39
28
  };
40
-
41
29
  return data;
42
30
  }
43
-
44
31
  function _builder() {
45
32
  const data = require("@teambit/builder");
46
-
47
33
  _builder = function () {
48
34
  return data;
49
35
  };
50
-
51
36
  return data;
52
37
  }
53
-
54
38
  function _lodash() {
55
39
  const data = require("lodash");
56
-
57
40
  _lodash = function () {
58
41
  return data;
59
42
  };
60
-
61
43
  return data;
62
44
  }
63
-
64
45
  function _bitError() {
65
46
  const data = require("@teambit/bit-error");
66
-
67
47
  _bitError = function () {
68
48
  return data;
69
49
  };
70
-
71
50
  return data;
72
51
  }
73
-
74
52
  function _cli() {
75
53
  const data = require("@teambit/cli");
76
-
77
54
  _cli = function () {
78
55
  return data;
79
56
  };
80
-
81
57
  return data;
82
58
  }
83
-
84
59
  function _envs() {
85
60
  const data = require("@teambit/envs");
86
-
87
61
  _envs = function () {
88
62
  return data;
89
63
  };
90
-
91
64
  return data;
92
65
  }
93
-
94
66
  function _react() {
95
67
  const data = require("@teambit/react");
96
-
97
68
  _react = function () {
98
69
  return data;
99
70
  };
100
-
101
71
  return data;
102
72
  }
103
-
104
73
  function _generator() {
105
74
  const data = require("@teambit/generator");
106
-
107
75
  _generator = function () {
108
76
  return data;
109
77
  };
110
-
111
78
  return data;
112
79
  }
113
-
114
80
  function _babel() {
115
81
  const data = require("@teambit/babel");
116
-
117
82
  _babel = function () {
118
83
  return data;
119
84
  };
120
-
121
85
  return data;
122
86
  }
123
-
124
87
  function _workspace() {
125
88
  const data = _interopRequireDefault(require("@teambit/workspace"));
126
-
127
89
  _workspace = function () {
128
90
  return data;
129
91
  };
130
-
131
92
  return data;
132
93
  }
133
-
134
94
  function _compiler() {
135
95
  const data = require("@teambit/compiler");
136
-
137
96
  _compiler = function () {
138
97
  return data;
139
98
  };
140
-
141
99
  return data;
142
100
  }
143
-
144
101
  function _aspect() {
145
102
  const data = require("./aspect.aspect");
146
-
147
103
  _aspect = function () {
148
104
  return data;
149
105
  };
150
-
151
106
  return data;
152
107
  }
153
-
154
108
  function _aspect2() {
155
109
  const data = require("./aspect.env");
156
-
157
110
  _aspect2 = function () {
158
111
  return data;
159
112
  };
160
-
161
113
  return data;
162
114
  }
163
-
164
115
  function _coreExporter() {
165
116
  const data = require("./core-exporter.task");
166
-
167
117
  _coreExporter = function () {
168
118
  return data;
169
119
  };
170
-
171
120
  return data;
172
121
  }
173
-
174
122
  function _aspect3() {
175
123
  const data = require("./templates/aspect");
176
-
177
124
  _aspect3 = function () {
178
125
  return data;
179
126
  };
180
-
181
127
  return data;
182
128
  }
183
-
184
129
  function _babelConfig() {
185
130
  const data = require("./babel/babel-config");
186
-
187
131
  _babelConfig = function () {
188
132
  return data;
189
133
  };
190
-
191
134
  return data;
192
135
  }
193
-
194
136
  function _aspect4() {
195
137
  const data = require("./aspect.cmd");
196
-
197
138
  _aspect4 = function () {
198
139
  return data;
199
140
  };
200
-
201
141
  return data;
202
142
  }
203
-
204
143
  const tsconfig = require('./typescript/tsconfig.json');
205
-
206
144
  class AspectMain {
207
145
  constructor(aspectEnv, envs, workspace) {
208
146
  this.aspectEnv = aspectEnv;
209
147
  this.envs = envs;
210
148
  this.workspace = workspace;
211
149
  }
150
+
212
151
  /**
213
152
  * compose your own aspect environment.
214
153
  */
215
-
216
-
217
154
  compose(transformers = [], targetEnv = {}) {
218
155
  return this.envs.compose(this.envs.merge(targetEnv, this.aspectEnv), transformers);
219
156
  }
220
-
221
157
  async listAspectsOfComponent(pattern) {
222
158
  const getIds = async () => {
223
159
  if (!pattern) return this.workspace.listIds();
224
160
  return this.workspace.idsByPattern(pattern);
225
161
  };
226
-
227
162
  const componentIds = await getIds();
228
163
  const results = {};
229
164
  await Promise.all(componentIds.map(async id => {
@@ -232,11 +167,9 @@ class AspectMain {
232
167
  }));
233
168
  return results;
234
169
  }
235
-
236
170
  get babelConfig() {
237
171
  return _babelConfig().babelConfig;
238
172
  }
239
-
240
173
  async getAspectNamesForComponent(id) {
241
174
  const componentFromScope = await this.workspace.scope.get(id);
242
175
  const {
@@ -246,7 +179,6 @@ class AspectMain {
246
179
  beforeMerge.forEach(source => {
247
180
  source.extensions.forEach(ext => {
248
181
  var _ext$extensionId;
249
-
250
182
  const aspectName = ext.name || ((_ext$extensionId = ext.extensionId) === null || _ext$extensionId === void 0 ? void 0 : _ext$extensionId.toString()) || '<no-name>';
251
183
  const alreadySaved = aspectSources.find(_ => _.aspectName === aspectName);
252
184
  if (alreadySaved) return;
@@ -259,19 +191,16 @@ class AspectMain {
259
191
  });
260
192
  return aspectSources;
261
193
  }
262
-
263
194
  getLevelBySourceOrigin(origin) {
264
195
  switch (origin) {
265
196
  case 'BitmapFile':
266
197
  case 'ComponentJsonFile':
267
198
  case 'ModelSpecific':
268
199
  return 'component';
269
-
270
200
  default:
271
201
  return 'workspace';
272
202
  }
273
203
  }
274
-
275
204
  async setAspectsToComponents(pattern, aspectId, config = {}, options = {}) {
276
205
  const componentIds = await this.workspace.idsByPattern(pattern);
277
206
  await Promise.all(componentIds.map(async componentId => {
@@ -280,7 +209,6 @@ class AspectMain {
280
209
  await this.workspace.bitMap.write();
281
210
  return componentIds;
282
211
  }
283
-
284
212
  async unsetAspectsFromComponents(pattern, aspectId) {
285
213
  const componentIds = await this.workspace.idsByPattern(pattern);
286
214
  await Promise.all(componentIds.map(async componentId => {
@@ -289,29 +217,25 @@ class AspectMain {
289
217
  await this.workspace.bitMap.write();
290
218
  return componentIds;
291
219
  }
220
+
292
221
  /**
293
222
  * returns all aspects info of a component, include the config and the data.
294
223
  */
295
-
296
-
297
224
  async getAspectsOfComponent(id) {
298
225
  if (typeof id === 'string') {
299
226
  id = await this.workspace.resolveComponentId(id);
300
227
  }
301
-
302
228
  const component = await this.workspace.get(id);
303
229
  return component.state.aspects;
304
230
  }
231
+
305
232
  /**
306
233
  * helps debugging why/how an aspect was set to a component
307
234
  */
308
-
309
-
310
235
  async getAspectsOfComponentForDebugging(id) {
311
236
  if (typeof id === 'string') {
312
237
  id = await this.workspace.resolveComponentId(id);
313
238
  }
314
-
315
239
  const componentFromScope = await this.workspace.scope.get(id);
316
240
  const {
317
241
  extensions,
@@ -324,10 +248,8 @@ class AspectMain {
324
248
  beforeMerge
325
249
  };
326
250
  }
327
-
328
251
  async updateAspectsToComponents(aspectId, pattern) {
329
252
  let aspectCompId = await this.workspace.resolveComponentId(aspectId);
330
-
331
253
  if (!aspectCompId.hasVersion()) {
332
254
  try {
333
255
  const fromRemote = await this.workspace.scope.getRemoteComponent(aspectCompId);
@@ -336,22 +258,19 @@ class AspectMain {
336
258
  throw new (_bitError().BitError)(`unable to find ${aspectId} in the remote. if this is a local aspect, please provide a version with your aspect (${aspectId}) to update to`);
337
259
  }
338
260
  }
339
-
340
261
  const allCompIds = pattern ? await this.workspace.idsByPattern(pattern) : await this.workspace.listIds();
341
262
  const allComps = await this.workspace.getMany(allCompIds);
342
263
  const alreadyUpToDate = [];
343
264
  const updatedComponentIds = await Promise.all(allComps.map(async comp => {
344
265
  const aspect = comp.state.aspects.get(aspectCompId.toStringWithoutVersion());
345
266
  if (!aspect) return undefined;
346
-
347
267
  if (aspect.id.version === aspectCompId.version) {
348
268
  // nothing to update
349
269
  alreadyUpToDate.push(comp.id);
350
270
  return undefined;
351
- } // don't mark with minus if not exist in .bitmap. it's not needed. when the component is loaded, the
271
+ }
272
+ // don't mark with minus if not exist in .bitmap. it's not needed. when the component is loaded, the
352
273
  // merge-operation of the aspects removes duplicate aspect-id with different versions.
353
-
354
-
355
274
  await this.workspace.removeSpecificComponentConfig(comp.id, aspect.id.toString(), false);
356
275
  await this.workspace.addSpecificComponentConfig(comp.id, aspectCompId.toString(), aspect.config);
357
276
  return comp.id;
@@ -362,11 +281,10 @@ class AspectMain {
362
281
  alreadyUpToDate
363
282
  };
364
283
  }
284
+
365
285
  /**
366
286
  * override the dependency configuration of the component environment.
367
287
  */
368
-
369
-
370
288
  overrideDependencies(dependencyPolicy) {
371
289
  return this.envs.override({
372
290
  getDependencies: async () => {
@@ -375,7 +293,6 @@ class AspectMain {
375
293
  }
376
294
  });
377
295
  }
378
-
379
296
  static async provider([react, envs, builder, aspectLoader, compiler, babel, generator, workspace, cli]) {
380
297
  const babelCompiler = babel.createCompiler({
381
298
  babelTransformOptions: _babelConfig().babelConfig,
@@ -387,21 +304,17 @@ class AspectMain {
387
304
  return babelCompiler;
388
305
  }
389
306
  });
390
-
391
307
  const transformer = config => {
392
308
  config.mergeTsConfig(tsconfig).setArtifactName('declaration').setDistGlobPatterns([`dist/**/*.d.ts`]).setShouldCopyNonSupportedFiles(false);
393
309
  return config;
394
310
  };
395
-
396
311
  const tsCompiler = react.env.getCjsCompilerTask([transformer]);
397
312
  const compilerTasksOverride = react.overrideCompilerTasks([compiler.createTask('BabelCompiler', babelCompiler), tsCompiler]);
398
313
  const aspectEnv = react.compose([compilerOverride, compilerTasksOverride], new (_aspect2().AspectEnv)(react.reactEnv, aspectLoader));
399
314
  const coreExporterTask = new (_coreExporter().CoreExporterTask)(aspectEnv, aspectLoader);
400
-
401
315
  if (!__dirname.includes('@teambit/bit')) {
402
316
  builder.registerBuildTasks([coreExporterTask]);
403
317
  }
404
-
405
318
  envs.registerEnv(aspectEnv);
406
319
  generator.registerComponentTemplate([_aspect3().aspectTemplate]);
407
320
  const aspectMain = new AspectMain(aspectEnv, envs, workspace);
@@ -410,13 +323,10 @@ class AspectMain {
410
323
  cli.register(aspectCmd);
411
324
  return aspectMain;
412
325
  }
413
-
414
326
  }
415
-
416
327
  exports.AspectMain = AspectMain;
417
328
  (0, _defineProperty2().default)(AspectMain, "runtime", _cli().MainRuntime);
418
329
  (0, _defineProperty2().default)(AspectMain, "dependencies", [_react().ReactAspect, _envs().EnvsAspect, _builder().BuilderAspect, _aspectLoader().AspectLoaderAspect, _compiler().CompilerAspect, _babel().BabelAspect, _generator().GeneratorAspect, _workspace().default, _cli().CLIAspect]);
419
-
420
330
  _aspect().AspectAspect.addRuntime(AspectMain);
421
331
 
422
332
  //# sourceMappingURL=aspect.main.runtime.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["tsconfig","require","AspectMain","constructor","aspectEnv","envs","workspace","compose","transformers","targetEnv","merge","listAspectsOfComponent","pattern","getIds","listIds","idsByPattern","componentIds","results","Promise","all","map","id","aspectSources","getAspectNamesForComponent","toString","babelConfig","componentFromScope","scope","get","beforeMerge","componentExtensions","forEach","source","extensions","ext","aspectName","name","extensionId","alreadySaved","find","_","push","origin","level","getLevelBySourceOrigin","setAspectsToComponents","aspectId","config","options","componentId","addSpecificComponentConfig","bitMap","write","unsetAspectsFromComponents","removeSpecificComponentConfig","getAspectsOfComponent","resolveComponentId","component","state","aspects","getAspectsOfComponentForDebugging","updateAspectsToComponents","aspectCompId","hasVersion","fromRemote","getRemoteComponent","changeVersion","version","err","BitError","allCompIds","allComps","getMany","alreadyUpToDate","updatedComponentIds","comp","aspect","toStringWithoutVersion","undefined","updated","compact","overrideDependencies","dependencyPolicy","override","getDependencies","reactDeps","mergeDeepLeft","provider","react","builder","aspectLoader","compiler","babel","generator","cli","babelCompiler","createCompiler","babelTransformOptions","distDir","distGlobPatterns","compilerOverride","getCompiler","transformer","mergeTsConfig","setArtifactName","setDistGlobPatterns","setShouldCopyNonSupportedFiles","tsCompiler","env","getCjsCompilerTask","compilerTasksOverride","overrideCompilerTasks","createTask","AspectEnv","reactEnv","coreExporterTask","CoreExporterTask","__dirname","includes","registerBuildTasks","registerEnv","registerComponentTemplate","aspectTemplate","aspectMain","aspectCmd","AspectCmd","commands","ListAspectCmd","GetAspectCmd","SetAspectCmd","UnsetAspectCmd","UpdateAspectCmd","register","MainRuntime","ReactAspect","EnvsAspect","BuilderAspect","AspectLoaderAspect","CompilerAspect","BabelAspect","GeneratorAspect","WorkspaceAspect","CLIAspect","AspectAspect","addRuntime"],"sources":["aspect.main.runtime.ts"],"sourcesContent":["import { AspectLoaderAspect, AspectLoaderMain } from '@teambit/aspect-loader';\nimport mergeDeepLeft from 'ramda/src/mergeDeepLeft';\nimport { BuilderAspect, BuilderMain } from '@teambit/builder';\nimport { compact } from 'lodash';\nimport { EnvPolicyConfigObject } from '@teambit/dependency-resolver';\nimport { BitError } from '@teambit/bit-error';\nimport { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport { Environment, EnvsAspect, EnvsMain, EnvTransformer } from '@teambit/envs';\nimport { ReactAspect, ReactMain } from '@teambit/react';\nimport { GeneratorAspect, GeneratorMain } from '@teambit/generator';\nimport { BabelAspect, BabelMain } from '@teambit/babel';\nimport { ComponentID } from '@teambit/component-id';\nimport { AspectList } from '@teambit/component';\nimport WorkspaceAspect, { ExtensionsOrigin, Workspace } from '@teambit/workspace';\nimport { CompilerAspect, CompilerMain } from '@teambit/compiler';\nimport { AspectAspect } from './aspect.aspect';\nimport { AspectEnv } from './aspect.env';\nimport { CoreExporterTask } from './core-exporter.task';\nimport { aspectTemplate } from './templates/aspect';\nimport { babelConfig } from './babel/babel-config';\nimport {\n AspectCmd,\n GetAspectCmd,\n ListAspectCmd,\n SetAspectCmd,\n SetAspectOptions,\n UnsetAspectCmd,\n UpdateAspectCmd,\n} from './aspect.cmd';\n\nexport type AspectSource = { aspectName: string; source: string; level: string };\n\nconst tsconfig = require('./typescript/tsconfig.json');\n\nexport class AspectMain {\n constructor(readonly aspectEnv: AspectEnv, private envs: EnvsMain, private workspace: Workspace) {}\n\n /**\n * compose your own aspect environment.\n */\n compose(transformers: EnvTransformer[] = [], targetEnv: Environment = {}) {\n return this.envs.compose(this.envs.merge(targetEnv, this.aspectEnv), transformers);\n }\n\n async listAspectsOfComponent(pattern?: string): Promise<{ [component: string]: AspectSource[] }> {\n const getIds = async () => {\n if (!pattern) return this.workspace.listIds();\n return this.workspace.idsByPattern(pattern);\n };\n const componentIds = await getIds();\n const results = {};\n await Promise.all(\n componentIds.map(async (id) => {\n const aspectSources = await this.getAspectNamesForComponent(id);\n results[id.toString()] = aspectSources;\n })\n );\n return results;\n }\n\n get babelConfig() {\n return babelConfig;\n }\n\n private async getAspectNamesForComponent(id: ComponentID): Promise<AspectSource[]> {\n const componentFromScope = await this.workspace.scope.get(id);\n const { beforeMerge } = await this.workspace.componentExtensions(id, componentFromScope);\n const aspectSources: AspectSource[] = [];\n beforeMerge.forEach((source) => {\n source.extensions.forEach((ext) => {\n const aspectName = ext.name || ext.extensionId?.toString() || '<no-name>';\n const alreadySaved = aspectSources.find((_) => _.aspectName === aspectName);\n if (alreadySaved) return;\n aspectSources.push({ aspectName, source: source.origin, level: this.getLevelBySourceOrigin(source.origin) });\n });\n });\n return aspectSources;\n }\n\n private getLevelBySourceOrigin(origin: ExtensionsOrigin) {\n switch (origin) {\n case 'BitmapFile':\n case 'ComponentJsonFile':\n case 'ModelSpecific':\n return 'component';\n default:\n return 'workspace';\n }\n }\n\n async setAspectsToComponents(\n pattern: string,\n aspectId: string,\n config: Record<string, any> = {},\n options: SetAspectOptions = {}\n ): Promise<ComponentID[]> {\n const componentIds = await this.workspace.idsByPattern(pattern);\n await Promise.all(\n componentIds.map(async (componentId) => {\n await this.workspace.addSpecificComponentConfig(componentId, aspectId, config, options.merge);\n })\n );\n await this.workspace.bitMap.write();\n\n return componentIds;\n }\n\n async unsetAspectsFromComponents(pattern: string, aspectId: string): Promise<ComponentID[]> {\n const componentIds = await this.workspace.idsByPattern(pattern);\n await Promise.all(\n componentIds.map(async (componentId) => {\n await this.workspace.removeSpecificComponentConfig(componentId, aspectId, true);\n })\n );\n await this.workspace.bitMap.write();\n\n return componentIds;\n }\n\n /**\n * returns all aspects info of a component, include the config and the data.\n */\n async getAspectsOfComponent(id: string | ComponentID): Promise<AspectList> {\n if (typeof id === 'string') {\n id = await this.workspace.resolveComponentId(id);\n }\n const component = await this.workspace.get(id);\n return component.state.aspects;\n }\n\n /**\n * helps debugging why/how an aspect was set to a component\n */\n async getAspectsOfComponentForDebugging(id: string | ComponentID) {\n if (typeof id === 'string') {\n id = await this.workspace.resolveComponentId(id);\n }\n const componentFromScope = await this.workspace.scope.get(id);\n const { extensions, beforeMerge } = await this.workspace.componentExtensions(id, componentFromScope);\n const component = await this.workspace.get(id);\n return {\n aspects: component.state.aspects,\n extensions,\n beforeMerge,\n };\n }\n\n async updateAspectsToComponents(\n aspectId: string,\n pattern?: string\n ): Promise<{ updated: ComponentID[]; alreadyUpToDate: ComponentID[] }> {\n let aspectCompId = await this.workspace.resolveComponentId(aspectId);\n if (!aspectCompId.hasVersion()) {\n try {\n const fromRemote = await this.workspace.scope.getRemoteComponent(aspectCompId);\n aspectCompId = aspectCompId.changeVersion(fromRemote.id.version);\n } catch (err) {\n throw new BitError(\n `unable to find ${aspectId} in the remote. if this is a local aspect, please provide a version with your aspect (${aspectId}) to update to`\n );\n }\n }\n const allCompIds = pattern ? await this.workspace.idsByPattern(pattern) : await this.workspace.listIds();\n const allComps = await this.workspace.getMany(allCompIds);\n const alreadyUpToDate: ComponentID[] = [];\n const updatedComponentIds = await Promise.all(\n allComps.map(async (comp) => {\n const aspect = comp.state.aspects.get(aspectCompId.toStringWithoutVersion());\n if (!aspect) return undefined;\n if (aspect.id.version === aspectCompId.version) {\n // nothing to update\n alreadyUpToDate.push(comp.id);\n return undefined;\n }\n // don't mark with minus if not exist in .bitmap. it's not needed. when the component is loaded, the\n // merge-operation of the aspects removes duplicate aspect-id with different versions.\n await this.workspace.removeSpecificComponentConfig(comp.id, aspect.id.toString(), false);\n await this.workspace.addSpecificComponentConfig(comp.id, aspectCompId.toString(), aspect.config);\n return comp.id;\n })\n );\n await this.workspace.bitMap.write();\n return { updated: compact(updatedComponentIds), alreadyUpToDate };\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.aspectEnv.getDependencies();\n return mergeDeepLeft(dependencyPolicy, reactDeps);\n },\n });\n }\n\n static runtime = MainRuntime;\n static dependencies = [\n ReactAspect,\n EnvsAspect,\n BuilderAspect,\n AspectLoaderAspect,\n CompilerAspect,\n BabelAspect,\n GeneratorAspect,\n WorkspaceAspect,\n CLIAspect,\n ];\n\n static async provider([react, envs, builder, aspectLoader, compiler, babel, generator, workspace, cli]: [\n ReactMain,\n EnvsMain,\n BuilderMain,\n AspectLoaderMain,\n CompilerMain,\n BabelMain,\n GeneratorMain,\n Workspace,\n CLIMain\n ]) {\n const babelCompiler = babel.createCompiler({\n babelTransformOptions: babelConfig,\n distDir: 'dist',\n distGlobPatterns: [`dist/**`, `!dist/**/*.d.ts`, `!dist/tsconfig.tsbuildinfo`],\n });\n const compilerOverride = envs.override({\n getCompiler: () => {\n return babelCompiler;\n },\n });\n\n const transformer = (config) => {\n config\n .mergeTsConfig(tsconfig)\n .setArtifactName('declaration')\n .setDistGlobPatterns([`dist/**/*.d.ts`])\n .setShouldCopyNonSupportedFiles(false);\n return config;\n };\n const tsCompiler = react.env.getCjsCompilerTask([transformer]);\n\n const compilerTasksOverride = react.overrideCompilerTasks([\n compiler.createTask('BabelCompiler', babelCompiler),\n tsCompiler,\n ]);\n\n const aspectEnv = react.compose(\n [compilerOverride, compilerTasksOverride],\n new AspectEnv(react.reactEnv, aspectLoader)\n );\n\n const coreExporterTask = new CoreExporterTask(aspectEnv, aspectLoader);\n if (!__dirname.includes('@teambit/bit')) {\n builder.registerBuildTasks([coreExporterTask]);\n }\n\n envs.registerEnv(aspectEnv);\n generator.registerComponentTemplate([aspectTemplate]);\n const aspectMain = new AspectMain(aspectEnv as AspectEnv, envs, workspace);\n const aspectCmd = new AspectCmd();\n aspectCmd.commands = [\n new ListAspectCmd(aspectMain),\n new GetAspectCmd(aspectMain),\n new SetAspectCmd(aspectMain),\n new UnsetAspectCmd(aspectMain),\n new UpdateAspectCmd(aspectMain),\n ];\n cli.register(aspectCmd);\n\n return aspectMain;\n }\n}\n\nAspectAspect.addRuntime(AspectMain);\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;;AAEA;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;;AAGA;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;;AAYA,MAAMA,QAAQ,GAAGC,OAAO,CAAC,4BAAD,CAAxB;;AAEO,MAAMC,UAAN,CAAiB;EACtBC,WAAW,CAAUC,SAAV,EAAwCC,IAAxC,EAAgEC,SAAhE,EAAsF;IAAA,KAA5EF,SAA4E,GAA5EA,SAA4E;IAAA,KAA9CC,IAA8C,GAA9CA,IAA8C;IAAA,KAAtBC,SAAsB,GAAtBA,SAAsB;EAAE;EAEnG;AACF;AACA;;;EACEC,OAAO,CAACC,YAA8B,GAAG,EAAlC,EAAsCC,SAAsB,GAAG,EAA/D,EAAmE;IACxE,OAAO,KAAKJ,IAAL,CAAUE,OAAV,CAAkB,KAAKF,IAAL,CAAUK,KAAV,CAAgBD,SAAhB,EAA2B,KAAKL,SAAhC,CAAlB,EAA8DI,YAA9D,CAAP;EACD;;EAE2B,MAAtBG,sBAAsB,CAACC,OAAD,EAAqE;IAC/F,MAAMC,MAAM,GAAG,YAAY;MACzB,IAAI,CAACD,OAAL,EAAc,OAAO,KAAKN,SAAL,CAAeQ,OAAf,EAAP;MACd,OAAO,KAAKR,SAAL,CAAeS,YAAf,CAA4BH,OAA5B,CAAP;IACD,CAHD;;IAIA,MAAMI,YAAY,GAAG,MAAMH,MAAM,EAAjC;IACA,MAAMI,OAAO,GAAG,EAAhB;IACA,MAAMC,OAAO,CAACC,GAAR,CACJH,YAAY,CAACI,GAAb,CAAiB,MAAOC,EAAP,IAAc;MAC7B,MAAMC,aAAa,GAAG,MAAM,KAAKC,0BAAL,CAAgCF,EAAhC,CAA5B;MACAJ,OAAO,CAACI,EAAE,CAACG,QAAH,EAAD,CAAP,GAAyBF,aAAzB;IACD,CAHD,CADI,CAAN;IAMA,OAAOL,OAAP;EACD;;EAEc,IAAXQ,WAAW,GAAG;IAChB,OAAOA,0BAAP;EACD;;EAEuC,MAA1BF,0BAA0B,CAACF,EAAD,EAA2C;IACjF,MAAMK,kBAAkB,GAAG,MAAM,KAAKpB,SAAL,CAAeqB,KAAf,CAAqBC,GAArB,CAAyBP,EAAzB,CAAjC;IACA,MAAM;MAAEQ;IAAF,IAAkB,MAAM,KAAKvB,SAAL,CAAewB,mBAAf,CAAmCT,EAAnC,EAAuCK,kBAAvC,CAA9B;IACA,MAAMJ,aAA6B,GAAG,EAAtC;IACAO,WAAW,CAACE,OAAZ,CAAqBC,MAAD,IAAY;MAC9BA,MAAM,CAACC,UAAP,CAAkBF,OAAlB,CAA2BG,GAAD,IAAS;QAAA;;QACjC,MAAMC,UAAU,GAAGD,GAAG,CAACE,IAAJ,yBAAYF,GAAG,CAACG,WAAhB,qDAAY,iBAAiBb,QAAjB,EAAZ,KAA2C,WAA9D;QACA,MAAMc,YAAY,GAAGhB,aAAa,CAACiB,IAAd,CAAoBC,CAAD,IAAOA,CAAC,CAACL,UAAF,KAAiBA,UAA3C,CAArB;QACA,IAAIG,YAAJ,EAAkB;QAClBhB,aAAa,CAACmB,IAAd,CAAmB;UAAEN,UAAF;UAAcH,MAAM,EAAEA,MAAM,CAACU,MAA7B;UAAqCC,KAAK,EAAE,KAAKC,sBAAL,CAA4BZ,MAAM,CAACU,MAAnC;QAA5C,CAAnB;MACD,CALD;IAMD,CAPD;IAQA,OAAOpB,aAAP;EACD;;EAEOsB,sBAAsB,CAACF,MAAD,EAA2B;IACvD,QAAQA,MAAR;MACE,KAAK,YAAL;MACA,KAAK,mBAAL;MACA,KAAK,eAAL;QACE,OAAO,WAAP;;MACF;QACE,OAAO,WAAP;IANJ;EAQD;;EAE2B,MAAtBG,sBAAsB,CAC1BjC,OAD0B,EAE1BkC,QAF0B,EAG1BC,MAA2B,GAAG,EAHJ,EAI1BC,OAAyB,GAAG,EAJF,EAKF;IACxB,MAAMhC,YAAY,GAAG,MAAM,KAAKV,SAAL,CAAeS,YAAf,CAA4BH,OAA5B,CAA3B;IACA,MAAMM,OAAO,CAACC,GAAR,CACJH,YAAY,CAACI,GAAb,CAAiB,MAAO6B,WAAP,IAAuB;MACtC,MAAM,KAAK3C,SAAL,CAAe4C,0BAAf,CAA0CD,WAA1C,EAAuDH,QAAvD,EAAiEC,MAAjE,EAAyEC,OAAO,CAACtC,KAAjF,CAAN;IACD,CAFD,CADI,CAAN;IAKA,MAAM,KAAKJ,SAAL,CAAe6C,MAAf,CAAsBC,KAAtB,EAAN;IAEA,OAAOpC,YAAP;EACD;;EAE+B,MAA1BqC,0BAA0B,CAACzC,OAAD,EAAkBkC,QAAlB,EAA4D;IAC1F,MAAM9B,YAAY,GAAG,MAAM,KAAKV,SAAL,CAAeS,YAAf,CAA4BH,OAA5B,CAA3B;IACA,MAAMM,OAAO,CAACC,GAAR,CACJH,YAAY,CAACI,GAAb,CAAiB,MAAO6B,WAAP,IAAuB;MACtC,MAAM,KAAK3C,SAAL,CAAegD,6BAAf,CAA6CL,WAA7C,EAA0DH,QAA1D,EAAoE,IAApE,CAAN;IACD,CAFD,CADI,CAAN;IAKA,MAAM,KAAKxC,SAAL,CAAe6C,MAAf,CAAsBC,KAAtB,EAAN;IAEA,OAAOpC,YAAP;EACD;EAED;AACF;AACA;;;EAC6B,MAArBuC,qBAAqB,CAAClC,EAAD,EAAgD;IACzE,IAAI,OAAOA,EAAP,KAAc,QAAlB,EAA4B;MAC1BA,EAAE,GAAG,MAAM,KAAKf,SAAL,CAAekD,kBAAf,CAAkCnC,EAAlC,CAAX;IACD;;IACD,MAAMoC,SAAS,GAAG,MAAM,KAAKnD,SAAL,CAAesB,GAAf,CAAmBP,EAAnB,CAAxB;IACA,OAAOoC,SAAS,CAACC,KAAV,CAAgBC,OAAvB;EACD;EAED;AACF;AACA;;;EACyC,MAAjCC,iCAAiC,CAACvC,EAAD,EAA2B;IAChE,IAAI,OAAOA,EAAP,KAAc,QAAlB,EAA4B;MAC1BA,EAAE,GAAG,MAAM,KAAKf,SAAL,CAAekD,kBAAf,CAAkCnC,EAAlC,CAAX;IACD;;IACD,MAAMK,kBAAkB,GAAG,MAAM,KAAKpB,SAAL,CAAeqB,KAAf,CAAqBC,GAArB,CAAyBP,EAAzB,CAAjC;IACA,MAAM;MAAEY,UAAF;MAAcJ;IAAd,IAA8B,MAAM,KAAKvB,SAAL,CAAewB,mBAAf,CAAmCT,EAAnC,EAAuCK,kBAAvC,CAA1C;IACA,MAAM+B,SAAS,GAAG,MAAM,KAAKnD,SAAL,CAAesB,GAAf,CAAmBP,EAAnB,CAAxB;IACA,OAAO;MACLsC,OAAO,EAAEF,SAAS,CAACC,KAAV,CAAgBC,OADpB;MAEL1B,UAFK;MAGLJ;IAHK,CAAP;EAKD;;EAE8B,MAAzBgC,yBAAyB,CAC7Bf,QAD6B,EAE7BlC,OAF6B,EAGwC;IACrE,IAAIkD,YAAY,GAAG,MAAM,KAAKxD,SAAL,CAAekD,kBAAf,CAAkCV,QAAlC,CAAzB;;IACA,IAAI,CAACgB,YAAY,CAACC,UAAb,EAAL,EAAgC;MAC9B,IAAI;QACF,MAAMC,UAAU,GAAG,MAAM,KAAK1D,SAAL,CAAeqB,KAAf,CAAqBsC,kBAArB,CAAwCH,YAAxC,CAAzB;QACAA,YAAY,GAAGA,YAAY,CAACI,aAAb,CAA2BF,UAAU,CAAC3C,EAAX,CAAc8C,OAAzC,CAAf;MACD,CAHD,CAGE,OAAOC,GAAP,EAAY;QACZ,MAAM,KAAIC,oBAAJ,EACH,kBAAiBvB,QAAS,yFAAwFA,QAAS,gBADxH,CAAN;MAGD;IACF;;IACD,MAAMwB,UAAU,GAAG1D,OAAO,GAAG,MAAM,KAAKN,SAAL,CAAeS,YAAf,CAA4BH,OAA5B,CAAT,GAAgD,MAAM,KAAKN,SAAL,CAAeQ,OAAf,EAAhF;IACA,MAAMyD,QAAQ,GAAG,MAAM,KAAKjE,SAAL,CAAekE,OAAf,CAAuBF,UAAvB,CAAvB;IACA,MAAMG,eAA8B,GAAG,EAAvC;IACA,MAAMC,mBAAmB,GAAG,MAAMxD,OAAO,CAACC,GAAR,CAChCoD,QAAQ,CAACnD,GAAT,CAAa,MAAOuD,IAAP,IAAgB;MAC3B,MAAMC,MAAM,GAAGD,IAAI,CAACjB,KAAL,CAAWC,OAAX,CAAmB/B,GAAnB,CAAuBkC,YAAY,CAACe,sBAAb,EAAvB,CAAf;MACA,IAAI,CAACD,MAAL,EAAa,OAAOE,SAAP;;MACb,IAAIF,MAAM,CAACvD,EAAP,CAAU8C,OAAV,KAAsBL,YAAY,CAACK,OAAvC,EAAgD;QAC9C;QACAM,eAAe,CAAChC,IAAhB,CAAqBkC,IAAI,CAACtD,EAA1B;QACA,OAAOyD,SAAP;MACD,CAP0B,CAQ3B;MACA;;;MACA,MAAM,KAAKxE,SAAL,CAAegD,6BAAf,CAA6CqB,IAAI,CAACtD,EAAlD,EAAsDuD,MAAM,CAACvD,EAAP,CAAUG,QAAV,EAAtD,EAA4E,KAA5E,CAAN;MACA,MAAM,KAAKlB,SAAL,CAAe4C,0BAAf,CAA0CyB,IAAI,CAACtD,EAA/C,EAAmDyC,YAAY,CAACtC,QAAb,EAAnD,EAA4EoD,MAAM,CAAC7B,MAAnF,CAAN;MACA,OAAO4B,IAAI,CAACtD,EAAZ;IACD,CAbD,CADgC,CAAlC;IAgBA,MAAM,KAAKf,SAAL,CAAe6C,MAAf,CAAsBC,KAAtB,EAAN;IACA,OAAO;MAAE2B,OAAO,EAAE,IAAAC,iBAAA,EAAQN,mBAAR,CAAX;MAAyCD;IAAzC,CAAP;EACD;EAED;AACF;AACA;;;EACEQ,oBAAoB,CAACC,gBAAD,EAA0C;IAC5D,OAAO,KAAK7E,IAAL,CAAU8E,QAAV,CAAmB;MACxBC,eAAe,EAAE,YAAY;QAC3B,MAAMC,SAAS,GAAG,MAAM,KAAKjF,SAAL,CAAegF,eAAf,EAAxB;QACA,OAAO,IAAAE,wBAAA,EAAcJ,gBAAd,EAAgCG,SAAhC,CAAP;MACD;IAJuB,CAAnB,CAAP;EAMD;;EAeoB,aAARE,QAAQ,CAAC,CAACC,KAAD,EAAQnF,IAAR,EAAcoF,OAAd,EAAuBC,YAAvB,EAAqCC,QAArC,EAA+CC,KAA/C,EAAsDC,SAAtD,EAAiEvF,SAAjE,EAA4EwF,GAA5E,CAAD,EAUlB;IACD,MAAMC,aAAa,GAAGH,KAAK,CAACI,cAAN,CAAqB;MACzCC,qBAAqB,EAAExE,0BADkB;MAEzCyE,OAAO,EAAE,MAFgC;MAGzCC,gBAAgB,EAAE,CAAE,SAAF,EAAa,iBAAb,EAAgC,4BAAhC;IAHuB,CAArB,CAAtB;IAKA,MAAMC,gBAAgB,GAAG/F,IAAI,CAAC8E,QAAL,CAAc;MACrCkB,WAAW,EAAE,MAAM;QACjB,OAAON,aAAP;MACD;IAHoC,CAAd,CAAzB;;IAMA,MAAMO,WAAW,GAAIvD,MAAD,IAAY;MAC9BA,MAAM,CACHwD,aADH,CACiBvG,QADjB,EAEGwG,eAFH,CAEmB,aAFnB,EAGGC,mBAHH,CAGuB,CAAE,gBAAF,CAHvB,EAIGC,8BAJH,CAIkC,KAJlC;MAKA,OAAO3D,MAAP;IACD,CAPD;;IAQA,MAAM4D,UAAU,GAAGnB,KAAK,CAACoB,GAAN,CAAUC,kBAAV,CAA6B,CAACP,WAAD,CAA7B,CAAnB;IAEA,MAAMQ,qBAAqB,GAAGtB,KAAK,CAACuB,qBAAN,CAA4B,CACxDpB,QAAQ,CAACqB,UAAT,CAAoB,eAApB,EAAqCjB,aAArC,CADwD,EAExDY,UAFwD,CAA5B,CAA9B;IAKA,MAAMvG,SAAS,GAAGoF,KAAK,CAACjF,OAAN,CAChB,CAAC6F,gBAAD,EAAmBU,qBAAnB,CADgB,EAEhB,KAAIG,oBAAJ,EAAczB,KAAK,CAAC0B,QAApB,EAA8BxB,YAA9B,CAFgB,CAAlB;IAKA,MAAMyB,gBAAgB,GAAG,KAAIC,gCAAJ,EAAqBhH,SAArB,EAAgCsF,YAAhC,CAAzB;;IACA,IAAI,CAAC2B,SAAS,CAACC,QAAV,CAAmB,cAAnB,CAAL,EAAyC;MACvC7B,OAAO,CAAC8B,kBAAR,CAA2B,CAACJ,gBAAD,CAA3B;IACD;;IAED9G,IAAI,CAACmH,WAAL,CAAiBpH,SAAjB;IACAyF,SAAS,CAAC4B,yBAAV,CAAoC,CAACC,yBAAD,CAApC;IACA,MAAMC,UAAU,GAAG,IAAIzH,UAAJ,CAAeE,SAAf,EAAuCC,IAAvC,EAA6CC,SAA7C,CAAnB;IACA,MAAMsH,SAAS,GAAG,KAAIC,oBAAJ,GAAlB;IACAD,SAAS,CAACE,QAAV,GAAqB,CACnB,KAAIC,wBAAJ,EAAkBJ,UAAlB,CADmB,EAEnB,KAAIK,uBAAJ,EAAiBL,UAAjB,CAFmB,EAGnB,KAAIM,uBAAJ,EAAiBN,UAAjB,CAHmB,EAInB,KAAIO,yBAAJ,EAAmBP,UAAnB,CAJmB,EAKnB,KAAIQ,0BAAJ,EAAoBR,UAApB,CALmB,CAArB;IAOA7B,GAAG,CAACsC,QAAJ,CAAaR,SAAb;IAEA,OAAOD,UAAP;EACD;;AA7OqB;;;gCAAXzH,U,aAmKMmI,kB;gCAnKNnI,U,kBAoKW,CACpBoI,oBADoB,EAEpBC,kBAFoB,EAGpBC,wBAHoB,EAIpBC,kCAJoB,EAKpBC,0BALoB,EAMpBC,oBANoB,EAOpBC,4BAPoB,EAQpBC,oBARoB,EASpBC,gBAToB,C;;AA4ExBC,sBAAA,CAAaC,UAAb,CAAwB9I,UAAxB"}
1
+ {"version":3,"names":["tsconfig","require","AspectMain","constructor","aspectEnv","envs","workspace","compose","transformers","targetEnv","merge","listAspectsOfComponent","pattern","getIds","listIds","idsByPattern","componentIds","results","Promise","all","map","id","aspectSources","getAspectNamesForComponent","toString","babelConfig","componentFromScope","scope","get","beforeMerge","componentExtensions","forEach","source","extensions","ext","aspectName","name","extensionId","alreadySaved","find","_","push","origin","level","getLevelBySourceOrigin","setAspectsToComponents","aspectId","config","options","componentId","addSpecificComponentConfig","bitMap","write","unsetAspectsFromComponents","removeSpecificComponentConfig","getAspectsOfComponent","resolveComponentId","component","state","aspects","getAspectsOfComponentForDebugging","updateAspectsToComponents","aspectCompId","hasVersion","fromRemote","getRemoteComponent","changeVersion","version","err","BitError","allCompIds","allComps","getMany","alreadyUpToDate","updatedComponentIds","comp","aspect","toStringWithoutVersion","undefined","updated","compact","overrideDependencies","dependencyPolicy","override","getDependencies","reactDeps","mergeDeepLeft","provider","react","builder","aspectLoader","compiler","babel","generator","cli","babelCompiler","createCompiler","babelTransformOptions","distDir","distGlobPatterns","compilerOverride","getCompiler","transformer","mergeTsConfig","setArtifactName","setDistGlobPatterns","setShouldCopyNonSupportedFiles","tsCompiler","env","getCjsCompilerTask","compilerTasksOverride","overrideCompilerTasks","createTask","AspectEnv","reactEnv","coreExporterTask","CoreExporterTask","__dirname","includes","registerBuildTasks","registerEnv","registerComponentTemplate","aspectTemplate","aspectMain","aspectCmd","AspectCmd","commands","ListAspectCmd","GetAspectCmd","SetAspectCmd","UnsetAspectCmd","UpdateAspectCmd","register","MainRuntime","ReactAspect","EnvsAspect","BuilderAspect","AspectLoaderAspect","CompilerAspect","BabelAspect","GeneratorAspect","WorkspaceAspect","CLIAspect","AspectAspect","addRuntime"],"sources":["aspect.main.runtime.ts"],"sourcesContent":["import { AspectLoaderAspect, AspectLoaderMain } from '@teambit/aspect-loader';\nimport mergeDeepLeft from 'ramda/src/mergeDeepLeft';\nimport { BuilderAspect, BuilderMain } from '@teambit/builder';\nimport { compact } from 'lodash';\nimport { EnvPolicyConfigObject } from '@teambit/dependency-resolver';\nimport { BitError } from '@teambit/bit-error';\nimport { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport { Environment, EnvsAspect, EnvsMain, EnvTransformer } from '@teambit/envs';\nimport { ReactAspect, ReactMain } from '@teambit/react';\nimport { GeneratorAspect, GeneratorMain } from '@teambit/generator';\nimport { BabelAspect, BabelMain } from '@teambit/babel';\nimport { ComponentID } from '@teambit/component-id';\nimport { AspectList } from '@teambit/component';\nimport WorkspaceAspect, { ExtensionsOrigin, Workspace } from '@teambit/workspace';\nimport { CompilerAspect, CompilerMain } from '@teambit/compiler';\nimport { AspectAspect } from './aspect.aspect';\nimport { AspectEnv } from './aspect.env';\nimport { CoreExporterTask } from './core-exporter.task';\nimport { aspectTemplate } from './templates/aspect';\nimport { babelConfig } from './babel/babel-config';\nimport {\n AspectCmd,\n GetAspectCmd,\n ListAspectCmd,\n SetAspectCmd,\n SetAspectOptions,\n UnsetAspectCmd,\n UpdateAspectCmd,\n} from './aspect.cmd';\n\nexport type AspectSource = { aspectName: string; source: string; level: string };\n\nconst tsconfig = require('./typescript/tsconfig.json');\n\nexport class AspectMain {\n constructor(readonly aspectEnv: AspectEnv, private envs: EnvsMain, private workspace: Workspace) {}\n\n /**\n * compose your own aspect environment.\n */\n compose(transformers: EnvTransformer[] = [], targetEnv: Environment = {}) {\n return this.envs.compose(this.envs.merge(targetEnv, this.aspectEnv), transformers);\n }\n\n async listAspectsOfComponent(pattern?: string): Promise<{ [component: string]: AspectSource[] }> {\n const getIds = async () => {\n if (!pattern) return this.workspace.listIds();\n return this.workspace.idsByPattern(pattern);\n };\n const componentIds = await getIds();\n const results = {};\n await Promise.all(\n componentIds.map(async (id) => {\n const aspectSources = await this.getAspectNamesForComponent(id);\n results[id.toString()] = aspectSources;\n })\n );\n return results;\n }\n\n get babelConfig() {\n return babelConfig;\n }\n\n private async getAspectNamesForComponent(id: ComponentID): Promise<AspectSource[]> {\n const componentFromScope = await this.workspace.scope.get(id);\n const { beforeMerge } = await this.workspace.componentExtensions(id, componentFromScope);\n const aspectSources: AspectSource[] = [];\n beforeMerge.forEach((source) => {\n source.extensions.forEach((ext) => {\n const aspectName = ext.name || ext.extensionId?.toString() || '<no-name>';\n const alreadySaved = aspectSources.find((_) => _.aspectName === aspectName);\n if (alreadySaved) return;\n aspectSources.push({ aspectName, source: source.origin, level: this.getLevelBySourceOrigin(source.origin) });\n });\n });\n return aspectSources;\n }\n\n private getLevelBySourceOrigin(origin: ExtensionsOrigin) {\n switch (origin) {\n case 'BitmapFile':\n case 'ComponentJsonFile':\n case 'ModelSpecific':\n return 'component';\n default:\n return 'workspace';\n }\n }\n\n async setAspectsToComponents(\n pattern: string,\n aspectId: string,\n config: Record<string, any> = {},\n options: SetAspectOptions = {}\n ): Promise<ComponentID[]> {\n const componentIds = await this.workspace.idsByPattern(pattern);\n await Promise.all(\n componentIds.map(async (componentId) => {\n await this.workspace.addSpecificComponentConfig(componentId, aspectId, config, options.merge);\n })\n );\n await this.workspace.bitMap.write();\n\n return componentIds;\n }\n\n async unsetAspectsFromComponents(pattern: string, aspectId: string): Promise<ComponentID[]> {\n const componentIds = await this.workspace.idsByPattern(pattern);\n await Promise.all(\n componentIds.map(async (componentId) => {\n await this.workspace.removeSpecificComponentConfig(componentId, aspectId, true);\n })\n );\n await this.workspace.bitMap.write();\n\n return componentIds;\n }\n\n /**\n * returns all aspects info of a component, include the config and the data.\n */\n async getAspectsOfComponent(id: string | ComponentID): Promise<AspectList> {\n if (typeof id === 'string') {\n id = await this.workspace.resolveComponentId(id);\n }\n const component = await this.workspace.get(id);\n return component.state.aspects;\n }\n\n /**\n * helps debugging why/how an aspect was set to a component\n */\n async getAspectsOfComponentForDebugging(id: string | ComponentID) {\n if (typeof id === 'string') {\n id = await this.workspace.resolveComponentId(id);\n }\n const componentFromScope = await this.workspace.scope.get(id);\n const { extensions, beforeMerge } = await this.workspace.componentExtensions(id, componentFromScope);\n const component = await this.workspace.get(id);\n return {\n aspects: component.state.aspects,\n extensions,\n beforeMerge,\n };\n }\n\n async updateAspectsToComponents(\n aspectId: string,\n pattern?: string\n ): Promise<{ updated: ComponentID[]; alreadyUpToDate: ComponentID[] }> {\n let aspectCompId = await this.workspace.resolveComponentId(aspectId);\n if (!aspectCompId.hasVersion()) {\n try {\n const fromRemote = await this.workspace.scope.getRemoteComponent(aspectCompId);\n aspectCompId = aspectCompId.changeVersion(fromRemote.id.version);\n } catch (err) {\n throw new BitError(\n `unable to find ${aspectId} in the remote. if this is a local aspect, please provide a version with your aspect (${aspectId}) to update to`\n );\n }\n }\n const allCompIds = pattern ? await this.workspace.idsByPattern(pattern) : await this.workspace.listIds();\n const allComps = await this.workspace.getMany(allCompIds);\n const alreadyUpToDate: ComponentID[] = [];\n const updatedComponentIds = await Promise.all(\n allComps.map(async (comp) => {\n const aspect = comp.state.aspects.get(aspectCompId.toStringWithoutVersion());\n if (!aspect) return undefined;\n if (aspect.id.version === aspectCompId.version) {\n // nothing to update\n alreadyUpToDate.push(comp.id);\n return undefined;\n }\n // don't mark with minus if not exist in .bitmap. it's not needed. when the component is loaded, the\n // merge-operation of the aspects removes duplicate aspect-id with different versions.\n await this.workspace.removeSpecificComponentConfig(comp.id, aspect.id.toString(), false);\n await this.workspace.addSpecificComponentConfig(comp.id, aspectCompId.toString(), aspect.config);\n return comp.id;\n })\n );\n await this.workspace.bitMap.write();\n return { updated: compact(updatedComponentIds), alreadyUpToDate };\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.aspectEnv.getDependencies();\n return mergeDeepLeft(dependencyPolicy, reactDeps);\n },\n });\n }\n\n static runtime = MainRuntime;\n static dependencies = [\n ReactAspect,\n EnvsAspect,\n BuilderAspect,\n AspectLoaderAspect,\n CompilerAspect,\n BabelAspect,\n GeneratorAspect,\n WorkspaceAspect,\n CLIAspect,\n ];\n\n static async provider([react, envs, builder, aspectLoader, compiler, babel, generator, workspace, cli]: [\n ReactMain,\n EnvsMain,\n BuilderMain,\n AspectLoaderMain,\n CompilerMain,\n BabelMain,\n GeneratorMain,\n Workspace,\n CLIMain\n ]) {\n const babelCompiler = babel.createCompiler({\n babelTransformOptions: babelConfig,\n distDir: 'dist',\n distGlobPatterns: [`dist/**`, `!dist/**/*.d.ts`, `!dist/tsconfig.tsbuildinfo`],\n });\n const compilerOverride = envs.override({\n getCompiler: () => {\n return babelCompiler;\n },\n });\n\n const transformer = (config) => {\n config\n .mergeTsConfig(tsconfig)\n .setArtifactName('declaration')\n .setDistGlobPatterns([`dist/**/*.d.ts`])\n .setShouldCopyNonSupportedFiles(false);\n return config;\n };\n const tsCompiler = react.env.getCjsCompilerTask([transformer]);\n\n const compilerTasksOverride = react.overrideCompilerTasks([\n compiler.createTask('BabelCompiler', babelCompiler),\n tsCompiler,\n ]);\n\n const aspectEnv = react.compose(\n [compilerOverride, compilerTasksOverride],\n new AspectEnv(react.reactEnv, aspectLoader)\n );\n\n const coreExporterTask = new CoreExporterTask(aspectEnv, aspectLoader);\n if (!__dirname.includes('@teambit/bit')) {\n builder.registerBuildTasks([coreExporterTask]);\n }\n\n envs.registerEnv(aspectEnv);\n generator.registerComponentTemplate([aspectTemplate]);\n const aspectMain = new AspectMain(aspectEnv as AspectEnv, envs, workspace);\n const aspectCmd = new AspectCmd();\n aspectCmd.commands = [\n new ListAspectCmd(aspectMain),\n new GetAspectCmd(aspectMain),\n new SetAspectCmd(aspectMain),\n new UnsetAspectCmd(aspectMain),\n new UpdateAspectCmd(aspectMain),\n ];\n cli.register(aspectCmd);\n\n return aspectMain;\n }\n}\n\nAspectAspect.addRuntime(AspectMain);\n"],"mappings":"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"}
@@ -1,98 +1,73 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  require("core-js/modules/es.array.iterator.js");
6
-
7
5
  require("core-js/modules/es.promise.js");
8
-
9
6
  Object.defineProperty(exports, "__esModule", {
10
7
  value: true
11
8
  });
12
9
  exports.default = exports.AspectEnvUI = void 0;
13
-
14
10
  function _defineProperty2() {
15
11
  const data = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
16
-
17
12
  _defineProperty2 = function () {
18
13
  return data;
19
14
  };
20
-
21
15
  return data;
22
16
  }
23
-
24
17
  function _react() {
25
18
  const data = _interopRequireDefault(require("react"));
26
-
27
19
  _react = function () {
28
20
  return data;
29
21
  };
30
-
31
22
  return data;
32
23
  }
33
-
34
24
  function _compositions() {
35
25
  const data = require("@teambit/compositions");
36
-
37
26
  _compositions = function () {
38
27
  return data;
39
28
  };
40
-
41
29
  return data;
42
30
  }
43
-
44
31
  function _ui() {
45
32
  const data = require("@teambit/ui");
46
-
47
33
  _ui = function () {
48
34
  return data;
49
35
  };
50
-
51
36
  return data;
52
37
  }
53
-
54
38
  function _tester() {
55
39
  const data = require("@teambit/tester");
56
-
57
40
  _tester = function () {
58
41
  return data;
59
42
  };
60
-
61
43
  return data;
62
44
  }
63
-
64
45
  function _designUi() {
65
46
  const data = require("@teambit/design.ui.empty-box");
66
-
67
47
  _designUi = function () {
68
48
  return data;
69
49
  };
70
-
71
50
  return data;
72
51
  }
73
-
74
52
  function _aspect() {
75
53
  const data = require("./aspect.aspect");
76
-
77
54
  _aspect = function () {
78
55
  return data;
79
56
  };
80
-
81
57
  return data;
82
58
  }
83
-
84
59
  class AspectEnvUI {
85
60
  static async provider([compositionsUI, testerUi]) {
86
- const aspectEnvUI = new AspectEnvUI(); // TODO: get the docs domain from the community aspect and pass it here as a prop
87
-
61
+ const aspectEnvUI = new AspectEnvUI();
62
+ // TODO: get the docs domain from the community aspect and pass it here as a prop
88
63
  testerUi.registerEmptyState(() => {
89
64
  return /*#__PURE__*/_react().default.createElement(_designUi().EmptyBox, {
90
65
  title: "This component doesn\u2019t have any tests.",
91
66
  linkText: "Learn how to add tests to your aspect components",
92
67
  link: `https://bit.dev/docs/dev-services-overview/tester/tester-overview`
93
68
  });
94
- }); // TODO: get the docs domain from the community aspect and pass it here as a prop
95
-
69
+ });
70
+ // TODO: get the docs domain from the community aspect and pass it here as a prop
96
71
  compositionsUI.registerEmptyState(() => {
97
72
  return /*#__PURE__*/_react().default.createElement(_designUi().EmptyBox, {
98
73
  title: "This component doesn\u2019t have any compositions.",
@@ -102,16 +77,12 @@ class AspectEnvUI {
102
77
  });
103
78
  return aspectEnvUI;
104
79
  }
105
-
106
80
  }
107
-
108
81
  exports.AspectEnvUI = AspectEnvUI;
109
82
  (0, _defineProperty2().default)(AspectEnvUI, "runtime", _ui().UIRuntime);
110
83
  (0, _defineProperty2().default)(AspectEnvUI, "slots", []);
111
84
  (0, _defineProperty2().default)(AspectEnvUI, "dependencies", [_compositions().CompositionsAspect, _tester().TesterAspect]);
112
-
113
85
  _aspect().AspectAspect.addRuntime(AspectEnvUI);
114
-
115
86
  var _default = AspectEnvUI;
116
87
  exports.default = _default;
117
88
 
@@ -1 +1 @@
1
- {"version":3,"names":["AspectEnvUI","provider","compositionsUI","testerUi","aspectEnvUI","registerEmptyState","UIRuntime","CompositionsAspect","TesterAspect","AspectAspect","addRuntime"],"sources":["aspect.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 { EmptyBox } from '@teambit/design.ui.empty-box';\nimport { AspectAspect } from './aspect.aspect';\n\nexport class AspectEnvUI {\n static runtime = UIRuntime;\n static slots = [];\n static dependencies = [CompositionsAspect, TesterAspect];\n\n static async provider([compositionsUI, testerUi]: [CompositionsUI, TesterUI]) {\n const aspectEnvUI = new AspectEnvUI();\n // TODO: get the docs domain from the community aspect and pass it here as a prop\n testerUi.registerEmptyState(() => {\n return (\n <EmptyBox\n title=\"This component doesn’t have any tests.\"\n linkText=\"Learn how to add tests to your aspect components\"\n link={`https://bit.dev/docs/dev-services-overview/tester/tester-overview`}\n />\n );\n });\n // TODO: get the docs domain from the community aspect and pass it here as a prop\n compositionsUI.registerEmptyState(() => {\n return (\n <EmptyBox\n title=\"This component doesn’t have any compositions.\"\n linkText=\"Learn how to add compositions to your aspect components\"\n link={`https://bit.dev/docs/dev-services-overview/compositions/compositions-overview`}\n />\n );\n });\n\n return aspectEnvUI;\n }\n}\n\nAspectAspect.addRuntime(AspectEnvUI);\n\nexport default AspectEnvUI;\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;;AAEO,MAAMA,WAAN,CAAkB;EAKF,aAARC,QAAQ,CAAC,CAACC,cAAD,EAAiBC,QAAjB,CAAD,EAAyD;IAC5E,MAAMC,WAAW,GAAG,IAAIJ,WAAJ,EAApB,CAD4E,CAE5E;;IACAG,QAAQ,CAACE,kBAAT,CAA4B,MAAM;MAChC,oBACE,+BAAC,oBAAD;QACE,KAAK,EAAC,6CADR;QAEE,QAAQ,EAAC,kDAFX;QAGE,IAAI,EAAG;MAHT,EADF;IAOD,CARD,EAH4E,CAY5E;;IACAH,cAAc,CAACG,kBAAf,CAAkC,MAAM;MACtC,oBACE,+BAAC,oBAAD;QACE,KAAK,EAAC,oDADR;QAEE,QAAQ,EAAC,yDAFX;QAGE,IAAI,EAAG;MAHT,EADF;IAOD,CARD;IAUA,OAAOD,WAAP;EACD;;AA7BsB;;;gCAAZJ,W,aACMM,e;gCADNN,W,WAEI,E;gCAFJA,W,kBAGW,CAACO,kCAAD,EAAqBC,sBAArB,C;;AA6BxBC,sBAAA,CAAaC,UAAb,CAAwBV,WAAxB;;eAEeA,W"}
1
+ {"version":3,"names":["AspectEnvUI","provider","compositionsUI","testerUi","aspectEnvUI","registerEmptyState","UIRuntime","CompositionsAspect","TesterAspect","AspectAspect","addRuntime"],"sources":["aspect.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 { EmptyBox } from '@teambit/design.ui.empty-box';\nimport { AspectAspect } from './aspect.aspect';\n\nexport class AspectEnvUI {\n static runtime = UIRuntime;\n static slots = [];\n static dependencies = [CompositionsAspect, TesterAspect];\n\n static async provider([compositionsUI, testerUi]: [CompositionsUI, TesterUI]) {\n const aspectEnvUI = new AspectEnvUI();\n // TODO: get the docs domain from the community aspect and pass it here as a prop\n testerUi.registerEmptyState(() => {\n return (\n <EmptyBox\n title=\"This component doesn’t have any tests.\"\n linkText=\"Learn how to add tests to your aspect components\"\n link={`https://bit.dev/docs/dev-services-overview/tester/tester-overview`}\n />\n );\n });\n // TODO: get the docs domain from the community aspect and pass it here as a prop\n compositionsUI.registerEmptyState(() => {\n return (\n <EmptyBox\n title=\"This component doesn’t have any compositions.\"\n linkText=\"Learn how to add compositions to your aspect components\"\n link={`https://bit.dev/docs/dev-services-overview/compositions/compositions-overview`}\n />\n );\n });\n\n return aspectEnvUI;\n }\n}\n\nAspectAspect.addRuntime(AspectEnvUI);\n\nexport default AspectEnvUI;\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;AAEO,MAAMA,WAAW,CAAC;EAKvB,aAAaC,QAAQ,CAAC,CAACC,cAAc,EAAEC,QAAQ,CAA6B,EAAE;IAC5E,MAAMC,WAAW,GAAG,IAAIJ,WAAW,EAAE;IACrC;IACAG,QAAQ,CAACE,kBAAkB,CAAC,MAAM;MAChC,oBACE,+BAAC,oBAAQ;QACP,KAAK,EAAC,6CAAwC;QAC9C,QAAQ,EAAC,kDAAkD;QAC3D,IAAI,EAAG;MAAmE,EAC1E;IAEN,CAAC,CAAC;IACF;IACAH,cAAc,CAACG,kBAAkB,CAAC,MAAM;MACtC,oBACE,+BAAC,oBAAQ;QACP,KAAK,EAAC,oDAA+C;QACrD,QAAQ,EAAC,yDAAyD;QAClE,IAAI,EAAG;MAA+E,EACtF;IAEN,CAAC,CAAC;IAEF,OAAOD,WAAW;EACpB;AACF;AAAC;AAAA,gCA9BYJ,WAAW,aACLM,eAAS;AAAA,gCADfN,WAAW,WAEP,EAAE;AAAA,gCAFNA,WAAW,kBAGA,CAACO,kCAAkB,EAAEC,sBAAY,CAAC;AA6B1DC,sBAAY,CAACC,UAAU,CAACV,WAAW,CAAC;AAAC,eAEtBA,WAAW;AAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["presets","require","resolve","targets","node","useBuiltIns","corejs","plugins","lazy","legacy","babelConfig","sourceMaps"],"sources":["babel-config.ts"],"sourcesContent":["const presets = [\n require.resolve('@babel/preset-react'),\n require.resolve('@babel/preset-typescript'),\n [\n require.resolve('@babel/preset-env'),\n {\n targets: {\n node: 8,\n },\n useBuiltIns: 'usage',\n corejs: 3,\n },\n ],\n];\nconst plugins = [\n [\n require.resolve('@babel/plugin-transform-modules-commonjs'),\n {\n lazy: () => true,\n },\n ],\n require.resolve('babel-plugin-transform-typescript-metadata'),\n [require.resolve('@babel/plugin-proposal-decorators'), { legacy: true }],\n [require.resolve('@babel/plugin-transform-runtime')],\n [require.resolve('@babel/plugin-proposal-object-rest-spread')],\n [require.resolve('@babel/plugin-proposal-class-properties')],\n];\n\nexport const babelConfig = {\n presets,\n plugins,\n sourceMaps: true,\n};\n"],"mappings":";;;;;;AAAA,MAAMA,OAAO,GAAG,CACdC,OAAO,CAACC,OAAR,CAAgB,qBAAhB,CADc,EAEdD,OAAO,CAACC,OAAR,CAAgB,0BAAhB,CAFc,EAGd,CACED,OAAO,CAACC,OAAR,CAAgB,mBAAhB,CADF,EAEE;EACEC,OAAO,EAAE;IACPC,IAAI,EAAE;EADC,CADX;EAIEC,WAAW,EAAE,OAJf;EAKEC,MAAM,EAAE;AALV,CAFF,CAHc,CAAhB;AAcA,MAAMC,OAAO,GAAG,CACd,CACEN,OAAO,CAACC,OAAR,CAAgB,0CAAhB,CADF,EAEE;EACEM,IAAI,EAAE,MAAM;AADd,CAFF,CADc,EAOdP,OAAO,CAACC,OAAR,CAAgB,4CAAhB,CAPc,EAQd,CAACD,OAAO,CAACC,OAAR,CAAgB,mCAAhB,CAAD,EAAuD;EAAEO,MAAM,EAAE;AAAV,CAAvD,CARc,EASd,CAACR,OAAO,CAACC,OAAR,CAAgB,iCAAhB,CAAD,CATc,EAUd,CAACD,OAAO,CAACC,OAAR,CAAgB,2CAAhB,CAAD,CAVc,EAWd,CAACD,OAAO,CAACC,OAAR,CAAgB,yCAAhB,CAAD,CAXc,CAAhB;AAcO,MAAMQ,WAAW,GAAG;EACzBV,OADyB;EAEzBO,OAFyB;EAGzBI,UAAU,EAAE;AAHa,CAApB"}
1
+ {"version":3,"names":["presets","require","resolve","targets","node","useBuiltIns","corejs","plugins","lazy","legacy","babelConfig","sourceMaps"],"sources":["babel-config.ts"],"sourcesContent":["const presets = [\n require.resolve('@babel/preset-react'),\n require.resolve('@babel/preset-typescript'),\n [\n require.resolve('@babel/preset-env'),\n {\n targets: {\n node: 8,\n },\n useBuiltIns: 'usage',\n corejs: 3,\n },\n ],\n];\nconst plugins = [\n [\n require.resolve('@babel/plugin-transform-modules-commonjs'),\n {\n lazy: () => true,\n },\n ],\n require.resolve('babel-plugin-transform-typescript-metadata'),\n [require.resolve('@babel/plugin-proposal-decorators'), { legacy: true }],\n [require.resolve('@babel/plugin-transform-runtime')],\n [require.resolve('@babel/plugin-proposal-object-rest-spread')],\n [require.resolve('@babel/plugin-proposal-class-properties')],\n];\n\nexport const babelConfig = {\n presets,\n plugins,\n sourceMaps: true,\n};\n"],"mappings":";;;;;;AAAA,MAAMA,OAAO,GAAG,CACdC,OAAO,CAACC,OAAO,CAAC,qBAAqB,CAAC,EACtCD,OAAO,CAACC,OAAO,CAAC,0BAA0B,CAAC,EAC3C,CACED,OAAO,CAACC,OAAO,CAAC,mBAAmB,CAAC,EACpC;EACEC,OAAO,EAAE;IACPC,IAAI,EAAE;EACR,CAAC;EACDC,WAAW,EAAE,OAAO;EACpBC,MAAM,EAAE;AACV,CAAC,CACF,CACF;AACD,MAAMC,OAAO,GAAG,CACd,CACEN,OAAO,CAACC,OAAO,CAAC,0CAA0C,CAAC,EAC3D;EACEM,IAAI,EAAE,MAAM;AACd,CAAC,CACF,EACDP,OAAO,CAACC,OAAO,CAAC,4CAA4C,CAAC,EAC7D,CAACD,OAAO,CAACC,OAAO,CAAC,mCAAmC,CAAC,EAAE;EAAEO,MAAM,EAAE;AAAK,CAAC,CAAC,EACxE,CAACR,OAAO,CAACC,OAAO,CAAC,iCAAiC,CAAC,CAAC,EACpD,CAACD,OAAO,CAACC,OAAO,CAAC,2CAA2C,CAAC,CAAC,EAC9D,CAACD,OAAO,CAACC,OAAO,CAAC,yCAAyC,CAAC,CAAC,CAC7D;AAEM,MAAMQ,WAAW,GAAG;EACzBV,OAAO;EACPO,OAAO;EACPI,UAAU,EAAE;AACd,CAAC;AAAC"}