@teambit/host-initializer 0.0.23 → 0.0.24
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/create-consumer.ts +3 -2
- package/dist/create-consumer.d.ts +1 -1
- package/dist/create-consumer.js +2 -2
- package/dist/create-consumer.js.map +1 -1
- package/dist/host-initializer.main.runtime.d.ts +1 -1
- package/dist/host-initializer.main.runtime.js +2 -2
- package/dist/host-initializer.main.runtime.js.map +1 -1
- package/dist/init-cmd.js +3 -2
- package/dist/init-cmd.js.map +1 -1
- package/host-initializer.main.runtime.ts +3 -2
- package/init-cmd.ts +8 -1
- package/package.json +5 -5
- /package/dist/{preview-1718853656395.js → preview-1719137078208.js} +0 -0
package/create-consumer.ts
CHANGED
|
@@ -12,7 +12,8 @@ export async function createConsumer(
|
|
|
12
12
|
projectPath: PathOsBasedAbsolute,
|
|
13
13
|
standAlone = false, // no git
|
|
14
14
|
noPackageJson = false,
|
|
15
|
-
workspaceExtensionProps?: WorkspaceExtensionProps
|
|
15
|
+
workspaceExtensionProps?: WorkspaceExtensionProps,
|
|
16
|
+
generator?: string
|
|
16
17
|
): Promise<Consumer> {
|
|
17
18
|
const resolvedScopePath = Consumer._getScopePath(projectPath, standAlone);
|
|
18
19
|
let existingGitHooks;
|
|
@@ -26,7 +27,7 @@ export async function createConsumer(
|
|
|
26
27
|
'teambit.dependencies/dependency-resolver': {},
|
|
27
28
|
} as WorkspaceConfigFileProps)
|
|
28
29
|
: undefined;
|
|
29
|
-
const config = await ConfigMain.ensureWorkspace(projectPath, scope.path, workspaceConfigProps);
|
|
30
|
+
const config = await ConfigMain.ensureWorkspace(projectPath, scope.path, workspaceConfigProps, generator);
|
|
30
31
|
const legacyConfig = (config.config as WorkspaceConfig).toLegacy();
|
|
31
32
|
const consumer = new Consumer({
|
|
32
33
|
projectPath,
|
|
@@ -2,7 +2,7 @@ import { Consumer } from '@teambit/legacy/dist/consumer';
|
|
|
2
2
|
import { PathOsBasedAbsolute } from '@teambit/legacy/dist/utils/path';
|
|
3
3
|
import { WorkspaceExtensionProps } from '@teambit/config';
|
|
4
4
|
export declare function createConsumer(projectPath: PathOsBasedAbsolute, standAlone?: boolean, // no git
|
|
5
|
-
noPackageJson?: boolean, workspaceExtensionProps?: WorkspaceExtensionProps): Promise<Consumer>;
|
|
5
|
+
noPackageJson?: boolean, workspaceExtensionProps?: WorkspaceExtensionProps, generator?: string): Promise<Consumer>;
|
|
6
6
|
/**
|
|
7
7
|
* if resetHard, delete consumer-files: bitMap and workspace.jsonc and also the local scope (.bit dir).
|
|
8
8
|
* otherwise, delete the consumer-files only when they are corrupted
|
package/dist/create-consumer.js
CHANGED
|
@@ -64,7 +64,7 @@ function _lodash() {
|
|
|
64
64
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
65
65
|
async function createConsumer(projectPath, standAlone = false,
|
|
66
66
|
// no git
|
|
67
|
-
noPackageJson = false, workspaceExtensionProps) {
|
|
67
|
+
noPackageJson = false, workspaceExtensionProps, generator) {
|
|
68
68
|
const resolvedScopePath = _consumer().Consumer._getScopePath(projectPath, standAlone);
|
|
69
69
|
let existingGitHooks;
|
|
70
70
|
// avoid using the default scope-name `path.basename(process.cwd())` when generated from the workspace.
|
|
@@ -76,7 +76,7 @@ noPackageJson = false, workspaceExtensionProps) {
|
|
|
76
76
|
// remove empty values
|
|
77
77
|
'teambit.dependencies/dependency-resolver': {}
|
|
78
78
|
} : undefined;
|
|
79
|
-
const config = await _config().ConfigMain.ensureWorkspace(projectPath, scope.path, workspaceConfigProps);
|
|
79
|
+
const config = await _config().ConfigMain.ensureWorkspace(projectPath, scope.path, workspaceConfigProps, generator);
|
|
80
80
|
const legacyConfig = config.config.toLegacy();
|
|
81
81
|
const consumer = new (_consumer().Consumer)({
|
|
82
82
|
projectPath,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_path","data","_interopRequireDefault","require","_toolboxString","_consumer","_scope","_bitMap","_config","_packageJsonFile","_lodash","e","__esModule","default","createConsumer","projectPath","standAlone","noPackageJson","workspaceExtensionProps","resolvedScopePath","Consumer","_getScopePath","existingGitHooks","scopeName","path","basename","process","cwd","generateRandomStr","scope","Scope","ensure","workspaceConfigProps","pickBy","undefined","config","ConfigMain","ensureWorkspace","legacyConfig","toLegacy","consumer","created","setBitMap","setPackageJsonWithTypeModule","resetConsumer","resetHard","noGit","BitMap","reset","WorkspaceConfig","PackageJsonFile"],"sources":["create-consumer.ts"],"sourcesContent":["import path from 'path';\nimport { generateRandomStr } from '@teambit/toolbox.string.random';\nimport { Consumer } from '@teambit/legacy/dist/consumer';\nimport { Scope } from '@teambit/legacy/dist/scope';\nimport { PathOsBasedAbsolute } from '@teambit/legacy/dist/utils/path';\nimport BitMap from '@teambit/legacy/dist/consumer/bit-map';\nimport { ConfigMain, WorkspaceConfig, WorkspaceExtensionProps, WorkspaceConfigFileProps } from '@teambit/config';\nimport PackageJsonFile from '@teambit/legacy/dist/consumer/component/package-json-file';\nimport { pickBy } from 'lodash';\n\nexport async function createConsumer(\n projectPath: PathOsBasedAbsolute,\n standAlone = false, // no git\n noPackageJson = false,\n workspaceExtensionProps?: WorkspaceExtensionProps\n): Promise<Consumer> {\n const resolvedScopePath = Consumer._getScopePath(projectPath, standAlone);\n let existingGitHooks;\n // avoid using the default scope-name `path.basename(process.cwd())` when generated from the workspace.\n // otherwise, components with the same scope-name will get ComponentNotFound on import\n const scopeName = `${path.basename(process.cwd())}-local-${generateRandomStr()}`;\n const scope = await Scope.ensure(resolvedScopePath, scopeName);\n const workspaceConfigProps = workspaceExtensionProps\n ? ({\n 'teambit.workspace/workspace': pickBy(workspaceExtensionProps), // remove empty values\n 'teambit.dependencies/dependency-resolver': {},\n } as WorkspaceConfigFileProps)\n : undefined;\n const config = await ConfigMain.ensureWorkspace(projectPath, scope.path, workspaceConfigProps);\n const legacyConfig = (config.config as WorkspaceConfig).toLegacy();\n const consumer = new Consumer({\n projectPath,\n created: true,\n scope,\n config: legacyConfig,\n existingGitHooks,\n });\n await consumer.setBitMap();\n if (!noPackageJson) {\n consumer.setPackageJsonWithTypeModule();\n }\n return consumer;\n}\n\n/**\n * if resetHard, delete consumer-files: bitMap and workspace.jsonc and also the local scope (.bit dir).\n * otherwise, delete the consumer-files only when they are corrupted\n */\nexport async function resetConsumer(\n projectPath: PathOsBasedAbsolute,\n resetHard: boolean,\n noGit = false\n): Promise<void> {\n const resolvedScopePath = Consumer._getScopePath(projectPath, noGit);\n BitMap.reset(projectPath, resetHard);\n await Scope.reset(resolvedScopePath, resetHard);\n await WorkspaceConfig.reset(projectPath, resetHard);\n await WorkspaceConfig.ensure(projectPath, resolvedScopePath);\n await PackageJsonFile.reset(projectPath);\n}\n"],"mappings":";;;;;;;AAAA,SAAAA,MAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,KAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,eAAA;EAAA,MAAAH,IAAA,GAAAE,OAAA;EAAAC,cAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAI,UAAA;EAAA,MAAAJ,IAAA,GAAAE,OAAA;EAAAE,SAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAK,OAAA;EAAA,MAAAL,IAAA,GAAAE,OAAA;EAAAG,MAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAM,QAAA;EAAA,MAAAN,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAI,OAAA,YAAAA,CAAA;IAAA,OAAAN,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAO,QAAA;EAAA,MAAAP,IAAA,GAAAE,OAAA;EAAAK,OAAA,YAAAA,CAAA;IAAA,OAAAP,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAQ,iBAAA;EAAA,MAAAR,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAM,gBAAA,YAAAA,CAAA;IAAA,OAAAR,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAS,QAAA;EAAA,MAAAT,IAAA,GAAAE,OAAA;EAAAO,OAAA,YAAAA,CAAA;IAAA,OAAAT,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAAgC,SAAAC,uBAAAS,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEzB,eAAeG,cAAcA,CAClCC,WAAgC,EAChCC,UAAU,GAAG,KAAK;AAAE;AACpBC,aAAa,GAAG,KAAK,EACrBC,uBAAiD,
|
|
1
|
+
{"version":3,"names":["_path","data","_interopRequireDefault","require","_toolboxString","_consumer","_scope","_bitMap","_config","_packageJsonFile","_lodash","e","__esModule","default","createConsumer","projectPath","standAlone","noPackageJson","workspaceExtensionProps","generator","resolvedScopePath","Consumer","_getScopePath","existingGitHooks","scopeName","path","basename","process","cwd","generateRandomStr","scope","Scope","ensure","workspaceConfigProps","pickBy","undefined","config","ConfigMain","ensureWorkspace","legacyConfig","toLegacy","consumer","created","setBitMap","setPackageJsonWithTypeModule","resetConsumer","resetHard","noGit","BitMap","reset","WorkspaceConfig","PackageJsonFile"],"sources":["create-consumer.ts"],"sourcesContent":["import path from 'path';\nimport { generateRandomStr } from '@teambit/toolbox.string.random';\nimport { Consumer } from '@teambit/legacy/dist/consumer';\nimport { Scope } from '@teambit/legacy/dist/scope';\nimport { PathOsBasedAbsolute } from '@teambit/legacy/dist/utils/path';\nimport BitMap from '@teambit/legacy/dist/consumer/bit-map';\nimport { ConfigMain, WorkspaceConfig, WorkspaceExtensionProps, WorkspaceConfigFileProps } from '@teambit/config';\nimport PackageJsonFile from '@teambit/legacy/dist/consumer/component/package-json-file';\nimport { pickBy } from 'lodash';\n\nexport async function createConsumer(\n projectPath: PathOsBasedAbsolute,\n standAlone = false, // no git\n noPackageJson = false,\n workspaceExtensionProps?: WorkspaceExtensionProps,\n generator?: string\n): Promise<Consumer> {\n const resolvedScopePath = Consumer._getScopePath(projectPath, standAlone);\n let existingGitHooks;\n // avoid using the default scope-name `path.basename(process.cwd())` when generated from the workspace.\n // otherwise, components with the same scope-name will get ComponentNotFound on import\n const scopeName = `${path.basename(process.cwd())}-local-${generateRandomStr()}`;\n const scope = await Scope.ensure(resolvedScopePath, scopeName);\n const workspaceConfigProps = workspaceExtensionProps\n ? ({\n 'teambit.workspace/workspace': pickBy(workspaceExtensionProps), // remove empty values\n 'teambit.dependencies/dependency-resolver': {},\n } as WorkspaceConfigFileProps)\n : undefined;\n const config = await ConfigMain.ensureWorkspace(projectPath, scope.path, workspaceConfigProps, generator);\n const legacyConfig = (config.config as WorkspaceConfig).toLegacy();\n const consumer = new Consumer({\n projectPath,\n created: true,\n scope,\n config: legacyConfig,\n existingGitHooks,\n });\n await consumer.setBitMap();\n if (!noPackageJson) {\n consumer.setPackageJsonWithTypeModule();\n }\n return consumer;\n}\n\n/**\n * if resetHard, delete consumer-files: bitMap and workspace.jsonc and also the local scope (.bit dir).\n * otherwise, delete the consumer-files only when they are corrupted\n */\nexport async function resetConsumer(\n projectPath: PathOsBasedAbsolute,\n resetHard: boolean,\n noGit = false\n): Promise<void> {\n const resolvedScopePath = Consumer._getScopePath(projectPath, noGit);\n BitMap.reset(projectPath, resetHard);\n await Scope.reset(resolvedScopePath, resetHard);\n await WorkspaceConfig.reset(projectPath, resetHard);\n await WorkspaceConfig.ensure(projectPath, resolvedScopePath);\n await PackageJsonFile.reset(projectPath);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,7 +2,7 @@ import { Consumer } from '@teambit/legacy/dist/consumer';
|
|
|
2
2
|
import { WorkspaceExtensionProps } from '@teambit/config';
|
|
3
3
|
import { CLIMain } from '@teambit/cli';
|
|
4
4
|
export declare class HostInitializerMain {
|
|
5
|
-
static init(absPath?: string, noGit?: boolean, noPackageJson?: boolean, reset?: boolean, resetNew?: boolean, resetLaneNew?: boolean, resetHard?: boolean, resetScope?: boolean, force?: boolean, workspaceConfigProps?: WorkspaceExtensionProps): Promise<Consumer>;
|
|
5
|
+
static init(absPath?: string, noGit?: boolean, noPackageJson?: boolean, reset?: boolean, resetNew?: boolean, resetLaneNew?: boolean, resetHard?: boolean, resetScope?: boolean, force?: boolean, workspaceConfigProps?: WorkspaceExtensionProps, generator?: string): Promise<Consumer>;
|
|
6
6
|
static slots: never[];
|
|
7
7
|
static dependencies: import("@teambit/harmony").Aspect[];
|
|
8
8
|
static runtime: import("@teambit/harmony").RuntimeDefinition;
|
|
@@ -86,7 +86,7 @@ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object
|
|
|
86
86
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
87
87
|
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
88
88
|
class HostInitializerMain {
|
|
89
|
-
static async init(absPath, noGit = false, noPackageJson = false, reset = false, resetNew = false, resetLaneNew = false, resetHard = false, resetScope = false, force = false, workspaceConfigProps = {}) {
|
|
89
|
+
static async init(absPath, noGit = false, noPackageJson = false, reset = false, resetNew = false, resetLaneNew = false, resetHard = false, resetScope = false, force = false, workspaceConfigProps = {}, generator) {
|
|
90
90
|
const consumerInfo = await (0, _consumer().getConsumerInfo)(absPath || process.cwd());
|
|
91
91
|
// if "bit init" was running without any flags, the user is probably trying to init a new workspace but wasn't aware
|
|
92
92
|
// that he's already in a workspace.
|
|
@@ -99,7 +99,7 @@ class HostInitializerMain {
|
|
|
99
99
|
}
|
|
100
100
|
let consumer;
|
|
101
101
|
try {
|
|
102
|
-
consumer = await (0, _createConsumer().createConsumer)(consumerPath, noGit, noPackageJson, workspaceConfigProps);
|
|
102
|
+
consumer = await (0, _createConsumer().createConsumer)(consumerPath, noGit, noPackageJson, workspaceConfigProps, generator);
|
|
103
103
|
} catch (err) {
|
|
104
104
|
// it's possible that at this stage the consumer fails to load due to scope issues.
|
|
105
105
|
// still we want to load it to include its instance of "scope.json", so then later when "consumer.write()", we
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_fsExtra","data","_interopRequireDefault","require","_scopeModules","_consumer","_scope","_objects","_utils","_objectsWithoutConsumer","_cli","_hostInitializer","_initCmd","_createConsumer","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","HostInitializerMain","init","absPath","noGit","noPackageJson","reset","resetNew","resetLaneNew","resetHard","resetScope","force","workspaceConfigProps","consumerInfo","getConsumerInfo","process","cwd","path","Error","consumerPath","resetConsumer","consumer","createConsumer","err","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 { findScopePath } from '@teambit/scope.modules.find-scope-path';\nimport { Consumer, getConsumerInfo } from '@teambit/legacy/dist/consumer';\nimport { Scope } from '@teambit/legacy/dist/scope';\nimport { Repository } from '@teambit/legacy/dist/scope/objects';\nimport { isDirEmpty } from '@teambit/legacy/dist/utils';\nimport { WorkspaceExtensionProps } from '@teambit/config';\nimport ObjectsWithoutConsumer from '@teambit/legacy/dist/api/consumer/lib/exceptions/objects-without-consumer';\nimport { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\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 ): Promise<Consumer> {\n const consumerInfo = await getConsumerInfo(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 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);\n } catch (err) {\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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
|
|
1
|
+
{"version":3,"names":["_fsExtra","data","_interopRequireDefault","require","_scopeModules","_consumer","_scope","_objects","_utils","_objectsWithoutConsumer","_cli","_hostInitializer","_initCmd","_createConsumer","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","HostInitializerMain","init","absPath","noGit","noPackageJson","reset","resetNew","resetLaneNew","resetHard","resetScope","force","workspaceConfigProps","generator","consumerInfo","getConsumerInfo","process","cwd","path","Error","consumerPath","resetConsumer","consumer","createConsumer","err","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 { findScopePath } from '@teambit/scope.modules.find-scope-path';\nimport { Consumer, getConsumerInfo } from '@teambit/legacy/dist/consumer';\nimport { Scope } from '@teambit/legacy/dist/scope';\nimport { Repository } from '@teambit/legacy/dist/scope/objects';\nimport { isDirEmpty } from '@teambit/legacy/dist/utils';\nimport { WorkspaceExtensionProps } from '@teambit/config';\nimport ObjectsWithoutConsumer from '@teambit/legacy/dist/api/consumer/lib/exceptions/objects-without-consumer';\nimport { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\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 getConsumerInfo(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 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 (err) {\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/dist/init-cmd.js
CHANGED
|
@@ -70,11 +70,12 @@ class InitCmd {
|
|
|
70
70
|
_defineProperty(this, "extendedDescription", 'if the current directory is already a workspace, it validates that bit files are correct and rewrite them if needed.');
|
|
71
71
|
_defineProperty(this, "alias", '');
|
|
72
72
|
_defineProperty(this, "loadAspects", false);
|
|
73
|
-
_defineProperty(this, "options", [['n', 'name <workspace-name>', 'name of the workspace'], ['T', 'standalone', 'do not nest component store within .git directory and do not write config data inside package.json'], ['', 'no-package-json', 'do not generate package.json'], ['r', 'reset', 'write missing or damaged Bit files'], ['', 'reset-new', 'reset .bitmap file as if the components were newly added and remove all model data (objects)'], ['', 'reset-lane-new', 'same as reset-new, but it only resets components belong to lanes. main components are left intact'], ['', 'reset-hard', 'delete all Bit files and directories, including Bit configuration, tracking and model data. Useful for re-starting workspace from scratch'], ['', 'reset-scope', 'removes local scope (.bit or .git/bit). tags/snaps that have not been exported will be lost. workspace is left intact'], ['d', 'default-directory <default-directory>', 'set the default directory pattern to import/create components into'], ['', 'default-scope <default-scope>', 'set the default scope for components in the workspace'], ['f', 'force', 'force workspace initialization without clearing local objects'], ['b', 'bare [name]', 'initialize an empty bit bare scope'], ['s', 'shared <groupname>', 'add group write permissions to a scope properly']]);
|
|
73
|
+
_defineProperty(this, "options", [['n', 'name <workspace-name>', 'name of the workspace'], ['', 'generator <env-id>', 'add env-id into the generators field in the workspace config for future "bit create" templates'], ['T', 'standalone', 'do not nest component store within .git directory and do not write config data inside package.json'], ['', 'no-package-json', 'do not generate package.json'], ['r', 'reset', 'write missing or damaged Bit files'], ['', 'reset-new', 'reset .bitmap file as if the components were newly added and remove all model data (objects)'], ['', 'reset-lane-new', 'same as reset-new, but it only resets components belong to lanes. main components are left intact'], ['', 'reset-hard', 'delete all Bit files and directories, including Bit configuration, tracking and model data. Useful for re-starting workspace from scratch'], ['', 'reset-scope', 'removes local scope (.bit or .git/bit). tags/snaps that have not been exported will be lost. workspace is left intact'], ['d', 'default-directory <default-directory>', 'set the default directory pattern to import/create components into'], ['', 'default-scope <default-scope>', 'set the default scope for components in the workspace'], ['f', 'force', 'force workspace initialization without clearing local objects'], ['b', 'bare [name]', 'initialize an empty bit bare scope'], ['s', 'shared <groupname>', 'add group write permissions to a scope properly']]);
|
|
74
74
|
}
|
|
75
75
|
async report([path], flags) {
|
|
76
76
|
const {
|
|
77
77
|
name,
|
|
78
|
+
generator,
|
|
78
79
|
bare,
|
|
79
80
|
shared,
|
|
80
81
|
standalone,
|
|
@@ -106,7 +107,7 @@ class InitCmd {
|
|
|
106
107
|
};
|
|
107
108
|
const {
|
|
108
109
|
created
|
|
109
|
-
} = await _hostInitializerMain().HostInitializerMain.init(path, standalone, noPackageJson, reset, resetNew, resetLaneNew, resetHard, resetScope, force, workspaceExtensionProps);
|
|
110
|
+
} = await _hostInitializerMain().HostInitializerMain.init(path, standalone, noPackageJson, reset, resetNew, resetLaneNew, resetHard, resetScope, force, workspaceExtensionProps, generator);
|
|
110
111
|
let initMessage = `${_chalk().default.green('successfully initialized a bit workspace.')}`;
|
|
111
112
|
if (!created) initMessage = `${_chalk().default.grey('successfully re-initialized a bit workspace.')}`;
|
|
112
113
|
if (reset) initMessage = `${_chalk().default.grey('your bit workspace has been reset successfully.')}`;
|
package/dist/init-cmd.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","pathlib","_interopRequireWildcard","_bitError","_globalConfig","_scope","_constants","_hostInitializerMain","_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","InitCmd","constructor","hostInitializer","report","path","flags","name","bare","shared","standalone","noPackageJson","reset","resetNew","resetLaneNew","resetHard","resetScope","force","defaultDirectory","defaultScope","resolve","BitError","bareVal","initScope","chalk","green","workspaceExtensionProps","getSync","CFG_INIT_DEFAULT_DIRECTORY","CFG_INIT_DEFAULT_SCOPE","created","HostInitializerMain","init","initMessage","grey","exports"],"sources":["init-cmd.ts"],"sourcesContent":["import chalk from 'chalk';\nimport * as pathlib from 'path';\nimport { BitError } from '@teambit/bit-error';\nimport { getSync } from '@teambit/legacy/dist/api/consumer/lib/global-config';\nimport { initScope } from '@teambit/legacy/dist/api/scope';\nimport { CFG_INIT_DEFAULT_SCOPE, CFG_INIT_DEFAULT_DIRECTORY } from '@teambit/legacy/dist/constants';\nimport { WorkspaceExtensionProps } from '@teambit/config';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport { HostInitializerMain } from './host-initializer.main.runtime';\n\nexport class InitCmd implements Command {\n name = 'init [path]';\n skipWorkspace = true;\n description = 'create or reinitialize an empty workspace';\n helpUrl = 'reference/workspace/creating-workspaces/?new_existing_project=1';\n group = 'start';\n extendedDescription =\n 'if the current directory is already a workspace, it validates that bit files are correct and rewrite them if needed.';\n alias = '';\n loadAspects = false;\n options = [\n ['n', 'name <workspace-name>', 'name of the workspace'],\n [\n 'T',\n 'standalone',\n 'do not nest component store within .git directory and do not write config data inside package.json',\n ],\n ['', 'no-package-json', 'do not generate package.json'],\n ['r', 'reset', 'write missing or damaged Bit files'],\n ['', 'reset-new', 'reset .bitmap file as if the components were newly added and remove all model data (objects)'],\n [\n '',\n 'reset-lane-new',\n 'same as reset-new, but it only resets components belong to lanes. main components are left intact',\n ],\n [\n '',\n 'reset-hard',\n 'delete all Bit files and directories, including Bit configuration, tracking and model data. Useful for re-starting workspace from scratch',\n ],\n [\n '',\n 'reset-scope',\n 'removes local scope (.bit or .git/bit). tags/snaps that have not been exported will be lost. workspace is left intact',\n ],\n [\n 'd',\n 'default-directory <default-directory>',\n 'set the default directory pattern to import/create components into',\n ],\n ['', 'default-scope <default-scope>', 'set the default scope for components in the workspace'],\n ['f', 'force', 'force workspace initialization without clearing local objects'],\n ['b', 'bare [name]', 'initialize an empty bit bare scope'],\n ['s', 'shared <groupname>', 'add group write permissions to a scope properly'],\n ] as CommandOptions;\n\n constructor(private hostInitializer: HostInitializerMain) {}\n\n async report([path]: [string], flags: Record<string, any>) {\n const {\n name,\n bare,\n shared,\n standalone,\n noPackageJson,\n reset,\n resetNew,\n resetLaneNew,\n resetHard,\n resetScope,\n force,\n defaultDirectory,\n defaultScope,\n } = flags;\n if (path) path = pathlib.resolve(path);\n if (bare) {\n if (reset || resetHard) throw new BitError('--reset and --reset-hard flags are not available for bare scope');\n // Handle both cases init --bare and init --bare [scopeName]\n const bareVal = bare === true ? '' : bare;\n await initScope(path, bareVal, shared);\n return `${chalk.green('successfully initialized an empty bare bit scope.')}`;\n }\n if (reset && resetHard) {\n throw new BitError('cannot use both --reset and --reset-hard, please use only one of them');\n }\n const workspaceExtensionProps: WorkspaceExtensionProps = {\n defaultDirectory: defaultDirectory ?? getSync(CFG_INIT_DEFAULT_DIRECTORY),\n defaultScope: defaultScope ?? getSync(CFG_INIT_DEFAULT_SCOPE),\n name,\n };\n const { created } = await HostInitializerMain.init(\n path,\n standalone,\n noPackageJson,\n reset,\n resetNew,\n resetLaneNew,\n resetHard,\n resetScope,\n force,\n workspaceExtensionProps\n );\n\n let initMessage = `${chalk.green('successfully initialized a bit workspace.')}`;\n\n if (!created) initMessage = `${chalk.grey('successfully re-initialized a bit workspace.')}`;\n if (reset) initMessage = `${chalk.grey('your bit workspace has been reset successfully.')}`;\n if (resetHard) initMessage = `${chalk.grey('your bit workspace has been hard-reset successfully.')}`;\n if (resetScope) initMessage = `${chalk.grey('your local scope has been reset successfully.')}`;\n\n return initMessage;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","pathlib","_interopRequireWildcard","_bitError","_globalConfig","_scope","_constants","_hostInitializerMain","_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","InitCmd","constructor","hostInitializer","report","path","flags","name","generator","bare","shared","standalone","noPackageJson","reset","resetNew","resetLaneNew","resetHard","resetScope","force","defaultDirectory","defaultScope","resolve","BitError","bareVal","initScope","chalk","green","workspaceExtensionProps","getSync","CFG_INIT_DEFAULT_DIRECTORY","CFG_INIT_DEFAULT_SCOPE","created","HostInitializerMain","init","initMessage","grey","exports"],"sources":["init-cmd.ts"],"sourcesContent":["import chalk from 'chalk';\nimport * as pathlib from 'path';\nimport { BitError } from '@teambit/bit-error';\nimport { getSync } from '@teambit/legacy/dist/api/consumer/lib/global-config';\nimport { initScope } from '@teambit/legacy/dist/api/scope';\nimport { CFG_INIT_DEFAULT_SCOPE, CFG_INIT_DEFAULT_DIRECTORY } from '@teambit/legacy/dist/constants';\nimport { WorkspaceExtensionProps } from '@teambit/config';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport { HostInitializerMain } from './host-initializer.main.runtime';\n\nexport class InitCmd implements Command {\n name = 'init [path]';\n skipWorkspace = true;\n description = 'create or reinitialize an empty workspace';\n helpUrl = 'reference/workspace/creating-workspaces/?new_existing_project=1';\n group = 'start';\n extendedDescription =\n 'if the current directory is already a workspace, it validates that bit files are correct and rewrite them if needed.';\n alias = '';\n loadAspects = false;\n options = [\n ['n', 'name <workspace-name>', 'name of the workspace'],\n [\n '',\n 'generator <env-id>',\n 'add env-id into the generators field in the workspace config for future \"bit create\" templates',\n ],\n [\n 'T',\n 'standalone',\n 'do not nest component store within .git directory and do not write config data inside package.json',\n ],\n ['', 'no-package-json', 'do not generate package.json'],\n ['r', 'reset', 'write missing or damaged Bit files'],\n ['', 'reset-new', 'reset .bitmap file as if the components were newly added and remove all model data (objects)'],\n [\n '',\n 'reset-lane-new',\n 'same as reset-new, but it only resets components belong to lanes. main components are left intact',\n ],\n [\n '',\n 'reset-hard',\n 'delete all Bit files and directories, including Bit configuration, tracking and model data. Useful for re-starting workspace from scratch',\n ],\n [\n '',\n 'reset-scope',\n 'removes local scope (.bit or .git/bit). tags/snaps that have not been exported will be lost. workspace is left intact',\n ],\n [\n 'd',\n 'default-directory <default-directory>',\n 'set the default directory pattern to import/create components into',\n ],\n ['', 'default-scope <default-scope>', 'set the default scope for components in the workspace'],\n ['f', 'force', 'force workspace initialization without clearing local objects'],\n ['b', 'bare [name]', 'initialize an empty bit bare scope'],\n ['s', 'shared <groupname>', 'add group write permissions to a scope properly'],\n ] as CommandOptions;\n\n constructor(private hostInitializer: HostInitializerMain) {}\n\n async report([path]: [string], flags: Record<string, any>) {\n const {\n name,\n generator,\n bare,\n shared,\n standalone,\n noPackageJson,\n reset,\n resetNew,\n resetLaneNew,\n resetHard,\n resetScope,\n force,\n defaultDirectory,\n defaultScope,\n } = flags;\n if (path) path = pathlib.resolve(path);\n if (bare) {\n if (reset || resetHard) throw new BitError('--reset and --reset-hard flags are not available for bare scope');\n // Handle both cases init --bare and init --bare [scopeName]\n const bareVal = bare === true ? '' : bare;\n await initScope(path, bareVal, shared);\n return `${chalk.green('successfully initialized an empty bare bit scope.')}`;\n }\n if (reset && resetHard) {\n throw new BitError('cannot use both --reset and --reset-hard, please use only one of them');\n }\n const workspaceExtensionProps: WorkspaceExtensionProps = {\n defaultDirectory: defaultDirectory ?? getSync(CFG_INIT_DEFAULT_DIRECTORY),\n defaultScope: defaultScope ?? getSync(CFG_INIT_DEFAULT_SCOPE),\n name,\n };\n const { created } = await HostInitializerMain.init(\n path,\n standalone,\n noPackageJson,\n reset,\n resetNew,\n resetLaneNew,\n resetHard,\n resetScope,\n force,\n workspaceExtensionProps,\n generator\n );\n\n let initMessage = `${chalk.green('successfully initialized a bit workspace.')}`;\n\n if (!created) initMessage = `${chalk.grey('successfully re-initialized a bit workspace.')}`;\n if (reset) initMessage = `${chalk.grey('your bit workspace has been reset successfully.')}`;\n if (resetHard) initMessage = `${chalk.grey('your bit workspace has been hard-reset successfully.')}`;\n if (resetScope) initMessage = `${chalk.grey('your local scope has been reset successfully.')}`;\n\n return initMessage;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -22,7 +22,8 @@ export class HostInitializerMain {
|
|
|
22
22
|
resetHard = false,
|
|
23
23
|
resetScope = false,
|
|
24
24
|
force = false,
|
|
25
|
-
workspaceConfigProps: WorkspaceExtensionProps = {}
|
|
25
|
+
workspaceConfigProps: WorkspaceExtensionProps = {},
|
|
26
|
+
generator?: string
|
|
26
27
|
): Promise<Consumer> {
|
|
27
28
|
const consumerInfo = await getConsumerInfo(absPath || process.cwd());
|
|
28
29
|
// if "bit init" was running without any flags, the user is probably trying to init a new workspace but wasn't aware
|
|
@@ -48,7 +49,7 @@ export class HostInitializerMain {
|
|
|
48
49
|
}
|
|
49
50
|
let consumer: Consumer | undefined;
|
|
50
51
|
try {
|
|
51
|
-
consumer = await createConsumer(consumerPath, noGit, noPackageJson, workspaceConfigProps);
|
|
52
|
+
consumer = await createConsumer(consumerPath, noGit, noPackageJson, workspaceConfigProps, generator);
|
|
52
53
|
} catch (err) {
|
|
53
54
|
// it's possible that at this stage the consumer fails to load due to scope issues.
|
|
54
55
|
// still we want to load it to include its instance of "scope.json", so then later when "consumer.write()", we
|
package/init-cmd.ts
CHANGED
|
@@ -20,6 +20,11 @@ export class InitCmd implements Command {
|
|
|
20
20
|
loadAspects = false;
|
|
21
21
|
options = [
|
|
22
22
|
['n', 'name <workspace-name>', 'name of the workspace'],
|
|
23
|
+
[
|
|
24
|
+
'',
|
|
25
|
+
'generator <env-id>',
|
|
26
|
+
'add env-id into the generators field in the workspace config for future "bit create" templates',
|
|
27
|
+
],
|
|
23
28
|
[
|
|
24
29
|
'T',
|
|
25
30
|
'standalone',
|
|
@@ -59,6 +64,7 @@ export class InitCmd implements Command {
|
|
|
59
64
|
async report([path]: [string], flags: Record<string, any>) {
|
|
60
65
|
const {
|
|
61
66
|
name,
|
|
67
|
+
generator,
|
|
62
68
|
bare,
|
|
63
69
|
shared,
|
|
64
70
|
standalone,
|
|
@@ -98,7 +104,8 @@ export class InitCmd implements Command {
|
|
|
98
104
|
resetHard,
|
|
99
105
|
resetScope,
|
|
100
106
|
force,
|
|
101
|
-
workspaceExtensionProps
|
|
107
|
+
workspaceExtensionProps,
|
|
108
|
+
generator
|
|
102
109
|
);
|
|
103
110
|
|
|
104
111
|
let initMessage = `${chalk.green('successfully initialized a bit workspace.')}`;
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@teambit/host-initializer",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.24",
|
|
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.
|
|
9
|
+
"version": "0.0.24"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"lodash": "4.17.21",
|
|
@@ -17,9 +17,9 @@
|
|
|
17
17
|
"@teambit/harmony": "0.4.6",
|
|
18
18
|
"@teambit/scope.modules.find-scope-path": "0.0.1",
|
|
19
19
|
"@teambit/bit-error": "0.0.404",
|
|
20
|
-
"@teambit/config": "0.0.
|
|
20
|
+
"@teambit/config": "0.0.1062",
|
|
21
21
|
"@teambit/toolbox.string.random": "0.0.1",
|
|
22
|
-
"@teambit/cli": "0.0.
|
|
22
|
+
"@teambit/cli": "0.0.888"
|
|
23
23
|
},
|
|
24
24
|
"devDependencies": {
|
|
25
25
|
"@types/lodash": "4.14.165",
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"@types/testing-library__jest-dom": "5.9.5"
|
|
32
32
|
},
|
|
33
33
|
"peerDependencies": {
|
|
34
|
-
"@teambit/legacy": "1.0.
|
|
34
|
+
"@teambit/legacy": "1.0.713",
|
|
35
35
|
"react": "^16.8.0 || ^17.0.0",
|
|
36
36
|
"react-dom": "^16.8.0 || ^17.0.0"
|
|
37
37
|
},
|
|
File without changes
|