@teambit/install 1.0.282 → 1.0.284
Sign up to get free protection for your applications and to get access to all the features.
- package/artifacts/__bit_junit.xml +3 -3
- package/artifacts/schema.json +1 -1
- package/dist/exceptions/dependency-type-not-supported-in-policy.js.map +1 -1
- package/dist/install.cmd.js +2 -2
- package/dist/install.cmd.js.map +1 -1
- package/dist/install.main.runtime.js +2 -2
- package/dist/install.main.runtime.js.map +1 -1
- package/dist/link/component-list-links.js +1 -1
- package/dist/link/component-list-links.js.map +1 -1
- package/dist/link/core-aspects-links.js +1 -1
- package/dist/link/core-aspects-links.js.map +1 -1
- package/dist/link/get-package-name-from-target.js.map +1 -1
- package/dist/link/link-row.js +1 -1
- package/dist/link/link-row.js.map +1 -1
- package/dist/link/link-to-dir.js +1 -1
- package/dist/link/link-to-dir.js.map +1 -1
- package/dist/link/link.cmd.js +2 -2
- package/dist/link/link.cmd.js.map +1 -1
- package/dist/link/nested-deps-in-nm-links.js +1 -1
- package/dist/link/nested-deps-in-nm-links.js.map +1 -1
- package/dist/link/rewire-row.js +1 -1
- package/dist/link/rewire-row.js.map +1 -1
- package/dist/pick-outdated-pkgs.js +1 -1
- package/dist/pick-outdated-pkgs.js.map +1 -1
- package/dist/pick-outdated-pkgs.spec.js +1 -1
- package/dist/pick-outdated-pkgs.spec.js.map +1 -1
- package/dist/uninstall.cmd.js +1 -1
- package/dist/update.cmd.js +1 -1
- package/package.json +13 -13
- /package/dist/{preview-1716520879631.js → preview-1716693760271.js} +0 -0
@@ -1,7 +1,7 @@
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
2
2
|
<testsuites tests="2" failures="0" errors="0" skipped="0">
|
3
|
-
<testsuite name="teambit.workspace/install@1.0.
|
4
|
-
<testcase classname="dist/pick-outdated-pkgs.spec.js" name="should render choices in correct order" time="0.
|
5
|
-
<testcase classname="dist/pick-outdated-pkgs.spec.js" name="should render choices with context information" time="0.
|
3
|
+
<testsuite name="teambit.workspace/install@1.0.284" tests="2" failures="0" errors="0" skipped="0">
|
4
|
+
<testcase classname="dist/pick-outdated-pkgs.spec.js" name="should render choices in correct order" time="0.114"/>
|
5
|
+
<testcase classname="dist/pick-outdated-pkgs.spec.js" name="should render choices with context information" time="0.001"/>
|
6
6
|
</testsuite>
|
7
7
|
</testsuites>
|
package/artifacts/schema.json
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_bitError","data","require","DependencyTypeNotSupportedInPolicy","BitError","constructor","type","exports"],"sources":["dependency-type-not-supported-in-policy.ts"],"sourcesContent":["import { BitError } from '@teambit/bit-error';\n\nexport class DependencyTypeNotSupportedInPolicy extends BitError {\n constructor(type: string) {\n super(`the workspace policy does not support ${type} dependencies`);\n }\n}\n"],"mappings":";;;;;;AAAA,SAAAA,UAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,SAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEO,MAAME,kCAAkC,SAASC,oBAAQ,CAAC;EAC/DC,WAAWA,CAACC,IAAY,EAAE;IACxB,KAAK,
|
1
|
+
{"version":3,"names":["_bitError","data","require","DependencyTypeNotSupportedInPolicy","BitError","constructor","type","exports"],"sources":["dependency-type-not-supported-in-policy.ts"],"sourcesContent":["import { BitError } from '@teambit/bit-error';\n\nexport class DependencyTypeNotSupportedInPolicy extends BitError {\n constructor(type: string) {\n super(`the workspace policy does not support ${type} dependencies`);\n }\n}\n"],"mappings":";;;;;;AAAA,SAAAA,UAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,SAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEO,MAAME,kCAAkC,SAASC,oBAAQ,CAAC;EAC/DC,WAAWA,CAACC,IAAY,EAAE;IACxB,KAAK,CAAC,yCAAyCA,IAAI,eAAe,CAAC;EACrE;AACF;AAACC,OAAA,CAAAJ,kCAAA,GAAAA,kCAAA","ignoreList":[]}
|
package/dist/install.cmd.js
CHANGED
@@ -19,8 +19,8 @@ function _workspace() {
|
|
19
19
|
};
|
20
20
|
return data;
|
21
21
|
}
|
22
|
-
function _interopRequireDefault(
|
23
|
-
function _defineProperty(
|
22
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
23
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
24
24
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
25
25
|
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
26
26
|
const recurringInstallFlagName = 'recurring-install';
|
package/dist/install.cmd.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","_workspace","obj","__esModule","default","_defineProperty","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","r","e","Symbol","toPrimitive","call","TypeError","String","Number","recurringInstallFlagName","InstallCmd","constructor","install","workspace","logger","name","description","report","packages","options","startTime","Date","now","OutsideWorkspaceError","updateExisting","consoleWarning","console","chalk","cyan","installOpts","lifecycleType","addMissingPeers","type","dedupe","skipDedupe","import","skipImport","savePrefix","addMissingDeps","compile","skipCompile","includeOptionalDeps","noOptional","writeConfigFiles","skipWriteConfigFiles","updateAll","update","recurringInstall","lockfileOnly","components","endTime","oldNonLoadedEnvs","getOldNonLoadedEnvs","formatOutput","numOfComps","toArray","length","toString","exports","calculateTime","diff","executionTime","summary","green","anotherInstallRequiredOutput","getAnotherInstallRequiredOutput","oldNonLoadedEnvsStr","join","firstPart","flag","suggestRecurringInstall","envsStr","docsLink","msg","yellow"],"sources":["install.cmd.tsx"],"sourcesContent":["import { Command, CommandOptions } from '@teambit/cli';\nimport { WorkspaceDependencyLifecycleType } from '@teambit/dependency-resolver';\nimport { Logger } from '@teambit/logger';\nimport chalk from 'chalk';\nimport { OutsideWorkspaceError, Workspace } from '@teambit/workspace';\nimport { 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 addMissingPeers: boolean;\n noOptional: boolean;\n recurringInstall: boolean;\n lockfileOnly: boolean;\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 = 'installs workspace dependencies';\n extendedDescription =\n 'when no package is specified, all workspace dependencies are installed and all workspace components are imported.';\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 = 'development';\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 ['', '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 ] 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 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 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 };\n const components = await this.install.install(packages, 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\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"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","_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","console","chalk","cyan","installOpts","lifecycleType","addMissingPeers","type","dedupe","skipDedupe","import","skipImport","savePrefix","addMissingDeps","compile","skipCompile","includeOptionalDeps","noOptional","writeConfigFiles","skipWriteConfigFiles","updateAll","update","recurringInstall","lockfileOnly","components","endTime","oldNonLoadedEnvs","getOldNonLoadedEnvs","formatOutput","numOfComps","toArray","length","toString","exports","calculateTime","diff","executionTime","summary","green","anotherInstallRequiredOutput","getAnotherInstallRequiredOutput","oldNonLoadedEnvsStr","join","firstPart","flag","suggestRecurringInstall","envsStr","docsLink","msg","yellow"],"sources":["install.cmd.tsx"],"sourcesContent":["import { Command, CommandOptions } from '@teambit/cli';\nimport { WorkspaceDependencyLifecycleType } from '@teambit/dependency-resolver';\nimport { Logger } from '@teambit/logger';\nimport chalk from 'chalk';\nimport { OutsideWorkspaceError, Workspace } from '@teambit/workspace';\nimport { 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 addMissingPeers: boolean;\n noOptional: boolean;\n recurringInstall: boolean;\n lockfileOnly: boolean;\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 = 'installs workspace dependencies';\n extendedDescription =\n 'when no package is specified, all workspace dependencies are installed and all workspace components are imported.';\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 = 'development';\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 ['', '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 ] 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 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 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 };\n const components = await this.install.install(packages, 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\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"],"mappings":"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","ignoreList":[]}
|
@@ -235,12 +235,12 @@ function _update() {
|
|
235
235
|
};
|
236
236
|
return data;
|
237
237
|
}
|
238
|
-
function _interopRequireDefault(
|
238
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
239
239
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
240
240
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
241
241
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
242
242
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
243
|
-
function _defineProperty(
|
243
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
244
244
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
245
245
|
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
246
246
|
class InstallMain {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_fsExtra","data","_interopRequireWildcard","require","_path","_interopRequireDefault","_bitRoots","_compiler","_cli","_chalk","_workspace","_lodash","_generator","_componentIdToPackageName","_application","_variants","_component","_dependenciesFs","_pMapSeries","_harmony","_workspaceModules","_envs","_ipcEvents","_componentIssues","_dependencyResolver","_workspaceConfigFiles","_logger","_issues","_componentPackageVersion","_objectHash","_exceptions","_install","_pickOutdatedPkgs","_link","_install2","_uninstall","_update","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","key","value","_toPropertyKey","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","InstallMain","constructor","dependencyResolver","logger","workspace","variants","compiler","envs","wsConfigFiles","app","generator","preLinkSlot","preInstallSlot","postInstallSlot","ipcEvents","Set","install","packages","options","inInstallContext","_addPackages","addMissingPeers","compDirMap","getComponentsDirectory","mergedRootPolicy","getWorkspacePolicy","depsFilterFn","generateFilterFnForDepsFromLocalRemote","pmInstallOptions","dedupe","copyPeerToRuntimeOnRoot","copyPeerToRuntimeOnComponents","dependencyFilterFn","overrides","config","hoistPatterns","packageImportMethod","missingPeers","getMissingPeerDependencies","path","missingPeerPackages","entries","map","peerName","range","console","pMapSeries","values","fn","res","_installModules","publishIpcEvent","registerPreLink","register","registerPreInstall","registerPostInstall","onComponentCreate","generateResults","runInstall","installMissing","ids","generateResult","dependencies","concat","installMissingDependencies","isApp","isEnv","id","nonLoadedEnvs","clearComponentCache","component","envId","calculateEnvId","toString","isLoaded","isEnvRegistered","addMissingDeps","skipIfExisting","writeConfigFiles","lifecycleType","DependencyTypeNotSupportedInPolicy","debug","join","resolver","getVersionResolver","resolvedPackagesP","packageName","resolveRemoteVersion","rootDir","resolvedPackages","Promise","all","newWorkspacePolicyEntries","resolvedPackage","version","versionWithPrefix","getVersionWithSavePrefix","overridePrefix","savePrefix","wantedRange","dependencyId","addToRootPolicy","updateExisting","persistConfig","pm","getPackageManager","name","chalk","cyan","getPackageManagerName","hasRootComponents","installer","getInstaller","calcManifestsOpts","nodeLinker","linkOpts","linkTeambitBit","linkCoreAspects","linkDepsResolvedFromEnv","linkNestedDepsInNM","isLegacy","linkedRootDeps","calculateLinks","componentsAndManifests","current","_getComponentsManifestsAndRootPolicy","autoInstallPeers","includeOptionalDeps","neverBuiltDependencies","hoistInjectedDependencies","rootComponents","updateAll","optimizeReportForNonTerminal","lockfileOnly","prevManifests","linkedDependencies","installCycle","hasMissingLocalComponents","forceTeambitHarmonyLink","hasHarmonyInRootPolicy","hasComponentsFromWorkspaceInMissingDeps","dependenciesChanged","installComponents","manifests","componentDirectoryMap","installTeambitBit","cacheCleared","linkCodemods","compile","compileStartTime","process","hrtime","compileOutputMessage","setStatusLine","consumer","componentLoader","clearComponentsCache","clearCache","skipClearFailedToLoadEnvs","compileOnWorkspace","initiator","CompilationInitiator","Install","consoleSuccess","tryWriteConfigFiles","recurringInstall","oldNonLoadedEnvs","getOldNonLoadedEnvs","add","manifestsHash","_getComponentsManifests","skipPrune","pruneModules","componentFsCache","deleteAllDependenciesDataCache","addConfiguredAspectsToWorkspacePolicy","addConfiguredGeneratorEnvsToWorkspacePolicy","rootDeps","devDependencies","omit","manifest","addedNewPkgs","_addMissingPackagesToRootPolicy","mergedRootPolicyWithMissingDeps","shouldWrite","isWorkspaceConfigWriteEnabled","err","clean","silent","throw","consoleFailure","message","rootPolicy","aspectsPackages","getConfiguredUserAspectsPackages","externalsOnly","aspectsPackage","configuredEnvs","getConfiguredEnvs","resolvedEnvs","compact","envIdStr","isCoreEnv","undefined","parsedId","resolveComponentId","inWs","hasId","comps","importAndGetMany","idWithVersion","resolveEnvIdWithPotentialVersionForConfig","split","getPackageName","env","_getMissingPackagesWithoutRootDeps","_getAllMissingPackages","pkg","list","uniq","comp","state","issues","getIssue","IssuesClasses","MissingPackagesDependenciesOnFs","d","missingPackages","flat","dependencyInstaller","installOptions","getComponentManifests","referenceLocalPackages","rootManifests","_getRootManifests","_updateRootDirs","getFailedToLoadEnvs","envsWithoutManifest","Array","from","intersection","rootDirs","bitRootCompsDir","getBitRootsDir","existingDirs","fs","readdir","dirName","dirPath","includes","remove","code","mkdir","recursive","nonRootManifests","workspaceDeps","getWorkspaceDepsOfBitRoots","workspaceDepsMeta","reduce","acc","depName","injected","envManifests","_getEnvManifests","appManifests","_getAppManifests","_getAllUsedEnvIds","fromEntries","getRootComponentDirByRootId","_getEnvDependencies","_getEnvPackage","dependenciesMeta","installConfig","hoistingLimits","policy","getEnvPolicyFromEnvId","selfPolicy","force","toStringWithoutVersion","envComponent","getEnvComponentByEnvId","finalVersion","snapToSemver","listAppsComponents","appPkgName","appManifest","find","Map","components","updateDependencies","componentPolicies","_getComponentsWithDependencyPolicies","variantPatterns","raw","variantPoliciesByPatterns","_variantPatternsToDepPolicesDict","outdatedPkgs","getOutdatedPkgsFromPolicies","patterns","forceVersionBump","outdatedPkgsToUpdate","off","pickOutdatedPkgs","on","updatedVariants","updatedComponents","applyUpdates","_updateVariantsPolicies","_updateComponentsConfig","_reloadConsumer","addDuplicateComponentAndPackageIssue","workspacePolicy","_consumer","removed","pkgName","componentIdToPackageName","found","getOrCreate","DuplicateComponentAndPackage","allComponentIds","listIds","componentId","componentConfigFile","index","depResolverConfig","aspects","DependencyResolverAspect","variantPattern","extensions","addSpecificComponentConfig","shouldMergeWithExisting","shouldMergeWithPrevious","bitMap","write","updateVariantPolicies","setExtension","overrideExisting","uninstallDependencies","removeFromRootPolicy","linker","getLinker","linkingOptions","linkResults","calculateLinkedDeps","workspaceRes","legacyResults","legacyLinkResults","linksResults","legacyLinkCodemodResults","codemodResults","linkToBitRoots","_linkAllComponentsToBitRoots","bitIds","toArray","linkToNodeModulesWithCodemod","rewire","link","createLinks","linkToDir","avoidHardLink","skipIfSymlinkValid","apps","dir","mkdirp","linkPkgsToBitRoots","workspacePath","rootComponentId","getRootComponentDir","remotes","scope","_legacyRemotes","reg","getRegistries","packageScopes","scopes","dependencyList","filtered","dep","ComponentDependency","isHub","some","startsWith","getMany","loadSeedersAsAspects","ComponentMap","as","componentDir","onRootAspectAddedSubscriber","_aspectId","onAspectsResolveSubscriber","aspectComponents","needLink","needInstall","promises","aspectComponent","aspectIdStr","visitedAspects","packagePath","getComponentPackagePath","exists","pathExists","provider","loggerExt","cli","_","createLogger","InstallAspect","registerGotEventSlot","eventName","clearAllComponentsCache","installExt","registerAddComponentsIssues","bind","registerOnComponentCreate","commands","InstallCmd","UninstallCmd","UpdateCmd","LinkCommand","registerOnRootAspectAdded","exports","Slot","withType","WorkspaceAspect","LoggerAspect","VariantsAspect","CLIAspect","CompilerAspect","IssuesAspect","EnvsAspect","ApplicationAspect","IpcEventsAspect","GeneratorAspect","WorkspaceConfigFilesAspect","MainRuntime","missingDeps","issue","addRuntime","_default","depsByProjectPaths","mapValues","hash"],"sources":["install.main.runtime.ts"],"sourcesContent":["import fs, { pathExists } from 'fs-extra';\nimport path from 'path';\nimport { getRootComponentDir, getBitRootsDir, linkPkgsToBitRoots } from '@teambit/bit-roots';\nimport { CompilerMain, CompilerAspect, CompilationInitiator } from '@teambit/compiler';\nimport { CLIMain, CommandList, CLIAspect, MainRuntime } from '@teambit/cli';\nimport chalk from 'chalk';\nimport { WorkspaceAspect, Workspace, ComponentConfigFile } from '@teambit/workspace';\nimport { compact, mapValues, omit, uniq, intersection } from 'lodash';\nimport { ProjectManifest } from '@pnpm/types';\nimport { GenerateResult, GeneratorAspect, GeneratorMain } from '@teambit/generator';\nimport componentIdToPackageName from '@teambit/legacy/dist/utils/bit/component-id-to-package-name';\nimport { ApplicationMain, ApplicationAspect } from '@teambit/application';\nimport { VariantsMain, Patterns, VariantsAspect } from '@teambit/variants';\nimport { Component, ComponentID, ComponentMap } from '@teambit/component';\nimport { createLinks } from '@teambit/dependencies.fs.linked-dependencies';\nimport pMapSeries from 'p-map-series';\nimport { Slot, SlotRegistry } from '@teambit/harmony';\nimport {\n CodemodResult,\n linkToNodeModulesWithCodemod,\n NodeModulesLinksResult,\n} from '@teambit/workspace.modules.node-modules-linker';\nimport { EnvsMain, EnvsAspect } from '@teambit/envs';\nimport { IpcEventsAspect, IpcEventsMain } from '@teambit/ipc-events';\nimport { IssuesClasses } from '@teambit/component-issues';\nimport {\n GetComponentManifestsOptions,\n WorkspaceDependencyLifecycleType,\n DependencyResolverMain,\n DependencyInstaller,\n DependencyResolverAspect,\n PackageManagerInstallOptions,\n ComponentDependency,\n VariantPolicyConfigObject,\n WorkspacePolicyEntry,\n LinkingOptions,\n LinkResults,\n DependencyList,\n MergedOutdatedPkg,\n WorkspacePolicy,\n UpdatedComponent,\n} from '@teambit/dependency-resolver';\nimport { WorkspaceConfigFilesAspect, WorkspaceConfigFilesMain } from '@teambit/workspace-config-files';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { IssuesAspect, IssuesMain } from '@teambit/issues';\nimport { snapToSemver } from '@teambit/component-package-version';\nimport hash from 'object-hash';\nimport { DependencyTypeNotSupportedInPolicy } from './exceptions';\nimport { InstallAspect } from './install.aspect';\nimport { pickOutdatedPkgs } from './pick-outdated-pkgs';\nimport { LinkCommand } from './link';\nimport InstallCmd from './install.cmd';\nimport UninstallCmd from './uninstall.cmd';\nimport UpdateCmd from './update.cmd';\n\nexport type WorkspaceLinkOptions = LinkingOptions & {\n rootPolicy?: WorkspacePolicy;\n linkToBitRoots?: boolean;\n includePeers?: boolean;\n};\n\nexport type WorkspaceLinkResults = {\n legacyLinkResults?: NodeModulesLinksResult[];\n legacyLinkCodemodResults?: CodemodResult[];\n} & LinkResults;\n\nexport type WorkspaceInstallOptions = {\n addMissingDeps?: boolean;\n addMissingPeers?: boolean;\n lifecycleType?: WorkspaceDependencyLifecycleType;\n dedupe?: boolean;\n import?: boolean;\n copyPeerToRuntimeOnRoot?: boolean;\n copyPeerToRuntimeOnComponents?: boolean;\n updateExisting?: boolean;\n skipIfExisting?: boolean;\n savePrefix?: string;\n compile?: boolean;\n includeOptionalDeps?: boolean;\n updateAll?: boolean;\n recurringInstall?: boolean;\n optimizeReportForNonTerminal?: boolean;\n lockfileOnly?: boolean;\n writeConfigFiles?: boolean;\n skipPrune?: boolean;\n};\n\nexport type ModulesInstallOptions = Omit<WorkspaceInstallOptions, 'updateExisting' | 'lifecycleType' | 'import'>;\n\ntype PreLink = (linkOpts?: WorkspaceLinkOptions) => Promise<void>;\ntype PreInstall = (installOpts?: WorkspaceInstallOptions) => Promise<void>;\ntype PostInstall = () => Promise<void>;\n\ntype PreLinkSlot = SlotRegistry<PreLink>;\ntype PreInstallSlot = SlotRegistry<PreInstall>;\ntype PostInstallSlot = SlotRegistry<PostInstall>;\n\ntype GetComponentsAndManifestsOptions = Omit<\n GetComponentManifestsOptions,\n 'componentDirectoryMap' | 'rootPolicy' | 'rootDir'\n> &\n Pick<PackageManagerInstallOptions, 'nodeLinker'>;\n\nexport class InstallMain {\n private visitedAspects: Set<string> = new Set();\n\n constructor(\n private dependencyResolver: DependencyResolverMain,\n\n private logger: Logger,\n\n private workspace: Workspace,\n\n private variants: VariantsMain,\n\n private compiler: CompilerMain,\n\n private envs: EnvsMain,\n\n private wsConfigFiles: WorkspaceConfigFilesMain,\n\n private app: ApplicationMain,\n\n private generator: GeneratorMain,\n\n private preLinkSlot: PreLinkSlot,\n\n private preInstallSlot: PreInstallSlot,\n\n private postInstallSlot: PostInstallSlot,\n\n private ipcEvents: IpcEventsMain\n ) {}\n /**\n * Install dependencies for all components in the workspace\n *\n * @returns\n * @memberof Workspace\n */\n async install(packages?: string[], options?: WorkspaceInstallOptions): Promise<ComponentMap<string>> {\n // set workspace in install context\n this.workspace.inInstallContext = true;\n if (packages && packages.length) {\n await this._addPackages(packages, options);\n }\n if (options?.addMissingPeers) {\n const compDirMap = await this.getComponentsDirectory([]);\n const mergedRootPolicy = this.dependencyResolver.getWorkspacePolicy();\n const depsFilterFn = await this.generateFilterFnForDepsFromLocalRemote();\n const pmInstallOptions: PackageManagerInstallOptions = {\n dedupe: options?.dedupe,\n copyPeerToRuntimeOnRoot: options?.copyPeerToRuntimeOnRoot ?? true,\n copyPeerToRuntimeOnComponents: options?.copyPeerToRuntimeOnComponents ?? false,\n dependencyFilterFn: depsFilterFn,\n overrides: this.dependencyResolver.config.overrides,\n hoistPatterns: this.dependencyResolver.config.hoistPatterns,\n packageImportMethod: this.dependencyResolver.config.packageImportMethod,\n };\n const missingPeers = await this.dependencyResolver.getMissingPeerDependencies(\n this.workspace.path,\n mergedRootPolicy,\n compDirMap,\n pmInstallOptions\n );\n if (missingPeers) {\n const missingPeerPackages = Object.entries(missingPeers).map(([peerName, range]) => `${peerName}@${range}`);\n await this._addPackages(missingPeerPackages, options);\n } else {\n this.logger.console('No missing peer dependencies found.');\n }\n }\n await pMapSeries(this.preInstallSlot.values(), (fn) => fn(options)); // import objects if not disabled in options\n const res = await this._installModules(options);\n this.workspace.inInstallContext = false;\n\n await this.ipcEvents.publishIpcEvent('onPostInstall');\n\n return res;\n }\n\n registerPreLink(fn: PreLink) {\n this.preLinkSlot.register(fn);\n }\n\n registerPreInstall(fn: PreInstall) {\n this.preInstallSlot.register(fn);\n }\n\n registerPostInstall(fn: PostInstall) {\n this.postInstallSlot.register(fn);\n }\n\n async onComponentCreate(generateResults: GenerateResult[]) {\n this.workspace.inInstallContext = true;\n let runInstall = false;\n let packages: string[] = [];\n let installMissing = false;\n\n const ids = generateResults.map((generateResult) => {\n if (generateResult.dependencies && generateResult.dependencies.length) {\n packages = packages.concat(generateResult.dependencies);\n runInstall = true;\n }\n if (generateResult.installMissingDependencies) {\n installMissing = true;\n runInstall = true;\n }\n if (generateResult.isApp || generateResult.isEnv) {\n runInstall = true;\n }\n return generateResult.id;\n });\n const nonLoadedEnvs: string[] = [];\n\n ids.map((id) => this.workspace.clearComponentCache(id));\n await pMapSeries(ids, async (id) => {\n const component = await this.workspace.get(id);\n // const envId = await this.envs.getEnvId(component);\n const envId = (await this.envs.calculateEnvId(component)).toString();\n const isLoaded = this.envs.isEnvRegistered(envId);\n if (!isLoaded) {\n nonLoadedEnvs.push(envId);\n }\n return component;\n });\n if (nonLoadedEnvs.length) {\n runInstall = true;\n }\n if (!runInstall) {\n this.workspace.inInstallContext = false;\n return;\n }\n // this.logger.console(\n // `the following environments are not installed yet: ${nonLoadedEnvs.join(', ')}. installing them now...`\n // );\n await this.install(packages, {\n addMissingDeps: installMissing,\n skipIfExisting: true,\n writeConfigFiles: false,\n // skipPrune: true,\n });\n }\n\n private async _addPackages(packages: string[], options?: WorkspaceInstallOptions) {\n if ((options?.lifecycleType as string) === 'dev') {\n throw new DependencyTypeNotSupportedInPolicy(options?.lifecycleType as string);\n }\n this.logger.debug(`installing the following packages: ${packages.join()}`);\n const resolver = await this.dependencyResolver.getVersionResolver();\n const resolvedPackagesP = packages.map((packageName) =>\n resolver.resolveRemoteVersion(packageName, {\n rootDir: this.workspace.path,\n })\n );\n const resolvedPackages = await Promise.all(resolvedPackagesP);\n const newWorkspacePolicyEntries: WorkspacePolicyEntry[] = [];\n resolvedPackages.forEach((resolvedPackage) => {\n if (resolvedPackage.version) {\n const versionWithPrefix = this.dependencyResolver.getVersionWithSavePrefix({\n version: resolvedPackage.version,\n overridePrefix: options?.savePrefix,\n wantedRange: resolvedPackage.wantedRange,\n });\n newWorkspacePolicyEntries.push({\n dependencyId: resolvedPackage.packageName,\n value: {\n version: versionWithPrefix,\n },\n lifecycleType: options?.lifecycleType || 'runtime',\n });\n }\n });\n this.dependencyResolver.addToRootPolicy(newWorkspacePolicyEntries, {\n updateExisting: options?.updateExisting ?? false,\n skipIfExisting: options?.skipIfExisting ?? false,\n });\n await this.dependencyResolver.persistConfig('install');\n }\n\n private async _installModules(options?: ModulesInstallOptions): Promise<ComponentMap<string>> {\n const pm = this.dependencyResolver.getPackageManager();\n this.logger.console(\n `installing dependencies in workspace using ${pm?.name} (${chalk.cyan(\n this.dependencyResolver.getPackageManagerName()\n )})`\n );\n this.logger.debug(`installing dependencies in workspace with options`, options);\n const depsFilterFn = await this.generateFilterFnForDepsFromLocalRemote();\n const hasRootComponents = this.dependencyResolver.hasRootComponents();\n // TODO: pass get install options\n const installer = this.dependencyResolver.getInstaller({});\n const calcManifestsOpts: GetComponentsAndManifestsOptions = {\n copyPeerToRuntimeOnComponents: options?.copyPeerToRuntimeOnComponents ?? false,\n copyPeerToRuntimeOnRoot: options?.copyPeerToRuntimeOnRoot ?? true,\n dedupe: !hasRootComponents && options?.dedupe,\n dependencyFilterFn: depsFilterFn,\n nodeLinker: this.dependencyResolver.nodeLinker(),\n };\n const linkOpts = {\n linkTeambitBit: true,\n linkCoreAspects: this.dependencyResolver.linkCoreAspects(),\n linkDepsResolvedFromEnv: !hasRootComponents,\n linkNestedDepsInNM: !this.workspace.isLegacy && !hasRootComponents,\n };\n const { linkedRootDeps } = await this.calculateLinks(linkOpts);\n // eslint-disable-next-line prefer-const\n let { mergedRootPolicy, componentsAndManifests: current } = await this._getComponentsManifestsAndRootPolicy(\n installer,\n {\n ...calcManifestsOpts,\n addMissingDeps: options?.addMissingDeps,\n linkedRootDeps,\n }\n );\n\n const pmInstallOptions: PackageManagerInstallOptions = {\n ...calcManifestsOpts,\n autoInstallPeers: this.dependencyResolver.config.autoInstallPeers,\n includeOptionalDeps: options?.includeOptionalDeps,\n neverBuiltDependencies: this.dependencyResolver.config.neverBuiltDependencies,\n overrides: this.dependencyResolver.config.overrides,\n hoistPatterns: this.dependencyResolver.config.hoistPatterns,\n hoistInjectedDependencies: this.dependencyResolver.config.hoistInjectedDependencies,\n packageImportMethod: this.dependencyResolver.config.packageImportMethod,\n rootComponents: hasRootComponents,\n updateAll: options?.updateAll,\n optimizeReportForNonTerminal: options?.optimizeReportForNonTerminal,\n lockfileOnly: options?.lockfileOnly,\n };\n const prevManifests = new Set<string>();\n // TODO: this make duplicate\n // this.logger.consoleSuccess();\n const linkedDependencies = {\n [this.workspace.path]: linkedRootDeps,\n };\n const compDirMap = await this.getComponentsDirectory([]);\n let installCycle = 0;\n let hasMissingLocalComponents = true;\n const forceTeambitHarmonyLink = !this.dependencyResolver.hasHarmonyInRootPolicy();\n /* eslint-disable no-await-in-loop */\n do {\n // In case there are missing local components,\n // we'll need to make another round of installation as on the first round the missing local components\n // are not added to the manifests.\n // This is an issue when installation is done using root components.\n hasMissingLocalComponents = hasRootComponents && hasComponentsFromWorkspaceInMissingDeps(current);\n const { dependenciesChanged } = await installer.installComponents(\n this.workspace.path,\n current.manifests,\n mergedRootPolicy,\n current.componentDirectoryMap,\n {\n linkedDependencies,\n installTeambitBit: false,\n forceTeambitHarmonyLink,\n },\n pmInstallOptions\n );\n let cacheCleared = false;\n await this.linkCodemods(compDirMap);\n if (options?.compile ?? true) {\n const compileStartTime = process.hrtime();\n const compileOutputMessage = `compiling components`;\n this.logger.setStatusLine(compileOutputMessage);\n // We need to clear cache before compiling the components or it might compile them with the default env\n // incorrectly in case the env was not loaded correctly before the install\n this.workspace.consumer.componentLoader.clearComponentsCache();\n // We don't want to clear the failed to load envs because we want to show the warning at the end\n await this.workspace.clearCache({ skipClearFailedToLoadEnvs: true });\n cacheCleared = true;\n await this.compiler.compileOnWorkspace([], { initiator: CompilationInitiator.Install });\n this.logger.consoleSuccess(compileOutputMessage, compileStartTime);\n }\n if (options?.writeConfigFiles ?? true) {\n await this.tryWriteConfigFiles(!cacheCleared);\n }\n if (!dependenciesChanged) break;\n if (!options?.recurringInstall) break;\n const oldNonLoadedEnvs = this.getOldNonLoadedEnvs();\n if (!oldNonLoadedEnvs.length) break;\n prevManifests.add(manifestsHash(current.manifests));\n // If we run compile we do the clear cache before the compilation so no need to clean it again (it's an expensive\n // operation)\n if (!cacheCleared) {\n // We need to clear cache before creating the new component manifests.\n this.workspace.consumer.componentLoader.clearComponentsCache();\n // We don't want to clear the failed to load envs because we want to show the warning at the end\n await this.workspace.clearCache({ skipClearFailedToLoadEnvs: true });\n }\n current = await this._getComponentsManifests(installer, mergedRootPolicy, calcManifestsOpts);\n installCycle += 1;\n } while ((!prevManifests.has(manifestsHash(current.manifests)) || hasMissingLocalComponents) && installCycle < 5);\n if (!options?.lockfileOnly && !options?.skipPrune) {\n // We clean node_modules only after the last install.\n // Otherwise, we might load an env from a location that we later remove.\n await installer.pruneModules(this.workspace.path);\n }\n await this.workspace.consumer.componentFsCache.deleteAllDependenciesDataCache();\n /* eslint-enable no-await-in-loop */\n return current.componentDirectoryMap;\n }\n\n private async _getComponentsManifestsAndRootPolicy(\n installer: DependencyInstaller,\n options: GetComponentsAndManifestsOptions & {\n addMissingDeps?: boolean;\n linkedRootDeps: Record<string, string>;\n }\n ): Promise<{ componentsAndManifests: ComponentsAndManifests; mergedRootPolicy: WorkspacePolicy }> {\n const mergedRootPolicy = await this.addConfiguredAspectsToWorkspacePolicy();\n await this.addConfiguredGeneratorEnvsToWorkspacePolicy(mergedRootPolicy);\n const componentsAndManifests = await this._getComponentsManifests(installer, mergedRootPolicy, options);\n if (!options?.addMissingDeps) {\n return { componentsAndManifests, mergedRootPolicy };\n }\n const rootDeps = new Set(\n Object.keys({\n ...componentsAndManifests.manifests[this.workspace.path].devDependencies,\n ...componentsAndManifests.manifests[this.workspace.path].dependencies,\n ...options.linkedRootDeps,\n })\n );\n Object.values(omit(componentsAndManifests.manifests, [this.workspace.path])).forEach((manifest) => {\n if ((manifest as ProjectManifest).name) {\n rootDeps.add((manifest as ProjectManifest).name!); // eslint-disable-line @typescript-eslint/no-non-null-assertion\n }\n });\n const addedNewPkgs = await this._addMissingPackagesToRootPolicy(rootDeps);\n if (!addedNewPkgs) {\n return { componentsAndManifests, mergedRootPolicy };\n }\n const mergedRootPolicyWithMissingDeps = await this.addConfiguredAspectsToWorkspacePolicy();\n await this.addConfiguredGeneratorEnvsToWorkspacePolicy(mergedRootPolicyWithMissingDeps);\n return {\n mergedRootPolicy: mergedRootPolicyWithMissingDeps,\n componentsAndManifests: await this._getComponentsManifests(installer, mergedRootPolicyWithMissingDeps, options),\n };\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(clearCache: boolean) {\n const shouldWrite = this.wsConfigFiles.isWorkspaceConfigWriteEnabled();\n if (!shouldWrite) return;\n if (clearCache) {\n await this.workspace.clearCache({ skipClearFailedToLoadEnvs: true });\n }\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 addConfiguredAspectsToWorkspacePolicy(): Promise<WorkspacePolicy> {\n const rootPolicy = this.dependencyResolver.getWorkspacePolicy();\n const aspectsPackages = await this.workspace.getConfiguredUserAspectsPackages({ externalsOnly: true });\n aspectsPackages.forEach((aspectsPackage) => {\n rootPolicy.add(\n {\n dependencyId: aspectsPackage.packageName,\n value: {\n version: aspectsPackage.version,\n },\n lifecycleType: 'runtime',\n },\n // If it's already exist from the root, take the version from the root policy\n { skipIfExisting: true }\n );\n });\n return rootPolicy;\n }\n\n private async addConfiguredGeneratorEnvsToWorkspacePolicy(rootPolicy: WorkspacePolicy): Promise<void> {\n const configuredEnvs = this.generator.getConfiguredEnvs();\n const resolvedEnvs = compact(\n await Promise.all(\n configuredEnvs.map(async (envIdStr) => {\n if (this.envs.isCoreEnv(envIdStr)) {\n return undefined;\n }\n const parsedId = await this.workspace.resolveComponentId(envIdStr);\n // If we have the env in the workspace, we don't want to install it\n const inWs = await this.workspace.hasId(parsedId);\n if (inWs) {\n return undefined;\n }\n const comps = await this.workspace.importAndGetMany(\n [parsedId],\n `to get the env ${parsedId.toString()} for installation`\n );\n const idWithVersion = await this.workspace.resolveEnvIdWithPotentialVersionForConfig(parsedId);\n const version = idWithVersion.split('@')[1] || '*';\n const packageName = this.dependencyResolver.getPackageName(comps[0]);\n return {\n packageName,\n version,\n };\n })\n )\n );\n\n resolvedEnvs.forEach((env) => {\n rootPolicy.add(\n {\n dependencyId: env.packageName,\n value: {\n version: env.version,\n },\n lifecycleType: 'runtime',\n },\n // If it's already exist from the root, take the version from the root policy\n { skipIfExisting: true }\n );\n });\n }\n\n private async _addMissingPackagesToRootPolicy(\n rootDeps: Set<string>,\n options?: WorkspaceInstallOptions\n ): Promise<boolean> {\n const packages = await this._getMissingPackagesWithoutRootDeps(rootDeps);\n if (packages && packages.length) {\n await this._addPackages(packages, options);\n }\n return packages.length > 0;\n }\n\n private async _getMissingPackagesWithoutRootDeps(rootDeps: Set<string>) {\n const packages = await this._getAllMissingPackages();\n return packages.filter((pkg) => !rootDeps.has(pkg));\n }\n\n private async _getAllMissingPackages(): Promise<string[]> {\n const comps = await this.workspace.list();\n return uniq(\n comps\n .map((comp) => {\n const data = comp.state.issues.getIssue(IssuesClasses.MissingPackagesDependenciesOnFs)?.data || [];\n return data.map((d) => d.missingPackages).flat();\n })\n .flat()\n );\n }\n\n private async _getComponentsManifests(\n dependencyInstaller: DependencyInstaller,\n rootPolicy: WorkspacePolicy,\n installOptions: GetComponentsAndManifestsOptions\n ): Promise<ComponentsAndManifests> {\n const componentDirectoryMap = await this.getComponentsDirectory([]);\n let manifests = await dependencyInstaller.getComponentManifests({\n ...installOptions,\n componentDirectoryMap,\n rootPolicy,\n rootDir: this.workspace.path,\n referenceLocalPackages: this.dependencyResolver.hasRootComponents() && installOptions.nodeLinker === 'isolated',\n });\n\n if (this.dependencyResolver.hasRootComponents()) {\n const rootManifests = await this._getRootManifests(manifests);\n await this._updateRootDirs(Object.keys(rootManifests));\n manifests = {\n ...manifests,\n ...rootManifests,\n };\n }\n return {\n componentDirectoryMap,\n manifests,\n };\n }\n\n /**\n * This function returns a list of old non-loaded environments names.\n * @returns an array of strings called `oldNonLoadedEnvs`. This array contains the names of environment variables that\n * failed to load as extensions and are also don't have an env.jsonc file.\n * If this list is not empty, then the user might need to run another install to make sure all dependencies resolved\n * correctly\n */\n public getOldNonLoadedEnvs() {\n const nonLoadedEnvs = this.envs.getFailedToLoadEnvs();\n const envsWithoutManifest = Array.from(this.dependencyResolver.envsWithoutManifest);\n const oldNonLoadedEnvs = intersection(nonLoadedEnvs, envsWithoutManifest);\n return oldNonLoadedEnvs;\n }\n\n private async _updateRootDirs(rootDirs: string[]) {\n try {\n const bitRootCompsDir = getBitRootsDir(this.workspace.path);\n const existingDirs = await fs.readdir(bitRootCompsDir);\n await Promise.all(\n existingDirs.map(async (dirName) => {\n const dirPath = path.join(bitRootCompsDir, dirName);\n if (!rootDirs.includes(dirPath)) {\n await fs.remove(dirPath);\n }\n })\n );\n } catch (err: any) {\n if (err.code !== 'ENOENT') throw err;\n }\n await Promise.all(rootDirs.map((dirPath) => fs.mkdir(dirPath, { recursive: true })));\n }\n\n private async _getRootManifests(\n manifests: Record<string, ProjectManifest>\n ): Promise<Record<string, ProjectManifest>> {\n const nonRootManifests = Object.values(manifests).filter(({ name }) => name !== 'workspace');\n const workspaceDeps = this.dependencyResolver.getWorkspaceDepsOfBitRoots(nonRootManifests);\n const workspaceDepsMeta = Object.keys(workspaceDeps).reduce((acc, depName) => {\n acc[depName] = { injected: true };\n return acc;\n }, {});\n const envManifests = await this._getEnvManifests(workspaceDeps, workspaceDepsMeta);\n const appManifests = await this._getAppManifests(manifests, workspaceDeps, workspaceDepsMeta);\n return {\n ...envManifests,\n ...appManifests,\n };\n }\n\n private async _getEnvManifests(\n workspaceDeps: Record<string, string>,\n workspaceDepsMeta: Record<string, { injected: true }>\n ): Promise<Record<string, ProjectManifest>> {\n const envs = await this._getAllUsedEnvIds();\n return Object.fromEntries(\n await Promise.all(\n envs.map(async (envId) => {\n return [\n await this.getRootComponentDirByRootId(this.workspace.path, envId),\n {\n dependencies: {\n ...(await this._getEnvDependencies(envId)),\n ...workspaceDeps,\n ...(await this._getEnvPackage(envId)),\n },\n dependenciesMeta: workspaceDepsMeta,\n installConfig: {\n hoistingLimits: 'workspaces',\n },\n },\n ];\n })\n )\n );\n }\n\n private async _getEnvDependencies(envId: ComponentID): Promise<Record<string, string>> {\n const policy = await this.dependencyResolver.getEnvPolicyFromEnvId(envId);\n if (!policy) return {};\n return Object.fromEntries(\n policy.selfPolicy.entries\n .filter(({ force, value }) => force && value.version !== '-')\n .map(({ dependencyId, value }) => [dependencyId, value.version])\n );\n }\n\n /**\n * Return the package name of the env with its version.\n * (only if the env is not a core env and is not in the workspace)\n * @param envId\n * @returns\n */\n private async _getEnvPackage(envId: ComponentID): Promise<Record<string, string> | undefined> {\n if (this.envs.isCoreEnv(envId.toStringWithoutVersion())) return undefined;\n const inWs = await this.workspace.hasId(envId);\n if (inWs) return undefined;\n const envComponent = await this.envs.getEnvComponentByEnvId(envId.toString(), envId.toString());\n if (!envComponent) return undefined;\n const packageName = this.dependencyResolver.getPackageName(envComponent);\n const version = envId.version;\n const finalVersion = snapToSemver(version as string);\n return { [packageName]: finalVersion };\n }\n\n private async _getAppManifests(\n manifests: Record<string, ProjectManifest>,\n workspaceDeps: Record<string, string>,\n workspaceDepsMeta: Record<string, { injected: true }>\n ): Promise<Record<string, ProjectManifest>> {\n return Object.fromEntries(\n compact(\n await Promise.all(\n (\n await this.app.listAppsComponents()\n ).map(async (app) => {\n const appPkgName = this.dependencyResolver.getPackageName(app);\n const appManifest = Object.values(manifests).find(({ name }) => name === appPkgName);\n if (!appManifest) return null;\n const envId = await this.envs.calculateEnvId(app);\n return [\n await this.getRootComponentDirByRootId(this.workspace.path, app.id),\n {\n ...omit(appManifest, ['name', 'version']),\n dependencies: {\n ...(await this._getEnvDependencies(envId)),\n ...appManifest.dependencies,\n ...workspaceDeps,\n },\n dependenciesMeta: {\n ...appManifest.dependenciesMeta,\n ...workspaceDepsMeta,\n },\n installConfig: {\n hoistingLimits: 'workspaces',\n },\n },\n ];\n })\n )\n )\n );\n }\n\n private async _getAllUsedEnvIds(): Promise<ComponentID[]> {\n const envs = new Map<string, ComponentID>();\n const components = await this.workspace.list();\n await pMapSeries(components, async (component) => {\n const envId = await this.envs.calculateEnvId(component);\n envs.set(envId.toString(), envId);\n });\n return Array.from(envs.values());\n }\n\n /**\n * Updates out-of-date dependencies in the workspace.\n *\n * @param options.all {Boolean} updates all outdated dependencies without showing a prompt.\n */\n async updateDependencies(options: {\n forceVersionBump?: 'major' | 'minor' | 'patch' | 'compatible';\n patterns?: string[];\n all: boolean;\n }): Promise<ComponentMap<string> | null> {\n const componentPolicies = await this._getComponentsWithDependencyPolicies();\n const variantPatterns = this.variants.raw();\n const variantPoliciesByPatterns = this._variantPatternsToDepPolicesDict(variantPatterns);\n const components = await this.workspace.list();\n const outdatedPkgs = await this.dependencyResolver.getOutdatedPkgsFromPolicies({\n rootDir: this.workspace.path,\n variantPoliciesByPatterns,\n componentPolicies,\n components,\n patterns: options.patterns,\n forceVersionBump: options.forceVersionBump,\n });\n if (outdatedPkgs == null) {\n this.logger.consoleFailure('No dependencies found that match the patterns');\n return null;\n }\n let outdatedPkgsToUpdate!: MergedOutdatedPkg[];\n if (options.all) {\n outdatedPkgsToUpdate = outdatedPkgs;\n } else {\n this.logger.off();\n outdatedPkgsToUpdate = await pickOutdatedPkgs(outdatedPkgs);\n this.logger.on();\n }\n if (outdatedPkgsToUpdate.length === 0) {\n this.logger.consoleSuccess('No outdated dependencies found');\n if (options.forceVersionBump === 'compatible') {\n this.logger.console(\n \"If you want to find new versions that don't match the current version ranges, retry with the --latest flag\"\n );\n }\n return null;\n }\n const { updatedVariants, updatedComponents } = this.dependencyResolver.applyUpdates(outdatedPkgsToUpdate, {\n variantPoliciesByPatterns,\n });\n await this._updateVariantsPolicies(variantPatterns, updatedVariants);\n await this._updateComponentsConfig(updatedComponents);\n await this.workspace._reloadConsumer();\n return this._installModules({ dedupe: true });\n }\n\n async addDuplicateComponentAndPackageIssue(components: Component[]) {\n const workspacePolicy = this.dependencyResolver.getWorkspacePolicy();\n components.forEach((component) => {\n if (component.state._consumer.removed) return;\n const pkgName = componentIdToPackageName(component.state._consumer);\n const found = workspacePolicy.find(pkgName);\n if (found) {\n component.state.issues.getOrCreate(IssuesClasses.DuplicateComponentAndPackage).data = found.dependencyId;\n }\n });\n }\n\n private async _getComponentsWithDependencyPolicies() {\n const allComponentIds = this.workspace.listIds();\n const componentPolicies = [] as Array<{ componentId: ComponentID; policy: any }>;\n (\n await Promise.all<ComponentConfigFile | undefined>(\n allComponentIds.map((componentId) => this.workspace.componentConfigFile(componentId))\n )\n ).forEach((componentConfigFile, index) => {\n if (!componentConfigFile) return;\n const depResolverConfig = componentConfigFile.aspects.get(DependencyResolverAspect.id);\n if (!depResolverConfig) return;\n const componentId = allComponentIds[index];\n componentPolicies.push({ componentId, policy: depResolverConfig.config.policy });\n });\n return componentPolicies;\n }\n\n private _variantPatternsToDepPolicesDict(variantPatterns: Patterns): Record<string, VariantPolicyConfigObject> {\n const variantPoliciesByPatterns: Record<string, VariantPolicyConfigObject> = {};\n for (const [variantPattern, extensions] of Object.entries(variantPatterns)) {\n if (extensions[DependencyResolverAspect.id]?.policy) {\n variantPoliciesByPatterns[variantPattern] = extensions[DependencyResolverAspect.id]?.policy;\n }\n }\n return variantPoliciesByPatterns;\n }\n\n private async _updateComponentsConfig(updatedComponents: UpdatedComponent[]) {\n if (updatedComponents.length === 0) return;\n await Promise.all(\n updatedComponents.map(({ componentId, config }) => {\n return this.workspace.addSpecificComponentConfig(componentId, DependencyResolverAspect.id, config, {\n shouldMergeWithExisting: true,\n shouldMergeWithPrevious: true,\n });\n })\n );\n await this.workspace.bitMap.write('update (dependencies)');\n }\n\n private async _updateVariantsPolicies(variantPatterns: Record<string, any>, updateVariantPolicies: string[]) {\n for (const variantPattern of updateVariantPolicies) {\n this.variants.setExtension(\n variantPattern,\n DependencyResolverAspect.id,\n variantPatterns[variantPattern][DependencyResolverAspect.id],\n { overrideExisting: true }\n );\n }\n await this.dependencyResolver.persistConfig('update dependencies');\n }\n\n /**\n * Uninstall the specified packages from dependencies.\n *\n * @param {string[]} the list of packages that should be removed from dependencies.\n */\n async uninstallDependencies(packages: string[]) {\n this.dependencyResolver.removeFromRootPolicy(packages);\n await this.dependencyResolver.persistConfig('uninstall dependencies');\n return this._installModules({ dedupe: true });\n }\n\n /**\n * This function returns all the locations of the external links that should be created inside node_modules.\n * This information may then be passed to the package manager, which will create the links on its own.\n */\n async calculateLinks(\n options: WorkspaceLinkOptions = {}\n ): Promise<{ linkResults: WorkspaceLinkResults; linkedRootDeps: Record<string, string> }> {\n await pMapSeries(this.preLinkSlot.values(), (fn) => fn(options)); // import objects if not disabled in options\n const compDirMap = await this.getComponentsDirectory([]);\n const linker = this.dependencyResolver.getLinker({\n rootDir: this.workspace.path,\n linkingOptions: options,\n });\n const { linkResults: res, linkedRootDeps } = await linker.calculateLinkedDeps(\n this.workspace.path,\n compDirMap,\n options\n );\n const workspaceRes = res as WorkspaceLinkResults;\n\n const legacyResults = await this.linkCodemods(compDirMap, options);\n workspaceRes.legacyLinkResults = legacyResults.linksResults;\n workspaceRes.legacyLinkCodemodResults = legacyResults.codemodResults;\n\n if (this.dependencyResolver.hasRootComponents() && options.linkToBitRoots) {\n await this._linkAllComponentsToBitRoots(compDirMap);\n }\n return { linkResults: res, linkedRootDeps };\n }\n\n async linkCodemods(compDirMap: ComponentMap<string>, options?: { rewire?: boolean }) {\n const bitIds = compDirMap.toArray().map(([component]) => component.id);\n return linkToNodeModulesWithCodemod(this.workspace, bitIds, options?.rewire ?? false);\n }\n\n async link(options: WorkspaceLinkOptions = {}): Promise<WorkspaceLinkResults> {\n const { linkResults, linkedRootDeps } = await this.calculateLinks(options);\n await createLinks(options.linkToDir ?? this.workspace.path, linkedRootDeps, {\n avoidHardLink: true,\n skipIfSymlinkValid: true,\n });\n return linkResults;\n }\n\n private async _linkAllComponentsToBitRoots(compDirMap: ComponentMap<string>) {\n const envs = await this._getAllUsedEnvIds();\n const apps = (await this.app.listAppsComponents()).map((component) => component.id);\n await Promise.all(\n [...envs, ...apps].map(async (id) => {\n const dir = await this.getRootComponentDirByRootId(this.workspace.path, id);\n await fs.mkdirp(dir);\n })\n );\n await linkPkgsToBitRoots(\n this.workspace.path,\n compDirMap.components.map((component) => this.dependencyResolver.getPackageName(component))\n );\n }\n\n private async getRootComponentDirByRootId(workspacePath: string, rootComponentId: ComponentID): Promise<string> {\n // Root directories for local envs and apps are created without their version number.\n // This is done in order to avoid changes to the lockfile after such components are tagged.\n const id = (await this.workspace.hasId(rootComponentId))\n ? rootComponentId.toStringWithoutVersion()\n : rootComponentId.toString();\n return getRootComponentDir(workspacePath, id);\n }\n\n /**\n * Generate a filter to pass to the installer\n * This will filter deps which are come from remotes which defined in scope.json\n * those components comes from local remotes, usually doesn't have a package in a registry\n * so no reason to try to install them (it will fail)\n */\n private async generateFilterFnForDepsFromLocalRemote() {\n // TODO: once scope create a new API for this, replace it with the new one\n const remotes = await this.workspace.scope._legacyRemotes();\n const reg = await this.dependencyResolver.getRegistries();\n const packageScopes = Object.keys(reg.scopes);\n return (dependencyList: DependencyList): DependencyList => {\n const filtered = dependencyList.filter((dep) => {\n if (!(dep instanceof ComponentDependency)) {\n return true;\n }\n if (remotes.isHub(dep.componentId.scope)) {\n return true;\n }\n if (packageScopes.some((scope) => dep.packageName.startsWith(`@${scope}/`))) {\n return true;\n }\n return false;\n });\n return filtered;\n };\n }\n\n private async getComponentsDirectory(ids: ComponentID[]): Promise<ComponentMap<string>> {\n const components = ids.length\n ? await this.workspace.getMany(ids)\n : await this.workspace.list(undefined, { loadSeedersAsAspects: false });\n return ComponentMap.as<string>(components, (component) => this.workspace.componentDir(component.id));\n }\n\n private async onRootAspectAddedSubscriber(_aspectId: ComponentID, inWs: boolean): Promise<void> {\n if (!inWs) {\n await this.install();\n }\n }\n private async onAspectsResolveSubscriber(aspectComponents: Component[]): Promise<void> {\n let needLink = false;\n let needInstall = false;\n const promises = aspectComponents.map(async (aspectComponent) => {\n const aspectIdStr = aspectComponent.id.toString();\n if (this.visitedAspects.has(aspectIdStr)) return;\n\n this.visitedAspects.add(aspectIdStr);\n const packagePath = await this.workspace.getComponentPackagePath(aspectComponent);\n const exists = await pathExists(packagePath);\n if (!exists) {\n const inWs = await this.workspace.hasId(aspectComponent.id);\n if (inWs) {\n needLink = true;\n } else {\n needInstall = true;\n }\n }\n });\n await Promise.all(promises);\n if (needInstall) {\n await this.install();\n return;\n }\n if (needLink) {\n await this.link();\n }\n }\n\n static slots = [Slot.withType<PreLinkSlot>(), Slot.withType<PreInstallSlot>(), Slot.withType<PostInstallSlot>()];\n static dependencies = [\n DependencyResolverAspect,\n WorkspaceAspect,\n LoggerAspect,\n VariantsAspect,\n CLIAspect,\n CompilerAspect,\n IssuesAspect,\n EnvsAspect,\n ApplicationAspect,\n IpcEventsAspect,\n GeneratorAspect,\n WorkspaceConfigFilesAspect,\n ];\n\n static runtime = MainRuntime;\n\n static async provider(\n [\n dependencyResolver,\n workspace,\n loggerExt,\n variants,\n cli,\n compiler,\n issues,\n envs,\n app,\n ipcEvents,\n generator,\n wsConfigFiles,\n ]: [\n DependencyResolverMain,\n Workspace,\n LoggerMain,\n VariantsMain,\n CLIMain,\n CompilerMain,\n IssuesMain,\n EnvsMain,\n ApplicationMain,\n IpcEventsMain,\n GeneratorMain,\n WorkspaceConfigFilesMain\n ],\n _,\n [preLinkSlot, preInstallSlot, postInstallSlot]: [PreLinkSlot, PreInstallSlot, PostInstallSlot]\n ) {\n const logger = loggerExt.createLogger(InstallAspect.id);\n ipcEvents.registerGotEventSlot(async (eventName) => {\n if (eventName !== 'onPostInstall') return;\n logger.debug('got onPostInstall event, clear workspace and all components cache');\n await workspace.clearCache();\n workspace.clearAllComponentsCache();\n await pMapSeries(postInstallSlot.values(), (fn) => fn());\n });\n const installExt = new InstallMain(\n dependencyResolver,\n logger,\n workspace,\n variants,\n compiler,\n envs,\n wsConfigFiles,\n app,\n generator,\n preLinkSlot,\n preInstallSlot,\n postInstallSlot,\n ipcEvents\n );\n if (issues) {\n issues.registerAddComponentsIssues(installExt.addDuplicateComponentAndPackageIssue.bind(installExt));\n }\n generator.registerOnComponentCreate(installExt.onComponentCreate.bind(installExt));\n const commands: CommandList = [\n new InstallCmd(installExt, workspace, logger),\n new UninstallCmd(installExt),\n new UpdateCmd(installExt),\n new LinkCommand(installExt, workspace, logger),\n ];\n // For now do not automate installation during aspect resolving\n // workspace.registerOnAspectsResolve(installExt.onAspectsResolveSubscriber.bind(installExt));\n if (workspace) {\n workspace.registerOnRootAspectAdded(installExt.onRootAspectAddedSubscriber.bind(installExt));\n }\n cli.register(...commands);\n return installExt;\n }\n}\n\ntype ComponentsAndManifests = {\n componentDirectoryMap: ComponentMap<string>;\n manifests: Record<string, ProjectManifest>;\n};\n\nfunction hasComponentsFromWorkspaceInMissingDeps({\n componentDirectoryMap,\n manifests,\n}: ComponentsAndManifests): boolean {\n const missingDeps = new Set<string>(\n componentDirectoryMap\n .toArray()\n .map(([{ state }]) => {\n const issue = state.issues.getIssue(IssuesClasses.MissingPackagesDependenciesOnFs);\n if (!issue) return [];\n return issue.data.map((d) => d.missingPackages).flat();\n })\n .flat()\n );\n return Object.values(manifests).some(({ name }) => name && missingDeps.has(name));\n}\n\nInstallAspect.addRuntime(InstallMain);\n\nexport default InstallMain;\n\nfunction manifestsHash(manifests: Record<string, ProjectManifest>): string {\n // We don't care if the type of the dependency changes as it doesn't change the node_modules structure\n const depsByProjectPaths = mapValues(manifests, (manifest) => ({\n ...manifest.devDependencies,\n ...manifest.dependencies,\n }));\n return hash(depsByProjectPaths);\n}\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"names":["_fsExtra","data","_interopRequireWildcard","require","_path","_interopRequireDefault","_bitRoots","_compiler","_cli","_chalk","_workspace","_lodash","_generator","_componentIdToPackageName","_application","_variants","_component","_dependenciesFs","_pMapSeries","_harmony","_workspaceModules","_envs","_ipcEvents","_componentIssues","_dependencyResolver","_workspaceConfigFiles","_logger","_issues","_componentPackageVersion","_objectHash","_exceptions","_install","_pickOutdatedPkgs","_link","_install2","_uninstall","_update","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","InstallMain","constructor","dependencyResolver","logger","workspace","variants","compiler","envs","wsConfigFiles","app","generator","preLinkSlot","preInstallSlot","postInstallSlot","ipcEvents","Set","install","packages","options","inInstallContext","_addPackages","addMissingPeers","compDirMap","getComponentsDirectory","mergedRootPolicy","getWorkspacePolicy","depsFilterFn","generateFilterFnForDepsFromLocalRemote","pmInstallOptions","dedupe","copyPeerToRuntimeOnRoot","copyPeerToRuntimeOnComponents","dependencyFilterFn","overrides","config","hoistPatterns","packageImportMethod","missingPeers","getMissingPeerDependencies","path","missingPeerPackages","entries","map","peerName","range","console","pMapSeries","values","fn","res","_installModules","publishIpcEvent","registerPreLink","register","registerPreInstall","registerPostInstall","onComponentCreate","generateResults","runInstall","installMissing","ids","generateResult","dependencies","concat","installMissingDependencies","isApp","isEnv","id","nonLoadedEnvs","clearComponentCache","component","envId","calculateEnvId","toString","isLoaded","isEnvRegistered","addMissingDeps","skipIfExisting","writeConfigFiles","lifecycleType","DependencyTypeNotSupportedInPolicy","debug","join","resolver","getVersionResolver","resolvedPackagesP","packageName","resolveRemoteVersion","rootDir","resolvedPackages","Promise","all","newWorkspacePolicyEntries","resolvedPackage","version","versionWithPrefix","getVersionWithSavePrefix","overridePrefix","savePrefix","wantedRange","dependencyId","addToRootPolicy","updateExisting","persistConfig","pm","getPackageManager","name","chalk","cyan","getPackageManagerName","hasRootComponents","installer","getInstaller","calcManifestsOpts","nodeLinker","linkOpts","linkTeambitBit","linkCoreAspects","linkDepsResolvedFromEnv","linkNestedDepsInNM","isLegacy","linkedRootDeps","calculateLinks","componentsAndManifests","current","_getComponentsManifestsAndRootPolicy","autoInstallPeers","includeOptionalDeps","neverBuiltDependencies","hoistInjectedDependencies","rootComponents","updateAll","optimizeReportForNonTerminal","lockfileOnly","prevManifests","linkedDependencies","installCycle","hasMissingLocalComponents","forceTeambitHarmonyLink","hasHarmonyInRootPolicy","hasComponentsFromWorkspaceInMissingDeps","dependenciesChanged","installComponents","manifests","componentDirectoryMap","installTeambitBit","cacheCleared","linkCodemods","compile","compileStartTime","process","hrtime","compileOutputMessage","setStatusLine","consumer","componentLoader","clearComponentsCache","clearCache","skipClearFailedToLoadEnvs","compileOnWorkspace","initiator","CompilationInitiator","Install","consoleSuccess","tryWriteConfigFiles","recurringInstall","oldNonLoadedEnvs","getOldNonLoadedEnvs","add","manifestsHash","_getComponentsManifests","skipPrune","pruneModules","componentFsCache","deleteAllDependenciesDataCache","addConfiguredAspectsToWorkspacePolicy","addConfiguredGeneratorEnvsToWorkspacePolicy","rootDeps","devDependencies","omit","manifest","addedNewPkgs","_addMissingPackagesToRootPolicy","mergedRootPolicyWithMissingDeps","shouldWrite","isWorkspaceConfigWriteEnabled","err","clean","silent","throw","consoleFailure","message","rootPolicy","aspectsPackages","getConfiguredUserAspectsPackages","externalsOnly","aspectsPackage","configuredEnvs","getConfiguredEnvs","resolvedEnvs","compact","envIdStr","isCoreEnv","undefined","parsedId","resolveComponentId","inWs","hasId","comps","importAndGetMany","idWithVersion","resolveEnvIdWithPotentialVersionForConfig","split","getPackageName","env","_getMissingPackagesWithoutRootDeps","_getAllMissingPackages","pkg","list","uniq","comp","state","issues","getIssue","IssuesClasses","MissingPackagesDependenciesOnFs","d","missingPackages","flat","dependencyInstaller","installOptions","getComponentManifests","referenceLocalPackages","rootManifests","_getRootManifests","_updateRootDirs","getFailedToLoadEnvs","envsWithoutManifest","Array","from","intersection","rootDirs","bitRootCompsDir","getBitRootsDir","existingDirs","fs","readdir","dirName","dirPath","includes","remove","code","mkdir","recursive","nonRootManifests","workspaceDeps","getWorkspaceDepsOfBitRoots","workspaceDepsMeta","reduce","acc","depName","injected","envManifests","_getEnvManifests","appManifests","_getAppManifests","_getAllUsedEnvIds","fromEntries","getRootComponentDirByRootId","_getEnvDependencies","_getEnvPackage","dependenciesMeta","installConfig","hoistingLimits","policy","getEnvPolicyFromEnvId","selfPolicy","force","toStringWithoutVersion","envComponent","getEnvComponentByEnvId","finalVersion","snapToSemver","listAppsComponents","appPkgName","appManifest","find","Map","components","updateDependencies","componentPolicies","_getComponentsWithDependencyPolicies","variantPatterns","raw","variantPoliciesByPatterns","_variantPatternsToDepPolicesDict","outdatedPkgs","getOutdatedPkgsFromPolicies","patterns","forceVersionBump","outdatedPkgsToUpdate","off","pickOutdatedPkgs","on","updatedVariants","updatedComponents","applyUpdates","_updateVariantsPolicies","_updateComponentsConfig","_reloadConsumer","addDuplicateComponentAndPackageIssue","workspacePolicy","_consumer","removed","pkgName","componentIdToPackageName","found","getOrCreate","DuplicateComponentAndPackage","allComponentIds","listIds","componentId","componentConfigFile","index","depResolverConfig","aspects","DependencyResolverAspect","variantPattern","extensions","addSpecificComponentConfig","shouldMergeWithExisting","shouldMergeWithPrevious","bitMap","write","updateVariantPolicies","setExtension","overrideExisting","uninstallDependencies","removeFromRootPolicy","linker","getLinker","linkingOptions","linkResults","calculateLinkedDeps","workspaceRes","legacyResults","legacyLinkResults","linksResults","legacyLinkCodemodResults","codemodResults","linkToBitRoots","_linkAllComponentsToBitRoots","bitIds","toArray","linkToNodeModulesWithCodemod","rewire","link","createLinks","linkToDir","avoidHardLink","skipIfSymlinkValid","apps","dir","mkdirp","linkPkgsToBitRoots","workspacePath","rootComponentId","getRootComponentDir","remotes","scope","_legacyRemotes","reg","getRegistries","packageScopes","scopes","dependencyList","filtered","dep","ComponentDependency","isHub","some","startsWith","getMany","loadSeedersAsAspects","ComponentMap","as","componentDir","onRootAspectAddedSubscriber","_aspectId","onAspectsResolveSubscriber","aspectComponents","needLink","needInstall","promises","aspectComponent","aspectIdStr","visitedAspects","packagePath","getComponentPackagePath","exists","pathExists","provider","loggerExt","cli","_","createLogger","InstallAspect","registerGotEventSlot","eventName","clearAllComponentsCache","installExt","registerAddComponentsIssues","bind","registerOnComponentCreate","commands","InstallCmd","UninstallCmd","UpdateCmd","LinkCommand","registerOnRootAspectAdded","exports","Slot","withType","WorkspaceAspect","LoggerAspect","VariantsAspect","CLIAspect","CompilerAspect","IssuesAspect","EnvsAspect","ApplicationAspect","IpcEventsAspect","GeneratorAspect","WorkspaceConfigFilesAspect","MainRuntime","missingDeps","issue","addRuntime","_default","depsByProjectPaths","mapValues","hash"],"sources":["install.main.runtime.ts"],"sourcesContent":["import fs, { pathExists } from 'fs-extra';\nimport path from 'path';\nimport { getRootComponentDir, getBitRootsDir, linkPkgsToBitRoots } from '@teambit/bit-roots';\nimport { CompilerMain, CompilerAspect, CompilationInitiator } from '@teambit/compiler';\nimport { CLIMain, CommandList, CLIAspect, MainRuntime } from '@teambit/cli';\nimport chalk from 'chalk';\nimport { WorkspaceAspect, Workspace, ComponentConfigFile } from '@teambit/workspace';\nimport { compact, mapValues, omit, uniq, intersection } from 'lodash';\nimport { ProjectManifest } from '@pnpm/types';\nimport { GenerateResult, GeneratorAspect, GeneratorMain } from '@teambit/generator';\nimport componentIdToPackageName from '@teambit/legacy/dist/utils/bit/component-id-to-package-name';\nimport { ApplicationMain, ApplicationAspect } from '@teambit/application';\nimport { VariantsMain, Patterns, VariantsAspect } from '@teambit/variants';\nimport { Component, ComponentID, ComponentMap } from '@teambit/component';\nimport { createLinks } from '@teambit/dependencies.fs.linked-dependencies';\nimport pMapSeries from 'p-map-series';\nimport { Slot, SlotRegistry } from '@teambit/harmony';\nimport {\n CodemodResult,\n linkToNodeModulesWithCodemod,\n NodeModulesLinksResult,\n} from '@teambit/workspace.modules.node-modules-linker';\nimport { EnvsMain, EnvsAspect } from '@teambit/envs';\nimport { IpcEventsAspect, IpcEventsMain } from '@teambit/ipc-events';\nimport { IssuesClasses } from '@teambit/component-issues';\nimport {\n GetComponentManifestsOptions,\n WorkspaceDependencyLifecycleType,\n DependencyResolverMain,\n DependencyInstaller,\n DependencyResolverAspect,\n PackageManagerInstallOptions,\n ComponentDependency,\n VariantPolicyConfigObject,\n WorkspacePolicyEntry,\n LinkingOptions,\n LinkResults,\n DependencyList,\n MergedOutdatedPkg,\n WorkspacePolicy,\n UpdatedComponent,\n} from '@teambit/dependency-resolver';\nimport { WorkspaceConfigFilesAspect, WorkspaceConfigFilesMain } from '@teambit/workspace-config-files';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { IssuesAspect, IssuesMain } from '@teambit/issues';\nimport { snapToSemver } from '@teambit/component-package-version';\nimport hash from 'object-hash';\nimport { DependencyTypeNotSupportedInPolicy } from './exceptions';\nimport { InstallAspect } from './install.aspect';\nimport { pickOutdatedPkgs } from './pick-outdated-pkgs';\nimport { LinkCommand } from './link';\nimport InstallCmd from './install.cmd';\nimport UninstallCmd from './uninstall.cmd';\nimport UpdateCmd from './update.cmd';\n\nexport type WorkspaceLinkOptions = LinkingOptions & {\n rootPolicy?: WorkspacePolicy;\n linkToBitRoots?: boolean;\n includePeers?: boolean;\n};\n\nexport type WorkspaceLinkResults = {\n legacyLinkResults?: NodeModulesLinksResult[];\n legacyLinkCodemodResults?: CodemodResult[];\n} & LinkResults;\n\nexport type WorkspaceInstallOptions = {\n addMissingDeps?: boolean;\n addMissingPeers?: boolean;\n lifecycleType?: WorkspaceDependencyLifecycleType;\n dedupe?: boolean;\n import?: boolean;\n copyPeerToRuntimeOnRoot?: boolean;\n copyPeerToRuntimeOnComponents?: boolean;\n updateExisting?: boolean;\n skipIfExisting?: boolean;\n savePrefix?: string;\n compile?: boolean;\n includeOptionalDeps?: boolean;\n updateAll?: boolean;\n recurringInstall?: boolean;\n optimizeReportForNonTerminal?: boolean;\n lockfileOnly?: boolean;\n writeConfigFiles?: boolean;\n skipPrune?: boolean;\n};\n\nexport type ModulesInstallOptions = Omit<WorkspaceInstallOptions, 'updateExisting' | 'lifecycleType' | 'import'>;\n\ntype PreLink = (linkOpts?: WorkspaceLinkOptions) => Promise<void>;\ntype PreInstall = (installOpts?: WorkspaceInstallOptions) => Promise<void>;\ntype PostInstall = () => Promise<void>;\n\ntype PreLinkSlot = SlotRegistry<PreLink>;\ntype PreInstallSlot = SlotRegistry<PreInstall>;\ntype PostInstallSlot = SlotRegistry<PostInstall>;\n\ntype GetComponentsAndManifestsOptions = Omit<\n GetComponentManifestsOptions,\n 'componentDirectoryMap' | 'rootPolicy' | 'rootDir'\n> &\n Pick<PackageManagerInstallOptions, 'nodeLinker'>;\n\nexport class InstallMain {\n private visitedAspects: Set<string> = new Set();\n\n constructor(\n private dependencyResolver: DependencyResolverMain,\n\n private logger: Logger,\n\n private workspace: Workspace,\n\n private variants: VariantsMain,\n\n private compiler: CompilerMain,\n\n private envs: EnvsMain,\n\n private wsConfigFiles: WorkspaceConfigFilesMain,\n\n private app: ApplicationMain,\n\n private generator: GeneratorMain,\n\n private preLinkSlot: PreLinkSlot,\n\n private preInstallSlot: PreInstallSlot,\n\n private postInstallSlot: PostInstallSlot,\n\n private ipcEvents: IpcEventsMain\n ) {}\n /**\n * Install dependencies for all components in the workspace\n *\n * @returns\n * @memberof Workspace\n */\n async install(packages?: string[], options?: WorkspaceInstallOptions): Promise<ComponentMap<string>> {\n // set workspace in install context\n this.workspace.inInstallContext = true;\n if (packages && packages.length) {\n await this._addPackages(packages, options);\n }\n if (options?.addMissingPeers) {\n const compDirMap = await this.getComponentsDirectory([]);\n const mergedRootPolicy = this.dependencyResolver.getWorkspacePolicy();\n const depsFilterFn = await this.generateFilterFnForDepsFromLocalRemote();\n const pmInstallOptions: PackageManagerInstallOptions = {\n dedupe: options?.dedupe,\n copyPeerToRuntimeOnRoot: options?.copyPeerToRuntimeOnRoot ?? true,\n copyPeerToRuntimeOnComponents: options?.copyPeerToRuntimeOnComponents ?? false,\n dependencyFilterFn: depsFilterFn,\n overrides: this.dependencyResolver.config.overrides,\n hoistPatterns: this.dependencyResolver.config.hoistPatterns,\n packageImportMethod: this.dependencyResolver.config.packageImportMethod,\n };\n const missingPeers = await this.dependencyResolver.getMissingPeerDependencies(\n this.workspace.path,\n mergedRootPolicy,\n compDirMap,\n pmInstallOptions\n );\n if (missingPeers) {\n const missingPeerPackages = Object.entries(missingPeers).map(([peerName, range]) => `${peerName}@${range}`);\n await this._addPackages(missingPeerPackages, options);\n } else {\n this.logger.console('No missing peer dependencies found.');\n }\n }\n await pMapSeries(this.preInstallSlot.values(), (fn) => fn(options)); // import objects if not disabled in options\n const res = await this._installModules(options);\n this.workspace.inInstallContext = false;\n\n await this.ipcEvents.publishIpcEvent('onPostInstall');\n\n return res;\n }\n\n registerPreLink(fn: PreLink) {\n this.preLinkSlot.register(fn);\n }\n\n registerPreInstall(fn: PreInstall) {\n this.preInstallSlot.register(fn);\n }\n\n registerPostInstall(fn: PostInstall) {\n this.postInstallSlot.register(fn);\n }\n\n async onComponentCreate(generateResults: GenerateResult[]) {\n this.workspace.inInstallContext = true;\n let runInstall = false;\n let packages: string[] = [];\n let installMissing = false;\n\n const ids = generateResults.map((generateResult) => {\n if (generateResult.dependencies && generateResult.dependencies.length) {\n packages = packages.concat(generateResult.dependencies);\n runInstall = true;\n }\n if (generateResult.installMissingDependencies) {\n installMissing = true;\n runInstall = true;\n }\n if (generateResult.isApp || generateResult.isEnv) {\n runInstall = true;\n }\n return generateResult.id;\n });\n const nonLoadedEnvs: string[] = [];\n\n ids.map((id) => this.workspace.clearComponentCache(id));\n await pMapSeries(ids, async (id) => {\n const component = await this.workspace.get(id);\n // const envId = await this.envs.getEnvId(component);\n const envId = (await this.envs.calculateEnvId(component)).toString();\n const isLoaded = this.envs.isEnvRegistered(envId);\n if (!isLoaded) {\n nonLoadedEnvs.push(envId);\n }\n return component;\n });\n if (nonLoadedEnvs.length) {\n runInstall = true;\n }\n if (!runInstall) {\n this.workspace.inInstallContext = false;\n return;\n }\n // this.logger.console(\n // `the following environments are not installed yet: ${nonLoadedEnvs.join(', ')}. installing them now...`\n // );\n await this.install(packages, {\n addMissingDeps: installMissing,\n skipIfExisting: true,\n writeConfigFiles: false,\n // skipPrune: true,\n });\n }\n\n private async _addPackages(packages: string[], options?: WorkspaceInstallOptions) {\n if ((options?.lifecycleType as string) === 'dev') {\n throw new DependencyTypeNotSupportedInPolicy(options?.lifecycleType as string);\n }\n this.logger.debug(`installing the following packages: ${packages.join()}`);\n const resolver = await this.dependencyResolver.getVersionResolver();\n const resolvedPackagesP = packages.map((packageName) =>\n resolver.resolveRemoteVersion(packageName, {\n rootDir: this.workspace.path,\n })\n );\n const resolvedPackages = await Promise.all(resolvedPackagesP);\n const newWorkspacePolicyEntries: WorkspacePolicyEntry[] = [];\n resolvedPackages.forEach((resolvedPackage) => {\n if (resolvedPackage.version) {\n const versionWithPrefix = this.dependencyResolver.getVersionWithSavePrefix({\n version: resolvedPackage.version,\n overridePrefix: options?.savePrefix,\n wantedRange: resolvedPackage.wantedRange,\n });\n newWorkspacePolicyEntries.push({\n dependencyId: resolvedPackage.packageName,\n value: {\n version: versionWithPrefix,\n },\n lifecycleType: options?.lifecycleType || 'runtime',\n });\n }\n });\n this.dependencyResolver.addToRootPolicy(newWorkspacePolicyEntries, {\n updateExisting: options?.updateExisting ?? false,\n skipIfExisting: options?.skipIfExisting ?? false,\n });\n await this.dependencyResolver.persistConfig('install');\n }\n\n private async _installModules(options?: ModulesInstallOptions): Promise<ComponentMap<string>> {\n const pm = this.dependencyResolver.getPackageManager();\n this.logger.console(\n `installing dependencies in workspace using ${pm?.name} (${chalk.cyan(\n this.dependencyResolver.getPackageManagerName()\n )})`\n );\n this.logger.debug(`installing dependencies in workspace with options`, options);\n const depsFilterFn = await this.generateFilterFnForDepsFromLocalRemote();\n const hasRootComponents = this.dependencyResolver.hasRootComponents();\n // TODO: pass get install options\n const installer = this.dependencyResolver.getInstaller({});\n const calcManifestsOpts: GetComponentsAndManifestsOptions = {\n copyPeerToRuntimeOnComponents: options?.copyPeerToRuntimeOnComponents ?? false,\n copyPeerToRuntimeOnRoot: options?.copyPeerToRuntimeOnRoot ?? true,\n dedupe: !hasRootComponents && options?.dedupe,\n dependencyFilterFn: depsFilterFn,\n nodeLinker: this.dependencyResolver.nodeLinker(),\n };\n const linkOpts = {\n linkTeambitBit: true,\n linkCoreAspects: this.dependencyResolver.linkCoreAspects(),\n linkDepsResolvedFromEnv: !hasRootComponents,\n linkNestedDepsInNM: !this.workspace.isLegacy && !hasRootComponents,\n };\n const { linkedRootDeps } = await this.calculateLinks(linkOpts);\n // eslint-disable-next-line prefer-const\n let { mergedRootPolicy, componentsAndManifests: current } = await this._getComponentsManifestsAndRootPolicy(\n installer,\n {\n ...calcManifestsOpts,\n addMissingDeps: options?.addMissingDeps,\n linkedRootDeps,\n }\n );\n\n const pmInstallOptions: PackageManagerInstallOptions = {\n ...calcManifestsOpts,\n autoInstallPeers: this.dependencyResolver.config.autoInstallPeers,\n includeOptionalDeps: options?.includeOptionalDeps,\n neverBuiltDependencies: this.dependencyResolver.config.neverBuiltDependencies,\n overrides: this.dependencyResolver.config.overrides,\n hoistPatterns: this.dependencyResolver.config.hoistPatterns,\n hoistInjectedDependencies: this.dependencyResolver.config.hoistInjectedDependencies,\n packageImportMethod: this.dependencyResolver.config.packageImportMethod,\n rootComponents: hasRootComponents,\n updateAll: options?.updateAll,\n optimizeReportForNonTerminal: options?.optimizeReportForNonTerminal,\n lockfileOnly: options?.lockfileOnly,\n };\n const prevManifests = new Set<string>();\n // TODO: this make duplicate\n // this.logger.consoleSuccess();\n const linkedDependencies = {\n [this.workspace.path]: linkedRootDeps,\n };\n const compDirMap = await this.getComponentsDirectory([]);\n let installCycle = 0;\n let hasMissingLocalComponents = true;\n const forceTeambitHarmonyLink = !this.dependencyResolver.hasHarmonyInRootPolicy();\n /* eslint-disable no-await-in-loop */\n do {\n // In case there are missing local components,\n // we'll need to make another round of installation as on the first round the missing local components\n // are not added to the manifests.\n // This is an issue when installation is done using root components.\n hasMissingLocalComponents = hasRootComponents && hasComponentsFromWorkspaceInMissingDeps(current);\n const { dependenciesChanged } = await installer.installComponents(\n this.workspace.path,\n current.manifests,\n mergedRootPolicy,\n current.componentDirectoryMap,\n {\n linkedDependencies,\n installTeambitBit: false,\n forceTeambitHarmonyLink,\n },\n pmInstallOptions\n );\n let cacheCleared = false;\n await this.linkCodemods(compDirMap);\n if (options?.compile ?? true) {\n const compileStartTime = process.hrtime();\n const compileOutputMessage = `compiling components`;\n this.logger.setStatusLine(compileOutputMessage);\n // We need to clear cache before compiling the components or it might compile them with the default env\n // incorrectly in case the env was not loaded correctly before the install\n this.workspace.consumer.componentLoader.clearComponentsCache();\n // We don't want to clear the failed to load envs because we want to show the warning at the end\n await this.workspace.clearCache({ skipClearFailedToLoadEnvs: true });\n cacheCleared = true;\n await this.compiler.compileOnWorkspace([], { initiator: CompilationInitiator.Install });\n this.logger.consoleSuccess(compileOutputMessage, compileStartTime);\n }\n if (options?.writeConfigFiles ?? true) {\n await this.tryWriteConfigFiles(!cacheCleared);\n }\n if (!dependenciesChanged) break;\n if (!options?.recurringInstall) break;\n const oldNonLoadedEnvs = this.getOldNonLoadedEnvs();\n if (!oldNonLoadedEnvs.length) break;\n prevManifests.add(manifestsHash(current.manifests));\n // If we run compile we do the clear cache before the compilation so no need to clean it again (it's an expensive\n // operation)\n if (!cacheCleared) {\n // We need to clear cache before creating the new component manifests.\n this.workspace.consumer.componentLoader.clearComponentsCache();\n // We don't want to clear the failed to load envs because we want to show the warning at the end\n await this.workspace.clearCache({ skipClearFailedToLoadEnvs: true });\n }\n current = await this._getComponentsManifests(installer, mergedRootPolicy, calcManifestsOpts);\n installCycle += 1;\n } while ((!prevManifests.has(manifestsHash(current.manifests)) || hasMissingLocalComponents) && installCycle < 5);\n if (!options?.lockfileOnly && !options?.skipPrune) {\n // We clean node_modules only after the last install.\n // Otherwise, we might load an env from a location that we later remove.\n await installer.pruneModules(this.workspace.path);\n }\n await this.workspace.consumer.componentFsCache.deleteAllDependenciesDataCache();\n /* eslint-enable no-await-in-loop */\n return current.componentDirectoryMap;\n }\n\n private async _getComponentsManifestsAndRootPolicy(\n installer: DependencyInstaller,\n options: GetComponentsAndManifestsOptions & {\n addMissingDeps?: boolean;\n linkedRootDeps: Record<string, string>;\n }\n ): Promise<{ componentsAndManifests: ComponentsAndManifests; mergedRootPolicy: WorkspacePolicy }> {\n const mergedRootPolicy = await this.addConfiguredAspectsToWorkspacePolicy();\n await this.addConfiguredGeneratorEnvsToWorkspacePolicy(mergedRootPolicy);\n const componentsAndManifests = await this._getComponentsManifests(installer, mergedRootPolicy, options);\n if (!options?.addMissingDeps) {\n return { componentsAndManifests, mergedRootPolicy };\n }\n const rootDeps = new Set(\n Object.keys({\n ...componentsAndManifests.manifests[this.workspace.path].devDependencies,\n ...componentsAndManifests.manifests[this.workspace.path].dependencies,\n ...options.linkedRootDeps,\n })\n );\n Object.values(omit(componentsAndManifests.manifests, [this.workspace.path])).forEach((manifest) => {\n if ((manifest as ProjectManifest).name) {\n rootDeps.add((manifest as ProjectManifest).name!); // eslint-disable-line @typescript-eslint/no-non-null-assertion\n }\n });\n const addedNewPkgs = await this._addMissingPackagesToRootPolicy(rootDeps);\n if (!addedNewPkgs) {\n return { componentsAndManifests, mergedRootPolicy };\n }\n const mergedRootPolicyWithMissingDeps = await this.addConfiguredAspectsToWorkspacePolicy();\n await this.addConfiguredGeneratorEnvsToWorkspacePolicy(mergedRootPolicyWithMissingDeps);\n return {\n mergedRootPolicy: mergedRootPolicyWithMissingDeps,\n componentsAndManifests: await this._getComponentsManifests(installer, mergedRootPolicyWithMissingDeps, options),\n };\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(clearCache: boolean) {\n const shouldWrite = this.wsConfigFiles.isWorkspaceConfigWriteEnabled();\n if (!shouldWrite) return;\n if (clearCache) {\n await this.workspace.clearCache({ skipClearFailedToLoadEnvs: true });\n }\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 addConfiguredAspectsToWorkspacePolicy(): Promise<WorkspacePolicy> {\n const rootPolicy = this.dependencyResolver.getWorkspacePolicy();\n const aspectsPackages = await this.workspace.getConfiguredUserAspectsPackages({ externalsOnly: true });\n aspectsPackages.forEach((aspectsPackage) => {\n rootPolicy.add(\n {\n dependencyId: aspectsPackage.packageName,\n value: {\n version: aspectsPackage.version,\n },\n lifecycleType: 'runtime',\n },\n // If it's already exist from the root, take the version from the root policy\n { skipIfExisting: true }\n );\n });\n return rootPolicy;\n }\n\n private async addConfiguredGeneratorEnvsToWorkspacePolicy(rootPolicy: WorkspacePolicy): Promise<void> {\n const configuredEnvs = this.generator.getConfiguredEnvs();\n const resolvedEnvs = compact(\n await Promise.all(\n configuredEnvs.map(async (envIdStr) => {\n if (this.envs.isCoreEnv(envIdStr)) {\n return undefined;\n }\n const parsedId = await this.workspace.resolveComponentId(envIdStr);\n // If we have the env in the workspace, we don't want to install it\n const inWs = await this.workspace.hasId(parsedId);\n if (inWs) {\n return undefined;\n }\n const comps = await this.workspace.importAndGetMany(\n [parsedId],\n `to get the env ${parsedId.toString()} for installation`\n );\n const idWithVersion = await this.workspace.resolveEnvIdWithPotentialVersionForConfig(parsedId);\n const version = idWithVersion.split('@')[1] || '*';\n const packageName = this.dependencyResolver.getPackageName(comps[0]);\n return {\n packageName,\n version,\n };\n })\n )\n );\n\n resolvedEnvs.forEach((env) => {\n rootPolicy.add(\n {\n dependencyId: env.packageName,\n value: {\n version: env.version,\n },\n lifecycleType: 'runtime',\n },\n // If it's already exist from the root, take the version from the root policy\n { skipIfExisting: true }\n );\n });\n }\n\n private async _addMissingPackagesToRootPolicy(\n rootDeps: Set<string>,\n options?: WorkspaceInstallOptions\n ): Promise<boolean> {\n const packages = await this._getMissingPackagesWithoutRootDeps(rootDeps);\n if (packages && packages.length) {\n await this._addPackages(packages, options);\n }\n return packages.length > 0;\n }\n\n private async _getMissingPackagesWithoutRootDeps(rootDeps: Set<string>) {\n const packages = await this._getAllMissingPackages();\n return packages.filter((pkg) => !rootDeps.has(pkg));\n }\n\n private async _getAllMissingPackages(): Promise<string[]> {\n const comps = await this.workspace.list();\n return uniq(\n comps\n .map((comp) => {\n const data = comp.state.issues.getIssue(IssuesClasses.MissingPackagesDependenciesOnFs)?.data || [];\n return data.map((d) => d.missingPackages).flat();\n })\n .flat()\n );\n }\n\n private async _getComponentsManifests(\n dependencyInstaller: DependencyInstaller,\n rootPolicy: WorkspacePolicy,\n installOptions: GetComponentsAndManifestsOptions\n ): Promise<ComponentsAndManifests> {\n const componentDirectoryMap = await this.getComponentsDirectory([]);\n let manifests = await dependencyInstaller.getComponentManifests({\n ...installOptions,\n componentDirectoryMap,\n rootPolicy,\n rootDir: this.workspace.path,\n referenceLocalPackages: this.dependencyResolver.hasRootComponents() && installOptions.nodeLinker === 'isolated',\n });\n\n if (this.dependencyResolver.hasRootComponents()) {\n const rootManifests = await this._getRootManifests(manifests);\n await this._updateRootDirs(Object.keys(rootManifests));\n manifests = {\n ...manifests,\n ...rootManifests,\n };\n }\n return {\n componentDirectoryMap,\n manifests,\n };\n }\n\n /**\n * This function returns a list of old non-loaded environments names.\n * @returns an array of strings called `oldNonLoadedEnvs`. This array contains the names of environment variables that\n * failed to load as extensions and are also don't have an env.jsonc file.\n * If this list is not empty, then the user might need to run another install to make sure all dependencies resolved\n * correctly\n */\n public getOldNonLoadedEnvs() {\n const nonLoadedEnvs = this.envs.getFailedToLoadEnvs();\n const envsWithoutManifest = Array.from(this.dependencyResolver.envsWithoutManifest);\n const oldNonLoadedEnvs = intersection(nonLoadedEnvs, envsWithoutManifest);\n return oldNonLoadedEnvs;\n }\n\n private async _updateRootDirs(rootDirs: string[]) {\n try {\n const bitRootCompsDir = getBitRootsDir(this.workspace.path);\n const existingDirs = await fs.readdir(bitRootCompsDir);\n await Promise.all(\n existingDirs.map(async (dirName) => {\n const dirPath = path.join(bitRootCompsDir, dirName);\n if (!rootDirs.includes(dirPath)) {\n await fs.remove(dirPath);\n }\n })\n );\n } catch (err: any) {\n if (err.code !== 'ENOENT') throw err;\n }\n await Promise.all(rootDirs.map((dirPath) => fs.mkdir(dirPath, { recursive: true })));\n }\n\n private async _getRootManifests(\n manifests: Record<string, ProjectManifest>\n ): Promise<Record<string, ProjectManifest>> {\n const nonRootManifests = Object.values(manifests).filter(({ name }) => name !== 'workspace');\n const workspaceDeps = this.dependencyResolver.getWorkspaceDepsOfBitRoots(nonRootManifests);\n const workspaceDepsMeta = Object.keys(workspaceDeps).reduce((acc, depName) => {\n acc[depName] = { injected: true };\n return acc;\n }, {});\n const envManifests = await this._getEnvManifests(workspaceDeps, workspaceDepsMeta);\n const appManifests = await this._getAppManifests(manifests, workspaceDeps, workspaceDepsMeta);\n return {\n ...envManifests,\n ...appManifests,\n };\n }\n\n private async _getEnvManifests(\n workspaceDeps: Record<string, string>,\n workspaceDepsMeta: Record<string, { injected: true }>\n ): Promise<Record<string, ProjectManifest>> {\n const envs = await this._getAllUsedEnvIds();\n return Object.fromEntries(\n await Promise.all(\n envs.map(async (envId) => {\n return [\n await this.getRootComponentDirByRootId(this.workspace.path, envId),\n {\n dependencies: {\n ...(await this._getEnvDependencies(envId)),\n ...workspaceDeps,\n ...(await this._getEnvPackage(envId)),\n },\n dependenciesMeta: workspaceDepsMeta,\n installConfig: {\n hoistingLimits: 'workspaces',\n },\n },\n ];\n })\n )\n );\n }\n\n private async _getEnvDependencies(envId: ComponentID): Promise<Record<string, string>> {\n const policy = await this.dependencyResolver.getEnvPolicyFromEnvId(envId);\n if (!policy) return {};\n return Object.fromEntries(\n policy.selfPolicy.entries\n .filter(({ force, value }) => force && value.version !== '-')\n .map(({ dependencyId, value }) => [dependencyId, value.version])\n );\n }\n\n /**\n * Return the package name of the env with its version.\n * (only if the env is not a core env and is not in the workspace)\n * @param envId\n * @returns\n */\n private async _getEnvPackage(envId: ComponentID): Promise<Record<string, string> | undefined> {\n if (this.envs.isCoreEnv(envId.toStringWithoutVersion())) return undefined;\n const inWs = await this.workspace.hasId(envId);\n if (inWs) return undefined;\n const envComponent = await this.envs.getEnvComponentByEnvId(envId.toString(), envId.toString());\n if (!envComponent) return undefined;\n const packageName = this.dependencyResolver.getPackageName(envComponent);\n const version = envId.version;\n const finalVersion = snapToSemver(version as string);\n return { [packageName]: finalVersion };\n }\n\n private async _getAppManifests(\n manifests: Record<string, ProjectManifest>,\n workspaceDeps: Record<string, string>,\n workspaceDepsMeta: Record<string, { injected: true }>\n ): Promise<Record<string, ProjectManifest>> {\n return Object.fromEntries(\n compact(\n await Promise.all(\n (\n await this.app.listAppsComponents()\n ).map(async (app) => {\n const appPkgName = this.dependencyResolver.getPackageName(app);\n const appManifest = Object.values(manifests).find(({ name }) => name === appPkgName);\n if (!appManifest) return null;\n const envId = await this.envs.calculateEnvId(app);\n return [\n await this.getRootComponentDirByRootId(this.workspace.path, app.id),\n {\n ...omit(appManifest, ['name', 'version']),\n dependencies: {\n ...(await this._getEnvDependencies(envId)),\n ...appManifest.dependencies,\n ...workspaceDeps,\n },\n dependenciesMeta: {\n ...appManifest.dependenciesMeta,\n ...workspaceDepsMeta,\n },\n installConfig: {\n hoistingLimits: 'workspaces',\n },\n },\n ];\n })\n )\n )\n );\n }\n\n private async _getAllUsedEnvIds(): Promise<ComponentID[]> {\n const envs = new Map<string, ComponentID>();\n const components = await this.workspace.list();\n await pMapSeries(components, async (component) => {\n const envId = await this.envs.calculateEnvId(component);\n envs.set(envId.toString(), envId);\n });\n return Array.from(envs.values());\n }\n\n /**\n * Updates out-of-date dependencies in the workspace.\n *\n * @param options.all {Boolean} updates all outdated dependencies without showing a prompt.\n */\n async updateDependencies(options: {\n forceVersionBump?: 'major' | 'minor' | 'patch' | 'compatible';\n patterns?: string[];\n all: boolean;\n }): Promise<ComponentMap<string> | null> {\n const componentPolicies = await this._getComponentsWithDependencyPolicies();\n const variantPatterns = this.variants.raw();\n const variantPoliciesByPatterns = this._variantPatternsToDepPolicesDict(variantPatterns);\n const components = await this.workspace.list();\n const outdatedPkgs = await this.dependencyResolver.getOutdatedPkgsFromPolicies({\n rootDir: this.workspace.path,\n variantPoliciesByPatterns,\n componentPolicies,\n components,\n patterns: options.patterns,\n forceVersionBump: options.forceVersionBump,\n });\n if (outdatedPkgs == null) {\n this.logger.consoleFailure('No dependencies found that match the patterns');\n return null;\n }\n let outdatedPkgsToUpdate!: MergedOutdatedPkg[];\n if (options.all) {\n outdatedPkgsToUpdate = outdatedPkgs;\n } else {\n this.logger.off();\n outdatedPkgsToUpdate = await pickOutdatedPkgs(outdatedPkgs);\n this.logger.on();\n }\n if (outdatedPkgsToUpdate.length === 0) {\n this.logger.consoleSuccess('No outdated dependencies found');\n if (options.forceVersionBump === 'compatible') {\n this.logger.console(\n \"If you want to find new versions that don't match the current version ranges, retry with the --latest flag\"\n );\n }\n return null;\n }\n const { updatedVariants, updatedComponents } = this.dependencyResolver.applyUpdates(outdatedPkgsToUpdate, {\n variantPoliciesByPatterns,\n });\n await this._updateVariantsPolicies(variantPatterns, updatedVariants);\n await this._updateComponentsConfig(updatedComponents);\n await this.workspace._reloadConsumer();\n return this._installModules({ dedupe: true });\n }\n\n async addDuplicateComponentAndPackageIssue(components: Component[]) {\n const workspacePolicy = this.dependencyResolver.getWorkspacePolicy();\n components.forEach((component) => {\n if (component.state._consumer.removed) return;\n const pkgName = componentIdToPackageName(component.state._consumer);\n const found = workspacePolicy.find(pkgName);\n if (found) {\n component.state.issues.getOrCreate(IssuesClasses.DuplicateComponentAndPackage).data = found.dependencyId;\n }\n });\n }\n\n private async _getComponentsWithDependencyPolicies() {\n const allComponentIds = this.workspace.listIds();\n const componentPolicies = [] as Array<{ componentId: ComponentID; policy: any }>;\n (\n await Promise.all<ComponentConfigFile | undefined>(\n allComponentIds.map((componentId) => this.workspace.componentConfigFile(componentId))\n )\n ).forEach((componentConfigFile, index) => {\n if (!componentConfigFile) return;\n const depResolverConfig = componentConfigFile.aspects.get(DependencyResolverAspect.id);\n if (!depResolverConfig) return;\n const componentId = allComponentIds[index];\n componentPolicies.push({ componentId, policy: depResolverConfig.config.policy });\n });\n return componentPolicies;\n }\n\n private _variantPatternsToDepPolicesDict(variantPatterns: Patterns): Record<string, VariantPolicyConfigObject> {\n const variantPoliciesByPatterns: Record<string, VariantPolicyConfigObject> = {};\n for (const [variantPattern, extensions] of Object.entries(variantPatterns)) {\n if (extensions[DependencyResolverAspect.id]?.policy) {\n variantPoliciesByPatterns[variantPattern] = extensions[DependencyResolverAspect.id]?.policy;\n }\n }\n return variantPoliciesByPatterns;\n }\n\n private async _updateComponentsConfig(updatedComponents: UpdatedComponent[]) {\n if (updatedComponents.length === 0) return;\n await Promise.all(\n updatedComponents.map(({ componentId, config }) => {\n return this.workspace.addSpecificComponentConfig(componentId, DependencyResolverAspect.id, config, {\n shouldMergeWithExisting: true,\n shouldMergeWithPrevious: true,\n });\n })\n );\n await this.workspace.bitMap.write('update (dependencies)');\n }\n\n private async _updateVariantsPolicies(variantPatterns: Record<string, any>, updateVariantPolicies: string[]) {\n for (const variantPattern of updateVariantPolicies) {\n this.variants.setExtension(\n variantPattern,\n DependencyResolverAspect.id,\n variantPatterns[variantPattern][DependencyResolverAspect.id],\n { overrideExisting: true }\n );\n }\n await this.dependencyResolver.persistConfig('update dependencies');\n }\n\n /**\n * Uninstall the specified packages from dependencies.\n *\n * @param {string[]} the list of packages that should be removed from dependencies.\n */\n async uninstallDependencies(packages: string[]) {\n this.dependencyResolver.removeFromRootPolicy(packages);\n await this.dependencyResolver.persistConfig('uninstall dependencies');\n return this._installModules({ dedupe: true });\n }\n\n /**\n * This function returns all the locations of the external links that should be created inside node_modules.\n * This information may then be passed to the package manager, which will create the links on its own.\n */\n async calculateLinks(\n options: WorkspaceLinkOptions = {}\n ): Promise<{ linkResults: WorkspaceLinkResults; linkedRootDeps: Record<string, string> }> {\n await pMapSeries(this.preLinkSlot.values(), (fn) => fn(options)); // import objects if not disabled in options\n const compDirMap = await this.getComponentsDirectory([]);\n const linker = this.dependencyResolver.getLinker({\n rootDir: this.workspace.path,\n linkingOptions: options,\n });\n const { linkResults: res, linkedRootDeps } = await linker.calculateLinkedDeps(\n this.workspace.path,\n compDirMap,\n options\n );\n const workspaceRes = res as WorkspaceLinkResults;\n\n const legacyResults = await this.linkCodemods(compDirMap, options);\n workspaceRes.legacyLinkResults = legacyResults.linksResults;\n workspaceRes.legacyLinkCodemodResults = legacyResults.codemodResults;\n\n if (this.dependencyResolver.hasRootComponents() && options.linkToBitRoots) {\n await this._linkAllComponentsToBitRoots(compDirMap);\n }\n return { linkResults: res, linkedRootDeps };\n }\n\n async linkCodemods(compDirMap: ComponentMap<string>, options?: { rewire?: boolean }) {\n const bitIds = compDirMap.toArray().map(([component]) => component.id);\n return linkToNodeModulesWithCodemod(this.workspace, bitIds, options?.rewire ?? false);\n }\n\n async link(options: WorkspaceLinkOptions = {}): Promise<WorkspaceLinkResults> {\n const { linkResults, linkedRootDeps } = await this.calculateLinks(options);\n await createLinks(options.linkToDir ?? this.workspace.path, linkedRootDeps, {\n avoidHardLink: true,\n skipIfSymlinkValid: true,\n });\n return linkResults;\n }\n\n private async _linkAllComponentsToBitRoots(compDirMap: ComponentMap<string>) {\n const envs = await this._getAllUsedEnvIds();\n const apps = (await this.app.listAppsComponents()).map((component) => component.id);\n await Promise.all(\n [...envs, ...apps].map(async (id) => {\n const dir = await this.getRootComponentDirByRootId(this.workspace.path, id);\n await fs.mkdirp(dir);\n })\n );\n await linkPkgsToBitRoots(\n this.workspace.path,\n compDirMap.components.map((component) => this.dependencyResolver.getPackageName(component))\n );\n }\n\n private async getRootComponentDirByRootId(workspacePath: string, rootComponentId: ComponentID): Promise<string> {\n // Root directories for local envs and apps are created without their version number.\n // This is done in order to avoid changes to the lockfile after such components are tagged.\n const id = (await this.workspace.hasId(rootComponentId))\n ? rootComponentId.toStringWithoutVersion()\n : rootComponentId.toString();\n return getRootComponentDir(workspacePath, id);\n }\n\n /**\n * Generate a filter to pass to the installer\n * This will filter deps which are come from remotes which defined in scope.json\n * those components comes from local remotes, usually doesn't have a package in a registry\n * so no reason to try to install them (it will fail)\n */\n private async generateFilterFnForDepsFromLocalRemote() {\n // TODO: once scope create a new API for this, replace it with the new one\n const remotes = await this.workspace.scope._legacyRemotes();\n const reg = await this.dependencyResolver.getRegistries();\n const packageScopes = Object.keys(reg.scopes);\n return (dependencyList: DependencyList): DependencyList => {\n const filtered = dependencyList.filter((dep) => {\n if (!(dep instanceof ComponentDependency)) {\n return true;\n }\n if (remotes.isHub(dep.componentId.scope)) {\n return true;\n }\n if (packageScopes.some((scope) => dep.packageName.startsWith(`@${scope}/`))) {\n return true;\n }\n return false;\n });\n return filtered;\n };\n }\n\n private async getComponentsDirectory(ids: ComponentID[]): Promise<ComponentMap<string>> {\n const components = ids.length\n ? await this.workspace.getMany(ids)\n : await this.workspace.list(undefined, { loadSeedersAsAspects: false });\n return ComponentMap.as<string>(components, (component) => this.workspace.componentDir(component.id));\n }\n\n private async onRootAspectAddedSubscriber(_aspectId: ComponentID, inWs: boolean): Promise<void> {\n if (!inWs) {\n await this.install();\n }\n }\n private async onAspectsResolveSubscriber(aspectComponents: Component[]): Promise<void> {\n let needLink = false;\n let needInstall = false;\n const promises = aspectComponents.map(async (aspectComponent) => {\n const aspectIdStr = aspectComponent.id.toString();\n if (this.visitedAspects.has(aspectIdStr)) return;\n\n this.visitedAspects.add(aspectIdStr);\n const packagePath = await this.workspace.getComponentPackagePath(aspectComponent);\n const exists = await pathExists(packagePath);\n if (!exists) {\n const inWs = await this.workspace.hasId(aspectComponent.id);\n if (inWs) {\n needLink = true;\n } else {\n needInstall = true;\n }\n }\n });\n await Promise.all(promises);\n if (needInstall) {\n await this.install();\n return;\n }\n if (needLink) {\n await this.link();\n }\n }\n\n static slots = [Slot.withType<PreLinkSlot>(), Slot.withType<PreInstallSlot>(), Slot.withType<PostInstallSlot>()];\n static dependencies = [\n DependencyResolverAspect,\n WorkspaceAspect,\n LoggerAspect,\n VariantsAspect,\n CLIAspect,\n CompilerAspect,\n IssuesAspect,\n EnvsAspect,\n ApplicationAspect,\n IpcEventsAspect,\n GeneratorAspect,\n WorkspaceConfigFilesAspect,\n ];\n\n static runtime = MainRuntime;\n\n static async provider(\n [\n dependencyResolver,\n workspace,\n loggerExt,\n variants,\n cli,\n compiler,\n issues,\n envs,\n app,\n ipcEvents,\n generator,\n wsConfigFiles,\n ]: [\n DependencyResolverMain,\n Workspace,\n LoggerMain,\n VariantsMain,\n CLIMain,\n CompilerMain,\n IssuesMain,\n EnvsMain,\n ApplicationMain,\n IpcEventsMain,\n GeneratorMain,\n WorkspaceConfigFilesMain\n ],\n _,\n [preLinkSlot, preInstallSlot, postInstallSlot]: [PreLinkSlot, PreInstallSlot, PostInstallSlot]\n ) {\n const logger = loggerExt.createLogger(InstallAspect.id);\n ipcEvents.registerGotEventSlot(async (eventName) => {\n if (eventName !== 'onPostInstall') return;\n logger.debug('got onPostInstall event, clear workspace and all components cache');\n await workspace.clearCache();\n workspace.clearAllComponentsCache();\n await pMapSeries(postInstallSlot.values(), (fn) => fn());\n });\n const installExt = new InstallMain(\n dependencyResolver,\n logger,\n workspace,\n variants,\n compiler,\n envs,\n wsConfigFiles,\n app,\n generator,\n preLinkSlot,\n preInstallSlot,\n postInstallSlot,\n ipcEvents\n );\n if (issues) {\n issues.registerAddComponentsIssues(installExt.addDuplicateComponentAndPackageIssue.bind(installExt));\n }\n generator.registerOnComponentCreate(installExt.onComponentCreate.bind(installExt));\n const commands: CommandList = [\n new InstallCmd(installExt, workspace, logger),\n new UninstallCmd(installExt),\n new UpdateCmd(installExt),\n new LinkCommand(installExt, workspace, logger),\n ];\n // For now do not automate installation during aspect resolving\n // workspace.registerOnAspectsResolve(installExt.onAspectsResolveSubscriber.bind(installExt));\n if (workspace) {\n workspace.registerOnRootAspectAdded(installExt.onRootAspectAddedSubscriber.bind(installExt));\n }\n cli.register(...commands);\n return installExt;\n }\n}\n\ntype ComponentsAndManifests = {\n componentDirectoryMap: ComponentMap<string>;\n manifests: Record<string, ProjectManifest>;\n};\n\nfunction hasComponentsFromWorkspaceInMissingDeps({\n componentDirectoryMap,\n manifests,\n}: ComponentsAndManifests): boolean {\n const missingDeps = new Set<string>(\n componentDirectoryMap\n .toArray()\n .map(([{ state }]) => {\n const issue = state.issues.getIssue(IssuesClasses.MissingPackagesDependenciesOnFs);\n if (!issue) return [];\n return issue.data.map((d) => d.missingPackages).flat();\n })\n .flat()\n );\n return Object.values(manifests).some(({ name }) => name && missingDeps.has(name));\n}\n\nInstallAspect.addRuntime(InstallMain);\n\nexport default InstallMain;\n\nfunction manifestsHash(manifests: Record<string, ProjectManifest>): string {\n // We don't care if the type of the dependency changes as it doesn't change the node_modules structure\n const depsByProjectPaths = mapValues(manifests, (manifest) => ({\n ...manifest.devDependencies,\n ...manifest.dependencies,\n }));\n return hash(depsByProjectPaths);\n}\n"],"mappings":";;;;;;AAAA,SAAAA,SAAA;EAAA,MAAAC,IAAA,GAAAC,uBAAA,CAAAC,OAAA;EAAAH,QAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,MAAA;EAAA,MAAAH,IAAA,GAAAI,sBAAA,CAAAF,OAAA;EAAAC,KAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAK,UAAA;EAAA,MAAAL,IAAA,GAAAE,OAAA;EAAAG,SAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAM,UAAA;EAAA,MAAAN,IAAA,GAAAE,OAAA;EAAAI,SAAA,YAAAA,CAAA;IAAA,OAAAN,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAO,KAAA;EAAA,MAAAP,IAAA,GAAAE,OAAA;EAAAK,IAAA,YAAAA,CAAA;IAAA,OAAAP,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAQ,OAAA;EAAA,MAAAR,IAAA,GAAAI,sBAAA,CAAAF,OAAA;EAAAM,MAAA,YAAAA,CAAA;IAAA,OAAAR,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAS,WAAA;EAAA,MAAAT,IAAA,GAAAE,OAAA;EAAAO,UAAA,YAAAA,CAAA;IAAA,OAAAT,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAU,QAAA;EAAA,MAAAV,IAAA,GAAAE,OAAA;EAAAQ,OAAA,YAAAA,CAAA;IAAA,OAAAV,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAW,WAAA;EAAA,MAAAX,IAAA,GAAAE,OAAA;EAAAS,UAAA,YAAAA,CAAA;IAAA,OAAAX,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAY,0BAAA;EAAA,MAAAZ,IAAA,GAAAI,sBAAA,CAAAF,OAAA;EAAAU,yBAAA,YAAAA,CAAA;IAAA,OAAAZ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAa,aAAA;EAAA,MAAAb,IAAA,GAAAE,OAAA;EAAAW,YAAA,YAAAA,CAAA;IAAA,OAAAb,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAc,UAAA;EAAA,MAAAd,IAAA,GAAAE,OAAA;EAAAY,SAAA,YAAAA,CAAA;IAAA,OAAAd,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAe,WAAA;EAAA,MAAAf,IAAA,GAAAE,OAAA;EAAAa,UAAA,YAAAA,CAAA;IAAA,OAAAf,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAgB,gBAAA;EAAA,MAAAhB,IAAA,GAAAE,OAAA;EAAAc,eAAA,YAAAA,CAAA;IAAA,OAAAhB,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAiB,YAAA;EAAA,MAAAjB,IAAA,GAAAI,sBAAA,CAAAF,OAAA;EAAAe,WAAA,YAAAA,CAAA;IAAA,OAAAjB,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAkB,SAAA;EAAA,MAAAlB,IAAA,GAAAE,OAAA;EAAAgB,QAAA,YAAAA,CAAA;IAAA,OAAAlB,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAmB,kBAAA;EAAA,MAAAnB,IAAA,GAAAE,OAAA;EAAAiB,iBAAA,YAAAA,CAAA;IAAA,OAAAnB,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAKA,SAAAoB,MAAA;EAAA,MAAApB,IAAA,GAAAE,OAAA;EAAAkB,KAAA,YAAAA,CAAA;IAAA,OAAApB,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAqB,WAAA;EAAA,MAAArB,IAAA,GAAAE,OAAA;EAAAmB,UAAA,YAAAA,CAAA;IAAA,OAAArB,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAsB,iBAAA;EAAA,MAAAtB,IAAA,GAAAE,OAAA;EAAAoB,gBAAA,YAAAA,CAAA;IAAA,OAAAtB,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAuB,oBAAA;EAAA,MAAAvB,IAAA,GAAAE,OAAA;EAAAqB,mBAAA,YAAAA,CAAA;IAAA,OAAAvB,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAiBA,SAAAwB,sBAAA;EAAA,MAAAxB,IAAA,GAAAE,OAAA;EAAAsB,qBAAA,YAAAA,CAAA;IAAA,OAAAxB,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAyB,QAAA;EAAA,MAAAzB,IAAA,GAAAE,OAAA;EAAAuB,OAAA,YAAAA,CAAA;IAAA,OAAAzB,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAA0B,QAAA;EAAA,MAAA1B,IAAA,GAAAE,OAAA;EAAAwB,OAAA,YAAAA,CAAA;IAAA,OAAA1B,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAA2B,yBAAA;EAAA,MAAA3B,IAAA,GAAAE,OAAA;EAAAyB,wBAAA,YAAAA,CAAA;IAAA,OAAA3B,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAA4B,YAAA;EAAA,MAAA5B,IAAA,GAAAI,sBAAA,CAAAF,OAAA;EAAA0B,WAAA,YAAAA,CAAA;IAAA,OAAA5B,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAA6B,YAAA;EAAA,MAAA7B,IAAA,GAAAE,OAAA;EAAA2B,WAAA,YAAAA,CAAA;IAAA,OAAA7B,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAA8B,SAAA;EAAA,MAAA9B,IAAA,GAAAE,OAAA;EAAA4B,QAAA,YAAAA,CAAA;IAAA,OAAA9B,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAA+B,kBAAA;EAAA,MAAA/B,IAAA,GAAAE,OAAA;EAAA6B,iBAAA,YAAAA,CAAA;IAAA,OAAA/B,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAgC,MAAA;EAAA,MAAAhC,IAAA,GAAAE,OAAA;EAAA8B,KAAA,YAAAA,CAAA;IAAA,OAAAhC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAiC,UAAA;EAAA,MAAAjC,IAAA,GAAAI,sBAAA,CAAAF,OAAA;EAAA+B,SAAA,YAAAA,CAAA;IAAA,OAAAjC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAkC,WAAA;EAAA,MAAAlC,IAAA,GAAAI,sBAAA,CAAAF,OAAA;EAAAgC,UAAA,YAAAA,CAAA;IAAA,OAAAlC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAmC,QAAA;EAAA,MAAAnC,IAAA,GAAAI,sBAAA,CAAAF,OAAA;EAAAiC,OAAA,YAAAA,CAAA;IAAA,OAAAnC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAAqC,SAAAI,uBAAAgC,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,yBAAAH,CAAA,6BAAAI,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAD,wBAAA,YAAAA,CAAAH,CAAA,WAAAA,CAAA,GAAAM,CAAA,GAAAD,CAAA,KAAAL,CAAA;AAAA,SAAAnC,wBAAAmC,CAAA,EAAAK,CAAA,SAAAA,CAAA,IAAAL,CAAA,IAAAA,CAAA,CAAAC,UAAA,SAAAD,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAE,OAAA,EAAAF,CAAA,QAAAM,CAAA,GAAAH,wBAAA,CAAAE,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAC,GAAA,CAAAP,CAAA,UAAAM,CAAA,CAAAE,GAAA,CAAAR,CAAA,OAAAS,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAf,CAAA,oBAAAe,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAe,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAd,CAAA,EAAAe,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAf,CAAA,CAAAe,CAAA,YAAAN,CAAA,CAAAP,OAAA,GAAAF,CAAA,EAAAM,CAAA,IAAAA,CAAA,CAAAa,GAAA,CAAAnB,CAAA,EAAAS,CAAA,GAAAA,CAAA;AAAA,SAAAW,QAAApB,CAAA,EAAAK,CAAA,QAAAC,CAAA,GAAAM,MAAA,CAAAS,IAAA,CAAArB,CAAA,OAAAY,MAAA,CAAAU,qBAAA,QAAAC,CAAA,GAAAX,MAAA,CAAAU,qBAAA,CAAAtB,CAAA,GAAAK,CAAA,KAAAkB,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAnB,CAAA,WAAAO,MAAA,CAAAE,wBAAA,CAAAd,CAAA,EAAAK,CAAA,EAAAoB,UAAA,OAAAnB,CAAA,CAAAoB,IAAA,CAAAC,KAAA,CAAArB,CAAA,EAAAiB,CAAA,YAAAjB,CAAA;AAAA,SAAAsB,cAAA5B,CAAA,aAAAK,CAAA,MAAAA,CAAA,GAAAwB,SAAA,CAAAC,MAAA,EAAAzB,CAAA,UAAAC,CAAA,WAAAuB,SAAA,CAAAxB,CAAA,IAAAwB,SAAA,CAAAxB,CAAA,QAAAA,CAAA,OAAAe,OAAA,CAAAR,MAAA,CAAAN,CAAA,OAAAyB,OAAA,WAAA1B,CAAA,IAAA2B,eAAA,CAAAhC,CAAA,EAAAK,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAO,MAAA,CAAAqB,yBAAA,GAAArB,MAAA,CAAAsB,gBAAA,CAAAlC,CAAA,EAAAY,MAAA,CAAAqB,yBAAA,CAAA3B,CAAA,KAAAc,OAAA,CAAAR,MAAA,CAAAN,CAAA,GAAAyB,OAAA,WAAA1B,CAAA,IAAAO,MAAA,CAAAC,cAAA,CAAAb,CAAA,EAAAK,CAAA,EAAAO,MAAA,CAAAE,wBAAA,CAAAR,CAAA,EAAAD,CAAA,iBAAAL,CAAA;AAAA,SAAAgC,gBAAAhC,CAAA,EAAAK,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAA8B,cAAA,CAAA9B,CAAA,MAAAL,CAAA,GAAAY,MAAA,CAAAC,cAAA,CAAAb,CAAA,EAAAK,CAAA,IAAA+B,KAAA,EAAA9B,CAAA,EAAAmB,UAAA,MAAAY,YAAA,MAAAC,QAAA,UAAAtC,CAAA,CAAAK,CAAA,IAAAC,CAAA,EAAAN,CAAA;AAAA,SAAAmC,eAAA7B,CAAA,QAAAY,CAAA,GAAAqB,YAAA,CAAAjC,CAAA,uCAAAY,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAqB,aAAAjC,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAN,CAAA,GAAAM,CAAA,CAAAkC,MAAA,CAAAC,WAAA,kBAAAzC,CAAA,QAAAkB,CAAA,GAAAlB,CAAA,CAAAiB,IAAA,CAAAX,CAAA,EAAAD,CAAA,uCAAAa,CAAA,SAAAA,CAAA,YAAAwB,SAAA,yEAAArC,CAAA,GAAAsC,MAAA,GAAAC,MAAA,EAAAtC,CAAA;AAkD9B,MAAMuC,WAAW,CAAC;EAGvBC,WAAWA,CACDC,kBAA0C,EAE1CC,MAAc,EAEdC,SAAoB,EAEpBC,QAAsB,EAEtBC,QAAsB,EAEtBC,IAAc,EAEdC,aAAuC,EAEvCC,GAAoB,EAEpBC,SAAwB,EAExBC,WAAwB,EAExBC,cAA8B,EAE9BC,eAAgC,EAEhCC,SAAwB,EAChC;IAAA,KAzBQZ,kBAA0C,GAA1CA,kBAA0C;IAAA,KAE1CC,MAAc,GAAdA,MAAc;IAAA,KAEdC,SAAoB,GAApBA,SAAoB;IAAA,KAEpBC,QAAsB,GAAtBA,QAAsB;IAAA,KAEtBC,QAAsB,GAAtBA,QAAsB;IAAA,KAEtBC,IAAc,GAAdA,IAAc;IAAA,KAEdC,aAAuC,GAAvCA,aAAuC;IAAA,KAEvCC,GAAoB,GAApBA,GAAoB;IAAA,KAEpBC,SAAwB,GAAxBA,SAAwB;IAAA,KAExBC,WAAwB,GAAxBA,WAAwB;IAAA,KAExBC,cAA8B,GAA9BA,cAA8B;IAAA,KAE9BC,eAAgC,GAAhCA,eAAgC;IAAA,KAEhCC,SAAwB,GAAxBA,SAAwB;IAAA3B,eAAA,yBA3BI,IAAI4B,GAAG,CAAC,CAAC;EA4B5C;EACH;AACF;AACA;AACA;AACA;AACA;EACE,MAAMC,OAAOA,CAACC,QAAmB,EAAEC,OAAiC,EAAiC;IACnG;IACA,IAAI,CAACd,SAAS,CAACe,gBAAgB,GAAG,IAAI;IACtC,IAAIF,QAAQ,IAAIA,QAAQ,CAAChC,MAAM,EAAE;MAC/B,MAAM,IAAI,CAACmC,YAAY,CAACH,QAAQ,EAAEC,OAAO,CAAC;IAC5C;IACA,IAAIA,OAAO,EAAEG,eAAe,EAAE;MAC5B,MAAMC,UAAU,GAAG,MAAM,IAAI,CAACC,sBAAsB,CAAC,EAAE,CAAC;MACxD,MAAMC,gBAAgB,GAAG,IAAI,CAACtB,kBAAkB,CAACuB,kBAAkB,CAAC,CAAC;MACrE,MAAMC,YAAY,GAAG,MAAM,IAAI,CAACC,sCAAsC,CAAC,CAAC;MACxE,MAAMC,gBAA8C,GAAG;QACrDC,MAAM,EAAEX,OAAO,EAAEW,MAAM;QACvBC,uBAAuB,EAAEZ,OAAO,EAAEY,uBAAuB,IAAI,IAAI;QACjEC,6BAA6B,EAAEb,OAAO,EAAEa,6BAA6B,IAAI,KAAK;QAC9EC,kBAAkB,EAAEN,YAAY;QAChCO,SAAS,EAAE,IAAI,CAAC/B,kBAAkB,CAACgC,MAAM,CAACD,SAAS;QACnDE,aAAa,EAAE,IAAI,CAACjC,kBAAkB,CAACgC,MAAM,CAACC,aAAa;QAC3DC,mBAAmB,EAAE,IAAI,CAAClC,kBAAkB,CAACgC,MAAM,CAACE;MACtD,CAAC;MACD,MAAMC,YAAY,GAAG,MAAM,IAAI,CAACnC,kBAAkB,CAACoC,0BAA0B,CAC3E,IAAI,CAAClC,SAAS,CAACmC,IAAI,EACnBf,gBAAgB,EAChBF,UAAU,EACVM,gBACF,CAAC;MACD,IAAIS,YAAY,EAAE;QAChB,MAAMG,mBAAmB,GAAGzE,MAAM,CAAC0E,OAAO,CAACJ,YAAY,CAAC,CAACK,GAAG,CAAC,CAAC,CAACC,QAAQ,EAAEC,KAAK,CAAC,KAAK,GAAGD,QAAQ,IAAIC,KAAK,EAAE,CAAC;QAC3G,MAAM,IAAI,CAACxB,YAAY,CAACoB,mBAAmB,EAAEtB,OAAO,CAAC;MACvD,CAAC,MAAM;QACL,IAAI,CAACf,MAAM,CAAC0C,OAAO,CAAC,qCAAqC,CAAC;MAC5D;IACF;IACA,MAAM,IAAAC,qBAAU,EAAC,IAAI,CAAClC,cAAc,CAACmC,MAAM,CAAC,CAAC,EAAGC,EAAE,IAAKA,EAAE,CAAC9B,OAAO,CAAC,CAAC,CAAC,CAAC;IACrE,MAAM+B,GAAG,GAAG,MAAM,IAAI,CAACC,eAAe,CAAChC,OAAO,CAAC;IAC/C,IAAI,CAACd,SAAS,CAACe,gBAAgB,GAAG,KAAK;IAEvC,MAAM,IAAI,CAACL,SAAS,CAACqC,eAAe,CAAC,eAAe,CAAC;IAErD,OAAOF,GAAG;EACZ;EAEAG,eAAeA,CAACJ,EAAW,EAAE;IAC3B,IAAI,CAACrC,WAAW,CAAC0C,QAAQ,CAACL,EAAE,CAAC;EAC/B;EAEAM,kBAAkBA,CAACN,EAAc,EAAE;IACjC,IAAI,CAACpC,cAAc,CAACyC,QAAQ,CAACL,EAAE,CAAC;EAClC;EAEAO,mBAAmBA,CAACP,EAAe,EAAE;IACnC,IAAI,CAACnC,eAAe,CAACwC,QAAQ,CAACL,EAAE,CAAC;EACnC;EAEA,MAAMQ,iBAAiBA,CAACC,eAAiC,EAAE;IACzD,IAAI,CAACrD,SAAS,CAACe,gBAAgB,GAAG,IAAI;IACtC,IAAIuC,UAAU,GAAG,KAAK;IACtB,IAAIzC,QAAkB,GAAG,EAAE;IAC3B,IAAI0C,cAAc,GAAG,KAAK;IAE1B,MAAMC,GAAG,GAAGH,eAAe,CAACf,GAAG,CAAEmB,cAAc,IAAK;MAClD,IAAIA,cAAc,CAACC,YAAY,IAAID,cAAc,CAACC,YAAY,CAAC7E,MAAM,EAAE;QACrEgC,QAAQ,GAAGA,QAAQ,CAAC8C,MAAM,CAACF,cAAc,CAACC,YAAY,CAAC;QACvDJ,UAAU,GAAG,IAAI;MACnB;MACA,IAAIG,cAAc,CAACG,0BAA0B,EAAE;QAC7CL,cAAc,GAAG,IAAI;QACrBD,UAAU,GAAG,IAAI;MACnB;MACA,IAAIG,cAAc,CAACI,KAAK,IAAIJ,cAAc,CAACK,KAAK,EAAE;QAChDR,UAAU,GAAG,IAAI;MACnB;MACA,OAAOG,cAAc,CAACM,EAAE;IAC1B,CAAC,CAAC;IACF,MAAMC,aAAuB,GAAG,EAAE;IAElCR,GAAG,CAAClB,GAAG,CAAEyB,EAAE,IAAK,IAAI,CAAC/D,SAAS,CAACiE,mBAAmB,CAACF,EAAE,CAAC,CAAC;IACvD,MAAM,IAAArB,qBAAU,EAACc,GAAG,EAAE,MAAOO,EAAE,IAAK;MAClC,MAAMG,SAAS,GAAG,MAAM,IAAI,CAAClE,SAAS,CAACzC,GAAG,CAACwG,EAAE,CAAC;MAC9C;MACA,MAAMI,KAAK,GAAG,CAAC,MAAM,IAAI,CAAChE,IAAI,CAACiE,cAAc,CAACF,SAAS,CAAC,EAAEG,QAAQ,CAAC,CAAC;MACpE,MAAMC,QAAQ,GAAG,IAAI,CAACnE,IAAI,CAACoE,eAAe,CAACJ,KAAK,CAAC;MACjD,IAAI,CAACG,QAAQ,EAAE;QACbN,aAAa,CAACvF,IAAI,CAAC0F,KAAK,CAAC;MAC3B;MACA,OAAOD,SAAS;IAClB,CAAC,CAAC;IACF,IAAIF,aAAa,CAACnF,MAAM,EAAE;MACxByE,UAAU,GAAG,IAAI;IACnB;IACA,IAAI,CAACA,UAAU,EAAE;MACf,IAAI,CAACtD,SAAS,CAACe,gBAAgB,GAAG,KAAK;MACvC;IACF;IACA;IACA;IACA;IACA,MAAM,IAAI,CAACH,OAAO,CAACC,QAAQ,EAAE;MAC3B2D,cAAc,EAAEjB,cAAc;MAC9BkB,cAAc,EAAE,IAAI;MACpBC,gBAAgB,EAAE;MAClB;IACF,CAAC,CAAC;EACJ;EAEA,MAAc1D,YAAYA,CAACH,QAAkB,EAAEC,OAAiC,EAAE;IAChF,IAAKA,OAAO,EAAE6D,aAAa,KAAgB,KAAK,EAAE;MAChD,MAAM,KAAIC,gDAAkC,EAAC9D,OAAO,EAAE6D,aAAuB,CAAC;IAChF;IACA,IAAI,CAAC5E,MAAM,CAAC8E,KAAK,CAAC,sCAAsChE,QAAQ,CAACiE,IAAI,CAAC,CAAC,EAAE,CAAC;IAC1E,MAAMC,QAAQ,GAAG,MAAM,IAAI,CAACjF,kBAAkB,CAACkF,kBAAkB,CAAC,CAAC;IACnE,MAAMC,iBAAiB,GAAGpE,QAAQ,CAACyB,GAAG,CAAE4C,WAAW,IACjDH,QAAQ,CAACI,oBAAoB,CAACD,WAAW,EAAE;MACzCE,OAAO,EAAE,IAAI,CAACpF,SAAS,CAACmC;IAC1B,CAAC,CACH,CAAC;IACD,MAAMkD,gBAAgB,GAAG,MAAMC,OAAO,CAACC,GAAG,CAACN,iBAAiB,CAAC;IAC7D,MAAMO,yBAAiD,GAAG,EAAE;IAC5DH,gBAAgB,CAACvG,OAAO,CAAE2G,eAAe,IAAK;MAC5C,IAAIA,eAAe,CAACC,OAAO,EAAE;QAC3B,MAAMC,iBAAiB,GAAG,IAAI,CAAC7F,kBAAkB,CAAC8F,wBAAwB,CAAC;UACzEF,OAAO,EAAED,eAAe,CAACC,OAAO;UAChCG,cAAc,EAAE/E,OAAO,EAAEgF,UAAU;UACnCC,WAAW,EAAEN,eAAe,CAACM;QAC/B,CAAC,CAAC;QACFP,yBAAyB,CAAC/G,IAAI,CAAC;UAC7BuH,YAAY,EAAEP,eAAe,CAACP,WAAW;UACzC/F,KAAK,EAAE;YACLuG,OAAO,EAAEC;UACX,CAAC;UACDhB,aAAa,EAAE7D,OAAO,EAAE6D,aAAa,IAAI;QAC3C,CAAC,CAAC;MACJ;IACF,CAAC,CAAC;IACF,IAAI,CAAC7E,kBAAkB,CAACmG,eAAe,CAACT,yBAAyB,EAAE;MACjEU,cAAc,EAAEpF,OAAO,EAAEoF,cAAc,IAAI,KAAK;MAChDzB,cAAc,EAAE3D,OAAO,EAAE2D,cAAc,IAAI;IAC7C,CAAC,CAAC;IACF,MAAM,IAAI,CAAC3E,kBAAkB,CAACqG,aAAa,CAAC,SAAS,CAAC;EACxD;EAEA,MAAcrD,eAAeA,CAAChC,OAA+B,EAAiC;IAC5F,MAAMsF,EAAE,GAAG,IAAI,CAACtG,kBAAkB,CAACuG,iBAAiB,CAAC,CAAC;IACtD,IAAI,CAACtG,MAAM,CAAC0C,OAAO,CACjB,8CAA8C2D,EAAE,EAAEE,IAAI,KAAKC,gBAAK,CAACC,IAAI,CACnE,IAAI,CAAC1G,kBAAkB,CAAC2G,qBAAqB,CAAC,CAChD,CAAC,GACH,CAAC;IACD,IAAI,CAAC1G,MAAM,CAAC8E,KAAK,CAAC,mDAAmD,EAAE/D,OAAO,CAAC;IAC/E,MAAMQ,YAAY,GAAG,MAAM,IAAI,CAACC,sCAAsC,CAAC,CAAC;IACxE,MAAMmF,iBAAiB,GAAG,IAAI,CAAC5G,kBAAkB,CAAC4G,iBAAiB,CAAC,CAAC;IACrE;IACA,MAAMC,SAAS,GAAG,IAAI,CAAC7G,kBAAkB,CAAC8G,YAAY,CAAC,CAAC,CAAC,CAAC;IAC1D,MAAMC,iBAAmD,GAAG;MAC1DlF,6BAA6B,EAAEb,OAAO,EAAEa,6BAA6B,IAAI,KAAK;MAC9ED,uBAAuB,EAAEZ,OAAO,EAAEY,uBAAuB,IAAI,IAAI;MACjED,MAAM,EAAE,CAACiF,iBAAiB,IAAI5F,OAAO,EAAEW,MAAM;MAC7CG,kBAAkB,EAAEN,YAAY;MAChCwF,UAAU,EAAE,IAAI,CAAChH,kBAAkB,CAACgH,UAAU,CAAC;IACjD,CAAC;IACD,MAAMC,QAAQ,GAAG;MACfC,cAAc,EAAE,IAAI;MACpBC,eAAe,EAAE,IAAI,CAACnH,kBAAkB,CAACmH,eAAe,CAAC,CAAC;MAC1DC,uBAAuB,EAAE,CAACR,iBAAiB;MAC3CS,kBAAkB,EAAE,CAAC,IAAI,CAACnH,SAAS,CAACoH,QAAQ,IAAI,CAACV;IACnD,CAAC;IACD,MAAM;MAAEW;IAAe,CAAC,GAAG,MAAM,IAAI,CAACC,cAAc,CAACP,QAAQ,CAAC;IAC9D;IACA,IAAI;MAAE3F,gBAAgB;MAAEmG,sBAAsB,EAAEC;IAAQ,CAAC,GAAG,MAAM,IAAI,CAACC,oCAAoC,CACzGd,SAAS,EAAAhI,aAAA,CAAAA,aAAA,KAEJkI,iBAAiB;MACpBrC,cAAc,EAAE1D,OAAO,EAAE0D,cAAc;MACvC6C;IAAc,EAElB,CAAC;IAED,MAAM7F,gBAA8C,GAAA7C,aAAA,CAAAA,aAAA,KAC/CkI,iBAAiB;MACpBa,gBAAgB,EAAE,IAAI,CAAC5H,kBAAkB,CAACgC,MAAM,CAAC4F,gBAAgB;MACjEC,mBAAmB,EAAE7G,OAAO,EAAE6G,mBAAmB;MACjDC,sBAAsB,EAAE,IAAI,CAAC9H,kBAAkB,CAACgC,MAAM,CAAC8F,sBAAsB;MAC7E/F,SAAS,EAAE,IAAI,CAAC/B,kBAAkB,CAACgC,MAAM,CAACD,SAAS;MACnDE,aAAa,EAAE,IAAI,CAACjC,kBAAkB,CAACgC,MAAM,CAACC,aAAa;MAC3D8F,yBAAyB,EAAE,IAAI,CAAC/H,kBAAkB,CAACgC,MAAM,CAAC+F,yBAAyB;MACnF7F,mBAAmB,EAAE,IAAI,CAAClC,kBAAkB,CAACgC,MAAM,CAACE,mBAAmB;MACvE8F,cAAc,EAAEpB,iBAAiB;MACjCqB,SAAS,EAAEjH,OAAO,EAAEiH,SAAS;MAC7BC,4BAA4B,EAAElH,OAAO,EAAEkH,4BAA4B;MACnEC,YAAY,EAAEnH,OAAO,EAAEmH;IAAY,EACpC;IACD,MAAMC,aAAa,GAAG,IAAIvH,GAAG,CAAS,CAAC;IACvC;IACA;IACA,MAAMwH,kBAAkB,GAAG;MACzB,CAAC,IAAI,CAACnI,SAAS,CAACmC,IAAI,GAAGkF;IACzB,CAAC;IACD,MAAMnG,UAAU,GAAG,MAAM,IAAI,CAACC,sBAAsB,CAAC,EAAE,CAAC;IACxD,IAAIiH,YAAY,GAAG,CAAC;IACpB,IAAIC,yBAAyB,GAAG,IAAI;IACpC,MAAMC,uBAAuB,GAAG,CAAC,IAAI,CAACxI,kBAAkB,CAACyI,sBAAsB,CAAC,CAAC;IACjF;IACA,GAAG;MACD;MACA;MACA;MACA;MACAF,yBAAyB,GAAG3B,iBAAiB,IAAI8B,uCAAuC,CAAChB,OAAO,CAAC;MACjG,MAAM;QAAEiB;MAAoB,CAAC,GAAG,MAAM9B,SAAS,CAAC+B,iBAAiB,CAC/D,IAAI,CAAC1I,SAAS,CAACmC,IAAI,EACnBqF,OAAO,CAACmB,SAAS,EACjBvH,gBAAgB,EAChBoG,OAAO,CAACoB,qBAAqB,EAC7B;QACET,kBAAkB;QAClBU,iBAAiB,EAAE,KAAK;QACxBP;MACF,CAAC,EACD9G,gBACF,CAAC;MACD,IAAIsH,YAAY,GAAG,KAAK;MACxB,MAAM,IAAI,CAACC,YAAY,CAAC7H,UAAU,CAAC;MACnC,IAAIJ,OAAO,EAAEkI,OAAO,IAAI,IAAI,EAAE;QAC5B,MAAMC,gBAAgB,GAAGC,OAAO,CAACC,MAAM,CAAC,CAAC;QACzC,MAAMC,oBAAoB,GAAG,sBAAsB;QACnD,IAAI,CAACrJ,MAAM,CAACsJ,aAAa,CAACD,oBAAoB,CAAC;QAC/C;QACA;QACA,IAAI,CAACpJ,SAAS,CAACsJ,QAAQ,CAACC,eAAe,CAACC,oBAAoB,CAAC,CAAC;QAC9D;QACA,MAAM,IAAI,CAACxJ,SAAS,CAACyJ,UAAU,CAAC;UAAEC,yBAAyB,EAAE;QAAK,CAAC,CAAC;QACpEZ,YAAY,GAAG,IAAI;QACnB,MAAM,IAAI,CAAC5I,QAAQ,CAACyJ,kBAAkB,CAAC,EAAE,EAAE;UAAEC,SAAS,EAAEC,gCAAoB,CAACC;QAAQ,CAAC,CAAC;QACvF,IAAI,CAAC/J,MAAM,CAACgK,cAAc,CAACX,oBAAoB,EAAEH,gBAAgB,CAAC;MACpE;MACA,IAAInI,OAAO,EAAE4D,gBAAgB,IAAI,IAAI,EAAE;QACrC,MAAM,IAAI,CAACsF,mBAAmB,CAAC,CAAClB,YAAY,CAAC;MAC/C;MACA,IAAI,CAACL,mBAAmB,EAAE;MAC1B,IAAI,CAAC3H,OAAO,EAAEmJ,gBAAgB,EAAE;MAChC,MAAMC,gBAAgB,GAAG,IAAI,CAACC,mBAAmB,CAAC,CAAC;MACnD,IAAI,CAACD,gBAAgB,CAACrL,MAAM,EAAE;MAC9BqJ,aAAa,CAACkC,GAAG,CAACC,aAAa,CAAC7C,OAAO,CAACmB,SAAS,CAAC,CAAC;MACnD;MACA;MACA,IAAI,CAACG,YAAY,EAAE;QACjB;QACA,IAAI,CAAC9I,SAAS,CAACsJ,QAAQ,CAACC,eAAe,CAACC,oBAAoB,CAAC,CAAC;QAC9D;QACA,MAAM,IAAI,CAACxJ,SAAS,CAACyJ,UAAU,CAAC;UAAEC,yBAAyB,EAAE;QAAK,CAAC,CAAC;MACtE;MACAlC,OAAO,GAAG,MAAM,IAAI,CAAC8C,uBAAuB,CAAC3D,SAAS,EAAEvF,gBAAgB,EAAEyF,iBAAiB,CAAC;MAC5FuB,YAAY,IAAI,CAAC;IACnB,CAAC,QAAQ,CAAC,CAACF,aAAa,CAAC5K,GAAG,CAAC+M,aAAa,CAAC7C,OAAO,CAACmB,SAAS,CAAC,CAAC,IAAIN,yBAAyB,KAAKD,YAAY,GAAG,CAAC;IAChH,IAAI,CAACtH,OAAO,EAAEmH,YAAY,IAAI,CAACnH,OAAO,EAAEyJ,SAAS,EAAE;MACjD;MACA;MACA,MAAM5D,SAAS,CAAC6D,YAAY,CAAC,IAAI,CAACxK,SAAS,CAACmC,IAAI,CAAC;IACnD;IACA,MAAM,IAAI,CAACnC,SAAS,CAACsJ,QAAQ,CAACmB,gBAAgB,CAACC,8BAA8B,CAAC,CAAC;IAC/E;IACA,OAAOlD,OAAO,CAACoB,qBAAqB;EACtC;EAEA,MAAcnB,oCAAoCA,CAChDd,SAA8B,EAC9B7F,OAGC,EAC+F;IAChG,MAAMM,gBAAgB,GAAG,MAAM,IAAI,CAACuJ,qCAAqC,CAAC,CAAC;IAC3E,MAAM,IAAI,CAACC,2CAA2C,CAACxJ,gBAAgB,CAAC;IACxE,MAAMmG,sBAAsB,GAAG,MAAM,IAAI,CAAC+C,uBAAuB,CAAC3D,SAAS,EAAEvF,gBAAgB,EAAEN,OAAO,CAAC;IACvG,IAAI,CAACA,OAAO,EAAE0D,cAAc,EAAE;MAC5B,OAAO;QAAE+C,sBAAsB;QAAEnG;MAAiB,CAAC;IACrD;IACA,MAAMyJ,QAAQ,GAAG,IAAIlK,GAAG,CACtBhD,MAAM,CAACS,IAAI,CAAAO,aAAA,CAAAA,aAAA,CAAAA,aAAA,KACN4I,sBAAsB,CAACoB,SAAS,CAAC,IAAI,CAAC3I,SAAS,CAACmC,IAAI,CAAC,CAAC2I,eAAe,GACrEvD,sBAAsB,CAACoB,SAAS,CAAC,IAAI,CAAC3I,SAAS,CAACmC,IAAI,CAAC,CAACuB,YAAY,GAClE5C,OAAO,CAACuG,cAAc,CAC1B,CACH,CAAC;IACD1J,MAAM,CAACgF,MAAM,CAAC,IAAAoI,cAAI,EAACxD,sBAAsB,CAACoB,SAAS,EAAE,CAAC,IAAI,CAAC3I,SAAS,CAACmC,IAAI,CAAC,CAAC,CAAC,CAACrD,OAAO,CAAEkM,QAAQ,IAAK;MACjG,IAAKA,QAAQ,CAAqB1E,IAAI,EAAE;QACtCuE,QAAQ,CAACT,GAAG,CAAEY,QAAQ,CAAqB1E,IAAK,CAAC,CAAC,CAAC;MACrD;IACF,CAAC,CAAC;IACF,MAAM2E,YAAY,GAAG,MAAM,IAAI,CAACC,+BAA+B,CAACL,QAAQ,CAAC;IACzE,IAAI,CAACI,YAAY,EAAE;MACjB,OAAO;QAAE1D,sBAAsB;QAAEnG;MAAiB,CAAC;IACrD;IACA,MAAM+J,+BAA+B,GAAG,MAAM,IAAI,CAACR,qCAAqC,CAAC,CAAC;IAC1F,MAAM,IAAI,CAACC,2CAA2C,CAACO,+BAA+B,CAAC;IACvF,OAAO;MACL/J,gBAAgB,EAAE+J,+BAA+B;MACjD5D,sBAAsB,EAAE,MAAM,IAAI,CAAC+C,uBAAuB,CAAC3D,SAAS,EAAEwE,+BAA+B,EAAErK,OAAO;IAChH,CAAC;EACH;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;EACE,MAAckJ,mBAAmBA,CAACP,UAAmB,EAAE;IACrD,MAAM2B,WAAW,GAAG,IAAI,CAAChL,aAAa,CAACiL,6BAA6B,CAAC,CAAC;IACtE,IAAI,CAACD,WAAW,EAAE;IAClB,IAAI3B,UAAU,EAAE;MACd,MAAM,IAAI,CAACzJ,SAAS,CAACyJ,UAAU,CAAC;QAAEC,yBAAyB,EAAE;MAAK,CAAC,CAAC;IACtE;IACA,MAAM;MAAE4B;IAAI,CAAC,GAAG,MAAM,IAAI,CAAClL,aAAa,CAACsE,gBAAgB,CAAC;MACxD6G,KAAK,EAAE,IAAI;MACXC,MAAM,EAAE,IAAI;MACZ/J,MAAM,EAAE,IAAI;MACZgK,KAAK,EAAE;IACT,CAAC,CAAC;IACF,IAAIH,GAAG,EAAE;MACP,IAAI,CAACvL,MAAM,CAAC2L,cAAc,CACxB,+FAA+FJ,GAAG,CAACK,OAAO,EAC5G,CAAC;IACH;EACF;EAEA,MAAchB,qCAAqCA,CAAA,EAA6B;IAC9E,MAAMiB,UAAU,GAAG,IAAI,CAAC9L,kBAAkB,CAACuB,kBAAkB,CAAC,CAAC;IAC/D,MAAMwK,eAAe,GAAG,MAAM,IAAI,CAAC7L,SAAS,CAAC8L,gCAAgC,CAAC;MAAEC,aAAa,EAAE;IAAK,CAAC,CAAC;IACtGF,eAAe,CAAC/M,OAAO,CAAEkN,cAAc,IAAK;MAC1CJ,UAAU,CAACxB,GAAG,CACZ;QACEpE,YAAY,EAAEgG,cAAc,CAAC9G,WAAW;QACxC/F,KAAK,EAAE;UACLuG,OAAO,EAAEsG,cAAc,CAACtG;QAC1B,CAAC;QACDf,aAAa,EAAE;MACjB,CAAC;MACD;MACA;QAAEF,cAAc,EAAE;MAAK,CACzB,CAAC;IACH,CAAC,CAAC;IACF,OAAOmH,UAAU;EACnB;EAEA,MAAchB,2CAA2CA,CAACgB,UAA2B,EAAiB;IACpG,MAAMK,cAAc,GAAG,IAAI,CAAC3L,SAAS,CAAC4L,iBAAiB,CAAC,CAAC;IACzD,MAAMC,YAAY,GAAG,IAAAC,iBAAO,EAC1B,MAAM9G,OAAO,CAACC,GAAG,CACf0G,cAAc,CAAC3J,GAAG,CAAC,MAAO+J,QAAQ,IAAK;MACrC,IAAI,IAAI,CAAClM,IAAI,CAACmM,SAAS,CAACD,QAAQ,CAAC,EAAE;QACjC,OAAOE,SAAS;MAClB;MACA,MAAMC,QAAQ,GAAG,MAAM,IAAI,CAACxM,SAAS,CAACyM,kBAAkB,CAACJ,QAAQ,CAAC;MAClE;MACA,MAAMK,IAAI,GAAG,MAAM,IAAI,CAAC1M,SAAS,CAAC2M,KAAK,CAACH,QAAQ,CAAC;MACjD,IAAIE,IAAI,EAAE;QACR,OAAOH,SAAS;MAClB;MACA,MAAMK,KAAK,GAAG,MAAM,IAAI,CAAC5M,SAAS,CAAC6M,gBAAgB,CACjD,CAACL,QAAQ,CAAC,EACV,kBAAkBA,QAAQ,CAACnI,QAAQ,CAAC,CAAC,mBACvC,CAAC;MACD,MAAMyI,aAAa,GAAG,MAAM,IAAI,CAAC9M,SAAS,CAAC+M,yCAAyC,CAACP,QAAQ,CAAC;MAC9F,MAAM9G,OAAO,GAAGoH,aAAa,CAACE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG;MAClD,MAAM9H,WAAW,GAAG,IAAI,CAACpF,kBAAkB,CAACmN,cAAc,CAACL,KAAK,CAAC,CAAC,CAAC,CAAC;MACpE,OAAO;QACL1H,WAAW;QACXQ;MACF,CAAC;IACH,CAAC,CACH,CACF,CAAC;IAEDyG,YAAY,CAACrN,OAAO,CAAEoO,GAAG,IAAK;MAC5BtB,UAAU,CAACxB,GAAG,CACZ;QACEpE,YAAY,EAAEkH,GAAG,CAAChI,WAAW;QAC7B/F,KAAK,EAAE;UACLuG,OAAO,EAAEwH,GAAG,CAACxH;QACf,CAAC;QACDf,aAAa,EAAE;MACjB,CAAC;MACD;MACA;QAAEF,cAAc,EAAE;MAAK,CACzB,CAAC;IACH,CAAC,CAAC;EACJ;EAEA,MAAcyG,+BAA+BA,CAC3CL,QAAqB,EACrB/J,OAAiC,EACf;IAClB,MAAMD,QAAQ,GAAG,MAAM,IAAI,CAACsM,kCAAkC,CAACtC,QAAQ,CAAC;IACxE,IAAIhK,QAAQ,IAAIA,QAAQ,CAAChC,MAAM,EAAE;MAC/B,MAAM,IAAI,CAACmC,YAAY,CAACH,QAAQ,EAAEC,OAAO,CAAC;IAC5C;IACA,OAAOD,QAAQ,CAAChC,MAAM,GAAG,CAAC;EAC5B;EAEA,MAAcsO,kCAAkCA,CAACtC,QAAqB,EAAE;IACtE,MAAMhK,QAAQ,GAAG,MAAM,IAAI,CAACuM,sBAAsB,CAAC,CAAC;IACpD,OAAOvM,QAAQ,CAACtC,MAAM,CAAE8O,GAAG,IAAK,CAACxC,QAAQ,CAACvN,GAAG,CAAC+P,GAAG,CAAC,CAAC;EACrD;EAEA,MAAcD,sBAAsBA,CAAA,EAAsB;IACxD,MAAMR,KAAK,GAAG,MAAM,IAAI,CAAC5M,SAAS,CAACsN,IAAI,CAAC,CAAC;IACzC,OAAO,IAAAC,cAAI,EACTX,KAAK,CACFtK,GAAG,CAAEkL,IAAI,IAAK;MACb,MAAM7S,IAAI,GAAG6S,IAAI,CAACC,KAAK,CAACC,MAAM,CAACC,QAAQ,CAACC,gCAAa,CAACC,+BAA+B,CAAC,EAAElT,IAAI,IAAI,EAAE;MAClG,OAAOA,IAAI,CAAC2H,GAAG,CAAEwL,CAAC,IAAKA,CAAC,CAACC,eAAe,CAAC,CAACC,IAAI,CAAC,CAAC;IAClD,CAAC,CAAC,CACDA,IAAI,CAAC,CACV,CAAC;EACH;EAEA,MAAc1D,uBAAuBA,CACnC2D,mBAAwC,EACxCrC,UAA2B,EAC3BsC,cAAgD,EACf;IACjC,MAAMtF,qBAAqB,GAAG,MAAM,IAAI,CAACzH,sBAAsB,CAAC,EAAE,CAAC;IACnE,IAAIwH,SAAS,GAAG,MAAMsF,mBAAmB,CAACE,qBAAqB,CAAAxP,aAAA,CAAAA,aAAA,KAC1DuP,cAAc;MACjBtF,qBAAqB;MACrBgD,UAAU;MACVxG,OAAO,EAAE,IAAI,CAACpF,SAAS,CAACmC,IAAI;MAC5BiM,sBAAsB,EAAE,IAAI,CAACtO,kBAAkB,CAAC4G,iBAAiB,CAAC,CAAC,IAAIwH,cAAc,CAACpH,UAAU,KAAK;IAAU,EAChH,CAAC;IAEF,IAAI,IAAI,CAAChH,kBAAkB,CAAC4G,iBAAiB,CAAC,CAAC,EAAE;MAC/C,MAAM2H,aAAa,GAAG,MAAM,IAAI,CAACC,iBAAiB,CAAC3F,SAAS,CAAC;MAC7D,MAAM,IAAI,CAAC4F,eAAe,CAAC5Q,MAAM,CAACS,IAAI,CAACiQ,aAAa,CAAC,CAAC;MACtD1F,SAAS,GAAAhK,aAAA,CAAAA,aAAA,KACJgK,SAAS,GACT0F,aAAa,CACjB;IACH;IACA,OAAO;MACLzF,qBAAqB;MACrBD;IACF,CAAC;EACH;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;EACSwB,mBAAmBA,CAAA,EAAG;IAC3B,MAAMnG,aAAa,GAAG,IAAI,CAAC7D,IAAI,CAACqO,mBAAmB,CAAC,CAAC;IACrD,MAAMC,mBAAmB,GAAGC,KAAK,CAACC,IAAI,CAAC,IAAI,CAAC7O,kBAAkB,CAAC2O,mBAAmB,CAAC;IACnF,MAAMvE,gBAAgB,GAAG,IAAA0E,sBAAY,EAAC5K,aAAa,EAAEyK,mBAAmB,CAAC;IACzE,OAAOvE,gBAAgB;EACzB;EAEA,MAAcqE,eAAeA,CAACM,QAAkB,EAAE;IAChD,IAAI;MACF,MAAMC,eAAe,GAAG,IAAAC,0BAAc,EAAC,IAAI,CAAC/O,SAAS,CAACmC,IAAI,CAAC;MAC3D,MAAM6M,YAAY,GAAG,MAAMC,kBAAE,CAACC,OAAO,CAACJ,eAAe,CAAC;MACtD,MAAMxJ,OAAO,CAACC,GAAG,CACfyJ,YAAY,CAAC1M,GAAG,CAAC,MAAO6M,OAAO,IAAK;QAClC,MAAMC,OAAO,GAAGjN,eAAI,CAAC2C,IAAI,CAACgK,eAAe,EAAEK,OAAO,CAAC;QACnD,IAAI,CAACN,QAAQ,CAACQ,QAAQ,CAACD,OAAO,CAAC,EAAE;UAC/B,MAAMH,kBAAE,CAACK,MAAM,CAACF,OAAO,CAAC;QAC1B;MACF,CAAC,CACH,CAAC;IACH,CAAC,CAAC,OAAO9D,GAAQ,EAAE;MACjB,IAAIA,GAAG,CAACiE,IAAI,KAAK,QAAQ,EAAE,MAAMjE,GAAG;IACtC;IACA,MAAMhG,OAAO,CAACC,GAAG,CAACsJ,QAAQ,CAACvM,GAAG,CAAE8M,OAAO,IAAKH,kBAAE,CAACO,KAAK,CAACJ,OAAO,EAAE;MAAEK,SAAS,EAAE;IAAK,CAAC,CAAC,CAAC,CAAC;EACtF;EAEA,MAAcnB,iBAAiBA,CAC7B3F,SAA0C,EACA;IAC1C,MAAM+G,gBAAgB,GAAG/R,MAAM,CAACgF,MAAM,CAACgG,SAAS,CAAC,CAACpK,MAAM,CAAC,CAAC;MAAE+H;IAAK,CAAC,KAAKA,IAAI,KAAK,WAAW,CAAC;IAC5F,MAAMqJ,aAAa,GAAG,IAAI,CAAC7P,kBAAkB,CAAC8P,0BAA0B,CAACF,gBAAgB,CAAC;IAC1F,MAAMG,iBAAiB,GAAGlS,MAAM,CAACS,IAAI,CAACuR,aAAa,CAAC,CAACG,MAAM,CAAC,CAACC,GAAG,EAAEC,OAAO,KAAK;MAC5ED,GAAG,CAACC,OAAO,CAAC,GAAG;QAAEC,QAAQ,EAAE;MAAK,CAAC;MACjC,OAAOF,GAAG;IACZ,CAAC,EAAE,CAAC,CAAC,CAAC;IACN,MAAMG,YAAY,GAAG,MAAM,IAAI,CAACC,gBAAgB,CAACR,aAAa,EAAEE,iBAAiB,CAAC;IAClF,MAAMO,YAAY,GAAG,MAAM,IAAI,CAACC,gBAAgB,CAAC1H,SAAS,EAAEgH,aAAa,EAAEE,iBAAiB,CAAC;IAC7F,OAAAlR,aAAA,CAAAA,aAAA,KACKuR,YAAY,GACZE,YAAY;EAEnB;EAEA,MAAcD,gBAAgBA,CAC5BR,aAAqC,EACrCE,iBAAqD,EACX;IAC1C,MAAM1P,IAAI,GAAG,MAAM,IAAI,CAACmQ,iBAAiB,CAAC,CAAC;IAC3C,OAAO3S,MAAM,CAAC4S,WAAW,CACvB,MAAMjL,OAAO,CAACC,GAAG,CACfpF,IAAI,CAACmC,GAAG,CAAC,MAAO6B,KAAK,IAAK;MACxB,OAAO,CACL,MAAM,IAAI,CAACqM,2BAA2B,CAAC,IAAI,CAACxQ,SAAS,CAACmC,IAAI,EAAEgC,KAAK,CAAC,EAClE;QACET,YAAY,EAAA/E,aAAA,CAAAA,aAAA,CAAAA,aAAA,KACN,MAAM,IAAI,CAAC8R,mBAAmB,CAACtM,KAAK,CAAC,GACtCwL,aAAa,GACZ,MAAM,IAAI,CAACe,cAAc,CAACvM,KAAK,CAAC,CACrC;QACDwM,gBAAgB,EAAEd,iBAAiB;QACnCe,aAAa,EAAE;UACbC,cAAc,EAAE;QAClB;MACF,CAAC,CACF;IACH,CAAC,CACH,CACF,CAAC;EACH;EAEA,MAAcJ,mBAAmBA,CAACtM,KAAkB,EAAmC;IACrF,MAAM2M,MAAM,GAAG,MAAM,IAAI,CAAChR,kBAAkB,CAACiR,qBAAqB,CAAC5M,KAAK,CAAC;IACzE,IAAI,CAAC2M,MAAM,EAAE,OAAO,CAAC,CAAC;IACtB,OAAOnT,MAAM,CAAC4S,WAAW,CACvBO,MAAM,CAACE,UAAU,CAAC3O,OAAO,CACtB9D,MAAM,CAAC,CAAC;MAAE0S,KAAK;MAAE9R;IAAM,CAAC,KAAK8R,KAAK,IAAI9R,KAAK,CAACuG,OAAO,KAAK,GAAG,CAAC,CAC5DpD,GAAG,CAAC,CAAC;MAAE0D,YAAY;MAAE7G;IAAM,CAAC,KAAK,CAAC6G,YAAY,EAAE7G,KAAK,CAACuG,OAAO,CAAC,CACnE,CAAC;EACH;;EAEA;AACF;AACA;AACA;AACA;AACA;EACE,MAAcgL,cAAcA,CAACvM,KAAkB,EAA+C;IAC5F,IAAI,IAAI,CAAChE,IAAI,CAACmM,SAAS,CAACnI,KAAK,CAAC+M,sBAAsB,CAAC,CAAC,CAAC,EAAE,OAAO3E,SAAS;IACzE,MAAMG,IAAI,GAAG,MAAM,IAAI,CAAC1M,SAAS,CAAC2M,KAAK,CAACxI,KAAK,CAAC;IAC9C,IAAIuI,IAAI,EAAE,OAAOH,SAAS;IAC1B,MAAM4E,YAAY,GAAG,MAAM,IAAI,CAAChR,IAAI,CAACiR,sBAAsB,CAACjN,KAAK,CAACE,QAAQ,CAAC,CAAC,EAAEF,KAAK,CAACE,QAAQ,CAAC,CAAC,CAAC;IAC/F,IAAI,CAAC8M,YAAY,EAAE,OAAO5E,SAAS;IACnC,MAAMrH,WAAW,GAAG,IAAI,CAACpF,kBAAkB,CAACmN,cAAc,CAACkE,YAAY,CAAC;IACxE,MAAMzL,OAAO,GAAGvB,KAAK,CAACuB,OAAO;IAC7B,MAAM2L,YAAY,GAAG,IAAAC,uCAAY,EAAC5L,OAAiB,CAAC;IACpD,OAAO;MAAE,CAACR,WAAW,GAAGmM;IAAa,CAAC;EACxC;EAEA,MAAchB,gBAAgBA,CAC5B1H,SAA0C,EAC1CgH,aAAqC,EACrCE,iBAAqD,EACX;IAC1C,OAAOlS,MAAM,CAAC4S,WAAW,CACvB,IAAAnE,iBAAO,EACL,MAAM9G,OAAO,CAACC,GAAG,CACf,CACE,MAAM,IAAI,CAAClF,GAAG,CAACkR,kBAAkB,CAAC,CAAC,EACnCjP,GAAG,CAAC,MAAOjC,GAAG,IAAK;MACnB,MAAMmR,UAAU,GAAG,IAAI,CAAC1R,kBAAkB,CAACmN,cAAc,CAAC5M,GAAG,CAAC;MAC9D,MAAMoR,WAAW,GAAG9T,MAAM,CAACgF,MAAM,CAACgG,SAAS,CAAC,CAAC+I,IAAI,CAAC,CAAC;QAAEpL;MAAK,CAAC,KAAKA,IAAI,KAAKkL,UAAU,CAAC;MACpF,IAAI,CAACC,WAAW,EAAE,OAAO,IAAI;MAC7B,MAAMtN,KAAK,GAAG,MAAM,IAAI,CAAChE,IAAI,CAACiE,cAAc,CAAC/D,GAAG,CAAC;MACjD,OAAO,CACL,MAAM,IAAI,CAACmQ,2BAA2B,CAAC,IAAI,CAACxQ,SAAS,CAACmC,IAAI,EAAE9B,GAAG,CAAC0D,EAAE,CAAC,EAAApF,aAAA,CAAAA,aAAA,KAE9D,IAAAoM,cAAI,EAAC0G,WAAW,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QACzC/N,YAAY,EAAA/E,aAAA,CAAAA,aAAA,CAAAA,aAAA,KACN,MAAM,IAAI,CAAC8R,mBAAmB,CAACtM,KAAK,CAAC,GACtCsN,WAAW,CAAC/N,YAAY,GACxBiM,aAAa,CACjB;QACDgB,gBAAgB,EAAAhS,aAAA,CAAAA,aAAA,KACX8S,WAAW,CAACd,gBAAgB,GAC5Bd,iBAAiB,CACrB;QACDe,aAAa,EAAE;UACbC,cAAc,EAAE;QAClB;MAAC,GAEJ;IACH,CAAC,CACH,CACF,CACF,CAAC;EACH;EAEA,MAAcP,iBAAiBA,CAAA,EAA2B;IACxD,MAAMnQ,IAAI,GAAG,IAAIwR,GAAG,CAAsB,CAAC;IAC3C,MAAMC,UAAU,GAAG,MAAM,IAAI,CAAC5R,SAAS,CAACsN,IAAI,CAAC,CAAC;IAC9C,MAAM,IAAA5K,qBAAU,EAACkP,UAAU,EAAE,MAAO1N,SAAS,IAAK;MAChD,MAAMC,KAAK,GAAG,MAAM,IAAI,CAAChE,IAAI,CAACiE,cAAc,CAACF,SAAS,CAAC;MACvD/D,IAAI,CAACjC,GAAG,CAACiG,KAAK,CAACE,QAAQ,CAAC,CAAC,EAAEF,KAAK,CAAC;IACnC,CAAC,CAAC;IACF,OAAOuK,KAAK,CAACC,IAAI,CAACxO,IAAI,CAACwC,MAAM,CAAC,CAAC,CAAC;EAClC;;EAEA;AACF;AACA;AACA;AACA;EACE,MAAMkP,kBAAkBA,CAAC/Q,OAIxB,EAAwC;IACvC,MAAMgR,iBAAiB,GAAG,MAAM,IAAI,CAACC,oCAAoC,CAAC,CAAC;IAC3E,MAAMC,eAAe,GAAG,IAAI,CAAC/R,QAAQ,CAACgS,GAAG,CAAC,CAAC;IAC3C,MAAMC,yBAAyB,GAAG,IAAI,CAACC,gCAAgC,CAACH,eAAe,CAAC;IACxF,MAAMJ,UAAU,GAAG,MAAM,IAAI,CAAC5R,SAAS,CAACsN,IAAI,CAAC,CAAC;IAC9C,MAAM8E,YAAY,GAAG,MAAM,IAAI,CAACtS,kBAAkB,CAACuS,2BAA2B,CAAC;MAC7EjN,OAAO,EAAE,IAAI,CAACpF,SAAS,CAACmC,IAAI;MAC5B+P,yBAAyB;MACzBJ,iBAAiB;MACjBF,UAAU;MACVU,QAAQ,EAAExR,OAAO,CAACwR,QAAQ;MAC1BC,gBAAgB,EAAEzR,OAAO,CAACyR;IAC5B,CAAC,CAAC;IACF,IAAIH,YAAY,IAAI,IAAI,EAAE;MACxB,IAAI,CAACrS,MAAM,CAAC2L,cAAc,CAAC,+CAA+C,CAAC;MAC3E,OAAO,IAAI;IACb;IACA,IAAI8G,oBAA0C;IAC9C,IAAI1R,OAAO,CAACyE,GAAG,EAAE;MACfiN,oBAAoB,GAAGJ,YAAY;IACrC,CAAC,MAAM;MACL,IAAI,CAACrS,MAAM,CAAC0S,GAAG,CAAC,CAAC;MACjBD,oBAAoB,GAAG,MAAM,IAAAE,oCAAgB,EAACN,YAAY,CAAC;MAC3D,IAAI,CAACrS,MAAM,CAAC4S,EAAE,CAAC,CAAC;IAClB;IACA,IAAIH,oBAAoB,CAAC3T,MAAM,KAAK,CAAC,EAAE;MACrC,IAAI,CAACkB,MAAM,CAACgK,cAAc,CAAC,gCAAgC,CAAC;MAC5D,IAAIjJ,OAAO,CAACyR,gBAAgB,KAAK,YAAY,EAAE;QAC7C,IAAI,CAACxS,MAAM,CAAC0C,OAAO,CACjB,4GACF,CAAC;MACH;MACA,OAAO,IAAI;IACb;IACA,MAAM;MAAEmQ,eAAe;MAAEC;IAAkB,CAAC,GAAG,IAAI,CAAC/S,kBAAkB,CAACgT,YAAY,CAACN,oBAAoB,EAAE;MACxGN;IACF,CAAC,CAAC;IACF,MAAM,IAAI,CAACa,uBAAuB,CAACf,eAAe,EAAEY,eAAe,CAAC;IACpE,MAAM,IAAI,CAACI,uBAAuB,CAACH,iBAAiB,CAAC;IACrD,MAAM,IAAI,CAAC7S,SAAS,CAACiT,eAAe,CAAC,CAAC;IACtC,OAAO,IAAI,CAACnQ,eAAe,CAAC;MAAErB,MAAM,EAAE;IAAK,CAAC,CAAC;EAC/C;EAEA,MAAMyR,oCAAoCA,CAACtB,UAAuB,EAAE;IAClE,MAAMuB,eAAe,GAAG,IAAI,CAACrT,kBAAkB,CAACuB,kBAAkB,CAAC,CAAC;IACpEuQ,UAAU,CAAC9S,OAAO,CAAEoF,SAAS,IAAK;MAChC,IAAIA,SAAS,CAACuJ,KAAK,CAAC2F,SAAS,CAACC,OAAO,EAAE;MACvC,MAAMC,OAAO,GAAG,IAAAC,mCAAwB,EAACrP,SAAS,CAACuJ,KAAK,CAAC2F,SAAS,CAAC;MACnE,MAAMI,KAAK,GAAGL,eAAe,CAACzB,IAAI,CAAC4B,OAAO,CAAC;MAC3C,IAAIE,KAAK,EAAE;QACTtP,SAAS,CAACuJ,KAAK,CAACC,MAAM,CAAC+F,WAAW,CAAC7F,gCAAa,CAAC8F,4BAA4B,CAAC,CAAC/Y,IAAI,GAAG6Y,KAAK,CAACxN,YAAY;MAC1G;IACF,CAAC,CAAC;EACJ;EAEA,MAAc+L,oCAAoCA,CAAA,EAAG;IACnD,MAAM4B,eAAe,GAAG,IAAI,CAAC3T,SAAS,CAAC4T,OAAO,CAAC,CAAC;IAChD,MAAM9B,iBAAiB,GAAG,EAAsD;IAChF,CACE,MAAMxM,OAAO,CAACC,GAAG,CACfoO,eAAe,CAACrR,GAAG,CAAEuR,WAAW,IAAK,IAAI,CAAC7T,SAAS,CAAC8T,mBAAmB,CAACD,WAAW,CAAC,CACtF,CAAC,EACD/U,OAAO,CAAC,CAACgV,mBAAmB,EAAEC,KAAK,KAAK;MACxC,IAAI,CAACD,mBAAmB,EAAE;MAC1B,MAAME,iBAAiB,GAAGF,mBAAmB,CAACG,OAAO,CAAC1W,GAAG,CAAC2W,8CAAwB,CAACnQ,EAAE,CAAC;MACtF,IAAI,CAACiQ,iBAAiB,EAAE;MACxB,MAAMH,WAAW,GAAGF,eAAe,CAACI,KAAK,CAAC;MAC1CjC,iBAAiB,CAACrT,IAAI,CAAC;QAAEoV,WAAW;QAAE/C,MAAM,EAAEkD,iBAAiB,CAAClS,MAAM,CAACgP;MAAO,CAAC,CAAC;IAClF,CAAC,CAAC;IACF,OAAOgB,iBAAiB;EAC1B;EAEQK,gCAAgCA,CAACH,eAAyB,EAA6C;IAC7G,MAAME,yBAAoE,GAAG,CAAC,CAAC;IAC/E,KAAK,MAAM,CAACiC,cAAc,EAAEC,UAAU,CAAC,IAAIzW,MAAM,CAAC0E,OAAO,CAAC2P,eAAe,CAAC,EAAE;MAC1E,IAAIoC,UAAU,CAACF,8CAAwB,CAACnQ,EAAE,CAAC,EAAE+M,MAAM,EAAE;QACnDoB,yBAAyB,CAACiC,cAAc,CAAC,GAAGC,UAAU,CAACF,8CAAwB,CAACnQ,EAAE,CAAC,EAAE+M,MAAM;MAC7F;IACF;IACA,OAAOoB,yBAAyB;EAClC;EAEA,MAAcc,uBAAuBA,CAACH,iBAAqC,EAAE;IAC3E,IAAIA,iBAAiB,CAAChU,MAAM,KAAK,CAAC,EAAE;IACpC,MAAMyG,OAAO,CAACC,GAAG,CACfsN,iBAAiB,CAACvQ,GAAG,CAAC,CAAC;MAAEuR,WAAW;MAAE/R;IAAO,CAAC,KAAK;MACjD,OAAO,IAAI,CAAC9B,SAAS,CAACqU,0BAA0B,CAACR,WAAW,EAAEK,8CAAwB,CAACnQ,EAAE,EAAEjC,MAAM,EAAE;QACjGwS,uBAAuB,EAAE,IAAI;QAC7BC,uBAAuB,EAAE;MAC3B,CAAC,CAAC;IACJ,CAAC,CACH,CAAC;IACD,MAAM,IAAI,CAACvU,SAAS,CAACwU,MAAM,CAACC,KAAK,CAAC,uBAAuB,CAAC;EAC5D;EAEA,MAAc1B,uBAAuBA,CAACf,eAAoC,EAAE0C,qBAA+B,EAAE;IAC3G,KAAK,MAAMP,cAAc,IAAIO,qBAAqB,EAAE;MAClD,IAAI,CAACzU,QAAQ,CAAC0U,YAAY,CACxBR,cAAc,EACdD,8CAAwB,CAACnQ,EAAE,EAC3BiO,eAAe,CAACmC,cAAc,CAAC,CAACD,8CAAwB,CAACnQ,EAAE,CAAC,EAC5D;QAAE6Q,gBAAgB,EAAE;MAAK,CAC3B,CAAC;IACH;IACA,MAAM,IAAI,CAAC9U,kBAAkB,CAACqG,aAAa,CAAC,qBAAqB,CAAC;EACpE;;EAEA;AACF;AACA;AACA;AACA;EACE,MAAM0O,qBAAqBA,CAAChU,QAAkB,EAAE;IAC9C,IAAI,CAACf,kBAAkB,CAACgV,oBAAoB,CAACjU,QAAQ,CAAC;IACtD,MAAM,IAAI,CAACf,kBAAkB,CAACqG,aAAa,CAAC,wBAAwB,CAAC;IACrE,OAAO,IAAI,CAACrD,eAAe,CAAC;MAAErB,MAAM,EAAE;IAAK,CAAC,CAAC;EAC/C;;EAEA;AACF;AACA;AACA;EACE,MAAM6F,cAAcA,CAClBxG,OAA6B,GAAG,CAAC,CAAC,EACsD;IACxF,MAAM,IAAA4B,qBAAU,EAAC,IAAI,CAACnC,WAAW,CAACoC,MAAM,CAAC,CAAC,EAAGC,EAAE,IAAKA,EAAE,CAAC9B,OAAO,CAAC,CAAC,CAAC,CAAC;IAClE,MAAMI,UAAU,GAAG,MAAM,IAAI,CAACC,sBAAsB,CAAC,EAAE,CAAC;IACxD,MAAM4T,MAAM,GAAG,IAAI,CAACjV,kBAAkB,CAACkV,SAAS,CAAC;MAC/C5P,OAAO,EAAE,IAAI,CAACpF,SAAS,CAACmC,IAAI;MAC5B8S,cAAc,EAAEnU;IAClB,CAAC,CAAC;IACF,MAAM;MAAEoU,WAAW,EAAErS,GAAG;MAAEwE;IAAe,CAAC,GAAG,MAAM0N,MAAM,CAACI,mBAAmB,CAC3E,IAAI,CAACnV,SAAS,CAACmC,IAAI,EACnBjB,UAAU,EACVJ,OACF,CAAC;IACD,MAAMsU,YAAY,GAAGvS,GAA2B;IAEhD,MAAMwS,aAAa,GAAG,MAAM,IAAI,CAACtM,YAAY,CAAC7H,UAAU,EAAEJ,OAAO,CAAC;IAClEsU,YAAY,CAACE,iBAAiB,GAAGD,aAAa,CAACE,YAAY;IAC3DH,YAAY,CAACI,wBAAwB,GAAGH,aAAa,CAACI,cAAc;IAEpE,IAAI,IAAI,CAAC3V,kBAAkB,CAAC4G,iBAAiB,CAAC,CAAC,IAAI5F,OAAO,CAAC4U,cAAc,EAAE;MACzE,MAAM,IAAI,CAACC,4BAA4B,CAACzU,UAAU,CAAC;IACrD;IACA,OAAO;MAAEgU,WAAW,EAAErS,GAAG;MAAEwE;IAAe,CAAC;EAC7C;EAEA,MAAM0B,YAAYA,CAAC7H,UAAgC,EAAEJ,OAA8B,EAAE;IACnF,MAAM8U,MAAM,GAAG1U,UAAU,CAAC2U,OAAO,CAAC,CAAC,CAACvT,GAAG,CAAC,CAAC,CAAC4B,SAAS,CAAC,KAAKA,SAAS,CAACH,EAAE,CAAC;IACtE,OAAO,IAAA+R,gDAA4B,EAAC,IAAI,CAAC9V,SAAS,EAAE4V,MAAM,EAAE9U,OAAO,EAAEiV,MAAM,IAAI,KAAK,CAAC;EACvF;EAEA,MAAMC,IAAIA,CAAClV,OAA6B,GAAG,CAAC,CAAC,EAAiC;IAC5E,MAAM;MAAEoU,WAAW;MAAE7N;IAAe,CAAC,GAAG,MAAM,IAAI,CAACC,cAAc,CAACxG,OAAO,CAAC;IAC1E,MAAM,IAAAmV,6BAAW,EAACnV,OAAO,CAACoV,SAAS,IAAI,IAAI,CAAClW,SAAS,CAACmC,IAAI,EAAEkF,cAAc,EAAE;MAC1E8O,aAAa,EAAE,IAAI;MACnBC,kBAAkB,EAAE;IACtB,CAAC,CAAC;IACF,OAAOlB,WAAW;EACpB;EAEA,MAAcS,4BAA4BA,CAACzU,UAAgC,EAAE;IAC3E,MAAMf,IAAI,GAAG,MAAM,IAAI,CAACmQ,iBAAiB,CAAC,CAAC;IAC3C,MAAM+F,IAAI,GAAG,CAAC,MAAM,IAAI,CAAChW,GAAG,CAACkR,kBAAkB,CAAC,CAAC,EAAEjP,GAAG,CAAE4B,SAAS,IAAKA,SAAS,CAACH,EAAE,CAAC;IACnF,MAAMuB,OAAO,CAACC,GAAG,CACf,CAAC,GAAGpF,IAAI,EAAE,GAAGkW,IAAI,CAAC,CAAC/T,GAAG,CAAC,MAAOyB,EAAE,IAAK;MACnC,MAAMuS,GAAG,GAAG,MAAM,IAAI,CAAC9F,2BAA2B,CAAC,IAAI,CAACxQ,SAAS,CAACmC,IAAI,EAAE4B,EAAE,CAAC;MAC3E,MAAMkL,kBAAE,CAACsH,MAAM,CAACD,GAAG,CAAC;IACtB,CAAC,CACH,CAAC;IACD,MAAM,IAAAE,8BAAkB,EACtB,IAAI,CAACxW,SAAS,CAACmC,IAAI,EACnBjB,UAAU,CAAC0Q,UAAU,CAACtP,GAAG,CAAE4B,SAAS,IAAK,IAAI,CAACpE,kBAAkB,CAACmN,cAAc,CAAC/I,SAAS,CAAC,CAC5F,CAAC;EACH;EAEA,MAAcsM,2BAA2BA,CAACiG,aAAqB,EAAEC,eAA4B,EAAmB;IAC9G;IACA;IACA,MAAM3S,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC/D,SAAS,CAAC2M,KAAK,CAAC+J,eAAe,CAAC,IACnDA,eAAe,CAACxF,sBAAsB,CAAC,CAAC,GACxCwF,eAAe,CAACrS,QAAQ,CAAC,CAAC;IAC9B,OAAO,IAAAsS,+BAAmB,EAACF,aAAa,EAAE1S,EAAE,CAAC;EAC/C;;EAEA;AACF;AACA;AACA;AACA;AACA;EACE,MAAcxC,sCAAsCA,CAAA,EAAG;IACrD;IACA,MAAMqV,OAAO,GAAG,MAAM,IAAI,CAAC5W,SAAS,CAAC6W,KAAK,CAACC,cAAc,CAAC,CAAC;IAC3D,MAAMC,GAAG,GAAG,MAAM,IAAI,CAACjX,kBAAkB,CAACkX,aAAa,CAAC,CAAC;IACzD,MAAMC,aAAa,GAAGtZ,MAAM,CAACS,IAAI,CAAC2Y,GAAG,CAACG,MAAM,CAAC;IAC7C,OAAQC,cAA8B,IAAqB;MACzD,MAAMC,QAAQ,GAAGD,cAAc,CAAC5Y,MAAM,CAAE8Y,GAAG,IAAK;QAC9C,IAAI,EAAEA,GAAG,YAAYC,yCAAmB,CAAC,EAAE;UACzC,OAAO,IAAI;QACb;QACA,IAAIV,OAAO,CAACW,KAAK,CAACF,GAAG,CAACxD,WAAW,CAACgD,KAAK,CAAC,EAAE;UACxC,OAAO,IAAI;QACb;QACA,IAAII,aAAa,CAACO,IAAI,CAAEX,KAAK,IAAKQ,GAAG,CAACnS,WAAW,CAACuS,UAAU,CAAC,IAAIZ,KAAK,GAAG,CAAC,CAAC,EAAE;UAC3E,OAAO,IAAI;QACb;QACA,OAAO,KAAK;MACd,CAAC,CAAC;MACF,OAAOO,QAAQ;IACjB,CAAC;EACH;EAEA,MAAcjW,sBAAsBA,CAACqC,GAAkB,EAAiC;IACtF,MAAMoO,UAAU,GAAGpO,GAAG,CAAC3E,MAAM,GACzB,MAAM,IAAI,CAACmB,SAAS,CAAC0X,OAAO,CAAClU,GAAG,CAAC,GACjC,MAAM,IAAI,CAACxD,SAAS,CAACsN,IAAI,CAACf,SAAS,EAAE;MAAEoL,oBAAoB,EAAE;IAAM,CAAC,CAAC;IACzE,OAAOC,yBAAY,CAACC,EAAE,CAASjG,UAAU,EAAG1N,SAAS,IAAK,IAAI,CAAClE,SAAS,CAAC8X,YAAY,CAAC5T,SAAS,CAACH,EAAE,CAAC,CAAC;EACtG;EAEA,MAAcgU,2BAA2BA,CAACC,SAAsB,EAAEtL,IAAa,EAAiB;IAC9F,IAAI,CAACA,IAAI,EAAE;MACT,MAAM,IAAI,CAAC9L,OAAO,CAAC,CAAC;IACtB;EACF;EACA,MAAcqX,0BAA0BA,CAACC,gBAA6B,EAAiB;IACrF,IAAIC,QAAQ,GAAG,KAAK;IACpB,IAAIC,WAAW,GAAG,KAAK;IACvB,MAAMC,QAAQ,GAAGH,gBAAgB,CAAC5V,GAAG,CAAC,MAAOgW,eAAe,IAAK;MAC/D,MAAMC,WAAW,GAAGD,eAAe,CAACvU,EAAE,CAACM,QAAQ,CAAC,CAAC;MACjD,IAAI,IAAI,CAACmU,cAAc,CAAClb,GAAG,CAACib,WAAW,CAAC,EAAE;MAE1C,IAAI,CAACC,cAAc,CAACpO,GAAG,CAACmO,WAAW,CAAC;MACpC,MAAME,WAAW,GAAG,MAAM,IAAI,CAACzY,SAAS,CAAC0Y,uBAAuB,CAACJ,eAAe,CAAC;MACjF,MAAMK,MAAM,GAAG,MAAM,IAAAC,qBAAU,EAACH,WAAW,CAAC;MAC5C,IAAI,CAACE,MAAM,EAAE;QACX,MAAMjM,IAAI,GAAG,MAAM,IAAI,CAAC1M,SAAS,CAAC2M,KAAK,CAAC2L,eAAe,CAACvU,EAAE,CAAC;QAC3D,IAAI2I,IAAI,EAAE;UACRyL,QAAQ,GAAG,IAAI;QACjB,CAAC,MAAM;UACLC,WAAW,GAAG,IAAI;QACpB;MACF;IACF,CAAC,CAAC;IACF,MAAM9S,OAAO,CAACC,GAAG,CAAC8S,QAAQ,CAAC;IAC3B,IAAID,WAAW,EAAE;MACf,MAAM,IAAI,CAACxX,OAAO,CAAC,CAAC;MACpB;IACF;IACA,IAAIuX,QAAQ,EAAE;MACZ,MAAM,IAAI,CAACnC,IAAI,CAAC,CAAC;IACnB;EACF;EAoBA,aAAa6C,QAAQA,CACnB,CACE/Y,kBAAkB,EAClBE,SAAS,EACT8Y,SAAS,EACT7Y,QAAQ,EACR8Y,GAAG,EACH7Y,QAAQ,EACRwN,MAAM,EACNvN,IAAI,EACJE,GAAG,EACHK,SAAS,EACTJ,SAAS,EACTF,aAAa,CAcd,EACD4Y,CAAC,EACD,CAACzY,WAAW,EAAEC,cAAc,EAAEC,eAAe,CAAiD,EAC9F;IACA,MAAMV,MAAM,GAAG+Y,SAAS,CAACG,YAAY,CAACC,wBAAa,CAACnV,EAAE,CAAC;IACvDrD,SAAS,CAACyY,oBAAoB,CAAC,MAAOC,SAAS,IAAK;MAClD,IAAIA,SAAS,KAAK,eAAe,EAAE;MACnCrZ,MAAM,CAAC8E,KAAK,CAAC,mEAAmE,CAAC;MACjF,MAAM7E,SAAS,CAACyJ,UAAU,CAAC,CAAC;MAC5BzJ,SAAS,CAACqZ,uBAAuB,CAAC,CAAC;MACnC,MAAM,IAAA3W,qBAAU,EAACjC,eAAe,CAACkC,MAAM,CAAC,CAAC,EAAGC,EAAE,IAAKA,EAAE,CAAC,CAAC,CAAC;IAC1D,CAAC,CAAC;IACF,MAAM0W,UAAU,GAAG,IAAI1Z,WAAW,CAChCE,kBAAkB,EAClBC,MAAM,EACNC,SAAS,EACTC,QAAQ,EACRC,QAAQ,EACRC,IAAI,EACJC,aAAa,EACbC,GAAG,EACHC,SAAS,EACTC,WAAW,EACXC,cAAc,EACdC,eAAe,EACfC,SACF,CAAC;IACD,IAAIgN,MAAM,EAAE;MACVA,MAAM,CAAC6L,2BAA2B,CAACD,UAAU,CAACpG,oCAAoC,CAACsG,IAAI,CAACF,UAAU,CAAC,CAAC;IACtG;IACAhZ,SAAS,CAACmZ,yBAAyB,CAACH,UAAU,CAAClW,iBAAiB,CAACoW,IAAI,CAACF,UAAU,CAAC,CAAC;IAClF,MAAMI,QAAqB,GAAG,CAC5B,KAAIC,mBAAU,EAACL,UAAU,EAAEtZ,SAAS,EAAED,MAAM,CAAC,EAC7C,KAAI6Z,oBAAY,EAACN,UAAU,CAAC,EAC5B,KAAIO,iBAAS,EAACP,UAAU,CAAC,EACzB,KAAIQ,mBAAW,EAACR,UAAU,EAAEtZ,SAAS,EAAED,MAAM,CAAC,CAC/C;IACD;IACA;IACA,IAAIC,SAAS,EAAE;MACbA,SAAS,CAAC+Z,yBAAyB,CAACT,UAAU,CAACvB,2BAA2B,CAACyB,IAAI,CAACF,UAAU,CAAC,CAAC;IAC9F;IACAP,GAAG,CAAC9V,QAAQ,CAAC,GAAGyW,QAAQ,CAAC;IACzB,OAAOJ,UAAU;EACnB;AACF;AAACU,OAAA,CAAApa,WAAA,GAAAA,WAAA;AAAAb,eAAA,CA59BYa,WAAW,WAk4BP,CAACqa,eAAI,CAACC,QAAQ,CAAc,CAAC,EAAED,eAAI,CAACC,QAAQ,CAAiB,CAAC,EAAED,eAAI,CAACC,QAAQ,CAAkB,CAAC,CAAC;AAAAnb,eAAA,CAl4BrGa,WAAW,kBAm4BA,CACpBsU,8CAAwB,EACxBiG,4BAAe,EACfC,sBAAY,EACZC,0BAAc,EACdC,gBAAS,EACTC,0BAAc,EACdC,sBAAY,EACZC,kBAAU,EACVC,gCAAiB,EACjBC,4BAAe,EACfC,4BAAe,EACfC,kDAA0B,CAC3B;AAAA9b,eAAA,CAh5BUa,WAAW,aAk5BLkb,kBAAW;AAiF9B,SAAStS,uCAAuCA,CAAC;EAC/CI,qBAAqB;EACrBD;AACsB,CAAC,EAAW;EAClC,MAAMoS,WAAW,GAAG,IAAIpa,GAAG,CACzBiI,qBAAqB,CAClBiN,OAAO,CAAC,CAAC,CACTvT,GAAG,CAAC,CAAC,CAAC;IAAEmL;EAAM,CAAC,CAAC,KAAK;IACpB,MAAMuN,KAAK,GAAGvN,KAAK,CAACC,MAAM,CAACC,QAAQ,CAACC,gCAAa,CAACC,+BAA+B,CAAC;IAClF,IAAI,CAACmN,KAAK,EAAE,OAAO,EAAE;IACrB,OAAOA,KAAK,CAACrgB,IAAI,CAAC2H,GAAG,CAAEwL,CAAC,IAAKA,CAAC,CAACC,eAAe,CAAC,CAACC,IAAI,CAAC,CAAC;EACxD,CAAC,CAAC,CACDA,IAAI,CAAC,CACV,CAAC;EACD,OAAOrQ,MAAM,CAACgF,MAAM,CAACgG,SAAS,CAAC,CAAC6O,IAAI,CAAC,CAAC;IAAElR;EAAK,CAAC,KAAKA,IAAI,IAAIyU,WAAW,CAACzd,GAAG,CAACgJ,IAAI,CAAC,CAAC;AACnF;AAEA4S,wBAAa,CAAC+B,UAAU,CAACrb,WAAW,CAAC;AAAC,IAAAsb,QAAA,GAAAlB,OAAA,CAAA/c,OAAA,GAEvB2C,WAAW;AAE1B,SAASyK,aAAaA,CAAC1B,SAA0C,EAAU;EACzE;EACA,MAAMwS,kBAAkB,GAAG,IAAAC,mBAAS,EAACzS,SAAS,EAAGqC,QAAQ,IAAArM,aAAA,CAAAA,aAAA,KACpDqM,QAAQ,CAACF,eAAe,GACxBE,QAAQ,CAACtH,YAAY,CACxB,CAAC;EACH,OAAO,IAAA2X,qBAAI,EAACF,kBAAkB,CAAC;AACjC","ignoreList":[]}
|
@@ -25,7 +25,7 @@ function _linkRow() {
|
|
25
25
|
};
|
26
26
|
return data;
|
27
27
|
}
|
28
|
-
function _interopRequireDefault(
|
28
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
29
29
|
function ComponentListLinks({
|
30
30
|
componentListLinks,
|
31
31
|
verbose = false
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","_getPackageNameFromTarget","_linkRow","
|
1
|
+
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","_getPackageNameFromTarget","_linkRow","e","__esModule","default","ComponentListLinks","componentListLinks","verbose","length","chalk","cyan","title","bold","links","map","componentLinks","ComponentLinks","join","bound","VerboseComponentLinks","RegularComponentLinks","id","toString","packagePath","getPackageNameFromTarget","to","LinkRow","target","padding","link","VerboseLinkRow","from"],"sources":["component-list-links.ts"],"sourcesContent":["import chalk from 'chalk';\nimport { NodeModulesLinksResult } from '@teambit/workspace.modules.node-modules-linker';\nimport { getPackageNameFromTarget } from './get-package-name-from-target';\nimport { LinkRow, VerboseLinkRow } from './link-row';\n\ntype ComponentListLinksProps = {\n componentListLinks?: NodeModulesLinksResult[];\n verbose: boolean;\n};\n\nexport function ComponentListLinks({ componentListLinks, verbose = false }: ComponentListLinksProps) {\n if (!componentListLinks || !componentListLinks.length) {\n return chalk.cyan('No components link were generated');\n }\n const title = chalk.bold.cyan('Components links');\n const links = componentListLinks.map((componentLinks) => ComponentLinks({ componentLinks, verbose })).join('\\n');\n\n return `${title}\\n${links}`;\n}\n\ntype ComponentLinksProps = {\n componentLinks: NodeModulesLinksResult;\n verbose: boolean;\n};\nfunction ComponentLinks({ componentLinks, verbose = false }: ComponentLinksProps) {\n if (!componentLinks.bound || componentLinks.bound.length < 1) return '';\n if (verbose) return VerboseComponentLinks({ componentLinks });\n return RegularComponentLinks({ componentLinks });\n}\n\ntype RegularComponentLinksProps = {\n componentLinks: NodeModulesLinksResult;\n};\nfunction RegularComponentLinks({ componentLinks }: RegularComponentLinksProps) {\n const id = componentLinks.id.toString();\n if (!componentLinks.bound || componentLinks.bound.length < 1) return '';\n const packagePath = getPackageNameFromTarget(componentLinks.bound[0].to);\n return LinkRow({ title: id, target: packagePath, padding: 50 });\n}\n\ntype VerboseComponentLinksProps = {\n componentLinks: NodeModulesLinksResult;\n};\nfunction VerboseComponentLinks({ componentLinks }: VerboseComponentLinksProps) {\n const id = componentLinks.id.toString();\n if (!componentLinks.bound || componentLinks.bound.length < 1) return '';\n const title = chalk.bold.cyan(id);\n const links = componentLinks.bound.map((link) => VerboseLinkRow({ from: link.from, to: link.to })).join('\\n');\n return `${title}\\n${links}\\n`;\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -25,7 +25,7 @@ function _linkRow() {
|
|
25
25
|
};
|
26
26
|
return data;
|
27
27
|
}
|
28
|
-
function _interopRequireDefault(
|
28
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
29
29
|
function CoreAspectsLinks({
|
30
30
|
coreAspectsLinks,
|
31
31
|
verbose = false
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","_getPackageNameFromTarget","_linkRow","
|
1
|
+
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","_getPackageNameFromTarget","_linkRow","e","__esModule","default","CoreAspectsLinks","coreAspectsLinks","verbose","length","chalk","cyan","title","links","map","link","CoreAspectLinkRow","coreAspectLink","join","VerboseCoreAspectLink","RegularCoreAspectLink","id","aspectId","toString","packagePath","getPackageNameFromTarget","linkDetail","to","LinkRow","target","padding","bold","VerboseLinkRow","from"],"sources":["core-aspects-links.ts"],"sourcesContent":["import { CoreAspectLinkResult } from '@teambit/dependency-resolver';\nimport chalk from 'chalk';\n\nimport { getPackageNameFromTarget } from './get-package-name-from-target';\nimport { LinkRow, VerboseLinkRow } from './link-row';\n\ntype CoreAspectsLinksProps = {\n coreAspectsLinks?: CoreAspectLinkResult[];\n verbose: boolean;\n};\n\nexport function CoreAspectsLinks({ coreAspectsLinks, verbose = false }: CoreAspectsLinksProps) {\n if (!coreAspectsLinks || !coreAspectsLinks.length) {\n return chalk.cyan('No core aspects were linked');\n }\n const title = chalk.cyan('Core aspects links');\n const links = coreAspectsLinks.map((link) => CoreAspectLinkRow({ coreAspectLink: link, verbose })).join('\\n');\n return `${title}\\n${links}`;\n}\n\ntype CoreAspectLinkProps = {\n coreAspectLink: CoreAspectLinkResult;\n verbose: boolean;\n};\nfunction CoreAspectLinkRow({ coreAspectLink, verbose = false }: CoreAspectLinkProps) {\n if (verbose) return VerboseCoreAspectLink({ coreAspectLink });\n return RegularCoreAspectLink({ coreAspectLink });\n}\n\ntype RegularCoreAspectLinkProps = {\n coreAspectLink: CoreAspectLinkResult;\n};\nfunction RegularCoreAspectLink({ coreAspectLink }: RegularCoreAspectLinkProps) {\n const id = coreAspectLink.aspectId.toString();\n const packagePath = getPackageNameFromTarget(coreAspectLink.linkDetail.to);\n return LinkRow({ title: id, target: packagePath, padding: 50 });\n}\n\ntype VerboseCoreAspectLinkProps = {\n coreAspectLink: CoreAspectLinkResult;\n};\nfunction VerboseCoreAspectLink({ coreAspectLink }: VerboseCoreAspectLinkProps) {\n const id = coreAspectLink.aspectId.toString();\n const title = chalk.bold.cyan(id);\n const link = VerboseLinkRow({\n from: coreAspectLink.linkDetail.from,\n to: coreAspectLink.linkDetail.to,\n });\n return `${title}\\n${link}`;\n}\n"],"mappings":";;;;;;AACA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAG,0BAAA;EAAA,MAAAH,IAAA,GAAAE,OAAA;EAAAC,yBAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAI,SAAA;EAAA,MAAAJ,IAAA,GAAAE,OAAA;EAAAE,QAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAAqD,SAAAC,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAO9C,SAASG,gBAAgBA,CAAC;EAAEC,gBAAgB;EAAEC,OAAO,GAAG;AAA6B,CAAC,EAAE;EAC7F,IAAI,CAACD,gBAAgB,IAAI,CAACA,gBAAgB,CAACE,MAAM,EAAE;IACjD,OAAOC,gBAAK,CAACC,IAAI,CAAC,6BAA6B,CAAC;EAClD;EACA,MAAMC,KAAK,GAAGF,gBAAK,CAACC,IAAI,CAAC,oBAAoB,CAAC;EAC9C,MAAME,KAAK,GAAGN,gBAAgB,CAACO,GAAG,CAAEC,IAAI,IAAKC,iBAAiB,CAAC;IAAEC,cAAc,EAAEF,IAAI;IAAEP;EAAQ,CAAC,CAAC,CAAC,CAACU,IAAI,CAAC,IAAI,CAAC;EAC7G,OAAO,GAAGN,KAAK,KAAKC,KAAK,EAAE;AAC7B;AAMA,SAASG,iBAAiBA,CAAC;EAAEC,cAAc;EAAET,OAAO,GAAG;AAA2B,CAAC,EAAE;EACnF,IAAIA,OAAO,EAAE,OAAOW,qBAAqB,CAAC;IAAEF;EAAe,CAAC,CAAC;EAC7D,OAAOG,qBAAqB,CAAC;IAAEH;EAAe,CAAC,CAAC;AAClD;AAKA,SAASG,qBAAqBA,CAAC;EAAEH;AAA2C,CAAC,EAAE;EAC7E,MAAMI,EAAE,GAAGJ,cAAc,CAACK,QAAQ,CAACC,QAAQ,CAAC,CAAC;EAC7C,MAAMC,WAAW,GAAG,IAAAC,oDAAwB,EAACR,cAAc,CAACS,UAAU,CAACC,EAAE,CAAC;EAC1E,OAAO,IAAAC,kBAAO,EAAC;IAAEhB,KAAK,EAAES,EAAE;IAAEQ,MAAM,EAAEL,WAAW;IAAEM,OAAO,EAAE;EAAG,CAAC,CAAC;AACjE;AAKA,SAASX,qBAAqBA,CAAC;EAAEF;AAA2C,CAAC,EAAE;EAC7E,MAAMI,EAAE,GAAGJ,cAAc,CAACK,QAAQ,CAACC,QAAQ,CAAC,CAAC;EAC7C,MAAMX,KAAK,GAAGF,gBAAK,CAACqB,IAAI,CAACpB,IAAI,CAACU,EAAE,CAAC;EACjC,MAAMN,IAAI,GAAG,IAAAiB,yBAAc,EAAC;IAC1BC,IAAI,EAAEhB,cAAc,CAACS,UAAU,CAACO,IAAI;IACpCN,EAAE,EAAEV,cAAc,CAACS,UAAU,CAACC;EAChC,CAAC,CAAC;EACF,OAAO,GAAGf,KAAK,KAAKG,IAAI,EAAE;AAC5B","ignoreList":[]}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["getPackageNameFromTarget","targetPath","subPath","substring","lastIndexOf","packagePath","split","slice","join"],"sources":["get-package-name-from-target.ts"],"sourcesContent":["export function getPackageNameFromTarget(targetPath: string): string {\n const subPath = targetPath.substring(targetPath.lastIndexOf('node_modules'));\n const packagePath = subPath.split('/').slice(0, 3).join('/');\n return `./${packagePath}`;\n}\n"],"mappings":";;;;;;AAAO,SAASA,wBAAwBA,CAACC,UAAkB,EAAU;EACnE,MAAMC,OAAO,GAAGD,UAAU,CAACE,SAAS,CAACF,UAAU,CAACG,WAAW,CAAC,cAAc,CAAC,CAAC;EAC5E,MAAMC,WAAW,GAAGH,OAAO,CAACI,KAAK,CAAC,GAAG,CAAC,CAACC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAACC,IAAI,CAAC,GAAG,CAAC;EAC5D,
|
1
|
+
{"version":3,"names":["getPackageNameFromTarget","targetPath","subPath","substring","lastIndexOf","packagePath","split","slice","join"],"sources":["get-package-name-from-target.ts"],"sourcesContent":["export function getPackageNameFromTarget(targetPath: string): string {\n const subPath = targetPath.substring(targetPath.lastIndexOf('node_modules'));\n const packagePath = subPath.split('/').slice(0, 3).join('/');\n return `./${packagePath}`;\n}\n"],"mappings":";;;;;;AAAO,SAASA,wBAAwBA,CAACC,UAAkB,EAAU;EACnE,MAAMC,OAAO,GAAGD,UAAU,CAACE,SAAS,CAACF,UAAU,CAACG,WAAW,CAAC,cAAc,CAAC,CAAC;EAC5E,MAAMC,WAAW,GAAGH,OAAO,CAACI,KAAK,CAAC,GAAG,CAAC,CAACC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAACC,IAAI,CAAC,GAAG,CAAC;EAC5D,OAAO,KAAKH,WAAW,EAAE;AAC3B","ignoreList":[]}
|
package/dist/link/link-row.js
CHANGED
@@ -12,7 +12,7 @@ function _chalk() {
|
|
12
12
|
};
|
13
13
|
return data;
|
14
14
|
}
|
15
|
-
function _interopRequireDefault(
|
15
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
16
16
|
function LinkRow({
|
17
17
|
title,
|
18
18
|
target,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","
|
1
|
+
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","e","__esModule","default","LinkRow","title","target","padding","chalk","bold","padEnd","VerboseLinkRow","from","to"],"sources":["link-row.ts"],"sourcesContent":["import chalk from 'chalk';\n\ntype LinkRowProps = {\n title: string;\n target: string;\n padding?: number;\n};\nexport function LinkRow({ title, target, padding = 50 }: LinkRowProps) {\n return chalk.bold(`${title.padEnd(padding)} ${'>'} ${target}`);\n}\n\ntype VerboseLinkRowProps = {\n from: string;\n to: string;\n};\nexport function VerboseLinkRow({ from, to }: VerboseLinkRowProps) {\n return `${chalk.bold('from')}: ${from}\n${chalk.bold('to')}: ${to}\n`;\n}\n"],"mappings":";;;;;;;AAAA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA0B,SAAAC,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAOnB,SAASG,OAAOA,CAAC;EAAEC,KAAK;EAAEC,MAAM;EAAEC,OAAO,GAAG;AAAiB,CAAC,EAAE;EACrE,OAAOC,gBAAK,CAACC,IAAI,CAAC,GAAGJ,KAAK,CAACK,MAAM,CAACH,OAAO,CAAC,IAAI,GAAG,IAAID,MAAM,EAAE,CAAC;AAChE;AAMO,SAASK,cAAcA,CAAC;EAAEC,IAAI;EAAEC;AAAwB,CAAC,EAAE;EAChE,OAAO,GAAGL,gBAAK,CAACC,IAAI,CAAC,MAAM,CAAC,KAAKG,IAAI;AACvC,EAAEJ,gBAAK,CAACC,IAAI,CAAC,IAAI,CAAC,KAAKI,EAAE;AACzB,CAAC;AACD","ignoreList":[]}
|
package/dist/link/link-to-dir.js
CHANGED
@@ -18,7 +18,7 @@ function _linkRow() {
|
|
18
18
|
};
|
19
19
|
return data;
|
20
20
|
}
|
21
|
-
function _interopRequireDefault(
|
21
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
22
22
|
function linkToDir(links) {
|
23
23
|
if (!links || !links.length) return '';
|
24
24
|
const title = _chalk().default.bold.cyan('Target Links');
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","_linkRow","
|
1
|
+
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","_linkRow","e","__esModule","default","linkToDir","links","length","title","chalk","bold","cyan","linksOutput","map","componentId","linksDetail","LinkRow","target","to","join"],"sources":["link-to-dir.ts"],"sourcesContent":["import { LinkToDirResult } from '@teambit/dependency-resolver';\nimport chalk from 'chalk';\nimport { LinkRow } from './link-row';\n\nexport function linkToDir(links?: LinkToDirResult[]) {\n if (!links || !links.length) return '';\n const title = chalk.bold.cyan('Target Links');\n const linksOutput = links\n .map(({ componentId, linksDetail }) => LinkRow({ title: componentId, target: linksDetail.to }))\n .join('\\n');\n\n return `${title}\\n${linksOutput}\\n`;\n}\n"],"mappings":";;;;;;AACA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,SAAA;EAAA,MAAAH,IAAA,GAAAE,OAAA;EAAAC,QAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAAqC,SAAAC,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE9B,SAASG,SAASA,CAACC,KAAyB,EAAE;EACnD,IAAI,CAACA,KAAK,IAAI,CAACA,KAAK,CAACC,MAAM,EAAE,OAAO,EAAE;EACtC,MAAMC,KAAK,GAAGC,gBAAK,CAACC,IAAI,CAACC,IAAI,CAAC,cAAc,CAAC;EAC7C,MAAMC,WAAW,GAAGN,KAAK,CACtBO,GAAG,CAAC,CAAC;IAAEC,WAAW;IAAEC;EAAY,CAAC,KAAK,IAAAC,kBAAO,EAAC;IAAER,KAAK,EAAEM,WAAW;IAAEG,MAAM,EAAEF,WAAW,CAACG;EAAG,CAAC,CAAC,CAAC,CAC9FC,IAAI,CAAC,IAAI,CAAC;EAEb,OAAO,GAAGX,KAAK,KAAKI,WAAW,IAAI;AACrC","ignoreList":[]}
|
package/dist/link/link.cmd.js
CHANGED
@@ -53,8 +53,8 @@ function _linkToDir() {
|
|
53
53
|
};
|
54
54
|
return data;
|
55
55
|
}
|
56
|
-
function _interopRequireDefault(
|
57
|
-
function _defineProperty(
|
56
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
57
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
58
58
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
59
59
|
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
60
60
|
class LinkCommand {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_toolboxTime","data","require","_chalk","_interopRequireDefault","_componentListLinks","_coreAspectsLinks","_nestedDepsInNmLinks","_rewireRow","_linkToDir","
|
1
|
+
{"version":3,"names":["_toolboxTime","data","require","_chalk","_interopRequireDefault","_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","coreLinks","CoreAspectsLinks","verbose","compsLinks","ComponentListLinks","componentListLinks","rewireRow","RewireRow","legacyCodemodResults","legacyLinkCodemodResults","nestedLinks","NestedComponentLinksLinks","nestedDepsInNmLinks","targetLinks","linkToDir","linkToDirResults","footer","console","chalk","cyan","linkOpts","linkToBitRoots","rewire","linkCoreAspects","linkTeambitBit","target","fetchObject","skipFetchingObjects","includePeers","peers","link","exports"],"sources":["link.cmd.ts"],"sourcesContent":["import { Command, CommandOptions } from '@teambit/cli';\nimport { Logger } from '@teambit/logger';\nimport { timeFormat } from '@teambit/toolbox.time.time-format';\nimport chalk from 'chalk';\nimport { Workspace } from '@teambit/workspace';\nimport { InstallMain, WorkspaceLinkOptions, WorkspaceLinkResults } from '../install.main.runtime';\nimport { ComponentListLinks } 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};\nexport class LinkCommand implements Command {\n name = 'link [component-names...]';\n alias = '';\n description = 'create links in the node_modules directory, to core aspects and to components in the workspace';\n helpUrl = 'reference/workspace/component-links';\n extendedDescription: string;\n group = 'development';\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 ] 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 = `Linked ${numOfComponents} components and ${numOfCoreAspects} core aspects to node_modules for workspace: ${this.workspace.name}`;\n const coreLinks = CoreAspectsLinks({\n coreAspectsLinks: coreAspectsLinksWithMainAspect,\n verbose: opts.verbose,\n });\n const compsLinks = ComponentListLinks({ componentListLinks: linkResults.legacyLinkResults, verbose: opts.verbose });\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 = `Finished. ${timeDiff}`;\n return `${title}\\n${coreLinks}\\n${compsLinks}\\n${rewireRow}${nestedLinks}${targetLinks}${footer}`;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n async json([ids]: [string[]], opts: LinkCommandOpts): Promise<WorkspaceLinkResults> {\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":[]}
|
@@ -18,7 +18,7 @@ function _linkRow() {
|
|
18
18
|
};
|
19
19
|
return data;
|
20
20
|
}
|
21
|
-
function _interopRequireDefault(
|
21
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
22
22
|
function NestedComponentLinksLinks({
|
23
23
|
nestedDepsInNmLinks,
|
24
24
|
verbose = false
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","_linkRow","
|
1
|
+
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","_linkRow","e","__esModule","default","NestedComponentLinksLinks","nestedDepsInNmLinks","verbose","length","title","chalk","bold","cyan","links","map","nestedComponentLinks","NestedComponentLinks","join","linksDetail","VerboseNestedComponentLinks","id","componentId","toString","link","VerboseLinkRow","from","to"],"sources":["nested-deps-in-nm-links.ts"],"sourcesContent":["import chalk from 'chalk';\nimport { NestedNMDepsLinksResult } from '@teambit/dependency-resolver';\nimport { VerboseLinkRow } from './link-row';\n\ntype NestedComponentLinksLinksProps = {\n nestedDepsInNmLinks?: NestedNMDepsLinksResult[];\n verbose: boolean;\n};\n\nexport function NestedComponentLinksLinks({ nestedDepsInNmLinks, verbose = false }: NestedComponentLinksLinksProps) {\n if (!verbose) return '';\n if (!nestedDepsInNmLinks || !nestedDepsInNmLinks.length) {\n return '';\n }\n const title = chalk.bold.cyan('Nested dependencies links');\n const links = nestedDepsInNmLinks\n .map((nestedComponentLinks) =>\n NestedComponentLinks({\n nestedComponentLinks,\n verbose,\n })\n )\n .join('\\n');\n return `${title}\\n${links}\\n`;\n}\n\ntype NestedComponentLinksProps = {\n nestedComponentLinks: NestedNMDepsLinksResult;\n verbose: boolean;\n};\nfunction NestedComponentLinks({ nestedComponentLinks, verbose = false }: NestedComponentLinksProps) {\n if (!nestedComponentLinks.linksDetail || nestedComponentLinks.linksDetail.length < 1) return '';\n if (verbose) return VerboseNestedComponentLinks({ nestedComponentLinks });\n return '';\n}\n\ntype VerboseNestedComponentLinksProps = {\n nestedComponentLinks: NestedNMDepsLinksResult;\n};\nfunction VerboseNestedComponentLinks({ nestedComponentLinks }: VerboseNestedComponentLinksProps) {\n const id = nestedComponentLinks.componentId.toString();\n const title = chalk.cyan.bold(id);\n const links = nestedComponentLinks.linksDetail\n .map((link) => VerboseLinkRow({ from: link.from, to: link.to }))\n .join('\\n');\n return `${title}\\n${links}\\n`;\n}\n"],"mappings":";;;;;;AAAA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAG,SAAA;EAAA,MAAAH,IAAA,GAAAE,OAAA;EAAAC,QAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA4C,SAAAC,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAOrC,SAASG,yBAAyBA,CAAC;EAAEC,mBAAmB;EAAEC,OAAO,GAAG;AAAsC,CAAC,EAAE;EAClH,IAAI,CAACA,OAAO,EAAE,OAAO,EAAE;EACvB,IAAI,CAACD,mBAAmB,IAAI,CAACA,mBAAmB,CAACE,MAAM,EAAE;IACvD,OAAO,EAAE;EACX;EACA,MAAMC,KAAK,GAAGC,gBAAK,CAACC,IAAI,CAACC,IAAI,CAAC,2BAA2B,CAAC;EAC1D,MAAMC,KAAK,GAAGP,mBAAmB,CAC9BQ,GAAG,CAAEC,oBAAoB,IACxBC,oBAAoB,CAAC;IACnBD,oBAAoB;IACpBR;EACF,CAAC,CACH,CAAC,CACAU,IAAI,CAAC,IAAI,CAAC;EACb,OAAO,GAAGR,KAAK,KAAKI,KAAK,IAAI;AAC/B;AAMA,SAASG,oBAAoBA,CAAC;EAAED,oBAAoB;EAAER,OAAO,GAAG;AAAiC,CAAC,EAAE;EAClG,IAAI,CAACQ,oBAAoB,CAACG,WAAW,IAAIH,oBAAoB,CAACG,WAAW,CAACV,MAAM,GAAG,CAAC,EAAE,OAAO,EAAE;EAC/F,IAAID,OAAO,EAAE,OAAOY,2BAA2B,CAAC;IAAEJ;EAAqB,CAAC,CAAC;EACzE,OAAO,EAAE;AACX;AAKA,SAASI,2BAA2BA,CAAC;EAAEJ;AAAuD,CAAC,EAAE;EAC/F,MAAMK,EAAE,GAAGL,oBAAoB,CAACM,WAAW,CAACC,QAAQ,CAAC,CAAC;EACtD,MAAMb,KAAK,GAAGC,gBAAK,CAACE,IAAI,CAACD,IAAI,CAACS,EAAE,CAAC;EACjC,MAAMP,KAAK,GAAGE,oBAAoB,CAACG,WAAW,CAC3CJ,GAAG,CAAES,IAAI,IAAK,IAAAC,yBAAc,EAAC;IAAEC,IAAI,EAAEF,IAAI,CAACE,IAAI;IAAEC,EAAE,EAAEH,IAAI,CAACG;EAAG,CAAC,CAAC,CAAC,CAC/DT,IAAI,CAAC,IAAI,CAAC;EACb,OAAO,GAAGR,KAAK,KAAKI,KAAK,IAAI;AAC/B","ignoreList":[]}
|
package/dist/link/rewire-row.js
CHANGED
@@ -11,7 +11,7 @@ function _chalk() {
|
|
11
11
|
};
|
12
12
|
return data;
|
13
13
|
}
|
14
|
-
function _interopRequireDefault(
|
14
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
15
15
|
function RewireRow({
|
16
16
|
legacyCodemodResults
|
17
17
|
}) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","
|
1
|
+
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","e","__esModule","default","RewireRow","legacyCodemodResults","length","totalComps","totalFiles","reduce","acc","curr","changedFiles","chalk","cyan","toString"],"sources":["rewire-row.ts"],"sourcesContent":["import { CodemodResult } from '@teambit/workspace.modules.node-modules-linker';\nimport chalk from 'chalk';\n\ntype RewireRowProps = {\n legacyCodemodResults?: CodemodResult[];\n};\nexport function RewireRow({ legacyCodemodResults }: RewireRowProps) {\n if (!legacyCodemodResults || legacyCodemodResults.length < 1) return '';\n const totalComps = legacyCodemodResults?.length;\n const totalFiles = legacyCodemodResults.reduce((acc, curr) => {\n return acc + curr.changedFiles.length || 0;\n }, 0);\n\n return `rewired ${chalk.cyan(totalComps.toString())} components and total of ${chalk.cyan(\n totalFiles.toString()\n )} files\\n`;\n}\n"],"mappings":";;;;;;AACA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA0B,SAAAC,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAKnB,SAASG,SAASA,CAAC;EAAEC;AAAqC,CAAC,EAAE;EAClE,IAAI,CAACA,oBAAoB,IAAIA,oBAAoB,CAACC,MAAM,GAAG,CAAC,EAAE,OAAO,EAAE;EACvE,MAAMC,UAAU,GAAGF,oBAAoB,EAAEC,MAAM;EAC/C,MAAME,UAAU,GAAGH,oBAAoB,CAACI,MAAM,CAAC,CAACC,GAAG,EAAEC,IAAI,KAAK;IAC5D,OAAOD,GAAG,GAAGC,IAAI,CAACC,YAAY,CAACN,MAAM,IAAI,CAAC;EAC5C,CAAC,EAAE,CAAC,CAAC;EAEL,OAAO,WAAWO,gBAAK,CAACC,IAAI,CAACP,UAAU,CAACQ,QAAQ,CAAC,CAAC,CAAC,4BAA4BF,gBAAK,CAACC,IAAI,CACvFN,UAAU,CAACO,QAAQ,CAAC,CACtB,CAAC,UAAU;AACb","ignoreList":[]}
|
@@ -40,7 +40,7 @@ function _enquirer() {
|
|
40
40
|
};
|
41
41
|
return data;
|
42
42
|
}
|
43
|
-
function _interopRequireDefault(
|
43
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
44
44
|
/**
|
45
45
|
* Lets the user pick the packages that should be updated.
|
46
46
|
*/
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_colorizeSemverDiff","data","_interopRequireDefault","require","_semverDiff","_table","_chalk","_enquirer","obj","__esModule","default","pickOutdatedPkgs","outdatedPkgs","length","updateDependencies","prompt","choices","makeOutdatedPkgChoices","footer","indicator","state","choice","enabled","message","chalk","cyan","green","red","name","pointer","styles","dark","white","em","bgBlack","whiteBright","success","type","validate","value","j","down","k","up","result","names","map","cancel","Object","values","filter","updateDependency","DEP_TYPE_PRIORITY","dependencies","devDependencies","peerDependencies","sort","pkg1","pkg2","targetField","localeCompare","renderedTable","alignColumns","outdatedPkgsRows","groupedChoices","forEach","outdatedPkg","index","context","renderContext","push","entries","subChoices","variantPattern","componentId","TARGET_FIELD_TO_DEP_TYPE","change","diff","semverDiff","currentRange","latestRange","colorizeChange","latest","colorizeSemverDiff","grey","hasDifferentRanges","dependentComponents","renderDependents","rows","table","border","getBorderCharacters","columnDefault","paddingLeft","paddingRight","columns","alignment","drawHorizontalLine","split"],"sources":["pick-outdated-pkgs.ts"],"sourcesContent":["import { ComponentID } from '@teambit/component';\nimport colorizeSemverDiff from '@pnpm/colorize-semver-diff';\nimport semverDiff from '@pnpm/semver-diff';\nimport { MergedOutdatedPkg } from '@teambit/dependency-resolver';\nimport { getBorderCharacters, table } from 'table';\nimport chalk from 'chalk';\nimport { prompt } from 'enquirer';\n\n/**\n * Lets the user pick the packages that should be updated.\n */\nexport async function pickOutdatedPkgs(outdatedPkgs: MergedOutdatedPkg[]): Promise<MergedOutdatedPkg[]> {\n if (outdatedPkgs.length === 0) return [];\n const { updateDependencies } = (await prompt({\n choices: makeOutdatedPkgChoices(outdatedPkgs),\n footer: '\\nEnter to start updating. Ctrl-c to cancel.',\n indicator: (state: any, choice: any) => ` ${choice.enabled ? '●' : '○'}`,\n message:\n 'Choose which packages to update ' +\n `(Press ${chalk.cyan('<space>')} to select, ` +\n `${chalk.cyan('<a>')} to toggle all, ` +\n `${chalk.cyan('<i>')} to invert selection)\n${chalk.green('Green')} - indicates a semantically safe update\n${chalk.red('Red')} - indicates a semantically breaking change`,\n name: 'updateDependencies',\n pointer: '❯',\n styles: {\n dark: chalk.white,\n em: chalk.bgBlack.whiteBright,\n success: chalk.white,\n },\n type: 'multiselect',\n validate(value: string[]) {\n if (value.length === 0) {\n return 'You must choose at least one package.';\n }\n return true;\n },\n j() {\n return this.down();\n },\n k() {\n return this.up();\n },\n result(names: string[]) {\n // This is needed in order to have the values of the choices in the answer object.\n // Otherwise, only the names of the selected choices would've been included.\n return this.map(names);\n },\n cancel() {\n // By default, canceling the prompt via Ctrl+c throws an empty string.\n // The custom cancel function prevents that behavior.\n // Otherwise, Bit CLI would print an error and confuse users.\n // See related issue: https://github.com/enquirer/enquirer/issues/225\n },\n } as any)) as { updateDependencies: Record<string, string | MergedOutdatedPkg> };\n return Object.values(updateDependencies ?? {}).filter(\n (updateDependency) => typeof updateDependency !== 'string'\n ) as MergedOutdatedPkg[];\n}\n\nconst DEP_TYPE_PRIORITY = {\n dependencies: 0,\n devDependencies: 1,\n peerDependencies: 2,\n};\n\n/**\n * Groups the outdated packages and makes choices for enquirer's prompt.\n */\nexport function makeOutdatedPkgChoices(outdatedPkgs: MergedOutdatedPkg[]) {\n outdatedPkgs.sort((pkg1, pkg2) => {\n if (pkg1.targetField === pkg2.targetField) return pkg1.name.localeCompare(pkg2.name);\n return DEP_TYPE_PRIORITY[pkg1.targetField] - DEP_TYPE_PRIORITY[pkg2.targetField];\n });\n const renderedTable = alignColumns(outdatedPkgsRows(outdatedPkgs));\n const groupedChoices = {};\n outdatedPkgs.forEach((outdatedPkg, index) => {\n const context = renderContext(outdatedPkg);\n if (!groupedChoices[context]) {\n groupedChoices[context] = [];\n }\n groupedChoices[context].push({\n message: renderedTable[index],\n name: outdatedPkg.name,\n value: outdatedPkg,\n });\n });\n const choices = Object.entries(groupedChoices).map(([context, subChoices]) => ({\n message: chalk.cyan(context),\n choices: subChoices,\n }));\n return choices;\n}\n\nfunction renderContext(outdatedPkg: MergedOutdatedPkg) {\n if (outdatedPkg.variantPattern) {\n return `${outdatedPkg.variantPattern} (variant)`;\n }\n if (outdatedPkg.componentId) {\n return `${outdatedPkg.componentId} (component)`;\n }\n return 'Root policies';\n}\n\nconst TARGET_FIELD_TO_DEP_TYPE = {\n devDependencies: 'dev',\n dependencies: 'runtime',\n peerDependencies: 'peer',\n};\n\nfunction outdatedPkgsRows(outdatedPkgs: MergedOutdatedPkg[]) {\n return outdatedPkgs.map((outdatedPkg) => {\n const { change, diff } = semverDiff(outdatedPkg.currentRange, outdatedPkg.latestRange);\n let colorizeChange = change ?? 'breaking';\n if (change === 'feature') {\n colorizeChange = 'fix';\n }\n const latest = colorizeSemverDiff({\n change: colorizeChange,\n diff,\n });\n return [\n outdatedPkg.name,\n chalk.grey(`(${TARGET_FIELD_TO_DEP_TYPE[outdatedPkg.targetField]})`),\n outdatedPkg.hasDifferentRanges ? '*' : outdatedPkg.currentRange,\n '❯',\n latest,\n outdatedPkg.dependentComponents ? renderDependents(outdatedPkg.dependentComponents) : ' ',\n ];\n });\n}\n\nfunction renderDependents(dependentComponents: ComponentID[]): string {\n let result = `because of ${dependentComponents[0]}`;\n if (dependentComponents.length > 1) {\n result += ` and ${dependentComponents.length - 1} other components`;\n }\n return result;\n}\n\nfunction alignColumns(rows: string[][]) {\n return table(rows, {\n border: getBorderCharacters('void'),\n columnDefault: {\n paddingLeft: 0,\n paddingRight: 1,\n },\n columns: {\n // This is the current range column\n 2: { alignment: 'right' },\n },\n drawHorizontalLine: () => false,\n }).split('\\n');\n}\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"names":["_colorizeSemverDiff","data","_interopRequireDefault","require","_semverDiff","_table","_chalk","_enquirer","e","__esModule","default","pickOutdatedPkgs","outdatedPkgs","length","updateDependencies","prompt","choices","makeOutdatedPkgChoices","footer","indicator","state","choice","enabled","message","chalk","cyan","green","red","name","pointer","styles","dark","white","em","bgBlack","whiteBright","success","type","validate","value","j","down","k","up","result","names","map","cancel","Object","values","filter","updateDependency","DEP_TYPE_PRIORITY","dependencies","devDependencies","peerDependencies","sort","pkg1","pkg2","targetField","localeCompare","renderedTable","alignColumns","outdatedPkgsRows","groupedChoices","forEach","outdatedPkg","index","context","renderContext","push","entries","subChoices","variantPattern","componentId","TARGET_FIELD_TO_DEP_TYPE","change","diff","semverDiff","currentRange","latestRange","colorizeChange","latest","colorizeSemverDiff","grey","hasDifferentRanges","dependentComponents","renderDependents","rows","table","border","getBorderCharacters","columnDefault","paddingLeft","paddingRight","columns","alignment","drawHorizontalLine","split"],"sources":["pick-outdated-pkgs.ts"],"sourcesContent":["import { ComponentID } from '@teambit/component';\nimport colorizeSemverDiff from '@pnpm/colorize-semver-diff';\nimport semverDiff from '@pnpm/semver-diff';\nimport { MergedOutdatedPkg } from '@teambit/dependency-resolver';\nimport { getBorderCharacters, table } from 'table';\nimport chalk from 'chalk';\nimport { prompt } from 'enquirer';\n\n/**\n * Lets the user pick the packages that should be updated.\n */\nexport async function pickOutdatedPkgs(outdatedPkgs: MergedOutdatedPkg[]): Promise<MergedOutdatedPkg[]> {\n if (outdatedPkgs.length === 0) return [];\n const { updateDependencies } = (await prompt({\n choices: makeOutdatedPkgChoices(outdatedPkgs),\n footer: '\\nEnter to start updating. Ctrl-c to cancel.',\n indicator: (state: any, choice: any) => ` ${choice.enabled ? '●' : '○'}`,\n message:\n 'Choose which packages to update ' +\n `(Press ${chalk.cyan('<space>')} to select, ` +\n `${chalk.cyan('<a>')} to toggle all, ` +\n `${chalk.cyan('<i>')} to invert selection)\n${chalk.green('Green')} - indicates a semantically safe update\n${chalk.red('Red')} - indicates a semantically breaking change`,\n name: 'updateDependencies',\n pointer: '❯',\n styles: {\n dark: chalk.white,\n em: chalk.bgBlack.whiteBright,\n success: chalk.white,\n },\n type: 'multiselect',\n validate(value: string[]) {\n if (value.length === 0) {\n return 'You must choose at least one package.';\n }\n return true;\n },\n j() {\n return this.down();\n },\n k() {\n return this.up();\n },\n result(names: string[]) {\n // This is needed in order to have the values of the choices in the answer object.\n // Otherwise, only the names of the selected choices would've been included.\n return this.map(names);\n },\n cancel() {\n // By default, canceling the prompt via Ctrl+c throws an empty string.\n // The custom cancel function prevents that behavior.\n // Otherwise, Bit CLI would print an error and confuse users.\n // See related issue: https://github.com/enquirer/enquirer/issues/225\n },\n } as any)) as { updateDependencies: Record<string, string | MergedOutdatedPkg> };\n return Object.values(updateDependencies ?? {}).filter(\n (updateDependency) => typeof updateDependency !== 'string'\n ) as MergedOutdatedPkg[];\n}\n\nconst DEP_TYPE_PRIORITY = {\n dependencies: 0,\n devDependencies: 1,\n peerDependencies: 2,\n};\n\n/**\n * Groups the outdated packages and makes choices for enquirer's prompt.\n */\nexport function makeOutdatedPkgChoices(outdatedPkgs: MergedOutdatedPkg[]) {\n outdatedPkgs.sort((pkg1, pkg2) => {\n if (pkg1.targetField === pkg2.targetField) return pkg1.name.localeCompare(pkg2.name);\n return DEP_TYPE_PRIORITY[pkg1.targetField] - DEP_TYPE_PRIORITY[pkg2.targetField];\n });\n const renderedTable = alignColumns(outdatedPkgsRows(outdatedPkgs));\n const groupedChoices = {};\n outdatedPkgs.forEach((outdatedPkg, index) => {\n const context = renderContext(outdatedPkg);\n if (!groupedChoices[context]) {\n groupedChoices[context] = [];\n }\n groupedChoices[context].push({\n message: renderedTable[index],\n name: outdatedPkg.name,\n value: outdatedPkg,\n });\n });\n const choices = Object.entries(groupedChoices).map(([context, subChoices]) => ({\n message: chalk.cyan(context),\n choices: subChoices,\n }));\n return choices;\n}\n\nfunction renderContext(outdatedPkg: MergedOutdatedPkg) {\n if (outdatedPkg.variantPattern) {\n return `${outdatedPkg.variantPattern} (variant)`;\n }\n if (outdatedPkg.componentId) {\n return `${outdatedPkg.componentId} (component)`;\n }\n return 'Root policies';\n}\n\nconst TARGET_FIELD_TO_DEP_TYPE = {\n devDependencies: 'dev',\n dependencies: 'runtime',\n peerDependencies: 'peer',\n};\n\nfunction outdatedPkgsRows(outdatedPkgs: MergedOutdatedPkg[]) {\n return outdatedPkgs.map((outdatedPkg) => {\n const { change, diff } = semverDiff(outdatedPkg.currentRange, outdatedPkg.latestRange);\n let colorizeChange = change ?? 'breaking';\n if (change === 'feature') {\n colorizeChange = 'fix';\n }\n const latest = colorizeSemverDiff({\n change: colorizeChange,\n diff,\n });\n return [\n outdatedPkg.name,\n chalk.grey(`(${TARGET_FIELD_TO_DEP_TYPE[outdatedPkg.targetField]})`),\n outdatedPkg.hasDifferentRanges ? '*' : outdatedPkg.currentRange,\n '❯',\n latest,\n outdatedPkg.dependentComponents ? renderDependents(outdatedPkg.dependentComponents) : ' ',\n ];\n });\n}\n\nfunction renderDependents(dependentComponents: ComponentID[]): string {\n let result = `because of ${dependentComponents[0]}`;\n if (dependentComponents.length > 1) {\n result += ` and ${dependentComponents.length - 1} other components`;\n }\n return result;\n}\n\nfunction alignColumns(rows: string[][]) {\n return table(rows, {\n border: getBorderCharacters('void'),\n columnDefault: {\n paddingLeft: 0,\n paddingRight: 1,\n },\n columns: {\n // This is the current range column\n 2: { alignment: 'right' },\n },\n drawHorizontalLine: () => false,\n }).split('\\n');\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -28,7 +28,7 @@ function _pickOutdatedPkgs() {
|
|
28
28
|
};
|
29
29
|
return data;
|
30
30
|
}
|
31
|
-
function _interopRequireDefault(
|
31
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
32
32
|
describe('makeOutdatedPkgChoices', () => {
|
33
33
|
it('should render choices in correct order', () => {
|
34
34
|
const choices = (0, _pickOutdatedPkgs().makeOutdatedPkgChoices)([{
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_chai","data","require","_stripAnsi","_interopRequireDefault","_component","_pickOutdatedPkgs","
|
1
|
+
{"version":3,"names":["_chai","data","require","_stripAnsi","_interopRequireDefault","_component","_pickOutdatedPkgs","e","__esModule","default","describe","it","choices","makeOutdatedPkgChoices","name","currentRange","latestRange","source","targetField","stripped","stripAnsiFromChoices","expect","to","deep","equal","orderedChoices","componentId","ComponentID","fromString","variantPattern","contextOrders","forEach","choice","message","stripAnsi","currChoice","value"],"sources":["pick-outdated-pkgs.spec.ts"],"sourcesContent":["import { expect } from 'chai';\nimport stripAnsi from 'strip-ansi';\nimport { ComponentID } from '@teambit/component';\nimport { makeOutdatedPkgChoices } from './pick-outdated-pkgs';\n\ndescribe('makeOutdatedPkgChoices', () => {\n it('should render choices in correct order', () => {\n const choices = makeOutdatedPkgChoices([\n {\n name: 'zoo',\n currentRange: '1.0.0',\n latestRange: '1.1.0',\n source: 'rootPolicy',\n targetField: 'devDependencies',\n },\n {\n name: 'qar',\n currentRange: '1.0.0',\n latestRange: '1.1.0',\n source: 'rootPolicy',\n targetField: 'dependencies',\n },\n {\n name: 'foo',\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n source: 'rootPolicy',\n targetField: 'dependencies',\n },\n {\n name: 'bar',\n currentRange: '1.0.0',\n latestRange: '1.1.0',\n source: 'rootPolicy',\n targetField: 'peerDependencies',\n },\n ]);\n // Removing the ansi chars for better work on bit build on ci\n const stripped = stripAnsiFromChoices(choices);\n // @ts-ignore\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n expect(stripped).to.deep.equal(orderedChoices);\n });\n it('should render choices with context information', () => {\n const choices = makeOutdatedPkgChoices([\n {\n name: 'foo',\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n source: 'component',\n componentId: ComponentID.fromString('scope/comp1'),\n targetField: 'dependencies',\n },\n {\n name: 'bar',\n currentRange: '1.0.0',\n latestRange: '1.1.0',\n source: 'variants',\n variantPattern: '{comp2}',\n targetField: 'peerDependencies',\n },\n ]);\n // Removing the ansi chars for better work on bit build on ci\n const stripped = stripAnsiFromChoices(choices);\n // @ts-ignore\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n expect(stripped).to.deep.equal(contextOrders);\n });\n});\n\nfunction stripAnsiFromChoices(choices) {\n choices.forEach((choice) => {\n choice.message = stripAnsi(choice.message);\n choice.choices.forEach((currChoice) => {\n currChoice.message = stripAnsi(currChoice.message);\n });\n });\n return choices;\n}\n\nconst orderedChoices = [\n {\n choices: [\n {\n message: 'foo (runtime) 1.0.0 ❯ 2.0.0 ',\n name: 'foo',\n value: {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'foo',\n source: 'rootPolicy',\n targetField: 'dependencies',\n },\n },\n {\n message: 'qar (runtime) 1.0.0 ❯ 1.1.0 ',\n name: 'qar',\n value: {\n currentRange: '1.0.0',\n latestRange: '1.1.0',\n name: 'qar',\n source: 'rootPolicy',\n targetField: 'dependencies',\n },\n },\n {\n message: 'zoo (dev) 1.0.0 ❯ 1.1.0 ',\n name: 'zoo',\n value: {\n currentRange: '1.0.0',\n latestRange: '1.1.0',\n name: 'zoo',\n source: 'rootPolicy',\n targetField: 'devDependencies',\n },\n },\n {\n message: 'bar (peer) 1.0.0 ❯ 1.1.0 ',\n name: 'bar',\n value: {\n currentRange: '1.0.0',\n latestRange: '1.1.0',\n name: 'bar',\n source: 'rootPolicy',\n targetField: 'peerDependencies',\n },\n },\n ],\n message: 'Root policies',\n },\n];\n\nconst contextOrders = [\n {\n choices: [\n {\n message: 'foo (runtime) 1.0.0 ❯ 2.0.0 ',\n name: 'foo',\n value: {\n componentId: ComponentID.fromString('scope/comp1'),\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'foo',\n source: 'component',\n targetField: 'dependencies',\n },\n },\n ],\n message: 'scope/comp1 (component)',\n },\n {\n choices: [\n {\n message: 'bar (peer) 1.0.0 ❯ 1.1.0 ',\n name: 'bar',\n value: {\n currentRange: '1.0.0',\n latestRange: '1.1.0',\n name: 'bar',\n source: 'variants',\n targetField: 'peerDependencies',\n variantPattern: '{comp2}',\n },\n },\n ],\n message: '{comp2} (variant)',\n },\n];\n"],"mappings":";;AAAA,SAAAA,MAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,KAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,WAAA;EAAA,MAAAF,IAAA,GAAAG,sBAAA,CAAAF,OAAA;EAAAC,UAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAI,WAAA;EAAA,MAAAJ,IAAA,GAAAC,OAAA;EAAAG,UAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAK,kBAAA;EAAA,MAAAL,IAAA,GAAAC,OAAA;EAAAI,iBAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA8D,SAAAG,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE9DG,QAAQ,CAAC,wBAAwB,EAAE,MAAM;EACvCC,EAAE,CAAC,wCAAwC,EAAE,MAAM;IACjD,MAAMC,OAAO,GAAG,IAAAC,0CAAsB,EAAC,CACrC;MACEC,IAAI,EAAE,KAAK;MACXC,YAAY,EAAE,OAAO;MACrBC,WAAW,EAAE,OAAO;MACpBC,MAAM,EAAE,YAAY;MACpBC,WAAW,EAAE;IACf,CAAC,EACD;MACEJ,IAAI,EAAE,KAAK;MACXC,YAAY,EAAE,OAAO;MACrBC,WAAW,EAAE,OAAO;MACpBC,MAAM,EAAE,YAAY;MACpBC,WAAW,EAAE;IACf,CAAC,EACD;MACEJ,IAAI,EAAE,KAAK;MACXC,YAAY,EAAE,OAAO;MACrBC,WAAW,EAAE,OAAO;MACpBC,MAAM,EAAE,YAAY;MACpBC,WAAW,EAAE;IACf,CAAC,EACD;MACEJ,IAAI,EAAE,KAAK;MACXC,YAAY,EAAE,OAAO;MACrBC,WAAW,EAAE,OAAO;MACpBC,MAAM,EAAE,YAAY;MACpBC,WAAW,EAAE;IACf,CAAC,CACF,CAAC;IACF;IACA,MAAMC,QAAQ,GAAGC,oBAAoB,CAACR,OAAO,CAAC;IAC9C;IACA;IACA,IAAAS,cAAM,EAACF,QAAQ,CAAC,CAACG,EAAE,CAACC,IAAI,CAACC,KAAK,CAACC,cAAc,CAAC;EAChD,CAAC,CAAC;EACFd,EAAE,CAAC,gDAAgD,EAAE,MAAM;IACzD,MAAMC,OAAO,GAAG,IAAAC,0CAAsB,EAAC,CACrC;MACEC,IAAI,EAAE,KAAK;MACXC,YAAY,EAAE,OAAO;MACrBC,WAAW,EAAE,OAAO;MACpBC,MAAM,EAAE,WAAW;MACnBS,WAAW,EAAEC,wBAAW,CAACC,UAAU,CAAC,aAAa,CAAC;MAClDV,WAAW,EAAE;IACf,CAAC,EACD;MACEJ,IAAI,EAAE,KAAK;MACXC,YAAY,EAAE,OAAO;MACrBC,WAAW,EAAE,OAAO;MACpBC,MAAM,EAAE,UAAU;MAClBY,cAAc,EAAE,SAAS;MACzBX,WAAW,EAAE;IACf,CAAC,CACF,CAAC;IACF;IACA,MAAMC,QAAQ,GAAGC,oBAAoB,CAACR,OAAO,CAAC;IAC9C;IACA;IACA,IAAAS,cAAM,EAACF,QAAQ,CAAC,CAACG,EAAE,CAACC,IAAI,CAACC,KAAK,CAACM,aAAa,CAAC;EAC/C,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,SAASV,oBAAoBA,CAACR,OAAO,EAAE;EACrCA,OAAO,CAACmB,OAAO,CAAEC,MAAM,IAAK;IAC1BA,MAAM,CAACC,OAAO,GAAG,IAAAC,oBAAS,EAACF,MAAM,CAACC,OAAO,CAAC;IAC1CD,MAAM,CAACpB,OAAO,CAACmB,OAAO,CAAEI,UAAU,IAAK;MACrCA,UAAU,CAACF,OAAO,GAAG,IAAAC,oBAAS,EAACC,UAAU,CAACF,OAAO,CAAC;IACpD,CAAC,CAAC;EACJ,CAAC,CAAC;EACF,OAAOrB,OAAO;AAChB;AAEA,MAAMa,cAAc,GAAG,CACrB;EACEb,OAAO,EAAE,CACP;IACEqB,OAAO,EAAE,gCAAgC;IACzCnB,IAAI,EAAE,KAAK;IACXsB,KAAK,EAAE;MACLrB,YAAY,EAAE,OAAO;MACrBC,WAAW,EAAE,OAAO;MACpBF,IAAI,EAAE,KAAK;MACXG,MAAM,EAAE,YAAY;MACpBC,WAAW,EAAE;IACf;EACF,CAAC,EACD;IACEe,OAAO,EAAE,gCAAgC;IACzCnB,IAAI,EAAE,KAAK;IACXsB,KAAK,EAAE;MACLrB,YAAY,EAAE,OAAO;MACrBC,WAAW,EAAE,OAAO;MACpBF,IAAI,EAAE,KAAK;MACXG,MAAM,EAAE,YAAY;MACpBC,WAAW,EAAE;IACf;EACF,CAAC,EACD;IACEe,OAAO,EAAE,gCAAgC;IACzCnB,IAAI,EAAE,KAAK;IACXsB,KAAK,EAAE;MACLrB,YAAY,EAAE,OAAO;MACrBC,WAAW,EAAE,OAAO;MACpBF,IAAI,EAAE,KAAK;MACXG,MAAM,EAAE,YAAY;MACpBC,WAAW,EAAE;IACf;EACF,CAAC,EACD;IACEe,OAAO,EAAE,gCAAgC;IACzCnB,IAAI,EAAE,KAAK;IACXsB,KAAK,EAAE;MACLrB,YAAY,EAAE,OAAO;MACrBC,WAAW,EAAE,OAAO;MACpBF,IAAI,EAAE,KAAK;MACXG,MAAM,EAAE,YAAY;MACpBC,WAAW,EAAE;IACf;EACF,CAAC,CACF;EACDe,OAAO,EAAE;AACX,CAAC,CACF;AAED,MAAMH,aAAa,GAAG,CACpB;EACElB,OAAO,EAAE,CACP;IACEqB,OAAO,EAAE,gCAAgC;IACzCnB,IAAI,EAAE,KAAK;IACXsB,KAAK,EAAE;MACLV,WAAW,EAAEC,wBAAW,CAACC,UAAU,CAAC,aAAa,CAAC;MAClDb,YAAY,EAAE,OAAO;MACrBC,WAAW,EAAE,OAAO;MACpBF,IAAI,EAAE,KAAK;MACXG,MAAM,EAAE,WAAW;MACnBC,WAAW,EAAE;IACf;EACF,CAAC,CACF;EACDe,OAAO,EAAE;AACX,CAAC,EACD;EACErB,OAAO,EAAE,CACP;IACEqB,OAAO,EAAE,gCAAgC;IACzCnB,IAAI,EAAE,KAAK;IACXsB,KAAK,EAAE;MACLrB,YAAY,EAAE,OAAO;MACrBC,WAAW,EAAE,OAAO;MACpBF,IAAI,EAAE,KAAK;MACXG,MAAM,EAAE,UAAU;MAClBC,WAAW,EAAE,kBAAkB;MAC/BW,cAAc,EAAE;IAClB;EACF,CAAC,CACF;EACDI,OAAO,EAAE;AACX,CAAC,CACF","ignoreList":[]}
|
package/dist/uninstall.cmd.js
CHANGED
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
5
5
|
});
|
6
6
|
exports.default = void 0;
|
7
|
-
function _defineProperty(
|
7
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
8
8
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
9
9
|
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
10
10
|
class UninstallCmd {
|
package/dist/update.cmd.js
CHANGED
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
5
5
|
});
|
6
6
|
exports.default = void 0;
|
7
|
-
function _defineProperty(
|
7
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
8
8
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
9
9
|
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
10
10
|
class UpdateCmd {
|
package/package.json
CHANGED
@@ -1,12 +1,12 @@
|
|
1
1
|
{
|
2
2
|
"name": "@teambit/install",
|
3
|
-
"version": "1.0.
|
3
|
+
"version": "1.0.284",
|
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.
|
9
|
+
"version": "1.0.284"
|
10
10
|
},
|
11
11
|
"dependencies": {
|
12
12
|
"chalk": "2.4.2",
|
@@ -23,21 +23,21 @@
|
|
23
23
|
"@teambit/bit-roots": "0.0.133",
|
24
24
|
"@teambit/bit-error": "0.0.404",
|
25
25
|
"@teambit/cli": "0.0.865",
|
26
|
-
"@teambit/dependency-resolver": "1.0.
|
26
|
+
"@teambit/dependency-resolver": "1.0.284",
|
27
27
|
"@teambit/logger": "0.0.958",
|
28
|
-
"@teambit/workspace": "1.0.
|
29
|
-
"@teambit/application": "1.0.
|
30
|
-
"@teambit/compiler": "1.0.
|
28
|
+
"@teambit/workspace": "1.0.284",
|
29
|
+
"@teambit/application": "1.0.284",
|
30
|
+
"@teambit/compiler": "1.0.284",
|
31
31
|
"@teambit/component-issues": "0.0.149",
|
32
32
|
"@teambit/component-package-version": "0.0.433",
|
33
|
-
"@teambit/component": "1.0.
|
33
|
+
"@teambit/component": "1.0.284",
|
34
34
|
"@teambit/dependencies.fs.linked-dependencies": "0.0.9",
|
35
|
-
"@teambit/envs": "1.0.
|
36
|
-
"@teambit/generator": "1.0.
|
37
|
-
"@teambit/ipc-events": "1.0.
|
38
|
-
"@teambit/issues": "1.0.
|
39
|
-
"@teambit/variants": "0.0.
|
40
|
-
"@teambit/workspace-config-files": "1.0.
|
35
|
+
"@teambit/envs": "1.0.284",
|
36
|
+
"@teambit/generator": "1.0.285",
|
37
|
+
"@teambit/ipc-events": "1.0.284",
|
38
|
+
"@teambit/issues": "1.0.284",
|
39
|
+
"@teambit/variants": "0.0.1128",
|
40
|
+
"@teambit/workspace-config-files": "1.0.284",
|
41
41
|
"@teambit/workspace.modules.node-modules-linker": "0.0.173",
|
42
42
|
"@teambit/toolbox.time.time-format": "0.0.496"
|
43
43
|
},
|
File without changes
|