@teambit/workspace 0.0.1111 → 0.0.1112
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{preview-1689823719636.js → preview-1689909446382.js} +2 -2
- package/dist/workspace-component/workspace-component-loader.d.ts +1 -1
- package/dist/workspace-component/workspace-component-loader.js +5 -4
- package/dist/workspace-component/workspace-component-loader.js.map +1 -1
- package/dist/workspace.provider.js +7 -6
- package/dist/workspace.provider.js.map +1 -1
- package/package-tar/teambit-workspace-0.0.1112.tgz +0 -0
- package/package.json +36 -36
- package/workspace-component/workspace-component-loader.ts +9 -4
- package/package-tar/teambit-workspace-0.0.1111.tgz +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.workspace_workspace@0.0.
|
|
2
|
-
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.workspace_workspace@0.0.
|
|
1
|
+
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.workspace_workspace@0.0.1112/dist/workspace.composition.js';
|
|
2
|
+
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.workspace_workspace@0.0.1112/dist/workspace.docs.mdx';
|
|
3
3
|
|
|
4
4
|
export const compositions = [compositions_0];
|
|
5
5
|
export const overview = [overview_0];
|
|
@@ -29,7 +29,7 @@ export declare class WorkspaceComponentLoader {
|
|
|
29
29
|
* legacy-id, the component is the cache has the old id.
|
|
30
30
|
*/
|
|
31
31
|
private getFromCache;
|
|
32
|
-
getConsumerComponent(id: ComponentID): Promise<ConsumerComponent | undefined>;
|
|
32
|
+
getConsumerComponent(id: ComponentID, loadOpts?: ComponentLoadOptions): Promise<ConsumerComponent | undefined>;
|
|
33
33
|
private isComponentNotExistsError;
|
|
34
34
|
private executeLoadSlot;
|
|
35
35
|
private newComponentFromState;
|
|
@@ -202,13 +202,13 @@ class WorkspaceComponentLoader {
|
|
|
202
202
|
return errors;
|
|
203
203
|
}
|
|
204
204
|
async get(componentId, legacyComponent, useCache = true, storeInCache = true, loadOpts) {
|
|
205
|
-
const bitIdWithVersion = (0, _utils().getLatestVersionNumber)(this.workspace.consumer.
|
|
205
|
+
const bitIdWithVersion = (0, _utils().getLatestVersionNumber)(this.workspace.consumer.bitmapIdsFromCurrentLaneIncludeRemoved, componentId._legacy);
|
|
206
206
|
const id = bitIdWithVersion.version ? componentId.changeVersion(bitIdWithVersion.version) : componentId;
|
|
207
207
|
const fromCache = this.getFromCache(id, loadOpts);
|
|
208
208
|
if (fromCache && useCache) {
|
|
209
209
|
return fromCache;
|
|
210
210
|
}
|
|
211
|
-
const consumerComponent = legacyComponent || (await this.getConsumerComponent(id));
|
|
211
|
+
const consumerComponent = legacyComponent || (await this.getConsumerComponent(id, loadOpts));
|
|
212
212
|
// in case of out-of-sync, the id may changed during the load process
|
|
213
213
|
const updatedId = consumerComponent ? _component().ComponentID.fromLegacy(consumerComponent.id, id.scope) : id;
|
|
214
214
|
const component = await this.loadOne(updatedId, consumerComponent, loadOpts);
|
|
@@ -298,12 +298,13 @@ class WorkspaceComponentLoader {
|
|
|
298
298
|
}
|
|
299
299
|
return undefined;
|
|
300
300
|
}
|
|
301
|
-
async getConsumerComponent(id) {
|
|
301
|
+
async getConsumerComponent(id, loadOpts = {}) {
|
|
302
|
+
loadOpts.originatedFromHarmony = true;
|
|
302
303
|
try {
|
|
303
304
|
const {
|
|
304
305
|
components,
|
|
305
306
|
removedComponents
|
|
306
|
-
} = await this.workspace.consumer.loadComponents(_bitId().BitIds.fromArray([id._legacy]), true);
|
|
307
|
+
} = await this.workspace.consumer.loadComponents(_bitId().BitIds.fromArray([id._legacy]), true, loadOpts);
|
|
307
308
|
return (components === null || components === void 0 ? void 0 : components[0]) || (removedComponents === null || removedComponents === void 0 ? void 0 : removedComponents[0]);
|
|
308
309
|
} catch (err) {
|
|
309
310
|
// don't return undefined for any error. otherwise, if the component is invalid (e.g. main
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["WorkspaceComponentLoader","constructor","workspace","logger","dependencyResolver","envs","componentsCache","createInMemoryCache","maxSize","getMaxSizeForComponents","getMany","ids","loadOpts","idsWithoutEmpty","compact","errors","longProcessLogger","createLongProcessLogger","length","componentsP","mapSeries","id","logProgress","toString","get","undefined","catch","err","isComponentNotExistsError","push","components","forEach","console","warn","filteredComponents","end","getInvalid","consumer","loadComponent","_legacy","ConsumerComponent","isComponentInvalidByErrorType","componentId","legacyComponent","useCache","storeInCache","bitIdWithVersion","getLatestVersionNumber","bitmapIdsFromCurrentLane","version","changeVersion","fromCache","getFromCache","consumerComponent","getConsumerComponent","updatedId","ComponentID","fromLegacy","scope","component","loadOne","addMultipleEnvsIssueIfNeeded","saveInCache","getIfExist","getAllEnvsConfiguredOnComponent","envIds","uniq","map","env","state","issues","getOrCreate","IssuesClasses","MultipleEnvs","data","clearCache","deleteAll","clearComponentCache","idStr","cacheKey","keys","startsWith","delete","componentFromScope","MissingBitMapComponent","extensions","componentExtensions","some","MergeConfigConflict","MergeConfigHasConflict","extensionsFromConsumerComponent","ExtensionDataList","extensionDataList","mergeConfigs","filterRemovedExtensions","State","Config","mainFile","createAspectList","ComponentFS","fromVinyls","files","dependencies","workspaceComponent","WorkspaceComponent","head","tags","updatedComp","executeLoadSlot","newComponentFromState","createComponentCacheKey","set","isEqual","removedComponents","loadComponents","BitIds","fromArray","debug","name","message","ComponentNotFound","ComponentNotFoundInPath","_consumer","removed","envsData","calcDescriptor","policy","mergeVariantPolicies","config","dependenciesList","extractDepsFromLegacy","depResolverData","packageName","calcPackageName","serialize","Promise","all","upsertExtensionData","EnvsAspect","DependencyResolverAspect","aspectListWithEnvsAndDeps","aspects","entries","onComponentLoadSlot","toArray","promises","extension","onLoad","updatedAspectList","TagMap","existingExtension","findExtension","Object","assign","getDataEntry","ExtensionDataEntry","JSON","stringify","sortKeys","obj","fromPairs","sort","k1","k2","localeCompare"],"sources":["workspace-component-loader.ts"],"sourcesContent":["import { Component, ComponentFS, ComponentID, Config, InvalidComponent, State, TagMap } from '@teambit/component';\nimport { BitId } from '@teambit/legacy-bit-id';\nimport { ExtensionDataList } from '@teambit/legacy/dist/consumer/config/extension-data';\nimport mapSeries from 'p-map-series';\nimport { compact, fromPairs, uniq } from 'lodash';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component';\nimport { MissingBitMapComponent } from '@teambit/legacy/dist/consumer/bit-map/exceptions';\nimport { getLatestVersionNumber } from '@teambit/legacy/dist/utils';\nimport { IssuesClasses } from '@teambit/component-issues';\nimport { BitIds } from '@teambit/legacy/dist/bit-id';\nimport { ComponentNotFound } from '@teambit/legacy/dist/scope/exceptions';\nimport { DependencyResolverAspect, DependencyResolverMain } from '@teambit/dependency-resolver';\nimport { Logger } from '@teambit/logger';\nimport { EnvsAspect, EnvsMain } from '@teambit/envs';\nimport { ExtensionDataEntry } from '@teambit/legacy/dist/consumer/config';\nimport { getMaxSizeForComponents, InMemoryCache } from '@teambit/legacy/dist/cache/in-memory-cache';\nimport { createInMemoryCache } from '@teambit/legacy/dist/cache/cache-factory';\nimport ComponentNotFoundInPath from '@teambit/legacy/dist/consumer/component/exceptions/component-not-found-in-path';\nimport { ComponentLoadOptions } from '@teambit/legacy/dist/consumer/component/component-loader';\nimport { Workspace } from '../workspace';\nimport { WorkspaceComponent } from './workspace-component';\nimport { MergeConfigConflict } from '../exceptions/merge-config-conflict';\n\nexport class WorkspaceComponentLoader {\n private componentsCache: InMemoryCache<Component>; // cache loaded components\n constructor(\n private workspace: Workspace,\n private logger: Logger,\n private dependencyResolver: DependencyResolverMain,\n private envs: EnvsMain\n ) {\n this.componentsCache = createInMemoryCache({ maxSize: getMaxSizeForComponents() });\n }\n\n async getMany(ids: Array<ComponentID>, loadOpts?: ComponentLoadOptions): Promise<Component[]> {\n const idsWithoutEmpty = compact(ids);\n const errors: { id: ComponentID; err: Error }[] = [];\n const longProcessLogger = this.logger.createLongProcessLogger('loading components', ids.length);\n const componentsP = mapSeries(idsWithoutEmpty, async (id: ComponentID) => {\n longProcessLogger.logProgress(id.toString());\n return this.get(id, undefined, undefined, undefined, loadOpts).catch((err) => {\n if (this.isComponentNotExistsError(err)) {\n errors.push({\n id,\n err,\n });\n return undefined;\n }\n throw err;\n });\n });\n const components = await componentsP;\n errors.forEach((err) => {\n this.logger.console(`failed loading component ${err.id.toString()}, see full error in debug.log file`);\n this.logger.warn(`failed loading component ${err.id.toString()}`, err.err);\n });\n // remove errored components\n const filteredComponents: Component[] = compact(components);\n longProcessLogger.end();\n return filteredComponents;\n }\n\n async getInvalid(ids: Array<ComponentID>): Promise<InvalidComponent[]> {\n const idsWithoutEmpty = compact(ids);\n const errors: InvalidComponent[] = [];\n const longProcessLogger = this.logger.createLongProcessLogger('loading components', ids.length);\n await mapSeries(idsWithoutEmpty, async (id: ComponentID) => {\n longProcessLogger.logProgress(id.toString());\n try {\n await this.workspace.consumer.loadComponent(id._legacy);\n } catch (err: any) {\n if (ConsumerComponent.isComponentInvalidByErrorType(err)) {\n errors.push({\n id,\n err,\n });\n return;\n }\n throw err;\n }\n });\n return errors;\n }\n\n async get(\n componentId: ComponentID,\n legacyComponent?: ConsumerComponent,\n useCache = true,\n storeInCache = true,\n loadOpts?: ComponentLoadOptions\n ): Promise<Component> {\n const bitIdWithVersion: BitId = getLatestVersionNumber(\n this.workspace.consumer.bitmapIdsFromCurrentLane,\n componentId._legacy\n );\n const id = bitIdWithVersion.version ? componentId.changeVersion(bitIdWithVersion.version) : componentId;\n const fromCache = this.getFromCache(id, loadOpts);\n if (fromCache && useCache) {\n return fromCache;\n }\n const consumerComponent = legacyComponent || (await this.getConsumerComponent(id));\n // in case of out-of-sync, the id may changed during the load process\n const updatedId = consumerComponent ? ComponentID.fromLegacy(consumerComponent.id, id.scope) : id;\n const component = await this.loadOne(updatedId, consumerComponent, loadOpts);\n if (storeInCache) {\n this.addMultipleEnvsIssueIfNeeded(component); // it's in storeInCache block, otherwise, it wasn't fully loaded\n this.saveInCache(component, loadOpts);\n }\n return component;\n }\n\n async getIfExist(componentId: ComponentID) {\n try {\n return await this.get(componentId);\n } catch (err: any) {\n if (this.isComponentNotExistsError(err)) {\n return undefined;\n }\n throw err;\n }\n }\n\n private addMultipleEnvsIssueIfNeeded(component: Component) {\n const envs = this.envs.getAllEnvsConfiguredOnComponent(component);\n const envIds = uniq(envs.map((env) => env.id));\n if (envIds.length < 2) {\n return;\n }\n component.state.issues.getOrCreate(IssuesClasses.MultipleEnvs).data = envIds;\n }\n\n clearCache() {\n this.componentsCache.deleteAll();\n }\n clearComponentCache(id: ComponentID) {\n const idStr = id.toString();\n for (const cacheKey of this.componentsCache.keys()) {\n if (cacheKey === idStr || cacheKey.startsWith(`${idStr}:`)) {\n this.componentsCache.delete(cacheKey);\n }\n }\n }\n\n private async loadOne(id: ComponentID, consumerComponent?: ConsumerComponent, loadOpts?: ComponentLoadOptions) {\n const componentFromScope = await this.workspace.scope.get(id);\n if (!consumerComponent) {\n if (!componentFromScope) throw new MissingBitMapComponent(id.toString());\n return componentFromScope;\n }\n const { extensions, errors } = await this.workspace.componentExtensions(id, componentFromScope);\n if (errors?.some((err) => err instanceof MergeConfigConflict)) {\n consumerComponent.issues.getOrCreate(IssuesClasses.MergeConfigHasConflict).data = true;\n }\n\n const extensionsFromConsumerComponent = consumerComponent.extensions || new ExtensionDataList();\n // Merge extensions added by the legacy code in memory (for example data of dependency resolver)\n const extensionDataList = ExtensionDataList.mergeConfigs([\n extensionsFromConsumerComponent,\n extensions,\n ]).filterRemovedExtensions();\n\n // temporarily mutate consumer component extensions until we remove all direct access from legacy to extensions data\n // TODO: remove this once we remove all direct access from legacy code to extensions data\n consumerComponent.extensions = extensionDataList;\n\n const state = new State(\n new Config(consumerComponent.mainFile, extensionDataList),\n await this.workspace.createAspectList(extensionDataList),\n ComponentFS.fromVinyls(consumerComponent.files),\n consumerComponent.dependencies,\n consumerComponent\n );\n if (componentFromScope) {\n // Removed by @gilad. do not mutate the component from the scope\n // componentFromScope.state = state;\n // const workspaceComponent = WorkspaceComponent.fromComponent(componentFromScope, this.workspace);\n const workspaceComponent = new WorkspaceComponent(\n componentFromScope.id,\n componentFromScope.head,\n state,\n componentFromScope.tags,\n this.workspace\n );\n const updatedComp = await this.executeLoadSlot(workspaceComponent, loadOpts);\n return updatedComp;\n }\n return this.executeLoadSlot(this.newComponentFromState(id, state), loadOpts);\n }\n\n private saveInCache(component: Component, loadOpts?: ComponentLoadOptions): void {\n const cacheKey = createComponentCacheKey(component.id, loadOpts);\n this.componentsCache.set(cacheKey, component);\n }\n\n /**\n * make sure that not only the id-str match, but also the legacy-id.\n * this is needed because the ComponentID.toString() is the same whether or not the legacy-id has\n * scope-name, as it includes the defaultScope if the scope is empty.\n * as a result, when out-of-sync is happening and the id is changed to include scope-name in the\n * legacy-id, the component is the cache has the old id.\n */\n private getFromCache(id: ComponentID, loadOpts?: ComponentLoadOptions): Component | undefined {\n const cacheKey = createComponentCacheKey(id, loadOpts);\n const fromCache = this.componentsCache.get(cacheKey);\n if (fromCache && fromCache.id._legacy.isEqual(id._legacy)) {\n return fromCache;\n }\n return undefined;\n }\n\n async getConsumerComponent(id: ComponentID): Promise<ConsumerComponent | undefined> {\n try {\n const { components, removedComponents } = await this.workspace.consumer.loadComponents(\n BitIds.fromArray([id._legacy]),\n true\n );\n return components?.[0] || removedComponents?.[0];\n } catch (err: any) {\n // don't return undefined for any error. otherwise, if the component is invalid (e.g. main\n // file is missing) it returns the model component later unexpectedly, or if it's new, it\n // shows MissingBitMapComponent error incorrectly.\n if (this.isComponentNotExistsError(err)) {\n this.logger.debug(\n `failed loading component \"${id.toString()}\" from the workspace due to \"${err.name}\" error\\n${err.message}`\n );\n return undefined;\n }\n throw err;\n }\n }\n\n private isComponentNotExistsError(err: Error): boolean {\n return (\n err instanceof ComponentNotFound ||\n err instanceof MissingBitMapComponent ||\n err instanceof ComponentNotFoundInPath\n );\n }\n\n private async executeLoadSlot(component: Component, loadOpts?: ComponentLoadOptions) {\n if (component.state._consumer.removed) {\n // if it was soft-removed now, the component is not in the FS. loading aspects such as composition ends up with\n // errors as they try to read component files from the filesystem.\n return component;\n }\n\n // Special load events which runs from the workspace but should run from the correct aspect\n // TODO: remove this once those extensions dependent on workspace\n const envsData = await this.envs.calcDescriptor(component);\n\n // Move to deps resolver main runtime once we switch ws<> deps resolver direction\n const policy = await this.dependencyResolver.mergeVariantPolicies(\n component.config.extensions,\n component.id._legacy,\n component.state._consumer.files\n );\n const dependenciesList = await this.dependencyResolver.extractDepsFromLegacy(component, policy);\n\n const depResolverData = {\n packageName: this.dependencyResolver.calcPackageName(component),\n dependencies: dependenciesList.serialize(),\n policy: policy.serialize(),\n };\n\n // Make sure we are adding the envs / deps data first because other on load events might depend on it\n await Promise.all([\n this.upsertExtensionData(component, EnvsAspect.id, envsData),\n this.upsertExtensionData(component, DependencyResolverAspect.id, depResolverData),\n ]);\n\n // We are updating the component state with the envs and deps data here, so in case we have other slots that depend on this data\n // they will be able to get it, as it's very common use case that during on load someone want to access to the component env for example\n const aspectListWithEnvsAndDeps = await this.workspace.createAspectList(component.state.config.extensions);\n component.state.aspects = aspectListWithEnvsAndDeps;\n\n const entries = this.workspace.onComponentLoadSlot.toArray();\n const promises = entries.map(async ([extension, onLoad]) => {\n const data = await onLoad(component, loadOpts);\n return this.upsertExtensionData(component, extension, data);\n });\n\n await Promise.all(promises);\n\n // Update the aspect list to have changes happened during the on load slot (new data added above)\n const updatedAspectList = await this.workspace.createAspectList(component.state.config.extensions);\n component.state.aspects = updatedAspectList;\n return component;\n }\n\n private newComponentFromState(id: ComponentID, state: State): Component {\n return new WorkspaceComponent(id, null, state, new TagMap(), this.workspace);\n }\n\n private async upsertExtensionData(component: Component, extension: string, data: any) {\n if (!data) return;\n const existingExtension = component.state.config.extensions.findExtension(extension);\n if (existingExtension) {\n // Only merge top level of extension data\n Object.assign(existingExtension.data, data);\n return;\n }\n component.state.config.extensions.push(await this.getDataEntry(extension, data));\n }\n\n private async getDataEntry(extension: string, data: { [key: string]: any }): Promise<ExtensionDataEntry> {\n // TODO: @gilad we need to refactor the extension data entry api.\n return new ExtensionDataEntry(undefined, undefined, extension, undefined, data);\n }\n}\n\nfunction createComponentCacheKey(id: ComponentID, loadOpts?: ComponentLoadOptions): string {\n return `${id.toString()}:${JSON.stringify(sortKeys(loadOpts ?? {}))}`;\n}\n\nfunction sortKeys(obj: Object) {\n return fromPairs(Object.entries(obj).sort(([k1], [k2]) => k1.localeCompare(k2)));\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AAEA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AAEA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AAGA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AAEO,MAAMA,wBAAwB,CAAC;EACe;EACnDC,WAAW,CACDC,SAAoB,EACpBC,MAAc,EACdC,kBAA0C,EAC1CC,IAAc,EACtB;IAAA,KAJQH,SAAoB,GAApBA,SAAoB;IAAA,KACpBC,MAAc,GAAdA,MAAc;IAAA,KACdC,kBAA0C,GAA1CA,kBAA0C;IAAA,KAC1CC,IAAc,GAAdA,IAAc;IAAA;IAEtB,IAAI,CAACC,eAAe,GAAG,IAAAC,mCAAmB,EAAC;MAAEC,OAAO,EAAE,IAAAC,wCAAuB;IAAG,CAAC,CAAC;EACpF;EAEA,MAAMC,OAAO,CAACC,GAAuB,EAAEC,QAA+B,EAAwB;IAC5F,MAAMC,eAAe,GAAG,IAAAC,iBAAO,EAACH,GAAG,CAAC;IACpC,MAAMI,MAAyC,GAAG,EAAE;IACpD,MAAMC,iBAAiB,GAAG,IAAI,CAACb,MAAM,CAACc,uBAAuB,CAAC,oBAAoB,EAAEN,GAAG,CAACO,MAAM,CAAC;IAC/F,MAAMC,WAAW,GAAG,IAAAC,qBAAS,EAACP,eAAe,EAAE,MAAOQ,EAAe,IAAK;MACxEL,iBAAiB,CAACM,WAAW,CAACD,EAAE,CAACE,QAAQ,EAAE,CAAC;MAC5C,OAAO,IAAI,CAACC,GAAG,CAACH,EAAE,EAAEI,SAAS,EAAEA,SAAS,EAAEA,SAAS,EAAEb,QAAQ,CAAC,CAACc,KAAK,CAAEC,GAAG,IAAK;QAC5E,IAAI,IAAI,CAACC,yBAAyB,CAACD,GAAG,CAAC,EAAE;UACvCZ,MAAM,CAACc,IAAI,CAAC;YACVR,EAAE;YACFM;UACF,CAAC,CAAC;UACF,OAAOF,SAAS;QAClB;QACA,MAAME,GAAG;MACX,CAAC,CAAC;IACJ,CAAC,CAAC;IACF,MAAMG,UAAU,GAAG,MAAMX,WAAW;IACpCJ,MAAM,CAACgB,OAAO,CAAEJ,GAAG,IAAK;MACtB,IAAI,CAACxB,MAAM,CAAC6B,OAAO,CAAE,4BAA2BL,GAAG,CAACN,EAAE,CAACE,QAAQ,EAAG,oCAAmC,CAAC;MACtG,IAAI,CAACpB,MAAM,CAAC8B,IAAI,CAAE,4BAA2BN,GAAG,CAACN,EAAE,CAACE,QAAQ,EAAG,EAAC,EAAEI,GAAG,CAACA,GAAG,CAAC;IAC5E,CAAC,CAAC;IACF;IACA,MAAMO,kBAA+B,GAAG,IAAApB,iBAAO,EAACgB,UAAU,CAAC;IAC3Dd,iBAAiB,CAACmB,GAAG,EAAE;IACvB,OAAOD,kBAAkB;EAC3B;EAEA,MAAME,UAAU,CAACzB,GAAuB,EAA+B;IACrE,MAAME,eAAe,GAAG,IAAAC,iBAAO,EAACH,GAAG,CAAC;IACpC,MAAMI,MAA0B,GAAG,EAAE;IACrC,MAAMC,iBAAiB,GAAG,IAAI,CAACb,MAAM,CAACc,uBAAuB,CAAC,oBAAoB,EAAEN,GAAG,CAACO,MAAM,CAAC;IAC/F,MAAM,IAAAE,qBAAS,EAACP,eAAe,EAAE,MAAOQ,EAAe,IAAK;MAC1DL,iBAAiB,CAACM,WAAW,CAACD,EAAE,CAACE,QAAQ,EAAE,CAAC;MAC5C,IAAI;QACF,MAAM,IAAI,CAACrB,SAAS,CAACmC,QAAQ,CAACC,aAAa,CAACjB,EAAE,CAACkB,OAAO,CAAC;MACzD,CAAC,CAAC,OAAOZ,GAAQ,EAAE;QACjB,IAAIa,qBAAiB,CAACC,6BAA6B,CAACd,GAAG,CAAC,EAAE;UACxDZ,MAAM,CAACc,IAAI,CAAC;YACVR,EAAE;YACFM;UACF,CAAC,CAAC;UACF;QACF;QACA,MAAMA,GAAG;MACX;IACF,CAAC,CAAC;IACF,OAAOZ,MAAM;EACf;EAEA,MAAMS,GAAG,CACPkB,WAAwB,EACxBC,eAAmC,EACnCC,QAAQ,GAAG,IAAI,EACfC,YAAY,GAAG,IAAI,EACnBjC,QAA+B,EACX;IACpB,MAAMkC,gBAAuB,GAAG,IAAAC,+BAAsB,EACpD,IAAI,CAAC7C,SAAS,CAACmC,QAAQ,CAACW,wBAAwB,EAChDN,WAAW,CAACH,OAAO,CACpB;IACD,MAAMlB,EAAE,GAAGyB,gBAAgB,CAACG,OAAO,GAAGP,WAAW,CAACQ,aAAa,CAACJ,gBAAgB,CAACG,OAAO,CAAC,GAAGP,WAAW;IACvG,MAAMS,SAAS,GAAG,IAAI,CAACC,YAAY,CAAC/B,EAAE,EAAET,QAAQ,CAAC;IACjD,IAAIuC,SAAS,IAAIP,QAAQ,EAAE;MACzB,OAAOO,SAAS;IAClB;IACA,MAAME,iBAAiB,GAAGV,eAAe,KAAK,MAAM,IAAI,CAACW,oBAAoB,CAACjC,EAAE,CAAC,CAAC;IAClF;IACA,MAAMkC,SAAS,GAAGF,iBAAiB,GAAGG,wBAAW,CAACC,UAAU,CAACJ,iBAAiB,CAAChC,EAAE,EAAEA,EAAE,CAACqC,KAAK,CAAC,GAAGrC,EAAE;IACjG,MAAMsC,SAAS,GAAG,MAAM,IAAI,CAACC,OAAO,CAACL,SAAS,EAAEF,iBAAiB,EAAEzC,QAAQ,CAAC;IAC5E,IAAIiC,YAAY,EAAE;MAChB,IAAI,CAACgB,4BAA4B,CAACF,SAAS,CAAC,CAAC,CAAC;MAC9C,IAAI,CAACG,WAAW,CAACH,SAAS,EAAE/C,QAAQ,CAAC;IACvC;IACA,OAAO+C,SAAS;EAClB;EAEA,MAAMI,UAAU,CAACrB,WAAwB,EAAE;IACzC,IAAI;MACF,OAAO,MAAM,IAAI,CAAClB,GAAG,CAACkB,WAAW,CAAC;IACpC,CAAC,CAAC,OAAOf,GAAQ,EAAE;MACjB,IAAI,IAAI,CAACC,yBAAyB,CAACD,GAAG,CAAC,EAAE;QACvC,OAAOF,SAAS;MAClB;MACA,MAAME,GAAG;IACX;EACF;EAEQkC,4BAA4B,CAACF,SAAoB,EAAE;IACzD,MAAMtD,IAAI,GAAG,IAAI,CAACA,IAAI,CAAC2D,+BAA+B,CAACL,SAAS,CAAC;IACjE,MAAMM,MAAM,GAAG,IAAAC,cAAI,EAAC7D,IAAI,CAAC8D,GAAG,CAAEC,GAAG,IAAKA,GAAG,CAAC/C,EAAE,CAAC,CAAC;IAC9C,IAAI4C,MAAM,CAAC/C,MAAM,GAAG,CAAC,EAAE;MACrB;IACF;IACAyC,SAAS,CAACU,KAAK,CAACC,MAAM,CAACC,WAAW,CAACC,gCAAa,CAACC,YAAY,CAAC,CAACC,IAAI,GAAGT,MAAM;EAC9E;EAEAU,UAAU,GAAG;IACX,IAAI,CAACrE,eAAe,CAACsE,SAAS,EAAE;EAClC;EACAC,mBAAmB,CAACxD,EAAe,EAAE;IACnC,MAAMyD,KAAK,GAAGzD,EAAE,CAACE,QAAQ,EAAE;IAC3B,KAAK,MAAMwD,QAAQ,IAAI,IAAI,CAACzE,eAAe,CAAC0E,IAAI,EAAE,EAAE;MAClD,IAAID,QAAQ,KAAKD,KAAK,IAAIC,QAAQ,CAACE,UAAU,CAAE,GAAEH,KAAM,GAAE,CAAC,EAAE;QAC1D,IAAI,CAACxE,eAAe,CAAC4E,MAAM,CAACH,QAAQ,CAAC;MACvC;IACF;EACF;EAEA,MAAcnB,OAAO,CAACvC,EAAe,EAAEgC,iBAAqC,EAAEzC,QAA+B,EAAE;IAC7G,MAAMuE,kBAAkB,GAAG,MAAM,IAAI,CAACjF,SAAS,CAACwD,KAAK,CAAClC,GAAG,CAACH,EAAE,CAAC;IAC7D,IAAI,CAACgC,iBAAiB,EAAE;MACtB,IAAI,CAAC8B,kBAAkB,EAAE,MAAM,KAAIC,oCAAsB,EAAC/D,EAAE,CAACE,QAAQ,EAAE,CAAC;MACxE,OAAO4D,kBAAkB;IAC3B;IACA,MAAM;MAAEE,UAAU;MAAEtE;IAAO,CAAC,GAAG,MAAM,IAAI,CAACb,SAAS,CAACoF,mBAAmB,CAACjE,EAAE,EAAE8D,kBAAkB,CAAC;IAC/F,IAAIpE,MAAM,aAANA,MAAM,eAANA,MAAM,CAAEwE,IAAI,CAAE5D,GAAG,IAAKA,GAAG,YAAY6D,0CAAmB,CAAC,EAAE;MAC7DnC,iBAAiB,CAACiB,MAAM,CAACC,WAAW,CAACC,gCAAa,CAACiB,sBAAsB,CAAC,CAACf,IAAI,GAAG,IAAI;IACxF;IAEA,MAAMgB,+BAA+B,GAAGrC,iBAAiB,CAACgC,UAAU,IAAI,KAAIM,kCAAiB,GAAE;IAC/F;IACA,MAAMC,iBAAiB,GAAGD,kCAAiB,CAACE,YAAY,CAAC,CACvDH,+BAA+B,EAC/BL,UAAU,CACX,CAAC,CAACS,uBAAuB,EAAE;;IAE5B;IACA;IACAzC,iBAAiB,CAACgC,UAAU,GAAGO,iBAAiB;IAEhD,MAAMvB,KAAK,GAAG,KAAI0B,kBAAK,EACrB,KAAIC,mBAAM,EAAC3C,iBAAiB,CAAC4C,QAAQ,EAAEL,iBAAiB,CAAC,EACzD,MAAM,IAAI,CAAC1F,SAAS,CAACgG,gBAAgB,CAACN,iBAAiB,CAAC,EACxDO,wBAAW,CAACC,UAAU,CAAC/C,iBAAiB,CAACgD,KAAK,CAAC,EAC/ChD,iBAAiB,CAACiD,YAAY,EAC9BjD,iBAAiB,CAClB;IACD,IAAI8B,kBAAkB,EAAE;MACtB;MACA;MACA;MACA,MAAMoB,kBAAkB,GAAG,KAAIC,wCAAkB,EAC/CrB,kBAAkB,CAAC9D,EAAE,EACrB8D,kBAAkB,CAACsB,IAAI,EACvBpC,KAAK,EACLc,kBAAkB,CAACuB,IAAI,EACvB,IAAI,CAACxG,SAAS,CACf;MACD,MAAMyG,WAAW,GAAG,MAAM,IAAI,CAACC,eAAe,CAACL,kBAAkB,EAAE3F,QAAQ,CAAC;MAC5E,OAAO+F,WAAW;IACpB;IACA,OAAO,IAAI,CAACC,eAAe,CAAC,IAAI,CAACC,qBAAqB,CAACxF,EAAE,EAAEgD,KAAK,CAAC,EAAEzD,QAAQ,CAAC;EAC9E;EAEQkD,WAAW,CAACH,SAAoB,EAAE/C,QAA+B,EAAQ;IAC/E,MAAMmE,QAAQ,GAAG+B,uBAAuB,CAACnD,SAAS,CAACtC,EAAE,EAAET,QAAQ,CAAC;IAChE,IAAI,CAACN,eAAe,CAACyG,GAAG,CAAChC,QAAQ,EAAEpB,SAAS,CAAC;EAC/C;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;EACUP,YAAY,CAAC/B,EAAe,EAAET,QAA+B,EAAyB;IAC5F,MAAMmE,QAAQ,GAAG+B,uBAAuB,CAACzF,EAAE,EAAET,QAAQ,CAAC;IACtD,MAAMuC,SAAS,GAAG,IAAI,CAAC7C,eAAe,CAACkB,GAAG,CAACuD,QAAQ,CAAC;IACpD,IAAI5B,SAAS,IAAIA,SAAS,CAAC9B,EAAE,CAACkB,OAAO,CAACyE,OAAO,CAAC3F,EAAE,CAACkB,OAAO,CAAC,EAAE;MACzD,OAAOY,SAAS;IAClB;IACA,OAAO1B,SAAS;EAClB;EAEA,MAAM6B,oBAAoB,CAACjC,EAAe,EAA0C;IAClF,IAAI;MACF,MAAM;QAAES,UAAU;QAAEmF;MAAkB,CAAC,GAAG,MAAM,IAAI,CAAC/G,SAAS,CAACmC,QAAQ,CAAC6E,cAAc,CACpFC,eAAM,CAACC,SAAS,CAAC,CAAC/F,EAAE,CAACkB,OAAO,CAAC,CAAC,EAC9B,IAAI,CACL;MACD,OAAO,CAAAT,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAG,CAAC,CAAC,MAAImF,iBAAiB,aAAjBA,iBAAiB,uBAAjBA,iBAAiB,CAAG,CAAC,CAAC;IAClD,CAAC,CAAC,OAAOtF,GAAQ,EAAE;MACjB;MACA;MACA;MACA,IAAI,IAAI,CAACC,yBAAyB,CAACD,GAAG,CAAC,EAAE;QACvC,IAAI,CAACxB,MAAM,CAACkH,KAAK,CACd,6BAA4BhG,EAAE,CAACE,QAAQ,EAAG,gCAA+BI,GAAG,CAAC2F,IAAK,YAAW3F,GAAG,CAAC4F,OAAQ,EAAC,CAC5G;QACD,OAAO9F,SAAS;MAClB;MACA,MAAME,GAAG;IACX;EACF;EAEQC,yBAAyB,CAACD,GAAU,EAAW;IACrD,OACEA,GAAG,YAAY6F,gCAAiB,IAChC7F,GAAG,YAAYyD,oCAAsB,IACrCzD,GAAG,YAAY8F,kCAAuB;EAE1C;EAEA,MAAcb,eAAe,CAACjD,SAAoB,EAAE/C,QAA+B,EAAE;IACnF,IAAI+C,SAAS,CAACU,KAAK,CAACqD,SAAS,CAACC,OAAO,EAAE;MACrC;MACA;MACA,OAAOhE,SAAS;IAClB;;IAEA;IACA;IACA,MAAMiE,QAAQ,GAAG,MAAM,IAAI,CAACvH,IAAI,CAACwH,cAAc,CAAClE,SAAS,CAAC;;IAE1D;IACA,MAAMmE,MAAM,GAAG,MAAM,IAAI,CAAC1H,kBAAkB,CAAC2H,oBAAoB,CAC/DpE,SAAS,CAACqE,MAAM,CAAC3C,UAAU,EAC3B1B,SAAS,CAACtC,EAAE,CAACkB,OAAO,EACpBoB,SAAS,CAACU,KAAK,CAACqD,SAAS,CAACrB,KAAK,CAChC;IACD,MAAM4B,gBAAgB,GAAG,MAAM,IAAI,CAAC7H,kBAAkB,CAAC8H,qBAAqB,CAACvE,SAAS,EAAEmE,MAAM,CAAC;IAE/F,MAAMK,eAAe,GAAG;MACtBC,WAAW,EAAE,IAAI,CAAChI,kBAAkB,CAACiI,eAAe,CAAC1E,SAAS,CAAC;MAC/D2C,YAAY,EAAE2B,gBAAgB,CAACK,SAAS,EAAE;MAC1CR,MAAM,EAAEA,MAAM,CAACQ,SAAS;IAC1B,CAAC;;IAED;IACA,MAAMC,OAAO,CAACC,GAAG,CAAC,CAChB,IAAI,CAACC,mBAAmB,CAAC9E,SAAS,EAAE+E,kBAAU,CAACrH,EAAE,EAAEuG,QAAQ,CAAC,EAC5D,IAAI,CAACa,mBAAmB,CAAC9E,SAAS,EAAEgF,8CAAwB,CAACtH,EAAE,EAAE8G,eAAe,CAAC,CAClF,CAAC;;IAEF;IACA;IACA,MAAMS,yBAAyB,GAAG,MAAM,IAAI,CAAC1I,SAAS,CAACgG,gBAAgB,CAACvC,SAAS,CAACU,KAAK,CAAC2D,MAAM,CAAC3C,UAAU,CAAC;IAC1G1B,SAAS,CAACU,KAAK,CAACwE,OAAO,GAAGD,yBAAyB;IAEnD,MAAME,OAAO,GAAG,IAAI,CAAC5I,SAAS,CAAC6I,mBAAmB,CAACC,OAAO,EAAE;IAC5D,MAAMC,QAAQ,GAAGH,OAAO,CAAC3E,GAAG,CAAC,OAAO,CAAC+E,SAAS,EAAEC,MAAM,CAAC,KAAK;MAC1D,MAAMzE,IAAI,GAAG,MAAMyE,MAAM,CAACxF,SAAS,EAAE/C,QAAQ,CAAC;MAC9C,OAAO,IAAI,CAAC6H,mBAAmB,CAAC9E,SAAS,EAAEuF,SAAS,EAAExE,IAAI,CAAC;IAC7D,CAAC,CAAC;IAEF,MAAM6D,OAAO,CAACC,GAAG,CAACS,QAAQ,CAAC;;IAE3B;IACA,MAAMG,iBAAiB,GAAG,MAAM,IAAI,CAAClJ,SAAS,CAACgG,gBAAgB,CAACvC,SAAS,CAACU,KAAK,CAAC2D,MAAM,CAAC3C,UAAU,CAAC;IAClG1B,SAAS,CAACU,KAAK,CAACwE,OAAO,GAAGO,iBAAiB;IAC3C,OAAOzF,SAAS;EAClB;EAEQkD,qBAAqB,CAACxF,EAAe,EAAEgD,KAAY,EAAa;IACtE,OAAO,KAAImC,wCAAkB,EAACnF,EAAE,EAAE,IAAI,EAAEgD,KAAK,EAAE,KAAIgF,mBAAM,GAAE,EAAE,IAAI,CAACnJ,SAAS,CAAC;EAC9E;EAEA,MAAcuI,mBAAmB,CAAC9E,SAAoB,EAAEuF,SAAiB,EAAExE,IAAS,EAAE;IACpF,IAAI,CAACA,IAAI,EAAE;IACX,MAAM4E,iBAAiB,GAAG3F,SAAS,CAACU,KAAK,CAAC2D,MAAM,CAAC3C,UAAU,CAACkE,aAAa,CAACL,SAAS,CAAC;IACpF,IAAII,iBAAiB,EAAE;MACrB;MACAE,MAAM,CAACC,MAAM,CAACH,iBAAiB,CAAC5E,IAAI,EAAEA,IAAI,CAAC;MAC3C;IACF;IACAf,SAAS,CAACU,KAAK,CAAC2D,MAAM,CAAC3C,UAAU,CAACxD,IAAI,CAAC,MAAM,IAAI,CAAC6H,YAAY,CAACR,SAAS,EAAExE,IAAI,CAAC,CAAC;EAClF;EAEA,MAAcgF,YAAY,CAACR,SAAiB,EAAExE,IAA4B,EAA+B;IACvG;IACA,OAAO,KAAIiF,4BAAkB,EAAClI,SAAS,EAAEA,SAAS,EAAEyH,SAAS,EAAEzH,SAAS,EAAEiD,IAAI,CAAC;EACjF;AACF;AAAC;AAED,SAASoC,uBAAuB,CAACzF,EAAe,EAAET,QAA+B,EAAU;EACzF,OAAQ,GAAES,EAAE,CAACE,QAAQ,EAAG,IAAGqI,IAAI,CAACC,SAAS,CAACC,QAAQ,CAAClJ,QAAQ,aAARA,QAAQ,cAARA,QAAQ,GAAI,CAAC,CAAC,CAAC,CAAE,EAAC;AACvE;AAEA,SAASkJ,QAAQ,CAACC,GAAW,EAAE;EAC7B,OAAO,IAAAC,mBAAS,EAACR,MAAM,CAACV,OAAO,CAACiB,GAAG,CAAC,CAACE,IAAI,CAAC,CAAC,CAACC,EAAE,CAAC,EAAE,CAACC,EAAE,CAAC,KAAKD,EAAE,CAACE,aAAa,CAACD,EAAE,CAAC,CAAC,CAAC;AAClF"}
|
|
1
|
+
{"version":3,"names":["WorkspaceComponentLoader","constructor","workspace","logger","dependencyResolver","envs","componentsCache","createInMemoryCache","maxSize","getMaxSizeForComponents","getMany","ids","loadOpts","idsWithoutEmpty","compact","errors","longProcessLogger","createLongProcessLogger","length","componentsP","mapSeries","id","logProgress","toString","get","undefined","catch","err","isComponentNotExistsError","push","components","forEach","console","warn","filteredComponents","end","getInvalid","consumer","loadComponent","_legacy","ConsumerComponent","isComponentInvalidByErrorType","componentId","legacyComponent","useCache","storeInCache","bitIdWithVersion","getLatestVersionNumber","bitmapIdsFromCurrentLaneIncludeRemoved","version","changeVersion","fromCache","getFromCache","consumerComponent","getConsumerComponent","updatedId","ComponentID","fromLegacy","scope","component","loadOne","addMultipleEnvsIssueIfNeeded","saveInCache","getIfExist","getAllEnvsConfiguredOnComponent","envIds","uniq","map","env","state","issues","getOrCreate","IssuesClasses","MultipleEnvs","data","clearCache","deleteAll","clearComponentCache","idStr","cacheKey","keys","startsWith","delete","componentFromScope","MissingBitMapComponent","extensions","componentExtensions","some","MergeConfigConflict","MergeConfigHasConflict","extensionsFromConsumerComponent","ExtensionDataList","extensionDataList","mergeConfigs","filterRemovedExtensions","State","Config","mainFile","createAspectList","ComponentFS","fromVinyls","files","dependencies","workspaceComponent","WorkspaceComponent","head","tags","updatedComp","executeLoadSlot","newComponentFromState","createComponentCacheKey","set","isEqual","originatedFromHarmony","removedComponents","loadComponents","BitIds","fromArray","debug","name","message","ComponentNotFound","ComponentNotFoundInPath","_consumer","removed","envsData","calcDescriptor","policy","mergeVariantPolicies","config","dependenciesList","extractDepsFromLegacy","depResolverData","packageName","calcPackageName","serialize","Promise","all","upsertExtensionData","EnvsAspect","DependencyResolverAspect","aspectListWithEnvsAndDeps","aspects","entries","onComponentLoadSlot","toArray","promises","extension","onLoad","updatedAspectList","TagMap","existingExtension","findExtension","Object","assign","getDataEntry","ExtensionDataEntry","JSON","stringify","sortKeys","obj","fromPairs","sort","k1","k2","localeCompare"],"sources":["workspace-component-loader.ts"],"sourcesContent":["import { Component, ComponentFS, ComponentID, Config, InvalidComponent, State, TagMap } from '@teambit/component';\nimport { BitId } from '@teambit/legacy-bit-id';\nimport { ExtensionDataList } from '@teambit/legacy/dist/consumer/config/extension-data';\nimport mapSeries from 'p-map-series';\nimport { compact, fromPairs, uniq } from 'lodash';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component';\nimport { MissingBitMapComponent } from '@teambit/legacy/dist/consumer/bit-map/exceptions';\nimport { getLatestVersionNumber } from '@teambit/legacy/dist/utils';\nimport { IssuesClasses } from '@teambit/component-issues';\nimport { BitIds } from '@teambit/legacy/dist/bit-id';\nimport { ComponentNotFound } from '@teambit/legacy/dist/scope/exceptions';\nimport { DependencyResolverAspect, DependencyResolverMain } from '@teambit/dependency-resolver';\nimport { Logger } from '@teambit/logger';\nimport { EnvsAspect, EnvsMain } from '@teambit/envs';\nimport { ExtensionDataEntry } from '@teambit/legacy/dist/consumer/config';\nimport { getMaxSizeForComponents, InMemoryCache } from '@teambit/legacy/dist/cache/in-memory-cache';\nimport { createInMemoryCache } from '@teambit/legacy/dist/cache/cache-factory';\nimport ComponentNotFoundInPath from '@teambit/legacy/dist/consumer/component/exceptions/component-not-found-in-path';\nimport { ComponentLoadOptions } from '@teambit/legacy/dist/consumer/component/component-loader';\nimport { Workspace } from '../workspace';\nimport { WorkspaceComponent } from './workspace-component';\nimport { MergeConfigConflict } from '../exceptions/merge-config-conflict';\n\nexport class WorkspaceComponentLoader {\n private componentsCache: InMemoryCache<Component>; // cache loaded components\n constructor(\n private workspace: Workspace,\n private logger: Logger,\n private dependencyResolver: DependencyResolverMain,\n private envs: EnvsMain\n ) {\n this.componentsCache = createInMemoryCache({ maxSize: getMaxSizeForComponents() });\n }\n\n async getMany(ids: Array<ComponentID>, loadOpts?: ComponentLoadOptions): Promise<Component[]> {\n const idsWithoutEmpty = compact(ids);\n const errors: { id: ComponentID; err: Error }[] = [];\n const longProcessLogger = this.logger.createLongProcessLogger('loading components', ids.length);\n const componentsP = mapSeries(idsWithoutEmpty, async (id: ComponentID) => {\n longProcessLogger.logProgress(id.toString());\n return this.get(id, undefined, undefined, undefined, loadOpts).catch((err) => {\n if (this.isComponentNotExistsError(err)) {\n errors.push({\n id,\n err,\n });\n return undefined;\n }\n throw err;\n });\n });\n const components = await componentsP;\n errors.forEach((err) => {\n this.logger.console(`failed loading component ${err.id.toString()}, see full error in debug.log file`);\n this.logger.warn(`failed loading component ${err.id.toString()}`, err.err);\n });\n // remove errored components\n const filteredComponents: Component[] = compact(components);\n longProcessLogger.end();\n return filteredComponents;\n }\n\n async getInvalid(ids: Array<ComponentID>): Promise<InvalidComponent[]> {\n const idsWithoutEmpty = compact(ids);\n const errors: InvalidComponent[] = [];\n const longProcessLogger = this.logger.createLongProcessLogger('loading components', ids.length);\n await mapSeries(idsWithoutEmpty, async (id: ComponentID) => {\n longProcessLogger.logProgress(id.toString());\n try {\n await this.workspace.consumer.loadComponent(id._legacy);\n } catch (err: any) {\n if (ConsumerComponent.isComponentInvalidByErrorType(err)) {\n errors.push({\n id,\n err,\n });\n return;\n }\n throw err;\n }\n });\n return errors;\n }\n\n async get(\n componentId: ComponentID,\n legacyComponent?: ConsumerComponent,\n useCache = true,\n storeInCache = true,\n loadOpts?: ComponentLoadOptions\n ): Promise<Component> {\n const bitIdWithVersion: BitId = getLatestVersionNumber(\n this.workspace.consumer.bitmapIdsFromCurrentLaneIncludeRemoved,\n componentId._legacy\n );\n const id = bitIdWithVersion.version ? componentId.changeVersion(bitIdWithVersion.version) : componentId;\n const fromCache = this.getFromCache(id, loadOpts);\n if (fromCache && useCache) {\n return fromCache;\n }\n const consumerComponent = legacyComponent || (await this.getConsumerComponent(id, loadOpts));\n // in case of out-of-sync, the id may changed during the load process\n const updatedId = consumerComponent ? ComponentID.fromLegacy(consumerComponent.id, id.scope) : id;\n const component = await this.loadOne(updatedId, consumerComponent, loadOpts);\n if (storeInCache) {\n this.addMultipleEnvsIssueIfNeeded(component); // it's in storeInCache block, otherwise, it wasn't fully loaded\n this.saveInCache(component, loadOpts);\n }\n return component;\n }\n\n async getIfExist(componentId: ComponentID) {\n try {\n return await this.get(componentId);\n } catch (err: any) {\n if (this.isComponentNotExistsError(err)) {\n return undefined;\n }\n throw err;\n }\n }\n\n private addMultipleEnvsIssueIfNeeded(component: Component) {\n const envs = this.envs.getAllEnvsConfiguredOnComponent(component);\n const envIds = uniq(envs.map((env) => env.id));\n if (envIds.length < 2) {\n return;\n }\n component.state.issues.getOrCreate(IssuesClasses.MultipleEnvs).data = envIds;\n }\n\n clearCache() {\n this.componentsCache.deleteAll();\n }\n clearComponentCache(id: ComponentID) {\n const idStr = id.toString();\n for (const cacheKey of this.componentsCache.keys()) {\n if (cacheKey === idStr || cacheKey.startsWith(`${idStr}:`)) {\n this.componentsCache.delete(cacheKey);\n }\n }\n }\n\n private async loadOne(id: ComponentID, consumerComponent?: ConsumerComponent, loadOpts?: ComponentLoadOptions) {\n const componentFromScope = await this.workspace.scope.get(id);\n if (!consumerComponent) {\n if (!componentFromScope) throw new MissingBitMapComponent(id.toString());\n return componentFromScope;\n }\n const { extensions, errors } = await this.workspace.componentExtensions(id, componentFromScope);\n if (errors?.some((err) => err instanceof MergeConfigConflict)) {\n consumerComponent.issues.getOrCreate(IssuesClasses.MergeConfigHasConflict).data = true;\n }\n\n const extensionsFromConsumerComponent = consumerComponent.extensions || new ExtensionDataList();\n // Merge extensions added by the legacy code in memory (for example data of dependency resolver)\n const extensionDataList = ExtensionDataList.mergeConfigs([\n extensionsFromConsumerComponent,\n extensions,\n ]).filterRemovedExtensions();\n\n // temporarily mutate consumer component extensions until we remove all direct access from legacy to extensions data\n // TODO: remove this once we remove all direct access from legacy code to extensions data\n consumerComponent.extensions = extensionDataList;\n\n const state = new State(\n new Config(consumerComponent.mainFile, extensionDataList),\n await this.workspace.createAspectList(extensionDataList),\n ComponentFS.fromVinyls(consumerComponent.files),\n consumerComponent.dependencies,\n consumerComponent\n );\n if (componentFromScope) {\n // Removed by @gilad. do not mutate the component from the scope\n // componentFromScope.state = state;\n // const workspaceComponent = WorkspaceComponent.fromComponent(componentFromScope, this.workspace);\n const workspaceComponent = new WorkspaceComponent(\n componentFromScope.id,\n componentFromScope.head,\n state,\n componentFromScope.tags,\n this.workspace\n );\n const updatedComp = await this.executeLoadSlot(workspaceComponent, loadOpts);\n return updatedComp;\n }\n return this.executeLoadSlot(this.newComponentFromState(id, state), loadOpts);\n }\n\n private saveInCache(component: Component, loadOpts?: ComponentLoadOptions): void {\n const cacheKey = createComponentCacheKey(component.id, loadOpts);\n this.componentsCache.set(cacheKey, component);\n }\n\n /**\n * make sure that not only the id-str match, but also the legacy-id.\n * this is needed because the ComponentID.toString() is the same whether or not the legacy-id has\n * scope-name, as it includes the defaultScope if the scope is empty.\n * as a result, when out-of-sync is happening and the id is changed to include scope-name in the\n * legacy-id, the component is the cache has the old id.\n */\n private getFromCache(id: ComponentID, loadOpts?: ComponentLoadOptions): Component | undefined {\n const cacheKey = createComponentCacheKey(id, loadOpts);\n const fromCache = this.componentsCache.get(cacheKey);\n if (fromCache && fromCache.id._legacy.isEqual(id._legacy)) {\n return fromCache;\n }\n return undefined;\n }\n\n async getConsumerComponent(\n id: ComponentID,\n loadOpts: ComponentLoadOptions = {}\n ): Promise<ConsumerComponent | undefined> {\n loadOpts.originatedFromHarmony = true;\n try {\n const { components, removedComponents } = await this.workspace.consumer.loadComponents(\n BitIds.fromArray([id._legacy]),\n true,\n loadOpts\n );\n return components?.[0] || removedComponents?.[0];\n } catch (err: any) {\n // don't return undefined for any error. otherwise, if the component is invalid (e.g. main\n // file is missing) it returns the model component later unexpectedly, or if it's new, it\n // shows MissingBitMapComponent error incorrectly.\n if (this.isComponentNotExistsError(err)) {\n this.logger.debug(\n `failed loading component \"${id.toString()}\" from the workspace due to \"${err.name}\" error\\n${err.message}`\n );\n return undefined;\n }\n throw err;\n }\n }\n\n private isComponentNotExistsError(err: Error): boolean {\n return (\n err instanceof ComponentNotFound ||\n err instanceof MissingBitMapComponent ||\n err instanceof ComponentNotFoundInPath\n );\n }\n\n private async executeLoadSlot(component: Component, loadOpts?: ComponentLoadOptions) {\n if (component.state._consumer.removed) {\n // if it was soft-removed now, the component is not in the FS. loading aspects such as composition ends up with\n // errors as they try to read component files from the filesystem.\n return component;\n }\n\n // Special load events which runs from the workspace but should run from the correct aspect\n // TODO: remove this once those extensions dependent on workspace\n const envsData = await this.envs.calcDescriptor(component);\n\n // Move to deps resolver main runtime once we switch ws<> deps resolver direction\n const policy = await this.dependencyResolver.mergeVariantPolicies(\n component.config.extensions,\n component.id._legacy,\n component.state._consumer.files\n );\n const dependenciesList = await this.dependencyResolver.extractDepsFromLegacy(component, policy);\n\n const depResolverData = {\n packageName: this.dependencyResolver.calcPackageName(component),\n dependencies: dependenciesList.serialize(),\n policy: policy.serialize(),\n };\n\n // Make sure we are adding the envs / deps data first because other on load events might depend on it\n await Promise.all([\n this.upsertExtensionData(component, EnvsAspect.id, envsData),\n this.upsertExtensionData(component, DependencyResolverAspect.id, depResolverData),\n ]);\n\n // We are updating the component state with the envs and deps data here, so in case we have other slots that depend on this data\n // they will be able to get it, as it's very common use case that during on load someone want to access to the component env for example\n const aspectListWithEnvsAndDeps = await this.workspace.createAspectList(component.state.config.extensions);\n component.state.aspects = aspectListWithEnvsAndDeps;\n\n const entries = this.workspace.onComponentLoadSlot.toArray();\n const promises = entries.map(async ([extension, onLoad]) => {\n const data = await onLoad(component, loadOpts);\n return this.upsertExtensionData(component, extension, data);\n });\n\n await Promise.all(promises);\n\n // Update the aspect list to have changes happened during the on load slot (new data added above)\n const updatedAspectList = await this.workspace.createAspectList(component.state.config.extensions);\n component.state.aspects = updatedAspectList;\n return component;\n }\n\n private newComponentFromState(id: ComponentID, state: State): Component {\n return new WorkspaceComponent(id, null, state, new TagMap(), this.workspace);\n }\n\n private async upsertExtensionData(component: Component, extension: string, data: any) {\n if (!data) return;\n const existingExtension = component.state.config.extensions.findExtension(extension);\n if (existingExtension) {\n // Only merge top level of extension data\n Object.assign(existingExtension.data, data);\n return;\n }\n component.state.config.extensions.push(await this.getDataEntry(extension, data));\n }\n\n private async getDataEntry(extension: string, data: { [key: string]: any }): Promise<ExtensionDataEntry> {\n // TODO: @gilad we need to refactor the extension data entry api.\n return new ExtensionDataEntry(undefined, undefined, extension, undefined, data);\n }\n}\n\nfunction createComponentCacheKey(id: ComponentID, loadOpts?: ComponentLoadOptions): string {\n return `${id.toString()}:${JSON.stringify(sortKeys(loadOpts ?? {}))}`;\n}\n\nfunction sortKeys(obj: Object) {\n return fromPairs(Object.entries(obj).sort(([k1], [k2]) => k1.localeCompare(k2)));\n}\n"],"mappings":"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"}
|
|
@@ -28,16 +28,16 @@ function _component() {
|
|
|
28
28
|
};
|
|
29
29
|
return data;
|
|
30
30
|
}
|
|
31
|
-
function
|
|
32
|
-
const data =
|
|
33
|
-
|
|
31
|
+
function _extensionData() {
|
|
32
|
+
const data = require("@teambit/legacy/dist/consumer/config/extension-data");
|
|
33
|
+
_extensionData = function () {
|
|
34
34
|
return data;
|
|
35
35
|
};
|
|
36
36
|
return data;
|
|
37
37
|
}
|
|
38
|
-
function
|
|
39
|
-
const data = require("@teambit/legacy/dist/consumer/
|
|
40
|
-
|
|
38
|
+
function _componentLoader() {
|
|
39
|
+
const data = _interopRequireDefault(require("@teambit/legacy/dist/consumer/component/component-loader"));
|
|
40
|
+
_componentLoader = function () {
|
|
41
41
|
return data;
|
|
42
42
|
};
|
|
43
43
|
return data;
|
|
@@ -178,6 +178,7 @@ async function provideWorkspace([pubsub, cli, scope, component, isolator, depend
|
|
|
178
178
|
dependencyResolver.registerRootPolicy(getRootPolicy());
|
|
179
179
|
consumer.onCacheClear.push(() => workspace.clearCache());
|
|
180
180
|
_componentLoader().default.registerOnComponentLoadSubscriber(async (legacyComponent, opts) => {
|
|
181
|
+
if (opts !== null && opts !== void 0 && opts.originatedFromHarmony) return legacyComponent;
|
|
181
182
|
const id = await workspace.resolveComponentId(legacyComponent.id);
|
|
182
183
|
const newComponent = await workspace.get(id, legacyComponent, true, true, opts);
|
|
183
184
|
return newComponent.state._consumer;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["provideWorkspace","pubsub","cli","scope","component","isolator","dependencyResolver","variants","loggerExt","graphql","ui","bundler","aspectLoader","envs","globalConfig","config","onComponentLoadSlot","onComponentChangeSlot","onComponentAddSlot","onComponentRemoveSlot","onAspectsResolveSlot","onRootAspectAddedSlot","onBitmapChangeSlot","harmony","bitConfig","get","consumer","getConsumer","cwd","undefined","logger","createLogger","EXT_NAME","workspace","Workspace","configMergeFile","getConflictMergeFile","loadIfNeeded","getWorkspacePolicyFromPackageJson","packageJson","packageJsonObject","policyFromPackageJson","getWorkspacePolicyFromMergeConfig","wsConfigMerge","getWorkspaceJsonConflictFromMergeConfig","policy","data","DependencyResolverAspect","id","forEach","depField","reduce","acc","current","name","version","wsPolicy","getWorkspacePolicyFromConfigObject","getRootPolicy","pkgJsonPolicy","configMergePolicy","mergeWorkspacePolices","registerRootPolicy","onCacheClear","push","clearCache","LegacyComponentLoader","registerOnComponentLoadSubscriber","legacyComponent","opts","resolveComponentId","newComponent","state","_consumer","LegacyDependencyResolver","registerOnComponentAutoDetectOverridesGetter","configuredExtensions","legacyFiles","mergeVariantPolicies","depsDataOfMergeConfig","getDepsDataOfMergeConfig","policiesFromMergeConfig","VariantPolicy","fromConfigObject","mergePolices","toLegacyAutoDetectOverrides","registerOnComponentAutoDetectConfigMergeGetter","ConsumerComponent","registerOnComponentConfigLoading","componentId","componentFromScope","extensions","componentExtensions","defaultScope","componentDefaultScope","extensionsWithLegacyIdsP","map","extension","legacyEntry","clone","extensionId","compId","_legacy","newExtensionId","extensionsWithLegacyIds","Promise","all","ExtensionDataList","fromArray","workspaceSchema","getWorkspaceSchema","registerUiRoot","WorkspaceUIRoot","register","capsuleCmd","CapsuleCmd","commands","CapsuleListCmd","CapsuleCreateCmd","CapsuleDeleteCmd","EjectConfCmd","UseCmd","PatternCommand","registerHost","registerOnStart","_hasWorkspace","currentCommand","inInstallContext","importCurrentLaneIfMissing","loadAspectsOpts","runSubscribers","skipDeps","autoLoadAspectsDeps","aspects","loadAspects","getNotLoadedConfiguredExtensions","componentIds","resolveMultipleComponentIds","clearComponentCache","envsCommand","getCommand","EnvsSetCmd","EnvsUnsetCmd","EnvsReplaceCmd","EnvsUpdateCmd","scopeCommand","ScopeSetCmd","path","loadConsumerIfExist"],"sources":["workspace.provider.ts"],"sourcesContent":["import { PubsubMain } from '@teambit/pubsub';\nimport type { AspectLoaderMain } from '@teambit/aspect-loader';\nimport { BundlerMain } from '@teambit/bundler';\nimport { CLIMain, CommandList } from '@teambit/cli';\nimport { DependencyResolverAspect, DependencyResolverMain, VariantPolicy } from '@teambit/dependency-resolver';\nimport type { ComponentMain, Component, ComponentID } from '@teambit/component';\nimport { EnvsMain } from '@teambit/envs';\nimport { GraphqlMain } from '@teambit/graphql';\nimport { Harmony, SlotRegistry } from '@teambit/harmony';\nimport { IsolatorMain } from '@teambit/isolator';\nimport { LoggerMain } from '@teambit/logger';\nimport type { ScopeMain } from '@teambit/scope';\nimport { UiMain } from '@teambit/ui';\nimport type { VariantsMain } from '@teambit/variants';\nimport { Consumer, loadConsumerIfExist } from '@teambit/legacy/dist/consumer';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component';\nimport LegacyComponentLoader from '@teambit/legacy/dist/consumer/component/component-loader';\nimport { ExtensionDataList } from '@teambit/legacy/dist/consumer/config/extension-data';\nimport { BitId } from '@teambit/legacy-bit-id';\nimport { GlobalConfigMain } from '@teambit/global-config';\nimport { SourceFile } from '@teambit/legacy/dist/consumer/component/sources';\nimport { DependencyResolver as LegacyDependencyResolver } from '@teambit/legacy/dist/consumer/component/dependencies/dependency-resolver';\nimport { EXT_NAME } from './constants';\nimport EjectConfCmd from './eject-conf.cmd';\nimport { OnComponentLoad, OnComponentAdd, OnComponentChange, OnComponentRemove } from './on-component-events';\nimport { WorkspaceExtConfig } from './types';\nimport { Workspace } from './workspace';\nimport getWorkspaceSchema from './workspace.graphql';\nimport { WorkspaceUIRoot } from './workspace.ui-root';\nimport { CapsuleCmd, CapsuleCreateCmd, CapsuleDeleteCmd, CapsuleListCmd } from './capsule.cmd';\nimport { EnvsSetCmd } from './envs-subcommands/envs-set.cmd';\nimport { EnvsUnsetCmd } from './envs-subcommands/envs-unset.cmd';\nimport { PatternCommand } from './pattern.cmd';\nimport { EnvsReplaceCmd } from './envs-subcommands/envs-replace.cmd';\nimport { ScopeSetCmd } from './scope-subcommands/scope-set.cmd';\nimport { UseCmd } from './use.cmd';\nimport { EnvsUpdateCmd } from './envs-subcommands/envs-update.cmd';\n\nexport type WorkspaceDeps = [\n PubsubMain,\n CLIMain,\n ScopeMain,\n ComponentMain,\n IsolatorMain,\n DependencyResolverMain,\n VariantsMain,\n LoggerMain,\n GraphqlMain,\n UiMain,\n BundlerMain,\n AspectLoaderMain,\n EnvsMain,\n GlobalConfigMain\n];\n\nexport type OnComponentLoadSlot = SlotRegistry<OnComponentLoad>;\n\nexport type OnComponentChangeSlot = SlotRegistry<OnComponentChange>;\n\nexport type OnComponentAddSlot = SlotRegistry<OnComponentAdd>;\n\nexport type OnComponentRemoveSlot = SlotRegistry<OnComponentRemove>;\n\nexport type OnBitmapChange = () => Promise<void>;\nexport type OnBitmapChangeSlot = SlotRegistry<OnBitmapChange>;\n\nexport type OnAspectsResolve = (aspectsComponents: Component[]) => Promise<void>;\nexport type OnAspectsResolveSlot = SlotRegistry<OnAspectsResolve>;\n\nexport type OnRootAspectAdded = (aspectsId: ComponentID, inWs: boolean) => Promise<void>;\nexport type OnRootAspectAddedSlot = SlotRegistry<OnRootAspectAdded>;\n\nexport default async function provideWorkspace(\n [\n pubsub,\n cli,\n scope,\n component,\n isolator,\n dependencyResolver,\n variants,\n loggerExt,\n graphql,\n ui,\n bundler,\n aspectLoader,\n envs,\n globalConfig,\n ]: WorkspaceDeps,\n config: WorkspaceExtConfig,\n [\n onComponentLoadSlot,\n onComponentChangeSlot,\n onComponentAddSlot,\n onComponentRemoveSlot,\n onAspectsResolveSlot,\n onRootAspectAddedSlot,\n onBitmapChangeSlot,\n ]: [\n OnComponentLoadSlot,\n OnComponentChangeSlot,\n OnComponentAddSlot,\n OnComponentRemoveSlot,\n OnAspectsResolveSlot,\n OnRootAspectAddedSlot,\n OnBitmapChangeSlot\n ],\n harmony: Harmony\n) {\n const bitConfig: any = harmony.config.get('teambit.harmony/bit');\n const consumer = await getConsumer(bitConfig.cwd);\n if (!consumer) return undefined;\n // TODO: get the 'workspace' name in a better way\n const logger = loggerExt.createLogger(EXT_NAME);\n const workspace = new Workspace(\n pubsub,\n config,\n consumer,\n scope,\n component,\n dependencyResolver,\n variants,\n aspectLoader,\n logger,\n undefined,\n harmony,\n onComponentLoadSlot,\n onComponentChangeSlot,\n envs,\n globalConfig,\n onComponentAddSlot,\n onComponentRemoveSlot,\n onAspectsResolveSlot,\n onRootAspectAddedSlot,\n graphql,\n onBitmapChangeSlot\n );\n\n const configMergeFile = workspace.getConflictMergeFile();\n await configMergeFile.loadIfNeeded();\n\n const getWorkspacePolicyFromPackageJson = () => {\n const packageJson = workspace.consumer.packageJson?.packageJsonObject || {};\n const policyFromPackageJson = dependencyResolver.getWorkspacePolicyFromPackageJson(packageJson);\n return policyFromPackageJson;\n };\n\n const getWorkspacePolicyFromMergeConfig = () => {\n const wsConfigMerge = workspace.getWorkspaceJsonConflictFromMergeConfig();\n const policy = wsConfigMerge.data?.[DependencyResolverAspect.id]?.policy || {};\n ['dependencies', 'peerDependencies'].forEach((depField) => {\n if (!policy[depField]) return;\n policy[depField] = policy[depField].reduce((acc, current) => {\n acc[current.name] = current.version;\n return acc;\n }, {});\n });\n const wsPolicy = dependencyResolver.getWorkspacePolicyFromConfigObject(policy);\n return wsPolicy;\n };\n\n const getRootPolicy = () => {\n const pkgJsonPolicy = getWorkspacePolicyFromPackageJson();\n const configMergePolicy = getWorkspacePolicyFromMergeConfig();\n return dependencyResolver.mergeWorkspacePolices([pkgJsonPolicy, configMergePolicy]);\n };\n\n dependencyResolver.registerRootPolicy(getRootPolicy());\n\n consumer.onCacheClear.push(() => workspace.clearCache());\n\n LegacyComponentLoader.registerOnComponentLoadSubscriber(\n async (legacyComponent: ConsumerComponent, opts?: { loadDocs?: boolean }) => {\n const id = await workspace.resolveComponentId(legacyComponent.id);\n const newComponent = await workspace.get(id, legacyComponent, true, true, opts);\n return newComponent.state._consumer;\n }\n );\n\n LegacyDependencyResolver.registerOnComponentAutoDetectOverridesGetter(\n async (configuredExtensions: ExtensionDataList, id: BitId, legacyFiles: SourceFile[]) => {\n let policy = await dependencyResolver.mergeVariantPolicies(configuredExtensions, id, legacyFiles);\n const depsDataOfMergeConfig = workspace.getDepsDataOfMergeConfig(id);\n if (depsDataOfMergeConfig) {\n const policiesFromMergeConfig = VariantPolicy.fromConfigObject(depsDataOfMergeConfig, 'auto');\n policy = VariantPolicy.mergePolices([policy, policiesFromMergeConfig]);\n }\n return policy.toLegacyAutoDetectOverrides();\n }\n );\n\n LegacyDependencyResolver.registerOnComponentAutoDetectConfigMergeGetter((id: BitId) => {\n const depsDataOfMergeConfig = workspace.getDepsDataOfMergeConfig(id);\n if (depsDataOfMergeConfig) {\n const policy = VariantPolicy.fromConfigObject(depsDataOfMergeConfig, 'auto');\n return policy.toLegacyAutoDetectOverrides();\n }\n return undefined;\n });\n\n ConsumerComponent.registerOnComponentConfigLoading(EXT_NAME, async (id) => {\n const componentId = await workspace.resolveComponentId(id);\n // We call here directly workspace.scope.get instead of workspace.get because part of the workspace get is loading consumer component\n // which in turn run this event, which will make an infinite loop\n // This component from scope here are only used for merging the extensions with the workspace components\n const componentFromScope = await workspace.scope.get(componentId);\n const { extensions } = await workspace.componentExtensions(componentId, componentFromScope);\n const defaultScope = await workspace.componentDefaultScope(componentId);\n\n const extensionsWithLegacyIdsP = extensions.map(async (extension) => {\n const legacyEntry = extension.clone();\n if (legacyEntry.extensionId) {\n const compId = await workspace.resolveComponentId(legacyEntry.extensionId);\n legacyEntry.extensionId = compId._legacy;\n legacyEntry.newExtensionId = compId;\n }\n\n return legacyEntry;\n });\n const extensionsWithLegacyIds = await Promise.all(extensionsWithLegacyIdsP);\n\n return {\n defaultScope,\n extensions: ExtensionDataList.fromArray(extensionsWithLegacyIds),\n };\n });\n\n const workspaceSchema = getWorkspaceSchema(workspace, graphql);\n ui.registerUiRoot(new WorkspaceUIRoot(workspace, bundler));\n graphql.register(workspaceSchema);\n const capsuleCmd = new CapsuleCmd(isolator, workspace);\n capsuleCmd.commands = [\n new CapsuleListCmd(isolator, workspace),\n new CapsuleCreateCmd(workspace, isolator),\n new CapsuleDeleteCmd(isolator, workspace),\n ];\n const commands: CommandList = [new EjectConfCmd(workspace), capsuleCmd, new UseCmd(workspace)];\n\n commands.push(new PatternCommand(workspace));\n cli.register(...commands);\n component.registerHost(workspace);\n\n cli.registerOnStart(async (_hasWorkspace: boolean, currentCommand: string) => {\n if (currentCommand === 'mini-status' || currentCommand === 'ms') {\n return; // mini-status should be super fast.\n }\n if (currentCommand === 'install') {\n workspace.inInstallContext = true;\n }\n await workspace.importCurrentLaneIfMissing();\n const loadAspectsOpts = {\n runSubscribers: false,\n skipDeps: !config.autoLoadAspectsDeps,\n };\n const aspects = await workspace.loadAspects(\n aspectLoader.getNotLoadedConfiguredExtensions(),\n undefined,\n 'teambit.workspace/workspace (cli.registerOnStart)',\n loadAspectsOpts\n );\n // clear aspect cache.\n const componentIds = await workspace.resolveMultipleComponentIds(aspects);\n componentIds.forEach((id) => {\n workspace.clearComponentCache(id);\n });\n });\n\n // add sub-commands \"set\" and \"unset\" to envs command.\n const envsCommand = cli.getCommand('envs');\n envsCommand?.commands?.push(new EnvsSetCmd(workspace)); // bit envs set\n envsCommand?.commands?.push(new EnvsUnsetCmd(workspace)); // bit envs unset\n envsCommand?.commands?.push(new EnvsReplaceCmd(workspace)); // bit envs replace\n envsCommand?.commands?.push(new EnvsUpdateCmd(workspace)); // bit envs replace\n\n // add sub-command \"set\" to scope command.\n const scopeCommand = cli.getCommand('scope');\n scopeCommand?.commands?.push(new ScopeSetCmd(workspace));\n\n return workspace;\n}\n\n/**\n * don't use loadConsumer() here, which throws ConsumerNotFound because some commands don't require\n * the consumer to be available. such as, `bit init` or `bit list --remote`.\n * most of the commands do need the consumer. the legacy commands that need the consumer throw an\n * error when is missing. in the new/Harmony commands, such as `bis compile`, the workspace object\n * is passed to the provider, so before using it, make sure it exists.\n * keep in mind that you can't verify it in the provider itself, because the provider is running\n * always for all commands before anything else is happening.\n */\nasync function getConsumer(path?: string): Promise<Consumer | undefined> {\n return loadConsumerIfExist(path);\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["provideWorkspace","pubsub","cli","scope","component","isolator","dependencyResolver","variants","loggerExt","graphql","ui","bundler","aspectLoader","envs","globalConfig","config","onComponentLoadSlot","onComponentChangeSlot","onComponentAddSlot","onComponentRemoveSlot","onAspectsResolveSlot","onRootAspectAddedSlot","onBitmapChangeSlot","harmony","bitConfig","get","consumer","getConsumer","cwd","undefined","logger","createLogger","EXT_NAME","workspace","Workspace","configMergeFile","getConflictMergeFile","loadIfNeeded","getWorkspacePolicyFromPackageJson","packageJson","packageJsonObject","policyFromPackageJson","getWorkspacePolicyFromMergeConfig","wsConfigMerge","getWorkspaceJsonConflictFromMergeConfig","policy","data","DependencyResolverAspect","id","forEach","depField","reduce","acc","current","name","version","wsPolicy","getWorkspacePolicyFromConfigObject","getRootPolicy","pkgJsonPolicy","configMergePolicy","mergeWorkspacePolices","registerRootPolicy","onCacheClear","push","clearCache","LegacyComponentLoader","registerOnComponentLoadSubscriber","legacyComponent","opts","originatedFromHarmony","resolveComponentId","newComponent","state","_consumer","LegacyDependencyResolver","registerOnComponentAutoDetectOverridesGetter","configuredExtensions","legacyFiles","mergeVariantPolicies","depsDataOfMergeConfig","getDepsDataOfMergeConfig","policiesFromMergeConfig","VariantPolicy","fromConfigObject","mergePolices","toLegacyAutoDetectOverrides","registerOnComponentAutoDetectConfigMergeGetter","ConsumerComponent","registerOnComponentConfigLoading","componentId","componentFromScope","extensions","componentExtensions","defaultScope","componentDefaultScope","extensionsWithLegacyIdsP","map","extension","legacyEntry","clone","extensionId","compId","_legacy","newExtensionId","extensionsWithLegacyIds","Promise","all","ExtensionDataList","fromArray","workspaceSchema","getWorkspaceSchema","registerUiRoot","WorkspaceUIRoot","register","capsuleCmd","CapsuleCmd","commands","CapsuleListCmd","CapsuleCreateCmd","CapsuleDeleteCmd","EjectConfCmd","UseCmd","PatternCommand","registerHost","registerOnStart","_hasWorkspace","currentCommand","inInstallContext","importCurrentLaneIfMissing","loadAspectsOpts","runSubscribers","skipDeps","autoLoadAspectsDeps","aspects","loadAspects","getNotLoadedConfiguredExtensions","componentIds","resolveMultipleComponentIds","clearComponentCache","envsCommand","getCommand","EnvsSetCmd","EnvsUnsetCmd","EnvsReplaceCmd","EnvsUpdateCmd","scopeCommand","ScopeSetCmd","path","loadConsumerIfExist"],"sources":["workspace.provider.ts"],"sourcesContent":["import { PubsubMain } from '@teambit/pubsub';\nimport type { AspectLoaderMain } from '@teambit/aspect-loader';\nimport { BundlerMain } from '@teambit/bundler';\nimport { CLIMain, CommandList } from '@teambit/cli';\nimport { DependencyResolverAspect, DependencyResolverMain, VariantPolicy } from '@teambit/dependency-resolver';\nimport type { ComponentMain, Component, ComponentID } from '@teambit/component';\nimport { EnvsMain } from '@teambit/envs';\nimport { GraphqlMain } from '@teambit/graphql';\nimport { Harmony, SlotRegistry } from '@teambit/harmony';\nimport { IsolatorMain } from '@teambit/isolator';\nimport { LoggerMain } from '@teambit/logger';\nimport type { ScopeMain } from '@teambit/scope';\nimport { UiMain } from '@teambit/ui';\nimport type { VariantsMain } from '@teambit/variants';\nimport { Consumer, loadConsumerIfExist } from '@teambit/legacy/dist/consumer';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component';\nimport { ExtensionDataList } from '@teambit/legacy/dist/consumer/config/extension-data';\nimport LegacyComponentLoader, { ComponentLoadOptions } from '@teambit/legacy/dist/consumer/component/component-loader';\nimport { BitId } from '@teambit/legacy-bit-id';\nimport { GlobalConfigMain } from '@teambit/global-config';\nimport { SourceFile } from '@teambit/legacy/dist/consumer/component/sources';\nimport { DependencyResolver as LegacyDependencyResolver } from '@teambit/legacy/dist/consumer/component/dependencies/dependency-resolver';\nimport { EXT_NAME } from './constants';\nimport EjectConfCmd from './eject-conf.cmd';\nimport { OnComponentLoad, OnComponentAdd, OnComponentChange, OnComponentRemove } from './on-component-events';\nimport { WorkspaceExtConfig } from './types';\nimport { Workspace } from './workspace';\nimport getWorkspaceSchema from './workspace.graphql';\nimport { WorkspaceUIRoot } from './workspace.ui-root';\nimport { CapsuleCmd, CapsuleCreateCmd, CapsuleDeleteCmd, CapsuleListCmd } from './capsule.cmd';\nimport { EnvsSetCmd } from './envs-subcommands/envs-set.cmd';\nimport { EnvsUnsetCmd } from './envs-subcommands/envs-unset.cmd';\nimport { PatternCommand } from './pattern.cmd';\nimport { EnvsReplaceCmd } from './envs-subcommands/envs-replace.cmd';\nimport { ScopeSetCmd } from './scope-subcommands/scope-set.cmd';\nimport { UseCmd } from './use.cmd';\nimport { EnvsUpdateCmd } from './envs-subcommands/envs-update.cmd';\n\nexport type WorkspaceDeps = [\n PubsubMain,\n CLIMain,\n ScopeMain,\n ComponentMain,\n IsolatorMain,\n DependencyResolverMain,\n VariantsMain,\n LoggerMain,\n GraphqlMain,\n UiMain,\n BundlerMain,\n AspectLoaderMain,\n EnvsMain,\n GlobalConfigMain\n];\n\nexport type OnComponentLoadSlot = SlotRegistry<OnComponentLoad>;\n\nexport type OnComponentChangeSlot = SlotRegistry<OnComponentChange>;\n\nexport type OnComponentAddSlot = SlotRegistry<OnComponentAdd>;\n\nexport type OnComponentRemoveSlot = SlotRegistry<OnComponentRemove>;\n\nexport type OnBitmapChange = () => Promise<void>;\nexport type OnBitmapChangeSlot = SlotRegistry<OnBitmapChange>;\n\nexport type OnAspectsResolve = (aspectsComponents: Component[]) => Promise<void>;\nexport type OnAspectsResolveSlot = SlotRegistry<OnAspectsResolve>;\n\nexport type OnRootAspectAdded = (aspectsId: ComponentID, inWs: boolean) => Promise<void>;\nexport type OnRootAspectAddedSlot = SlotRegistry<OnRootAspectAdded>;\n\nexport default async function provideWorkspace(\n [\n pubsub,\n cli,\n scope,\n component,\n isolator,\n dependencyResolver,\n variants,\n loggerExt,\n graphql,\n ui,\n bundler,\n aspectLoader,\n envs,\n globalConfig,\n ]: WorkspaceDeps,\n config: WorkspaceExtConfig,\n [\n onComponentLoadSlot,\n onComponentChangeSlot,\n onComponentAddSlot,\n onComponentRemoveSlot,\n onAspectsResolveSlot,\n onRootAspectAddedSlot,\n onBitmapChangeSlot,\n ]: [\n OnComponentLoadSlot,\n OnComponentChangeSlot,\n OnComponentAddSlot,\n OnComponentRemoveSlot,\n OnAspectsResolveSlot,\n OnRootAspectAddedSlot,\n OnBitmapChangeSlot\n ],\n harmony: Harmony\n) {\n const bitConfig: any = harmony.config.get('teambit.harmony/bit');\n const consumer = await getConsumer(bitConfig.cwd);\n if (!consumer) return undefined;\n // TODO: get the 'workspace' name in a better way\n const logger = loggerExt.createLogger(EXT_NAME);\n const workspace = new Workspace(\n pubsub,\n config,\n consumer,\n scope,\n component,\n dependencyResolver,\n variants,\n aspectLoader,\n logger,\n undefined,\n harmony,\n onComponentLoadSlot,\n onComponentChangeSlot,\n envs,\n globalConfig,\n onComponentAddSlot,\n onComponentRemoveSlot,\n onAspectsResolveSlot,\n onRootAspectAddedSlot,\n graphql,\n onBitmapChangeSlot\n );\n\n const configMergeFile = workspace.getConflictMergeFile();\n await configMergeFile.loadIfNeeded();\n\n const getWorkspacePolicyFromPackageJson = () => {\n const packageJson = workspace.consumer.packageJson?.packageJsonObject || {};\n const policyFromPackageJson = dependencyResolver.getWorkspacePolicyFromPackageJson(packageJson);\n return policyFromPackageJson;\n };\n\n const getWorkspacePolicyFromMergeConfig = () => {\n const wsConfigMerge = workspace.getWorkspaceJsonConflictFromMergeConfig();\n const policy = wsConfigMerge.data?.[DependencyResolverAspect.id]?.policy || {};\n ['dependencies', 'peerDependencies'].forEach((depField) => {\n if (!policy[depField]) return;\n policy[depField] = policy[depField].reduce((acc, current) => {\n acc[current.name] = current.version;\n return acc;\n }, {});\n });\n const wsPolicy = dependencyResolver.getWorkspacePolicyFromConfigObject(policy);\n return wsPolicy;\n };\n\n const getRootPolicy = () => {\n const pkgJsonPolicy = getWorkspacePolicyFromPackageJson();\n const configMergePolicy = getWorkspacePolicyFromMergeConfig();\n return dependencyResolver.mergeWorkspacePolices([pkgJsonPolicy, configMergePolicy]);\n };\n\n dependencyResolver.registerRootPolicy(getRootPolicy());\n\n consumer.onCacheClear.push(() => workspace.clearCache());\n\n LegacyComponentLoader.registerOnComponentLoadSubscriber(\n async (legacyComponent: ConsumerComponent, opts?: ComponentLoadOptions) => {\n if (opts?.originatedFromHarmony) return legacyComponent;\n const id = await workspace.resolveComponentId(legacyComponent.id);\n const newComponent = await workspace.get(id, legacyComponent, true, true, opts);\n return newComponent.state._consumer;\n }\n );\n\n LegacyDependencyResolver.registerOnComponentAutoDetectOverridesGetter(\n async (configuredExtensions: ExtensionDataList, id: BitId, legacyFiles: SourceFile[]) => {\n let policy = await dependencyResolver.mergeVariantPolicies(configuredExtensions, id, legacyFiles);\n const depsDataOfMergeConfig = workspace.getDepsDataOfMergeConfig(id);\n if (depsDataOfMergeConfig) {\n const policiesFromMergeConfig = VariantPolicy.fromConfigObject(depsDataOfMergeConfig, 'auto');\n policy = VariantPolicy.mergePolices([policy, policiesFromMergeConfig]);\n }\n return policy.toLegacyAutoDetectOverrides();\n }\n );\n\n LegacyDependencyResolver.registerOnComponentAutoDetectConfigMergeGetter((id: BitId) => {\n const depsDataOfMergeConfig = workspace.getDepsDataOfMergeConfig(id);\n if (depsDataOfMergeConfig) {\n const policy = VariantPolicy.fromConfigObject(depsDataOfMergeConfig, 'auto');\n return policy.toLegacyAutoDetectOverrides();\n }\n return undefined;\n });\n\n ConsumerComponent.registerOnComponentConfigLoading(EXT_NAME, async (id) => {\n const componentId = await workspace.resolveComponentId(id);\n // We call here directly workspace.scope.get instead of workspace.get because part of the workspace get is loading consumer component\n // which in turn run this event, which will make an infinite loop\n // This component from scope here are only used for merging the extensions with the workspace components\n const componentFromScope = await workspace.scope.get(componentId);\n const { extensions } = await workspace.componentExtensions(componentId, componentFromScope);\n const defaultScope = await workspace.componentDefaultScope(componentId);\n\n const extensionsWithLegacyIdsP = extensions.map(async (extension) => {\n const legacyEntry = extension.clone();\n if (legacyEntry.extensionId) {\n const compId = await workspace.resolveComponentId(legacyEntry.extensionId);\n legacyEntry.extensionId = compId._legacy;\n legacyEntry.newExtensionId = compId;\n }\n\n return legacyEntry;\n });\n const extensionsWithLegacyIds = await Promise.all(extensionsWithLegacyIdsP);\n\n return {\n defaultScope,\n extensions: ExtensionDataList.fromArray(extensionsWithLegacyIds),\n };\n });\n\n const workspaceSchema = getWorkspaceSchema(workspace, graphql);\n ui.registerUiRoot(new WorkspaceUIRoot(workspace, bundler));\n graphql.register(workspaceSchema);\n const capsuleCmd = new CapsuleCmd(isolator, workspace);\n capsuleCmd.commands = [\n new CapsuleListCmd(isolator, workspace),\n new CapsuleCreateCmd(workspace, isolator),\n new CapsuleDeleteCmd(isolator, workspace),\n ];\n const commands: CommandList = [new EjectConfCmd(workspace), capsuleCmd, new UseCmd(workspace)];\n\n commands.push(new PatternCommand(workspace));\n cli.register(...commands);\n component.registerHost(workspace);\n\n cli.registerOnStart(async (_hasWorkspace: boolean, currentCommand: string) => {\n if (currentCommand === 'mini-status' || currentCommand === 'ms') {\n return; // mini-status should be super fast.\n }\n if (currentCommand === 'install') {\n workspace.inInstallContext = true;\n }\n await workspace.importCurrentLaneIfMissing();\n const loadAspectsOpts = {\n runSubscribers: false,\n skipDeps: !config.autoLoadAspectsDeps,\n };\n const aspects = await workspace.loadAspects(\n aspectLoader.getNotLoadedConfiguredExtensions(),\n undefined,\n 'teambit.workspace/workspace (cli.registerOnStart)',\n loadAspectsOpts\n );\n // clear aspect cache.\n const componentIds = await workspace.resolveMultipleComponentIds(aspects);\n componentIds.forEach((id) => {\n workspace.clearComponentCache(id);\n });\n });\n\n // add sub-commands \"set\" and \"unset\" to envs command.\n const envsCommand = cli.getCommand('envs');\n envsCommand?.commands?.push(new EnvsSetCmd(workspace)); // bit envs set\n envsCommand?.commands?.push(new EnvsUnsetCmd(workspace)); // bit envs unset\n envsCommand?.commands?.push(new EnvsReplaceCmd(workspace)); // bit envs replace\n envsCommand?.commands?.push(new EnvsUpdateCmd(workspace)); // bit envs replace\n\n // add sub-command \"set\" to scope command.\n const scopeCommand = cli.getCommand('scope');\n scopeCommand?.commands?.push(new ScopeSetCmd(workspace));\n\n return workspace;\n}\n\n/**\n * don't use loadConsumer() here, which throws ConsumerNotFound because some commands don't require\n * the consumer to be available. such as, `bit init` or `bit list --remote`.\n * most of the commands do need the consumer. the legacy commands that need the consumer throw an\n * error when is missing. in the new/Harmony commands, such as `bis compile`, the workspace object\n * is passed to the provider, so before using it, make sure it exists.\n * keep in mind that you can't verify it in the provider itself, because the provider is running\n * always for all commands before anything else is happening.\n */\nasync function getConsumer(path?: string): Promise<Consumer | undefined> {\n return loadConsumerIfExist(path);\n}\n"],"mappings":"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"}
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@teambit/workspace",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.1112",
|
|
4
4
|
"homepage": "https://bit.cloud/teambit/workspace/workspace",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"componentId": {
|
|
7
7
|
"scope": "teambit.workspace",
|
|
8
8
|
"name": "workspace",
|
|
9
|
-
"version": "0.0.
|
|
9
|
+
"version": "0.0.1112"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"lodash": "4.17.21",
|
|
@@ -35,52 +35,52 @@
|
|
|
35
35
|
"@teambit/base-ui.surfaces.split-pane.hover-splitter": "1.0.0",
|
|
36
36
|
"@teambit/base-ui.surfaces.split-pane.split-pane": "1.0.0",
|
|
37
37
|
"@teambit/explorer.ui.gallery.component-grid": "0.0.496",
|
|
38
|
-
"@teambit/component": "0.0.
|
|
39
|
-
"@teambit/dependency-resolver": "0.0.
|
|
40
|
-
"@teambit/envs": "0.0.
|
|
38
|
+
"@teambit/component": "0.0.1112",
|
|
39
|
+
"@teambit/dependency-resolver": "0.0.1112",
|
|
40
|
+
"@teambit/envs": "0.0.1112",
|
|
41
41
|
"@teambit/bit-error": "0.0.402",
|
|
42
|
-
"@teambit/lane-id": "0.0.
|
|
43
|
-
"@teambit/logger": "0.0.
|
|
44
|
-
"@teambit/scope": "0.0.
|
|
45
|
-
"@teambit/graph": "0.0.
|
|
46
|
-
"@teambit/cli": "0.0.
|
|
47
|
-
"@teambit/isolator": "0.0.
|
|
48
|
-
"@teambit/component-tree": "0.0.
|
|
42
|
+
"@teambit/lane-id": "0.0.260",
|
|
43
|
+
"@teambit/logger": "0.0.837",
|
|
44
|
+
"@teambit/scope": "0.0.1112",
|
|
45
|
+
"@teambit/graph": "0.0.1112",
|
|
46
|
+
"@teambit/cli": "0.0.744",
|
|
47
|
+
"@teambit/isolator": "0.0.1112",
|
|
48
|
+
"@teambit/component-tree": "0.0.900",
|
|
49
49
|
"@teambit/component.ui.component-status-resolver": "0.0.505",
|
|
50
50
|
"@teambit/harmony.modules.resolved-component": "0.0.491",
|
|
51
|
-
"@teambit/compiler": "0.0.
|
|
52
|
-
"@teambit/aspect-loader": "0.0.
|
|
53
|
-
"@teambit/config": "0.0.
|
|
54
|
-
"@teambit/global-config": "0.0.
|
|
51
|
+
"@teambit/compiler": "0.0.1112",
|
|
52
|
+
"@teambit/aspect-loader": "0.0.1112",
|
|
53
|
+
"@teambit/config": "0.0.758",
|
|
54
|
+
"@teambit/global-config": "0.0.746",
|
|
55
55
|
"@teambit/harmony.modules.requireable-component": "0.0.491",
|
|
56
56
|
"@teambit/toolbox.modules.module-resolver": "0.0.1",
|
|
57
|
-
"@teambit/workspace.modules.node-modules-linker": "0.0.
|
|
58
|
-
"@teambit/graphql": "0.0.
|
|
59
|
-
"@teambit/bundler": "0.0.
|
|
60
|
-
"@teambit/pubsub": "0.0.
|
|
61
|
-
"@teambit/ui": "0.0.
|
|
62
|
-
"@teambit/variants": "0.0.
|
|
57
|
+
"@teambit/workspace.modules.node-modules-linker": "0.0.87",
|
|
58
|
+
"@teambit/graphql": "0.0.1112",
|
|
59
|
+
"@teambit/bundler": "0.0.1112",
|
|
60
|
+
"@teambit/pubsub": "0.0.1112",
|
|
61
|
+
"@teambit/ui": "0.0.1112",
|
|
62
|
+
"@teambit/variants": "0.0.850",
|
|
63
63
|
"@teambit/component-issues": "0.0.93",
|
|
64
64
|
"@teambit/component-version": "0.0.409",
|
|
65
65
|
"@teambit/workspace.modules.match-pattern": "0.0.498",
|
|
66
|
-
"@teambit/component.ui.component-drawer": "0.0.
|
|
67
|
-
"@teambit/lanes.hooks.use-lane-components": "0.0.
|
|
68
|
-
"@teambit/lanes.hooks.use-lanes": "0.0.
|
|
69
|
-
"@teambit/lanes.ui.models.lanes-model": "0.0.
|
|
70
|
-
"@teambit/ui-foundation.ui.side-bar": "0.0.
|
|
71
|
-
"@teambit/command-bar": "0.0.
|
|
72
|
-
"@teambit/component.ui.component-filters.component-filter-context": "0.0.
|
|
73
|
-
"@teambit/component.ui.component-filters.deprecate-filter": "0.0.
|
|
74
|
-
"@teambit/component.ui.component-filters.env-filter": "0.0.
|
|
75
|
-
"@teambit/component.ui.component-filters.show-main-filter": "0.0.
|
|
76
|
-
"@teambit/sidebar": "0.0.
|
|
66
|
+
"@teambit/component.ui.component-drawer": "0.0.303",
|
|
67
|
+
"@teambit/lanes.hooks.use-lane-components": "0.0.206",
|
|
68
|
+
"@teambit/lanes.hooks.use-lanes": "0.0.207",
|
|
69
|
+
"@teambit/lanes.ui.models.lanes-model": "0.0.160",
|
|
70
|
+
"@teambit/ui-foundation.ui.side-bar": "0.0.820",
|
|
71
|
+
"@teambit/command-bar": "0.0.1112",
|
|
72
|
+
"@teambit/component.ui.component-filters.component-filter-context": "0.0.167",
|
|
73
|
+
"@teambit/component.ui.component-filters.deprecate-filter": "0.0.167",
|
|
74
|
+
"@teambit/component.ui.component-filters.env-filter": "0.0.173",
|
|
75
|
+
"@teambit/component.ui.component-filters.show-main-filter": "0.0.160",
|
|
76
|
+
"@teambit/sidebar": "0.0.1112",
|
|
77
77
|
"@teambit/ui-foundation.ui.main-dropdown": "0.0.497",
|
|
78
78
|
"@teambit/ui-foundation.ui.menu": "0.0.497",
|
|
79
79
|
"@teambit/ui-foundation.ui.react-router.slot-router": "0.0.501",
|
|
80
80
|
"@teambit/ui-foundation.ui.tree.drawer": "0.0.512",
|
|
81
81
|
"@teambit/ui-foundation.ui.hooks.use-data-query": "0.0.500",
|
|
82
|
-
"@teambit/component-descriptor": "0.0.
|
|
83
|
-
"@teambit/deprecation": "0.0.
|
|
82
|
+
"@teambit/component-descriptor": "0.0.312",
|
|
83
|
+
"@teambit/deprecation": "0.0.1112",
|
|
84
84
|
"@teambit/ui-foundation.ui.constants.z-indexes": "0.0.499",
|
|
85
85
|
"@teambit/ui-foundation.ui.buttons.collapser": "0.0.207",
|
|
86
86
|
"@teambit/ui-foundation.ui.corner": "0.0.510",
|
|
@@ -107,7 +107,7 @@
|
|
|
107
107
|
"peerDependencies": {
|
|
108
108
|
"@apollo/client": "^3.6.0",
|
|
109
109
|
"react-router-dom": "^6.0.0",
|
|
110
|
-
"@teambit/legacy": "1.0.
|
|
110
|
+
"@teambit/legacy": "1.0.524",
|
|
111
111
|
"react": "^16.8.0 || ^17.0.0",
|
|
112
112
|
"react-dom": "^16.8.0 || ^17.0.0"
|
|
113
113
|
},
|
|
@@ -90,7 +90,7 @@ export class WorkspaceComponentLoader {
|
|
|
90
90
|
loadOpts?: ComponentLoadOptions
|
|
91
91
|
): Promise<Component> {
|
|
92
92
|
const bitIdWithVersion: BitId = getLatestVersionNumber(
|
|
93
|
-
this.workspace.consumer.
|
|
93
|
+
this.workspace.consumer.bitmapIdsFromCurrentLaneIncludeRemoved,
|
|
94
94
|
componentId._legacy
|
|
95
95
|
);
|
|
96
96
|
const id = bitIdWithVersion.version ? componentId.changeVersion(bitIdWithVersion.version) : componentId;
|
|
@@ -98,7 +98,7 @@ export class WorkspaceComponentLoader {
|
|
|
98
98
|
if (fromCache && useCache) {
|
|
99
99
|
return fromCache;
|
|
100
100
|
}
|
|
101
|
-
const consumerComponent = legacyComponent || (await this.getConsumerComponent(id));
|
|
101
|
+
const consumerComponent = legacyComponent || (await this.getConsumerComponent(id, loadOpts));
|
|
102
102
|
// in case of out-of-sync, the id may changed during the load process
|
|
103
103
|
const updatedId = consumerComponent ? ComponentID.fromLegacy(consumerComponent.id, id.scope) : id;
|
|
104
104
|
const component = await this.loadOne(updatedId, consumerComponent, loadOpts);
|
|
@@ -208,11 +208,16 @@ export class WorkspaceComponentLoader {
|
|
|
208
208
|
return undefined;
|
|
209
209
|
}
|
|
210
210
|
|
|
211
|
-
async getConsumerComponent(
|
|
211
|
+
async getConsumerComponent(
|
|
212
|
+
id: ComponentID,
|
|
213
|
+
loadOpts: ComponentLoadOptions = {}
|
|
214
|
+
): Promise<ConsumerComponent | undefined> {
|
|
215
|
+
loadOpts.originatedFromHarmony = true;
|
|
212
216
|
try {
|
|
213
217
|
const { components, removedComponents } = await this.workspace.consumer.loadComponents(
|
|
214
218
|
BitIds.fromArray([id._legacy]),
|
|
215
|
-
true
|
|
219
|
+
true,
|
|
220
|
+
loadOpts
|
|
216
221
|
);
|
|
217
222
|
return components?.[0] || removedComponents?.[0];
|
|
218
223
|
} catch (err: any) {
|
|
Binary file
|