@teambit/host-initializer 0.0.208 → 0.0.210

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/esm.mjs CHANGED
@@ -2,6 +2,7 @@
2
2
  import cjsModule from './index.js';
3
3
 
4
4
  export const HostInitializerAspect = cjsModule.HostInitializerAspect;
5
+ export const HostInitializerMain = cjsModule.HostInitializerMain;
5
6
 
6
7
  export default cjsModule;
7
8
 
@@ -101,10 +101,10 @@ class HostInitializerMain {
101
101
  const consumerInfo = await (0, _workspaceModules().getWorkspaceInfo)(absPath || process.cwd());
102
102
  // if "bit init" was running without any flags, the user is probably trying to init a new workspace but wasn't aware
103
103
  // that he's already in a workspace.
104
- if (!absPath && consumerInfo !== null && consumerInfo !== void 0 && consumerInfo.path && consumerInfo.path !== process.cwd() && !reset && !resetHard && !resetScope && !resetNew && !resetLaneNew) {
104
+ if (!absPath && consumerInfo?.path && consumerInfo.path !== process.cwd() && !reset && !resetHard && !resetScope && !resetNew && !resetLaneNew) {
105
105
  throw new Error(`error: unable to init a new workspace in an inner directory of an existing workspace at "${consumerInfo.path}"`);
106
106
  }
107
- const consumerPath = (consumerInfo === null || consumerInfo === void 0 ? void 0 : consumerInfo.path) || absPath || process.cwd();
107
+ const consumerPath = consumerInfo?.path || absPath || process.cwd();
108
108
  workspaceConfigProps = _objectSpread(_objectSpread({}, workspaceConfigProps), {}, {
109
109
  name: workspaceConfigProps.name || path().basename(consumerPath)
110
110
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_fsExtra","data","_interopRequireDefault","require","path","_interopRequireWildcard","_scopeModules","_workspaceModules","_legacy","_scope","_toolboxFs","_cli","_objectsWithoutConsumer","_hostInitializer","_initCmd","_createConsumer","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","HostInitializerMain","init","absPath","noGit","noPackageJson","reset","resetNew","resetLaneNew","resetHard","resetScope","force","workspaceConfigProps","generator","consumerInfo","getWorkspaceInfo","process","cwd","Error","consumerPath","name","basename","resetConsumer","consumer","createConsumer","scopePath","findScopePath","Scope","throwForOutOfSyncScope","write","provider","cli","hostInitializerMain","initCmd","InitCmd","register","exports","CLIAspect","MainRuntime","HostInitializerAspect","addRuntime","_default","bitMap","isEmpty","scope","getPath","objectsPath","Repository","getPathByScopePath","dirExist","fs","pathExists","hasObjects","isDirEmpty","ObjectsWithoutConsumer"],"sources":["host-initializer.main.runtime.ts"],"sourcesContent":["import fs from 'fs-extra';\nimport * as path from 'path';\nimport { findScopePath } from '@teambit/scope.modules.find-scope-path';\nimport { Consumer } from '@teambit/legacy.consumer';\nimport { getWorkspaceInfo } from '@teambit/workspace.modules.workspace-locator';\nimport { Scope } from '@teambit/legacy.scope';\nimport { Repository } from '@teambit/scope.objects';\nimport { isDirEmpty } from '@teambit/toolbox.fs.is-dir-empty';\nimport { WorkspaceExtensionProps } from '@teambit/config';\nimport { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport { ObjectsWithoutConsumer } from './objects-without-consumer';\nimport { HostInitializerAspect } from './host-initializer.aspect';\nimport { InitCmd } from './init-cmd';\nimport { createConsumer, resetConsumer } from './create-consumer';\n\nexport class HostInitializerMain {\n static async init(\n absPath?: string,\n noGit = false,\n noPackageJson = false,\n reset = false,\n resetNew = false,\n resetLaneNew = false,\n resetHard = false,\n resetScope = false,\n force = false,\n workspaceConfigProps: WorkspaceExtensionProps = {},\n generator?: string\n ): Promise<Consumer> {\n const consumerInfo = await getWorkspaceInfo(absPath || process.cwd());\n // if \"bit init\" was running without any flags, the user is probably trying to init a new workspace but wasn't aware\n // that he's already in a workspace.\n if (\n !absPath &&\n consumerInfo?.path &&\n consumerInfo.path !== process.cwd() &&\n !reset &&\n !resetHard &&\n !resetScope &&\n !resetNew &&\n !resetLaneNew\n ) {\n throw new Error(\n `error: unable to init a new workspace in an inner directory of an existing workspace at \"${consumerInfo.path}\"`\n );\n }\n const consumerPath = consumerInfo?.path || absPath || process.cwd();\n\n workspaceConfigProps = {\n ...workspaceConfigProps,\n name: workspaceConfigProps.name || path.basename(consumerPath),\n };\n\n if (reset || resetHard) {\n await resetConsumer(consumerPath, resetHard, noGit);\n }\n let consumer: Consumer | undefined;\n try {\n consumer = await createConsumer(consumerPath, noGit, noPackageJson, workspaceConfigProps, generator);\n } catch {\n // it's possible that at this stage the consumer fails to load due to scope issues.\n // still we want to load it to include its instance of \"scope.json\", so then later when \"consumer.write()\", we\n // don't lose some scope metadata\n }\n if (resetScope) {\n const scopePath = findScopePath(consumerPath);\n if (!scopePath) throw new Error(`fatal: scope not found in the path: ${consumerPath}`);\n await Scope.reset(scopePath, true);\n }\n if (!consumer) consumer = await createConsumer(consumerPath, noGit, noPackageJson, workspaceConfigProps);\n if (!force && !resetScope) {\n await throwForOutOfSyncScope(consumer);\n }\n if (resetNew) {\n await consumer.resetNew();\n }\n if (resetLaneNew) {\n await consumer.resetLaneNew();\n }\n return consumer.write();\n }\n\n static slots = [];\n static dependencies = [CLIAspect];\n static runtime = MainRuntime;\n static async provider([cli]: [CLIMain]) {\n const hostInitializerMain = new HostInitializerMain();\n const initCmd = new InitCmd(hostInitializerMain);\n cli.register(initCmd);\n return hostInitializerMain;\n }\n}\n\nHostInitializerAspect.addRuntime(HostInitializerMain);\n\nexport default HostInitializerMain;\n\n/**\n * throw an error when .bitmap is empty but a scope has objects.\n * a user may got into this state for reasons such as:\n * 1. deleting manually .bitmap hoping to re-start Bit from scratch. (probably unaware of `--reset-hard` flag).\n * 2. switching to a branch where Bit wasn't initialized\n * in which case, it's better to stop and show an error describing what needs to be done.\n * it can always be ignored by entering `--force` flag.\n */\nasync function throwForOutOfSyncScope(consumer: Consumer): Promise<void> {\n if (!consumer.bitMap.isEmpty()) return;\n const scopePath = consumer.scope.getPath();\n const objectsPath = Repository.getPathByScopePath(scopePath);\n const dirExist = await fs.pathExists(objectsPath);\n if (!dirExist) return;\n const hasObjects = !(await isDirEmpty(objectsPath));\n if (hasObjects) {\n throw new ObjectsWithoutConsumer(scopePath);\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_fsExtra","data","_interopRequireDefault","require","path","_interopRequireWildcard","_scopeModules","_workspaceModules","_legacy","_scope","_toolboxFs","_cli","_objectsWithoutConsumer","_hostInitializer","_initCmd","_createConsumer","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","HostInitializerMain","init","absPath","noGit","noPackageJson","reset","resetNew","resetLaneNew","resetHard","resetScope","force","workspaceConfigProps","generator","consumerInfo","getWorkspaceInfo","process","cwd","Error","consumerPath","name","basename","resetConsumer","consumer","createConsumer","scopePath","findScopePath","Scope","throwForOutOfSyncScope","write","provider","cli","hostInitializerMain","initCmd","InitCmd","register","exports","CLIAspect","MainRuntime","HostInitializerAspect","addRuntime","_default","bitMap","isEmpty","scope","getPath","objectsPath","Repository","getPathByScopePath","dirExist","fs","pathExists","hasObjects","isDirEmpty","ObjectsWithoutConsumer"],"sources":["host-initializer.main.runtime.ts"],"sourcesContent":["import fs from 'fs-extra';\nimport * as path from 'path';\nimport { findScopePath } from '@teambit/scope.modules.find-scope-path';\nimport { Consumer } from '@teambit/legacy.consumer';\nimport { getWorkspaceInfo } from '@teambit/workspace.modules.workspace-locator';\nimport { Scope } from '@teambit/legacy.scope';\nimport { Repository } from '@teambit/scope.objects';\nimport { isDirEmpty } from '@teambit/toolbox.fs.is-dir-empty';\nimport { WorkspaceExtensionProps } from '@teambit/config';\nimport { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport { ObjectsWithoutConsumer } from './objects-without-consumer';\nimport { HostInitializerAspect } from './host-initializer.aspect';\nimport { InitCmd } from './init-cmd';\nimport { createConsumer, resetConsumer } from './create-consumer';\n\nexport class HostInitializerMain {\n static async init(\n absPath?: string,\n noGit = false,\n noPackageJson = false,\n reset = false,\n resetNew = false,\n resetLaneNew = false,\n resetHard = false,\n resetScope = false,\n force = false,\n workspaceConfigProps: WorkspaceExtensionProps = {},\n generator?: string\n ): Promise<Consumer> {\n const consumerInfo = await getWorkspaceInfo(absPath || process.cwd());\n // if \"bit init\" was running without any flags, the user is probably trying to init a new workspace but wasn't aware\n // that he's already in a workspace.\n if (\n !absPath &&\n consumerInfo?.path &&\n consumerInfo.path !== process.cwd() &&\n !reset &&\n !resetHard &&\n !resetScope &&\n !resetNew &&\n !resetLaneNew\n ) {\n throw new Error(\n `error: unable to init a new workspace in an inner directory of an existing workspace at \"${consumerInfo.path}\"`\n );\n }\n const consumerPath = consumerInfo?.path || absPath || process.cwd();\n\n workspaceConfigProps = {\n ...workspaceConfigProps,\n name: workspaceConfigProps.name || path.basename(consumerPath),\n };\n\n if (reset || resetHard) {\n await resetConsumer(consumerPath, resetHard, noGit);\n }\n let consumer: Consumer | undefined;\n try {\n consumer = await createConsumer(consumerPath, noGit, noPackageJson, workspaceConfigProps, generator);\n } catch {\n // it's possible that at this stage the consumer fails to load due to scope issues.\n // still we want to load it to include its instance of \"scope.json\", so then later when \"consumer.write()\", we\n // don't lose some scope metadata\n }\n if (resetScope) {\n const scopePath = findScopePath(consumerPath);\n if (!scopePath) throw new Error(`fatal: scope not found in the path: ${consumerPath}`);\n await Scope.reset(scopePath, true);\n }\n if (!consumer) consumer = await createConsumer(consumerPath, noGit, noPackageJson, workspaceConfigProps);\n if (!force && !resetScope) {\n await throwForOutOfSyncScope(consumer);\n }\n if (resetNew) {\n await consumer.resetNew();\n }\n if (resetLaneNew) {\n await consumer.resetLaneNew();\n }\n return consumer.write();\n }\n\n static slots = [];\n static dependencies = [CLIAspect];\n static runtime = MainRuntime;\n static async provider([cli]: [CLIMain]) {\n const hostInitializerMain = new HostInitializerMain();\n const initCmd = new InitCmd(hostInitializerMain);\n cli.register(initCmd);\n return hostInitializerMain;\n }\n}\n\nHostInitializerAspect.addRuntime(HostInitializerMain);\n\nexport default HostInitializerMain;\n\n/**\n * throw an error when .bitmap is empty but a scope has objects.\n * a user may got into this state for reasons such as:\n * 1. deleting manually .bitmap hoping to re-start Bit from scratch. (probably unaware of `--reset-hard` flag).\n * 2. switching to a branch where Bit wasn't initialized\n * in which case, it's better to stop and show an error describing what needs to be done.\n * it can always be ignored by entering `--force` flag.\n */\nasync function throwForOutOfSyncScope(consumer: Consumer): Promise<void> {\n if (!consumer.bitMap.isEmpty()) return;\n const scopePath = consumer.scope.getPath();\n const objectsPath = Repository.getPathByScopePath(scopePath);\n const dirExist = await fs.pathExists(objectsPath);\n if (!dirExist) return;\n const hasObjects = !(await isDirEmpty(objectsPath));\n if (hasObjects) {\n throw new ObjectsWithoutConsumer(scopePath);\n }\n}\n"],"mappings":"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","ignoreList":[]}
package/esm.mjs CHANGED
@@ -2,6 +2,7 @@
2
2
  import cjsModule from './index.js';
3
3
 
4
4
  export const HostInitializerAspect = cjsModule.HostInitializerAspect;
5
+ export const HostInitializerMain = cjsModule.HostInitializerMain;
5
6
 
6
7
  export default cjsModule;
7
8
 
package/package.json CHANGED
@@ -1,58 +1,70 @@
1
1
  {
2
2
  "name": "@teambit/host-initializer",
3
- "version": "0.0.208",
3
+ "version": "0.0.210",
4
4
  "homepage": "https://bit.cloud/teambit/harmony/host-initializer",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.harmony",
8
8
  "name": "host-initializer",
9
- "version": "0.0.208"
9
+ "version": "0.0.210"
10
10
  },
11
11
  "dependencies": {
12
12
  "lodash": "4.17.21",
13
13
  "fs-extra": "10.0.0",
14
14
  "chalk": "2.4.2",
15
- "core-js": "^3.0.0",
16
- "@babel/runtime": "7.20.0",
17
15
  "@teambit/harmony": "0.4.6",
18
16
  "@teambit/bit-error": "0.0.404",
19
- "@teambit/component.sources": "0.0.59",
20
- "@teambit/config": "0.0.1246",
21
- "@teambit/legacy.bit-map": "0.0.64",
22
- "@teambit/legacy.consumer": "0.0.7",
23
- "@teambit/legacy.scope": "0.0.7",
17
+ "@teambit/component.sources": "0.0.61",
18
+ "@teambit/config": "0.0.1248",
19
+ "@teambit/legacy.bit-map": "0.0.66",
20
+ "@teambit/legacy.consumer": "0.0.9",
21
+ "@teambit/legacy.scope": "0.0.9",
24
22
  "@teambit/legacy.utils": "0.0.11",
25
23
  "@teambit/toolbox.string.random": "0.0.2",
26
- "@teambit/cli": "0.0.1072",
24
+ "@teambit/cli": "0.0.1074",
27
25
  "@teambit/scope.modules.find-scope-path": "0.0.4",
28
- "@teambit/scope.objects": "0.0.7",
26
+ "@teambit/scope.objects": "0.0.9",
29
27
  "@teambit/toolbox.fs.is-dir-empty": "0.0.2",
30
28
  "@teambit/workspace.modules.workspace-locator": "0.0.4",
31
29
  "@teambit/legacy.constants": "0.0.3",
32
30
  "@teambit/legacy.global-config": "0.0.3",
33
- "@teambit/legacy.scope-api": "0.0.62"
31
+ "@teambit/legacy.scope-api": "0.0.64"
34
32
  },
35
33
  "devDependencies": {
36
34
  "@types/lodash": "4.14.165",
37
35
  "@types/fs-extra": "9.0.7",
38
- "@types/node": "12.20.4",
39
- "@types/react": "^17.0.8",
40
- "@types/react-dom": "^17.0.5",
41
- "@types/jest": "^26.0.0",
42
- "@types/testing-library__jest-dom": "5.9.5"
36
+ "@teambit/harmony.envs.core-aspect-env": "0.0.63"
43
37
  },
44
- "peerDependencies": {
45
- "react": "^16.8.0 || ^17.0.0",
46
- "react-dom": "^16.8.0 || ^17.0.0"
47
- },
48
- "license": "SEE LICENSE IN UNLICENSED",
38
+ "peerDependencies": {},
39
+ "license": "Apache-2.0",
49
40
  "optionalDependencies": {},
50
41
  "peerDependenciesMeta": {},
51
42
  "exports": {
52
- "node": {
53
- "require": "./dist/index.js",
54
- "import": "./dist/esm.mjs"
43
+ ".": {
44
+ "node": {
45
+ "require": "./dist/index.js",
46
+ "import": "./dist/esm.mjs"
47
+ },
48
+ "default": "./dist/index.js"
55
49
  },
56
- "default": "./dist/index.js"
57
- }
50
+ "./dist/*": "./dist/*",
51
+ "./artifacts/*": "./artifacts/*",
52
+ "./*": "./*.ts"
53
+ },
54
+ "private": false,
55
+ "engines": {
56
+ "node": ">=16.0.0"
57
+ },
58
+ "repository": {
59
+ "type": "git",
60
+ "url": "https://github.com/teambit/bit"
61
+ },
62
+ "keywords": [
63
+ "bit",
64
+ "bit-aspect",
65
+ "bit-core-aspect",
66
+ "components",
67
+ "collaboration",
68
+ "web"
69
+ ]
58
70
  }
package/types/asset.d.ts CHANGED
@@ -5,12 +5,12 @@ declare module '*.png' {
5
5
  declare module '*.svg' {
6
6
  import type { FunctionComponent, SVGProps } from 'react';
7
7
 
8
- export const ReactComponent: FunctionComponent<SVGProps<SVGSVGElement> & { title?: string }>;
8
+ export const ReactComponent: FunctionComponent<
9
+ SVGProps<SVGSVGElement> & { title?: string }
10
+ >;
9
11
  const src: string;
10
12
  export default src;
11
13
  }
12
-
13
- // @TODO Gilad
14
14
  declare module '*.jpg' {
15
15
  const value: any;
16
16
  export = value;
@@ -27,3 +27,15 @@ declare module '*.bmp' {
27
27
  const value: any;
28
28
  export = value;
29
29
  }
30
+ declare module '*.otf' {
31
+ const value: any;
32
+ export = value;
33
+ }
34
+ declare module '*.woff' {
35
+ const value: any;
36
+ export = value;
37
+ }
38
+ declare module '*.woff2' {
39
+ const value: any;
40
+ export = value;
41
+ }
@@ -1,59 +0,0 @@
1
- import path from 'path';
2
- import { generateRandomStr } from '@teambit/toolbox.string.random';
3
- import { Consumer } from '@teambit/legacy.consumer';
4
- import { Scope } from '@teambit/legacy.scope';
5
- import { PathOsBasedAbsolute } from '@teambit/legacy.utils';
6
- import { BitMap } from '@teambit/legacy.bit-map';
7
- import { ConfigMain, WorkspaceConfig, WorkspaceExtensionProps, WorkspaceConfigFileProps } from '@teambit/config';
8
- import { PackageJsonFile } from '@teambit/component.sources';
9
- import { pickBy } from 'lodash';
10
-
11
- export async function createConsumer(
12
- projectPath: PathOsBasedAbsolute,
13
- standAlone = false, // no git
14
- noPackageJson = false,
15
- workspaceExtensionProps?: WorkspaceExtensionProps,
16
- generator?: string
17
- ): Promise<Consumer> {
18
- const resolvedScopePath = Consumer._getScopePath(projectPath, standAlone);
19
- // avoid using the default scope-name `path.basename(process.cwd())` when generated from the workspace.
20
- // otherwise, components with the same scope-name will get ComponentNotFound on import
21
- const scopeName = `${path.basename(process.cwd())}-local-${generateRandomStr()}`;
22
- const scope = await Scope.ensure(resolvedScopePath, scopeName);
23
- const workspaceConfigProps = workspaceExtensionProps
24
- ? ({
25
- 'teambit.workspace/workspace': pickBy(workspaceExtensionProps), // remove empty values
26
- 'teambit.dependencies/dependency-resolver': {},
27
- } as WorkspaceConfigFileProps)
28
- : undefined;
29
- const config = await ConfigMain.ensureWorkspace(projectPath, scope.path, workspaceConfigProps, generator);
30
- const legacyConfig = (config.config as WorkspaceConfig).toLegacy();
31
- const consumer = new Consumer({
32
- projectPath,
33
- created: true,
34
- scope,
35
- config: legacyConfig,
36
- });
37
- await consumer.setBitMap();
38
- if (!noPackageJson) {
39
- consumer.setPackageJsonWithTypeModule();
40
- }
41
- return consumer;
42
- }
43
-
44
- /**
45
- * if resetHard, delete consumer-files: bitMap and workspace.jsonc and also the local scope (.bit dir).
46
- * otherwise, delete the consumer-files only when they are corrupted
47
- */
48
- export async function resetConsumer(
49
- projectPath: PathOsBasedAbsolute,
50
- resetHard: boolean,
51
- noGit = false
52
- ): Promise<void> {
53
- const resolvedScopePath = Consumer._getScopePath(projectPath, noGit);
54
- BitMap.reset(projectPath, resetHard);
55
- await Scope.reset(resolvedScopePath, resetHard);
56
- await WorkspaceConfig.reset(projectPath, resetHard);
57
- await WorkspaceConfig.ensure(projectPath, resolvedScopePath);
58
- await PackageJsonFile.reset(projectPath);
59
- }
@@ -1,5 +0,0 @@
1
- import { Aspect } from '@teambit/harmony';
2
-
3
- export const HostInitializerAspect = Aspect.create({
4
- id: 'teambit.harmony/host-initializer',
5
- });
@@ -1,116 +0,0 @@
1
- import fs from 'fs-extra';
2
- import * as path from 'path';
3
- import { findScopePath } from '@teambit/scope.modules.find-scope-path';
4
- import { Consumer } from '@teambit/legacy.consumer';
5
- import { getWorkspaceInfo } from '@teambit/workspace.modules.workspace-locator';
6
- import { Scope } from '@teambit/legacy.scope';
7
- import { Repository } from '@teambit/scope.objects';
8
- import { isDirEmpty } from '@teambit/toolbox.fs.is-dir-empty';
9
- import { WorkspaceExtensionProps } from '@teambit/config';
10
- import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';
11
- import { ObjectsWithoutConsumer } from './objects-without-consumer';
12
- import { HostInitializerAspect } from './host-initializer.aspect';
13
- import { InitCmd } from './init-cmd';
14
- import { createConsumer, resetConsumer } from './create-consumer';
15
-
16
- export class HostInitializerMain {
17
- static async init(
18
- absPath?: string,
19
- noGit = false,
20
- noPackageJson = false,
21
- reset = false,
22
- resetNew = false,
23
- resetLaneNew = false,
24
- resetHard = false,
25
- resetScope = false,
26
- force = false,
27
- workspaceConfigProps: WorkspaceExtensionProps = {},
28
- generator?: string
29
- ): Promise<Consumer> {
30
- const consumerInfo = await getWorkspaceInfo(absPath || process.cwd());
31
- // if "bit init" was running without any flags, the user is probably trying to init a new workspace but wasn't aware
32
- // that he's already in a workspace.
33
- if (
34
- !absPath &&
35
- consumerInfo?.path &&
36
- consumerInfo.path !== process.cwd() &&
37
- !reset &&
38
- !resetHard &&
39
- !resetScope &&
40
- !resetNew &&
41
- !resetLaneNew
42
- ) {
43
- throw new Error(
44
- `error: unable to init a new workspace in an inner directory of an existing workspace at "${consumerInfo.path}"`
45
- );
46
- }
47
- const consumerPath = consumerInfo?.path || absPath || process.cwd();
48
-
49
- workspaceConfigProps = {
50
- ...workspaceConfigProps,
51
- name: workspaceConfigProps.name || path.basename(consumerPath),
52
- };
53
-
54
- if (reset || resetHard) {
55
- await resetConsumer(consumerPath, resetHard, noGit);
56
- }
57
- let consumer: Consumer | undefined;
58
- try {
59
- consumer = await createConsumer(consumerPath, noGit, noPackageJson, workspaceConfigProps, generator);
60
- } catch {
61
- // it's possible that at this stage the consumer fails to load due to scope issues.
62
- // still we want to load it to include its instance of "scope.json", so then later when "consumer.write()", we
63
- // don't lose some scope metadata
64
- }
65
- if (resetScope) {
66
- const scopePath = findScopePath(consumerPath);
67
- if (!scopePath) throw new Error(`fatal: scope not found in the path: ${consumerPath}`);
68
- await Scope.reset(scopePath, true);
69
- }
70
- if (!consumer) consumer = await createConsumer(consumerPath, noGit, noPackageJson, workspaceConfigProps);
71
- if (!force && !resetScope) {
72
- await throwForOutOfSyncScope(consumer);
73
- }
74
- if (resetNew) {
75
- await consumer.resetNew();
76
- }
77
- if (resetLaneNew) {
78
- await consumer.resetLaneNew();
79
- }
80
- return consumer.write();
81
- }
82
-
83
- static slots = [];
84
- static dependencies = [CLIAspect];
85
- static runtime = MainRuntime;
86
- static async provider([cli]: [CLIMain]) {
87
- const hostInitializerMain = new HostInitializerMain();
88
- const initCmd = new InitCmd(hostInitializerMain);
89
- cli.register(initCmd);
90
- return hostInitializerMain;
91
- }
92
- }
93
-
94
- HostInitializerAspect.addRuntime(HostInitializerMain);
95
-
96
- export default HostInitializerMain;
97
-
98
- /**
99
- * throw an error when .bitmap is empty but a scope has objects.
100
- * a user may got into this state for reasons such as:
101
- * 1. deleting manually .bitmap hoping to re-start Bit from scratch. (probably unaware of `--reset-hard` flag).
102
- * 2. switching to a branch where Bit wasn't initialized
103
- * in which case, it's better to stop and show an error describing what needs to be done.
104
- * it can always be ignored by entering `--force` flag.
105
- */
106
- async function throwForOutOfSyncScope(consumer: Consumer): Promise<void> {
107
- if (!consumer.bitMap.isEmpty()) return;
108
- const scopePath = consumer.scope.getPath();
109
- const objectsPath = Repository.getPathByScopePath(scopePath);
110
- const dirExist = await fs.pathExists(objectsPath);
111
- if (!dirExist) return;
112
- const hasObjects = !(await isDirEmpty(objectsPath));
113
- if (hasObjects) {
114
- throw new ObjectsWithoutConsumer(scopePath);
115
- }
116
- }
package/index.ts DELETED
@@ -1,6 +0,0 @@
1
- import { HostInitializerAspect } from './host-initializer.aspect';
2
-
3
- export { HostInitializerMain } from './host-initializer.main.runtime';
4
- export { ObjectsWithoutConsumer } from './objects-without-consumer';
5
- export default HostInitializerAspect;
6
- export { HostInitializerAspect };
package/init-cmd.ts DELETED
@@ -1,122 +0,0 @@
1
- import chalk from 'chalk';
2
- import * as pathlib from 'path';
3
- import { BitError } from '@teambit/bit-error';
4
- import { getSync } from '@teambit/legacy.global-config';
5
- import { initScope } from '@teambit/legacy.scope-api';
6
- import { CFG_INIT_DEFAULT_SCOPE, CFG_INIT_DEFAULT_DIRECTORY } from '@teambit/legacy.constants';
7
- import { WorkspaceExtensionProps } from '@teambit/config';
8
- import { Command, CommandOptions } from '@teambit/cli';
9
- import { HostInitializerMain } from './host-initializer.main.runtime';
10
-
11
- export class InitCmd implements Command {
12
- name = 'init [path]';
13
- skipWorkspace = true;
14
- description = 'create or reinitialize an empty workspace';
15
- helpUrl = 'reference/workspace/creating-workspaces/?new_existing_project=1';
16
- group = 'start';
17
- extendedDescription =
18
- 'if the current directory is already a workspace, it validates that bit files are correct and rewrite them if needed.';
19
- alias = '';
20
- loadAspects = false;
21
- options = [
22
- ['n', 'name <workspace-name>', 'name of the workspace'],
23
- [
24
- '',
25
- 'generator <env-id>',
26
- 'for multiple, separate by a comma. add env-ids into the generators field in the workspace config for future "bit create" templates',
27
- ],
28
- [
29
- 'T',
30
- 'standalone',
31
- 'do not nest component store within .git directory and do not write config data inside package.json',
32
- ],
33
- ['', 'no-package-json', 'do not generate package.json'],
34
- ['r', 'reset', 'write missing or damaged Bit files'],
35
- ['', 'reset-new', 'reset .bitmap file as if the components were newly added and remove all model data (objects)'],
36
- [
37
- '',
38
- 'reset-lane-new',
39
- 'same as reset-new, but it only resets components belong to lanes. main components are left intact',
40
- ],
41
- [
42
- '',
43
- 'reset-hard',
44
- 'delete all Bit files and directories, including Bit configuration, tracking and model data. Useful for re-starting workspace from scratch',
45
- ],
46
- [
47
- '',
48
- 'reset-scope',
49
- 'removes local scope (.bit or .git/bit). tags/snaps that have not been exported will be lost. workspace is left intact',
50
- ],
51
- [
52
- 'd',
53
- 'default-directory <default-directory>',
54
- 'set the default directory pattern to import/create components into',
55
- ],
56
- ['', 'default-scope <default-scope>', 'set the default scope for components in the workspace'],
57
- ['f', 'force', 'force workspace initialization without clearing local objects'],
58
- ['b', 'bare [name]', 'initialize an empty bit bare scope'],
59
- ['s', 'shared <groupname>', 'add group write permissions to a scope properly'],
60
- ] as CommandOptions;
61
-
62
- constructor(private hostInitializer: HostInitializerMain) {}
63
-
64
- async report([path]: [string], flags: Record<string, any>) {
65
- const {
66
- name,
67
- generator,
68
- bare,
69
- shared,
70
- standalone,
71
- noPackageJson,
72
- reset,
73
- resetNew,
74
- resetLaneNew,
75
- resetHard,
76
- resetScope,
77
- force,
78
- defaultDirectory,
79
- defaultScope,
80
- } = flags;
81
- if (path) path = pathlib.resolve(path);
82
- if (bare) {
83
- if (reset || resetHard) throw new BitError('--reset and --reset-hard flags are not available for bare scope');
84
- // Handle both cases init --bare and init --bare [scopeName]
85
- const bareVal = bare === true ? '' : bare;
86
- await initScope(path, bareVal, shared);
87
- return `${chalk.green('successfully initialized an empty bare bit scope.')}`;
88
- }
89
- if (reset && resetHard) {
90
- throw new BitError('cannot use both --reset and --reset-hard, please use only one of them');
91
- }
92
-
93
- const workspaceExtensionProps: WorkspaceExtensionProps = {
94
- defaultDirectory: defaultDirectory ?? getSync(CFG_INIT_DEFAULT_DIRECTORY),
95
- defaultScope: defaultScope ?? getSync(CFG_INIT_DEFAULT_SCOPE),
96
- name,
97
- };
98
-
99
- const { created } = await HostInitializerMain.init(
100
- path,
101
- standalone,
102
- noPackageJson,
103
- reset,
104
- resetNew,
105
- resetLaneNew,
106
- resetHard,
107
- resetScope,
108
- force,
109
- workspaceExtensionProps,
110
- generator
111
- );
112
-
113
- let initMessage = `${chalk.green('successfully initialized a bit workspace.')}`;
114
-
115
- if (!created) initMessage = `${chalk.grey('successfully re-initialized a bit workspace.')}`;
116
- if (reset) initMessage = `${chalk.grey('your bit workspace has been reset successfully.')}`;
117
- if (resetHard) initMessage = `${chalk.grey('your bit workspace has been hard-reset successfully.')}`;
118
- if (resetScope) initMessage = `${chalk.grey('your local scope has been reset successfully.')}`;
119
-
120
- return initMessage;
121
- }
122
- }
@@ -1,13 +0,0 @@
1
- import { BitError } from '@teambit/bit-error';
2
- import chalk from 'chalk';
3
-
4
- export class ObjectsWithoutConsumer extends BitError {
5
- constructor(public scopePath: string) {
6
- super(`error: unable to initialize a bit workspace. bit has found undeleted local objects at ${chalk.bold(
7
- scopePath
8
- )}.
9
- 1. use the ${chalk.bold('--reset-hard')} flag to clear all data and initialize an empty workspace.
10
- 2. if deleted by mistake, please restore .bitmap and workspace.jsonc.
11
- 3. force workspace initialization without clearing data use the ${chalk.bold('--force')} flag.`);
12
- }
13
- }