@teambit/generator 1.0.331 → 1.0.333

Sign up to get free protection for your applications and to get access to all the features.
@@ -60,16 +60,16 @@ function _workspaceModules() {
60
60
  };
61
61
  return data;
62
62
  }
63
- function _sources() {
64
- const data = require("@teambit/legacy/dist/consumer/component/sources");
65
- _sources = function () {
63
+ function _pkgModules() {
64
+ const data = require("@teambit/pkg.modules.component-package-name");
65
+ _pkgModules = function () {
66
66
  return data;
67
67
  };
68
68
  return data;
69
69
  }
70
- function _componentIdToPackageName() {
71
- const data = _interopRequireDefault(require("@teambit/legacy/dist/utils/bit/component-id-to-package-name"));
72
- _componentIdToPackageName = function () {
70
+ function _sources() {
71
+ const data = require("@teambit/legacy/dist/consumer/component/sources");
72
+ _sources = function () {
73
73
  return data;
74
74
  };
75
75
  return data;
@@ -273,7 +273,7 @@ class ComponentGenerator {
273
273
  id: componentId,
274
274
  dir: componentPath,
275
275
  files: addResults.files,
276
- packageName: (0, _componentIdToPackageName().default)(component.state._consumer),
276
+ packageName: (0, _pkgModules().componentIdToPackageName)(component.state._consumer),
277
277
  envId,
278
278
  envSetBy: setBy,
279
279
  isApp: this.template.isApp,
@@ -1 +1 @@
1
- {"version":3,"names":["_vinyl","data","_interopRequireDefault","require","_fsExtra","_pMapSeries","_path","_envs","_camelcase","_bitError","_workspaceModules","_sources","_componentIdToPackageName","_dataToPersist","_componentId","e","__esModule","default","ComponentGenerator","constructor","workspace","componentIds","options","template","envs","newComponentHelper","tracker","wsConfigFiles","logger","onComponentCreateSlot","aspectId","envId","generate","force","dirsToDeleteIfFailed","generateResults","pMapSeries","componentId","componentPath","getNewComponentPath","pathFromUser","path","componentsToCreate","length","fs","existsSync","join","BitError","push","generateOneComponent","err","deleteGeneratedComponents","bitMap","write","ids","map","r","id","tryLinkToNodeModules","runOnComponentCreateHook","tryWriteConfigFiles","linkToNodeModulesByIds","consoleFailure","message","fns","values","Promise","all","fn","shouldWrite","isWorkspaceConfigWriteEnabled","clearComponentCache","writeConfigFiles","clean","silent","dedupe","throw","dirs","dir","absoluteDir","remove","code","name","namePascalCase","camelcase","pascalCase","nameCamelCase","ComponentID","fromString","files","generateFiles","mainFile","find","file","isMain","writeComponentFiles","addResults","track","rootDir","relativePath","componentName","fullName","defaultScope","scope","component","get","hasEnvConfiguredOriginally","hasEnvConfigured","isApp","use","toString","envBeforeConfigChanges","getEnv","config","boundConfig","bind","userEnv","env","isInWorkspace","exists","toStringWithoutVersion","templateEnv","EnvsAspect","Object","keys","undefined","configWithEnv","addEnvIfProvidedByFlag","setEntireConfig","getEnvData","envFromFlag","envFromTemplate","setBy","isSameAsThisEnvId","packageName","componentIdToPackageName","state","_consumer","envSetBy","isEnv","dependencies","installMissingDependencies","addEnvToConfig","templateFiles","dataToPersist","DataToPersist","vinylFiles","templateFile","templateFileVinyl","Vinyl","base","contents","Buffer","from","content","AbstractVinyl","fromVinyl","results","v","addManyFiles","addBasePath","persistAllToFS","exports"],"sources":["component-generator.ts"],"sourcesContent":["import Vinyl from 'vinyl';\nimport fs from 'fs-extra';\nimport pMapSeries from 'p-map-series';\nimport path from 'path';\nimport { Workspace } from '@teambit/workspace';\nimport { EnvsAspect, EnvsMain } from '@teambit/envs';\nimport camelcase from 'camelcase';\nimport { BitError } from '@teambit/bit-error';\nimport { Logger } from '@teambit/logger';\nimport { TrackerMain } from '@teambit/tracker';\nimport { linkToNodeModulesByIds } from '@teambit/workspace.modules.node-modules-linker';\nimport { PathOsBasedRelative } from '@teambit/legacy/dist/utils/path';\nimport { AbstractVinyl } from '@teambit/legacy/dist/consumer/component/sources';\nimport componentIdToPackageName from '@teambit/legacy/dist/utils/bit/component-id-to-package-name';\nimport DataToPersist from '@teambit/legacy/dist/consumer/component/sources/data-to-persist';\nimport { NewComponentHelperMain } from '@teambit/new-component-helper';\nimport { ComponentID } from '@teambit/component-id';\nimport { WorkspaceConfigFilesMain } from '@teambit/workspace-config-files';\n\nimport { ComponentTemplate, ComponentFile, ComponentConfig } from './component-template';\nimport { CreateOptions } from './create.cmd';\nimport { OnComponentCreateSlot } from './generator.main.runtime';\n\nexport type GenerateResult = {\n id: ComponentID;\n dir: string;\n files: string[];\n envId: string;\n envSetBy: string;\n packageName: string;\n isApp?: boolean;\n isEnv?: boolean;\n dependencies?: string[];\n installMissingDependencies?: boolean;\n};\n\nexport type OnComponentCreateFn = (generateResults: GenerateResult[]) => Promise<void>;\n\nexport class ComponentGenerator {\n constructor(\n private workspace: Workspace,\n private componentIds: ComponentID[],\n private options: Partial<CreateOptions>,\n private template: ComponentTemplate,\n private envs: EnvsMain,\n private newComponentHelper: NewComponentHelperMain,\n private tracker: TrackerMain,\n private wsConfigFiles: WorkspaceConfigFilesMain,\n private logger: Logger,\n private onComponentCreateSlot: OnComponentCreateSlot,\n private aspectId: string,\n private envId?: ComponentID\n ) {}\n\n async generate(force = false): Promise<GenerateResult[]> {\n const dirsToDeleteIfFailed: string[] = [];\n const generateResults = await pMapSeries(this.componentIds, async (componentId) => {\n try {\n const componentPath = this.newComponentHelper.getNewComponentPath(componentId, {\n pathFromUser: this.options.path,\n componentsToCreate: this.componentIds.length,\n });\n if (!force && fs.existsSync(path.join(this.workspace.path, componentPath))) {\n throw new BitError(\n `unable to create a component at \"${componentPath}\", this path already exists, please use \"--path\" to create the component in a different path`\n );\n }\n dirsToDeleteIfFailed.push(componentPath);\n return await this.generateOneComponent(componentId, componentPath);\n } catch (err: any) {\n await this.deleteGeneratedComponents(dirsToDeleteIfFailed);\n throw err;\n }\n });\n\n await this.workspace.bitMap.write(`create (${this.componentIds.length} components)`);\n\n const ids = generateResults.map((r) => r.id);\n await this.tryLinkToNodeModules(ids);\n await this.runOnComponentCreateHook(generateResults);\n // We are running this after the runOnComponentCreateHook as it require\n // the env to be installed to work properly, and the hook might install\n // the env.\n await this.tryWriteConfigFiles(ids);\n\n return generateResults;\n }\n\n private async tryLinkToNodeModules(ids: ComponentID[]) {\n try {\n await linkToNodeModulesByIds(\n this.workspace,\n ids.map((id) => id)\n );\n } catch (err: any) {\n this.logger.consoleFailure(\n `failed linking the new components to node_modules, please run \"bit link\" manually. error: ${err.message}`\n );\n }\n }\n\n private async runOnComponentCreateHook(generateResults: GenerateResult[]) {\n const fns = this.onComponentCreateSlot.values();\n if (!fns.length) return;\n await Promise.all(fns.map((fn) => fn(generateResults)));\n }\n\n /**\n * The function `tryWriteConfigFiles` attempts to write workspace config files, and if it fails, it logs an error\n * message.\n * @returns If the condition `!shouldWrite` is true, then nothing is being returned. Otherwise, if the `writeConfigFiles`\n * function is successfully executed, nothing is being returned. If an error occurs during the execution of\n * `writeConfigFiles`, an error message is being returned.\n */\n private async tryWriteConfigFiles(ids: ComponentID[]) {\n const shouldWrite = this.wsConfigFiles.isWorkspaceConfigWriteEnabled();\n if (!shouldWrite) return;\n ids.map((id) => this.workspace.clearComponentCache(id));\n const { err } = await this.wsConfigFiles.writeConfigFiles({\n clean: true,\n silent: true,\n dedupe: true,\n throw: false,\n });\n if (err) {\n this.logger.consoleFailure(\n `failed generating workspace config files, please run \"bit ws-config write\" manually. error: ${err.message}`\n );\n }\n }\n\n private async deleteGeneratedComponents(dirs: string[]) {\n await Promise.all(\n dirs.map(async (dir) => {\n const absoluteDir = path.join(this.workspace.path, dir);\n try {\n await fs.remove(absoluteDir);\n } catch (err: any) {\n if (err.code !== 'ENOENT') {\n // if not exist, it's fine\n throw err;\n }\n }\n })\n );\n }\n\n private async generateOneComponent(componentId: ComponentID, componentPath: string): Promise<GenerateResult> {\n const name = componentId.name;\n const namePascalCase = camelcase(name, { pascalCase: true });\n const nameCamelCase = camelcase(name);\n const aspectId = ComponentID.fromString(this.aspectId);\n\n const files = await this.template.generateFiles({\n name,\n namePascalCase,\n nameCamelCase,\n componentId,\n aspectId,\n envId: this.envId,\n });\n const mainFile = files.find((file) => file.isMain);\n await this.writeComponentFiles(componentPath, files);\n const addResults = await this.tracker.track({\n rootDir: componentPath,\n mainFile: mainFile?.relativePath,\n componentName: componentId.fullName,\n defaultScope: this.options.scope,\n });\n const component = await this.workspace.get(componentId);\n const hasEnvConfiguredOriginally = this.envs.hasEnvConfigured(component);\n if (this.template.isApp) {\n await this.workspace.use(componentId.toString());\n }\n const envBeforeConfigChanges = this.envs.getEnv(component);\n let config = this.template.config;\n if (config && typeof config === 'function') {\n const boundConfig = this.template.config?.bind(this.template);\n config = boundConfig({ aspectId: this.aspectId });\n }\n\n const userEnv = this.options.env;\n\n if (!config && this.envId && !userEnv) {\n const isInWorkspace = this.workspace.exists(this.envId);\n config = {\n [isInWorkspace ? this.envId.toStringWithoutVersion() : this.envId.toString()]: {},\n 'teambit.envs/envs': {\n env: this.envId.toStringWithoutVersion(),\n },\n };\n }\n\n const templateEnv = config?.[EnvsAspect.id]?.env;\n\n if (config && templateEnv && hasEnvConfiguredOriginally) {\n // remove the env we got from the template.\n delete config[templateEnv];\n delete config[EnvsAspect.id].env;\n if (Object.keys(config[EnvsAspect.id]).length === 0) delete config[EnvsAspect.id];\n if (Object.keys(config).length === 0) config = undefined;\n }\n\n const configWithEnv = await this.addEnvIfProvidedByFlag(config);\n if (configWithEnv) this.workspace.bitMap.setEntireConfig(component.id, configWithEnv);\n\n const getEnvData = () => {\n const envFromFlag = this.options.env; // env entered by the user when running `bit create --env`\n const envFromTemplate = config?.[EnvsAspect.id]?.env;\n if (envFromFlag) {\n return {\n envId: envFromFlag,\n setBy: '--env flag',\n };\n }\n if (envFromTemplate) {\n return {\n envId: envFromTemplate,\n setBy: 'template',\n };\n }\n return {\n envId: envBeforeConfigChanges.id,\n setBy: hasEnvConfiguredOriginally ? 'workspace variants' : '<default>',\n };\n };\n // eslint-disable-next-line prefer-const\n let { envId, setBy } = getEnvData();\n if (envId) {\n const isInWorkspace = this.workspace.exists(envId);\n const isSameAsThisEnvId = envId === this.envId?.toString() || envId === this.envId?.toStringWithoutVersion();\n if (isSameAsThisEnvId && this.envId) {\n envId = isInWorkspace ? this.envId.toStringWithoutVersion() : this.envId.toString();\n }\n }\n return {\n id: componentId,\n dir: componentPath,\n files: addResults.files,\n packageName: componentIdToPackageName(component.state._consumer),\n envId,\n envSetBy: setBy,\n isApp: this.template.isApp,\n isEnv: this.template.isEnv,\n dependencies: this.template.dependencies,\n installMissingDependencies: this.template.installMissingDependencies,\n };\n }\n\n private async addEnvIfProvidedByFlag(config?: ComponentConfig): Promise<ComponentConfig | undefined> {\n const userEnv = this.options.env; // env entered by the user when running `bit create --env`\n const templateEnv = config?.[EnvsAspect.id]?.env;\n if (!userEnv || userEnv === templateEnv) {\n return config;\n }\n config = config || {};\n if (templateEnv) {\n // the component template has an env and the user wants a different env.\n delete config[templateEnv];\n }\n await this.tracker.addEnvToConfig(userEnv, config);\n\n return config;\n }\n\n /**\n * writes the generated template files to the default directory set in the workspace config\n */\n private async writeComponentFiles(\n componentPath: string,\n templateFiles: ComponentFile[]\n ): Promise<PathOsBasedRelative[]> {\n const dataToPersist = new DataToPersist();\n const vinylFiles = templateFiles.map((templateFile) => {\n const templateFileVinyl = new Vinyl({\n base: componentPath,\n path: path.join(componentPath, templateFile.relativePath),\n contents: Buffer.from(templateFile.content),\n });\n return AbstractVinyl.fromVinyl(templateFileVinyl);\n });\n const results = vinylFiles.map((v) => v.path);\n dataToPersist.addManyFiles(vinylFiles);\n dataToPersist.addBasePath(this.workspace.path);\n await dataToPersist.persistAllToFS();\n return results;\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_vinyl","data","_interopRequireDefault","require","_fsExtra","_pMapSeries","_path","_envs","_camelcase","_bitError","_workspaceModules","_pkgModules","_sources","_dataToPersist","_componentId","e","__esModule","default","ComponentGenerator","constructor","workspace","componentIds","options","template","envs","newComponentHelper","tracker","wsConfigFiles","logger","onComponentCreateSlot","aspectId","envId","generate","force","dirsToDeleteIfFailed","generateResults","pMapSeries","componentId","componentPath","getNewComponentPath","pathFromUser","path","componentsToCreate","length","fs","existsSync","join","BitError","push","generateOneComponent","err","deleteGeneratedComponents","bitMap","write","ids","map","r","id","tryLinkToNodeModules","runOnComponentCreateHook","tryWriteConfigFiles","linkToNodeModulesByIds","consoleFailure","message","fns","values","Promise","all","fn","shouldWrite","isWorkspaceConfigWriteEnabled","clearComponentCache","writeConfigFiles","clean","silent","dedupe","throw","dirs","dir","absoluteDir","remove","code","name","namePascalCase","camelcase","pascalCase","nameCamelCase","ComponentID","fromString","files","generateFiles","mainFile","find","file","isMain","writeComponentFiles","addResults","track","rootDir","relativePath","componentName","fullName","defaultScope","scope","component","get","hasEnvConfiguredOriginally","hasEnvConfigured","isApp","use","toString","envBeforeConfigChanges","getEnv","config","boundConfig","bind","userEnv","env","isInWorkspace","exists","toStringWithoutVersion","templateEnv","EnvsAspect","Object","keys","undefined","configWithEnv","addEnvIfProvidedByFlag","setEntireConfig","getEnvData","envFromFlag","envFromTemplate","setBy","isSameAsThisEnvId","packageName","componentIdToPackageName","state","_consumer","envSetBy","isEnv","dependencies","installMissingDependencies","addEnvToConfig","templateFiles","dataToPersist","DataToPersist","vinylFiles","templateFile","templateFileVinyl","Vinyl","base","contents","Buffer","from","content","AbstractVinyl","fromVinyl","results","v","addManyFiles","addBasePath","persistAllToFS","exports"],"sources":["component-generator.ts"],"sourcesContent":["import Vinyl from 'vinyl';\nimport fs from 'fs-extra';\nimport pMapSeries from 'p-map-series';\nimport path from 'path';\nimport { Workspace } from '@teambit/workspace';\nimport { EnvsAspect, EnvsMain } from '@teambit/envs';\nimport camelcase from 'camelcase';\nimport { BitError } from '@teambit/bit-error';\nimport { Logger } from '@teambit/logger';\nimport { TrackerMain } from '@teambit/tracker';\nimport { linkToNodeModulesByIds } from '@teambit/workspace.modules.node-modules-linker';\nimport { PathOsBasedRelative } from '@teambit/toolbox.path.path';\nimport { componentIdToPackageName } from '@teambit/pkg.modules.component-package-name';\nimport { AbstractVinyl } from '@teambit/legacy/dist/consumer/component/sources';\nimport DataToPersist from '@teambit/legacy/dist/consumer/component/sources/data-to-persist';\nimport { NewComponentHelperMain } from '@teambit/new-component-helper';\nimport { ComponentID } from '@teambit/component-id';\nimport { WorkspaceConfigFilesMain } from '@teambit/workspace-config-files';\n\nimport { ComponentTemplate, ComponentFile, ComponentConfig } from './component-template';\nimport { CreateOptions } from './create.cmd';\nimport { OnComponentCreateSlot } from './generator.main.runtime';\n\nexport type GenerateResult = {\n id: ComponentID;\n dir: string;\n files: string[];\n envId: string;\n envSetBy: string;\n packageName: string;\n isApp?: boolean;\n isEnv?: boolean;\n dependencies?: string[];\n installMissingDependencies?: boolean;\n};\n\nexport type OnComponentCreateFn = (generateResults: GenerateResult[]) => Promise<void>;\n\nexport class ComponentGenerator {\n constructor(\n private workspace: Workspace,\n private componentIds: ComponentID[],\n private options: Partial<CreateOptions>,\n private template: ComponentTemplate,\n private envs: EnvsMain,\n private newComponentHelper: NewComponentHelperMain,\n private tracker: TrackerMain,\n private wsConfigFiles: WorkspaceConfigFilesMain,\n private logger: Logger,\n private onComponentCreateSlot: OnComponentCreateSlot,\n private aspectId: string,\n private envId?: ComponentID\n ) {}\n\n async generate(force = false): Promise<GenerateResult[]> {\n const dirsToDeleteIfFailed: string[] = [];\n const generateResults = await pMapSeries(this.componentIds, async (componentId) => {\n try {\n const componentPath = this.newComponentHelper.getNewComponentPath(componentId, {\n pathFromUser: this.options.path,\n componentsToCreate: this.componentIds.length,\n });\n if (!force && fs.existsSync(path.join(this.workspace.path, componentPath))) {\n throw new BitError(\n `unable to create a component at \"${componentPath}\", this path already exists, please use \"--path\" to create the component in a different path`\n );\n }\n dirsToDeleteIfFailed.push(componentPath);\n return await this.generateOneComponent(componentId, componentPath);\n } catch (err: any) {\n await this.deleteGeneratedComponents(dirsToDeleteIfFailed);\n throw err;\n }\n });\n\n await this.workspace.bitMap.write(`create (${this.componentIds.length} components)`);\n\n const ids = generateResults.map((r) => r.id);\n await this.tryLinkToNodeModules(ids);\n await this.runOnComponentCreateHook(generateResults);\n // We are running this after the runOnComponentCreateHook as it require\n // the env to be installed to work properly, and the hook might install\n // the env.\n await this.tryWriteConfigFiles(ids);\n\n return generateResults;\n }\n\n private async tryLinkToNodeModules(ids: ComponentID[]) {\n try {\n await linkToNodeModulesByIds(\n this.workspace,\n ids.map((id) => id)\n );\n } catch (err: any) {\n this.logger.consoleFailure(\n `failed linking the new components to node_modules, please run \"bit link\" manually. error: ${err.message}`\n );\n }\n }\n\n private async runOnComponentCreateHook(generateResults: GenerateResult[]) {\n const fns = this.onComponentCreateSlot.values();\n if (!fns.length) return;\n await Promise.all(fns.map((fn) => fn(generateResults)));\n }\n\n /**\n * The function `tryWriteConfigFiles` attempts to write workspace config files, and if it fails, it logs an error\n * message.\n * @returns If the condition `!shouldWrite` is true, then nothing is being returned. Otherwise, if the `writeConfigFiles`\n * function is successfully executed, nothing is being returned. If an error occurs during the execution of\n * `writeConfigFiles`, an error message is being returned.\n */\n private async tryWriteConfigFiles(ids: ComponentID[]) {\n const shouldWrite = this.wsConfigFiles.isWorkspaceConfigWriteEnabled();\n if (!shouldWrite) return;\n ids.map((id) => this.workspace.clearComponentCache(id));\n const { err } = await this.wsConfigFiles.writeConfigFiles({\n clean: true,\n silent: true,\n dedupe: true,\n throw: false,\n });\n if (err) {\n this.logger.consoleFailure(\n `failed generating workspace config files, please run \"bit ws-config write\" manually. error: ${err.message}`\n );\n }\n }\n\n private async deleteGeneratedComponents(dirs: string[]) {\n await Promise.all(\n dirs.map(async (dir) => {\n const absoluteDir = path.join(this.workspace.path, dir);\n try {\n await fs.remove(absoluteDir);\n } catch (err: any) {\n if (err.code !== 'ENOENT') {\n // if not exist, it's fine\n throw err;\n }\n }\n })\n );\n }\n\n private async generateOneComponent(componentId: ComponentID, componentPath: string): Promise<GenerateResult> {\n const name = componentId.name;\n const namePascalCase = camelcase(name, { pascalCase: true });\n const nameCamelCase = camelcase(name);\n const aspectId = ComponentID.fromString(this.aspectId);\n\n const files = await this.template.generateFiles({\n name,\n namePascalCase,\n nameCamelCase,\n componentId,\n aspectId,\n envId: this.envId,\n });\n const mainFile = files.find((file) => file.isMain);\n await this.writeComponentFiles(componentPath, files);\n const addResults = await this.tracker.track({\n rootDir: componentPath,\n mainFile: mainFile?.relativePath,\n componentName: componentId.fullName,\n defaultScope: this.options.scope,\n });\n const component = await this.workspace.get(componentId);\n const hasEnvConfiguredOriginally = this.envs.hasEnvConfigured(component);\n if (this.template.isApp) {\n await this.workspace.use(componentId.toString());\n }\n const envBeforeConfigChanges = this.envs.getEnv(component);\n let config = this.template.config;\n if (config && typeof config === 'function') {\n const boundConfig = this.template.config?.bind(this.template);\n config = boundConfig({ aspectId: this.aspectId });\n }\n\n const userEnv = this.options.env;\n\n if (!config && this.envId && !userEnv) {\n const isInWorkspace = this.workspace.exists(this.envId);\n config = {\n [isInWorkspace ? this.envId.toStringWithoutVersion() : this.envId.toString()]: {},\n 'teambit.envs/envs': {\n env: this.envId.toStringWithoutVersion(),\n },\n };\n }\n\n const templateEnv = config?.[EnvsAspect.id]?.env;\n\n if (config && templateEnv && hasEnvConfiguredOriginally) {\n // remove the env we got from the template.\n delete config[templateEnv];\n delete config[EnvsAspect.id].env;\n if (Object.keys(config[EnvsAspect.id]).length === 0) delete config[EnvsAspect.id];\n if (Object.keys(config).length === 0) config = undefined;\n }\n\n const configWithEnv = await this.addEnvIfProvidedByFlag(config);\n if (configWithEnv) this.workspace.bitMap.setEntireConfig(component.id, configWithEnv);\n\n const getEnvData = () => {\n const envFromFlag = this.options.env; // env entered by the user when running `bit create --env`\n const envFromTemplate = config?.[EnvsAspect.id]?.env;\n if (envFromFlag) {\n return {\n envId: envFromFlag,\n setBy: '--env flag',\n };\n }\n if (envFromTemplate) {\n return {\n envId: envFromTemplate,\n setBy: 'template',\n };\n }\n return {\n envId: envBeforeConfigChanges.id,\n setBy: hasEnvConfiguredOriginally ? 'workspace variants' : '<default>',\n };\n };\n // eslint-disable-next-line prefer-const\n let { envId, setBy } = getEnvData();\n if (envId) {\n const isInWorkspace = this.workspace.exists(envId);\n const isSameAsThisEnvId = envId === this.envId?.toString() || envId === this.envId?.toStringWithoutVersion();\n if (isSameAsThisEnvId && this.envId) {\n envId = isInWorkspace ? this.envId.toStringWithoutVersion() : this.envId.toString();\n }\n }\n return {\n id: componentId,\n dir: componentPath,\n files: addResults.files,\n packageName: componentIdToPackageName(component.state._consumer),\n envId,\n envSetBy: setBy,\n isApp: this.template.isApp,\n isEnv: this.template.isEnv,\n dependencies: this.template.dependencies,\n installMissingDependencies: this.template.installMissingDependencies,\n };\n }\n\n private async addEnvIfProvidedByFlag(config?: ComponentConfig): Promise<ComponentConfig | undefined> {\n const userEnv = this.options.env; // env entered by the user when running `bit create --env`\n const templateEnv = config?.[EnvsAspect.id]?.env;\n if (!userEnv || userEnv === templateEnv) {\n return config;\n }\n config = config || {};\n if (templateEnv) {\n // the component template has an env and the user wants a different env.\n delete config[templateEnv];\n }\n await this.tracker.addEnvToConfig(userEnv, config);\n\n return config;\n }\n\n /**\n * writes the generated template files to the default directory set in the workspace config\n */\n private async writeComponentFiles(\n componentPath: string,\n templateFiles: ComponentFile[]\n ): Promise<PathOsBasedRelative[]> {\n const dataToPersist = new DataToPersist();\n const vinylFiles = templateFiles.map((templateFile) => {\n const templateFileVinyl = new Vinyl({\n base: componentPath,\n path: path.join(componentPath, templateFile.relativePath),\n contents: Buffer.from(templateFile.content),\n });\n return AbstractVinyl.fromVinyl(templateFileVinyl);\n });\n const results = vinylFiles.map((v) => v.path);\n dataToPersist.addManyFiles(vinylFiles);\n dataToPersist.addBasePath(this.workspace.path);\n await dataToPersist.persistAllToFS();\n return results;\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.generator_generator@1.0.331/dist/generator.composition.js';
2
- import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.generator_generator@1.0.331/dist/generator.docs.mdx';
1
+ import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.generator_generator@1.0.333/dist/generator.composition.js';
2
+ import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.generator_generator@1.0.333/dist/generator.docs.mdx';
3
3
 
4
4
  export const compositions = [compositions_0];
5
5
  export const overview = [overview_0];
@@ -74,16 +74,9 @@ function _compiler() {
74
74
  };
75
75
  return data;
76
76
  }
77
- function _gitExecutable() {
78
- const data = _interopRequireDefault(require("@teambit/legacy/dist/utils/git/git-executable"));
79
- _gitExecutable = function () {
80
- return data;
81
- };
82
- return data;
83
- }
84
- function _gitNotFound() {
85
- const data = _interopRequireDefault(require("@teambit/legacy/dist/utils/git/exceptions/git-not-found"));
86
- _gitNotFound = function () {
77
+ function _gitModules() {
78
+ const data = require("@teambit/git.modules.git-executable");
79
+ _gitModules = function () {
87
80
  return data;
88
81
  };
89
82
  return data;
@@ -187,13 +180,13 @@ class WorkspaceGenerator {
187
180
  }
188
181
  async initGit() {
189
182
  if (this.options.skipGit) return;
190
- const gitExecutablePath = (0, _gitExecutable().default)();
183
+ const gitExecutablePath = (0, _gitModules().getGitExecutablePath)();
191
184
  const params = ['init'];
192
185
  try {
193
186
  await (0, _execa().default)(gitExecutablePath, params);
194
187
  } catch (err) {
195
188
  if (err.exitCodeName === 'ENOENT') {
196
- throw new (_gitNotFound().default)(gitExecutablePath, err);
189
+ throw new (_gitModules().GitNotFound)(gitExecutablePath, err);
197
190
  }
198
191
  throw err;
199
192
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_fsExtra","data","_interopRequireDefault","require","_bit","_execa","_pMapSeries","_ui","_logger","_workspace","_forking","_importer","_compiler","_gitExecutable","_gitNotFound","_path","_git","_install","_hostInitializer","_workspaceConfigFiles","_generator","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","WorkspaceGenerator","constructor","workspaceName","workspacePath","options","template","aspectComponent","generate","fs","ensureDir","process","chdir","initGit","HostInitializerMain","init","skipGit","writeWorkspaceFiles","reloadBitInWorkspaceDir","workspace","inInstallContext","setupGitBitmapMergeDriver","createComponentsFromRemote","forkComponentsFromRemote","importComponentsFromRemote","clearCache","install","undefined","dedupe","import","copyPeerToRuntimeOnRoot","copyPeerToRuntimeOnComponents","updateExisting","compileComponents","wsConfigFiles","writeConfigFiles","err","logger","error","remove","gitExecutablePath","getGitExecutablePath","params","execa","exitCodeName","GitNotFound","git","setGitMergeDriver","global","buildUI","uiMain","harmony","get","UIAspect","id","createRuntime","getWorkspaceContext","name","defaultScope","empty","workspaceContext","templateFiles","generateFiles","Promise","all","map","templateFile","outputFile","join","relativePath","content","loadBit","WorkspaceAspect","InstallAspect","loggerMain","LoggerAspect","createLogger","GeneratorAspect","importer","ImporterAspect","forking","ForkingAspect","GitAspect","WorkspaceConfigFilesAspect","generator","create","componentsToCreate","pMapSeries","componentToCreate","generateComponentTemplate","componentName","templateName","aspect","env","path","scope","componentsToFork","importComponents","fork","length","componentsToForkRestructured","targetName","config","targetScope","sourceId","targetId","forkMultipleFromRemote","refactor","componentsToImport","componentToImport","ids","installNpmPackages","writeToPath","bitMap","write","compiler","CompilerAspect","compileOnWorkspace","exports"],"sources":["workspace-generator.ts"],"sourcesContent":["import fs from 'fs-extra';\nimport { loadBit } from '@teambit/bit';\nimport { Harmony } from '@teambit/harmony';\nimport { Component } from '@teambit/component';\nimport execa from 'execa';\nimport pMapSeries from 'p-map-series';\nimport { UIAspect, UiMain } from '@teambit/ui';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { WorkspaceAspect, Workspace } from '@teambit/workspace';\nimport { ForkingAspect, ForkingMain } from '@teambit/forking';\nimport { ImporterAspect, ImporterMain } from '@teambit/importer';\nimport { CompilerAspect, CompilerMain } from '@teambit/compiler';\nimport getGitExecutablePath from '@teambit/legacy/dist/utils/git/git-executable';\nimport GitNotFound from '@teambit/legacy/dist/utils/git/exceptions/git-not-found';\nimport { join } from 'path';\nimport { ComponentID } from '@teambit/component-id';\nimport { GitAspect, GitMain } from '@teambit/git';\nimport { InstallAspect, InstallMain } from '@teambit/install';\nimport { HostInitializerMain } from '@teambit/host-initializer';\nimport { WorkspaceConfigFilesAspect, WorkspaceConfigFilesMain } from '@teambit/workspace-config-files';\n// import { ComponentGenerator } from './component-generator';\nimport { WorkspaceTemplate, WorkspaceContext } from './workspace-template';\nimport { NewOptions } from './new.cmd';\nimport { GeneratorAspect } from './generator.aspect';\nimport { GeneratorMain } from './generator.main.runtime';\n\nexport type GenerateResult = { id: ComponentID; dir: string; files: string[]; envId: string };\n\nexport class WorkspaceGenerator {\n private harmony: Harmony;\n private workspace: Workspace;\n private install: InstallMain;\n private importer: ImporterMain;\n private logger?: Logger;\n private forking: ForkingMain;\n private git: GitMain;\n private wsConfigFiles: WorkspaceConfigFilesMain;\n private generator: GeneratorMain;\n\n constructor(\n private workspaceName: string,\n private workspacePath: string,\n private options: NewOptions & { currentDir?: boolean },\n private template: WorkspaceTemplate,\n private aspectComponent?: Component\n ) {}\n\n async generate(): Promise<string> {\n await fs.ensureDir(this.workspacePath);\n try {\n process.chdir(this.workspacePath);\n await this.initGit();\n await HostInitializerMain.init(\n this.workspacePath,\n this.options.skipGit,\n false,\n false,\n false,\n false,\n false,\n false,\n false,\n {}\n );\n await this.writeWorkspaceFiles();\n await this.reloadBitInWorkspaceDir();\n // Setting the workspace to be in install context to prevent errors during the workspace generation\n // the workspace will be in install context until the end of the generation install process\n this.workspace.inInstallContext = true;\n await this.setupGitBitmapMergeDriver();\n await this.createComponentsFromRemote();\n await this.forkComponentsFromRemote();\n await this.importComponentsFromRemote();\n await this.workspace.clearCache();\n await this.install.install(undefined, {\n dedupe: true,\n import: false,\n copyPeerToRuntimeOnRoot: true,\n copyPeerToRuntimeOnComponents: false,\n updateExisting: false,\n });\n\n // compile the components again now that we have the dependencies installed\n await this.compileComponents(true);\n await this.wsConfigFiles.writeConfigFiles({});\n } catch (err: any) {\n this.logger?.error(`failed generating a new workspace, will delete the dir ${this.workspacePath}`, err);\n await fs.remove(this.workspacePath);\n throw err;\n }\n\n return this.workspacePath;\n }\n\n private async initGit() {\n if (this.options.skipGit) return;\n const gitExecutablePath = getGitExecutablePath();\n const params = ['init'];\n try {\n await execa(gitExecutablePath, params);\n } catch (err: any) {\n if (err.exitCodeName === 'ENOENT') {\n throw new GitNotFound(gitExecutablePath, err);\n }\n throw err;\n }\n }\n\n private async setupGitBitmapMergeDriver() {\n if (this.options.skipGit) return;\n await this.git.setGitMergeDriver({ global: false });\n }\n\n private async buildUI() {\n const uiMain = this.harmony.get<UiMain>(UIAspect.id);\n await uiMain.createRuntime({});\n }\n\n private getWorkspaceContext(): WorkspaceContext {\n return {\n name: this.workspaceName,\n defaultScope: this.options.defaultScope,\n empty: this.options.empty,\n aspectComponent: this.aspectComponent,\n template: this.template,\n skipGit: this.options.skipGit,\n };\n }\n\n /**\n * writes the generated template files to the default directory set in the workspace config\n */\n private async writeWorkspaceFiles(): Promise<void> {\n const workspaceContext = this.getWorkspaceContext();\n const templateFiles = await this.template.generateFiles(workspaceContext);\n await Promise.all(\n templateFiles.map(async (templateFile) => {\n await fs.outputFile(join(this.workspacePath, templateFile.relativePath), templateFile.content);\n })\n );\n }\n\n private async reloadBitInWorkspaceDir() {\n this.harmony = await loadBit(this.workspacePath);\n this.workspace = this.harmony.get<Workspace>(WorkspaceAspect.id);\n this.install = this.harmony.get<InstallMain>(InstallAspect.id);\n const loggerMain = this.harmony.get<LoggerMain>(LoggerAspect.id);\n this.logger = loggerMain.createLogger(GeneratorAspect.id);\n this.importer = this.harmony.get<ImporterMain>(ImporterAspect.id);\n this.forking = this.harmony.get<ForkingMain>(ForkingAspect.id);\n this.git = this.harmony.get<GitMain>(GitAspect.id);\n this.wsConfigFiles = this.harmony.get<WorkspaceConfigFilesMain>(WorkspaceConfigFilesAspect.id);\n this.generator = this.harmony.get<GeneratorMain>(GeneratorAspect.id);\n }\n\n private async createComponentsFromRemote() {\n if (this.options.empty || !this.template.create) return;\n const workspaceContext = this.getWorkspaceContext();\n const componentsToCreate = this.template.create(workspaceContext);\n await pMapSeries(componentsToCreate, async (componentToCreate) => {\n return this.generator.generateComponentTemplate(\n [componentToCreate.componentName],\n componentToCreate.templateName,\n {\n aspect: componentToCreate.aspect,\n env: componentToCreate.env,\n path: componentToCreate.path,\n scope: componentToCreate.scope,\n }\n );\n });\n }\n\n private async forkComponentsFromRemote() {\n if (this.options.empty) return;\n const workspaceContext = this.getWorkspaceContext();\n const componentsToFork =\n this.template?.importComponents?.(workspaceContext) || this.template?.fork?.(workspaceContext) || [];\n if (!componentsToFork.length) return;\n const componentsToForkRestructured = componentsToFork.map(({ id, targetName, path, env, config, targetScope }) => ({\n sourceId: id,\n targetId: targetName,\n targetScope,\n path,\n env,\n config,\n }));\n await this.forking.forkMultipleFromRemote(componentsToForkRestructured, {\n scope: this.workspace.defaultScope,\n refactor: true,\n install: false,\n });\n }\n\n private async importComponentsFromRemote() {\n if (this.options.empty) return;\n const workspaceContext = this.getWorkspaceContext();\n const componentsToImport = this.template?.import?.(workspaceContext) || [];\n\n if (!componentsToImport.length) return;\n\n await pMapSeries(componentsToImport, async (componentToImport) => {\n await this.importer.import(\n {\n ids: [componentToImport.id],\n installNpmPackages: false,\n writeConfigFiles: false,\n writeToPath: componentToImport.path,\n },\n []\n );\n });\n\n await this.workspace.bitMap.write('new');\n }\n\n private async compileComponents(clearCache = true) {\n if (clearCache) {\n await this.workspace.clearCache();\n }\n const compiler = this.harmony.get<CompilerMain>(CompilerAspect.id);\n await compiler.compileOnWorkspace();\n }\n}\n"],"mappings":";;;;;;AAAA,SAAAA,SAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,QAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,KAAA;EAAA,MAAAH,IAAA,GAAAE,OAAA;EAAAC,IAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAGA,SAAAI,OAAA;EAAA,MAAAJ,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAE,MAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAK,YAAA;EAAA,MAAAL,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAG,WAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAM,IAAA;EAAA,MAAAN,IAAA,GAAAE,OAAA;EAAAI,GAAA,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,WAAA;EAAA,MAAAR,IAAA,GAAAE,OAAA;EAAAM,UAAA,YAAAA,CAAA;IAAA,OAAAR,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAS,SAAA;EAAA,MAAAT,IAAA,GAAAE,OAAA;EAAAO,QAAA,YAAAA,CAAA;IAAA,OAAAT,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAU,UAAA;EAAA,MAAAV,IAAA,GAAAE,OAAA;EAAAQ,SAAA,YAAAA,CAAA;IAAA,OAAAV,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAW,UAAA;EAAA,MAAAX,IAAA,GAAAE,OAAA;EAAAS,SAAA,YAAAA,CAAA;IAAA,OAAAX,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAY,eAAA;EAAA,MAAAZ,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAU,cAAA,YAAAA,CAAA;IAAA,OAAAZ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAa,aAAA;EAAA,MAAAb,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAW,YAAA,YAAAA,CAAA;IAAA,OAAAb,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAc,MAAA;EAAA,MAAAd,IAAA,GAAAE,OAAA;EAAAY,KAAA,YAAAA,CAAA;IAAA,OAAAd,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAe,KAAA;EAAA,MAAAf,IAAA,GAAAE,OAAA;EAAAa,IAAA,YAAAA,CAAA;IAAA,OAAAf,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAgB,SAAA;EAAA,MAAAhB,IAAA,GAAAE,OAAA;EAAAc,QAAA,YAAAA,CAAA;IAAA,OAAAhB,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAiB,iBAAA;EAAA,MAAAjB,IAAA,GAAAE,OAAA;EAAAe,gBAAA,YAAAA,CAAA;IAAA,OAAAjB,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAkB,sBAAA;EAAA,MAAAlB,IAAA,GAAAE,OAAA;EAAAgB,qBAAA,YAAAA,CAAA;IAAA,OAAAlB,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAIA,SAAAmB,WAAA;EAAA,MAAAnB,IAAA,GAAAE,OAAA;EAAAiB,UAAA,YAAAA,CAAA;IAAA,OAAAnB,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAAqD,SAAAC,uBAAAmB,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,gBAAAH,CAAA,EAAAI,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAE,cAAA,CAAAF,CAAA,MAAAJ,CAAA,GAAAO,MAAA,CAAAC,cAAA,CAAAR,CAAA,EAAAI,CAAA,IAAAK,KAAA,EAAAJ,CAAA,EAAAK,UAAA,MAAAC,YAAA,MAAAC,QAAA,UAAAZ,CAAA,CAAAI,CAAA,IAAAC,CAAA,EAAAL,CAAA;AAAA,SAAAM,eAAAD,CAAA,QAAAQ,CAAA,GAAAC,YAAA,CAAAT,CAAA,uCAAAQ,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAT,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAL,CAAA,GAAAK,CAAA,CAAAU,MAAA,CAAAC,WAAA,kBAAAhB,CAAA,QAAAa,CAAA,GAAAb,CAAA,CAAAiB,IAAA,CAAAZ,CAAA,EAAAD,CAAA,uCAAAS,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAAd,CAAA,GAAAe,MAAA,GAAAC,MAAA,EAAAf,CAAA,KAHrD;AAQO,MAAMgB,kBAAkB,CAAC;EAW9BC,WAAWA,CACDC,aAAqB,EACrBC,aAAqB,EACrBC,OAA8C,EAC9CC,QAA2B,EAC3BC,eAA2B,EACnC;IAAA,KALQJ,aAAqB,GAArBA,aAAqB;IAAA,KACrBC,aAAqB,GAArBA,aAAqB;IAAA,KACrBC,OAA8C,GAA9CA,OAA8C;IAAA,KAC9CC,QAA2B,GAA3BA,QAA2B;IAAA,KAC3BC,eAA2B,GAA3BA,eAA2B;IAAAxB,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;EAClC;EAEH,MAAMyB,QAAQA,CAAA,EAAoB;IAChC,MAAMC,kBAAE,CAACC,SAAS,CAAC,IAAI,CAACN,aAAa,CAAC;IACtC,IAAI;MACFO,OAAO,CAACC,KAAK,CAAC,IAAI,CAACR,aAAa,CAAC;MACjC,MAAM,IAAI,CAACS,OAAO,CAAC,CAAC;MACpB,MAAMC,sCAAmB,CAACC,IAAI,CAC5B,IAAI,CAACX,aAAa,EAClB,IAAI,CAACC,OAAO,CAACW,OAAO,EACpB,KAAK,EACL,KAAK,EACL,KAAK,EACL,KAAK,EACL,KAAK,EACL,KAAK,EACL,KAAK,EACL,CAAC,CACH,CAAC;MACD,MAAM,IAAI,CAACC,mBAAmB,CAAC,CAAC;MAChC,MAAM,IAAI,CAACC,uBAAuB,CAAC,CAAC;MACpC;MACA;MACA,IAAI,CAACC,SAAS,CAACC,gBAAgB,GAAG,IAAI;MACtC,MAAM,IAAI,CAACC,yBAAyB,CAAC,CAAC;MACtC,MAAM,IAAI,CAACC,0BAA0B,CAAC,CAAC;MACvC,MAAM,IAAI,CAACC,wBAAwB,CAAC,CAAC;MACrC,MAAM,IAAI,CAACC,0BAA0B,CAAC,CAAC;MACvC,MAAM,IAAI,CAACL,SAAS,CAACM,UAAU,CAAC,CAAC;MACjC,MAAM,IAAI,CAACC,OAAO,CAACA,OAAO,CAACC,SAAS,EAAE;QACpCC,MAAM,EAAE,IAAI;QACZC,MAAM,EAAE,KAAK;QACbC,uBAAuB,EAAE,IAAI;QAC7BC,6BAA6B,EAAE,KAAK;QACpCC,cAAc,EAAE;MAClB,CAAC,CAAC;;MAEF;MACA,MAAM,IAAI,CAACC,iBAAiB,CAAC,IAAI,CAAC;MAClC,MAAM,IAAI,CAACC,aAAa,CAACC,gBAAgB,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC,CAAC,OAAOC,GAAQ,EAAE;MACjB,IAAI,CAACC,MAAM,EAAEC,KAAK,CAAC,0DAA0D,IAAI,CAAClC,aAAa,EAAE,EAAEgC,GAAG,CAAC;MACvG,MAAM3B,kBAAE,CAAC8B,MAAM,CAAC,IAAI,CAACnC,aAAa,CAAC;MACnC,MAAMgC,GAAG;IACX;IAEA,OAAO,IAAI,CAAChC,aAAa;EAC3B;EAEA,MAAcS,OAAOA,CAAA,EAAG;IACtB,IAAI,IAAI,CAACR,OAAO,CAACW,OAAO,EAAE;IAC1B,MAAMwB,iBAAiB,GAAG,IAAAC,wBAAoB,EAAC,CAAC;IAChD,MAAMC,MAAM,GAAG,CAAC,MAAM,CAAC;IACvB,IAAI;MACF,MAAM,IAAAC,gBAAK,EAACH,iBAAiB,EAAEE,MAAM,CAAC;IACxC,CAAC,CAAC,OAAON,GAAQ,EAAE;MACjB,IAAIA,GAAG,CAACQ,YAAY,KAAK,QAAQ,EAAE;QACjC,MAAM,KAAIC,sBAAW,EAACL,iBAAiB,EAAEJ,GAAG,CAAC;MAC/C;MACA,MAAMA,GAAG;IACX;EACF;EAEA,MAAcf,yBAAyBA,CAAA,EAAG;IACxC,IAAI,IAAI,CAAChB,OAAO,CAACW,OAAO,EAAE;IAC1B,MAAM,IAAI,CAAC8B,GAAG,CAACC,iBAAiB,CAAC;MAAEC,MAAM,EAAE;IAAM,CAAC,CAAC;EACrD;EAEA,MAAcC,OAAOA,CAAA,EAAG;IACtB,MAAMC,MAAM,GAAG,IAAI,CAACC,OAAO,CAACC,GAAG,CAASC,cAAQ,CAACC,EAAE,CAAC;IACpD,MAAMJ,MAAM,CAACK,aAAa,CAAC,CAAC,CAAC,CAAC;EAChC;EAEQC,mBAAmBA,CAAA,EAAqB;IAC9C,OAAO;MACLC,IAAI,EAAE,IAAI,CAACtD,aAAa;MACxBuD,YAAY,EAAE,IAAI,CAACrD,OAAO,CAACqD,YAAY;MACvCC,KAAK,EAAE,IAAI,CAACtD,OAAO,CAACsD,KAAK;MACzBpD,eAAe,EAAE,IAAI,CAACA,eAAe;MACrCD,QAAQ,EAAE,IAAI,CAACA,QAAQ;MACvBU,OAAO,EAAE,IAAI,CAACX,OAAO,CAACW;IACxB,CAAC;EACH;;EAEA;AACF;AACA;EACE,MAAcC,mBAAmBA,CAAA,EAAkB;IACjD,MAAM2C,gBAAgB,GAAG,IAAI,CAACJ,mBAAmB,CAAC,CAAC;IACnD,MAAMK,aAAa,GAAG,MAAM,IAAI,CAACvD,QAAQ,CAACwD,aAAa,CAACF,gBAAgB,CAAC;IACzE,MAAMG,OAAO,CAACC,GAAG,CACfH,aAAa,CAACI,GAAG,CAAC,MAAOC,YAAY,IAAK;MACxC,MAAMzD,kBAAE,CAAC0D,UAAU,CAAC,IAAAC,YAAI,EAAC,IAAI,CAAChE,aAAa,EAAE8D,YAAY,CAACG,YAAY,CAAC,EAAEH,YAAY,CAACI,OAAO,CAAC;IAChG,CAAC,CACH,CAAC;EACH;EAEA,MAAcpD,uBAAuBA,CAAA,EAAG;IACtC,IAAI,CAACiC,OAAO,GAAG,MAAM,IAAAoB,cAAO,EAAC,IAAI,CAACnE,aAAa,CAAC;IAChD,IAAI,CAACe,SAAS,GAAG,IAAI,CAACgC,OAAO,CAACC,GAAG,CAAYoB,4BAAe,CAAClB,EAAE,CAAC;IAChE,IAAI,CAAC5B,OAAO,GAAG,IAAI,CAACyB,OAAO,CAACC,GAAG,CAAcqB,wBAAa,CAACnB,EAAE,CAAC;IAC9D,MAAMoB,UAAU,GAAG,IAAI,CAACvB,OAAO,CAACC,GAAG,CAAauB,sBAAY,CAACrB,EAAE,CAAC;IAChE,IAAI,CAACjB,MAAM,GAAGqC,UAAU,CAACE,YAAY,CAACC,4BAAe,CAACvB,EAAE,CAAC;IACzD,IAAI,CAACwB,QAAQ,GAAG,IAAI,CAAC3B,OAAO,CAACC,GAAG,CAAe2B,0BAAc,CAACzB,EAAE,CAAC;IACjE,IAAI,CAAC0B,OAAO,GAAG,IAAI,CAAC7B,OAAO,CAACC,GAAG,CAAc6B,wBAAa,CAAC3B,EAAE,CAAC;IAC9D,IAAI,CAACR,GAAG,GAAG,IAAI,CAACK,OAAO,CAACC,GAAG,CAAU8B,gBAAS,CAAC5B,EAAE,CAAC;IAClD,IAAI,CAACpB,aAAa,GAAG,IAAI,CAACiB,OAAO,CAACC,GAAG,CAA2B+B,kDAA0B,CAAC7B,EAAE,CAAC;IAC9F,IAAI,CAAC8B,SAAS,GAAG,IAAI,CAACjC,OAAO,CAACC,GAAG,CAAgByB,4BAAe,CAACvB,EAAE,CAAC;EACtE;EAEA,MAAchC,0BAA0BA,CAAA,EAAG;IACzC,IAAI,IAAI,CAACjB,OAAO,CAACsD,KAAK,IAAI,CAAC,IAAI,CAACrD,QAAQ,CAAC+E,MAAM,EAAE;IACjD,MAAMzB,gBAAgB,GAAG,IAAI,CAACJ,mBAAmB,CAAC,CAAC;IACnD,MAAM8B,kBAAkB,GAAG,IAAI,CAAChF,QAAQ,CAAC+E,MAAM,CAACzB,gBAAgB,CAAC;IACjE,MAAM,IAAA2B,qBAAU,EAACD,kBAAkB,EAAE,MAAOE,iBAAiB,IAAK;MAChE,OAAO,IAAI,CAACJ,SAAS,CAACK,yBAAyB,CAC7C,CAACD,iBAAiB,CAACE,aAAa,CAAC,EACjCF,iBAAiB,CAACG,YAAY,EAC9B;QACEC,MAAM,EAAEJ,iBAAiB,CAACI,MAAM;QAChCC,GAAG,EAAEL,iBAAiB,CAACK,GAAG;QAC1BC,IAAI,EAAEN,iBAAiB,CAACM,IAAI;QAC5BC,KAAK,EAAEP,iBAAiB,CAACO;MAC3B,CACF,CAAC;IACH,CAAC,CAAC;EACJ;EAEA,MAAcxE,wBAAwBA,CAAA,EAAG;IACvC,IAAI,IAAI,CAAClB,OAAO,CAACsD,KAAK,EAAE;IACxB,MAAMC,gBAAgB,GAAG,IAAI,CAACJ,mBAAmB,CAAC,CAAC;IACnD,MAAMwC,gBAAgB,GACpB,IAAI,CAAC1F,QAAQ,EAAE2F,gBAAgB,GAAGrC,gBAAgB,CAAC,IAAI,IAAI,CAACtD,QAAQ,EAAE4F,IAAI,GAAGtC,gBAAgB,CAAC,IAAI,EAAE;IACtG,IAAI,CAACoC,gBAAgB,CAACG,MAAM,EAAE;IAC9B,MAAMC,4BAA4B,GAAGJ,gBAAgB,CAAC/B,GAAG,CAAC,CAAC;MAAEX,EAAE;MAAE+C,UAAU;MAAEP,IAAI;MAAED,GAAG;MAAES,MAAM;MAAEC;IAAY,CAAC,MAAM;MACjHC,QAAQ,EAAElD,EAAE;MACZmD,QAAQ,EAAEJ,UAAU;MACpBE,WAAW;MACXT,IAAI;MACJD,GAAG;MACHS;IACF,CAAC,CAAC,CAAC;IACH,MAAM,IAAI,CAACtB,OAAO,CAAC0B,sBAAsB,CAACN,4BAA4B,EAAE;MACtEL,KAAK,EAAE,IAAI,CAAC5E,SAAS,CAACuC,YAAY;MAClCiD,QAAQ,EAAE,IAAI;MACdjF,OAAO,EAAE;IACX,CAAC,CAAC;EACJ;EAEA,MAAcF,0BAA0BA,CAAA,EAAG;IACzC,IAAI,IAAI,CAACnB,OAAO,CAACsD,KAAK,EAAE;IACxB,MAAMC,gBAAgB,GAAG,IAAI,CAACJ,mBAAmB,CAAC,CAAC;IACnD,MAAMoD,kBAAkB,GAAG,IAAI,CAACtG,QAAQ,EAAEuB,MAAM,GAAG+B,gBAAgB,CAAC,IAAI,EAAE;IAE1E,IAAI,CAACgD,kBAAkB,CAACT,MAAM,EAAE;IAEhC,MAAM,IAAAZ,qBAAU,EAACqB,kBAAkB,EAAE,MAAOC,iBAAiB,IAAK;MAChE,MAAM,IAAI,CAAC/B,QAAQ,CAACjD,MAAM,CACxB;QACEiF,GAAG,EAAE,CAACD,iBAAiB,CAACvD,EAAE,CAAC;QAC3ByD,kBAAkB,EAAE,KAAK;QACzB5E,gBAAgB,EAAE,KAAK;QACvB6E,WAAW,EAAEH,iBAAiB,CAACf;MACjC,CAAC,EACD,EACF,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,IAAI,CAAC3E,SAAS,CAAC8F,MAAM,CAACC,KAAK,CAAC,KAAK,CAAC;EAC1C;EAEA,MAAcjF,iBAAiBA,CAACR,UAAU,GAAG,IAAI,EAAE;IACjD,IAAIA,UAAU,EAAE;MACd,MAAM,IAAI,CAACN,SAAS,CAACM,UAAU,CAAC,CAAC;IACnC;IACA,MAAM0F,QAAQ,GAAG,IAAI,CAAChE,OAAO,CAACC,GAAG,CAAegE,0BAAc,CAAC9D,EAAE,CAAC;IAClE,MAAM6D,QAAQ,CAACE,kBAAkB,CAAC,CAAC;EACrC;AACF;AAACC,OAAA,CAAArH,kBAAA,GAAAA,kBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_fsExtra","data","_interopRequireDefault","require","_bit","_execa","_pMapSeries","_ui","_logger","_workspace","_forking","_importer","_compiler","_gitModules","_path","_git","_install","_hostInitializer","_workspaceConfigFiles","_generator","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","WorkspaceGenerator","constructor","workspaceName","workspacePath","options","template","aspectComponent","generate","fs","ensureDir","process","chdir","initGit","HostInitializerMain","init","skipGit","writeWorkspaceFiles","reloadBitInWorkspaceDir","workspace","inInstallContext","setupGitBitmapMergeDriver","createComponentsFromRemote","forkComponentsFromRemote","importComponentsFromRemote","clearCache","install","undefined","dedupe","import","copyPeerToRuntimeOnRoot","copyPeerToRuntimeOnComponents","updateExisting","compileComponents","wsConfigFiles","writeConfigFiles","err","logger","error","remove","gitExecutablePath","getGitExecutablePath","params","execa","exitCodeName","GitNotFound","git","setGitMergeDriver","global","buildUI","uiMain","harmony","get","UIAspect","id","createRuntime","getWorkspaceContext","name","defaultScope","empty","workspaceContext","templateFiles","generateFiles","Promise","all","map","templateFile","outputFile","join","relativePath","content","loadBit","WorkspaceAspect","InstallAspect","loggerMain","LoggerAspect","createLogger","GeneratorAspect","importer","ImporterAspect","forking","ForkingAspect","GitAspect","WorkspaceConfigFilesAspect","generator","create","componentsToCreate","pMapSeries","componentToCreate","generateComponentTemplate","componentName","templateName","aspect","env","path","scope","componentsToFork","importComponents","fork","length","componentsToForkRestructured","targetName","config","targetScope","sourceId","targetId","forkMultipleFromRemote","refactor","componentsToImport","componentToImport","ids","installNpmPackages","writeToPath","bitMap","write","compiler","CompilerAspect","compileOnWorkspace","exports"],"sources":["workspace-generator.ts"],"sourcesContent":["import fs from 'fs-extra';\nimport { loadBit } from '@teambit/bit';\nimport { Harmony } from '@teambit/harmony';\nimport { Component } from '@teambit/component';\nimport execa from 'execa';\nimport pMapSeries from 'p-map-series';\nimport { UIAspect, UiMain } from '@teambit/ui';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { WorkspaceAspect, Workspace } from '@teambit/workspace';\nimport { ForkingAspect, ForkingMain } from '@teambit/forking';\nimport { ImporterAspect, ImporterMain } from '@teambit/importer';\nimport { CompilerAspect, CompilerMain } from '@teambit/compiler';\nimport { getGitExecutablePath, GitNotFound } from '@teambit/git.modules.git-executable';\nimport { join } from 'path';\nimport { ComponentID } from '@teambit/component-id';\nimport { GitAspect, GitMain } from '@teambit/git';\nimport { InstallAspect, InstallMain } from '@teambit/install';\nimport { HostInitializerMain } from '@teambit/host-initializer';\nimport { WorkspaceConfigFilesAspect, WorkspaceConfigFilesMain } from '@teambit/workspace-config-files';\n// import { ComponentGenerator } from './component-generator';\nimport { WorkspaceTemplate, WorkspaceContext } from './workspace-template';\nimport { NewOptions } from './new.cmd';\nimport { GeneratorAspect } from './generator.aspect';\nimport { GeneratorMain } from './generator.main.runtime';\n\nexport type GenerateResult = { id: ComponentID; dir: string; files: string[]; envId: string };\n\nexport class WorkspaceGenerator {\n private harmony: Harmony;\n private workspace: Workspace;\n private install: InstallMain;\n private importer: ImporterMain;\n private logger?: Logger;\n private forking: ForkingMain;\n private git: GitMain;\n private wsConfigFiles: WorkspaceConfigFilesMain;\n private generator: GeneratorMain;\n\n constructor(\n private workspaceName: string,\n private workspacePath: string,\n private options: NewOptions & { currentDir?: boolean },\n private template: WorkspaceTemplate,\n private aspectComponent?: Component\n ) {}\n\n async generate(): Promise<string> {\n await fs.ensureDir(this.workspacePath);\n try {\n process.chdir(this.workspacePath);\n await this.initGit();\n await HostInitializerMain.init(\n this.workspacePath,\n this.options.skipGit,\n false,\n false,\n false,\n false,\n false,\n false,\n false,\n {}\n );\n await this.writeWorkspaceFiles();\n await this.reloadBitInWorkspaceDir();\n // Setting the workspace to be in install context to prevent errors during the workspace generation\n // the workspace will be in install context until the end of the generation install process\n this.workspace.inInstallContext = true;\n await this.setupGitBitmapMergeDriver();\n await this.createComponentsFromRemote();\n await this.forkComponentsFromRemote();\n await this.importComponentsFromRemote();\n await this.workspace.clearCache();\n await this.install.install(undefined, {\n dedupe: true,\n import: false,\n copyPeerToRuntimeOnRoot: true,\n copyPeerToRuntimeOnComponents: false,\n updateExisting: false,\n });\n\n // compile the components again now that we have the dependencies installed\n await this.compileComponents(true);\n await this.wsConfigFiles.writeConfigFiles({});\n } catch (err: any) {\n this.logger?.error(`failed generating a new workspace, will delete the dir ${this.workspacePath}`, err);\n await fs.remove(this.workspacePath);\n throw err;\n }\n\n return this.workspacePath;\n }\n\n private async initGit() {\n if (this.options.skipGit) return;\n const gitExecutablePath = getGitExecutablePath();\n const params = ['init'];\n try {\n await execa(gitExecutablePath, params);\n } catch (err: any) {\n if (err.exitCodeName === 'ENOENT') {\n throw new GitNotFound(gitExecutablePath, err);\n }\n throw err;\n }\n }\n\n private async setupGitBitmapMergeDriver() {\n if (this.options.skipGit) return;\n await this.git.setGitMergeDriver({ global: false });\n }\n\n private async buildUI() {\n const uiMain = this.harmony.get<UiMain>(UIAspect.id);\n await uiMain.createRuntime({});\n }\n\n private getWorkspaceContext(): WorkspaceContext {\n return {\n name: this.workspaceName,\n defaultScope: this.options.defaultScope,\n empty: this.options.empty,\n aspectComponent: this.aspectComponent,\n template: this.template,\n skipGit: this.options.skipGit,\n };\n }\n\n /**\n * writes the generated template files to the default directory set in the workspace config\n */\n private async writeWorkspaceFiles(): Promise<void> {\n const workspaceContext = this.getWorkspaceContext();\n const templateFiles = await this.template.generateFiles(workspaceContext);\n await Promise.all(\n templateFiles.map(async (templateFile) => {\n await fs.outputFile(join(this.workspacePath, templateFile.relativePath), templateFile.content);\n })\n );\n }\n\n private async reloadBitInWorkspaceDir() {\n this.harmony = await loadBit(this.workspacePath);\n this.workspace = this.harmony.get<Workspace>(WorkspaceAspect.id);\n this.install = this.harmony.get<InstallMain>(InstallAspect.id);\n const loggerMain = this.harmony.get<LoggerMain>(LoggerAspect.id);\n this.logger = loggerMain.createLogger(GeneratorAspect.id);\n this.importer = this.harmony.get<ImporterMain>(ImporterAspect.id);\n this.forking = this.harmony.get<ForkingMain>(ForkingAspect.id);\n this.git = this.harmony.get<GitMain>(GitAspect.id);\n this.wsConfigFiles = this.harmony.get<WorkspaceConfigFilesMain>(WorkspaceConfigFilesAspect.id);\n this.generator = this.harmony.get<GeneratorMain>(GeneratorAspect.id);\n }\n\n private async createComponentsFromRemote() {\n if (this.options.empty || !this.template.create) return;\n const workspaceContext = this.getWorkspaceContext();\n const componentsToCreate = this.template.create(workspaceContext);\n await pMapSeries(componentsToCreate, async (componentToCreate) => {\n return this.generator.generateComponentTemplate(\n [componentToCreate.componentName],\n componentToCreate.templateName,\n {\n aspect: componentToCreate.aspect,\n env: componentToCreate.env,\n path: componentToCreate.path,\n scope: componentToCreate.scope,\n }\n );\n });\n }\n\n private async forkComponentsFromRemote() {\n if (this.options.empty) return;\n const workspaceContext = this.getWorkspaceContext();\n const componentsToFork =\n this.template?.importComponents?.(workspaceContext) || this.template?.fork?.(workspaceContext) || [];\n if (!componentsToFork.length) return;\n const componentsToForkRestructured = componentsToFork.map(({ id, targetName, path, env, config, targetScope }) => ({\n sourceId: id,\n targetId: targetName,\n targetScope,\n path,\n env,\n config,\n }));\n await this.forking.forkMultipleFromRemote(componentsToForkRestructured, {\n scope: this.workspace.defaultScope,\n refactor: true,\n install: false,\n });\n }\n\n private async importComponentsFromRemote() {\n if (this.options.empty) return;\n const workspaceContext = this.getWorkspaceContext();\n const componentsToImport = this.template?.import?.(workspaceContext) || [];\n\n if (!componentsToImport.length) return;\n\n await pMapSeries(componentsToImport, async (componentToImport) => {\n await this.importer.import(\n {\n ids: [componentToImport.id],\n installNpmPackages: false,\n writeConfigFiles: false,\n writeToPath: componentToImport.path,\n },\n []\n );\n });\n\n await this.workspace.bitMap.write('new');\n }\n\n private async compileComponents(clearCache = true) {\n if (clearCache) {\n await this.workspace.clearCache();\n }\n const compiler = this.harmony.get<CompilerMain>(CompilerAspect.id);\n await compiler.compileOnWorkspace();\n }\n}\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/generator",
3
- "version": "1.0.331",
3
+ "version": "1.0.333",
4
4
  "homepage": "https://bit.cloud/teambit/generator/generator",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.generator",
8
8
  "name": "generator",
9
- "version": "1.0.331"
9
+ "version": "1.0.333"
10
10
  },
11
11
  "dependencies": {
12
12
  "camelcase": "6.2.0",
@@ -21,33 +21,36 @@
21
21
  "@teambit/component-id": "1.2.0",
22
22
  "@teambit/harmony": "0.4.6",
23
23
  "@teambit/git.modules.git-ignore": "1.0.2",
24
- "@teambit/envs": "1.0.330",
25
- "@teambit/logger": "0.0.1000",
26
- "@teambit/new-component-helper": "1.0.330",
27
- "@teambit/tracker": "1.0.330",
28
- "@teambit/workspace-config-files": "1.0.330",
29
- "@teambit/workspace.modules.node-modules-linker": "0.0.175",
30
- "@teambit/workspace": "1.0.330",
31
- "@teambit/component": "1.0.330",
32
- "@teambit/cli": "0.0.907",
33
- "@teambit/graphql": "1.0.330",
34
- "@teambit/aspect-loader": "1.0.330",
35
- "@teambit/bit": "1.7.41",
36
- "@teambit/git": "1.0.330",
37
- "@teambit/compiler": "1.0.330",
38
- "@teambit/forking": "1.0.330",
39
- "@teambit/host-initializer": "0.0.43",
40
- "@teambit/importer": "1.0.330",
41
- "@teambit/install": "1.0.330",
42
- "@teambit/ui": "1.0.330",
43
- "@teambit/config": "0.0.1081"
24
+ "@teambit/envs": "1.0.332",
25
+ "@teambit/logger": "0.0.1002",
26
+ "@teambit/new-component-helper": "1.0.332",
27
+ "@teambit/pkg.modules.component-package-name": "0.0.2",
28
+ "@teambit/toolbox.path.path": "0.0.2",
29
+ "@teambit/tracker": "1.0.332",
30
+ "@teambit/workspace-config-files": "1.0.332",
31
+ "@teambit/workspace.modules.node-modules-linker": "0.0.176",
32
+ "@teambit/workspace": "1.0.332",
33
+ "@teambit/component": "1.0.332",
34
+ "@teambit/cli": "0.0.909",
35
+ "@teambit/graphql": "1.0.332",
36
+ "@teambit/aspect-loader": "1.0.332",
37
+ "@teambit/bit": "1.7.43",
38
+ "@teambit/git": "1.0.332",
39
+ "@teambit/compiler": "1.0.332",
40
+ "@teambit/forking": "1.0.332",
41
+ "@teambit/git.modules.git-executable": "0.0.1",
42
+ "@teambit/host-initializer": "0.0.45",
43
+ "@teambit/importer": "1.0.332",
44
+ "@teambit/install": "1.0.332",
45
+ "@teambit/ui": "1.0.332",
46
+ "@teambit/config": "0.0.1083"
44
47
  },
45
48
  "devDependencies": {
46
49
  "@types/fs-extra": "9.0.7",
47
50
  "@types/lodash": "4.14.165",
48
51
  "@types/mocha": "9.1.0",
49
52
  "chai": "4.3.0",
50
- "@teambit/harmony.envs.core-aspect-env": "0.0.39",
53
+ "@teambit/harmony.envs.core-aspect-env": "0.0.42",
51
54
  "@teambit/generator.aspect-docs.generator": "0.0.172"
52
55
  },
53
56
  "peerDependencies": {