@teambit/importer 1.0.470 → 1.0.472

Sign up to get free protection for your applications and to get access to all the features.
@@ -25,13 +25,6 @@ function _componentId() {
25
25
  };
26
26
  return data;
27
27
  }
28
- function _loaderMessages() {
29
- const data = require("@teambit/legacy/dist/cli/loader/loader-messages");
30
- _loaderMessages = function () {
31
- return data;
32
- };
33
- return data;
34
- }
35
28
  function _legacy() {
36
29
  const data = require("@teambit/legacy.utils");
37
30
  _legacy = function () {
@@ -106,6 +99,7 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
106
99
  function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
107
100
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
108
101
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
102
+ const BEFORE_IMPORT_ACTION = 'importing components';
109
103
  class ImportComponents {
110
104
  constructor(workspace, graph, componentWriter, envs, logger, lister, options) {
111
105
  this.workspace = workspace;
@@ -126,20 +120,20 @@ class ImportComponents {
126
120
  }
127
121
  async importComponents() {
128
122
  let result;
129
- this.logger.setStatusLine(_loaderMessages().BEFORE_IMPORT_ACTION);
123
+ this.logger.setStatusLine(BEFORE_IMPORT_ACTION);
130
124
  const startTime = process.hrtime();
131
125
  if (this.options.lanes && !this.options.ids.length) {
132
126
  result = await this.importObjectsOnLane();
133
- this.logger.consoleSuccess(_loaderMessages().BEFORE_IMPORT_ACTION, startTime);
127
+ this.logger.consoleSuccess(BEFORE_IMPORT_ACTION, startTime);
134
128
  return result;
135
129
  }
136
130
  if (this.options.ids.length) {
137
131
  result = await this.importSpecificComponents();
138
- this.logger.consoleSuccess(_loaderMessages().BEFORE_IMPORT_ACTION, startTime);
132
+ this.logger.consoleSuccess(BEFORE_IMPORT_ACTION, startTime);
139
133
  return result;
140
134
  }
141
135
  result = await this.importAccordingToBitMap();
142
- this.logger.consoleSuccess(_loaderMessages().BEFORE_IMPORT_ACTION, startTime);
136
+ this.logger.consoleSuccess(BEFORE_IMPORT_ACTION, startTime);
143
137
  return result;
144
138
  }
145
139
  async importObjectsOnLane() {
@@ -384,7 +378,7 @@ if you just want to get a quick look into this snap, create a new workspace and
384
378
  bitIds.push(id);
385
379
  }
386
380
  }));
387
- this.logger.setStatusLine(_loaderMessages().BEFORE_IMPORT_ACTION); // it stops the previous loader of BEFORE_REMOTE_LIST
381
+ this.logger.setStatusLine(BEFORE_IMPORT_ACTION); // it stops the previous loader of BEFORE_REMOTE_LIST
388
382
 
389
383
  return bitIds;
390
384
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_bitError","data","require","_pMapSeries","_interopRequireDefault","_componentId","_loaderMessages","_legacy","_checkout","_merging","_componentsPendingMerge","_scopeComponentsImporter","_versionDependencies","_componentVersion","_lodash","_dependentsGetter","_lister","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ImportComponents","constructor","workspace","graph","componentWriter","envs","logger","lister","options","consumer","scope","remoteLane","lanes","importComponents","result","setStatusLine","BEFORE_IMPORT_ACTION","startTime","process","hrtime","ids","length","importObjectsOnLane","consoleSuccess","importSpecificComponents","importAccordingToBitMap","objectsOnly","Error","lane","bitIds","getBitIds","debug","id","toString","beforeImportVersions","_getCurrentVersions","versionDependenciesArr","_importComponentsObjects","mergeAndSaveLaneObject","returnCompleteResults","writtenComponents","componentWriterResults","importDetails","_getImportDetails","missingIds","keys","importedComps","map","c","component","toStringWithoutVersion","forEach","compIdStr","found","includes","push","importedIds","v","flat","importedDeps","allDependenciesIds","installationError","compilationError","workspaceConfigUpdateResult","join","_throwForPotentialIssues","components","multipleVersionDependenciesToConsumer","objects","_fetchDivergeData","_throwForDivergedHistory","throwForComponentsFromAnotherLane","filteredComponents","_filterComponentsByFilters","_writeToFileSystem","_saveLaneDataIfNeeded","mergeLaneResults","sources","mergeLane","mergedLane","isRemoteLaneEqualsToMergedLane","isEqual","saveLane","saveLaneHistory","laneHistoryMsg","filterEnvs","filteredP","currentEnv","calculateEnvIdFromExtensions","extensions","currentEnvWithoutVersion","split","undefined","filtered","compact","Promise","all","modelComponent","getModelComponent","setDivergeData","divergeData","merge","divergedComponents","filter","getDivergeData","isDiverged","snapsLocal","snapsOnSourceOnly","snapsRemote","snapsOnTargetOnly","ComponentsPendingMerge","currentLaneId","getCurrentLaneId","currentRemoteLane","toLaneId","currentLane","getCurrentLaneObject","idsFromAnotherLane","bitId","isOnCurrentLane","isPartOfLaneHistoryOrMain","isIdOnMain","isPartOfMainHistory","BitError","fromOriginalScope","ignoreMissingHead","scopeComponentsImporter","ScopeComponentsImporter","getInstance","importWithoutDeps","toVersionLatest","cache","includeVersionHistory","fetchHeadIfLocalIsBehind","allHistory","collectParents","includeUnexported","isLaneFromRemote","reason","results","importManyFromOriginalScopes","importMany","preferDependencyGraph","fetchDeps","reFetchUnBuiltVersion","throwForSeederNotFound","getBitIdsForLanes","remoteLaneIds","toComponentIds","ComponentIdList","bitMapIds","bitMap","getAllBitIds","bitMapIdsToImport","hasScope","has","idsWithWildcard","hasWildcard","idsWithoutWildcard","idsWithoutWildcardPreferFromLane","idStr","getIdFromStr","fromLane","searchWithoutVersion","hasVersion","pMapSeries","existingOnLanes","filterIdsFromPoolIdsByPattern","idsFromRemote","getRemoteCompIdsByWildcards","includeDeprecated","startsWith","resolveComponentIdFromPackageName","ComponentID","fromString","getBitIdsForNonLanes","err","NoIdMatchWildcard","consoleWarning","message","shouldImportDependents","importDependents","dependentsVia","dependentsAll","shouldImportDependencies","importDependenciesDirectly","importHeadDependenciesDirectly","dependenciesIds","getFlattenedDepsUnique","dependentsGetter","DependentsGetter","dependents","getDependents","uniqFromArray","remoteComps","scopeImporter","getManyRemoteComponents","versions","getVersions","getFlattened","flattenedDependencies","flattenedDeps","flattened","uniqWithoutVersions","removeMultipleVersionsKeepLatest","latest","grouped","toGroupByIdWithoutVersion","latestVersions","key","getLatestVersionNumber","changeVersion","LATEST_VERSION","override","componentsIdsToImport","getIdsToImportFromBitmap","emptyResult","_throwForModifiedOrNewComponents","flagUsed","allIds","getAllBitIdsFromAllLanes","fromArray","versionsP","getModelComponentIfExist","listVersions","fromPairs","currentVersions","detailsP","afterImportVersions","versionDifference","difference","getStatus","filesStatus","mergeStatus","deprecated","Boolean","isDeprecated","version","removed","isRemoved","latestVersion","getHeadRegardlessOfLaneAsTagOrHash","status","missingDeps","getMissingDependencies","_throwForDifferentComponentWithSameName","trackOnly","componentsStatuses","getManyComponentsStatuses","modifiedComponents","modified","newlyCreated","existingId","getParsedIdIfExist","_getMergeStatus","componentStatus","getComponentStatusById","mergeResults","componentModel","existingBitMapBitId","getComponentId","ignoreVersion","fsComponent","loadComponent","currentlyUsedVersion","baseComponent","loadVersion","otherComponent","threeWayMerge","otherLabel","currentComponent","currentLabel","_updateComponentFilesPerMergeStrategy","componentMergeStatus","files","hasConflicts","mergeStrategy","MergeOptions","ours","file","pathNormalizeToLinux","relative","FileStatus","unchanged","updateComponentId","hasChanged","theirs","updated","modifiedFiles","applyModifiedVersion","updateAllComponentsAccordingToMergeStrategy","componentsStatusP","componentsStatus","componentWithConflict","find","getMergeStrategyInteractive","componentsToWrite","unchangedFiles","_shouldSaveLaneData","isOnLane","idsFromRemoteLanes","comp","existOnRemoteLane","saveInLane","setOnLanesOnly","ref","getRef","addComponent","head","manyComponentsWriterOpts","writeToPath","writeConfig","skipDependencyInstallation","installNpmPackages","skipWriteConfigFiles","writeConfigFiles","verbose","throwForExistingDir","skipWritingToFs","shouldUpdateWorkspaceConfig","reasonForBitmapChange","writeMany","exports"],"sources":["import-components.ts"],"sourcesContent":["import { BitError } from '@teambit/bit-error';\nimport { LaneId } from '@teambit/lane-id';\nimport pMapSeries from 'p-map-series';\nimport { ComponentID, ComponentIdList } from '@teambit/component-id';\nimport { Consumer } from '@teambit/legacy/dist/consumer';\nimport { BEFORE_IMPORT_ACTION } from '@teambit/legacy/dist/cli/loader/loader-messages';\nimport { Scope } from '@teambit/legacy/dist/scope';\nimport { Lane, ModelComponent, Version } from '@teambit/legacy/dist/scope/models';\nimport { getLatestVersionNumber, pathNormalizeToLinux, hasWildcard } from '@teambit/legacy.utils';\nimport Component from '@teambit/legacy/dist/consumer/component';\nimport { applyModifiedVersion } from '@teambit/checkout';\nimport {\n FileStatus,\n getMergeStrategyInteractive,\n MergeOptions,\n threeWayMerge,\n MergeStrategy,\n MergeResultsThreeWay,\n FilesStatus,\n} from '@teambit/merging';\nimport ComponentsPendingMerge from '@teambit/legacy/dist/consumer/exceptions/components-pending-merge';\nimport ScopeComponentsImporter from '@teambit/legacy/dist/scope/component-ops/scope-components-importer';\nimport VersionDependencies, {\n multipleVersionDependenciesToConsumer,\n} from '@teambit/legacy/dist/scope/version-dependencies';\nimport { GraphMain } from '@teambit/graph';\nimport { Workspace } from '@teambit/workspace';\nimport { ComponentWriterMain, ComponentWriterResults, ManyComponentsWriterParams } from '@teambit/component-writer';\nimport { LATEST_VERSION } from '@teambit/component-version';\nimport { EnvsMain } from '@teambit/envs';\nimport { compact, difference, fromPairs } from 'lodash';\nimport { WorkspaceConfigUpdateResult } from '@teambit/config-merger';\nimport { Logger } from '@teambit/logger';\nimport { DependentsGetter } from './dependents-getter';\nimport { ListerMain, NoIdMatchWildcard } from '@teambit/lister';\n\nexport type ImportOptions = {\n ids: string[]; // array might be empty\n verbose?: boolean;\n merge?: boolean;\n mergeStrategy?: MergeStrategy;\n filterEnvs?: string[];\n writeToPath?: string;\n writeConfig?: boolean;\n override?: boolean;\n installNpmPackages: boolean; // default: true\n writeConfigFiles: boolean; // default: true\n objectsOnly?: boolean;\n importDependenciesDirectly?: boolean; // default: false, normally it imports them as packages, not as imported\n importHeadDependenciesDirectly?: boolean; // default: false, similar to importDependenciesDirectly, but it checks out to their head\n importDependents?: boolean;\n dependentsVia?: string;\n dependentsAll?: boolean;\n silent?: boolean; // don't show prompt for --dependents flag\n fromOriginalScope?: boolean; // default: false, otherwise, it fetches flattened dependencies from their dependents\n saveInLane?: boolean; // save the imported component on the current lane (won't be available on main)\n lanes?: {\n laneId: LaneId;\n remoteLane?: Lane; // it can be an empty array when a lane is a local lane and doesn't exist on the remote\n };\n allHistory?: boolean;\n fetchDeps?: boolean; // by default, if a component was tagged with > 0.0.900, it has the flattened-deps-graph in the object\n trackOnly?: boolean;\n includeDeprecated?: boolean;\n isLaneFromRemote?: boolean; // whether the `lanes.lane` object is coming directly from the remote.\n};\ntype ComponentMergeStatus = {\n component: Component;\n mergeResults: MergeResultsThreeWay | null | undefined;\n};\ntype ImportedVersions = { [id: string]: string[] };\nexport type ImportStatus = 'added' | 'updated' | 'up to date';\nexport type ImportDetails = {\n id: string;\n versions: string[];\n latestVersion: string | null;\n status: ImportStatus;\n filesStatus: FilesStatus | null | undefined;\n missingDeps: ComponentID[];\n deprecated: boolean;\n removed?: boolean;\n};\nexport type ImportResult = {\n importedIds: ComponentID[];\n importedDeps: ComponentID[];\n writtenComponents?: Component[];\n importDetails: ImportDetails[];\n cancellationMessage?: string;\n installationError?: Error;\n compilationError?: Error;\n workspaceConfigUpdateResult?: WorkspaceConfigUpdateResult;\n missingIds?: string[]; // in case the import is configured to not throw when missing\n lane?: Lane;\n};\n\nexport default class ImportComponents {\n consumer: Consumer;\n scope: Scope;\n mergeStatus: { [id: string]: FilesStatus };\n private remoteLane: Lane | undefined;\n private divergeData: Array<ModelComponent> = [];\n constructor(\n private workspace: Workspace,\n private graph: GraphMain,\n private componentWriter: ComponentWriterMain,\n private envs: EnvsMain,\n private logger: Logger,\n private lister: ListerMain,\n public options: ImportOptions\n ) {\n this.consumer = this.workspace.consumer;\n this.scope = this.consumer.scope;\n this.remoteLane = this.options.lanes?.remoteLane;\n }\n\n async importComponents(): Promise<ImportResult> {\n let result;\n this.logger.setStatusLine(BEFORE_IMPORT_ACTION);\n const startTime = process.hrtime();\n if (this.options.lanes && !this.options.ids.length) {\n result = await this.importObjectsOnLane();\n this.logger.consoleSuccess(BEFORE_IMPORT_ACTION, startTime);\n return result;\n }\n if (this.options.ids.length) {\n result = await this.importSpecificComponents();\n this.logger.consoleSuccess(BEFORE_IMPORT_ACTION, startTime);\n return result;\n }\n result = await this.importAccordingToBitMap();\n this.logger.consoleSuccess(BEFORE_IMPORT_ACTION, startTime);\n return result;\n }\n\n async importObjectsOnLane(): Promise<ImportResult> {\n if (!this.options.objectsOnly) {\n throw new Error(`importObjectsOnLane should have objectsOnly=true`);\n }\n const lane = this.remoteLane;\n const bitIds: ComponentIdList = await this.getBitIds();\n lane\n ? this.logger.debug(`importObjectsOnLane, Lane: ${lane.id()}, Ids: ${bitIds.toString()}`)\n : this.logger.debug(\n `importObjectsOnLane, the lane does not exist on the remote. importing only the main components`\n );\n const beforeImportVersions = await this._getCurrentVersions(bitIds);\n const versionDependenciesArr = await this._importComponentsObjects(bitIds, {\n lane,\n });\n\n if (lane) {\n await this.mergeAndSaveLaneObject(lane);\n }\n\n return this.returnCompleteResults(beforeImportVersions, versionDependenciesArr);\n }\n\n private async returnCompleteResults(\n beforeImportVersions: ImportedVersions,\n versionDependenciesArr: VersionDependencies[],\n writtenComponents?: Component[],\n componentWriterResults?: ComponentWriterResults\n ): Promise<ImportResult> {\n const importDetails = await this._getImportDetails(beforeImportVersions, versionDependenciesArr);\n const missingIds: string[] = [];\n if (Object.keys(beforeImportVersions).length > versionDependenciesArr.length) {\n const importedComps = versionDependenciesArr.map((c) => c.component.id.toStringWithoutVersion());\n Object.keys(beforeImportVersions).forEach((compIdStr) => {\n const found = importedComps.includes(compIdStr);\n if (!found) missingIds.push(compIdStr);\n });\n }\n\n return {\n importedIds: versionDependenciesArr.map((v) => v.component.id).flat(),\n importedDeps: versionDependenciesArr.map((v) => v.allDependenciesIds).flat(),\n writtenComponents,\n importDetails,\n installationError: componentWriterResults?.installationError,\n compilationError: componentWriterResults?.compilationError,\n workspaceConfigUpdateResult: componentWriterResults?.workspaceConfigUpdateResult,\n missingIds,\n lane: this.remoteLane,\n };\n }\n\n async importSpecificComponents(): Promise<ImportResult> {\n this.logger.debug(`importSpecificComponents, Ids: ${this.options.ids.join(', ')}`);\n const bitIds: ComponentIdList = await this.getBitIds();\n const beforeImportVersions = await this._getCurrentVersions(bitIds);\n await this._throwForPotentialIssues(bitIds);\n const versionDependenciesArr = await this._importComponentsObjects(bitIds, {\n lane: this.remoteLane,\n });\n if (this.remoteLane && this.options.objectsOnly) {\n await this.mergeAndSaveLaneObject(this.remoteLane);\n }\n let writtenComponents: Component[] = [];\n let componentWriterResults: ComponentWriterResults | undefined;\n if (!this.options.objectsOnly) {\n const components = await multipleVersionDependenciesToConsumer(versionDependenciesArr, this.scope.objects);\n await this._fetchDivergeData(components);\n this._throwForDivergedHistory();\n await this.throwForComponentsFromAnotherLane(components.map((c) => c.id));\n const filteredComponents = await this._filterComponentsByFilters(components);\n componentWriterResults = await this._writeToFileSystem(filteredComponents);\n await this._saveLaneDataIfNeeded(filteredComponents);\n writtenComponents = filteredComponents;\n }\n\n return this.returnCompleteResults(\n beforeImportVersions,\n versionDependenciesArr,\n writtenComponents,\n componentWriterResults\n );\n }\n\n private async mergeAndSaveLaneObject(lane: Lane) {\n const mergeLaneResults = await this.scope.sources.mergeLane(lane, true);\n const mergedLane = mergeLaneResults.mergeLane;\n const isRemoteLaneEqualsToMergedLane = lane.isEqual(mergedLane);\n await this.scope.lanes.saveLane(mergedLane, {\n saveLaneHistory: !isRemoteLaneEqualsToMergedLane,\n laneHistoryMsg: 'import (merge from remote)',\n });\n }\n\n private async _filterComponentsByFilters(components: Component[]): Promise<Component[]> {\n if (!this.options.filterEnvs) return components;\n const filteredP = components.map(async (component) => {\n // If the id was requested explicitly, we don't want to filter it out\n if (this.options.ids) {\n if (\n this.options.ids.includes(component.id.toStringWithoutVersion()) ||\n this.options.ids.includes(component.id.toString())\n ) {\n return component;\n }\n }\n const currentEnv = await this.envs.calculateEnvIdFromExtensions(component.extensions);\n const currentEnvWithoutVersion = currentEnv.split('@')[0];\n if (\n this.options.filterEnvs?.includes(currentEnv) ||\n this.options.filterEnvs?.includes(currentEnvWithoutVersion)\n ) {\n return component;\n }\n return undefined;\n });\n const filtered = compact(await Promise.all(filteredP));\n return filtered;\n }\n\n async _fetchDivergeData(components: Component[]) {\n if (this.options.objectsOnly) {\n // no need for it when importing objects only. if it's enabled, in case when on a lane and a non-lane\n // component is in bitmap using an older version, it throws \"getDivergeData: unable to find Version X of Y\"\n return;\n }\n await Promise.all(\n components.map(async (component) => {\n const modelComponent = await this.scope.getModelComponent(component.id);\n await modelComponent.setDivergeData(this.scope.objects, undefined, false);\n this.divergeData.push(modelComponent);\n })\n );\n }\n\n _throwForDivergedHistory() {\n if (this.options.merge || this.options.objectsOnly) return;\n const divergedComponents = this.divergeData.filter((modelComponent) =>\n modelComponent.getDivergeData().isDiverged()\n );\n if (divergedComponents.length) {\n const divergeData = divergedComponents.map((modelComponent) => ({\n id: modelComponent.id(),\n snapsLocal: modelComponent.getDivergeData().snapsOnSourceOnly.length,\n snapsRemote: modelComponent.getDivergeData().snapsOnTargetOnly.length,\n }));\n throw new ComponentsPendingMerge(divergeData);\n }\n }\n\n private async throwForComponentsFromAnotherLane(bitIds: ComponentID[]) {\n if (this.options.objectsOnly) return;\n const currentLaneId = this.workspace.getCurrentLaneId();\n const currentRemoteLane = this.remoteLane?.toLaneId().isEqual(currentLaneId) ? this.remoteLane : undefined;\n const currentLane = await this.workspace.getCurrentLaneObject();\n const idsFromAnotherLane: ComponentID[] = [];\n if (currentRemoteLane) {\n await Promise.all(\n bitIds.map(async (bitId) => {\n const isOnCurrentLane =\n (await this.scope.isPartOfLaneHistoryOrMain(bitId, currentRemoteLane)) ||\n (currentLane && (await this.scope.isPartOfLaneHistoryOrMain(bitId, currentLane)));\n if (!isOnCurrentLane) idsFromAnotherLane.push(bitId);\n })\n );\n } else {\n await Promise.all(\n bitIds.map(async (bitId) => {\n const isIdOnMain = await this.scope.isPartOfMainHistory(bitId);\n if (!isIdOnMain) idsFromAnotherLane.push(bitId);\n })\n );\n }\n if (idsFromAnotherLane.length) {\n throw new BitError(`unable to import the following component(s) as they belong to other lane(s):\n${idsFromAnotherLane.map((id) => id.toString()).join(', ')}\nif you need this specific snap, find the lane this snap is belong to, then run \"bit lane merge <lane-id> [component-id]\" to merge this component from the lane.\nif you just want to get a quick look into this snap, create a new workspace and import it by running \"bit lane import <lane-id> --pattern <component-id>\"`);\n }\n }\n\n private async _importComponentsObjects(\n ids: ComponentIdList,\n {\n fromOriginalScope = false,\n lane,\n ignoreMissingHead = false,\n }: {\n fromOriginalScope?: boolean;\n lane?: Lane;\n ignoreMissingHead?: boolean;\n }\n ): Promise<VersionDependencies[]> {\n const scopeComponentsImporter = ScopeComponentsImporter.getInstance(this.scope);\n await scopeComponentsImporter.importWithoutDeps(ids.toVersionLatest(), {\n cache: false,\n lane,\n includeVersionHistory: true,\n fetchHeadIfLocalIsBehind: !this.options.allHistory,\n collectParents: this.options.allHistory,\n // in case a user is merging a lane into a new workspace, then, locally main has head, but remotely the head is\n // empty, until it's exported. going to the remote and asking this component will throw an error if ignoreMissingHead is false\n ignoreMissingHead: true,\n includeUnexported: this.options.isLaneFromRemote,\n reason: `of their latest on ${lane ? `lane ${lane.id()}` : 'main'}`,\n });\n\n this.logger.setStatusLine(`import ${ids.length} components with their dependencies (if missing)`);\n const results = fromOriginalScope\n ? await scopeComponentsImporter.importManyFromOriginalScopes(ids)\n : await scopeComponentsImporter.importMany({\n ids,\n ignoreMissingHead,\n lane,\n preferDependencyGraph: !this.options.fetchDeps,\n // when user is running \"bit import\", we want to re-fetch if it wasn't built. todo: check if this can be disabled when not needed\n reFetchUnBuiltVersion: true,\n // it's possible that .bitmap is not in sync and has local tags that don't exist on the remote. later, we\n // add them to \"missingIds\" of \"importResult\" and show them to the user\n throwForSeederNotFound: false,\n reason: this.options.fetchDeps\n ? 'for getting all dependencies'\n : `for getting dependencies of components that don't have dependency-graph`,\n });\n\n return results;\n }\n\n /**\n * consider the following use cases:\n * 1) no ids were provided. it should import all the lanes components objects AND main components objects\n * (otherwise, if main components are not imported and are missing, then bit-status complains about it)\n * 2) ids are provided with wildcards. we assume the user wants only the ids that are available on the lane.\n * because a user may entered \"bit import scope/*\" and this scope has many component on the lane and many not on the lane.\n * we want to bring only the components on the lane.\n * 3) ids are provided without wildcards. here, the user knows exactly what's needed and it's ok to get the ids from\n * main if not found on the lane.\n */\n private async getBitIdsForLanes(): Promise<ComponentID[]> {\n if (!this.options.lanes) {\n throw new Error(`getBitIdsForLanes: this.options.lanes must be set`);\n }\n const remoteLaneIds = this.remoteLane?.toComponentIds() || new ComponentIdList();\n\n if (!this.options.ids.length) {\n const bitMapIds = this.consumer.bitMap.getAllBitIds();\n const bitMapIdsToImport = bitMapIds.filter((id) => id.hasScope() && !remoteLaneIds.has(id));\n remoteLaneIds.push(...bitMapIdsToImport);\n\n return remoteLaneIds;\n }\n\n const idsWithWildcard = this.options.ids.filter((id) => hasWildcard(id));\n const idsWithoutWildcard = this.options.ids.filter((id) => !hasWildcard(id));\n const idsWithoutWildcardPreferFromLane = await Promise.all(\n idsWithoutWildcard.map(async (idStr) => {\n const id = await this.getIdFromStr(idStr);\n const fromLane = remoteLaneIds.searchWithoutVersion(id);\n return fromLane && !id.hasVersion() ? fromLane : id;\n })\n );\n\n const bitIds: ComponentID[] = [...idsWithoutWildcardPreferFromLane];\n\n if (!idsWithWildcard) {\n return bitIds;\n }\n\n await pMapSeries(idsWithWildcard, async (idStr: string) => {\n const existingOnLanes = await this.workspace.filterIdsFromPoolIdsByPattern(idStr, remoteLaneIds, false);\n // in case the wildcard contains components from the lane, the user wants to import only them. not from main.\n // otherwise, if the wildcard translates to main components only, it's ok to import from main.\n if (existingOnLanes.length) {\n bitIds.push(...existingOnLanes);\n } else {\n const idsFromRemote = await this.lister.getRemoteCompIdsByWildcards(idStr, this.options.includeDeprecated);\n bitIds.push(...idsFromRemote);\n }\n });\n\n return bitIds;\n }\n\n private async getIdFromStr(id: string): Promise<ComponentID> {\n if (id.startsWith('@')) return this.workspace.resolveComponentIdFromPackageName(id);\n return ComponentID.fromString(id); // we don't support importing without a scope name\n }\n\n private async getBitIdsForNonLanes() {\n const bitIds: ComponentID[] = [];\n await Promise.all(\n this.options.ids.map(async (idStr: string) => {\n if (hasWildcard(idStr)) {\n let ids: ComponentID[] = [];\n try {\n ids = await this.lister.getRemoteCompIdsByWildcards(idStr, this.options.includeDeprecated);\n } catch (err: any) {\n if (err instanceof NoIdMatchWildcard) {\n this.logger.consoleWarning(err.message);\n } else {\n throw err;\n }\n }\n bitIds.push(...ids);\n } else {\n const id = await this.getIdFromStr(idStr);\n bitIds.push(id);\n }\n })\n );\n\n this.logger.setStatusLine(BEFORE_IMPORT_ACTION); // it stops the previous loader of BEFORE_REMOTE_LIST\n\n return bitIds;\n }\n\n private async getBitIds(): Promise<ComponentIdList> {\n const bitIds: ComponentID[] = this.options.lanes\n ? await this.getBitIdsForLanes()\n : await this.getBitIdsForNonLanes();\n const shouldImportDependents =\n this.options.importDependents || this.options.dependentsVia || this.options.dependentsAll;\n const shouldImportDependencies =\n this.options.importDependenciesDirectly || this.options.importHeadDependenciesDirectly;\n if (shouldImportDependencies || shouldImportDependents) {\n if (shouldImportDependencies) {\n const dependenciesIds = await this.getFlattenedDepsUnique(bitIds);\n bitIds.push(...dependenciesIds);\n }\n if (shouldImportDependents) {\n const dependentsGetter = new DependentsGetter(this.logger, this.workspace, this.graph, this.options);\n const dependents = await dependentsGetter.getDependents(bitIds);\n bitIds.push(...dependents);\n }\n }\n return ComponentIdList.uniqFromArray(bitIds);\n }\n\n private async getFlattenedDepsUnique(bitIds: ComponentID[]): Promise<ComponentID[]> {\n const remoteComps = await this.scope.scopeImporter.getManyRemoteComponents(bitIds);\n const versions = remoteComps.getVersions();\n const getFlattened = (): ComponentIdList => {\n if (versions.length === 1) return versions[0].flattenedDependencies;\n const flattenedDeps = versions.map((v) => v.flattenedDependencies).flat();\n return ComponentIdList.uniqFromArray(flattenedDeps);\n };\n const flattened = getFlattened();\n return this.options.importHeadDependenciesDirectly\n ? this.uniqWithoutVersions(flattened)\n : this.removeMultipleVersionsKeepLatest(flattened);\n }\n\n private uniqWithoutVersions(flattened: ComponentIdList) {\n const latest = flattened.toVersionLatest();\n return ComponentIdList.uniqFromArray(latest);\n }\n\n private removeMultipleVersionsKeepLatest(flattened: ComponentIdList): ComponentID[] {\n const grouped = flattened.toGroupByIdWithoutVersion();\n const latestVersions = Object.keys(grouped).map((key) => {\n const ids = grouped[key];\n if (ids.length === 1) return ids[0];\n try {\n const latest = getLatestVersionNumber(ids, ids[0].changeVersion(LATEST_VERSION));\n return latest;\n } catch (err: any) {\n throw new Error(`a dependency \"${key}\" was found with multiple versions, unable to find which one of them is newer.\nerror: ${err.message}\nconsider running with \"--dependencies-head\" flag instead, which checks out to the head of the dependencies`);\n }\n });\n\n return latestVersions;\n }\n\n async importAccordingToBitMap(): Promise<ImportResult> {\n this.options.objectsOnly = !this.options.merge && !this.options.override;\n const componentsIdsToImport = this.getIdsToImportFromBitmap();\n const emptyResult = {\n importedIds: [],\n importedDeps: [],\n importDetails: [],\n };\n if (!componentsIdsToImport.length) {\n return emptyResult;\n }\n await this._throwForModifiedOrNewComponents(componentsIdsToImport);\n const beforeImportVersions = await this._getCurrentVersions(componentsIdsToImport);\n if (!componentsIdsToImport.length) {\n return emptyResult;\n }\n if (!this.options.objectsOnly) {\n const flagUsed = this.options.merge ? '--merge' : '--override';\n throw new Error(`bit import with no ids and ${flagUsed} flag is not supported.\nto write the components from .bitmap file according to the their remote, please use \"bit checkout reset --all\"`);\n }\n const versionDependenciesArr = await this._importComponentsObjects(componentsIdsToImport, {\n fromOriginalScope: this.options.fromOriginalScope,\n });\n let writtenComponents: Component[] = [];\n let componentWriterResults: ComponentWriterResults | undefined;\n if (!this.options.objectsOnly) {\n const components = await multipleVersionDependenciesToConsumer(versionDependenciesArr, this.scope.objects);\n componentWriterResults = await this._writeToFileSystem(components);\n writtenComponents = components;\n }\n\n return this.returnCompleteResults(\n beforeImportVersions,\n versionDependenciesArr,\n writtenComponents,\n componentWriterResults\n );\n }\n\n private getIdsToImportFromBitmap() {\n const allIds = this.consumer.bitMap.getAllBitIdsFromAllLanes();\n return ComponentIdList.fromArray(allIds.filter((id) => id.hasScope()));\n }\n\n async _getCurrentVersions(ids: ComponentIdList): Promise<ImportedVersions> {\n const versionsP = ids.map(async (id) => {\n const modelComponent = await this.consumer.scope.getModelComponentIfExist(id.changeVersion(undefined));\n const idStr = id.toStringWithoutVersion();\n if (!modelComponent) return [idStr, []];\n return [idStr, modelComponent.listVersions()];\n });\n const versions = await Promise.all(versionsP);\n return fromPairs(versions);\n }\n\n /**\n * get import details, includes the diff between the versions array before import and after import\n */\n async _getImportDetails(\n currentVersions: ImportedVersions,\n components: VersionDependencies[]\n ): Promise<ImportDetails[]> {\n const detailsP = components.map(async (component) => {\n const id = component.component.id;\n const idStr = id.toStringWithoutVersion();\n const beforeImportVersions = currentVersions[idStr];\n if (!beforeImportVersions) {\n throw new Error(\n `_getImportDetails failed finding ${idStr} in currentVersions, which has ${Object.keys(currentVersions).join(\n ', '\n )}`\n );\n }\n const modelComponent = await this.consumer.scope.getModelComponentIfExist(id);\n if (!modelComponent) throw new BitError(`imported component ${idStr} was not found in the model`);\n const afterImportVersions = modelComponent.listVersions();\n const versionDifference: string[] = difference(afterImportVersions, beforeImportVersions);\n const getStatus = (): ImportStatus => {\n if (!versionDifference.length) return 'up to date';\n if (!beforeImportVersions.length) return 'added';\n return 'updated';\n };\n const filesStatus = this.mergeStatus && this.mergeStatus[idStr] ? this.mergeStatus[idStr] : null;\n const deprecated = Boolean(await modelComponent.isDeprecated(this.scope.objects, id.version));\n const removed = Boolean(await component.component.component.isRemoved(this.scope.objects, id.version));\n const latestVersion = modelComponent.getHeadRegardlessOfLaneAsTagOrHash(true);\n return {\n id: idStr,\n versions: versionDifference,\n latestVersion: versionDifference.includes(latestVersion) ? latestVersion : null,\n status: getStatus(),\n filesStatus,\n missingDeps: this.options.fetchDeps ? component.getMissingDependencies() : [],\n deprecated,\n removed,\n };\n });\n const importDetails: ImportDetails[] = await Promise.all(detailsP);\n\n return importDetails;\n }\n\n async _throwForPotentialIssues(ids: ComponentIdList): Promise<void> {\n await this._throwForModifiedOrNewComponents(ids);\n this._throwForDifferentComponentWithSameName(ids);\n }\n\n async _throwForModifiedOrNewComponents(ids: ComponentIdList): Promise<void> {\n // the typical objectsOnly option is when a user cloned a project with components tagged to the source code, but\n // doesn't have the model objects. in that case, calling getComponentStatusById() may return an error as it relies\n // on the model objects when there are dependencies\n if (this.options.override || this.options.objectsOnly || this.options.merge || this.options.trackOnly) return;\n const componentsStatuses = await this.workspace.getManyComponentsStatuses(ids);\n const modifiedComponents = componentsStatuses\n .filter(({ status }) => status.modified || status.newlyCreated)\n .map((c) => c.id);\n if (modifiedComponents.length) {\n throw new BitError(\n `unable to import the following components due to local changes, use --merge flag to merge your local changes or --override to override them\\n${modifiedComponents.join(\n '\\n'\n )} `\n );\n }\n }\n\n /**\n * Model Component id() calculation uses id.toString() for the hash.\n * If an imported component has scopereadonly name equals to a local name, both will have the exact same\n * hash and they'll override each other.\n */\n _throwForDifferentComponentWithSameName(ids: ComponentIdList): void {\n ids.forEach((id: ComponentID) => {\n const existingId = this.consumer.getParsedIdIfExist(id.toStringWithoutVersion());\n if (existingId && !existingId.hasScope()) {\n throw new BitError(`unable to import ${id.toString()}. the component name conflicted with your local (new/staged) component with the same name.\nit's fine to have components with the same name as long as their scope names are different.\nif the component was created by mistake, remove it and import the remote one.\notherwise, if tagged/snapped, \"bit reset\" it, then bit rename it.`);\n }\n });\n }\n\n async _getMergeStatus(component: Component): Promise<ComponentMergeStatus> {\n const componentStatus = await this.workspace.getComponentStatusById(component.id);\n const mergeStatus: ComponentMergeStatus = { component, mergeResults: null };\n if (!componentStatus.modified) return mergeStatus;\n const componentModel = await this.consumer.scope.getModelComponent(component.id);\n const existingBitMapBitId = this.consumer.bitMap.getComponentId(component.id, { ignoreVersion: true });\n const fsComponent = await this.consumer.loadComponent(existingBitMapBitId);\n const currentlyUsedVersion = existingBitMapBitId.version;\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n const baseComponent: Version = await componentModel.loadVersion(currentlyUsedVersion, this.consumer.scope.objects);\n const otherComponent: Version = await componentModel.loadVersion(\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n component.id.version,\n this.consumer.scope.objects\n );\n const mergeResults = await threeWayMerge({\n scope: this.consumer.scope,\n otherComponent,\n otherLabel: component.id.version as string,\n currentComponent: fsComponent,\n currentLabel: `${currentlyUsedVersion} modified`,\n baseComponent,\n });\n mergeStatus.mergeResults = mergeResults;\n return mergeStatus;\n }\n\n /**\n * 1) when there are conflicts and the strategy is \"ours\", don't write the imported component to\n * the filesystem, only update bitmap.\n *\n * 2) when there are conflicts and the strategy is \"theirs\", override the local changes by the\n * imported component. (similar to --override)\n *\n * 3) when there is no conflict or there are conflicts and the strategy is manual, write the files\n * according to the merge result. (done by applyModifiedVersion())\n */\n _updateComponentFilesPerMergeStrategy(componentMergeStatus: ComponentMergeStatus): FilesStatus | null | undefined {\n const mergeResults = componentMergeStatus.mergeResults;\n if (!mergeResults) return null;\n const component = componentMergeStatus.component;\n const files = component.files;\n\n if (mergeResults.hasConflicts && this.options.mergeStrategy === MergeOptions.ours) {\n const filesStatus = {};\n // don't write the files to the filesystem, only bump the bitmap version.\n files.forEach((file) => {\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n filesStatus[pathNormalizeToLinux(file.relative)] = FileStatus.unchanged;\n });\n this.consumer.bitMap.updateComponentId(component.id);\n this.consumer.bitMap.hasChanged = true;\n return filesStatus;\n }\n if (mergeResults.hasConflicts && this.options.mergeStrategy === MergeOptions.theirs) {\n const filesStatus = {};\n // the local changes will be overridden (as if the user entered --override flag for this component)\n files.forEach((file) => {\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n filesStatus[pathNormalizeToLinux(file.relative)] = FileStatus.updated;\n });\n return filesStatus;\n }\n const { filesStatus, modifiedFiles } = applyModifiedVersion(\n component.files,\n mergeResults,\n this.options.mergeStrategy\n );\n component.files = modifiedFiles;\n\n return filesStatus;\n }\n\n /**\n * update the component files if they are modified and there is a merge strategy.\n * returns only the components that need to be written to the filesystem\n */\n async updateAllComponentsAccordingToMergeStrategy(components: Component[]): Promise<Component[]> {\n if (!this.options.merge) return components;\n const componentsStatusP = components.map((component: Component) => {\n return this._getMergeStatus(component);\n });\n const componentsStatus = await Promise.all(componentsStatusP);\n const componentWithConflict = componentsStatus.find(\n (component) => component.mergeResults && component.mergeResults.hasConflicts\n );\n if (componentWithConflict && !this.options.mergeStrategy) {\n this.options.mergeStrategy = await getMergeStrategyInteractive();\n }\n this.mergeStatus = {};\n\n const componentsToWrite = componentsStatus.map((componentStatus) => {\n const filesStatus: FilesStatus | null | undefined = this._updateComponentFilesPerMergeStrategy(componentStatus);\n const component = componentStatus.component;\n if (!filesStatus) return component;\n this.mergeStatus[component.id.toStringWithoutVersion()] = filesStatus;\n const unchangedFiles = Object.keys(filesStatus).filter((file) => filesStatus[file] === FileStatus.unchanged);\n if (unchangedFiles.length === Object.keys(filesStatus).length) {\n // all files are unchanged\n return null;\n }\n return component;\n });\n return compact(componentsToWrite);\n }\n\n _shouldSaveLaneData(): boolean {\n if (this.options.objectsOnly) {\n return false;\n }\n return this.consumer.isOnLane();\n }\n\n async _saveLaneDataIfNeeded(components: Component[]): Promise<void> {\n if (!this._shouldSaveLaneData()) {\n return;\n }\n const currentLane = await this.consumer.getCurrentLaneObject();\n if (!currentLane) {\n return; // user on main\n }\n const idsFromRemoteLanes = this.remoteLane?.toComponentIds() || new ComponentIdList();\n await Promise.all(\n components.map(async (comp) => {\n const existOnRemoteLane = idsFromRemoteLanes.has(comp.id);\n if (!existOnRemoteLane && !this.options.saveInLane) {\n this.consumer.bitMap.setOnLanesOnly(comp.id, false);\n return;\n }\n const modelComponent = await this.scope.getModelComponent(comp.id);\n const ref = modelComponent.getRef(comp.id.version as string);\n if (!ref) throw new Error(`_saveLaneDataIfNeeded unable to get ref for ${comp.id.toString()}`);\n currentLane.addComponent({ id: comp.id, head: ref });\n })\n );\n await this.scope.lanes.saveLane(currentLane, { laneHistoryMsg: 'import components' });\n }\n\n async _writeToFileSystem(components: Component[]): Promise<ComponentWriterResults> {\n const componentsToWrite = await this.updateAllComponentsAccordingToMergeStrategy(components);\n const manyComponentsWriterOpts: ManyComponentsWriterParams = {\n components: componentsToWrite,\n writeToPath: this.options.writeToPath,\n writeConfig: this.options.writeConfig,\n skipDependencyInstallation: !this.options.installNpmPackages,\n skipWriteConfigFiles: !this.options.writeConfigFiles,\n verbose: this.options.verbose,\n throwForExistingDir: !this.options.override,\n skipWritingToFs: this.options.trackOnly,\n shouldUpdateWorkspaceConfig: true,\n reasonForBitmapChange: 'import',\n };\n return this.componentWriter.writeMany(manyComponentsWriterOpts);\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_bitError","data","require","_pMapSeries","_interopRequireDefault","_componentId","_legacy","_checkout","_merging","_componentsPendingMerge","_scopeComponentsImporter","_versionDependencies","_componentVersion","_lodash","_dependentsGetter","_lister","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","BEFORE_IMPORT_ACTION","ImportComponents","constructor","workspace","graph","componentWriter","envs","logger","lister","options","consumer","scope","remoteLane","lanes","importComponents","result","setStatusLine","startTime","process","hrtime","ids","length","importObjectsOnLane","consoleSuccess","importSpecificComponents","importAccordingToBitMap","objectsOnly","Error","lane","bitIds","getBitIds","debug","id","toString","beforeImportVersions","_getCurrentVersions","versionDependenciesArr","_importComponentsObjects","mergeAndSaveLaneObject","returnCompleteResults","writtenComponents","componentWriterResults","importDetails","_getImportDetails","missingIds","keys","importedComps","map","c","component","toStringWithoutVersion","forEach","compIdStr","found","includes","push","importedIds","v","flat","importedDeps","allDependenciesIds","installationError","compilationError","workspaceConfigUpdateResult","join","_throwForPotentialIssues","components","multipleVersionDependenciesToConsumer","objects","_fetchDivergeData","_throwForDivergedHistory","throwForComponentsFromAnotherLane","filteredComponents","_filterComponentsByFilters","_writeToFileSystem","_saveLaneDataIfNeeded","mergeLaneResults","sources","mergeLane","mergedLane","isRemoteLaneEqualsToMergedLane","isEqual","saveLane","saveLaneHistory","laneHistoryMsg","filterEnvs","filteredP","currentEnv","calculateEnvIdFromExtensions","extensions","currentEnvWithoutVersion","split","undefined","filtered","compact","Promise","all","modelComponent","getModelComponent","setDivergeData","divergeData","merge","divergedComponents","filter","getDivergeData","isDiverged","snapsLocal","snapsOnSourceOnly","snapsRemote","snapsOnTargetOnly","ComponentsPendingMerge","currentLaneId","getCurrentLaneId","currentRemoteLane","toLaneId","currentLane","getCurrentLaneObject","idsFromAnotherLane","bitId","isOnCurrentLane","isPartOfLaneHistoryOrMain","isIdOnMain","isPartOfMainHistory","BitError","fromOriginalScope","ignoreMissingHead","scopeComponentsImporter","ScopeComponentsImporter","getInstance","importWithoutDeps","toVersionLatest","cache","includeVersionHistory","fetchHeadIfLocalIsBehind","allHistory","collectParents","includeUnexported","isLaneFromRemote","reason","results","importManyFromOriginalScopes","importMany","preferDependencyGraph","fetchDeps","reFetchUnBuiltVersion","throwForSeederNotFound","getBitIdsForLanes","remoteLaneIds","toComponentIds","ComponentIdList","bitMapIds","bitMap","getAllBitIds","bitMapIdsToImport","hasScope","has","idsWithWildcard","hasWildcard","idsWithoutWildcard","idsWithoutWildcardPreferFromLane","idStr","getIdFromStr","fromLane","searchWithoutVersion","hasVersion","pMapSeries","existingOnLanes","filterIdsFromPoolIdsByPattern","idsFromRemote","getRemoteCompIdsByWildcards","includeDeprecated","startsWith","resolveComponentIdFromPackageName","ComponentID","fromString","getBitIdsForNonLanes","err","NoIdMatchWildcard","consoleWarning","message","shouldImportDependents","importDependents","dependentsVia","dependentsAll","shouldImportDependencies","importDependenciesDirectly","importHeadDependenciesDirectly","dependenciesIds","getFlattenedDepsUnique","dependentsGetter","DependentsGetter","dependents","getDependents","uniqFromArray","remoteComps","scopeImporter","getManyRemoteComponents","versions","getVersions","getFlattened","flattenedDependencies","flattenedDeps","flattened","uniqWithoutVersions","removeMultipleVersionsKeepLatest","latest","grouped","toGroupByIdWithoutVersion","latestVersions","key","getLatestVersionNumber","changeVersion","LATEST_VERSION","override","componentsIdsToImport","getIdsToImportFromBitmap","emptyResult","_throwForModifiedOrNewComponents","flagUsed","allIds","getAllBitIdsFromAllLanes","fromArray","versionsP","getModelComponentIfExist","listVersions","fromPairs","currentVersions","detailsP","afterImportVersions","versionDifference","difference","getStatus","filesStatus","mergeStatus","deprecated","Boolean","isDeprecated","version","removed","isRemoved","latestVersion","getHeadRegardlessOfLaneAsTagOrHash","status","missingDeps","getMissingDependencies","_throwForDifferentComponentWithSameName","trackOnly","componentsStatuses","getManyComponentsStatuses","modifiedComponents","modified","newlyCreated","existingId","getParsedIdIfExist","_getMergeStatus","componentStatus","getComponentStatusById","mergeResults","componentModel","existingBitMapBitId","getComponentId","ignoreVersion","fsComponent","loadComponent","currentlyUsedVersion","baseComponent","loadVersion","otherComponent","threeWayMerge","otherLabel","currentComponent","currentLabel","_updateComponentFilesPerMergeStrategy","componentMergeStatus","files","hasConflicts","mergeStrategy","MergeOptions","ours","file","pathNormalizeToLinux","relative","FileStatus","unchanged","updateComponentId","hasChanged","theirs","updated","modifiedFiles","applyModifiedVersion","updateAllComponentsAccordingToMergeStrategy","componentsStatusP","componentsStatus","componentWithConflict","find","getMergeStrategyInteractive","componentsToWrite","unchangedFiles","_shouldSaveLaneData","isOnLane","idsFromRemoteLanes","comp","existOnRemoteLane","saveInLane","setOnLanesOnly","ref","getRef","addComponent","head","manyComponentsWriterOpts","writeToPath","writeConfig","skipDependencyInstallation","installNpmPackages","skipWriteConfigFiles","writeConfigFiles","verbose","throwForExistingDir","skipWritingToFs","shouldUpdateWorkspaceConfig","reasonForBitmapChange","writeMany","exports"],"sources":["import-components.ts"],"sourcesContent":["import { BitError } from '@teambit/bit-error';\nimport { LaneId } from '@teambit/lane-id';\nimport pMapSeries from 'p-map-series';\nimport { ComponentID, ComponentIdList } from '@teambit/component-id';\nimport { Consumer } from '@teambit/legacy/dist/consumer';\nimport { Scope } from '@teambit/legacy/dist/scope';\nimport { Lane, ModelComponent, Version } from '@teambit/legacy/dist/scope/models';\nimport { getLatestVersionNumber, pathNormalizeToLinux, hasWildcard } from '@teambit/legacy.utils';\nimport Component from '@teambit/legacy/dist/consumer/component';\nimport { applyModifiedVersion } from '@teambit/checkout';\nimport {\n FileStatus,\n getMergeStrategyInteractive,\n MergeOptions,\n threeWayMerge,\n MergeStrategy,\n MergeResultsThreeWay,\n FilesStatus,\n} from '@teambit/merging';\nimport ComponentsPendingMerge from '@teambit/legacy/dist/consumer/exceptions/components-pending-merge';\nimport ScopeComponentsImporter from '@teambit/legacy/dist/scope/component-ops/scope-components-importer';\nimport VersionDependencies, {\n multipleVersionDependenciesToConsumer,\n} from '@teambit/legacy/dist/scope/version-dependencies';\nimport { GraphMain } from '@teambit/graph';\nimport { Workspace } from '@teambit/workspace';\nimport { ComponentWriterMain, ComponentWriterResults, ManyComponentsWriterParams } from '@teambit/component-writer';\nimport { LATEST_VERSION } from '@teambit/component-version';\nimport { EnvsMain } from '@teambit/envs';\nimport { compact, difference, fromPairs } from 'lodash';\nimport { WorkspaceConfigUpdateResult } from '@teambit/config-merger';\nimport { Logger } from '@teambit/logger';\nimport { DependentsGetter } from './dependents-getter';\nimport { ListerMain, NoIdMatchWildcard } from '@teambit/lister';\n\nconst BEFORE_IMPORT_ACTION = 'importing components';\n\nexport type ImportOptions = {\n ids: string[]; // array might be empty\n verbose?: boolean;\n merge?: boolean;\n mergeStrategy?: MergeStrategy;\n filterEnvs?: string[];\n writeToPath?: string;\n writeConfig?: boolean;\n override?: boolean;\n installNpmPackages: boolean; // default: true\n writeConfigFiles: boolean; // default: true\n objectsOnly?: boolean;\n importDependenciesDirectly?: boolean; // default: false, normally it imports them as packages, not as imported\n importHeadDependenciesDirectly?: boolean; // default: false, similar to importDependenciesDirectly, but it checks out to their head\n importDependents?: boolean;\n dependentsVia?: string;\n dependentsAll?: boolean;\n silent?: boolean; // don't show prompt for --dependents flag\n fromOriginalScope?: boolean; // default: false, otherwise, it fetches flattened dependencies from their dependents\n saveInLane?: boolean; // save the imported component on the current lane (won't be available on main)\n lanes?: {\n laneId: LaneId;\n remoteLane?: Lane; // it can be an empty array when a lane is a local lane and doesn't exist on the remote\n };\n allHistory?: boolean;\n fetchDeps?: boolean; // by default, if a component was tagged with > 0.0.900, it has the flattened-deps-graph in the object\n trackOnly?: boolean;\n includeDeprecated?: boolean;\n isLaneFromRemote?: boolean; // whether the `lanes.lane` object is coming directly from the remote.\n};\ntype ComponentMergeStatus = {\n component: Component;\n mergeResults: MergeResultsThreeWay | null | undefined;\n};\ntype ImportedVersions = { [id: string]: string[] };\nexport type ImportStatus = 'added' | 'updated' | 'up to date';\nexport type ImportDetails = {\n id: string;\n versions: string[];\n latestVersion: string | null;\n status: ImportStatus;\n filesStatus: FilesStatus | null | undefined;\n missingDeps: ComponentID[];\n deprecated: boolean;\n removed?: boolean;\n};\nexport type ImportResult = {\n importedIds: ComponentID[];\n importedDeps: ComponentID[];\n writtenComponents?: Component[];\n importDetails: ImportDetails[];\n cancellationMessage?: string;\n installationError?: Error;\n compilationError?: Error;\n workspaceConfigUpdateResult?: WorkspaceConfigUpdateResult;\n missingIds?: string[]; // in case the import is configured to not throw when missing\n lane?: Lane;\n};\n\nexport default class ImportComponents {\n consumer: Consumer;\n scope: Scope;\n mergeStatus: { [id: string]: FilesStatus };\n private remoteLane: Lane | undefined;\n private divergeData: Array<ModelComponent> = [];\n constructor(\n private workspace: Workspace,\n private graph: GraphMain,\n private componentWriter: ComponentWriterMain,\n private envs: EnvsMain,\n private logger: Logger,\n private lister: ListerMain,\n public options: ImportOptions\n ) {\n this.consumer = this.workspace.consumer;\n this.scope = this.consumer.scope;\n this.remoteLane = this.options.lanes?.remoteLane;\n }\n\n async importComponents(): Promise<ImportResult> {\n let result;\n this.logger.setStatusLine(BEFORE_IMPORT_ACTION);\n const startTime = process.hrtime();\n if (this.options.lanes && !this.options.ids.length) {\n result = await this.importObjectsOnLane();\n this.logger.consoleSuccess(BEFORE_IMPORT_ACTION, startTime);\n return result;\n }\n if (this.options.ids.length) {\n result = await this.importSpecificComponents();\n this.logger.consoleSuccess(BEFORE_IMPORT_ACTION, startTime);\n return result;\n }\n result = await this.importAccordingToBitMap();\n this.logger.consoleSuccess(BEFORE_IMPORT_ACTION, startTime);\n return result;\n }\n\n async importObjectsOnLane(): Promise<ImportResult> {\n if (!this.options.objectsOnly) {\n throw new Error(`importObjectsOnLane should have objectsOnly=true`);\n }\n const lane = this.remoteLane;\n const bitIds: ComponentIdList = await this.getBitIds();\n lane\n ? this.logger.debug(`importObjectsOnLane, Lane: ${lane.id()}, Ids: ${bitIds.toString()}`)\n : this.logger.debug(\n `importObjectsOnLane, the lane does not exist on the remote. importing only the main components`\n );\n const beforeImportVersions = await this._getCurrentVersions(bitIds);\n const versionDependenciesArr = await this._importComponentsObjects(bitIds, {\n lane,\n });\n\n if (lane) {\n await this.mergeAndSaveLaneObject(lane);\n }\n\n return this.returnCompleteResults(beforeImportVersions, versionDependenciesArr);\n }\n\n private async returnCompleteResults(\n beforeImportVersions: ImportedVersions,\n versionDependenciesArr: VersionDependencies[],\n writtenComponents?: Component[],\n componentWriterResults?: ComponentWriterResults\n ): Promise<ImportResult> {\n const importDetails = await this._getImportDetails(beforeImportVersions, versionDependenciesArr);\n const missingIds: string[] = [];\n if (Object.keys(beforeImportVersions).length > versionDependenciesArr.length) {\n const importedComps = versionDependenciesArr.map((c) => c.component.id.toStringWithoutVersion());\n Object.keys(beforeImportVersions).forEach((compIdStr) => {\n const found = importedComps.includes(compIdStr);\n if (!found) missingIds.push(compIdStr);\n });\n }\n\n return {\n importedIds: versionDependenciesArr.map((v) => v.component.id).flat(),\n importedDeps: versionDependenciesArr.map((v) => v.allDependenciesIds).flat(),\n writtenComponents,\n importDetails,\n installationError: componentWriterResults?.installationError,\n compilationError: componentWriterResults?.compilationError,\n workspaceConfigUpdateResult: componentWriterResults?.workspaceConfigUpdateResult,\n missingIds,\n lane: this.remoteLane,\n };\n }\n\n async importSpecificComponents(): Promise<ImportResult> {\n this.logger.debug(`importSpecificComponents, Ids: ${this.options.ids.join(', ')}`);\n const bitIds: ComponentIdList = await this.getBitIds();\n const beforeImportVersions = await this._getCurrentVersions(bitIds);\n await this._throwForPotentialIssues(bitIds);\n const versionDependenciesArr = await this._importComponentsObjects(bitIds, {\n lane: this.remoteLane,\n });\n if (this.remoteLane && this.options.objectsOnly) {\n await this.mergeAndSaveLaneObject(this.remoteLane);\n }\n let writtenComponents: Component[] = [];\n let componentWriterResults: ComponentWriterResults | undefined;\n if (!this.options.objectsOnly) {\n const components = await multipleVersionDependenciesToConsumer(versionDependenciesArr, this.scope.objects);\n await this._fetchDivergeData(components);\n this._throwForDivergedHistory();\n await this.throwForComponentsFromAnotherLane(components.map((c) => c.id));\n const filteredComponents = await this._filterComponentsByFilters(components);\n componentWriterResults = await this._writeToFileSystem(filteredComponents);\n await this._saveLaneDataIfNeeded(filteredComponents);\n writtenComponents = filteredComponents;\n }\n\n return this.returnCompleteResults(\n beforeImportVersions,\n versionDependenciesArr,\n writtenComponents,\n componentWriterResults\n );\n }\n\n private async mergeAndSaveLaneObject(lane: Lane) {\n const mergeLaneResults = await this.scope.sources.mergeLane(lane, true);\n const mergedLane = mergeLaneResults.mergeLane;\n const isRemoteLaneEqualsToMergedLane = lane.isEqual(mergedLane);\n await this.scope.lanes.saveLane(mergedLane, {\n saveLaneHistory: !isRemoteLaneEqualsToMergedLane,\n laneHistoryMsg: 'import (merge from remote)',\n });\n }\n\n private async _filterComponentsByFilters(components: Component[]): Promise<Component[]> {\n if (!this.options.filterEnvs) return components;\n const filteredP = components.map(async (component) => {\n // If the id was requested explicitly, we don't want to filter it out\n if (this.options.ids) {\n if (\n this.options.ids.includes(component.id.toStringWithoutVersion()) ||\n this.options.ids.includes(component.id.toString())\n ) {\n return component;\n }\n }\n const currentEnv = await this.envs.calculateEnvIdFromExtensions(component.extensions);\n const currentEnvWithoutVersion = currentEnv.split('@')[0];\n if (\n this.options.filterEnvs?.includes(currentEnv) ||\n this.options.filterEnvs?.includes(currentEnvWithoutVersion)\n ) {\n return component;\n }\n return undefined;\n });\n const filtered = compact(await Promise.all(filteredP));\n return filtered;\n }\n\n async _fetchDivergeData(components: Component[]) {\n if (this.options.objectsOnly) {\n // no need for it when importing objects only. if it's enabled, in case when on a lane and a non-lane\n // component is in bitmap using an older version, it throws \"getDivergeData: unable to find Version X of Y\"\n return;\n }\n await Promise.all(\n components.map(async (component) => {\n const modelComponent = await this.scope.getModelComponent(component.id);\n await modelComponent.setDivergeData(this.scope.objects, undefined, false);\n this.divergeData.push(modelComponent);\n })\n );\n }\n\n _throwForDivergedHistory() {\n if (this.options.merge || this.options.objectsOnly) return;\n const divergedComponents = this.divergeData.filter((modelComponent) =>\n modelComponent.getDivergeData().isDiverged()\n );\n if (divergedComponents.length) {\n const divergeData = divergedComponents.map((modelComponent) => ({\n id: modelComponent.id(),\n snapsLocal: modelComponent.getDivergeData().snapsOnSourceOnly.length,\n snapsRemote: modelComponent.getDivergeData().snapsOnTargetOnly.length,\n }));\n throw new ComponentsPendingMerge(divergeData);\n }\n }\n\n private async throwForComponentsFromAnotherLane(bitIds: ComponentID[]) {\n if (this.options.objectsOnly) return;\n const currentLaneId = this.workspace.getCurrentLaneId();\n const currentRemoteLane = this.remoteLane?.toLaneId().isEqual(currentLaneId) ? this.remoteLane : undefined;\n const currentLane = await this.workspace.getCurrentLaneObject();\n const idsFromAnotherLane: ComponentID[] = [];\n if (currentRemoteLane) {\n await Promise.all(\n bitIds.map(async (bitId) => {\n const isOnCurrentLane =\n (await this.scope.isPartOfLaneHistoryOrMain(bitId, currentRemoteLane)) ||\n (currentLane && (await this.scope.isPartOfLaneHistoryOrMain(bitId, currentLane)));\n if (!isOnCurrentLane) idsFromAnotherLane.push(bitId);\n })\n );\n } else {\n await Promise.all(\n bitIds.map(async (bitId) => {\n const isIdOnMain = await this.scope.isPartOfMainHistory(bitId);\n if (!isIdOnMain) idsFromAnotherLane.push(bitId);\n })\n );\n }\n if (idsFromAnotherLane.length) {\n throw new BitError(`unable to import the following component(s) as they belong to other lane(s):\n${idsFromAnotherLane.map((id) => id.toString()).join(', ')}\nif you need this specific snap, find the lane this snap is belong to, then run \"bit lane merge <lane-id> [component-id]\" to merge this component from the lane.\nif you just want to get a quick look into this snap, create a new workspace and import it by running \"bit lane import <lane-id> --pattern <component-id>\"`);\n }\n }\n\n private async _importComponentsObjects(\n ids: ComponentIdList,\n {\n fromOriginalScope = false,\n lane,\n ignoreMissingHead = false,\n }: {\n fromOriginalScope?: boolean;\n lane?: Lane;\n ignoreMissingHead?: boolean;\n }\n ): Promise<VersionDependencies[]> {\n const scopeComponentsImporter = ScopeComponentsImporter.getInstance(this.scope);\n await scopeComponentsImporter.importWithoutDeps(ids.toVersionLatest(), {\n cache: false,\n lane,\n includeVersionHistory: true,\n fetchHeadIfLocalIsBehind: !this.options.allHistory,\n collectParents: this.options.allHistory,\n // in case a user is merging a lane into a new workspace, then, locally main has head, but remotely the head is\n // empty, until it's exported. going to the remote and asking this component will throw an error if ignoreMissingHead is false\n ignoreMissingHead: true,\n includeUnexported: this.options.isLaneFromRemote,\n reason: `of their latest on ${lane ? `lane ${lane.id()}` : 'main'}`,\n });\n\n this.logger.setStatusLine(`import ${ids.length} components with their dependencies (if missing)`);\n const results = fromOriginalScope\n ? await scopeComponentsImporter.importManyFromOriginalScopes(ids)\n : await scopeComponentsImporter.importMany({\n ids,\n ignoreMissingHead,\n lane,\n preferDependencyGraph: !this.options.fetchDeps,\n // when user is running \"bit import\", we want to re-fetch if it wasn't built. todo: check if this can be disabled when not needed\n reFetchUnBuiltVersion: true,\n // it's possible that .bitmap is not in sync and has local tags that don't exist on the remote. later, we\n // add them to \"missingIds\" of \"importResult\" and show them to the user\n throwForSeederNotFound: false,\n reason: this.options.fetchDeps\n ? 'for getting all dependencies'\n : `for getting dependencies of components that don't have dependency-graph`,\n });\n\n return results;\n }\n\n /**\n * consider the following use cases:\n * 1) no ids were provided. it should import all the lanes components objects AND main components objects\n * (otherwise, if main components are not imported and are missing, then bit-status complains about it)\n * 2) ids are provided with wildcards. we assume the user wants only the ids that are available on the lane.\n * because a user may entered \"bit import scope/*\" and this scope has many component on the lane and many not on the lane.\n * we want to bring only the components on the lane.\n * 3) ids are provided without wildcards. here, the user knows exactly what's needed and it's ok to get the ids from\n * main if not found on the lane.\n */\n private async getBitIdsForLanes(): Promise<ComponentID[]> {\n if (!this.options.lanes) {\n throw new Error(`getBitIdsForLanes: this.options.lanes must be set`);\n }\n const remoteLaneIds = this.remoteLane?.toComponentIds() || new ComponentIdList();\n\n if (!this.options.ids.length) {\n const bitMapIds = this.consumer.bitMap.getAllBitIds();\n const bitMapIdsToImport = bitMapIds.filter((id) => id.hasScope() && !remoteLaneIds.has(id));\n remoteLaneIds.push(...bitMapIdsToImport);\n\n return remoteLaneIds;\n }\n\n const idsWithWildcard = this.options.ids.filter((id) => hasWildcard(id));\n const idsWithoutWildcard = this.options.ids.filter((id) => !hasWildcard(id));\n const idsWithoutWildcardPreferFromLane = await Promise.all(\n idsWithoutWildcard.map(async (idStr) => {\n const id = await this.getIdFromStr(idStr);\n const fromLane = remoteLaneIds.searchWithoutVersion(id);\n return fromLane && !id.hasVersion() ? fromLane : id;\n })\n );\n\n const bitIds: ComponentID[] = [...idsWithoutWildcardPreferFromLane];\n\n if (!idsWithWildcard) {\n return bitIds;\n }\n\n await pMapSeries(idsWithWildcard, async (idStr: string) => {\n const existingOnLanes = await this.workspace.filterIdsFromPoolIdsByPattern(idStr, remoteLaneIds, false);\n // in case the wildcard contains components from the lane, the user wants to import only them. not from main.\n // otherwise, if the wildcard translates to main components only, it's ok to import from main.\n if (existingOnLanes.length) {\n bitIds.push(...existingOnLanes);\n } else {\n const idsFromRemote = await this.lister.getRemoteCompIdsByWildcards(idStr, this.options.includeDeprecated);\n bitIds.push(...idsFromRemote);\n }\n });\n\n return bitIds;\n }\n\n private async getIdFromStr(id: string): Promise<ComponentID> {\n if (id.startsWith('@')) return this.workspace.resolveComponentIdFromPackageName(id);\n return ComponentID.fromString(id); // we don't support importing without a scope name\n }\n\n private async getBitIdsForNonLanes() {\n const bitIds: ComponentID[] = [];\n await Promise.all(\n this.options.ids.map(async (idStr: string) => {\n if (hasWildcard(idStr)) {\n let ids: ComponentID[] = [];\n try {\n ids = await this.lister.getRemoteCompIdsByWildcards(idStr, this.options.includeDeprecated);\n } catch (err: any) {\n if (err instanceof NoIdMatchWildcard) {\n this.logger.consoleWarning(err.message);\n } else {\n throw err;\n }\n }\n bitIds.push(...ids);\n } else {\n const id = await this.getIdFromStr(idStr);\n bitIds.push(id);\n }\n })\n );\n\n this.logger.setStatusLine(BEFORE_IMPORT_ACTION); // it stops the previous loader of BEFORE_REMOTE_LIST\n\n return bitIds;\n }\n\n private async getBitIds(): Promise<ComponentIdList> {\n const bitIds: ComponentID[] = this.options.lanes\n ? await this.getBitIdsForLanes()\n : await this.getBitIdsForNonLanes();\n const shouldImportDependents =\n this.options.importDependents || this.options.dependentsVia || this.options.dependentsAll;\n const shouldImportDependencies =\n this.options.importDependenciesDirectly || this.options.importHeadDependenciesDirectly;\n if (shouldImportDependencies || shouldImportDependents) {\n if (shouldImportDependencies) {\n const dependenciesIds = await this.getFlattenedDepsUnique(bitIds);\n bitIds.push(...dependenciesIds);\n }\n if (shouldImportDependents) {\n const dependentsGetter = new DependentsGetter(this.logger, this.workspace, this.graph, this.options);\n const dependents = await dependentsGetter.getDependents(bitIds);\n bitIds.push(...dependents);\n }\n }\n return ComponentIdList.uniqFromArray(bitIds);\n }\n\n private async getFlattenedDepsUnique(bitIds: ComponentID[]): Promise<ComponentID[]> {\n const remoteComps = await this.scope.scopeImporter.getManyRemoteComponents(bitIds);\n const versions = remoteComps.getVersions();\n const getFlattened = (): ComponentIdList => {\n if (versions.length === 1) return versions[0].flattenedDependencies;\n const flattenedDeps = versions.map((v) => v.flattenedDependencies).flat();\n return ComponentIdList.uniqFromArray(flattenedDeps);\n };\n const flattened = getFlattened();\n return this.options.importHeadDependenciesDirectly\n ? this.uniqWithoutVersions(flattened)\n : this.removeMultipleVersionsKeepLatest(flattened);\n }\n\n private uniqWithoutVersions(flattened: ComponentIdList) {\n const latest = flattened.toVersionLatest();\n return ComponentIdList.uniqFromArray(latest);\n }\n\n private removeMultipleVersionsKeepLatest(flattened: ComponentIdList): ComponentID[] {\n const grouped = flattened.toGroupByIdWithoutVersion();\n const latestVersions = Object.keys(grouped).map((key) => {\n const ids = grouped[key];\n if (ids.length === 1) return ids[0];\n try {\n const latest = getLatestVersionNumber(ids, ids[0].changeVersion(LATEST_VERSION));\n return latest;\n } catch (err: any) {\n throw new Error(`a dependency \"${key}\" was found with multiple versions, unable to find which one of them is newer.\nerror: ${err.message}\nconsider running with \"--dependencies-head\" flag instead, which checks out to the head of the dependencies`);\n }\n });\n\n return latestVersions;\n }\n\n async importAccordingToBitMap(): Promise<ImportResult> {\n this.options.objectsOnly = !this.options.merge && !this.options.override;\n const componentsIdsToImport = this.getIdsToImportFromBitmap();\n const emptyResult = {\n importedIds: [],\n importedDeps: [],\n importDetails: [],\n };\n if (!componentsIdsToImport.length) {\n return emptyResult;\n }\n await this._throwForModifiedOrNewComponents(componentsIdsToImport);\n const beforeImportVersions = await this._getCurrentVersions(componentsIdsToImport);\n if (!componentsIdsToImport.length) {\n return emptyResult;\n }\n if (!this.options.objectsOnly) {\n const flagUsed = this.options.merge ? '--merge' : '--override';\n throw new Error(`bit import with no ids and ${flagUsed} flag is not supported.\nto write the components from .bitmap file according to the their remote, please use \"bit checkout reset --all\"`);\n }\n const versionDependenciesArr = await this._importComponentsObjects(componentsIdsToImport, {\n fromOriginalScope: this.options.fromOriginalScope,\n });\n let writtenComponents: Component[] = [];\n let componentWriterResults: ComponentWriterResults | undefined;\n if (!this.options.objectsOnly) {\n const components = await multipleVersionDependenciesToConsumer(versionDependenciesArr, this.scope.objects);\n componentWriterResults = await this._writeToFileSystem(components);\n writtenComponents = components;\n }\n\n return this.returnCompleteResults(\n beforeImportVersions,\n versionDependenciesArr,\n writtenComponents,\n componentWriterResults\n );\n }\n\n private getIdsToImportFromBitmap() {\n const allIds = this.consumer.bitMap.getAllBitIdsFromAllLanes();\n return ComponentIdList.fromArray(allIds.filter((id) => id.hasScope()));\n }\n\n async _getCurrentVersions(ids: ComponentIdList): Promise<ImportedVersions> {\n const versionsP = ids.map(async (id) => {\n const modelComponent = await this.consumer.scope.getModelComponentIfExist(id.changeVersion(undefined));\n const idStr = id.toStringWithoutVersion();\n if (!modelComponent) return [idStr, []];\n return [idStr, modelComponent.listVersions()];\n });\n const versions = await Promise.all(versionsP);\n return fromPairs(versions);\n }\n\n /**\n * get import details, includes the diff between the versions array before import and after import\n */\n async _getImportDetails(\n currentVersions: ImportedVersions,\n components: VersionDependencies[]\n ): Promise<ImportDetails[]> {\n const detailsP = components.map(async (component) => {\n const id = component.component.id;\n const idStr = id.toStringWithoutVersion();\n const beforeImportVersions = currentVersions[idStr];\n if (!beforeImportVersions) {\n throw new Error(\n `_getImportDetails failed finding ${idStr} in currentVersions, which has ${Object.keys(currentVersions).join(\n ', '\n )}`\n );\n }\n const modelComponent = await this.consumer.scope.getModelComponentIfExist(id);\n if (!modelComponent) throw new BitError(`imported component ${idStr} was not found in the model`);\n const afterImportVersions = modelComponent.listVersions();\n const versionDifference: string[] = difference(afterImportVersions, beforeImportVersions);\n const getStatus = (): ImportStatus => {\n if (!versionDifference.length) return 'up to date';\n if (!beforeImportVersions.length) return 'added';\n return 'updated';\n };\n const filesStatus = this.mergeStatus && this.mergeStatus[idStr] ? this.mergeStatus[idStr] : null;\n const deprecated = Boolean(await modelComponent.isDeprecated(this.scope.objects, id.version));\n const removed = Boolean(await component.component.component.isRemoved(this.scope.objects, id.version));\n const latestVersion = modelComponent.getHeadRegardlessOfLaneAsTagOrHash(true);\n return {\n id: idStr,\n versions: versionDifference,\n latestVersion: versionDifference.includes(latestVersion) ? latestVersion : null,\n status: getStatus(),\n filesStatus,\n missingDeps: this.options.fetchDeps ? component.getMissingDependencies() : [],\n deprecated,\n removed,\n };\n });\n const importDetails: ImportDetails[] = await Promise.all(detailsP);\n\n return importDetails;\n }\n\n async _throwForPotentialIssues(ids: ComponentIdList): Promise<void> {\n await this._throwForModifiedOrNewComponents(ids);\n this._throwForDifferentComponentWithSameName(ids);\n }\n\n async _throwForModifiedOrNewComponents(ids: ComponentIdList): Promise<void> {\n // the typical objectsOnly option is when a user cloned a project with components tagged to the source code, but\n // doesn't have the model objects. in that case, calling getComponentStatusById() may return an error as it relies\n // on the model objects when there are dependencies\n if (this.options.override || this.options.objectsOnly || this.options.merge || this.options.trackOnly) return;\n const componentsStatuses = await this.workspace.getManyComponentsStatuses(ids);\n const modifiedComponents = componentsStatuses\n .filter(({ status }) => status.modified || status.newlyCreated)\n .map((c) => c.id);\n if (modifiedComponents.length) {\n throw new BitError(\n `unable to import the following components due to local changes, use --merge flag to merge your local changes or --override to override them\\n${modifiedComponents.join(\n '\\n'\n )} `\n );\n }\n }\n\n /**\n * Model Component id() calculation uses id.toString() for the hash.\n * If an imported component has scopereadonly name equals to a local name, both will have the exact same\n * hash and they'll override each other.\n */\n _throwForDifferentComponentWithSameName(ids: ComponentIdList): void {\n ids.forEach((id: ComponentID) => {\n const existingId = this.consumer.getParsedIdIfExist(id.toStringWithoutVersion());\n if (existingId && !existingId.hasScope()) {\n throw new BitError(`unable to import ${id.toString()}. the component name conflicted with your local (new/staged) component with the same name.\nit's fine to have components with the same name as long as their scope names are different.\nif the component was created by mistake, remove it and import the remote one.\notherwise, if tagged/snapped, \"bit reset\" it, then bit rename it.`);\n }\n });\n }\n\n async _getMergeStatus(component: Component): Promise<ComponentMergeStatus> {\n const componentStatus = await this.workspace.getComponentStatusById(component.id);\n const mergeStatus: ComponentMergeStatus = { component, mergeResults: null };\n if (!componentStatus.modified) return mergeStatus;\n const componentModel = await this.consumer.scope.getModelComponent(component.id);\n const existingBitMapBitId = this.consumer.bitMap.getComponentId(component.id, { ignoreVersion: true });\n const fsComponent = await this.consumer.loadComponent(existingBitMapBitId);\n const currentlyUsedVersion = existingBitMapBitId.version;\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n const baseComponent: Version = await componentModel.loadVersion(currentlyUsedVersion, this.consumer.scope.objects);\n const otherComponent: Version = await componentModel.loadVersion(\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n component.id.version,\n this.consumer.scope.objects\n );\n const mergeResults = await threeWayMerge({\n scope: this.consumer.scope,\n otherComponent,\n otherLabel: component.id.version as string,\n currentComponent: fsComponent,\n currentLabel: `${currentlyUsedVersion} modified`,\n baseComponent,\n });\n mergeStatus.mergeResults = mergeResults;\n return mergeStatus;\n }\n\n /**\n * 1) when there are conflicts and the strategy is \"ours\", don't write the imported component to\n * the filesystem, only update bitmap.\n *\n * 2) when there are conflicts and the strategy is \"theirs\", override the local changes by the\n * imported component. (similar to --override)\n *\n * 3) when there is no conflict or there are conflicts and the strategy is manual, write the files\n * according to the merge result. (done by applyModifiedVersion())\n */\n _updateComponentFilesPerMergeStrategy(componentMergeStatus: ComponentMergeStatus): FilesStatus | null | undefined {\n const mergeResults = componentMergeStatus.mergeResults;\n if (!mergeResults) return null;\n const component = componentMergeStatus.component;\n const files = component.files;\n\n if (mergeResults.hasConflicts && this.options.mergeStrategy === MergeOptions.ours) {\n const filesStatus = {};\n // don't write the files to the filesystem, only bump the bitmap version.\n files.forEach((file) => {\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n filesStatus[pathNormalizeToLinux(file.relative)] = FileStatus.unchanged;\n });\n this.consumer.bitMap.updateComponentId(component.id);\n this.consumer.bitMap.hasChanged = true;\n return filesStatus;\n }\n if (mergeResults.hasConflicts && this.options.mergeStrategy === MergeOptions.theirs) {\n const filesStatus = {};\n // the local changes will be overridden (as if the user entered --override flag for this component)\n files.forEach((file) => {\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n filesStatus[pathNormalizeToLinux(file.relative)] = FileStatus.updated;\n });\n return filesStatus;\n }\n const { filesStatus, modifiedFiles } = applyModifiedVersion(\n component.files,\n mergeResults,\n this.options.mergeStrategy\n );\n component.files = modifiedFiles;\n\n return filesStatus;\n }\n\n /**\n * update the component files if they are modified and there is a merge strategy.\n * returns only the components that need to be written to the filesystem\n */\n async updateAllComponentsAccordingToMergeStrategy(components: Component[]): Promise<Component[]> {\n if (!this.options.merge) return components;\n const componentsStatusP = components.map((component: Component) => {\n return this._getMergeStatus(component);\n });\n const componentsStatus = await Promise.all(componentsStatusP);\n const componentWithConflict = componentsStatus.find(\n (component) => component.mergeResults && component.mergeResults.hasConflicts\n );\n if (componentWithConflict && !this.options.mergeStrategy) {\n this.options.mergeStrategy = await getMergeStrategyInteractive();\n }\n this.mergeStatus = {};\n\n const componentsToWrite = componentsStatus.map((componentStatus) => {\n const filesStatus: FilesStatus | null | undefined = this._updateComponentFilesPerMergeStrategy(componentStatus);\n const component = componentStatus.component;\n if (!filesStatus) return component;\n this.mergeStatus[component.id.toStringWithoutVersion()] = filesStatus;\n const unchangedFiles = Object.keys(filesStatus).filter((file) => filesStatus[file] === FileStatus.unchanged);\n if (unchangedFiles.length === Object.keys(filesStatus).length) {\n // all files are unchanged\n return null;\n }\n return component;\n });\n return compact(componentsToWrite);\n }\n\n _shouldSaveLaneData(): boolean {\n if (this.options.objectsOnly) {\n return false;\n }\n return this.consumer.isOnLane();\n }\n\n async _saveLaneDataIfNeeded(components: Component[]): Promise<void> {\n if (!this._shouldSaveLaneData()) {\n return;\n }\n const currentLane = await this.consumer.getCurrentLaneObject();\n if (!currentLane) {\n return; // user on main\n }\n const idsFromRemoteLanes = this.remoteLane?.toComponentIds() || new ComponentIdList();\n await Promise.all(\n components.map(async (comp) => {\n const existOnRemoteLane = idsFromRemoteLanes.has(comp.id);\n if (!existOnRemoteLane && !this.options.saveInLane) {\n this.consumer.bitMap.setOnLanesOnly(comp.id, false);\n return;\n }\n const modelComponent = await this.scope.getModelComponent(comp.id);\n const ref = modelComponent.getRef(comp.id.version as string);\n if (!ref) throw new Error(`_saveLaneDataIfNeeded unable to get ref for ${comp.id.toString()}`);\n currentLane.addComponent({ id: comp.id, head: ref });\n })\n );\n await this.scope.lanes.saveLane(currentLane, { laneHistoryMsg: 'import components' });\n }\n\n async _writeToFileSystem(components: Component[]): Promise<ComponentWriterResults> {\n const componentsToWrite = await this.updateAllComponentsAccordingToMergeStrategy(components);\n const manyComponentsWriterOpts: ManyComponentsWriterParams = {\n components: componentsToWrite,\n writeToPath: this.options.writeToPath,\n writeConfig: this.options.writeConfig,\n skipDependencyInstallation: !this.options.installNpmPackages,\n skipWriteConfigFiles: !this.options.writeConfigFiles,\n verbose: this.options.verbose,\n throwForExistingDir: !this.options.override,\n skipWritingToFs: this.options.trackOnly,\n shouldUpdateWorkspaceConfig: true,\n reasonForBitmapChange: 'import',\n };\n return this.componentWriter.writeMany(manyComponentsWriterOpts);\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -109,13 +109,6 @@ function _install() {
109
109
  };
110
110
  return data;
111
111
  }
112
- function _loader() {
113
- const data = _interopRequireDefault(require("@teambit/legacy/dist/cli/loader"));
114
- _loader = function () {
115
- return data;
116
- };
117
- return data;
118
- }
119
112
  function _componentId() {
120
113
  const data = require("@teambit/component-id");
121
114
  _componentId = function () {
@@ -324,7 +317,7 @@ class ImporterMain {
324
317
  if (!lanes && !components) {
325
318
  throw new (_bitError().BitError)(`please provide the type of objects you would like to pull, the options are --components and --lanes`);
326
319
  }
327
- _loader().default.start('fetching objects...');
320
+ this.logger.setStatusLine('fetching objects...');
328
321
  if (!this.workspace) throw new (_workspace().OutsideWorkspaceError)();
329
322
  const consumer = this.workspace.consumer;
330
323
  if (lanes) {
@@ -373,7 +366,7 @@ class ImporterMain {
373
366
  } catch (err) {
374
367
  if (err instanceof _legacyBitId().InvalidScopeName || err instanceof _scopeNotFoundOrDenied().ScopeNotFoundOrDenied || err instanceof _legacy2().LaneNotFound || err instanceof _legacyBitId().InvalidScopeNameFromRemote) {
375
368
  // the lane could be a local lane so no need to throw an error in such case
376
- _loader().default.stop();
369
+ logger.clearStatusLine();
377
370
  logger.console(`unable to get lane's data from a remote due to an error:\n${err.message}`, 'warn', 'yellow');
378
371
  } else {
379
372
  throw err;
@@ -1 +1 @@
1
- {"version":3,"names":["_cli","data","require","_dependencyResolver","_workspace","_legacy","_pkgModules","_legacyBitId","_pMapSeries","_interopRequireDefault","_envs","_componentWriter","_logger","_scope","_laneId","_scopeComponentsImporter","_component","_install","_loader","_componentId","_scopeNotFoundOrDenied","_graph","_legacy2","_bitError","_import","_importer","_fetchCmd","_importComponents","_lister","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ImporterMain","constructor","workspace","depResolver","graph","scope","componentWriter","envs","logger","lister","import","importOptions","packageManagerArgs","OutsideWorkspaceError","consumer","ids","objectsOnly","isOnLane","currentRemoteLane","getCurrentRemoteLane","lanes","laneId","toLaneId","remoteLane","currentLaneId","getCurrentLaneId","importComponents","createImportComponents","results","Analytics","setExtraData","importedIds","writtenComponents","removeFromWorkspaceConfig","onDestroy","importObjects","options","installNpmPackages","writeConfigFiles","importHeadArtifactsFromLane","lane","toComponentIds","throwIfMissing","laneComps","legacyScope","getManyConsumerComponents","importAllArtifactsFromLane","err","error","id","toString","importCurrentObjects","importObjectsFromMainIfExist","cache","scopeImporter","importWithoutDeps","ComponentIdList","fromArray","includeVersionHistory","ignoreMissingHead","fetchLaneComponents","includeUpdateDependents","toComponentIdsIncludeUpdateDependents","importMany","reason","mergeLane","sources","isRemoteLaneEqualsToMergedLane","isEqual","saveLane","saveLaneHistory","laneHistoryMsg","fetch","components","fromOriginalScope","allHistory","BitError","loader","start","lanesToFetch","getLanes","shouldFetchFromMain","includes","DEFAULT_LANE","fetchLanes","verbose","writeConfig","override","importDetails","remoteLaneIds","map","trackLane","getRemoteTrackedDataByLocalLane","LaneId","from","remoteScope","parse","objects","remoteLanes","getAllRemoteLaneIds","scopeComponentImporter","ScopeComponentsImporter","getInstance","importLanes","InvalidScopeName","ScopeNotFoundOrDenied","LaneNotFound","InvalidScopeNameFromRemote","stop","console","message","ImportComponents","resultFromMain","importedDeps","resultsPerLane","pMapSeries","setStatusLine","name","isLaneFromRemote","consoleSuccess","reduce","acc","curr","importLaneObject","persistIfNotExists","includeLaneHistory","laneObject","exists","loadLane","hasChanged","importObjectsByHashes","hashes","groupByScope","importManyObjects","component","importedPackageNames","getImportedPackagesNames","isRemoved","removeFromRootPolicy","persistConfig","componentIdToPackageName","provider","cli","install","loggerMain","createLogger","ImporterAspect","importerMain","registerPreInstall","opts","registerPreLink","fetchObject","register","ImportCmd","FetchCmd","exports","CLIAspect","WorkspaceAspect","DependencyResolverAspect","GraphAspect","ScopeAspect","ComponentWriterAspect","InstallAspect","EnvsAspect","LoggerAspect","ListerAspect","MainRuntime","addRuntime"],"sources":["importer.main.runtime.ts"],"sourcesContent":["import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport { DependencyResolverAspect, DependencyResolverMain } from '@teambit/dependency-resolver';\nimport { WorkspaceAspect, OutsideWorkspaceError, Workspace } from '@teambit/workspace';\nimport { Analytics } from '@teambit/legacy.analytics';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component';\nimport { componentIdToPackageName } from '@teambit/pkg.modules.component-package-name';\nimport { InvalidScopeName, InvalidScopeNameFromRemote } from '@teambit/legacy-bit-id';\nimport pMapSeries from 'p-map-series';\nimport { EnvsAspect, EnvsMain } from '@teambit/envs';\nimport { ComponentWriterAspect, ComponentWriterMain } from '@teambit/component-writer';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { ScopeAspect, ScopeMain } from '@teambit/scope';\nimport { DEFAULT_LANE, LaneId } from '@teambit/lane-id';\nimport ScopeComponentsImporter from '@teambit/legacy/dist/scope/component-ops/scope-components-importer';\nimport { importAllArtifactsFromLane } from '@teambit/component.sources';\nimport { InstallAspect, InstallMain } from '@teambit/install';\nimport loader from '@teambit/legacy/dist/cli/loader';\nimport { ComponentIdList, ComponentID } from '@teambit/component-id';\nimport { Lane } from '@teambit/legacy/dist/scope/models';\nimport { ScopeNotFoundOrDenied } from '@teambit/legacy/dist/remotes/exceptions/scope-not-found-or-denied';\nimport { GraphAspect, GraphMain } from '@teambit/graph';\nimport { LaneNotFound } from '@teambit/legacy.scope-api';\nimport { BitError } from '@teambit/bit-error';\nimport { ImportCmd } from './import.cmd';\nimport { ImporterAspect } from './importer.aspect';\nimport { FetchCmd } from './fetch-cmd';\nimport ImportComponents, { ImportOptions, ImportResult } from './import-components';\nimport { ListerAspect, ListerMain } from '@teambit/lister';\n\nexport class ImporterMain {\n constructor(\n private workspace: Workspace,\n private depResolver: DependencyResolverMain,\n private graph: GraphMain,\n private scope: ScopeMain,\n private componentWriter: ComponentWriterMain,\n private envs: EnvsMain,\n readonly logger: Logger,\n private lister: ListerMain\n ) {}\n\n async import(importOptions: ImportOptions, packageManagerArgs: string[] = []): Promise<ImportResult> {\n if (!this.workspace) throw new OutsideWorkspaceError();\n const consumer = this.workspace.consumer;\n consumer.packageManagerArgs = packageManagerArgs;\n if (!importOptions.ids.length) {\n importOptions.objectsOnly = true;\n }\n if (this.workspace.consumer.isOnLane()) {\n const currentRemoteLane = await this.workspace.getCurrentRemoteLane();\n if (currentRemoteLane) {\n importOptions.lanes = { laneId: currentRemoteLane.toLaneId(), remoteLane: currentRemoteLane };\n } else if (!importOptions.ids.length) {\n // this is probably a local lane that was never exported.\n // although no need to fetch from the lane, still, the import is needed for main (which are available on this\n // local lane)\n const currentLaneId = this.workspace.getCurrentLaneId();\n importOptions.lanes = { laneId: currentLaneId };\n }\n }\n const importComponents = this.createImportComponents(importOptions);\n const results = await importComponents.importComponents();\n Analytics.setExtraData('num_components', results.importedIds.length);\n if (results.writtenComponents && results.writtenComponents.length) {\n await this.removeFromWorkspaceConfig(results.writtenComponents);\n }\n await consumer.onDestroy('import');\n return results;\n }\n\n /**\n * fetch objects according to the criteria set by `options` param.\n * to fetch current objects according to the current lane or main, use `this.importCurrentObjects()`.\n */\n async importObjects(options: Partial<ImportOptions> = {}): Promise<ImportResult> {\n const importOptions: ImportOptions = {\n ...options,\n objectsOnly: true,\n ids: options.ids || [],\n installNpmPackages: false,\n writeConfigFiles: false,\n };\n const importComponents = this.createImportComponents(importOptions);\n return importComponents.importComponents();\n }\n\n /**\n * given a lane object, load all components by their head on the lane, find the artifacts refs and import them from\n * the lane scope\n */\n async importHeadArtifactsFromLane(lane: Lane, ids: ComponentID[] = lane.toComponentIds(), throwIfMissing = false) {\n const laneComps = await this.scope.legacyScope.getManyConsumerComponents(ids);\n try {\n await importAllArtifactsFromLane(this.scope.legacyScope, laneComps, lane);\n } catch (err) {\n this.logger.error(`failed fetching artifacts for lane ${lane.id.toString()}`, err);\n if (throwIfMissing) throw err;\n }\n }\n\n /**\n * if on main, fetch main objects, if on lane, fetch lane objects.\n */\n async importCurrentObjects(): Promise<ImportResult> {\n if (!this.workspace) throw new OutsideWorkspaceError();\n const importOptions: ImportOptions = {\n ids: [],\n objectsOnly: true,\n installNpmPackages: false,\n writeConfigFiles: false,\n };\n const currentRemoteLane = await this.workspace.getCurrentRemoteLane();\n if (currentRemoteLane) {\n importOptions.lanes = { laneId: currentRemoteLane.toLaneId(), remoteLane: currentRemoteLane };\n }\n const importComponents = this.createImportComponents(importOptions);\n return importComponents.importComponents();\n }\n\n async importObjectsFromMainIfExist(ids: ComponentID[], { cache } = { cache: false }) {\n await this.scope.legacyScope.scopeImporter.importWithoutDeps(ComponentIdList.fromArray(ids), {\n cache,\n includeVersionHistory: true,\n ignoreMissingHead: true,\n });\n }\n\n /**\n * fetch lane's components and save them in the local scope.\n * once done, merge the lane object and save it as well.\n */\n async fetchLaneComponents(lane: Lane, includeUpdateDependents = false) {\n const ids = includeUpdateDependents ? lane.toComponentIdsIncludeUpdateDependents() : lane.toComponentIds();\n await this.scope.legacyScope.scopeImporter.importMany({\n ids,\n lane,\n reason: `for fetching lane ${lane.id()}`,\n includeUpdateDependents,\n });\n const { mergeLane } = await this.scope.legacyScope.sources.mergeLane(lane, true);\n const isRemoteLaneEqualsToMergedLane = lane.isEqual(mergeLane);\n await this.scope.legacyScope.lanes.saveLane(mergeLane, {\n saveLaneHistory: !isRemoteLaneEqualsToMergedLane,\n laneHistoryMsg: 'fetch (merge from remote)',\n });\n }\n\n async fetch(ids: string[], lanes: boolean, components: boolean, fromOriginalScope: boolean, allHistory = false) {\n if (!lanes && !components) {\n throw new BitError(\n `please provide the type of objects you would like to pull, the options are --components and --lanes`\n );\n }\n loader.start('fetching objects...');\n if (!this.workspace) throw new OutsideWorkspaceError();\n const consumer = this.workspace.consumer;\n\n if (lanes) {\n const lanesToFetch = await getLanes(this.logger);\n const shouldFetchFromMain = !ids.length || ids.includes(DEFAULT_LANE);\n return this.fetchLanes(lanesToFetch, shouldFetchFromMain, { allHistory });\n }\n\n const importOptions: ImportOptions = {\n ids,\n objectsOnly: true,\n allHistory,\n verbose: false,\n writeConfig: false,\n override: false,\n installNpmPackages: false,\n writeConfigFiles: false,\n fromOriginalScope,\n };\n\n const importComponents = this.createImportComponents(importOptions);\n const { importedIds, importDetails } = await importComponents.importComponents();\n Analytics.setExtraData('num_components', importedIds.length);\n await consumer.onDestroy('import');\n return { importedIds, importDetails };\n\n async function getLanes(logger: Logger): Promise<Lane[]> {\n let remoteLaneIds: LaneId[] = [];\n if (ids.length) {\n remoteLaneIds = ids\n .filter((id) => id !== DEFAULT_LANE)\n .map((id) => {\n const trackLane = consumer.scope.lanes.getRemoteTrackedDataByLocalLane(id);\n if (trackLane) return LaneId.from(trackLane.remoteLane, trackLane.remoteScope);\n return LaneId.parse(id);\n });\n } else {\n remoteLaneIds = await consumer.scope.objects.remoteLanes.getAllRemoteLaneIds();\n }\n const scopeComponentImporter = ScopeComponentsImporter.getInstance(consumer.scope);\n try {\n return await scopeComponentImporter.importLanes(remoteLaneIds);\n } catch (err: any) {\n if (\n err instanceof InvalidScopeName ||\n err instanceof ScopeNotFoundOrDenied ||\n err instanceof LaneNotFound ||\n err instanceof InvalidScopeNameFromRemote\n ) {\n // the lane could be a local lane so no need to throw an error in such case\n loader.stop();\n logger.console(`unable to get lane's data from a remote due to an error:\\n${err.message}`, 'warn', 'yellow');\n } else {\n throw err;\n }\n }\n\n return [];\n }\n }\n\n private createImportComponents(importOptions: ImportOptions) {\n return new ImportComponents(\n this.workspace,\n this.graph,\n this.componentWriter,\n this.envs,\n this.logger,\n this.lister,\n importOptions\n );\n }\n\n async fetchLanes(\n lanes: Lane[],\n shouldFetchFromMain?: boolean,\n options: Partial<ImportOptions> = {}\n ): Promise<ImportResult> {\n const resultFromMain = shouldFetchFromMain\n ? await this.importObjects(options)\n : { importedIds: [], importDetails: [], importedDeps: [] };\n const resultsPerLane = await pMapSeries(lanes, async (lane) => {\n this.logger.setStatusLine(`fetching lane ${lane.name}`);\n options.lanes = { laneId: lane.toLaneId(), remoteLane: lane };\n options.isLaneFromRemote = true;\n const results = await this.importObjects(options);\n this.logger.consoleSuccess();\n return results;\n });\n resultsPerLane.push(resultFromMain);\n const results = resultsPerLane.reduce((acc, curr) => {\n acc.importedIds.push(...curr.importedIds);\n acc.importDetails.push(...curr.importDetails);\n return acc;\n });\n return results;\n }\n\n /**\n * get a Lane object from the remote.\n * `persistIfNotExists` saves the object in the local scope only if the lane is not there yet.\n * otherwise, it needs some merging mechanism, which is done differently whether it's export or import.\n * see `sources.mergeLane()` for export and `import-components._saveLaneDataIfNeeded()` for import.\n * in this case, because we only bring the lane object and not the components, it's not easy to do the merge.\n */\n async importLaneObject(laneId: LaneId, persistIfNotExists = true, includeLaneHistory = false): Promise<Lane> {\n const legacyScope = this.scope.legacyScope;\n const results = await legacyScope.scopeImporter.importLanes([laneId], includeLaneHistory);\n const laneObject = results[0];\n if (!laneObject) throw new LaneNotFound(laneId.scope, laneId.name);\n\n if (persistIfNotExists) {\n const exists = await legacyScope.loadLane(laneId);\n if (!exists) {\n laneObject.hasChanged = true;\n await legacyScope.lanes.saveLane(laneObject, { saveLaneHistory: false });\n }\n }\n\n return laneObject;\n }\n\n async importObjectsByHashes(hashes: string[], scope: string, reason?: string) {\n const groupByScope = { [scope]: hashes };\n const results = await this.scope.legacyScope.scopeImporter.importManyObjects(groupByScope, reason);\n return results;\n }\n\n private async removeFromWorkspaceConfig(component: ConsumerComponent[]) {\n const importedPackageNames = this.getImportedPackagesNames(component);\n const isRemoved = this.depResolver.removeFromRootPolicy(importedPackageNames);\n if (isRemoved) await this.depResolver.persistConfig('import (remove package)');\n }\n\n private getImportedPackagesNames(components: ConsumerComponent[]): string[] {\n return components.map((component) => componentIdToPackageName(component));\n }\n\n static slots = [];\n static dependencies = [\n CLIAspect,\n WorkspaceAspect,\n DependencyResolverAspect,\n GraphAspect,\n ScopeAspect,\n ComponentWriterAspect,\n InstallAspect,\n EnvsAspect,\n LoggerAspect,\n ListerAspect,\n ];\n static runtime = MainRuntime;\n static async provider([\n cli,\n workspace,\n depResolver,\n graph,\n scope,\n componentWriter,\n install,\n envs,\n loggerMain,\n lister,\n ]: [\n CLIMain,\n Workspace,\n DependencyResolverMain,\n GraphMain,\n ScopeMain,\n ComponentWriterMain,\n InstallMain,\n EnvsMain,\n LoggerMain,\n ListerMain,\n ]) {\n const logger = loggerMain.createLogger(ImporterAspect.id);\n const importerMain = new ImporterMain(workspace, depResolver, graph, scope, componentWriter, envs, logger, lister);\n install.registerPreInstall(async (opts) => {\n if (!opts?.import) return;\n logger.setStatusLine('importing missing objects');\n await importerMain.importCurrentObjects();\n // logger.consoleSuccess();\n });\n install.registerPreLink(async (opts) => {\n if (opts?.fetchObject) await importerMain.importCurrentObjects();\n });\n cli.register(new ImportCmd(importerMain), new FetchCmd(importerMain));\n return importerMain;\n }\n}\n\nImporterAspect.addRuntime(ImporterMain);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_cli","data","require","_dependencyResolver","_workspace","_legacy","_pkgModules","_legacyBitId","_pMapSeries","_interopRequireDefault","_envs","_componentWriter","_logger","_scope","_laneId","_scopeComponentsImporter","_component","_install","_componentId","_scopeNotFoundOrDenied","_graph","_legacy2","_bitError","_import","_importer","_fetchCmd","_importComponents","_lister","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ImporterMain","constructor","workspace","depResolver","graph","scope","componentWriter","envs","logger","lister","import","importOptions","packageManagerArgs","OutsideWorkspaceError","consumer","ids","objectsOnly","isOnLane","currentRemoteLane","getCurrentRemoteLane","lanes","laneId","toLaneId","remoteLane","currentLaneId","getCurrentLaneId","importComponents","createImportComponents","results","Analytics","setExtraData","importedIds","writtenComponents","removeFromWorkspaceConfig","onDestroy","importObjects","options","installNpmPackages","writeConfigFiles","importHeadArtifactsFromLane","lane","toComponentIds","throwIfMissing","laneComps","legacyScope","getManyConsumerComponents","importAllArtifactsFromLane","err","error","id","toString","importCurrentObjects","importObjectsFromMainIfExist","cache","scopeImporter","importWithoutDeps","ComponentIdList","fromArray","includeVersionHistory","ignoreMissingHead","fetchLaneComponents","includeUpdateDependents","toComponentIdsIncludeUpdateDependents","importMany","reason","mergeLane","sources","isRemoteLaneEqualsToMergedLane","isEqual","saveLane","saveLaneHistory","laneHistoryMsg","fetch","components","fromOriginalScope","allHistory","BitError","setStatusLine","lanesToFetch","getLanes","shouldFetchFromMain","includes","DEFAULT_LANE","fetchLanes","verbose","writeConfig","override","importDetails","remoteLaneIds","map","trackLane","getRemoteTrackedDataByLocalLane","LaneId","from","remoteScope","parse","objects","remoteLanes","getAllRemoteLaneIds","scopeComponentImporter","ScopeComponentsImporter","getInstance","importLanes","InvalidScopeName","ScopeNotFoundOrDenied","LaneNotFound","InvalidScopeNameFromRemote","clearStatusLine","console","message","ImportComponents","resultFromMain","importedDeps","resultsPerLane","pMapSeries","name","isLaneFromRemote","consoleSuccess","reduce","acc","curr","importLaneObject","persistIfNotExists","includeLaneHistory","laneObject","exists","loadLane","hasChanged","importObjectsByHashes","hashes","groupByScope","importManyObjects","component","importedPackageNames","getImportedPackagesNames","isRemoved","removeFromRootPolicy","persistConfig","componentIdToPackageName","provider","cli","install","loggerMain","createLogger","ImporterAspect","importerMain","registerPreInstall","opts","registerPreLink","fetchObject","register","ImportCmd","FetchCmd","exports","CLIAspect","WorkspaceAspect","DependencyResolverAspect","GraphAspect","ScopeAspect","ComponentWriterAspect","InstallAspect","EnvsAspect","LoggerAspect","ListerAspect","MainRuntime","addRuntime"],"sources":["importer.main.runtime.ts"],"sourcesContent":["import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport { DependencyResolverAspect, DependencyResolverMain } from '@teambit/dependency-resolver';\nimport { WorkspaceAspect, OutsideWorkspaceError, Workspace } from '@teambit/workspace';\nimport { Analytics } from '@teambit/legacy.analytics';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component';\nimport { componentIdToPackageName } from '@teambit/pkg.modules.component-package-name';\nimport { InvalidScopeName, InvalidScopeNameFromRemote } from '@teambit/legacy-bit-id';\nimport pMapSeries from 'p-map-series';\nimport { EnvsAspect, EnvsMain } from '@teambit/envs';\nimport { ComponentWriterAspect, ComponentWriterMain } from '@teambit/component-writer';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { ScopeAspect, ScopeMain } from '@teambit/scope';\nimport { DEFAULT_LANE, LaneId } from '@teambit/lane-id';\nimport ScopeComponentsImporter from '@teambit/legacy/dist/scope/component-ops/scope-components-importer';\nimport { importAllArtifactsFromLane } from '@teambit/component.sources';\nimport { InstallAspect, InstallMain } from '@teambit/install';\nimport { ComponentIdList, ComponentID } from '@teambit/component-id';\nimport { Lane } from '@teambit/legacy/dist/scope/models';\nimport { ScopeNotFoundOrDenied } from '@teambit/legacy/dist/remotes/exceptions/scope-not-found-or-denied';\nimport { GraphAspect, GraphMain } from '@teambit/graph';\nimport { LaneNotFound } from '@teambit/legacy.scope-api';\nimport { BitError } from '@teambit/bit-error';\nimport { ImportCmd } from './import.cmd';\nimport { ImporterAspect } from './importer.aspect';\nimport { FetchCmd } from './fetch-cmd';\nimport ImportComponents, { ImportOptions, ImportResult } from './import-components';\nimport { ListerAspect, ListerMain } from '@teambit/lister';\n\nexport class ImporterMain {\n constructor(\n private workspace: Workspace,\n private depResolver: DependencyResolverMain,\n private graph: GraphMain,\n private scope: ScopeMain,\n private componentWriter: ComponentWriterMain,\n private envs: EnvsMain,\n readonly logger: Logger,\n private lister: ListerMain\n ) {}\n\n async import(importOptions: ImportOptions, packageManagerArgs: string[] = []): Promise<ImportResult> {\n if (!this.workspace) throw new OutsideWorkspaceError();\n const consumer = this.workspace.consumer;\n consumer.packageManagerArgs = packageManagerArgs;\n if (!importOptions.ids.length) {\n importOptions.objectsOnly = true;\n }\n if (this.workspace.consumer.isOnLane()) {\n const currentRemoteLane = await this.workspace.getCurrentRemoteLane();\n if (currentRemoteLane) {\n importOptions.lanes = { laneId: currentRemoteLane.toLaneId(), remoteLane: currentRemoteLane };\n } else if (!importOptions.ids.length) {\n // this is probably a local lane that was never exported.\n // although no need to fetch from the lane, still, the import is needed for main (which are available on this\n // local lane)\n const currentLaneId = this.workspace.getCurrentLaneId();\n importOptions.lanes = { laneId: currentLaneId };\n }\n }\n const importComponents = this.createImportComponents(importOptions);\n const results = await importComponents.importComponents();\n Analytics.setExtraData('num_components', results.importedIds.length);\n if (results.writtenComponents && results.writtenComponents.length) {\n await this.removeFromWorkspaceConfig(results.writtenComponents);\n }\n await consumer.onDestroy('import');\n return results;\n }\n\n /**\n * fetch objects according to the criteria set by `options` param.\n * to fetch current objects according to the current lane or main, use `this.importCurrentObjects()`.\n */\n async importObjects(options: Partial<ImportOptions> = {}): Promise<ImportResult> {\n const importOptions: ImportOptions = {\n ...options,\n objectsOnly: true,\n ids: options.ids || [],\n installNpmPackages: false,\n writeConfigFiles: false,\n };\n const importComponents = this.createImportComponents(importOptions);\n return importComponents.importComponents();\n }\n\n /**\n * given a lane object, load all components by their head on the lane, find the artifacts refs and import them from\n * the lane scope\n */\n async importHeadArtifactsFromLane(lane: Lane, ids: ComponentID[] = lane.toComponentIds(), throwIfMissing = false) {\n const laneComps = await this.scope.legacyScope.getManyConsumerComponents(ids);\n try {\n await importAllArtifactsFromLane(this.scope.legacyScope, laneComps, lane);\n } catch (err) {\n this.logger.error(`failed fetching artifacts for lane ${lane.id.toString()}`, err);\n if (throwIfMissing) throw err;\n }\n }\n\n /**\n * if on main, fetch main objects, if on lane, fetch lane objects.\n */\n async importCurrentObjects(): Promise<ImportResult> {\n if (!this.workspace) throw new OutsideWorkspaceError();\n const importOptions: ImportOptions = {\n ids: [],\n objectsOnly: true,\n installNpmPackages: false,\n writeConfigFiles: false,\n };\n const currentRemoteLane = await this.workspace.getCurrentRemoteLane();\n if (currentRemoteLane) {\n importOptions.lanes = { laneId: currentRemoteLane.toLaneId(), remoteLane: currentRemoteLane };\n }\n const importComponents = this.createImportComponents(importOptions);\n return importComponents.importComponents();\n }\n\n async importObjectsFromMainIfExist(ids: ComponentID[], { cache } = { cache: false }) {\n await this.scope.legacyScope.scopeImporter.importWithoutDeps(ComponentIdList.fromArray(ids), {\n cache,\n includeVersionHistory: true,\n ignoreMissingHead: true,\n });\n }\n\n /**\n * fetch lane's components and save them in the local scope.\n * once done, merge the lane object and save it as well.\n */\n async fetchLaneComponents(lane: Lane, includeUpdateDependents = false) {\n const ids = includeUpdateDependents ? lane.toComponentIdsIncludeUpdateDependents() : lane.toComponentIds();\n await this.scope.legacyScope.scopeImporter.importMany({\n ids,\n lane,\n reason: `for fetching lane ${lane.id()}`,\n includeUpdateDependents,\n });\n const { mergeLane } = await this.scope.legacyScope.sources.mergeLane(lane, true);\n const isRemoteLaneEqualsToMergedLane = lane.isEqual(mergeLane);\n await this.scope.legacyScope.lanes.saveLane(mergeLane, {\n saveLaneHistory: !isRemoteLaneEqualsToMergedLane,\n laneHistoryMsg: 'fetch (merge from remote)',\n });\n }\n\n async fetch(ids: string[], lanes: boolean, components: boolean, fromOriginalScope: boolean, allHistory = false) {\n if (!lanes && !components) {\n throw new BitError(\n `please provide the type of objects you would like to pull, the options are --components and --lanes`\n );\n }\n this.logger.setStatusLine('fetching objects...');\n if (!this.workspace) throw new OutsideWorkspaceError();\n const consumer = this.workspace.consumer;\n\n if (lanes) {\n const lanesToFetch = await getLanes(this.logger);\n const shouldFetchFromMain = !ids.length || ids.includes(DEFAULT_LANE);\n return this.fetchLanes(lanesToFetch, shouldFetchFromMain, { allHistory });\n }\n\n const importOptions: ImportOptions = {\n ids,\n objectsOnly: true,\n allHistory,\n verbose: false,\n writeConfig: false,\n override: false,\n installNpmPackages: false,\n writeConfigFiles: false,\n fromOriginalScope,\n };\n\n const importComponents = this.createImportComponents(importOptions);\n const { importedIds, importDetails } = await importComponents.importComponents();\n Analytics.setExtraData('num_components', importedIds.length);\n await consumer.onDestroy('import');\n return { importedIds, importDetails };\n\n async function getLanes(logger: Logger): Promise<Lane[]> {\n let remoteLaneIds: LaneId[] = [];\n if (ids.length) {\n remoteLaneIds = ids\n .filter((id) => id !== DEFAULT_LANE)\n .map((id) => {\n const trackLane = consumer.scope.lanes.getRemoteTrackedDataByLocalLane(id);\n if (trackLane) return LaneId.from(trackLane.remoteLane, trackLane.remoteScope);\n return LaneId.parse(id);\n });\n } else {\n remoteLaneIds = await consumer.scope.objects.remoteLanes.getAllRemoteLaneIds();\n }\n const scopeComponentImporter = ScopeComponentsImporter.getInstance(consumer.scope);\n try {\n return await scopeComponentImporter.importLanes(remoteLaneIds);\n } catch (err: any) {\n if (\n err instanceof InvalidScopeName ||\n err instanceof ScopeNotFoundOrDenied ||\n err instanceof LaneNotFound ||\n err instanceof InvalidScopeNameFromRemote\n ) {\n // the lane could be a local lane so no need to throw an error in such case\n logger.clearStatusLine();\n logger.console(`unable to get lane's data from a remote due to an error:\\n${err.message}`, 'warn', 'yellow');\n } else {\n throw err;\n }\n }\n\n return [];\n }\n }\n\n private createImportComponents(importOptions: ImportOptions) {\n return new ImportComponents(\n this.workspace,\n this.graph,\n this.componentWriter,\n this.envs,\n this.logger,\n this.lister,\n importOptions\n );\n }\n\n async fetchLanes(\n lanes: Lane[],\n shouldFetchFromMain?: boolean,\n options: Partial<ImportOptions> = {}\n ): Promise<ImportResult> {\n const resultFromMain = shouldFetchFromMain\n ? await this.importObjects(options)\n : { importedIds: [], importDetails: [], importedDeps: [] };\n const resultsPerLane = await pMapSeries(lanes, async (lane) => {\n this.logger.setStatusLine(`fetching lane ${lane.name}`);\n options.lanes = { laneId: lane.toLaneId(), remoteLane: lane };\n options.isLaneFromRemote = true;\n const results = await this.importObjects(options);\n this.logger.consoleSuccess();\n return results;\n });\n resultsPerLane.push(resultFromMain);\n const results = resultsPerLane.reduce((acc, curr) => {\n acc.importedIds.push(...curr.importedIds);\n acc.importDetails.push(...curr.importDetails);\n return acc;\n });\n return results;\n }\n\n /**\n * get a Lane object from the remote.\n * `persistIfNotExists` saves the object in the local scope only if the lane is not there yet.\n * otherwise, it needs some merging mechanism, which is done differently whether it's export or import.\n * see `sources.mergeLane()` for export and `import-components._saveLaneDataIfNeeded()` for import.\n * in this case, because we only bring the lane object and not the components, it's not easy to do the merge.\n */\n async importLaneObject(laneId: LaneId, persistIfNotExists = true, includeLaneHistory = false): Promise<Lane> {\n const legacyScope = this.scope.legacyScope;\n const results = await legacyScope.scopeImporter.importLanes([laneId], includeLaneHistory);\n const laneObject = results[0];\n if (!laneObject) throw new LaneNotFound(laneId.scope, laneId.name);\n\n if (persistIfNotExists) {\n const exists = await legacyScope.loadLane(laneId);\n if (!exists) {\n laneObject.hasChanged = true;\n await legacyScope.lanes.saveLane(laneObject, { saveLaneHistory: false });\n }\n }\n\n return laneObject;\n }\n\n async importObjectsByHashes(hashes: string[], scope: string, reason?: string) {\n const groupByScope = { [scope]: hashes };\n const results = await this.scope.legacyScope.scopeImporter.importManyObjects(groupByScope, reason);\n return results;\n }\n\n private async removeFromWorkspaceConfig(component: ConsumerComponent[]) {\n const importedPackageNames = this.getImportedPackagesNames(component);\n const isRemoved = this.depResolver.removeFromRootPolicy(importedPackageNames);\n if (isRemoved) await this.depResolver.persistConfig('import (remove package)');\n }\n\n private getImportedPackagesNames(components: ConsumerComponent[]): string[] {\n return components.map((component) => componentIdToPackageName(component));\n }\n\n static slots = [];\n static dependencies = [\n CLIAspect,\n WorkspaceAspect,\n DependencyResolverAspect,\n GraphAspect,\n ScopeAspect,\n ComponentWriterAspect,\n InstallAspect,\n EnvsAspect,\n LoggerAspect,\n ListerAspect,\n ];\n static runtime = MainRuntime;\n static async provider([\n cli,\n workspace,\n depResolver,\n graph,\n scope,\n componentWriter,\n install,\n envs,\n loggerMain,\n lister,\n ]: [\n CLIMain,\n Workspace,\n DependencyResolverMain,\n GraphMain,\n ScopeMain,\n ComponentWriterMain,\n InstallMain,\n EnvsMain,\n LoggerMain,\n ListerMain,\n ]) {\n const logger = loggerMain.createLogger(ImporterAspect.id);\n const importerMain = new ImporterMain(workspace, depResolver, graph, scope, componentWriter, envs, logger, lister);\n install.registerPreInstall(async (opts) => {\n if (!opts?.import) return;\n logger.setStatusLine('importing missing objects');\n await importerMain.importCurrentObjects();\n // logger.consoleSuccess();\n });\n install.registerPreLink(async (opts) => {\n if (opts?.fetchObject) await importerMain.importCurrentObjects();\n });\n cli.register(new ImportCmd(importerMain), new FetchCmd(importerMain));\n return importerMain;\n }\n}\n\nImporterAspect.addRuntime(ImporterMain);\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.scope_importer@1.0.470/dist/importer.composition.js';
2
- import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.scope_importer@1.0.470/dist/importer.docs.mdx';
1
+ import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.scope_importer@1.0.472/dist/importer.composition.js';
2
+ import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.scope_importer@1.0.472/dist/importer.docs.mdx';
3
3
 
4
4
  export const compositions = [compositions_0];
5
5
  export const overview = [overview_0];