@teambit/install 1.0.1060 → 1.0.1062

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.
@@ -56,7 +56,7 @@ automatically imports components, compiles components, links to node_modules, an
56
56
  }]);
57
57
  _defineProperty(this, "alias", 'in');
58
58
  _defineProperty(this, "group", 'dependencies');
59
- _defineProperty(this, "options", [['t', 'type [lifecycleType]', '"runtime" (default) or "peer" (dev is not a valid option)'], ['u', 'update', 'update all dependencies to latest version according to their semver range'], ['', 'update-existing', 'DEPRECATED (not needed anymore, it is the default now). update existing dependencies version and types'], ['', 'save-prefix [savePrefix]', 'set the prefix to use when adding dependency to workspace.jsonc'], ['', 'skip-dedupe', 'do not dedupe dependencies on installation'], ['', 'skip-import', 'do not import bit objects post installation'], ['', 'skip-compile', 'do not compile components'], ['', 'skip-write-config-files', 'do not write config files (such as eslint, tsconfig, prettier, etc...)'], ['a', 'add-missing-deps', 'install all missing dependencies'], ['', 'skip-unavailable', 'when adding missing dependencies, skip those that are not found in the regisry'], ['', 'add-missing-peers', 'install all missing peer dependencies'], ['', recurringInstallFlagName, 'automatically run install again if there are non loaded old envs in your workspace'], ['', 'no-optional [noOptional]', 'do not install optional dependencies (works with pnpm only)'], ['', 'lockfile-only', 'dependencies are not written to node_modules. Only the lockfile is updated'], ['', 'allow-scripts [pkgNames]', 'a comma separated list of package names that are allowed to run installation scripts'], ['', 'disallow-scripts [pkgNames]', 'a comma separated list of package names that are NOT allowed to run installation scripts']]);
59
+ _defineProperty(this, "options", [['t', 'type [lifecycleType]', '"runtime" (default) or "peer" (dev is not a valid option)'], ['u', 'update', 'update all dependencies to latest version according to their semver range'], ['', 'update-existing', 'DEPRECATED (not needed anymore, it is the default now). update existing dependencies version and types'], ['', 'save-prefix [savePrefix]', 'set the prefix to use when adding dependency to workspace.jsonc'], ['', 'skip-dedupe', 'do not dedupe dependencies on installation'], ['', 'skip-import', 'do not import bit objects post installation'], ['', 'skip-compile', 'do not compile components'], ['', 'skip-write-config-files', 'do not write config files (such as eslint, tsconfig, prettier, etc...)'], ['a', 'add-missing-deps', 'install all missing dependencies'], ['', 'skip-unavailable', 'when adding missing dependencies, skip those that are not found in the registry'], ['', 'add-missing-peers', 'install all missing peer dependencies'], ['', recurringInstallFlagName, 'automatically run install again if there are non loaded old envs in your workspace'], ['', 'no-optional [noOptional]', 'do not install optional dependencies (works with pnpm only)'], ['', 'lockfile-only', 'dependencies are not written to node_modules. Only the lockfile is updated'], ['', 'allow-scripts [pkgNames]', 'a comma separated list of package names that are allowed to run installation scripts'], ['', 'disallow-scripts [pkgNames]', 'a comma separated list of package names that are NOT allowed to run installation scripts']]);
60
60
  }
61
61
  async report([packages = []], options) {
62
62
  const startTime = Date.now();
@@ -1 +1 @@
1
- {"version":3,"names":["_validateNpmPackageName","data","_interopRequireDefault","require","_chalk","_workspace","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","recurringInstallFlagName","InstallCmd","constructor","install","workspace","logger","name","description","report","packages","options","startTime","Date","now","OutsideWorkspaceError","updateExisting","consoleWarning","validPackages","Promise","all","map","pkg","pkgName","extractPackageName","packageNameValidate","validForNewPackages","startsWith","componentId","resolveComponentId","component","get","componentPackageName","Error","console","chalk","cyan","installOpts","lifecycleType","addMissingPeers","type","dedupe","skipDedupe","import","skipImport","savePrefix","addMissingDeps","skipUnavailable","compile","skipCompile","includeOptionalDeps","noOptional","writeConfigFiles","skipWriteConfigFiles","updateAll","update","recurringInstall","lockfileOnly","showExternalPackageManagerPrompt","allowScripts","_parseAllowScriptsFlags","disallowScripts","components","endTime","oldNonLoadedEnvs","getOldNonLoadedEnvs","formatOutput","numOfComps","toArray","length","toString","allowScriptsFlag","disallowScriptsFlag","undefined","_parseCommaSeparatedPkgList","pkgList","split","trimmed","trim","exports","calculateTime","diff","executionTime","summary","green","anotherInstallRequiredOutput","getAnotherInstallRequiredOutput","oldNonLoadedEnvsStr","join","firstPart","flag","suggestRecurringInstall","envsStr","docsLink","msg","yellow","packageString","allowedPrefixes","some","prefix","atIndex","indexOf","possibleVersion","slice","includes","lastAtIndex","lastIndexOf"],"sources":["install.cmd.tsx"],"sourcesContent":["import type { Command, CommandOptions } from '@teambit/cli';\nimport packageNameValidate from 'validate-npm-package-name';\nimport type { WorkspaceDependencyLifecycleType } from '@teambit/dependency-resolver';\nimport type { Logger } from '@teambit/logger';\nimport chalk from 'chalk';\nimport type { Workspace } from '@teambit/workspace';\nimport { OutsideWorkspaceError } from '@teambit/workspace';\nimport type { InstallMain, WorkspaceInstallOptions } from './install.main.runtime';\n\ntype InstallCmdOptions = {\n type: WorkspaceDependencyLifecycleType;\n skipDedupe: boolean;\n skipImport: boolean;\n skipCompile: boolean;\n skipWriteConfigFiles: boolean;\n update: boolean;\n updateExisting: boolean;\n savePrefix: string;\n addMissingDeps: boolean;\n skipUnavailable: boolean;\n addMissingPeers: boolean;\n noOptional: boolean;\n recurringInstall: boolean;\n lockfileOnly: boolean;\n allowScripts?: string;\n disallowScripts?: string;\n};\n\ntype FormatOutputArgs = {\n numOfComps: string;\n startTime: number;\n endTime: number;\n oldNonLoadedEnvs: string[];\n recurringInstall: boolean;\n};\n\nconst recurringInstallFlagName = 'recurring-install';\n\nexport default class InstallCmd implements Command {\n name = 'install [packages...]';\n description = 'install workspace dependencies';\n extendedDescription = `installs workspace dependencies and prepares the workspace for development.\nwhen packages are specified, adds them to workspace.jsonc policy and installs. when no packages specified, installs existing dependencies.\nautomatically imports components, compiles components, links to node_modules, and writes config files.`;\n helpUrl = 'reference/dependencies/dependency-installation';\n arguments = [{ name: 'packages...', description: 'a list of packages to install (separated by spaces)' }];\n alias = 'in';\n group = 'dependencies';\n options = [\n ['t', 'type [lifecycleType]', '\"runtime\" (default) or \"peer\" (dev is not a valid option)'],\n ['u', 'update', 'update all dependencies to latest version according to their semver range'],\n [\n '',\n 'update-existing',\n 'DEPRECATED (not needed anymore, it is the default now). update existing dependencies version and types',\n ],\n ['', 'save-prefix [savePrefix]', 'set the prefix to use when adding dependency to workspace.jsonc'],\n ['', 'skip-dedupe', 'do not dedupe dependencies on installation'],\n ['', 'skip-import', 'do not import bit objects post installation'],\n ['', 'skip-compile', 'do not compile components'],\n ['', 'skip-write-config-files', 'do not write config files (such as eslint, tsconfig, prettier, etc...)'],\n ['a', 'add-missing-deps', 'install all missing dependencies'],\n ['', 'skip-unavailable', 'when adding missing dependencies, skip those that are not found in the regisry'],\n ['', 'add-missing-peers', 'install all missing peer dependencies'],\n [\n '',\n recurringInstallFlagName,\n 'automatically run install again if there are non loaded old envs in your workspace',\n ],\n ['', 'no-optional [noOptional]', 'do not install optional dependencies (works with pnpm only)'],\n ['', 'lockfile-only', 'dependencies are not written to node_modules. Only the lockfile is updated'],\n ['', 'allow-scripts [pkgNames]', 'a comma separated list of package names that are allowed to run installation scripts'],\n ['', 'disallow-scripts [pkgNames]', 'a comma separated list of package names that are NOT allowed to run installation scripts'],\n ] as CommandOptions;\n\n constructor(\n private install: InstallMain,\n /**\n * workspace extension.\n */\n private workspace: Workspace,\n\n /**\n * logger extension.\n */\n private logger: Logger\n ) {}\n\n async report([packages = []]: [string[]], options: InstallCmdOptions) {\n const startTime = Date.now();\n if (!this.workspace) throw new OutsideWorkspaceError();\n if (options.updateExisting) {\n this.logger.consoleWarning(\n `--update-existing is deprecated, please omit it. \"bit install\" will update existing dependencies by default`\n );\n }\n\n const validPackages = await Promise.all(\n packages.map(async (pkg) => {\n const pkgName = extractPackageName(pkg);\n if (packageNameValidate(pkgName).validForNewPackages) {\n return pkg;\n }\n // if this is a component-id, find the package name and use it instead.\n try {\n // Check if it's not a package name (doesn't start with @)\n if (!pkgName.startsWith('@')) {\n // Try to resolve it as a component ID\n const componentId = await this.workspace.resolveComponentId(pkg);\n // Get the package name for this component\n const component = await this.workspace.get(componentId);\n const componentPackageName = this.workspace.componentPackageName(component);\n return componentPackageName;\n }\n } catch {\n // If component resolution fails, fall through to original error\n }\n throw new Error(`the package name \"${pkgName}\" is invalid. please provide a valid package name.`);\n })\n );\n this.logger.console(`Resolving component dependencies for workspace: '${chalk.cyan(this.workspace.name)}'`);\n const installOpts: WorkspaceInstallOptions = {\n lifecycleType: options.addMissingPeers ? 'peer' : options.type,\n dedupe: !options.skipDedupe,\n import: !options.skipImport,\n updateExisting: true,\n savePrefix: options.savePrefix,\n addMissingDeps: options.addMissingDeps,\n skipUnavailable: options.skipUnavailable,\n addMissingPeers: options.addMissingPeers,\n compile: !options.skipCompile,\n includeOptionalDeps: !options.noOptional,\n writeConfigFiles: !options.skipWriteConfigFiles,\n updateAll: options.update,\n recurringInstall: options.recurringInstall,\n lockfileOnly: options.lockfileOnly,\n showExternalPackageManagerPrompt: true,\n allowScripts: this._parseAllowScriptsFlags(options.allowScripts, options.disallowScripts),\n };\n const components = await this.install.install(validPackages, installOpts);\n const endTime = Date.now();\n const oldNonLoadedEnvs = this.install.getOldNonLoadedEnvs();\n return formatOutput({\n startTime,\n endTime,\n numOfComps: components.toArray().length.toString(),\n recurringInstall: options[recurringInstallFlagName],\n oldNonLoadedEnvs,\n });\n }\n\n private _parseAllowScriptsFlags(\n allowScriptsFlag?: string,\n disallowScriptsFlag?: string\n ): Record<string, boolean> | undefined {\n if (!allowScriptsFlag && !disallowScriptsFlag) return undefined;\n const allowScripts: Record<string, boolean> = {};\n if (allowScriptsFlag) {\n for (const pkgName of this._parseCommaSeparatedPkgList(allowScriptsFlag)) {\n allowScripts[pkgName] = true;\n }\n }\n if (disallowScriptsFlag) {\n for (const pkgName of this._parseCommaSeparatedPkgList(disallowScriptsFlag)) {\n allowScripts[pkgName] = false;\n }\n }\n return allowScripts;\n }\n\n private * _parseCommaSeparatedPkgList(pkgList: string): IterableIterator<string> {\n for (const pkgName of pkgList.split(',')) {\n const trimmed = pkgName.trim();\n if (trimmed) {\n yield trimmed;\n }\n }\n }\n}\n\nfunction calculateTime(startTime: number, endTime: number) {\n const diff = endTime - startTime;\n return diff / 1000;\n}\n\nfunction formatOutput({\n numOfComps,\n endTime,\n startTime,\n recurringInstall,\n oldNonLoadedEnvs,\n}: FormatOutputArgs): string {\n const executionTime = calculateTime(startTime, endTime);\n const summary = chalk.green(\n `Successfully installed dependencies and compiled ${chalk.cyan(numOfComps)} component(s) in ${chalk.cyan(\n executionTime.toString()\n )} seconds`\n );\n const anotherInstallRequiredOutput = getAnotherInstallRequiredOutput(recurringInstall, oldNonLoadedEnvs);\n return anotherInstallRequiredOutput ? `\\n${anotherInstallRequiredOutput}\\n\\n${summary}` : `\\n${summary}`;\n}\n\nexport function getAnotherInstallRequiredOutput(recurringInstall = false, oldNonLoadedEnvs: string[] = []): string {\n if (!oldNonLoadedEnvs.length) return '';\n const oldNonLoadedEnvsStr = oldNonLoadedEnvs.join(', ');\n const firstPart = `Bit was not able to install all dependencies. Please run \"${chalk.cyan('bit install')}\" again `;\n const flag = chalk.cyan(`--${recurringInstallFlagName}`);\n const suggestRecurringInstall = recurringInstall ? '' : `(or use the \"${flag}\" option next time).`;\n const envsStr = `The following environments need to add support for \"dependency policy\" to fix the warning: ${chalk.cyan(\n oldNonLoadedEnvsStr\n )}`;\n const docsLink = `Read more about how to fix this issue in: https://bit.dev/blog/using-a-static-dependency-policy-in-a-legacy-env-lihfbt9b`;\n\n const msg = `${firstPart}${suggestRecurringInstall}\\n${envsStr}\\n${docsLink}`;\n return chalk.yellow(msg);\n}\n\nfunction extractPackageName(packageString: string): string {\n if (!packageString) return '';\n\n // Handle https and git protocols. We don't allow \"file\" protocol here. It won't work for the consumer.\n const allowedPrefixes = ['https://', 'git:', 'git+ssh://', 'git+https://'];\n if (allowedPrefixes.some((prefix) => packageString.startsWith(prefix))) {\n return packageString;\n }\n\n // If it's a scoped package\n if (packageString.startsWith('@')) {\n // Find the second '@' (first is for scope, second is for version/tag)\n const atIndex = packageString.indexOf('@', 1);\n if (atIndex === -1) return packageString;\n const possibleVersion = packageString.slice(atIndex + 1);\n // If the part after the second '@' contains a slash, it's not a version/tag\n if (possibleVersion.includes('/')) return packageString;\n return packageString.slice(0, atIndex);\n }\n\n // For unscoped packages, split at the last '@'\n const lastAtIndex = packageString.lastIndexOf('@');\n if (lastAtIndex <= 0) return packageString;\n return packageString.slice(0, lastAtIndex);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_validateNpmPackageName","data","_interopRequireDefault","require","_chalk","_workspace","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","recurringInstallFlagName","InstallCmd","constructor","install","workspace","logger","name","description","report","packages","options","startTime","Date","now","OutsideWorkspaceError","updateExisting","consoleWarning","validPackages","Promise","all","map","pkg","pkgName","extractPackageName","packageNameValidate","validForNewPackages","startsWith","componentId","resolveComponentId","component","get","componentPackageName","Error","console","chalk","cyan","installOpts","lifecycleType","addMissingPeers","type","dedupe","skipDedupe","import","skipImport","savePrefix","addMissingDeps","skipUnavailable","compile","skipCompile","includeOptionalDeps","noOptional","writeConfigFiles","skipWriteConfigFiles","updateAll","update","recurringInstall","lockfileOnly","showExternalPackageManagerPrompt","allowScripts","_parseAllowScriptsFlags","disallowScripts","components","endTime","oldNonLoadedEnvs","getOldNonLoadedEnvs","formatOutput","numOfComps","toArray","length","toString","allowScriptsFlag","disallowScriptsFlag","undefined","_parseCommaSeparatedPkgList","pkgList","split","trimmed","trim","exports","calculateTime","diff","executionTime","summary","green","anotherInstallRequiredOutput","getAnotherInstallRequiredOutput","oldNonLoadedEnvsStr","join","firstPart","flag","suggestRecurringInstall","envsStr","docsLink","msg","yellow","packageString","allowedPrefixes","some","prefix","atIndex","indexOf","possibleVersion","slice","includes","lastAtIndex","lastIndexOf"],"sources":["install.cmd.tsx"],"sourcesContent":["import type { Command, CommandOptions } from '@teambit/cli';\nimport packageNameValidate from 'validate-npm-package-name';\nimport type { WorkspaceDependencyLifecycleType } from '@teambit/dependency-resolver';\nimport type { Logger } from '@teambit/logger';\nimport chalk from 'chalk';\nimport type { Workspace } from '@teambit/workspace';\nimport { OutsideWorkspaceError } from '@teambit/workspace';\nimport type { InstallMain, WorkspaceInstallOptions } from './install.main.runtime';\n\ntype InstallCmdOptions = {\n type: WorkspaceDependencyLifecycleType;\n skipDedupe: boolean;\n skipImport: boolean;\n skipCompile: boolean;\n skipWriteConfigFiles: boolean;\n update: boolean;\n updateExisting: boolean;\n savePrefix: string;\n addMissingDeps: boolean;\n skipUnavailable: boolean;\n addMissingPeers: boolean;\n noOptional: boolean;\n recurringInstall: boolean;\n lockfileOnly: boolean;\n allowScripts?: string;\n disallowScripts?: string;\n};\n\ntype FormatOutputArgs = {\n numOfComps: string;\n startTime: number;\n endTime: number;\n oldNonLoadedEnvs: string[];\n recurringInstall: boolean;\n};\n\nconst recurringInstallFlagName = 'recurring-install';\n\nexport default class InstallCmd implements Command {\n name = 'install [packages...]';\n description = 'install workspace dependencies';\n extendedDescription = `installs workspace dependencies and prepares the workspace for development.\nwhen packages are specified, adds them to workspace.jsonc policy and installs. when no packages specified, installs existing dependencies.\nautomatically imports components, compiles components, links to node_modules, and writes config files.`;\n helpUrl = 'reference/dependencies/dependency-installation';\n arguments = [{ name: 'packages...', description: 'a list of packages to install (separated by spaces)' }];\n alias = 'in';\n group = 'dependencies';\n options = [\n ['t', 'type [lifecycleType]', '\"runtime\" (default) or \"peer\" (dev is not a valid option)'],\n ['u', 'update', 'update all dependencies to latest version according to their semver range'],\n [\n '',\n 'update-existing',\n 'DEPRECATED (not needed anymore, it is the default now). update existing dependencies version and types',\n ],\n ['', 'save-prefix [savePrefix]', 'set the prefix to use when adding dependency to workspace.jsonc'],\n ['', 'skip-dedupe', 'do not dedupe dependencies on installation'],\n ['', 'skip-import', 'do not import bit objects post installation'],\n ['', 'skip-compile', 'do not compile components'],\n ['', 'skip-write-config-files', 'do not write config files (such as eslint, tsconfig, prettier, etc...)'],\n ['a', 'add-missing-deps', 'install all missing dependencies'],\n ['', 'skip-unavailable', 'when adding missing dependencies, skip those that are not found in the registry'],\n ['', 'add-missing-peers', 'install all missing peer dependencies'],\n [\n '',\n recurringInstallFlagName,\n 'automatically run install again if there are non loaded old envs in your workspace',\n ],\n ['', 'no-optional [noOptional]', 'do not install optional dependencies (works with pnpm only)'],\n ['', 'lockfile-only', 'dependencies are not written to node_modules. Only the lockfile is updated'],\n [\n '',\n 'allow-scripts [pkgNames]',\n 'a comma separated list of package names that are allowed to run installation scripts',\n ],\n [\n '',\n 'disallow-scripts [pkgNames]',\n 'a comma separated list of package names that are NOT allowed to run installation scripts',\n ],\n ] as CommandOptions;\n\n constructor(\n private install: InstallMain,\n /**\n * workspace extension.\n */\n private workspace: Workspace,\n\n /**\n * logger extension.\n */\n private logger: Logger\n ) {}\n\n async report([packages = []]: [string[]], options: InstallCmdOptions) {\n const startTime = Date.now();\n if (!this.workspace) throw new OutsideWorkspaceError();\n if (options.updateExisting) {\n this.logger.consoleWarning(\n `--update-existing is deprecated, please omit it. \"bit install\" will update existing dependencies by default`\n );\n }\n\n const validPackages = await Promise.all(\n packages.map(async (pkg) => {\n const pkgName = extractPackageName(pkg);\n if (packageNameValidate(pkgName).validForNewPackages) {\n return pkg;\n }\n // if this is a component-id, find the package name and use it instead.\n try {\n // Check if it's not a package name (doesn't start with @)\n if (!pkgName.startsWith('@')) {\n // Try to resolve it as a component ID\n const componentId = await this.workspace.resolveComponentId(pkg);\n // Get the package name for this component\n const component = await this.workspace.get(componentId);\n const componentPackageName = this.workspace.componentPackageName(component);\n return componentPackageName;\n }\n } catch {\n // If component resolution fails, fall through to original error\n }\n throw new Error(`the package name \"${pkgName}\" is invalid. please provide a valid package name.`);\n })\n );\n this.logger.console(`Resolving component dependencies for workspace: '${chalk.cyan(this.workspace.name)}'`);\n const installOpts: WorkspaceInstallOptions = {\n lifecycleType: options.addMissingPeers ? 'peer' : options.type,\n dedupe: !options.skipDedupe,\n import: !options.skipImport,\n updateExisting: true,\n savePrefix: options.savePrefix,\n addMissingDeps: options.addMissingDeps,\n skipUnavailable: options.skipUnavailable,\n addMissingPeers: options.addMissingPeers,\n compile: !options.skipCompile,\n includeOptionalDeps: !options.noOptional,\n writeConfigFiles: !options.skipWriteConfigFiles,\n updateAll: options.update,\n recurringInstall: options.recurringInstall,\n lockfileOnly: options.lockfileOnly,\n showExternalPackageManagerPrompt: true,\n allowScripts: this._parseAllowScriptsFlags(options.allowScripts, options.disallowScripts),\n };\n const components = await this.install.install(validPackages, installOpts);\n const endTime = Date.now();\n const oldNonLoadedEnvs = this.install.getOldNonLoadedEnvs();\n return formatOutput({\n startTime,\n endTime,\n numOfComps: components.toArray().length.toString(),\n recurringInstall: options[recurringInstallFlagName],\n oldNonLoadedEnvs,\n });\n }\n\n private _parseAllowScriptsFlags(\n allowScriptsFlag?: string,\n disallowScriptsFlag?: string\n ): Record<string, boolean> | undefined {\n if (!allowScriptsFlag && !disallowScriptsFlag) return undefined;\n const allowScripts: Record<string, boolean> = {};\n if (allowScriptsFlag) {\n for (const pkgName of this._parseCommaSeparatedPkgList(allowScriptsFlag)) {\n allowScripts[pkgName] = true;\n }\n }\n if (disallowScriptsFlag) {\n for (const pkgName of this._parseCommaSeparatedPkgList(disallowScriptsFlag)) {\n allowScripts[pkgName] = false;\n }\n }\n return allowScripts;\n }\n\n private *_parseCommaSeparatedPkgList(pkgList: string): IterableIterator<string> {\n for (const pkgName of pkgList.split(',')) {\n const trimmed = pkgName.trim();\n if (trimmed) {\n yield trimmed;\n }\n }\n }\n}\n\nfunction calculateTime(startTime: number, endTime: number) {\n const diff = endTime - startTime;\n return diff / 1000;\n}\n\nfunction formatOutput({\n numOfComps,\n endTime,\n startTime,\n recurringInstall,\n oldNonLoadedEnvs,\n}: FormatOutputArgs): string {\n const executionTime = calculateTime(startTime, endTime);\n const summary = chalk.green(\n `Successfully installed dependencies and compiled ${chalk.cyan(numOfComps)} component(s) in ${chalk.cyan(\n executionTime.toString()\n )} seconds`\n );\n const anotherInstallRequiredOutput = getAnotherInstallRequiredOutput(recurringInstall, oldNonLoadedEnvs);\n return anotherInstallRequiredOutput ? `\\n${anotherInstallRequiredOutput}\\n\\n${summary}` : `\\n${summary}`;\n}\n\nexport function getAnotherInstallRequiredOutput(recurringInstall = false, oldNonLoadedEnvs: string[] = []): string {\n if (!oldNonLoadedEnvs.length) return '';\n const oldNonLoadedEnvsStr = oldNonLoadedEnvs.join(', ');\n const firstPart = `Bit was not able to install all dependencies. Please run \"${chalk.cyan('bit install')}\" again `;\n const flag = chalk.cyan(`--${recurringInstallFlagName}`);\n const suggestRecurringInstall = recurringInstall ? '' : `(or use the \"${flag}\" option next time).`;\n const envsStr = `The following environments need to add support for \"dependency policy\" to fix the warning: ${chalk.cyan(\n oldNonLoadedEnvsStr\n )}`;\n const docsLink = `Read more about how to fix this issue in: https://bit.dev/blog/using-a-static-dependency-policy-in-a-legacy-env-lihfbt9b`;\n\n const msg = `${firstPart}${suggestRecurringInstall}\\n${envsStr}\\n${docsLink}`;\n return chalk.yellow(msg);\n}\n\nfunction extractPackageName(packageString: string): string {\n if (!packageString) return '';\n\n // Handle https and git protocols. We don't allow \"file\" protocol here. It won't work for the consumer.\n const allowedPrefixes = ['https://', 'git:', 'git+ssh://', 'git+https://'];\n if (allowedPrefixes.some((prefix) => packageString.startsWith(prefix))) {\n return packageString;\n }\n\n // If it's a scoped package\n if (packageString.startsWith('@')) {\n // Find the second '@' (first is for scope, second is for version/tag)\n const atIndex = packageString.indexOf('@', 1);\n if (atIndex === -1) return packageString;\n const possibleVersion = packageString.slice(atIndex + 1);\n // If the part after the second '@' contains a slash, it's not a version/tag\n if (possibleVersion.includes('/')) return packageString;\n return packageString.slice(0, atIndex);\n }\n\n // For unscoped packages, split at the last '@'\n const lastAtIndex = packageString.lastIndexOf('@');\n if (lastAtIndex <= 0) return packageString;\n return packageString.slice(0, lastAtIndex);\n}\n"],"mappings":";;;;;;;AACA,SAAAA,wBAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,uBAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAGA,SAAAG,OAAA;EAAA,MAAAH,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAC,MAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAI,WAAA;EAAA,MAAAJ,IAAA,GAAAE,OAAA;EAAAE,UAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA2D,SAAAC,uBAAAI,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;AA8B3D,MAAMgB,wBAAwB,GAAG,mBAAmB;AAErC,MAAMC,UAAU,CAAoB;EA6CjDC,WAAWA,CACDC,OAAoB;EAC5B;AACJ;AACA;EACYC,SAAoB;EAE5B;AACJ;AACA;EACYC,MAAc,EACtB;IAAA,KAVQF,OAAoB,GAApBA,OAAoB;IAAA,KAIpBC,SAAoB,GAApBA,SAAoB;IAAA,KAKpBC,MAAc,GAAdA,MAAc;IAAAvB,eAAA,eAtDjB,uBAAuB;IAAAA,eAAA,sBAChB,gCAAgC;IAAAA,eAAA,8BACxB;AACxB;AACA,uGAAuG;IAAAA,eAAA,kBAC3F,gDAAgD;IAAAA,eAAA,oBAC9C,CAAC;MAAEwB,IAAI,EAAE,aAAa;MAAEC,WAAW,EAAE;IAAsD,CAAC,CAAC;IAAAzB,eAAA,gBACjG,IAAI;IAAAA,eAAA,gBACJ,cAAc;IAAAA,eAAA,kBACZ,CACR,CAAC,GAAG,EAAE,sBAAsB,EAAE,2DAA2D,CAAC,EAC1F,CAAC,GAAG,EAAE,QAAQ,EAAE,2EAA2E,CAAC,EAC5F,CACE,EAAE,EACF,iBAAiB,EACjB,wGAAwG,CACzG,EACD,CAAC,EAAE,EAAE,0BAA0B,EAAE,iEAAiE,CAAC,EACnG,CAAC,EAAE,EAAE,aAAa,EAAE,4CAA4C,CAAC,EACjE,CAAC,EAAE,EAAE,aAAa,EAAE,6CAA6C,CAAC,EAClE,CAAC,EAAE,EAAE,cAAc,EAAE,2BAA2B,CAAC,EACjD,CAAC,EAAE,EAAE,yBAAyB,EAAE,wEAAwE,CAAC,EACzG,CAAC,GAAG,EAAE,kBAAkB,EAAE,kCAAkC,CAAC,EAC7D,CAAC,EAAE,EAAE,kBAAkB,EAAE,iFAAiF,CAAC,EAC3G,CAAC,EAAE,EAAE,mBAAmB,EAAE,uCAAuC,CAAC,EAClE,CACE,EAAE,EACFkB,wBAAwB,EACxB,oFAAoF,CACrF,EACD,CAAC,EAAE,EAAE,0BAA0B,EAAE,6DAA6D,CAAC,EAC/F,CAAC,EAAE,EAAE,eAAe,EAAE,4EAA4E,CAAC,EACnG,CACE,EAAE,EACF,0BAA0B,EAC1B,sFAAsF,CACvF,EACD,CACE,EAAE,EACF,6BAA6B,EAC7B,0FAA0F,CAC3F,CACF;EAaE;EAEH,MAAMQ,MAAMA,CAAC,CAACC,QAAQ,GAAG,EAAE,CAAa,EAAEC,OAA0B,EAAE;IACpE,MAAMC,SAAS,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC;IAC5B,IAAI,CAAC,IAAI,CAACT,SAAS,EAAE,MAAM,KAAIU,kCAAqB,EAAC,CAAC;IACtD,IAAIJ,OAAO,CAACK,cAAc,EAAE;MAC1B,IAAI,CAACV,MAAM,CAACW,cAAc,CACxB,6GACF,CAAC;IACH;IAEA,MAAMC,aAAa,GAAG,MAAMC,OAAO,CAACC,GAAG,CACrCV,QAAQ,CAACW,GAAG,CAAC,MAAOC,GAAG,IAAK;MAC1B,MAAMC,OAAO,GAAGC,kBAAkB,CAACF,GAAG,CAAC;MACvC,IAAI,IAAAG,iCAAmB,EAACF,OAAO,CAAC,CAACG,mBAAmB,EAAE;QACpD,OAAOJ,GAAG;MACZ;MACA;MACA,IAAI;QACF;QACA,IAAI,CAACC,OAAO,CAACI,UAAU,CAAC,GAAG,CAAC,EAAE;UAC5B;UACA,MAAMC,WAAW,GAAG,MAAM,IAAI,CAACvB,SAAS,CAACwB,kBAAkB,CAACP,GAAG,CAAC;UAChE;UACA,MAAMQ,SAAS,GAAG,MAAM,IAAI,CAACzB,SAAS,CAAC0B,GAAG,CAACH,WAAW,CAAC;UACvD,MAAMI,oBAAoB,GAAG,IAAI,CAAC3B,SAAS,CAAC2B,oBAAoB,CAACF,SAAS,CAAC;UAC3E,OAAOE,oBAAoB;QAC7B;MACF,CAAC,CAAC,MAAM;QACN;MAAA;MAEF,MAAM,IAAIC,KAAK,CAAC,qBAAqBV,OAAO,oDAAoD,CAAC;IACnG,CAAC,CACH,CAAC;IACD,IAAI,CAACjB,MAAM,CAAC4B,OAAO,CAAC,oDAAoDC,gBAAK,CAACC,IAAI,CAAC,IAAI,CAAC/B,SAAS,CAACE,IAAI,CAAC,GAAG,CAAC;IAC3G,MAAM8B,WAAoC,GAAG;MAC3CC,aAAa,EAAE3B,OAAO,CAAC4B,eAAe,GAAG,MAAM,GAAG5B,OAAO,CAAC6B,IAAI;MAC9DC,MAAM,EAAE,CAAC9B,OAAO,CAAC+B,UAAU;MAC3BC,MAAM,EAAE,CAAChC,OAAO,CAACiC,UAAU;MAC3B5B,cAAc,EAAE,IAAI;MACpB6B,UAAU,EAAElC,OAAO,CAACkC,UAAU;MAC9BC,cAAc,EAAEnC,OAAO,CAACmC,cAAc;MACtCC,eAAe,EAAEpC,OAAO,CAACoC,eAAe;MACxCR,eAAe,EAAE5B,OAAO,CAAC4B,eAAe;MACxCS,OAAO,EAAE,CAACrC,OAAO,CAACsC,WAAW;MAC7BC,mBAAmB,EAAE,CAACvC,OAAO,CAACwC,UAAU;MACxCC,gBAAgB,EAAE,CAACzC,OAAO,CAAC0C,oBAAoB;MAC/CC,SAAS,EAAE3C,OAAO,CAAC4C,MAAM;MACzBC,gBAAgB,EAAE7C,OAAO,CAAC6C,gBAAgB;MAC1CC,YAAY,EAAE9C,OAAO,CAAC8C,YAAY;MAClCC,gCAAgC,EAAE,IAAI;MACtCC,YAAY,EAAE,IAAI,CAACC,uBAAuB,CAACjD,OAAO,CAACgD,YAAY,EAAEhD,OAAO,CAACkD,eAAe;IAC1F,CAAC;IACD,MAAMC,UAAU,GAAG,MAAM,IAAI,CAAC1D,OAAO,CAACA,OAAO,CAACc,aAAa,EAAEmB,WAAW,CAAC;IACzE,MAAM0B,OAAO,GAAGlD,IAAI,CAACC,GAAG,CAAC,CAAC;IAC1B,MAAMkD,gBAAgB,GAAG,IAAI,CAAC5D,OAAO,CAAC6D,mBAAmB,CAAC,CAAC;IAC3D,OAAOC,YAAY,CAAC;MAClBtD,SAAS;MACTmD,OAAO;MACPI,UAAU,EAAEL,UAAU,CAACM,OAAO,CAAC,CAAC,CAACC,MAAM,CAACC,QAAQ,CAAC,CAAC;MAClDd,gBAAgB,EAAE7C,OAAO,CAACV,wBAAwB,CAAC;MACnD+D;IACF,CAAC,CAAC;EACJ;EAEQJ,uBAAuBA,CAC7BW,gBAAyB,EACzBC,mBAA4B,EACS;IACrC,IAAI,CAACD,gBAAgB,IAAI,CAACC,mBAAmB,EAAE,OAAOC,SAAS;IAC/D,MAAMd,YAAqC,GAAG,CAAC,CAAC;IAChD,IAAIY,gBAAgB,EAAE;MACpB,KAAK,MAAMhD,OAAO,IAAI,IAAI,CAACmD,2BAA2B,CAACH,gBAAgB,CAAC,EAAE;QACxEZ,YAAY,CAACpC,OAAO,CAAC,GAAG,IAAI;MAC9B;IACF;IACA,IAAIiD,mBAAmB,EAAE;MACvB,KAAK,MAAMjD,OAAO,IAAI,IAAI,CAACmD,2BAA2B,CAACF,mBAAmB,CAAC,EAAE;QAC3Eb,YAAY,CAACpC,OAAO,CAAC,GAAG,KAAK;MAC/B;IACF;IACA,OAAOoC,YAAY;EACrB;EAEA,CAASe,2BAA2BA,CAACC,OAAe,EAA4B;IAC9E,KAAK,MAAMpD,OAAO,IAAIoD,OAAO,CAACC,KAAK,CAAC,GAAG,CAAC,EAAE;MACxC,MAAMC,OAAO,GAAGtD,OAAO,CAACuD,IAAI,CAAC,CAAC;MAC9B,IAAID,OAAO,EAAE;QACX,MAAMA,OAAO;MACf;IACF;EACF;AACF;AAACE,OAAA,CAAAjG,OAAA,GAAAoB,UAAA;AAED,SAAS8E,aAAaA,CAACpE,SAAiB,EAAEmD,OAAe,EAAE;EACzD,MAAMkB,IAAI,GAAGlB,OAAO,GAAGnD,SAAS;EAChC,OAAOqE,IAAI,GAAG,IAAI;AACpB;AAEA,SAASf,YAAYA,CAAC;EACpBC,UAAU;EACVJ,OAAO;EACPnD,SAAS;EACT4C,gBAAgB;EAChBQ;AACgB,CAAC,EAAU;EAC3B,MAAMkB,aAAa,GAAGF,aAAa,CAACpE,SAAS,EAAEmD,OAAO,CAAC;EACvD,MAAMoB,OAAO,GAAGhD,gBAAK,CAACiD,KAAK,CACzB,oDAAoDjD,gBAAK,CAACC,IAAI,CAAC+B,UAAU,CAAC,oBAAoBhC,gBAAK,CAACC,IAAI,CACtG8C,aAAa,CAACZ,QAAQ,CAAC,CACzB,CAAC,UACH,CAAC;EACD,MAAMe,4BAA4B,GAAGC,+BAA+B,CAAC9B,gBAAgB,EAAEQ,gBAAgB,CAAC;EACxG,OAAOqB,4BAA4B,GAAG,KAAKA,4BAA4B,OAAOF,OAAO,EAAE,GAAG,KAAKA,OAAO,EAAE;AAC1G;AAEO,SAASG,+BAA+BA,CAAC9B,gBAAgB,GAAG,KAAK,EAAEQ,gBAA0B,GAAG,EAAE,EAAU;EACjH,IAAI,CAACA,gBAAgB,CAACK,MAAM,EAAE,OAAO,EAAE;EACvC,MAAMkB,mBAAmB,GAAGvB,gBAAgB,CAACwB,IAAI,CAAC,IAAI,CAAC;EACvD,MAAMC,SAAS,GAAG,6DAA6DtD,gBAAK,CAACC,IAAI,CAAC,aAAa,CAAC,UAAU;EAClH,MAAMsD,IAAI,GAAGvD,gBAAK,CAACC,IAAI,CAAC,KAAKnC,wBAAwB,EAAE,CAAC;EACxD,MAAM0F,uBAAuB,GAAGnC,gBAAgB,GAAG,EAAE,GAAG,gBAAgBkC,IAAI,sBAAsB;EAClG,MAAME,OAAO,GAAG,8FAA8FzD,gBAAK,CAACC,IAAI,CACtHmD,mBACF,CAAC,EAAE;EACH,MAAMM,QAAQ,GAAG,0HAA0H;EAE3I,MAAMC,GAAG,GAAG,GAAGL,SAAS,GAAGE,uBAAuB,KAAKC,OAAO,KAAKC,QAAQ,EAAE;EAC7E,OAAO1D,gBAAK,CAAC4D,MAAM,CAACD,GAAG,CAAC;AAC1B;AAEA,SAAStE,kBAAkBA,CAACwE,aAAqB,EAAU;EACzD,IAAI,CAACA,aAAa,EAAE,OAAO,EAAE;;EAE7B;EACA,MAAMC,eAAe,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,cAAc,CAAC;EAC1E,IAAIA,eAAe,CAACC,IAAI,CAAEC,MAAM,IAAKH,aAAa,CAACrE,UAAU,CAACwE,MAAM,CAAC,CAAC,EAAE;IACtE,OAAOH,aAAa;EACtB;;EAEA;EACA,IAAIA,aAAa,CAACrE,UAAU,CAAC,GAAG,CAAC,EAAE;IACjC;IACA,MAAMyE,OAAO,GAAGJ,aAAa,CAACK,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAC7C,IAAID,OAAO,KAAK,CAAC,CAAC,EAAE,OAAOJ,aAAa;IACxC,MAAMM,eAAe,GAAGN,aAAa,CAACO,KAAK,CAACH,OAAO,GAAG,CAAC,CAAC;IACxD;IACA,IAAIE,eAAe,CAACE,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAOR,aAAa;IACvD,OAAOA,aAAa,CAACO,KAAK,CAAC,CAAC,EAAEH,OAAO,CAAC;EACxC;;EAEA;EACA,MAAMK,WAAW,GAAGT,aAAa,CAACU,WAAW,CAAC,GAAG,CAAC;EAClD,IAAID,WAAW,IAAI,CAAC,EAAE,OAAOT,aAAa;EAC1C,OAAOA,aAAa,CAACO,KAAK,CAAC,CAAC,EAAEE,WAAW,CAAC;AAC5C","ignoreList":[]}
@@ -136,7 +136,7 @@ useful for development when components need to reference each other or when debu
136
136
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
137
137
  async json([ids], opts) {
138
138
  if (!this.workspace) throw new (_workspace().OutsideWorkspaceError)();
139
- this.logger.console(`Linking components and core aspects to node_modules for workspaces: '${_chalk().default.cyan(this.workspace.name)}'`);
139
+ this.logger.console(`Linking components and core aspects to node_modules for workspace: '${_chalk().default.cyan(this.workspace.name)}'`);
140
140
  const linkOpts = {
141
141
  linkToBitRoots: true,
142
142
  rewire: opts.rewire,
@@ -1 +1 @@
1
- {"version":3,"names":["_cli","data","require","_toolboxTime","_chalk","_interopRequireDefault","_workspace","_componentListLinks","_coreAspectsLinks","_nestedDepsInNmLinks","_rewireRow","_linkToDir","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","LinkCommand","constructor","install","workspace","logger","name","description","report","ids","opts","startTime","Date","now","linkResults","json","endTime","numOfComponents","legacyLinkResults","length","timeDiff","timeFormat","coreAspectsLinksWithMainAspect","coreAspectsLinks","teambitBitLink","unshift","numOfCoreAspects","title","formatTitle","coreLinks","CoreAspectsLinks","verbose","nonCorePackagesLinks","packageListLinks","slotOriginatedLinks","compsLinks","ComponentListLinks","componentListLinks","compSummary","rewireRow","RewireRow","legacyCodemodResults","legacyLinkCodemodResults","nestedLinks","NestedComponentLinksLinks","nestedDepsInNmLinks","targetLinks","linkToDir","linkToDirResults","footer","formatHint","joinSections","OutsideWorkspaceError","console","chalk","cyan","linkOpts","linkToBitRoots","rewire","linkCoreAspects","linkTeambitBit","target","fetchObject","skipFetchingObjects","includePeers","peers","link","exports"],"sources":["link.cmd.ts"],"sourcesContent":["import type { Command, CommandOptions } from '@teambit/cli';\nimport { formatTitle, formatHint, joinSections } from '@teambit/cli';\nimport type { Logger } from '@teambit/logger';\nimport { timeFormat } from '@teambit/toolbox.time.time-format';\nimport chalk from 'chalk';\nimport { OutsideWorkspaceError, type Workspace } from '@teambit/workspace';\nimport type { InstallMain, WorkspaceLinkOptions, WorkspaceLinkResults } from '../install.main.runtime';\nimport { ComponentListLinks, packageListLinks } from './component-list-links';\nimport { CoreAspectsLinks } from './core-aspects-links';\nimport { NestedComponentLinksLinks } from './nested-deps-in-nm-links';\nimport { RewireRow } from './rewire-row';\nimport { linkToDir } from './link-to-dir';\n\ntype LinkCommandOpts = {\n rewire: boolean;\n verbose: boolean;\n target: string;\n skipFetchingObjects?: boolean;\n peers?: boolean;\n compSummary?: boolean;\n};\nexport class LinkCommand implements Command {\n name = 'link [component-names...]';\n alias = '';\n description = 'create links between components and node_modules';\n extendedDescription = `creates links in node_modules for workspace components and core aspects, enabling import resolution.\nautomatically links all workspace components and Bit's core aspects to their respective package names.\nuseful for development when components need to reference each other or when debugging linking issues.`;\n helpUrl = 'reference/workspace/component-links';\n group = 'dependencies';\n private = false;\n arguments = [{ name: 'component-names...', description: 'names or IDs of the components to link' }];\n options = [\n ['j', 'json', 'return the output as JSON'],\n ['', 'verbose', 'verbose output'],\n ['r', 'rewire', 'Replace relative paths with module paths in code (e.g. \"../foo\" => \"@bit/foo\")'],\n [\n '',\n 'target <dir>',\n 'link to an external directory (similar to npm-link) so other projects could use these components',\n ],\n ['', 'skip-fetching-objects', 'skip fetch missing objects from remotes before linking'],\n ['', 'peers', 'link peer dependencies of the components too'],\n ['', 'comp-summary', 'show only a summary of component links instead of listing all components'],\n ] as CommandOptions;\n\n constructor(\n private install: InstallMain,\n /**\n * workspace extension.\n */\n private workspace: Workspace,\n\n /**\n * logger extension.\n */\n private logger: Logger\n ) {}\n\n async report([ids]: [string[]], opts: LinkCommandOpts) {\n const startTime = Date.now();\n const linkResults = await this.json([ids], opts);\n const endTime = Date.now();\n const numOfComponents = linkResults.legacyLinkResults?.length;\n const timeDiff = timeFormat(endTime - startTime);\n const coreAspectsLinksWithMainAspect = linkResults.coreAspectsLinks || [];\n if (linkResults.teambitBitLink) {\n coreAspectsLinksWithMainAspect.unshift(linkResults.teambitBitLink);\n }\n const numOfCoreAspects = coreAspectsLinksWithMainAspect.length;\n\n const title = formatTitle(\n `Linked ${numOfComponents} components and ${numOfCoreAspects} core aspects to node_modules for workspace: ${this.workspace.name}`\n );\n const coreLinks = CoreAspectsLinks({\n coreAspectsLinks: coreAspectsLinksWithMainAspect,\n verbose: opts.verbose,\n });\n const nonCorePackagesLinks = packageListLinks(linkResults.slotOriginatedLinks);\n const compsLinks = ComponentListLinks({\n componentListLinks: linkResults.legacyLinkResults,\n verbose: opts.verbose,\n compSummary: opts.compSummary,\n });\n const rewireRow = RewireRow({ legacyCodemodResults: linkResults.legacyLinkCodemodResults });\n const nestedLinks = NestedComponentLinksLinks({\n nestedDepsInNmLinks: linkResults.nestedDepsInNmLinks,\n verbose: opts.verbose,\n });\n const targetLinks = linkToDir(linkResults.linkToDirResults);\n const footer = formatHint(`Finished. ${timeDiff}`);\n return joinSections([\n title,\n coreLinks,\n nonCorePackagesLinks,\n compsLinks,\n rewireRow,\n nestedLinks,\n targetLinks,\n footer,\n ]);\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n async json([ids]: [string[]], opts: LinkCommandOpts): Promise<WorkspaceLinkResults> {\n if (!this.workspace) throw new OutsideWorkspaceError();\n this.logger.console(\n `Linking components and core aspects to node_modules for workspaces: '${chalk.cyan(this.workspace.name)}'`\n );\n\n const linkOpts: WorkspaceLinkOptions = {\n linkToBitRoots: true,\n rewire: opts.rewire,\n linkCoreAspects: true,\n linkTeambitBit: true,\n linkToDir: opts.target,\n fetchObject: !opts.skipFetchingObjects,\n includePeers: opts.peers,\n };\n const linkResults = await this.install.link(linkOpts);\n return linkResults;\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_cli","data","require","_toolboxTime","_chalk","_interopRequireDefault","_workspace","_componentListLinks","_coreAspectsLinks","_nestedDepsInNmLinks","_rewireRow","_linkToDir","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","LinkCommand","constructor","install","workspace","logger","name","description","report","ids","opts","startTime","Date","now","linkResults","json","endTime","numOfComponents","legacyLinkResults","length","timeDiff","timeFormat","coreAspectsLinksWithMainAspect","coreAspectsLinks","teambitBitLink","unshift","numOfCoreAspects","title","formatTitle","coreLinks","CoreAspectsLinks","verbose","nonCorePackagesLinks","packageListLinks","slotOriginatedLinks","compsLinks","ComponentListLinks","componentListLinks","compSummary","rewireRow","RewireRow","legacyCodemodResults","legacyLinkCodemodResults","nestedLinks","NestedComponentLinksLinks","nestedDepsInNmLinks","targetLinks","linkToDir","linkToDirResults","footer","formatHint","joinSections","OutsideWorkspaceError","console","chalk","cyan","linkOpts","linkToBitRoots","rewire","linkCoreAspects","linkTeambitBit","target","fetchObject","skipFetchingObjects","includePeers","peers","link","exports"],"sources":["link.cmd.ts"],"sourcesContent":["import type { Command, CommandOptions } from '@teambit/cli';\nimport { formatTitle, formatHint, joinSections } from '@teambit/cli';\nimport type { Logger } from '@teambit/logger';\nimport { timeFormat } from '@teambit/toolbox.time.time-format';\nimport chalk from 'chalk';\nimport { OutsideWorkspaceError, type Workspace } from '@teambit/workspace';\nimport type { InstallMain, WorkspaceLinkOptions, WorkspaceLinkResults } from '../install.main.runtime';\nimport { ComponentListLinks, packageListLinks } from './component-list-links';\nimport { CoreAspectsLinks } from './core-aspects-links';\nimport { NestedComponentLinksLinks } from './nested-deps-in-nm-links';\nimport { RewireRow } from './rewire-row';\nimport { linkToDir } from './link-to-dir';\n\ntype LinkCommandOpts = {\n rewire: boolean;\n verbose: boolean;\n target: string;\n skipFetchingObjects?: boolean;\n peers?: boolean;\n compSummary?: boolean;\n};\nexport class LinkCommand implements Command {\n name = 'link [component-names...]';\n alias = '';\n description = 'create links between components and node_modules';\n extendedDescription = `creates links in node_modules for workspace components and core aspects, enabling import resolution.\nautomatically links all workspace components and Bit's core aspects to their respective package names.\nuseful for development when components need to reference each other or when debugging linking issues.`;\n helpUrl = 'reference/workspace/component-links';\n group = 'dependencies';\n private = false;\n arguments = [{ name: 'component-names...', description: 'names or IDs of the components to link' }];\n options = [\n ['j', 'json', 'return the output as JSON'],\n ['', 'verbose', 'verbose output'],\n ['r', 'rewire', 'Replace relative paths with module paths in code (e.g. \"../foo\" => \"@bit/foo\")'],\n [\n '',\n 'target <dir>',\n 'link to an external directory (similar to npm-link) so other projects could use these components',\n ],\n ['', 'skip-fetching-objects', 'skip fetch missing objects from remotes before linking'],\n ['', 'peers', 'link peer dependencies of the components too'],\n ['', 'comp-summary', 'show only a summary of component links instead of listing all components'],\n ] as CommandOptions;\n\n constructor(\n private install: InstallMain,\n /**\n * workspace extension.\n */\n private workspace: Workspace,\n\n /**\n * logger extension.\n */\n private logger: Logger\n ) {}\n\n async report([ids]: [string[]], opts: LinkCommandOpts) {\n const startTime = Date.now();\n const linkResults = await this.json([ids], opts);\n const endTime = Date.now();\n const numOfComponents = linkResults.legacyLinkResults?.length;\n const timeDiff = timeFormat(endTime - startTime);\n const coreAspectsLinksWithMainAspect = linkResults.coreAspectsLinks || [];\n if (linkResults.teambitBitLink) {\n coreAspectsLinksWithMainAspect.unshift(linkResults.teambitBitLink);\n }\n const numOfCoreAspects = coreAspectsLinksWithMainAspect.length;\n\n const title = formatTitle(\n `Linked ${numOfComponents} components and ${numOfCoreAspects} core aspects to node_modules for workspace: ${this.workspace.name}`\n );\n const coreLinks = CoreAspectsLinks({\n coreAspectsLinks: coreAspectsLinksWithMainAspect,\n verbose: opts.verbose,\n });\n const nonCorePackagesLinks = packageListLinks(linkResults.slotOriginatedLinks);\n const compsLinks = ComponentListLinks({\n componentListLinks: linkResults.legacyLinkResults,\n verbose: opts.verbose,\n compSummary: opts.compSummary,\n });\n const rewireRow = RewireRow({ legacyCodemodResults: linkResults.legacyLinkCodemodResults });\n const nestedLinks = NestedComponentLinksLinks({\n nestedDepsInNmLinks: linkResults.nestedDepsInNmLinks,\n verbose: opts.verbose,\n });\n const targetLinks = linkToDir(linkResults.linkToDirResults);\n const footer = formatHint(`Finished. ${timeDiff}`);\n return joinSections([\n title,\n coreLinks,\n nonCorePackagesLinks,\n compsLinks,\n rewireRow,\n nestedLinks,\n targetLinks,\n footer,\n ]);\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n async json([ids]: [string[]], opts: LinkCommandOpts): Promise<WorkspaceLinkResults> {\n if (!this.workspace) throw new OutsideWorkspaceError();\n this.logger.console(\n `Linking components and core aspects to node_modules for workspace: '${chalk.cyan(this.workspace.name)}'`\n );\n\n const linkOpts: WorkspaceLinkOptions = {\n linkToBitRoots: true,\n rewire: opts.rewire,\n linkCoreAspects: true,\n linkTeambitBit: true,\n linkToDir: opts.target,\n fetchObject: !opts.skipFetchingObjects,\n includePeers: opts.peers,\n };\n const linkResults = await this.install.link(linkOpts);\n return linkResults;\n }\n}\n"],"mappings":"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","ignoreList":[]}
package/install.cmd.tsx CHANGED
@@ -60,7 +60,7 @@ automatically imports components, compiles components, links to node_modules, an
60
60
  ['', 'skip-compile', 'do not compile components'],
61
61
  ['', 'skip-write-config-files', 'do not write config files (such as eslint, tsconfig, prettier, etc...)'],
62
62
  ['a', 'add-missing-deps', 'install all missing dependencies'],
63
- ['', 'skip-unavailable', 'when adding missing dependencies, skip those that are not found in the regisry'],
63
+ ['', 'skip-unavailable', 'when adding missing dependencies, skip those that are not found in the registry'],
64
64
  ['', 'add-missing-peers', 'install all missing peer dependencies'],
65
65
  [
66
66
  '',
@@ -69,8 +69,16 @@ automatically imports components, compiles components, links to node_modules, an
69
69
  ],
70
70
  ['', 'no-optional [noOptional]', 'do not install optional dependencies (works with pnpm only)'],
71
71
  ['', 'lockfile-only', 'dependencies are not written to node_modules. Only the lockfile is updated'],
72
- ['', 'allow-scripts [pkgNames]', 'a comma separated list of package names that are allowed to run installation scripts'],
73
- ['', 'disallow-scripts [pkgNames]', 'a comma separated list of package names that are NOT allowed to run installation scripts'],
72
+ [
73
+ '',
74
+ 'allow-scripts [pkgNames]',
75
+ 'a comma separated list of package names that are allowed to run installation scripts',
76
+ ],
77
+ [
78
+ '',
79
+ 'disallow-scripts [pkgNames]',
80
+ 'a comma separated list of package names that are NOT allowed to run installation scripts',
81
+ ],
74
82
  ] as CommandOptions;
75
83
 
76
84
  constructor(
@@ -168,7 +176,7 @@ automatically imports components, compiles components, links to node_modules, an
168
176
  return allowScripts;
169
177
  }
170
178
 
171
- private * _parseCommaSeparatedPkgList(pkgList: string): IterableIterator<string> {
179
+ private *_parseCommaSeparatedPkgList(pkgList: string): IterableIterator<string> {
172
180
  for (const pkgName of pkgList.split(',')) {
173
181
  const trimmed = pkgName.trim();
174
182
  if (trimmed) {
package/link/link.cmd.ts CHANGED
@@ -105,7 +105,7 @@ useful for development when components need to reference each other or when debu
105
105
  async json([ids]: [string[]], opts: LinkCommandOpts): Promise<WorkspaceLinkResults> {
106
106
  if (!this.workspace) throw new OutsideWorkspaceError();
107
107
  this.logger.console(
108
- `Linking components and core aspects to node_modules for workspaces: '${chalk.cyan(this.workspace.name)}'`
108
+ `Linking components and core aspects to node_modules for workspace: '${chalk.cyan(this.workspace.name)}'`
109
109
  );
110
110
 
111
111
  const linkOpts: WorkspaceLinkOptions = {
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/install",
3
- "version": "1.0.1060",
3
+ "version": "1.0.1062",
4
4
  "homepage": "https://bit.cloud/teambit/workspace/install",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.workspace",
8
8
  "name": "install",
9
- "version": "1.0.1060"
9
+ "version": "1.0.1062"
10
10
  },
11
11
  "dependencies": {
12
12
  "chalk": "4.1.2",
@@ -24,35 +24,35 @@
24
24
  "enquirer": "2.4.1",
25
25
  "table": "6.7.3",
26
26
  "@teambit/harmony": "0.4.12",
27
- "@teambit/cli": "0.0.1351",
28
- "@teambit/logger": "0.0.1444",
27
+ "@teambit/cli": "0.0.1352",
28
+ "@teambit/logger": "0.0.1445",
29
29
  "@teambit/component-issues": "0.0.177",
30
30
  "@teambit/component-package-version": "0.0.454",
31
31
  "@teambit/component-version": "1.0.4",
32
- "@teambit/component.sources": "0.0.188",
33
- "@teambit/dependencies.fs.linked-dependencies": "0.0.63",
34
- "@teambit/pkg.modules.component-package-name": "0.0.143",
32
+ "@teambit/component.sources": "0.0.189",
33
+ "@teambit/dependencies.fs.linked-dependencies": "0.0.64",
34
+ "@teambit/pkg.modules.component-package-name": "0.0.144",
35
35
  "@teambit/toolbox.json.jsonc-utils": "0.0.6",
36
- "@teambit/variants": "0.0.1619",
37
- "@teambit/workspace.modules.node-modules-linker": "0.0.367",
36
+ "@teambit/variants": "0.0.1620",
37
+ "@teambit/workspace.modules.node-modules-linker": "0.0.368",
38
38
  "@teambit/workspace.root-components": "1.0.1",
39
39
  "@teambit/bit-error": "0.0.404",
40
40
  "@teambit/toolbox.time.time-format": "0.0.502",
41
- "@teambit/dependency-resolver": "1.0.1060",
42
- "@teambit/workspace": "1.0.1060",
43
- "@teambit/application": "1.0.1060",
44
- "@teambit/aspect-loader": "1.0.1060",
45
- "@teambit/bundler": "1.0.1060",
46
- "@teambit/compiler": "1.0.1060",
47
- "@teambit/component": "1.0.1060",
48
- "@teambit/envs": "1.0.1060",
49
- "@teambit/generator": "1.0.1061",
50
- "@teambit/host-initializer": "0.0.773",
51
- "@teambit/ipc-events": "1.0.1060",
52
- "@teambit/issues": "1.0.1060",
53
- "@teambit/objects": "0.0.567",
54
- "@teambit/ui": "1.0.1060",
55
- "@teambit/workspace-config-files": "1.0.1060"
41
+ "@teambit/dependency-resolver": "1.0.1062",
42
+ "@teambit/workspace": "1.0.1062",
43
+ "@teambit/application": "1.0.1062",
44
+ "@teambit/aspect-loader": "1.0.1062",
45
+ "@teambit/bundler": "1.0.1062",
46
+ "@teambit/compiler": "1.0.1062",
47
+ "@teambit/component": "1.0.1062",
48
+ "@teambit/envs": "1.0.1062",
49
+ "@teambit/generator": "1.0.1063",
50
+ "@teambit/host-initializer": "0.0.775",
51
+ "@teambit/ipc-events": "1.0.1062",
52
+ "@teambit/issues": "1.0.1062",
53
+ "@teambit/objects": "0.0.569",
54
+ "@teambit/ui": "1.0.1062",
55
+ "@teambit/workspace-config-files": "1.0.1062"
56
56
  },
57
57
  "devDependencies": {
58
58
  "@types/fs-extra": "9.0.7",