@teambit/eject 1.0.330 → 1.0.332
Sign up to get free protection for your applications and to get access to all the features.
- package/artifacts/__bit_junit.xml +1 -1
- package/artifacts/preview/teambit_workspace_eject-preview.js +1 -1
- package/artifacts/schema.json +114 -231
- package/dist/components-ejector.d.ts +0 -2
- package/dist/components-ejector.js +12 -17
- package/dist/components-ejector.js.map +1 -1
- package/dist/{preview-1720513025675.js → preview-1720690103747.js} +2 -2
- package/package.json +9 -7
@@ -11,7 +11,6 @@ import { Workspace } from '@teambit/workspace';
|
|
11
11
|
import { Consumer } from '@teambit/legacy/dist/consumer';
|
12
12
|
import { ComponentIdList, ComponentID } from '@teambit/component-id';
|
13
13
|
import Component from '@teambit/legacy/dist/consumer/component/consumer-component';
|
14
|
-
import PackageJsonFile from '@teambit/legacy/dist/consumer/component/package-json-file';
|
15
14
|
import { Logger } from '@teambit/logger';
|
16
15
|
import { InstallMain } from '@teambit/install';
|
17
16
|
export type EjectResults = {
|
@@ -43,7 +42,6 @@ export declare class ComponentsEjector {
|
|
43
42
|
ejectedDependencies: Component[];
|
44
43
|
}>;
|
45
44
|
failedComponents: FailedComponents;
|
46
|
-
packageJsonFilesBeforeChanges: PackageJsonFile[];
|
47
45
|
constructor(workspace: Workspace, install: InstallMain, logger: Logger, componentsIds: ComponentID[], ejectOptions: EjectOptions);
|
48
46
|
eject(): Promise<EjectResults>;
|
49
47
|
decideWhichComponentsToEject(): Promise<void>;
|
@@ -25,16 +25,9 @@ function _scopeRemotes() {
|
|
25
25
|
};
|
26
26
|
return data;
|
27
27
|
}
|
28
|
-
function
|
29
|
-
const data =
|
30
|
-
|
31
|
-
return data;
|
32
|
-
};
|
33
|
-
return data;
|
34
|
-
}
|
35
|
-
function packageJsonUtils() {
|
36
|
-
const data = _interopRequireWildcard(require("@teambit/legacy/dist/consumer/component/package-json-utils"));
|
37
|
-
packageJsonUtils = function () {
|
28
|
+
function _pkgModules() {
|
29
|
+
const data = require("@teambit/pkg.modules.component-package-name");
|
30
|
+
_pkgModules = function () {
|
38
31
|
return data;
|
39
32
|
};
|
40
33
|
return data;
|
@@ -53,8 +46,13 @@ function _removePath() {
|
|
53
46
|
};
|
54
47
|
return data;
|
55
48
|
}
|
56
|
-
function
|
57
|
-
|
49
|
+
function _remove() {
|
50
|
+
const data = require("@teambit/remove");
|
51
|
+
_remove = function () {
|
52
|
+
return data;
|
53
|
+
};
|
54
|
+
return data;
|
55
|
+
}
|
58
56
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
59
57
|
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; }
|
60
58
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
@@ -68,7 +66,6 @@ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e =
|
|
68
66
|
* removing the component files, so then it's easier to rollback.
|
69
67
|
*/
|
70
68
|
class ComponentsEjector {
|
71
|
-
// for rollback in case of errors
|
72
69
|
constructor(workspace, install, logger, componentsIds, ejectOptions) {
|
73
70
|
this.workspace = workspace;
|
74
71
|
this.install = install;
|
@@ -81,8 +78,6 @@ class ComponentsEjector {
|
|
81
78
|
// @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!
|
82
79
|
_defineProperty(this, "notEjectedDependents", void 0);
|
83
80
|
_defineProperty(this, "failedComponents", void 0);
|
84
|
-
// @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!
|
85
|
-
_defineProperty(this, "packageJsonFilesBeforeChanges", void 0);
|
86
81
|
this.consumer = this.workspace.consumer;
|
87
82
|
this.idsToEject = new (_componentId().ComponentIdList)();
|
88
83
|
this.failedComponents = {
|
@@ -144,7 +139,7 @@ class ComponentsEjector {
|
|
144
139
|
const action = 'Eject: removing the existing components from node_modules';
|
145
140
|
this.logger.setStatusLine(action);
|
146
141
|
this.logger.debug(action);
|
147
|
-
await
|
142
|
+
await (0, _remove().removeComponentsFromNodeModules)(this.consumer, this.componentsToEject);
|
148
143
|
this.logger.consoleSuccess(action);
|
149
144
|
}
|
150
145
|
async installPackages() {
|
@@ -154,7 +149,7 @@ class ComponentsEjector {
|
|
154
149
|
await this.install.install(packages);
|
155
150
|
}
|
156
151
|
getPackagesToInstall() {
|
157
|
-
return this.componentsToEject.map(c => (0,
|
152
|
+
return this.componentsToEject.map(c => (0, _pkgModules().componentIdToPackageName)(c));
|
158
153
|
}
|
159
154
|
_buildExceptionMessageWithRollbackData(action) {
|
160
155
|
return `eject failed ${action}.
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_componentId","data","require","_defaultErrorHandler","_interopRequireDefault","_scopeRemotes","_componentIdToPackageName","packageJsonUtils","_interopRequireWildcard","_dataToPersist","_removePath","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_defineProperty","_toPropertyKey","value","enumerable","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","ComponentsEjector","constructor","workspace","install","logger","componentsIds","ejectOptions","consumer","idsToEject","ComponentIdList","failedComponents","modifiedComponents","stagedComponents","notExportedComponents","selfHostedExportedComponents","eject","decideWhichComponentsToEject","debug","length","loadComponentsToEject","_validateIdsHaveScopesAndVersions","removeComponentsFromNodeModules","untrackComponents","installPackages","removeComponentsFiles","writeBitMap","ejectedComponents","setStatusLine","remotes","getScopeRemotes","scope","hubExportedComponents","forEach","componentId","bitId","isExported","push","isHub","force","Promise","all","map","id","componentStatus","getComponentStatusById","modified","staged","err","throwEjectError","toString","consoleSuccess","components","loadComponents","componentsToEject","action","skipDependencyInstallation","packages","getPackagesToInstall","c","componentIdToPackageName","_buildExceptionMessageWithRollbackData","keepFiles","dataToPersist","DataToPersist","component","componentMap","Error","rootDir","removePath","RemovePath","addBasePath","getPath","persistAllToFS","cleanFromBitMap","message","originalError","originalErrorMessage","defaultErrorHandler","error","hasScope","hasVersion","exports"],"sources":["components-ejector.ts"],"sourcesContent":["/**\n * a classic use case of eject is when a user imports a component using `bit import` to update it,\n * but the user has no intention to have the code as part of the project source code.\n * the eject provides the option to delete the component locally and install it via the NPM client.\n *\n * an implementation note, the entire process is done with rollback in mind.\n * since installing the component via NPM client is an error prone process, we do it first, before\n * removing the component files, so then it's easier to rollback.\n */\nimport { Workspace } from '@teambit/workspace';\nimport { Consumer } from '@teambit/legacy/dist/consumer';\nimport { ComponentIdList, ComponentID } from '@teambit/component-id';\nimport defaultErrorHandler from '@teambit/legacy/dist/cli/default-error-handler';\nimport { getScopeRemotes } from '@teambit/legacy/dist/scope/scope-remotes';\nimport componentIdToPackageName from '@teambit/legacy/dist/utils/bit/component-id-to-package-name';\nimport Component from '@teambit/legacy/dist/consumer/component/consumer-component';\nimport PackageJsonFile from '@teambit/legacy/dist/consumer/component/package-json-file';\nimport * as packageJsonUtils from '@teambit/legacy/dist/consumer/component/package-json-utils';\nimport DataToPersist from '@teambit/legacy/dist/consumer/component/sources/data-to-persist';\nimport RemovePath from '@teambit/legacy/dist/consumer/component/sources/remove-path';\nimport { Logger } from '@teambit/logger';\nimport { InstallMain } from '@teambit/install';\n\nexport type EjectResults = {\n ejectedComponents: ComponentIdList;\n failedComponents: FailedComponents;\n};\n\nexport type EjectOptions = {\n force?: boolean; // eject although a component is modified/staged\n keepFiles?: boolean; // keep component files on the workspace\n skipDependencyInstallation?: boolean; // skip installing the dependencies\n};\n\ntype FailedComponents = {\n modifiedComponents: ComponentIdList;\n stagedComponents: ComponentIdList;\n notExportedComponents: ComponentIdList;\n selfHostedExportedComponents: ComponentIdList;\n};\n\nexport class ComponentsEjector {\n consumer: Consumer;\n idsToEject: ComponentIdList;\n componentsToEject: Component[] = [];\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n notEjectedDependents: Array<{ dependent: Component; ejectedDependencies: Component[] }>;\n failedComponents: FailedComponents;\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n packageJsonFilesBeforeChanges: PackageJsonFile[]; // for rollback in case of errors\n constructor(\n private workspace: Workspace,\n private install: InstallMain,\n private logger: Logger,\n private componentsIds: ComponentID[],\n private ejectOptions: EjectOptions\n ) {\n this.consumer = this.workspace.consumer;\n this.idsToEject = new ComponentIdList();\n this.failedComponents = {\n modifiedComponents: new ComponentIdList(),\n stagedComponents: new ComponentIdList(),\n notExportedComponents: new ComponentIdList(),\n selfHostedExportedComponents: new ComponentIdList(),\n };\n }\n\n async eject(): Promise<EjectResults> {\n await this.decideWhichComponentsToEject();\n this.logger.debug(`${this.idsToEject.length} to eject`);\n await this.loadComponentsToEject();\n if (this.idsToEject.length) {\n this._validateIdsHaveScopesAndVersions();\n await this.removeComponentsFromNodeModules();\n await this.untrackComponents();\n await this.installPackages();\n await this.removeComponentsFiles();\n await this.consumer.writeBitMap();\n }\n this.logger.debug('eject: completed successfully');\n return {\n ejectedComponents: this.idsToEject,\n failedComponents: this.failedComponents,\n };\n }\n\n async decideWhichComponentsToEject(): Promise<void> {\n this.logger.setStatusLine('Eject: getting the components status');\n if (!this.componentsIds.length) return;\n const remotes = await getScopeRemotes(this.consumer.scope);\n const hubExportedComponents = new ComponentIdList();\n this.componentsIds.forEach((componentId) => {\n const bitId = componentId;\n if (!this.workspace.isExported(bitId)) this.failedComponents.notExportedComponents.push(bitId);\n else if (remotes.isHub(bitId.scope as string)) hubExportedComponents.push(bitId);\n else this.failedComponents.selfHostedExportedComponents.push(bitId);\n });\n if (this.ejectOptions.force) {\n this.idsToEject = hubExportedComponents;\n } else {\n await Promise.all(\n hubExportedComponents.map(async (id) => {\n try {\n const componentStatus = await this.workspace.getComponentStatusById(id);\n if (componentStatus.modified) this.failedComponents.modifiedComponents.push(id);\n else if (componentStatus.staged) this.failedComponents.stagedComponents.push(id);\n else this.idsToEject.push(id);\n } catch (err: any) {\n this.throwEjectError(\n `eject operation failed getting the status of ${id.toString()}, no action has been done.\n please fix the issue to continue.`,\n err\n );\n }\n })\n );\n }\n this.logger.consoleSuccess();\n }\n\n async loadComponentsToEject() {\n const { components } = await this.consumer.loadComponents(this.idsToEject);\n this.componentsToEject = components;\n }\n\n async removeComponentsFromNodeModules() {\n const action = 'Eject: removing the existing components from node_modules';\n this.logger.setStatusLine(action);\n this.logger.debug(action);\n await packageJsonUtils.removeComponentsFromNodeModules(this.consumer, this.componentsToEject);\n this.logger.consoleSuccess(action);\n }\n\n async installPackages() {\n if (this.ejectOptions.skipDependencyInstallation) return;\n this.logger.setStatusLine('Eject: installing packages using the package-manager');\n const packages = this.getPackagesToInstall();\n await this.install.install(packages);\n }\n\n getPackagesToInstall(): string[] {\n return this.componentsToEject.map((c) => componentIdToPackageName(c));\n }\n\n _buildExceptionMessageWithRollbackData(action: string): string {\n return `eject failed ${action}.\nyour package.json (if existed) has been restored, however, some bit generated data may have been deleted, please run \"bit link\" to restore them.`;\n }\n\n /**\n * as part of the 'eject' operation, a component is removed locally. as opposed to the remove\n * command, in this case, no need to remove the objects from the scope, only remove from the\n * filesystem, which means, delete the component files, untrack from .bitmap and clean\n * package.json and bit.json traces.\n */\n private async removeComponentsFiles() {\n if (this.ejectOptions.keepFiles) {\n return;\n }\n this.logger.setStatusLine('Eject: removing the components files from the filesystem');\n const dataToPersist = new DataToPersist();\n this.componentsToEject.forEach((component) => {\n const componentMap = component.componentMap;\n if (!componentMap) {\n throw new Error('ComponentEjector.removeComponentsFiles expect a component to have componentMap prop');\n }\n const rootDir = componentMap.rootDir;\n if (!rootDir) {\n throw new Error('ComponentEjector.removeComponentsFiles expect a componentMap to have rootDir');\n }\n dataToPersist.removePath(new RemovePath(rootDir, true));\n });\n dataToPersist.addBasePath(this.consumer.getPath());\n await dataToPersist.persistAllToFS();\n this.logger.consoleSuccess();\n }\n\n private async untrackComponents() {\n this.logger.debug('eject: removing the components from the .bitmap');\n await this.consumer.cleanFromBitMap(this.idsToEject);\n }\n\n throwEjectError(message: string, originalError: Error) {\n const { message: originalErrorMessage } = defaultErrorHandler(originalError);\n this.logger.error(`eject has stopped due to an error ${originalErrorMessage}`, originalError);\n throw new Error(`${message}\n\ngot the following error: ${originalErrorMessage}`);\n }\n\n _validateIdsHaveScopesAndVersions() {\n this.idsToEject.forEach((id) => {\n if (!id.hasScope() || !id.hasVersion()) {\n throw new TypeError(`EjectComponents expects ids with scope and version, got ${id.toString()}`);\n }\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"names":["_componentId","data","require","_defaultErrorHandler","_interopRequireDefault","_scopeRemotes","_pkgModules","_dataToPersist","_removePath","_remove","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ComponentsEjector","constructor","workspace","install","logger","componentsIds","ejectOptions","consumer","idsToEject","ComponentIdList","failedComponents","modifiedComponents","stagedComponents","notExportedComponents","selfHostedExportedComponents","eject","decideWhichComponentsToEject","debug","length","loadComponentsToEject","_validateIdsHaveScopesAndVersions","removeComponentsFromNodeModules","untrackComponents","installPackages","removeComponentsFiles","writeBitMap","ejectedComponents","setStatusLine","remotes","getScopeRemotes","scope","hubExportedComponents","forEach","componentId","bitId","isExported","push","isHub","force","Promise","all","map","id","componentStatus","getComponentStatusById","modified","staged","err","throwEjectError","toString","consoleSuccess","components","loadComponents","componentsToEject","action","skipDependencyInstallation","packages","getPackagesToInstall","c","componentIdToPackageName","_buildExceptionMessageWithRollbackData","keepFiles","dataToPersist","DataToPersist","component","componentMap","Error","rootDir","removePath","RemovePath","addBasePath","getPath","persistAllToFS","cleanFromBitMap","message","originalError","originalErrorMessage","defaultErrorHandler","error","hasScope","hasVersion","exports"],"sources":["components-ejector.ts"],"sourcesContent":["/**\n * a classic use case of eject is when a user imports a component using `bit import` to update it,\n * but the user has no intention to have the code as part of the project source code.\n * the eject provides the option to delete the component locally and install it via the NPM client.\n *\n * an implementation note, the entire process is done with rollback in mind.\n * since installing the component via NPM client is an error prone process, we do it first, before\n * removing the component files, so then it's easier to rollback.\n */\nimport { Workspace } from '@teambit/workspace';\nimport { Consumer } from '@teambit/legacy/dist/consumer';\nimport { ComponentIdList, ComponentID } from '@teambit/component-id';\nimport defaultErrorHandler from '@teambit/legacy/dist/cli/default-error-handler';\nimport { getScopeRemotes } from '@teambit/legacy/dist/scope/scope-remotes';\nimport { componentIdToPackageName } from '@teambit/pkg.modules.component-package-name';\nimport Component from '@teambit/legacy/dist/consumer/component/consumer-component';\nimport DataToPersist from '@teambit/legacy/dist/consumer/component/sources/data-to-persist';\nimport RemovePath from '@teambit/legacy/dist/consumer/component/sources/remove-path';\nimport { Logger } from '@teambit/logger';\nimport { InstallMain } from '@teambit/install';\nimport { removeComponentsFromNodeModules } from '@teambit/remove';\n\nexport type EjectResults = {\n ejectedComponents: ComponentIdList;\n failedComponents: FailedComponents;\n};\n\nexport type EjectOptions = {\n force?: boolean; // eject although a component is modified/staged\n keepFiles?: boolean; // keep component files on the workspace\n skipDependencyInstallation?: boolean; // skip installing the dependencies\n};\n\ntype FailedComponents = {\n modifiedComponents: ComponentIdList;\n stagedComponents: ComponentIdList;\n notExportedComponents: ComponentIdList;\n selfHostedExportedComponents: ComponentIdList;\n};\n\nexport class ComponentsEjector {\n consumer: Consumer;\n idsToEject: ComponentIdList;\n componentsToEject: Component[] = [];\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n notEjectedDependents: Array<{ dependent: Component; ejectedDependencies: Component[] }>;\n failedComponents: FailedComponents;\n constructor(\n private workspace: Workspace,\n private install: InstallMain,\n private logger: Logger,\n private componentsIds: ComponentID[],\n private ejectOptions: EjectOptions\n ) {\n this.consumer = this.workspace.consumer;\n this.idsToEject = new ComponentIdList();\n this.failedComponents = {\n modifiedComponents: new ComponentIdList(),\n stagedComponents: new ComponentIdList(),\n notExportedComponents: new ComponentIdList(),\n selfHostedExportedComponents: new ComponentIdList(),\n };\n }\n\n async eject(): Promise<EjectResults> {\n await this.decideWhichComponentsToEject();\n this.logger.debug(`${this.idsToEject.length} to eject`);\n await this.loadComponentsToEject();\n if (this.idsToEject.length) {\n this._validateIdsHaveScopesAndVersions();\n await this.removeComponentsFromNodeModules();\n await this.untrackComponents();\n await this.installPackages();\n await this.removeComponentsFiles();\n await this.consumer.writeBitMap();\n }\n this.logger.debug('eject: completed successfully');\n return {\n ejectedComponents: this.idsToEject,\n failedComponents: this.failedComponents,\n };\n }\n\n async decideWhichComponentsToEject(): Promise<void> {\n this.logger.setStatusLine('Eject: getting the components status');\n if (!this.componentsIds.length) return;\n const remotes = await getScopeRemotes(this.consumer.scope);\n const hubExportedComponents = new ComponentIdList();\n this.componentsIds.forEach((componentId) => {\n const bitId = componentId;\n if (!this.workspace.isExported(bitId)) this.failedComponents.notExportedComponents.push(bitId);\n else if (remotes.isHub(bitId.scope as string)) hubExportedComponents.push(bitId);\n else this.failedComponents.selfHostedExportedComponents.push(bitId);\n });\n if (this.ejectOptions.force) {\n this.idsToEject = hubExportedComponents;\n } else {\n await Promise.all(\n hubExportedComponents.map(async (id) => {\n try {\n const componentStatus = await this.workspace.getComponentStatusById(id);\n if (componentStatus.modified) this.failedComponents.modifiedComponents.push(id);\n else if (componentStatus.staged) this.failedComponents.stagedComponents.push(id);\n else this.idsToEject.push(id);\n } catch (err: any) {\n this.throwEjectError(\n `eject operation failed getting the status of ${id.toString()}, no action has been done.\n please fix the issue to continue.`,\n err\n );\n }\n })\n );\n }\n this.logger.consoleSuccess();\n }\n\n async loadComponentsToEject() {\n const { components } = await this.consumer.loadComponents(this.idsToEject);\n this.componentsToEject = components;\n }\n\n async removeComponentsFromNodeModules() {\n const action = 'Eject: removing the existing components from node_modules';\n this.logger.setStatusLine(action);\n this.logger.debug(action);\n await removeComponentsFromNodeModules(this.consumer, this.componentsToEject);\n this.logger.consoleSuccess(action);\n }\n\n async installPackages() {\n if (this.ejectOptions.skipDependencyInstallation) return;\n this.logger.setStatusLine('Eject: installing packages using the package-manager');\n const packages = this.getPackagesToInstall();\n await this.install.install(packages);\n }\n\n getPackagesToInstall(): string[] {\n return this.componentsToEject.map((c) => componentIdToPackageName(c));\n }\n\n _buildExceptionMessageWithRollbackData(action: string): string {\n return `eject failed ${action}.\nyour package.json (if existed) has been restored, however, some bit generated data may have been deleted, please run \"bit link\" to restore them.`;\n }\n\n /**\n * as part of the 'eject' operation, a component is removed locally. as opposed to the remove\n * command, in this case, no need to remove the objects from the scope, only remove from the\n * filesystem, which means, delete the component files, untrack from .bitmap and clean\n * package.json and bit.json traces.\n */\n private async removeComponentsFiles() {\n if (this.ejectOptions.keepFiles) {\n return;\n }\n this.logger.setStatusLine('Eject: removing the components files from the filesystem');\n const dataToPersist = new DataToPersist();\n this.componentsToEject.forEach((component) => {\n const componentMap = component.componentMap;\n if (!componentMap) {\n throw new Error('ComponentEjector.removeComponentsFiles expect a component to have componentMap prop');\n }\n const rootDir = componentMap.rootDir;\n if (!rootDir) {\n throw new Error('ComponentEjector.removeComponentsFiles expect a componentMap to have rootDir');\n }\n dataToPersist.removePath(new RemovePath(rootDir, true));\n });\n dataToPersist.addBasePath(this.consumer.getPath());\n await dataToPersist.persistAllToFS();\n this.logger.consoleSuccess();\n }\n\n private async untrackComponents() {\n this.logger.debug('eject: removing the components from the .bitmap');\n await this.consumer.cleanFromBitMap(this.idsToEject);\n }\n\n throwEjectError(message: string, originalError: Error) {\n const { message: originalErrorMessage } = defaultErrorHandler(originalError);\n this.logger.error(`eject has stopped due to an error ${originalErrorMessage}`, originalError);\n throw new Error(`${message}\n\ngot the following error: ${originalErrorMessage}`);\n }\n\n _validateIdsHaveScopesAndVersions() {\n this.idsToEject.forEach((id) => {\n if (!id.hasScope() || !id.hasVersion()) {\n throw new TypeError(`EjectComponents expects ids with scope and version, got ${id.toString()}`);\n }\n });\n }\n}\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.workspace_eject@1.0.
|
2
|
-
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.workspace_eject@1.0.
|
1
|
+
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.workspace_eject@1.0.332/dist/eject.composition.js';
|
2
|
+
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.workspace_eject@1.0.332/dist/eject.docs.mdx';
|
3
3
|
|
4
4
|
export const compositions = [compositions_0];
|
5
5
|
export const overview = [overview_0];
|
package/package.json
CHANGED
@@ -1,26 +1,28 @@
|
|
1
1
|
{
|
2
2
|
"name": "@teambit/eject",
|
3
|
-
"version": "1.0.
|
3
|
+
"version": "1.0.332",
|
4
4
|
"homepage": "https://bit.cloud/teambit/workspace/eject",
|
5
5
|
"main": "dist/index.js",
|
6
6
|
"componentId": {
|
7
7
|
"scope": "teambit.workspace",
|
8
8
|
"name": "eject",
|
9
|
-
"version": "1.0.
|
9
|
+
"version": "1.0.332"
|
10
10
|
},
|
11
11
|
"dependencies": {
|
12
12
|
"chalk": "2.4.2",
|
13
13
|
"@teambit/component-id": "1.2.0",
|
14
14
|
"@teambit/harmony": "0.4.6",
|
15
|
-
"@teambit/install": "1.0.
|
16
|
-
"@teambit/logger": "0.0.
|
17
|
-
"@teambit/
|
18
|
-
"@teambit/
|
15
|
+
"@teambit/install": "1.0.332",
|
16
|
+
"@teambit/logger": "0.0.1002",
|
17
|
+
"@teambit/pkg.modules.component-package-name": "0.0.2",
|
18
|
+
"@teambit/remove": "1.0.332",
|
19
|
+
"@teambit/workspace": "1.0.332",
|
20
|
+
"@teambit/cli": "0.0.909"
|
19
21
|
},
|
20
22
|
"devDependencies": {
|
21
23
|
"@types/mocha": "9.1.0",
|
22
24
|
"chai": "4.3.0",
|
23
|
-
"@teambit/harmony.envs.core-aspect-env": "0.0.
|
25
|
+
"@teambit/harmony.envs.core-aspect-env": "0.0.42"
|
24
26
|
},
|
25
27
|
"peerDependencies": {
|
26
28
|
"react": "^17.0.0 || ^18.0.0",
|