@teambit/forking 0.0.142 → 0.0.145
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.
- package/dist/forking.main.runtime.d.ts +5 -0
- package/dist/forking.main.runtime.js +75 -0
- package/dist/forking.main.runtime.js.map +1 -1
- package/dist/scope-fork.cmd.d.ts +11 -0
- package/dist/scope-fork.cmd.js +55 -0
- package/dist/scope-fork.cmd.js.map +1 -0
- package/package-tar/teambit-forking-0.0.145.tgz +0 -0
- package/package.json +12 -12
- package/{preview-1653227849497.js → preview-1653494536947.js} +2 -2
- package/package-tar/teambit-forking-0.0.142.tgz +0 -0
@@ -39,6 +39,11 @@ export declare class ForkingMain {
|
|
39
39
|
*/
|
40
40
|
getForkInfo(component: Component): ForkInfo | null;
|
41
41
|
forkMultipleFromRemote(componentsToFork: MultipleComponentsToFork, options?: MultipleForkOptions): Promise<void>;
|
42
|
+
private refactorMultipleAndInstall;
|
43
|
+
/**
|
44
|
+
* fork all components of the given scope
|
45
|
+
*/
|
46
|
+
forkScope(originalScope: string, newScope: string): Promise<ComponentID[]>;
|
42
47
|
private forkExistingInWorkspace;
|
43
48
|
private forkRemoteComponent;
|
44
49
|
private saveDeps;
|
@@ -69,6 +69,16 @@ function _workspace() {
|
|
69
69
|
return data;
|
70
70
|
}
|
71
71
|
|
72
|
+
function _bitId() {
|
73
|
+
const data = require("@teambit/legacy/dist/bit-id");
|
74
|
+
|
75
|
+
_bitId = function () {
|
76
|
+
return data;
|
77
|
+
};
|
78
|
+
|
79
|
+
return data;
|
80
|
+
}
|
81
|
+
|
72
82
|
function _exceptions() {
|
73
83
|
const data = require("@teambit/legacy/dist/consumer/exceptions");
|
74
84
|
|
@@ -199,6 +209,16 @@ function _forking3() {
|
|
199
209
|
return data;
|
200
210
|
}
|
201
211
|
|
212
|
+
function _scopeFork() {
|
213
|
+
const data = require("./scope-fork.cmd");
|
214
|
+
|
215
|
+
_scopeFork = function () {
|
216
|
+
return data;
|
217
|
+
};
|
218
|
+
|
219
|
+
return data;
|
220
|
+
}
|
221
|
+
|
202
222
|
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); }
|
203
223
|
|
204
224
|
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; }
|
@@ -280,6 +300,10 @@ class ForkingMain {
|
|
280
300
|
component
|
281
301
|
};
|
282
302
|
});
|
303
|
+
await this.refactorMultipleAndInstall(results);
|
304
|
+
}
|
305
|
+
|
306
|
+
async refactorMultipleAndInstall(results, options = {}) {
|
283
307
|
const oldPackages = [];
|
284
308
|
const stringsToReplace = results.map(({
|
285
309
|
targetCompId,
|
@@ -321,6 +345,53 @@ class ForkingMain {
|
|
321
345
|
await this.installDeps();
|
322
346
|
}
|
323
347
|
}
|
348
|
+
/**
|
349
|
+
* fork all components of the given scope
|
350
|
+
*/
|
351
|
+
|
352
|
+
|
353
|
+
async forkScope(originalScope, newScope) {
|
354
|
+
const idsFromOriginalScope = await this.workspace.scope.listRemoteScope(originalScope);
|
355
|
+
|
356
|
+
if (!idsFromOriginalScope.length) {
|
357
|
+
throw new Error(`unable to find components to fork from ${originalScope}`);
|
358
|
+
}
|
359
|
+
|
360
|
+
const workspaceIds = await this.workspace.listIds();
|
361
|
+
|
362
|
+
const workspaceBitIds = _bitId().BitIds.fromArray(workspaceIds.map(id => id._legacy));
|
363
|
+
|
364
|
+
idsFromOriginalScope.forEach(id => {
|
365
|
+
const existInWorkspace = workspaceBitIds.searchWithoutScopeAndVersion(id._legacy);
|
366
|
+
|
367
|
+
if (existInWorkspace) {
|
368
|
+
throw new Error(`unable to fork "${id.toString()}". the workspace has a component "${existInWorkspace.toString()}" with the same name`);
|
369
|
+
}
|
370
|
+
});
|
371
|
+
const multipleForkInfo = [];
|
372
|
+
const components = await this.workspace.scope.getManyRemoteComponents(idsFromOriginalScope);
|
373
|
+
await (0, _pMapSeries().default)(components, async component => {
|
374
|
+
const config = await this.getConfig(component);
|
375
|
+
|
376
|
+
const targetCompId = _component().ComponentID.fromObject({
|
377
|
+
name: component.id.fullName
|
378
|
+
}, newScope);
|
379
|
+
|
380
|
+
await this.newComponentHelper.writeAndAddNewComp(component, targetCompId, {
|
381
|
+
scope: newScope
|
382
|
+
}, config);
|
383
|
+
multipleForkInfo.push({
|
384
|
+
targetCompId,
|
385
|
+
sourceId: component.id.toStringWithoutVersion(),
|
386
|
+
component
|
387
|
+
});
|
388
|
+
});
|
389
|
+
await this.refactorMultipleAndInstall(multipleForkInfo, {
|
390
|
+
refactor: true,
|
391
|
+
install: true
|
392
|
+
});
|
393
|
+
return multipleForkInfo.map(info => info.targetCompId);
|
394
|
+
}
|
324
395
|
|
325
396
|
async forkExistingInWorkspace(existing, targetId, options) {
|
326
397
|
if (!targetId) {
|
@@ -407,10 +478,14 @@ the reason is that the refactor changes the components using ${sourceId.toString
|
|
407
478
|
}
|
408
479
|
|
409
480
|
static async provider([cli, workspace, dependencyResolver, componentMain, newComponentHelper, graphql, refactoring, pkg]) {
|
481
|
+
var _scopeCommand$command;
|
482
|
+
|
410
483
|
const forkingMain = new ForkingMain(workspace, dependencyResolver, newComponentHelper, refactoring, pkg);
|
411
484
|
cli.register(new (_fork().ForkCmd)(forkingMain));
|
412
485
|
graphql.register((0, _forking3().forkingSchema)(forkingMain));
|
413
486
|
componentMain.registerShowFragments([new (_forking2().ForkingFragment)(forkingMain)]);
|
487
|
+
const scopeCommand = cli.getCommand('scope');
|
488
|
+
scopeCommand === null || scopeCommand === void 0 ? void 0 : (_scopeCommand$command = scopeCommand.commands) === null || _scopeCommand$command === void 0 ? void 0 : _scopeCommand$command.push(new (_scopeFork().ScopeForkCmd)(forkingMain));
|
414
489
|
return forkingMain;
|
415
490
|
}
|
416
491
|
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["ForkingMain","constructor","workspace","dependencyResolver","newComponentHelper","refactoring","pkg","fork","sourceId","targetId","options","ConsumerNotFound","sourceCompId","resolveComponentId","exists","existingInWorkspace","get","forkExistingInWorkspace","sourceIdWithScope","_legacy","scope","ComponentID","fromLegacy","BitId","parse","targetCompId","component","forkRemoteComponent","saveDeps","installDeps","getForkInfo","forkConfig","state","aspects","ForkingAspect","id","config","forkedFrom","fromObject","forkMultipleFromRemote","componentsToFork","results","pMapSeries","path","oldPackages","stringsToReplace","map","oldPackageName","getPackageName","push","newName","fullName","replace","scopeToReplace","newPackageName","oldStr","newStr","toStringWithoutVersion","flat","allComponents","list","refactor","changedComponents","replaceMultipleStrings","Promise","all","comp","write","forkedComponents","result","policy","extractDeps","policyFlatAndUnique","uniqBy","policyWithoutWorkspaceComps","filter","dep","includes","dependencyId","addToRootPolicy","updateExisting","persistConfig","install","existing","Error","getNewComponentId","undefined","getConfig","writeAndAddNewComp","refactorDependencyName","BitError","targetName","getRemoteComponent","workspacePolicyEntries","dedupe","import","copyPeerToRuntimeOnRoot","copyPeerToRuntimeOnComponents","deps","getDependencies","source","lifecycleType","lifecycle","value","version","fromExisting","getConfigFromExistingToNewComponent","toObject","provider","cli","componentMain","graphql","forkingMain","register","ForkCmd","forkingSchema","registerShowFragments","ForkingFragment","CLIAspect","WorkspaceAspect","DependencyResolverAspect","ComponentAspect","NewComponentHelperAspect","GraphqlAspect","RefactoringAspect","PkgAspect","MainRuntime","addRuntime"],"sources":["forking.main.runtime.ts"],"sourcesContent":["import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport { DependencyResolverAspect, DependencyResolverMain } from '@teambit/dependency-resolver';\nimport { BitId } from '@teambit/legacy-bit-id';\nimport WorkspaceAspect, { Workspace } from '@teambit/workspace';\nimport { ConsumerNotFound } from '@teambit/legacy/dist/consumer/exceptions';\nimport { uniqBy } from 'lodash';\nimport ComponentAspect, { Component, ComponentID, ComponentMain } from '@teambit/component';\nimport { ComponentIdObj } from '@teambit/component-id';\nimport GraphqlAspect, { GraphqlMain } from '@teambit/graphql';\nimport RefactoringAspect, { MultipleStringsReplacement, RefactoringMain } from '@teambit/refactoring';\nimport pMapSeries from 'p-map-series';\nimport PkgAspect, { PkgMain } from '@teambit/pkg';\nimport { BitError } from '@teambit/bit-error';\nimport NewComponentHelperAspect, { NewComponentHelperMain } from '@teambit/new-component-helper';\nimport { ForkCmd, ForkOptions } from './fork.cmd';\nimport { ForkingAspect } from './forking.aspect';\nimport { ForkingFragment } from './forking.fragment';\nimport { forkingSchema } from './forking.graphql';\n\nexport type ForkInfo = {\n forkedFrom: ComponentID;\n};\n\ntype MultipleComponentsToFork = Array<{\n sourceId: string;\n targetId?: string; // if not specify, it'll be the same as the source\n path?: string; // if not specify, use the default component path\n}>;\n\ntype MultipleForkOptions = {\n refactor?: boolean;\n scope?: string; // different scope-name than the original components\n install?: boolean; // whether to run \"bit install\" once done.\n};\n\nexport class ForkingMain {\n constructor(\n private workspace: Workspace,\n private dependencyResolver: DependencyResolverMain,\n private newComponentHelper: NewComponentHelperMain,\n private refactoring: RefactoringMain,\n private pkg: PkgMain\n ) {}\n\n /**\n * create a new copy of existing/remote component.\n * the new component holds a reference to the old one for future reference.\n * if refactor option is enable, change the source-code to update all dependencies with the new name.\n */\n async fork(sourceId: string, targetId?: string, options?: ForkOptions): Promise<ComponentID> {\n if (!this.workspace) throw new ConsumerNotFound();\n const sourceCompId = await this.workspace.resolveComponentId(sourceId);\n const exists = this.workspace.exists(sourceCompId);\n if (exists) {\n const existingInWorkspace = await this.workspace.get(sourceCompId);\n return this.forkExistingInWorkspace(existingInWorkspace, targetId, options);\n }\n const sourceIdWithScope = sourceCompId._legacy.scope\n ? sourceCompId\n : ComponentID.fromLegacy(BitId.parse(sourceId, true));\n const { targetCompId, component } = await this.forkRemoteComponent(sourceIdWithScope, targetId, options);\n await this.saveDeps(component);\n await this.installDeps();\n return targetCompId;\n }\n\n /**\n * get the forking data, such as the source where a component was forked from\n */\n getForkInfo(component: Component): ForkInfo | null {\n const forkConfig = component.state.aspects.get(ForkingAspect.id)?.config as ForkConfig | undefined;\n if (!forkConfig) return null;\n return {\n forkedFrom: ComponentID.fromObject(forkConfig.forkedFrom),\n };\n }\n\n async forkMultipleFromRemote(componentsToFork: MultipleComponentsToFork, options: MultipleForkOptions = {}) {\n const { scope } = options;\n const results = await pMapSeries(componentsToFork, async ({ sourceId, targetId, path }) => {\n const sourceCompId = await this.workspace.resolveComponentId(sourceId);\n const sourceIdWithScope = sourceCompId._legacy.scope\n ? sourceCompId\n : ComponentID.fromLegacy(BitId.parse(sourceId, true));\n const { targetCompId, component } = await this.forkRemoteComponent(sourceIdWithScope, targetId, { scope, path });\n return { targetCompId, sourceId, component };\n });\n const oldPackages: string[] = [];\n const stringsToReplace: MultipleStringsReplacement = results\n .map(({ targetCompId, sourceId, component }) => {\n const oldPackageName = this.pkg.getPackageName(component);\n oldPackages.push(oldPackageName);\n const newName = targetCompId.fullName.replace(/\\//g, '.');\n const scopeToReplace = targetCompId.scope.replace('.', '/');\n const newPackageName = `@${scopeToReplace}.${newName}`;\n return [\n { oldStr: oldPackageName, newStr: newPackageName },\n { oldStr: sourceId, newStr: targetCompId.toStringWithoutVersion() },\n ];\n })\n .flat();\n const allComponents = await this.workspace.list();\n if (options.refactor) {\n const { changedComponents } = await this.refactoring.replaceMultipleStrings(allComponents, stringsToReplace);\n await Promise.all(changedComponents.map((comp) => this.workspace.write(comp)));\n }\n const forkedComponents = results.map((result) => result.component);\n const policy = await Promise.all(forkedComponents.map((comp) => this.extractDeps(comp)));\n const policyFlatAndUnique = uniqBy(policy.flat(), 'dependencyId');\n const policyWithoutWorkspaceComps = policyFlatAndUnique.filter((dep) => !oldPackages.includes(dep.dependencyId));\n this.dependencyResolver.addToRootPolicy(policyWithoutWorkspaceComps, { updateExisting: true });\n await this.dependencyResolver.persistConfig(this.workspace.path);\n if (options.install) {\n await this.installDeps();\n }\n }\n\n private async forkExistingInWorkspace(existing: Component, targetId?: string, options?: ForkOptions) {\n if (!targetId) {\n throw new Error(`error: unable to create \"${existing.id.toStringWithoutVersion()}\" component, a component with the same name already exists.\nplease specify the target-id arg`);\n }\n const targetCompId = this.newComponentHelper.getNewComponentId(targetId, undefined, options?.scope);\n\n const config = await this.getConfig(existing);\n await this.newComponentHelper.writeAndAddNewComp(existing, targetCompId, options, config);\n if (options?.refactor) {\n const allComponents = await this.workspace.list();\n const { changedComponents } = await this.refactoring.refactorDependencyName(allComponents, existing.id, targetId);\n await Promise.all(changedComponents.map((comp) => this.workspace.write(comp)));\n }\n return targetCompId;\n }\n\n private async forkRemoteComponent(\n sourceId: ComponentID,\n targetId?: string,\n options?: ForkOptions\n ): Promise<{\n targetCompId: ComponentID;\n component: Component;\n }> {\n if (options?.refactor) {\n throw new BitError(`the component ${sourceId.toStringWithoutVersion()} is not in the workspace, you can't use the --refactor flag.\nthe reason is that the refactor changes the components using ${sourceId.toStringWithoutVersion()}, since it's not in the workspace, no components were using it, so nothing to refactor`);\n }\n const targetName = targetId || sourceId.fullName;\n const targetCompId = this.newComponentHelper.getNewComponentId(targetName, undefined, options?.scope);\n const component = await this.workspace.scope.getRemoteComponent(sourceId);\n await this.refactoring.replaceMultipleStrings(\n [component],\n [\n {\n oldStr: sourceId.toStringWithoutVersion(),\n newStr: targetCompId.toStringWithoutVersion(),\n },\n ]\n );\n const config = await this.getConfig(component);\n await this.newComponentHelper.writeAndAddNewComp(component, targetCompId, options, config);\n\n return { targetCompId, component };\n }\n\n private async saveDeps(component: Component) {\n const workspacePolicyEntries = await this.extractDeps(component);\n this.dependencyResolver.addToRootPolicy(workspacePolicyEntries, { updateExisting: true });\n await this.dependencyResolver.persistConfig(this.workspace.path);\n }\n\n private async installDeps() {\n await this.workspace.install(undefined, {\n dedupe: true,\n import: false,\n copyPeerToRuntimeOnRoot: true,\n copyPeerToRuntimeOnComponents: false,\n updateExisting: false,\n });\n }\n\n private async extractDeps(component: Component) {\n const deps = await this.dependencyResolver.getDependencies(component);\n return deps\n .filter((dep) => dep.source === 'auto')\n .map((dep) => ({\n dependencyId: dep.getPackageName?.() || dep.id,\n lifecycleType: dep.lifecycle === 'dev' ? 'runtime' : dep.lifecycle,\n value: {\n version: dep.version,\n },\n }));\n }\n\n private async getConfig(comp: Component) {\n const fromExisting = await this.newComponentHelper.getConfigFromExistingToNewComponent(comp);\n return {\n ...fromExisting,\n [ForkingAspect.id]: {\n forkedFrom: comp.id.toObject(),\n },\n };\n }\n\n static slots = [];\n static dependencies = [\n CLIAspect,\n WorkspaceAspect,\n DependencyResolverAspect,\n ComponentAspect,\n NewComponentHelperAspect,\n GraphqlAspect,\n RefactoringAspect,\n PkgAspect,\n ];\n static runtime = MainRuntime;\n static async provider([\n cli,\n workspace,\n dependencyResolver,\n componentMain,\n newComponentHelper,\n graphql,\n refactoring,\n pkg,\n ]: [\n CLIMain,\n Workspace,\n DependencyResolverMain,\n ComponentMain,\n NewComponentHelperMain,\n GraphqlMain,\n RefactoringMain,\n PkgMain\n ]) {\n const forkingMain = new ForkingMain(workspace, dependencyResolver, newComponentHelper, refactoring, pkg);\n cli.register(new ForkCmd(forkingMain));\n graphql.register(forkingSchema(forkingMain));\n componentMain.registerShowFragments([new ForkingFragment(forkingMain)]);\n return forkingMain;\n }\n}\n\nForkingAspect.addRuntime(ForkingMain);\n\nexport type ForkConfig = {\n forkedFrom: ComponentIdObj;\n};\n"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["ForkingMain","constructor","workspace","dependencyResolver","newComponentHelper","refactoring","pkg","fork","sourceId","targetId","options","ConsumerNotFound","sourceCompId","resolveComponentId","exists","existingInWorkspace","get","forkExistingInWorkspace","sourceIdWithScope","_legacy","scope","ComponentID","fromLegacy","BitId","parse","targetCompId","component","forkRemoteComponent","saveDeps","installDeps","getForkInfo","forkConfig","state","aspects","ForkingAspect","id","config","forkedFrom","fromObject","forkMultipleFromRemote","componentsToFork","results","pMapSeries","path","refactorMultipleAndInstall","oldPackages","stringsToReplace","map","oldPackageName","getPackageName","push","newName","fullName","replace","scopeToReplace","newPackageName","oldStr","newStr","toStringWithoutVersion","flat","allComponents","list","refactor","changedComponents","replaceMultipleStrings","Promise","all","comp","write","forkedComponents","result","policy","extractDeps","policyFlatAndUnique","uniqBy","policyWithoutWorkspaceComps","filter","dep","includes","dependencyId","addToRootPolicy","updateExisting","persistConfig","install","forkScope","originalScope","newScope","idsFromOriginalScope","listRemoteScope","length","Error","workspaceIds","listIds","workspaceBitIds","BitIds","fromArray","forEach","existInWorkspace","searchWithoutScopeAndVersion","toString","multipleForkInfo","components","getManyRemoteComponents","getConfig","name","writeAndAddNewComp","info","existing","getNewComponentId","undefined","refactorDependencyName","BitError","targetName","getRemoteComponent","workspacePolicyEntries","dedupe","import","copyPeerToRuntimeOnRoot","copyPeerToRuntimeOnComponents","deps","getDependencies","source","lifecycleType","lifecycle","value","version","fromExisting","getConfigFromExistingToNewComponent","toObject","provider","cli","componentMain","graphql","forkingMain","register","ForkCmd","forkingSchema","registerShowFragments","ForkingFragment","scopeCommand","getCommand","commands","ScopeForkCmd","CLIAspect","WorkspaceAspect","DependencyResolverAspect","ComponentAspect","NewComponentHelperAspect","GraphqlAspect","RefactoringAspect","PkgAspect","MainRuntime","addRuntime"],"sources":["forking.main.runtime.ts"],"sourcesContent":["import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport { DependencyResolverAspect, DependencyResolverMain } from '@teambit/dependency-resolver';\nimport { BitId } from '@teambit/legacy-bit-id';\nimport WorkspaceAspect, { Workspace } from '@teambit/workspace';\nimport { BitIds } from '@teambit/legacy/dist/bit-id';\nimport { ConsumerNotFound } from '@teambit/legacy/dist/consumer/exceptions';\nimport { uniqBy } from 'lodash';\nimport ComponentAspect, { Component, ComponentID, ComponentMain } from '@teambit/component';\nimport { ComponentIdObj } from '@teambit/component-id';\nimport GraphqlAspect, { GraphqlMain } from '@teambit/graphql';\nimport RefactoringAspect, { MultipleStringsReplacement, RefactoringMain } from '@teambit/refactoring';\nimport pMapSeries from 'p-map-series';\nimport PkgAspect, { PkgMain } from '@teambit/pkg';\nimport { BitError } from '@teambit/bit-error';\nimport NewComponentHelperAspect, { NewComponentHelperMain } from '@teambit/new-component-helper';\nimport { ForkCmd, ForkOptions } from './fork.cmd';\nimport { ForkingAspect } from './forking.aspect';\nimport { ForkingFragment } from './forking.fragment';\nimport { forkingSchema } from './forking.graphql';\nimport { ScopeForkCmd } from './scope-fork.cmd';\n\nexport type ForkInfo = {\n forkedFrom: ComponentID;\n};\n\ntype MultipleForkInfo = {\n targetCompId: ComponentID;\n sourceId: string;\n component: Component;\n};\n\ntype MultipleComponentsToFork = Array<{\n sourceId: string;\n targetId?: string; // if not specify, it'll be the same as the source\n path?: string; // if not specify, use the default component path\n}>;\n\ntype MultipleForkOptions = {\n refactor?: boolean;\n scope?: string; // different scope-name than the original components\n install?: boolean; // whether to run \"bit install\" once done.\n};\n\nexport class ForkingMain {\n constructor(\n private workspace: Workspace,\n private dependencyResolver: DependencyResolverMain,\n private newComponentHelper: NewComponentHelperMain,\n private refactoring: RefactoringMain,\n private pkg: PkgMain\n ) {}\n\n /**\n * create a new copy of existing/remote component.\n * the new component holds a reference to the old one for future reference.\n * if refactor option is enable, change the source-code to update all dependencies with the new name.\n */\n async fork(sourceId: string, targetId?: string, options?: ForkOptions): Promise<ComponentID> {\n if (!this.workspace) throw new ConsumerNotFound();\n const sourceCompId = await this.workspace.resolveComponentId(sourceId);\n const exists = this.workspace.exists(sourceCompId);\n if (exists) {\n const existingInWorkspace = await this.workspace.get(sourceCompId);\n return this.forkExistingInWorkspace(existingInWorkspace, targetId, options);\n }\n const sourceIdWithScope = sourceCompId._legacy.scope\n ? sourceCompId\n : ComponentID.fromLegacy(BitId.parse(sourceId, true));\n const { targetCompId, component } = await this.forkRemoteComponent(sourceIdWithScope, targetId, options);\n await this.saveDeps(component);\n await this.installDeps();\n return targetCompId;\n }\n\n /**\n * get the forking data, such as the source where a component was forked from\n */\n getForkInfo(component: Component): ForkInfo | null {\n const forkConfig = component.state.aspects.get(ForkingAspect.id)?.config as ForkConfig | undefined;\n if (!forkConfig) return null;\n return {\n forkedFrom: ComponentID.fromObject(forkConfig.forkedFrom),\n };\n }\n\n async forkMultipleFromRemote(componentsToFork: MultipleComponentsToFork, options: MultipleForkOptions = {}) {\n const { scope } = options;\n const results = await pMapSeries(componentsToFork, async ({ sourceId, targetId, path }) => {\n const sourceCompId = await this.workspace.resolveComponentId(sourceId);\n const sourceIdWithScope = sourceCompId._legacy.scope\n ? sourceCompId\n : ComponentID.fromLegacy(BitId.parse(sourceId, true));\n const { targetCompId, component } = await this.forkRemoteComponent(sourceIdWithScope, targetId, { scope, path });\n return { targetCompId, sourceId, component };\n });\n await this.refactorMultipleAndInstall(results);\n }\n\n private async refactorMultipleAndInstall(results: MultipleForkInfo[], options: MultipleForkOptions = {}) {\n const oldPackages: string[] = [];\n const stringsToReplace: MultipleStringsReplacement = results\n .map(({ targetCompId, sourceId, component }) => {\n const oldPackageName = this.pkg.getPackageName(component);\n oldPackages.push(oldPackageName);\n const newName = targetCompId.fullName.replace(/\\//g, '.');\n const scopeToReplace = targetCompId.scope.replace('.', '/');\n const newPackageName = `@${scopeToReplace}.${newName}`;\n return [\n { oldStr: oldPackageName, newStr: newPackageName },\n { oldStr: sourceId, newStr: targetCompId.toStringWithoutVersion() },\n ];\n })\n .flat();\n const allComponents = await this.workspace.list();\n if (options.refactor) {\n const { changedComponents } = await this.refactoring.replaceMultipleStrings(allComponents, stringsToReplace);\n await Promise.all(changedComponents.map((comp) => this.workspace.write(comp)));\n }\n const forkedComponents = results.map((result) => result.component);\n const policy = await Promise.all(forkedComponents.map((comp) => this.extractDeps(comp)));\n const policyFlatAndUnique = uniqBy(policy.flat(), 'dependencyId');\n const policyWithoutWorkspaceComps = policyFlatAndUnique.filter((dep) => !oldPackages.includes(dep.dependencyId));\n this.dependencyResolver.addToRootPolicy(policyWithoutWorkspaceComps, { updateExisting: true });\n await this.dependencyResolver.persistConfig(this.workspace.path);\n if (options.install) {\n await this.installDeps();\n }\n }\n\n /**\n * fork all components of the given scope\n */\n async forkScope(originalScope: string, newScope: string): Promise<ComponentID[]> {\n const idsFromOriginalScope = await this.workspace.scope.listRemoteScope(originalScope);\n if (!idsFromOriginalScope.length) {\n throw new Error(`unable to find components to fork from ${originalScope}`);\n }\n const workspaceIds = await this.workspace.listIds();\n const workspaceBitIds = BitIds.fromArray(workspaceIds.map((id) => id._legacy));\n idsFromOriginalScope.forEach((id) => {\n const existInWorkspace = workspaceBitIds.searchWithoutScopeAndVersion(id._legacy);\n if (existInWorkspace) {\n throw new Error(\n `unable to fork \"${id.toString()}\". the workspace has a component \"${existInWorkspace.toString()}\" with the same name`\n );\n }\n });\n const multipleForkInfo: MultipleForkInfo[] = [];\n const components = await this.workspace.scope.getManyRemoteComponents(idsFromOriginalScope);\n await pMapSeries(components, async (component) => {\n const config = await this.getConfig(component);\n const targetCompId = ComponentID.fromObject({ name: component.id.fullName }, newScope);\n await this.newComponentHelper.writeAndAddNewComp(component, targetCompId, { scope: newScope }, config);\n multipleForkInfo.push({ targetCompId, sourceId: component.id.toStringWithoutVersion(), component });\n });\n await this.refactorMultipleAndInstall(multipleForkInfo, { refactor: true, install: true });\n return multipleForkInfo.map((info) => info.targetCompId);\n }\n\n private async forkExistingInWorkspace(existing: Component, targetId?: string, options?: ForkOptions) {\n if (!targetId) {\n throw new Error(`error: unable to create \"${existing.id.toStringWithoutVersion()}\" component, a component with the same name already exists.\nplease specify the target-id arg`);\n }\n const targetCompId = this.newComponentHelper.getNewComponentId(targetId, undefined, options?.scope);\n\n const config = await this.getConfig(existing);\n await this.newComponentHelper.writeAndAddNewComp(existing, targetCompId, options, config);\n if (options?.refactor) {\n const allComponents = await this.workspace.list();\n const { changedComponents } = await this.refactoring.refactorDependencyName(allComponents, existing.id, targetId);\n await Promise.all(changedComponents.map((comp) => this.workspace.write(comp)));\n }\n return targetCompId;\n }\n\n private async forkRemoteComponent(\n sourceId: ComponentID,\n targetId?: string,\n options?: ForkOptions\n ): Promise<{\n targetCompId: ComponentID;\n component: Component;\n }> {\n if (options?.refactor) {\n throw new BitError(`the component ${sourceId.toStringWithoutVersion()} is not in the workspace, you can't use the --refactor flag.\nthe reason is that the refactor changes the components using ${sourceId.toStringWithoutVersion()}, since it's not in the workspace, no components were using it, so nothing to refactor`);\n }\n const targetName = targetId || sourceId.fullName;\n const targetCompId = this.newComponentHelper.getNewComponentId(targetName, undefined, options?.scope);\n const component = await this.workspace.scope.getRemoteComponent(sourceId);\n await this.refactoring.replaceMultipleStrings(\n [component],\n [\n {\n oldStr: sourceId.toStringWithoutVersion(),\n newStr: targetCompId.toStringWithoutVersion(),\n },\n ]\n );\n const config = await this.getConfig(component);\n await this.newComponentHelper.writeAndAddNewComp(component, targetCompId, options, config);\n\n return { targetCompId, component };\n }\n\n private async saveDeps(component: Component) {\n const workspacePolicyEntries = await this.extractDeps(component);\n this.dependencyResolver.addToRootPolicy(workspacePolicyEntries, { updateExisting: true });\n await this.dependencyResolver.persistConfig(this.workspace.path);\n }\n\n private async installDeps() {\n await this.workspace.install(undefined, {\n dedupe: true,\n import: false,\n copyPeerToRuntimeOnRoot: true,\n copyPeerToRuntimeOnComponents: false,\n updateExisting: false,\n });\n }\n\n private async extractDeps(component: Component) {\n const deps = await this.dependencyResolver.getDependencies(component);\n return deps\n .filter((dep) => dep.source === 'auto')\n .map((dep) => ({\n dependencyId: dep.getPackageName?.() || dep.id,\n lifecycleType: dep.lifecycle === 'dev' ? 'runtime' : dep.lifecycle,\n value: {\n version: dep.version,\n },\n }));\n }\n\n private async getConfig(comp: Component) {\n const fromExisting = await this.newComponentHelper.getConfigFromExistingToNewComponent(comp);\n return {\n ...fromExisting,\n [ForkingAspect.id]: {\n forkedFrom: comp.id.toObject(),\n },\n };\n }\n\n static slots = [];\n static dependencies = [\n CLIAspect,\n WorkspaceAspect,\n DependencyResolverAspect,\n ComponentAspect,\n NewComponentHelperAspect,\n GraphqlAspect,\n RefactoringAspect,\n PkgAspect,\n ];\n static runtime = MainRuntime;\n static async provider([\n cli,\n workspace,\n dependencyResolver,\n componentMain,\n newComponentHelper,\n graphql,\n refactoring,\n pkg,\n ]: [\n CLIMain,\n Workspace,\n DependencyResolverMain,\n ComponentMain,\n NewComponentHelperMain,\n GraphqlMain,\n RefactoringMain,\n PkgMain\n ]) {\n const forkingMain = new ForkingMain(workspace, dependencyResolver, newComponentHelper, refactoring, pkg);\n cli.register(new ForkCmd(forkingMain));\n graphql.register(forkingSchema(forkingMain));\n componentMain.registerShowFragments([new ForkingFragment(forkingMain)]);\n\n const scopeCommand = cli.getCommand('scope');\n scopeCommand?.commands?.push(new ScopeForkCmd(forkingMain));\n\n return forkingMain;\n }\n}\n\nForkingAspect.addRuntime(ForkingMain);\n\nexport type ForkConfig = {\n forkedFrom: ComponentIdObj;\n};\n"],"mappings":"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"}
|
@@ -0,0 +1,11 @@
|
|
1
|
+
import { Command, CommandOptions } from '@teambit/cli';
|
2
|
+
import { ForkingMain } from './forking.main.runtime';
|
3
|
+
export declare class ScopeForkCmd implements Command {
|
4
|
+
private forking;
|
5
|
+
name: string;
|
6
|
+
description: string;
|
7
|
+
options: CommandOptions;
|
8
|
+
group: string;
|
9
|
+
constructor(forking: ForkingMain);
|
10
|
+
report([originalScope, newScope]: [string, string]): Promise<string>;
|
11
|
+
}
|
@@ -0,0 +1,55 @@
|
|
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.ScopeForkCmd = void 0;
|
13
|
+
|
14
|
+
function _defineProperty2() {
|
15
|
+
const data = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
16
|
+
|
17
|
+
_defineProperty2 = function () {
|
18
|
+
return data;
|
19
|
+
};
|
20
|
+
|
21
|
+
return data;
|
22
|
+
}
|
23
|
+
|
24
|
+
function _chalk() {
|
25
|
+
const data = _interopRequireDefault(require("chalk"));
|
26
|
+
|
27
|
+
_chalk = function () {
|
28
|
+
return data;
|
29
|
+
};
|
30
|
+
|
31
|
+
return data;
|
32
|
+
}
|
33
|
+
|
34
|
+
class ScopeForkCmd {
|
35
|
+
constructor(forking) {
|
36
|
+
this.forking = forking;
|
37
|
+
(0, _defineProperty2().default)(this, "name", 'fork <original-scope> <new-scope>');
|
38
|
+
(0, _defineProperty2().default)(this, "description", 'fork all components of the original-scope and refactor the source-code to use the new package names');
|
39
|
+
(0, _defineProperty2().default)(this, "options", []);
|
40
|
+
(0, _defineProperty2().default)(this, "group", 'development');
|
41
|
+
}
|
42
|
+
|
43
|
+
async report([originalScope, newScope]) {
|
44
|
+
const forkedIds = await this.forking.forkScope(originalScope, newScope);
|
45
|
+
|
46
|
+
const title = _chalk().default.green(`successfully forked ${_chalk().default.bold(originalScope)} into ${_chalk().default.bold(newScope)}. the following components were created`);
|
47
|
+
|
48
|
+
return `${title}\n${forkedIds.map(id => id.toString()).join('\n')}`;
|
49
|
+
}
|
50
|
+
|
51
|
+
}
|
52
|
+
|
53
|
+
exports.ScopeForkCmd = ScopeForkCmd;
|
54
|
+
|
55
|
+
//# sourceMappingURL=scope-fork.cmd.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["ScopeForkCmd","constructor","forking","report","originalScope","newScope","forkedIds","forkScope","title","chalk","green","bold","map","id","toString","join"],"sources":["scope-fork.cmd.ts"],"sourcesContent":["import { Command, CommandOptions } from '@teambit/cli';\nimport chalk from 'chalk';\nimport { ForkingMain } from './forking.main.runtime';\n\nexport class ScopeForkCmd implements Command {\n name = 'fork <original-scope> <new-scope>';\n description = 'fork all components of the original-scope and refactor the source-code to use the new package names';\n options = [] as CommandOptions;\n group = 'development';\n\n constructor(private forking: ForkingMain) {}\n\n async report([originalScope, newScope]: [string, string]) {\n const forkedIds = await this.forking.forkScope(originalScope, newScope);\n const title = chalk.green(\n `successfully forked ${chalk.bold(originalScope)} into ${chalk.bold(\n newScope\n )}. the following components were created`\n );\n return `${title}\\n${forkedIds.map((id) => id.toString()).join('\\n')}`;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAGO,MAAMA,YAAN,CAAsC;EAM3CC,WAAW,CAASC,OAAT,EAA+B;IAAA,KAAtBA,OAAsB,GAAtBA,OAAsB;IAAA,8CALnC,mCAKmC;IAAA,qDAJ5B,qGAI4B;IAAA,iDAHhC,EAGgC;IAAA,+CAFlC,aAEkC;EAAE;;EAEhC,MAANC,MAAM,CAAC,CAACC,aAAD,EAAgBC,QAAhB,CAAD,EAA8C;IACxD,MAAMC,SAAS,GAAG,MAAM,KAAKJ,OAAL,CAAaK,SAAb,CAAuBH,aAAvB,EAAsCC,QAAtC,CAAxB;;IACA,MAAMG,KAAK,GAAGC,gBAAA,CAAMC,KAAN,CACX,uBAAsBD,gBAAA,CAAME,IAAN,CAAWP,aAAX,CAA0B,SAAQK,gBAAA,CAAME,IAAN,CACvDN,QADuD,CAEvD,yCAHU,CAAd;;IAKA,OAAQ,GAAEG,KAAM,KAAIF,SAAS,CAACM,GAAV,CAAeC,EAAD,IAAQA,EAAE,CAACC,QAAH,EAAtB,EAAqCC,IAArC,CAA0C,IAA1C,CAAgD,EAApE;EACD;;AAhB0C"}
|
Binary file
|
package/package.json
CHANGED
@@ -1,12 +1,12 @@
|
|
1
1
|
{
|
2
2
|
"name": "@teambit/forking",
|
3
|
-
"version": "0.0.
|
3
|
+
"version": "0.0.145",
|
4
4
|
"homepage": "https://bit.dev/teambit/component/forking",
|
5
5
|
"main": "dist/index.js",
|
6
6
|
"componentId": {
|
7
7
|
"scope": "teambit.component",
|
8
8
|
"name": "forking",
|
9
|
-
"version": "0.0.
|
9
|
+
"version": "0.0.145"
|
10
10
|
},
|
11
11
|
"dependencies": {
|
12
12
|
"chalk": "2.4.2",
|
@@ -16,17 +16,17 @@
|
|
16
16
|
"@babel/runtime": "7.12.18",
|
17
17
|
"core-js": "^3.0.0",
|
18
18
|
"@teambit/harmony": "0.3.3",
|
19
|
-
"@teambit/cli": "0.0.
|
20
|
-
"@teambit/component": "0.0.
|
21
|
-
"@teambit/graphql": "0.0.
|
19
|
+
"@teambit/cli": "0.0.492",
|
20
|
+
"@teambit/component": "0.0.741",
|
21
|
+
"@teambit/graphql": "0.0.741",
|
22
22
|
"@teambit/bit-error": "0.0.394",
|
23
23
|
"@teambit/component-id": "0.0.402",
|
24
|
-
"@teambit/dependency-resolver": "0.0.
|
24
|
+
"@teambit/dependency-resolver": "0.0.741",
|
25
25
|
"@teambit/legacy-bit-id": "0.0.399",
|
26
|
-
"@teambit/new-component-helper": "0.0.
|
27
|
-
"@teambit/pkg": "0.0.
|
28
|
-
"@teambit/refactoring": "0.0.
|
29
|
-
"@teambit/workspace": "0.0.
|
26
|
+
"@teambit/new-component-helper": "0.0.145",
|
27
|
+
"@teambit/pkg": "0.0.741",
|
28
|
+
"@teambit/refactoring": "0.0.38",
|
29
|
+
"@teambit/workspace": "0.0.741"
|
30
30
|
},
|
31
31
|
"devDependencies": {
|
32
32
|
"@types/react": "^17.0.8",
|
@@ -38,7 +38,7 @@
|
|
38
38
|
"@types/node": "12.20.4"
|
39
39
|
},
|
40
40
|
"peerDependencies": {
|
41
|
-
"@teambit/legacy": "1.0.
|
41
|
+
"@teambit/legacy": "1.0.272",
|
42
42
|
"react-dom": "^16.8.0 || ^17.0.0",
|
43
43
|
"react": "^16.8.0 || ^17.0.0"
|
44
44
|
},
|
@@ -66,7 +66,7 @@
|
|
66
66
|
"react": "-"
|
67
67
|
},
|
68
68
|
"peerDependencies": {
|
69
|
-
"@teambit/legacy": "1.0.
|
69
|
+
"@teambit/legacy": "1.0.272",
|
70
70
|
"react-dom": "^16.8.0 || ^17.0.0",
|
71
71
|
"react": "^16.8.0 || ^17.0.0"
|
72
72
|
}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
export const compositions = [require('/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.component_forking@0.0.
|
2
|
-
export const overview = [require('/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.component_forking@0.0.
|
1
|
+
export const compositions = [require('/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.component_forking@0.0.145/dist/forking.composition.js')]
|
2
|
+
export const overview = [require('/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.component_forking@0.0.145/dist/forking.docs.mdx')]
|
Binary file
|