@teambit/generator 1.0.1160 → 1.0.1162
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.
|
@@ -145,7 +145,8 @@ class ComponentGenerator {
|
|
|
145
145
|
if (!shouldWrite) return;
|
|
146
146
|
ids.map(id => this.workspace.clearComponentCache(id));
|
|
147
147
|
const {
|
|
148
|
-
err
|
|
148
|
+
err,
|
|
149
|
+
writeResults
|
|
149
150
|
} = await this.wsConfigFiles.writeConfigFiles({
|
|
150
151
|
clean: true,
|
|
151
152
|
silent: true,
|
|
@@ -154,7 +155,11 @@ class ComponentGenerator {
|
|
|
154
155
|
});
|
|
155
156
|
if (err) {
|
|
156
157
|
this.logger.consoleFailure(`failed generating workspace config files, please run "bit ws-config write" manually. error: ${err.message}`);
|
|
158
|
+
return;
|
|
157
159
|
}
|
|
160
|
+
const skippedWarning = this.wsConfigFiles.formatSkippedFilesWarning(writeResults?.skippedPaths);
|
|
161
|
+
// the formatted section already starts with the shared warning symbol, so no need for consoleWarning here.
|
|
162
|
+
if (skippedWarning) this.logger.console(`\n${skippedWarning}`);
|
|
158
163
|
}
|
|
159
164
|
async deleteGeneratedComponents(dirs) {
|
|
160
165
|
await Promise.all(dirs.map(async dir => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_fsExtra","data","_interopRequireDefault","require","_enquirer","_pMapSeries","_path","_envs","_camelcase","_bitError","_workspaceModules","_pkgModules","_componentId","e","__esModule","default","ComponentGenerator","constructor","workspace","componentIds","options","template","envs","newComponentHelper","tracker","wsConfigFiles","logger","onComponentCreateSlot","aspectId","envId","installOptions","promptResults","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","getOptionResultFromArgs","option","args","process","argv","slice","argIndex","indexOf","name","type","argValue","Error","choices","includes","getPromptOptionResult","prompt","getPromptResults","promptOptions","undefined","fromArg","skip","optionResult","namePascalCase","camelcase","pascalCase","nameCamelCase","ComponentID","fromString","files","generateFiles","mainFile","find","file","isMain","writeComponentFiles","f","relativePath","content","addResults","track","rootDir","componentName","fullName","defaultScope","scope","component","get","hasEnvConfiguredOriginally","hasEnvConfigured","envBeforeConfigChanges","getEnv","config","boundConfig","bind","userEnv","env","isInWorkspace","hasId","ignoreVersion","toStringWithoutVersion","toString","templateEnv","EnvsAspect","Object","keys","configWithEnv","addEnvIfProvidedByFlag","setEntireConfig","getEnvData","envFromFlag","envFromTemplate","setBy","isSameAsThisEnvId","packageName","componentIdToPackageName","state","_consumer","envSetBy","isApp","isEnv","dependencies","installMissingDependencies","addEnvToConfig","exports"],"sources":["component-generator.ts"],"sourcesContent":["import fs from 'fs-extra';\nimport { prompt } from 'enquirer';\nimport pMapSeries from 'p-map-series';\nimport path from 'path';\nimport type { Workspace } from '@teambit/workspace';\nimport type { EnvsMain } from '@teambit/envs';\nimport { EnvsAspect } from '@teambit/envs';\nimport camelcase from 'camelcase';\nimport { BitError } from '@teambit/bit-error';\nimport type { Logger } from '@teambit/logger';\nimport type { TrackerMain } from '@teambit/tracker';\nimport { linkToNodeModulesByIds } from '@teambit/workspace.modules.node-modules-linker';\nimport { componentIdToPackageName } from '@teambit/pkg.modules.component-package-name';\nimport type { NewComponentHelperMain } from '@teambit/new-component-helper';\nimport { ComponentID } from '@teambit/component-id';\nimport type { WorkspaceConfigFilesMain } from '@teambit/workspace-config-files';\n\nimport type { ComponentTemplate, ComponentConfig, PromptOption, PromptResults } from './component-template';\nimport type { CreateOptions } from './create.cmd';\nimport type { 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 InstallOptions = { optimizeReportForNonTerminal?: boolean };\n\nexport type OnComponentCreateFn = (generateResults: GenerateResult[], installOptions?: InstallOptions) => Promise<void>;\nexport type OnWorkspaceCreateFn = (generateResults: GenerateResult[], installOptions?: InstallOptions) => 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 private installOptions: InstallOptions = {},\n private promptResults?: PromptResults\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, this.installOptions)));\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 getOptionResultFromArgs(option: PromptOption): string | boolean | undefined {\n const args = process.argv.slice(2);\n const argIndex = args.indexOf(`--${option.name}`);\n if (argIndex === -1) {\n return;\n }\n if (option.type === 'confirm') {\n return true;\n }\n const argValue = args[argIndex + 1];\n if (!argValue) {\n throw new Error(`Missing value for ${option.name}`);\n }\n if (option.type === 'select' && !option.choices?.includes(argValue)) {\n throw new Error(\n `Invalid value for ${option.name}. Please use one of the following values: ${option.choices?.join(', ')}`\n );\n }\n return argValue;\n }\n\n private async getPromptOptionResult(option: PromptOption): Promise<Record<string, string | boolean>> {\n switch (option.type) {\n case 'input':\n return prompt({\n type: 'input',\n name: option.name,\n message: option.message,\n });\n case 'confirm':\n return prompt({\n type: 'confirm',\n name: option.name,\n message: option.message,\n });\n case 'select':\n return prompt({\n type: 'select',\n name: option.name,\n message: option.message,\n choices: option.choices,\n });\n default:\n throw new Error(`unexpected prompt type ${option.type}`);\n }\n }\n\n private async getPromptResults(): Promise<PromptResults | undefined> {\n if (this.promptResults) {\n return this.promptResults;\n }\n const promptOptions = this.template.promptOptions?.();\n if (!promptOptions) {\n return undefined;\n }\n const promptResults: PromptResults = {};\n for await (const option of promptOptions) {\n const fromArg = this.getOptionResultFromArgs(option);\n if (fromArg) {\n promptResults[option.name] = fromArg;\n continue;\n }\n if (option.skip && option.skip(promptResults)) {\n continue;\n }\n try {\n const optionResult = await this.getPromptOptionResult(option);\n promptResults[option.name] = optionResult[option.name];\n } catch (err: any) {\n if (!err) {\n // for some reason, when the user clicks Ctrl+C, the error is an empty string\n throw new Error(`The prompt has been canceled`);\n }\n throw err;\n }\n }\n return promptResults;\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 const promptResults = await this.getPromptResults();\n\n const files = await this.template.generateFiles({\n name,\n namePascalCase,\n nameCamelCase,\n componentId,\n aspectId,\n envId: this.envId,\n promptResults,\n });\n const mainFile = files.find((file) => file.isMain);\n await this.newComponentHelper.writeComponentFiles(\n componentPath,\n files.map((f) => ({ path: f.relativePath, content: f.content }))\n );\n const addResults = await this.tracker.track({\n rootDir: componentPath,\n mainFile: mainFile?.relativePath,\n componentName: componentId.fullName,\n defaultScope: this.options.scope || componentId.scope,\n });\n const component = await this.workspace.get(componentId);\n const hasEnvConfiguredOriginally = this.envs.hasEnvConfigured(component);\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.hasId(this.envId, { ignoreVersion: true });\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.hasId(envId, { ignoreVersion: true });\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"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_fsExtra","data","_interopRequireDefault","require","_enquirer","_pMapSeries","_path","_envs","_camelcase","_bitError","_workspaceModules","_pkgModules","_componentId","e","__esModule","default","ComponentGenerator","constructor","workspace","componentIds","options","template","envs","newComponentHelper","tracker","wsConfigFiles","logger","onComponentCreateSlot","aspectId","envId","installOptions","promptResults","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","writeResults","writeConfigFiles","clean","silent","dedupe","throw","skippedWarning","formatSkippedFilesWarning","skippedPaths","console","dirs","dir","absoluteDir","remove","code","getOptionResultFromArgs","option","args","process","argv","slice","argIndex","indexOf","name","type","argValue","Error","choices","includes","getPromptOptionResult","prompt","getPromptResults","promptOptions","undefined","fromArg","skip","optionResult","namePascalCase","camelcase","pascalCase","nameCamelCase","ComponentID","fromString","files","generateFiles","mainFile","find","file","isMain","writeComponentFiles","f","relativePath","content","addResults","track","rootDir","componentName","fullName","defaultScope","scope","component","get","hasEnvConfiguredOriginally","hasEnvConfigured","envBeforeConfigChanges","getEnv","config","boundConfig","bind","userEnv","env","isInWorkspace","hasId","ignoreVersion","toStringWithoutVersion","toString","templateEnv","EnvsAspect","Object","keys","configWithEnv","addEnvIfProvidedByFlag","setEntireConfig","getEnvData","envFromFlag","envFromTemplate","setBy","isSameAsThisEnvId","packageName","componentIdToPackageName","state","_consumer","envSetBy","isApp","isEnv","dependencies","installMissingDependencies","addEnvToConfig","exports"],"sources":["component-generator.ts"],"sourcesContent":["import fs from 'fs-extra';\nimport { prompt } from 'enquirer';\nimport pMapSeries from 'p-map-series';\nimport path from 'path';\nimport type { Workspace } from '@teambit/workspace';\nimport type { EnvsMain } from '@teambit/envs';\nimport { EnvsAspect } from '@teambit/envs';\nimport camelcase from 'camelcase';\nimport { BitError } from '@teambit/bit-error';\nimport type { Logger } from '@teambit/logger';\nimport type { TrackerMain } from '@teambit/tracker';\nimport { linkToNodeModulesByIds } from '@teambit/workspace.modules.node-modules-linker';\nimport { componentIdToPackageName } from '@teambit/pkg.modules.component-package-name';\nimport type { NewComponentHelperMain } from '@teambit/new-component-helper';\nimport { ComponentID } from '@teambit/component-id';\nimport type { WorkspaceConfigFilesMain } from '@teambit/workspace-config-files';\n\nimport type { ComponentTemplate, ComponentConfig, PromptOption, PromptResults } from './component-template';\nimport type { CreateOptions } from './create.cmd';\nimport type { 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 InstallOptions = { optimizeReportForNonTerminal?: boolean };\n\nexport type OnComponentCreateFn = (generateResults: GenerateResult[], installOptions?: InstallOptions) => Promise<void>;\nexport type OnWorkspaceCreateFn = (generateResults: GenerateResult[], installOptions?: InstallOptions) => 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 private installOptions: InstallOptions = {},\n private promptResults?: PromptResults\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, this.installOptions)));\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, writeResults } = 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 return;\n }\n const skippedWarning = this.wsConfigFiles.formatSkippedFilesWarning(writeResults?.skippedPaths);\n // the formatted section already starts with the shared warning symbol, so no need for consoleWarning here.\n if (skippedWarning) this.logger.console(`\\n${skippedWarning}`);\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 getOptionResultFromArgs(option: PromptOption): string | boolean | undefined {\n const args = process.argv.slice(2);\n const argIndex = args.indexOf(`--${option.name}`);\n if (argIndex === -1) {\n return;\n }\n if (option.type === 'confirm') {\n return true;\n }\n const argValue = args[argIndex + 1];\n if (!argValue) {\n throw new Error(`Missing value for ${option.name}`);\n }\n if (option.type === 'select' && !option.choices?.includes(argValue)) {\n throw new Error(\n `Invalid value for ${option.name}. Please use one of the following values: ${option.choices?.join(', ')}`\n );\n }\n return argValue;\n }\n\n private async getPromptOptionResult(option: PromptOption): Promise<Record<string, string | boolean>> {\n switch (option.type) {\n case 'input':\n return prompt({\n type: 'input',\n name: option.name,\n message: option.message,\n });\n case 'confirm':\n return prompt({\n type: 'confirm',\n name: option.name,\n message: option.message,\n });\n case 'select':\n return prompt({\n type: 'select',\n name: option.name,\n message: option.message,\n choices: option.choices,\n });\n default:\n throw new Error(`unexpected prompt type ${option.type}`);\n }\n }\n\n private async getPromptResults(): Promise<PromptResults | undefined> {\n if (this.promptResults) {\n return this.promptResults;\n }\n const promptOptions = this.template.promptOptions?.();\n if (!promptOptions) {\n return undefined;\n }\n const promptResults: PromptResults = {};\n for await (const option of promptOptions) {\n const fromArg = this.getOptionResultFromArgs(option);\n if (fromArg) {\n promptResults[option.name] = fromArg;\n continue;\n }\n if (option.skip && option.skip(promptResults)) {\n continue;\n }\n try {\n const optionResult = await this.getPromptOptionResult(option);\n promptResults[option.name] = optionResult[option.name];\n } catch (err: any) {\n if (!err) {\n // for some reason, when the user clicks Ctrl+C, the error is an empty string\n throw new Error(`The prompt has been canceled`);\n }\n throw err;\n }\n }\n return promptResults;\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 const promptResults = await this.getPromptResults();\n\n const files = await this.template.generateFiles({\n name,\n namePascalCase,\n nameCamelCase,\n componentId,\n aspectId,\n envId: this.envId,\n promptResults,\n });\n const mainFile = files.find((file) => file.isMain);\n await this.newComponentHelper.writeComponentFiles(\n componentPath,\n files.map((f) => ({ path: f.relativePath, content: f.content }))\n );\n const addResults = await this.tracker.track({\n rootDir: componentPath,\n mainFile: mainFile?.relativePath,\n componentName: componentId.fullName,\n defaultScope: this.options.scope || componentId.scope,\n });\n const component = await this.workspace.get(componentId);\n const hasEnvConfiguredOriginally = this.envs.hasEnvConfigured(component);\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.hasId(this.envId, { ignoreVersion: true });\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.hasId(envId, { ignoreVersion: true });\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"],"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.
|
|
2
|
-
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.generator_generator@1.0.
|
|
1
|
+
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.generator_generator@1.0.1162/dist/generator.composition.js';
|
|
2
|
+
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.generator_generator@1.0.1162/dist/generator.docs.mdx';
|
|
3
3
|
|
|
4
4
|
export const compositions = [compositions_0];
|
|
5
5
|
export const overview = [overview_0];
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@teambit/generator",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.1162",
|
|
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.
|
|
9
|
+
"version": "1.0.1162"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"camelcase": "6.2.0",
|
|
@@ -31,23 +31,23 @@
|
|
|
31
31
|
"@teambit/git.modules.git-executable": "0.0.44",
|
|
32
32
|
"@teambit/git.modules.git-ignore": "1.0.2",
|
|
33
33
|
"@teambit/config": "0.0.1564",
|
|
34
|
-
"@teambit/envs": "1.0.
|
|
35
|
-
"@teambit/new-component-helper": "1.0.
|
|
36
|
-
"@teambit/tracker": "1.0.
|
|
37
|
-
"@teambit/workspace-config-files": "1.0.
|
|
38
|
-
"@teambit/workspace": "1.0.
|
|
39
|
-
"@teambit/component": "1.0.
|
|
40
|
-
"@teambit/graphql": "1.0.
|
|
41
|
-
"@teambit/aspect-loader": "1.0.
|
|
42
|
-
"@teambit/deprecation": "1.0.
|
|
43
|
-
"@teambit/git": "1.0.
|
|
44
|
-
"@teambit/scope": "1.0.
|
|
45
|
-
"@teambit/compiler": "1.0.
|
|
46
|
-
"@teambit/forking": "1.0.
|
|
47
|
-
"@teambit/host-initializer": "0.0.
|
|
48
|
-
"@teambit/importer": "1.0.
|
|
49
|
-
"@teambit/install": "1.0.
|
|
50
|
-
"@teambit/ui": "1.0.
|
|
34
|
+
"@teambit/envs": "1.0.1161",
|
|
35
|
+
"@teambit/new-component-helper": "1.0.1161",
|
|
36
|
+
"@teambit/tracker": "1.0.1161",
|
|
37
|
+
"@teambit/workspace-config-files": "1.0.1161",
|
|
38
|
+
"@teambit/workspace": "1.0.1161",
|
|
39
|
+
"@teambit/component": "1.0.1161",
|
|
40
|
+
"@teambit/graphql": "1.0.1161",
|
|
41
|
+
"@teambit/aspect-loader": "1.0.1161",
|
|
42
|
+
"@teambit/deprecation": "1.0.1161",
|
|
43
|
+
"@teambit/git": "1.0.1161",
|
|
44
|
+
"@teambit/scope": "1.0.1161",
|
|
45
|
+
"@teambit/compiler": "1.0.1161",
|
|
46
|
+
"@teambit/forking": "1.0.1161",
|
|
47
|
+
"@teambit/host-initializer": "0.0.874",
|
|
48
|
+
"@teambit/importer": "1.0.1161",
|
|
49
|
+
"@teambit/install": "1.0.1161",
|
|
50
|
+
"@teambit/ui": "1.0.1161"
|
|
51
51
|
},
|
|
52
52
|
"devDependencies": {
|
|
53
53
|
"@types/fs-extra": "9.0.7",
|