@teambit/workspace 1.0.1009 → 1.0.1010
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/capsule.cmd.d.ts
CHANGED
package/dist/capsule.cmd.js
CHANGED
|
@@ -294,7 +294,7 @@ class CapsulePruneCmd {
|
|
|
294
294
|
use --dry-run first to preview what would be removed.`);
|
|
295
295
|
_defineProperty(this, "group", 'advanced');
|
|
296
296
|
_defineProperty(this, "alias", '');
|
|
297
|
-
_defineProperty(this, "options", [['', 'older-than <days>', 'age threshold in days for aspect-version/scope capsule pruning (default 30)'], ['', 'keep-workspace-caps', 'skip workspace capsule deletion'], ['', 'no-orphans', "don't delete capsules whose origin path no longer exists"], ['', '
|
|
297
|
+
_defineProperty(this, "options", [['', 'older-than <days>', 'age threshold in days for aspect-version/scope capsule pruning (default 30)'], ['', 'keep-workspace-caps', 'skip workspace capsule deletion'], ['', 'no-orphans', "don't delete capsules whose origin path no longer exists"], ['', 'dry-run', 'preview what would be removed without deleting'], ['', 'with-sizes', 'compute byte sizes for the report (walks the full cache; slow on large caches). default: off — sizes shown as 0 but the prune itself is instant.'], ['j', 'json', 'json format']]);
|
|
298
298
|
}
|
|
299
299
|
async report(_args, opts) {
|
|
300
300
|
const report = await this.runPrune(opts);
|
|
@@ -314,12 +314,10 @@ use --dry-run first to preview what would be removed.`);
|
|
|
314
314
|
// CLI flags win; otherwise fall back to user config so manual and auto-prune
|
|
315
315
|
// behave consistently. Final fallback to defaults happens in `pruneCapsules`.
|
|
316
316
|
const olderThanFromConfig = this.configStore.getConfig(_legacy().CFG_CAPSULES_MAX_AGE_DAYS);
|
|
317
|
-
const sizeTargetFromConfig = this.configStore.getConfig(_legacy().CFG_CAPSULES_MAX_SIZE_GB);
|
|
318
317
|
return this.isolator.pruneCapsules({
|
|
319
318
|
olderThanDays: toFiniteNumber(opts.olderThan) ?? toFiniteNumber(olderThanFromConfig),
|
|
320
319
|
keepWorkspaceCaps: opts.keepWorkspaceCaps === true,
|
|
321
320
|
includeOrphans: opts.noOrphans !== true,
|
|
322
|
-
sizeTargetGb: toFiniteNumber(opts.sizeTarget) ?? toFiniteNumber(sizeTargetFromConfig),
|
|
323
321
|
dryRun: opts.dryRun === true,
|
|
324
322
|
withSizes: opts.withSizes === true
|
|
325
323
|
});
|
package/dist/capsule.cmd.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_cli","data","require","_isolator","_legacy","_chalk","_interopRequireDefault","_fsExtra","_path","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","formatBytes","bytes","units","Math","min","floor","log","toFixed","toFiniteNumber","undefined","n","isFinite","CapsuleCreateCmd","constructor","workspace","scope","isolator","create","componentIds","baseDir","rootBaseDir","alwaysNew","id","installPackages","seedersOnly","useHash","Array","isArray","finalUseHash","shouldUseHashForCapsules","baseInstallOptions","additionalInstallOptions","copyPeerToRuntimeOnRoot","useNesting","copyPeerToRuntimeOnComponents","installPeersFromEnvs","installOptions","capsuleOptions","includeFromNestedHosts","name","host","ids","resolveMultipleComponentIds","network","isolateComponents","capsules","graphCapsules","report","opts","items","map","capsule","formatItem","chalk","bold","component","toString","path","formatSuccessSummary","join","json","c","exports","CapsuleListCmd","configStore","_args","Error","workspaceCapsulesRootDir","scopeAspectsCapsulesRootDir","scopeCapsulesRootDir","getCapsulesRootDirs","listWs","list","listScope","hostPath","numOfWsCapsules","hostType","title","formatTitle","wsLine","scopeAspectLine","scopeLine","summaryLine","suggestLine","withStats","allRoots","listAllCapsuleRoots","withSizes","totalSize","reduce","sum","sizeBytes","orphanChecks","Promise","all","originPath","fs","pathExists","orphanCount","a","b","maxAgeRaw","getConfig","CFG_CAPSULES_MAX_AGE_DAYS","maxAgeDays","max","cutoff","Date","now","staleChecks","kind","countStaleAspectChildren","staleAspectCount","formatHint","lines","x","rootPath","cutoffMs","entries","readdir","withFileTypes","count","entry","isDirectory","startsWith","childPath","markerPath","CAPSULE_ORIGIN_FILE","stat","mtime","getTime","catch","rootDirs","scopeCapsules","totalSizeBytes","CapsuleDeleteCmd","args","scopeAspects","capsuleBaseDirToDelete","capsuleBaseDir","deletedDir","deleteCapsules","CapsulePruneCmd","runPrune","header","dryRun","removed","sizesComputed","totalSizeBeforeBytes","totalRemovedBytes","sizeLine","totalSizeAfterBytes","slice","dim","reason","truncated","Boolean","olderThanFromConfig","sizeTargetFromConfig","CFG_CAPSULES_MAX_SIZE_GB","pruneCapsules","olderThanDays","olderThan","keepWorkspaceCaps","includeOrphans","noOrphans","sizeTargetGb","sizeTarget","CapsuleCmd","getCapsulesRootDir","getCapsulePath","getAspectCapsulePath","process","cwd"],"sources":["capsule.cmd.ts"],"sourcesContent":["// eslint-disable-next-line max-classes-per-file\nimport type { Command, CommandOptions } from '@teambit/cli';\nimport { formatItem, formatTitle, formatSuccessSummary, formatHint } from '@teambit/cli';\nimport type { CapsuleList, IsolateComponentsOptions, IsolatorMain, PruneCapsulesReport } from '@teambit/isolator';\nimport { CAPSULE_ORIGIN_FILE } from '@teambit/isolator';\nimport type { ScopeMain } from '@teambit/scope';\nimport type { ConfigStoreMain } from '@teambit/config-store';\nimport { CFG_CAPSULES_MAX_AGE_DAYS, CFG_CAPSULES_MAX_SIZE_GB } from '@teambit/legacy.constants';\nimport chalk from 'chalk';\nimport fs from 'fs-extra';\nimport path from 'path';\nimport type { Workspace } from './workspace';\n\nfunction formatBytes(bytes: number): string {\n if (!bytes) return '0 B';\n const units = ['B', 'KB', 'MB', 'GB', 'TB'];\n const i = Math.min(Math.floor(Math.log(bytes) / Math.log(1024)), units.length - 1);\n return `${(bytes / 1024 ** i).toFixed(i === 0 ? 0 : 1)} ${units[i]}`;\n}\n\n/**\n * Coerce a CLI/config value to a finite number, or undefined if it's missing,\n * empty, or unparseable. Guards against `Number('')` (= 0) and `Number('abc')` (= NaN)\n * silently propagating as bad thresholds and defeating age/size enforcement.\n */\nfunction toFiniteNumber(value: unknown): number | undefined {\n if (value === undefined || value === null || value === '') return undefined;\n const n = Number(value);\n return Number.isFinite(n) ? n : undefined;\n}\n\ntype CreateOpts = {\n baseDir?: string;\n rootBaseDir?: string;\n alwaysNew?: boolean;\n seedersOnly?: boolean;\n useHash?: boolean;\n id: string;\n installPackages?: boolean;\n};\n\nexport class CapsuleCreateCmd implements Command {\n name = 'create [component-id...]';\n description = `create capsules for components`;\n helpUrl = 'reference/build-pipeline/capsule';\n group = 'advanced';\n alias = '';\n options = [\n [\n 'b',\n 'base-dir <name>',\n 'set base dir of all capsules (hashed to create the base dir inside the root dir - host path by default)',\n ],\n ['r', 'root-base-dir <name>', 'set root base dir of all capsules (absolute path to use as root dir)'],\n ['a', 'always-new', 'create new environment for capsule'],\n ['s', 'seeders-only', 'create capsules for the seeders only (not for the entire graph)'],\n ['i', 'id <name>', 'reuse capsule of certain name'],\n ['', 'use-hash', 'whether to use hash function (of base dir) as capsules root dir name'],\n ['j', 'json', 'json format'],\n ['d', 'install-packages', 'install packages by the package-manager'],\n ['p', 'package-manager <name>', 'npm, yarn or pnpm, default to npm'],\n ] as CommandOptions;\n\n constructor(\n private workspace: Workspace | undefined,\n private scope: ScopeMain,\n private isolator: IsolatorMain\n ) {}\n\n async create(\n [componentIds = []]: [string[]],\n { baseDir, rootBaseDir, alwaysNew = false, id, installPackages = false, seedersOnly = false, useHash }: CreateOpts\n ): Promise<CapsuleList> {\n // @todo: why it is not an array?\n if (componentIds && !Array.isArray(componentIds)) componentIds = [componentIds];\n let finalUseHash = useHash;\n if (useHash === undefined) {\n if (baseDir) {\n finalUseHash = false;\n } else {\n finalUseHash = this.workspace\n ? this.workspace?.shouldUseHashForCapsules()\n : this.scope.shouldUseHashForCapsules();\n }\n }\n\n const baseInstallOptions = { installPackages };\n const additionalInstallOptions = this.workspace\n ? {}\n : {\n copyPeerToRuntimeOnRoot: true,\n useNesting: true,\n copyPeerToRuntimeOnComponents: true,\n installPeersFromEnvs: true,\n };\n const installOptions = { ...baseInstallOptions, ...additionalInstallOptions };\n\n const capsuleOptions: IsolateComponentsOptions = {\n baseDir,\n rootBaseDir,\n installOptions,\n alwaysNew,\n seedersOnly,\n includeFromNestedHosts: true,\n name: id,\n useHash: finalUseHash,\n };\n const host = this.workspace || this.scope;\n const ids = await host.resolveMultipleComponentIds(componentIds);\n const network = await this.isolator.isolateComponents(ids, capsuleOptions);\n const capsules = network.graphCapsules;\n return capsules;\n }\n\n async report([componentIds]: [string[]], opts: CreateOpts) {\n // @ts-ignore\n const capsules = await this.create(componentIds, opts);\n const items = capsules.map((capsule) =>\n formatItem(`${chalk.bold(capsule.component.id.toString())} - ${capsule.path}`)\n );\n return `${formatSuccessSummary(`${capsules.length} capsule(s) were created`)}\\n${items.join('\\n')}`;\n }\n\n async json([componentIds]: [string[]], opts: CreateOpts) {\n // @ts-ignore\n const capsules = await this.create(componentIds, opts);\n return capsules.map((c) => ({\n id: c.component.id.toString(),\n path: c.path,\n }));\n }\n}\n\nexport class CapsuleListCmd implements Command {\n name = 'list';\n description = `list the capsules generated for this workspace`;\n group = 'advanced';\n alias = '';\n options = [\n ['j', 'json', 'json format'],\n ['', 'with-stats', 'include total cache size, orphan count, and stale aspect-version count (walks the full cache)'],\n ] as CommandOptions;\n\n constructor(\n private isolator: IsolatorMain,\n private workspace: Workspace | undefined,\n private scope: ScopeMain,\n private configStore: ConfigStoreMain\n ) {}\n\n async report(_args: [], opts: { withStats?: boolean } = {}) {\n if (!this.workspace && !this.scope) {\n throw new Error(`This command requires a Bit workspace or scope.\nTo initialize a workspace: bit init`);\n }\n\n const { workspaceCapsulesRootDir, scopeAspectsCapsulesRootDir, scopeCapsulesRootDir } = this.getCapsulesRootDirs();\n const listWs = workspaceCapsulesRootDir ? await this.isolator.list(workspaceCapsulesRootDir) : undefined;\n const listScope = await this.isolator.list(scopeAspectsCapsulesRootDir);\n\n const hostPath = this.workspace ? this.workspace.path : this.scope.path;\n const numOfWsCapsules = listWs ? listWs.capsules.length : listScope.capsules.length;\n const hostType = this.workspace ? 'workspace' : 'scope';\n\n const title = formatTitle(`found ${numOfWsCapsules} capsule(s) for ${hostType}: ${hostPath}`);\n const wsLine = listWs ? formatItem(`workspace capsules root-dir: ${workspaceCapsulesRootDir}`) : undefined;\n const scopeAspectLine = formatItem(`scope's aspects capsules root-dir: ${scopeAspectsCapsulesRootDir}`);\n const scopeLine = scopeCapsulesRootDir\n ? formatItem(`scope's capsules root-dir: ${scopeCapsulesRootDir}`)\n : undefined;\n\n let summaryLine: string | undefined;\n let suggestLine: string;\n if (opts.withStats) {\n const allRoots = await this.isolator.listAllCapsuleRoots({ withSizes: true });\n const totalSize = allRoots.reduce((sum, r) => sum + r.sizeBytes, 0);\n const orphanChecks = await Promise.all(\n allRoots\n .filter((r) => r.originPath)\n .map(async (r): Promise<number> => ((await fs.pathExists(r.originPath as string)) ? 0 : 1))\n );\n const orphanCount = orphanChecks.reduce((a: number, b: number) => a + b, 0);\n const maxAgeRaw = this.configStore.getConfig(CFG_CAPSULES_MAX_AGE_DAYS);\n const maxAgeDays = Math.max(0, toFiniteNumber(maxAgeRaw) ?? 30);\n const cutoff = Date.now() - maxAgeDays * 24 * 60 * 60 * 1000;\n const staleChecks = await Promise.all(\n allRoots\n .filter((r) => r.kind === 'scope-aspects-root')\n .map((r): Promise<number> => this.countStaleAspectChildren(r.path, cutoff))\n );\n const staleAspectCount = staleChecks.reduce((a: number, b: number) => a + b, 0);\n summaryLine = formatItem(\n `cache total: ${chalk.bold(formatBytes(totalSize))} across ${allRoots.length} subdir(s) — ` +\n `${orphanCount} orphan(s), ${staleAspectCount} stale aspect-version(s) (>${maxAgeDays}d)`\n );\n suggestLine = formatHint(`use --json to get the list of all capsules`);\n } else {\n suggestLine = formatHint(`use --json to get the list of all capsules, or --with-stats for size/orphan summary`);\n }\n const lines = [title, wsLine, scopeAspectLine, scopeLine, summaryLine, suggestLine].filter((x) => x).join('\\n');\n\n return lines;\n }\n\n private async countStaleAspectChildren(rootPath: string, cutoffMs: number): Promise<number> {\n try {\n const entries = await fs.readdir(rootPath, { withFileTypes: true });\n let count = 0;\n for (const entry of entries) {\n if (!entry.isDirectory() || entry.name === 'node_modules' || entry.name.startsWith('.')) continue;\n const childPath = path.join(rootPath, entry.name);\n const markerPath = path.join(childPath, CAPSULE_ORIGIN_FILE);\n try {\n const stat = await fs.stat(markerPath);\n if (stat.mtime.getTime() < cutoffMs) count += 1;\n } catch {\n const stat = await fs.stat(childPath).catch(() => undefined);\n if (stat && stat.mtime.getTime() < cutoffMs) count += 1;\n }\n }\n return count;\n } catch {\n return 0;\n }\n }\n\n async json(_args: [], opts: { withStats?: boolean } = {}) {\n if (!this.workspace && !this.scope) {\n throw new Error(`This command requires a Bit workspace or scope.\nTo initialize a workspace: bit init`);\n }\n\n const rootDirs = this.getCapsulesRootDirs();\n const listWs = rootDirs.workspaceCapsulesRootDir\n ? await this.isolator.list(rootDirs.workspaceCapsulesRootDir)\n : undefined;\n const listScope = await this.isolator.list(rootDirs.scopeAspectsCapsulesRootDir);\n const capsules = listWs ? listWs.capsules : [];\n const scopeCapsules = listScope ? listScope.capsules : [];\n // `--with-stats` is opt-in because computing it walks the full cache. Without it,\n // omit the stats fields entirely rather than returning misleading zeros.\n if (!opts.withStats) {\n return { ...rootDirs, capsules, scopeCapsules };\n }\n const allRoots = await this.isolator.listAllCapsuleRoots({ withSizes: true });\n const totalSizeBytes = allRoots.reduce((sum, r) => sum + r.sizeBytes, 0);\n return { ...rootDirs, capsules, scopeCapsules, totalSizeBytes, allRoots };\n }\n\n private getCapsulesRootDirs() {\n return getCapsulesRootDirs(this.isolator, this.scope, this.workspace);\n }\n}\n\nexport class CapsuleDeleteCmd implements Command {\n name = 'delete';\n description = `delete capsules`;\n extendedDescription = `with no args, only workspace's capsules are deleted`;\n group = 'advanced';\n alias = '';\n options = [\n ['', 'scope-aspects', 'delete scope-aspects capsules'],\n ['a', 'all', 'delete all capsules for all workspaces and scopes'],\n ] as CommandOptions;\n\n constructor(\n private isolator: IsolatorMain,\n private scope: ScopeMain,\n private workspace?: Workspace\n ) {}\n\n async report(args: [], { all, scopeAspects }: { all: boolean; scopeAspects: boolean }) {\n const capsuleBaseDirToDelete = (): string | undefined => {\n if (all) return undefined;\n if (scopeAspects) {\n const { scopeAspectsCapsulesRootDir } = getCapsulesRootDirs(this.isolator, this.scope, this.workspace);\n return scopeAspectsCapsulesRootDir;\n }\n return undefined;\n };\n const capsuleBaseDir = capsuleBaseDirToDelete();\n const deletedDir = await this.isolator.deleteCapsules(capsuleBaseDir);\n return formatSuccessSummary(`capsules dir has been deleted: ${chalk.bold(deletedDir)}`);\n }\n}\n\ntype PruneOpts = {\n olderThan?: number;\n keepWorkspaceCaps?: boolean;\n noOrphans?: boolean;\n sizeTarget?: number;\n dryRun?: boolean;\n withSizes?: boolean;\n json?: boolean;\n};\n\nexport class CapsulePruneCmd implements Command {\n name = 'prune';\n description = 'evict stale capsules from the global cache';\n extendedDescription = `workspace capsules are deleted unconditionally; aspect-version and scope capsules are deleted when their last-used marker is older than --older-than (default 30 days).\nuse --dry-run first to preview what would be removed.`;\n group = 'advanced';\n alias = '';\n options = [\n ['', 'older-than <days>', 'age threshold in days for aspect-version/scope capsule pruning (default 30)'],\n ['', 'keep-workspace-caps', 'skip workspace capsule deletion'],\n ['', 'no-orphans', \"don't delete capsules whose origin path no longer exists\"],\n [\n '',\n 'size-target <gb>',\n 'after standard pruning, LRU-evict aspect-versions until total drops below this size (forces --with-sizes)',\n ],\n ['', 'dry-run', 'preview what would be removed without deleting'],\n [\n '',\n 'with-sizes',\n 'compute byte sizes for the report (walks the full cache; slow on large caches). default: off — sizes shown as 0 but the prune itself is instant.',\n ],\n ['j', 'json', 'json format'],\n ] as CommandOptions;\n\n constructor(\n private isolator: IsolatorMain,\n private configStore: ConfigStoreMain\n ) {}\n\n async report(_args: [], opts: PruneOpts) {\n const report = await this.runPrune(opts);\n const header = report.dryRun\n ? formatTitle(`[dry-run] would remove ${report.removed.length} capsule(s)`)\n : formatSuccessSummary(`removed ${report.removed.length} capsule(s)`);\n // Only show the byte summary when sizes were actually computed; otherwise it'd say\n // \"0 B → 0 B (freed 0 B)\" which is misleading.\n const sizesComputed = report.totalSizeBeforeBytes > 0 || report.totalRemovedBytes > 0;\n const sizeLine = sizesComputed\n ? formatItem(\n `cache: ${formatBytes(report.totalSizeBeforeBytes)} → ${formatBytes(report.totalSizeAfterBytes)} ` +\n `(freed ${formatBytes(report.totalRemovedBytes)})`\n )\n : formatHint(`re-run with --with-sizes to see byte totals (walks the full cache)`);\n const items = report.removed\n .slice(0, 50)\n .map((r) =>\n formatItem(\n `${chalk.dim(`[${r.kind} · ${r.reason}]`)} ${r.path}` +\n (r.originPath ? ` ${chalk.dim(`← ${r.originPath}`)}` : '') +\n ` ${chalk.dim(`(${formatBytes(r.sizeBytes)})`)}`\n )\n );\n const truncated =\n report.removed.length > 50\n ? formatHint(`...and ${report.removed.length - 50} more (use --json to see the full list)`)\n : undefined;\n return [header, sizeLine, ...items, truncated].filter(Boolean).join('\\n');\n }\n\n async json(_args: [], opts: PruneOpts) {\n return this.runPrune(opts);\n }\n\n private async runPrune(opts: PruneOpts): Promise<PruneCapsulesReport> {\n // CLI flags win; otherwise fall back to user config so manual and auto-prune\n // behave consistently. Final fallback to defaults happens in `pruneCapsules`.\n const olderThanFromConfig = this.configStore.getConfig(CFG_CAPSULES_MAX_AGE_DAYS);\n const sizeTargetFromConfig = this.configStore.getConfig(CFG_CAPSULES_MAX_SIZE_GB);\n return this.isolator.pruneCapsules({\n olderThanDays: toFiniteNumber(opts.olderThan) ?? toFiniteNumber(olderThanFromConfig),\n keepWorkspaceCaps: opts.keepWorkspaceCaps === true,\n includeOrphans: opts.noOrphans !== true,\n sizeTargetGb: toFiniteNumber(opts.sizeTarget) ?? toFiniteNumber(sizeTargetFromConfig),\n dryRun: opts.dryRun === true,\n withSizes: opts.withSizes === true,\n });\n }\n}\n\nexport class CapsuleCmd implements Command {\n name = 'capsule';\n description = 'manage isolated component environments';\n extendedDescription = `capsules are temporary isolated directories containing component code and dependencies.\nautomatically created during build processes to compile and test components in isolation.\nensures components work independently before publishing, similar to how they'll be consumed.`;\n alias = '';\n group = 'advanced';\n commands: Command[] = [];\n options = [['j', 'json', 'json format']] as CommandOptions;\n\n constructor(\n private isolator: IsolatorMain,\n private workspace: Workspace | undefined,\n private scope: ScopeMain,\n private configStore: ConfigStoreMain\n ) {}\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n async report(args: [string]) {\n return new CapsuleListCmd(this.isolator, this.workspace, this.scope, this.configStore).report([], {});\n }\n}\n\nfunction getCapsulesRootDirs(isolator, scope: ScopeMain, workspace) {\n const workspaceCapsulesRootDir = workspace\n ? isolator.getCapsulesRootDir({\n baseDir: workspace.getCapsulePath(),\n useHash: workspace.shouldUseHashForCapsules(),\n })\n : undefined;\n const scopeAspectsCapsulesRootDir = isolator.getCapsulesRootDir({\n baseDir: scope.getAspectCapsulePath(),\n useHash: scope.shouldUseHashForCapsules(),\n });\n const scopeCapsulesRootDir = workspace\n ? undefined\n : isolator.getCapsulesRootDir({\n baseDir: process.cwd(),\n useHash: true,\n });\n\n return { workspaceCapsulesRootDir, scopeAspectsCapsulesRootDir, scopeCapsulesRootDir };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_cli","data","require","_isolator","_legacy","_chalk","_interopRequireDefault","_fsExtra","_path","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","formatBytes","bytes","units","Math","min","floor","log","toFixed","toFiniteNumber","undefined","n","isFinite","CapsuleCreateCmd","constructor","workspace","scope","isolator","create","componentIds","baseDir","rootBaseDir","alwaysNew","id","installPackages","seedersOnly","useHash","Array","isArray","finalUseHash","shouldUseHashForCapsules","baseInstallOptions","additionalInstallOptions","copyPeerToRuntimeOnRoot","useNesting","copyPeerToRuntimeOnComponents","installPeersFromEnvs","installOptions","capsuleOptions","includeFromNestedHosts","name","host","ids","resolveMultipleComponentIds","network","isolateComponents","capsules","graphCapsules","report","opts","items","map","capsule","formatItem","chalk","bold","component","toString","path","formatSuccessSummary","join","json","c","exports","CapsuleListCmd","configStore","_args","Error","workspaceCapsulesRootDir","scopeAspectsCapsulesRootDir","scopeCapsulesRootDir","getCapsulesRootDirs","listWs","list","listScope","hostPath","numOfWsCapsules","hostType","title","formatTitle","wsLine","scopeAspectLine","scopeLine","summaryLine","suggestLine","withStats","allRoots","listAllCapsuleRoots","withSizes","totalSize","reduce","sum","sizeBytes","orphanChecks","Promise","all","originPath","fs","pathExists","orphanCount","a","b","maxAgeRaw","getConfig","CFG_CAPSULES_MAX_AGE_DAYS","maxAgeDays","max","cutoff","Date","now","staleChecks","kind","countStaleAspectChildren","staleAspectCount","formatHint","lines","x","rootPath","cutoffMs","entries","readdir","withFileTypes","count","entry","isDirectory","startsWith","childPath","markerPath","CAPSULE_ORIGIN_FILE","stat","mtime","getTime","catch","rootDirs","scopeCapsules","totalSizeBytes","CapsuleDeleteCmd","args","scopeAspects","capsuleBaseDirToDelete","capsuleBaseDir","deletedDir","deleteCapsules","CapsulePruneCmd","runPrune","header","dryRun","removed","sizesComputed","totalSizeBeforeBytes","totalRemovedBytes","sizeLine","totalSizeAfterBytes","slice","dim","reason","truncated","Boolean","olderThanFromConfig","pruneCapsules","olderThanDays","olderThan","keepWorkspaceCaps","includeOrphans","noOrphans","CapsuleCmd","getCapsulesRootDir","getCapsulePath","getAspectCapsulePath","process","cwd"],"sources":["capsule.cmd.ts"],"sourcesContent":["// eslint-disable-next-line max-classes-per-file\nimport type { Command, CommandOptions } from '@teambit/cli';\nimport { formatItem, formatTitle, formatSuccessSummary, formatHint } from '@teambit/cli';\nimport type { CapsuleList, IsolateComponentsOptions, IsolatorMain, PruneCapsulesReport } from '@teambit/isolator';\nimport { CAPSULE_ORIGIN_FILE } from '@teambit/isolator';\nimport type { ScopeMain } from '@teambit/scope';\nimport type { ConfigStoreMain } from '@teambit/config-store';\nimport { CFG_CAPSULES_MAX_AGE_DAYS } from '@teambit/legacy.constants';\nimport chalk from 'chalk';\nimport fs from 'fs-extra';\nimport path from 'path';\nimport type { Workspace } from './workspace';\n\nfunction formatBytes(bytes: number): string {\n if (!bytes) return '0 B';\n const units = ['B', 'KB', 'MB', 'GB', 'TB'];\n const i = Math.min(Math.floor(Math.log(bytes) / Math.log(1024)), units.length - 1);\n return `${(bytes / 1024 ** i).toFixed(i === 0 ? 0 : 1)} ${units[i]}`;\n}\n\n/**\n * Coerce a CLI/config value to a finite number, or undefined if it's missing,\n * empty, or unparseable. Guards against `Number('')` (= 0) and `Number('abc')` (= NaN)\n * silently propagating as bad thresholds and defeating age/size enforcement.\n */\nfunction toFiniteNumber(value: unknown): number | undefined {\n if (value === undefined || value === null || value === '') return undefined;\n const n = Number(value);\n return Number.isFinite(n) ? n : undefined;\n}\n\ntype CreateOpts = {\n baseDir?: string;\n rootBaseDir?: string;\n alwaysNew?: boolean;\n seedersOnly?: boolean;\n useHash?: boolean;\n id: string;\n installPackages?: boolean;\n};\n\nexport class CapsuleCreateCmd implements Command {\n name = 'create [component-id...]';\n description = `create capsules for components`;\n helpUrl = 'reference/build-pipeline/capsule';\n group = 'advanced';\n alias = '';\n options = [\n [\n 'b',\n 'base-dir <name>',\n 'set base dir of all capsules (hashed to create the base dir inside the root dir - host path by default)',\n ],\n ['r', 'root-base-dir <name>', 'set root base dir of all capsules (absolute path to use as root dir)'],\n ['a', 'always-new', 'create new environment for capsule'],\n ['s', 'seeders-only', 'create capsules for the seeders only (not for the entire graph)'],\n ['i', 'id <name>', 'reuse capsule of certain name'],\n ['', 'use-hash', 'whether to use hash function (of base dir) as capsules root dir name'],\n ['j', 'json', 'json format'],\n ['d', 'install-packages', 'install packages by the package-manager'],\n ['p', 'package-manager <name>', 'npm, yarn or pnpm, default to npm'],\n ] as CommandOptions;\n\n constructor(\n private workspace: Workspace | undefined,\n private scope: ScopeMain,\n private isolator: IsolatorMain\n ) {}\n\n async create(\n [componentIds = []]: [string[]],\n { baseDir, rootBaseDir, alwaysNew = false, id, installPackages = false, seedersOnly = false, useHash }: CreateOpts\n ): Promise<CapsuleList> {\n // @todo: why it is not an array?\n if (componentIds && !Array.isArray(componentIds)) componentIds = [componentIds];\n let finalUseHash = useHash;\n if (useHash === undefined) {\n if (baseDir) {\n finalUseHash = false;\n } else {\n finalUseHash = this.workspace\n ? this.workspace?.shouldUseHashForCapsules()\n : this.scope.shouldUseHashForCapsules();\n }\n }\n\n const baseInstallOptions = { installPackages };\n const additionalInstallOptions = this.workspace\n ? {}\n : {\n copyPeerToRuntimeOnRoot: true,\n useNesting: true,\n copyPeerToRuntimeOnComponents: true,\n installPeersFromEnvs: true,\n };\n const installOptions = { ...baseInstallOptions, ...additionalInstallOptions };\n\n const capsuleOptions: IsolateComponentsOptions = {\n baseDir,\n rootBaseDir,\n installOptions,\n alwaysNew,\n seedersOnly,\n includeFromNestedHosts: true,\n name: id,\n useHash: finalUseHash,\n };\n const host = this.workspace || this.scope;\n const ids = await host.resolveMultipleComponentIds(componentIds);\n const network = await this.isolator.isolateComponents(ids, capsuleOptions);\n const capsules = network.graphCapsules;\n return capsules;\n }\n\n async report([componentIds]: [string[]], opts: CreateOpts) {\n // @ts-ignore\n const capsules = await this.create(componentIds, opts);\n const items = capsules.map((capsule) =>\n formatItem(`${chalk.bold(capsule.component.id.toString())} - ${capsule.path}`)\n );\n return `${formatSuccessSummary(`${capsules.length} capsule(s) were created`)}\\n${items.join('\\n')}`;\n }\n\n async json([componentIds]: [string[]], opts: CreateOpts) {\n // @ts-ignore\n const capsules = await this.create(componentIds, opts);\n return capsules.map((c) => ({\n id: c.component.id.toString(),\n path: c.path,\n }));\n }\n}\n\nexport class CapsuleListCmd implements Command {\n name = 'list';\n description = `list the capsules generated for this workspace`;\n group = 'advanced';\n alias = '';\n options = [\n ['j', 'json', 'json format'],\n ['', 'with-stats', 'include total cache size, orphan count, and stale aspect-version count (walks the full cache)'],\n ] as CommandOptions;\n\n constructor(\n private isolator: IsolatorMain,\n private workspace: Workspace | undefined,\n private scope: ScopeMain,\n private configStore: ConfigStoreMain\n ) {}\n\n async report(_args: [], opts: { withStats?: boolean } = {}) {\n if (!this.workspace && !this.scope) {\n throw new Error(`This command requires a Bit workspace or scope.\nTo initialize a workspace: bit init`);\n }\n\n const { workspaceCapsulesRootDir, scopeAspectsCapsulesRootDir, scopeCapsulesRootDir } = this.getCapsulesRootDirs();\n const listWs = workspaceCapsulesRootDir ? await this.isolator.list(workspaceCapsulesRootDir) : undefined;\n const listScope = await this.isolator.list(scopeAspectsCapsulesRootDir);\n\n const hostPath = this.workspace ? this.workspace.path : this.scope.path;\n const numOfWsCapsules = listWs ? listWs.capsules.length : listScope.capsules.length;\n const hostType = this.workspace ? 'workspace' : 'scope';\n\n const title = formatTitle(`found ${numOfWsCapsules} capsule(s) for ${hostType}: ${hostPath}`);\n const wsLine = listWs ? formatItem(`workspace capsules root-dir: ${workspaceCapsulesRootDir}`) : undefined;\n const scopeAspectLine = formatItem(`scope's aspects capsules root-dir: ${scopeAspectsCapsulesRootDir}`);\n const scopeLine = scopeCapsulesRootDir\n ? formatItem(`scope's capsules root-dir: ${scopeCapsulesRootDir}`)\n : undefined;\n\n let summaryLine: string | undefined;\n let suggestLine: string;\n if (opts.withStats) {\n const allRoots = await this.isolator.listAllCapsuleRoots({ withSizes: true });\n const totalSize = allRoots.reduce((sum, r) => sum + r.sizeBytes, 0);\n const orphanChecks = await Promise.all(\n allRoots\n .filter((r) => r.originPath)\n .map(async (r): Promise<number> => ((await fs.pathExists(r.originPath as string)) ? 0 : 1))\n );\n const orphanCount = orphanChecks.reduce((a: number, b: number) => a + b, 0);\n const maxAgeRaw = this.configStore.getConfig(CFG_CAPSULES_MAX_AGE_DAYS);\n const maxAgeDays = Math.max(0, toFiniteNumber(maxAgeRaw) ?? 30);\n const cutoff = Date.now() - maxAgeDays * 24 * 60 * 60 * 1000;\n const staleChecks = await Promise.all(\n allRoots\n .filter((r) => r.kind === 'scope-aspects-root')\n .map((r): Promise<number> => this.countStaleAspectChildren(r.path, cutoff))\n );\n const staleAspectCount = staleChecks.reduce((a: number, b: number) => a + b, 0);\n summaryLine = formatItem(\n `cache total: ${chalk.bold(formatBytes(totalSize))} across ${allRoots.length} subdir(s) — ` +\n `${orphanCount} orphan(s), ${staleAspectCount} stale aspect-version(s) (>${maxAgeDays}d)`\n );\n suggestLine = formatHint(`use --json to get the list of all capsules`);\n } else {\n suggestLine = formatHint(`use --json to get the list of all capsules, or --with-stats for size/orphan summary`);\n }\n const lines = [title, wsLine, scopeAspectLine, scopeLine, summaryLine, suggestLine].filter((x) => x).join('\\n');\n\n return lines;\n }\n\n private async countStaleAspectChildren(rootPath: string, cutoffMs: number): Promise<number> {\n try {\n const entries = await fs.readdir(rootPath, { withFileTypes: true });\n let count = 0;\n for (const entry of entries) {\n if (!entry.isDirectory() || entry.name === 'node_modules' || entry.name.startsWith('.')) continue;\n const childPath = path.join(rootPath, entry.name);\n const markerPath = path.join(childPath, CAPSULE_ORIGIN_FILE);\n try {\n const stat = await fs.stat(markerPath);\n if (stat.mtime.getTime() < cutoffMs) count += 1;\n } catch {\n const stat = await fs.stat(childPath).catch(() => undefined);\n if (stat && stat.mtime.getTime() < cutoffMs) count += 1;\n }\n }\n return count;\n } catch {\n return 0;\n }\n }\n\n async json(_args: [], opts: { withStats?: boolean } = {}) {\n if (!this.workspace && !this.scope) {\n throw new Error(`This command requires a Bit workspace or scope.\nTo initialize a workspace: bit init`);\n }\n\n const rootDirs = this.getCapsulesRootDirs();\n const listWs = rootDirs.workspaceCapsulesRootDir\n ? await this.isolator.list(rootDirs.workspaceCapsulesRootDir)\n : undefined;\n const listScope = await this.isolator.list(rootDirs.scopeAspectsCapsulesRootDir);\n const capsules = listWs ? listWs.capsules : [];\n const scopeCapsules = listScope ? listScope.capsules : [];\n // `--with-stats` is opt-in because computing it walks the full cache. Without it,\n // omit the stats fields entirely rather than returning misleading zeros.\n if (!opts.withStats) {\n return { ...rootDirs, capsules, scopeCapsules };\n }\n const allRoots = await this.isolator.listAllCapsuleRoots({ withSizes: true });\n const totalSizeBytes = allRoots.reduce((sum, r) => sum + r.sizeBytes, 0);\n return { ...rootDirs, capsules, scopeCapsules, totalSizeBytes, allRoots };\n }\n\n private getCapsulesRootDirs() {\n return getCapsulesRootDirs(this.isolator, this.scope, this.workspace);\n }\n}\n\nexport class CapsuleDeleteCmd implements Command {\n name = 'delete';\n description = `delete capsules`;\n extendedDescription = `with no args, only workspace's capsules are deleted`;\n group = 'advanced';\n alias = '';\n options = [\n ['', 'scope-aspects', 'delete scope-aspects capsules'],\n ['a', 'all', 'delete all capsules for all workspaces and scopes'],\n ] as CommandOptions;\n\n constructor(\n private isolator: IsolatorMain,\n private scope: ScopeMain,\n private workspace?: Workspace\n ) {}\n\n async report(args: [], { all, scopeAspects }: { all: boolean; scopeAspects: boolean }) {\n const capsuleBaseDirToDelete = (): string | undefined => {\n if (all) return undefined;\n if (scopeAspects) {\n const { scopeAspectsCapsulesRootDir } = getCapsulesRootDirs(this.isolator, this.scope, this.workspace);\n return scopeAspectsCapsulesRootDir;\n }\n return undefined;\n };\n const capsuleBaseDir = capsuleBaseDirToDelete();\n const deletedDir = await this.isolator.deleteCapsules(capsuleBaseDir);\n return formatSuccessSummary(`capsules dir has been deleted: ${chalk.bold(deletedDir)}`);\n }\n}\n\ntype PruneOpts = {\n olderThan?: number;\n keepWorkspaceCaps?: boolean;\n noOrphans?: boolean;\n dryRun?: boolean;\n withSizes?: boolean;\n json?: boolean;\n};\n\nexport class CapsulePruneCmd implements Command {\n name = 'prune';\n description = 'evict stale capsules from the global cache';\n extendedDescription = `workspace capsules are deleted unconditionally; aspect-version and scope capsules are deleted when their last-used marker is older than --older-than (default 30 days).\nuse --dry-run first to preview what would be removed.`;\n group = 'advanced';\n alias = '';\n options = [\n ['', 'older-than <days>', 'age threshold in days for aspect-version/scope capsule pruning (default 30)'],\n ['', 'keep-workspace-caps', 'skip workspace capsule deletion'],\n ['', 'no-orphans', \"don't delete capsules whose origin path no longer exists\"],\n ['', 'dry-run', 'preview what would be removed without deleting'],\n [\n '',\n 'with-sizes',\n 'compute byte sizes for the report (walks the full cache; slow on large caches). default: off — sizes shown as 0 but the prune itself is instant.',\n ],\n ['j', 'json', 'json format'],\n ] as CommandOptions;\n\n constructor(\n private isolator: IsolatorMain,\n private configStore: ConfigStoreMain\n ) {}\n\n async report(_args: [], opts: PruneOpts) {\n const report = await this.runPrune(opts);\n const header = report.dryRun\n ? formatTitle(`[dry-run] would remove ${report.removed.length} capsule(s)`)\n : formatSuccessSummary(`removed ${report.removed.length} capsule(s)`);\n // Only show the byte summary when sizes were actually computed; otherwise it'd say\n // \"0 B → 0 B (freed 0 B)\" which is misleading.\n const sizesComputed = report.totalSizeBeforeBytes > 0 || report.totalRemovedBytes > 0;\n const sizeLine = sizesComputed\n ? formatItem(\n `cache: ${formatBytes(report.totalSizeBeforeBytes)} → ${formatBytes(report.totalSizeAfterBytes)} ` +\n `(freed ${formatBytes(report.totalRemovedBytes)})`\n )\n : formatHint(`re-run with --with-sizes to see byte totals (walks the full cache)`);\n const items = report.removed\n .slice(0, 50)\n .map((r) =>\n formatItem(\n `${chalk.dim(`[${r.kind} · ${r.reason}]`)} ${r.path}` +\n (r.originPath ? ` ${chalk.dim(`← ${r.originPath}`)}` : '') +\n ` ${chalk.dim(`(${formatBytes(r.sizeBytes)})`)}`\n )\n );\n const truncated =\n report.removed.length > 50\n ? formatHint(`...and ${report.removed.length - 50} more (use --json to see the full list)`)\n : undefined;\n return [header, sizeLine, ...items, truncated].filter(Boolean).join('\\n');\n }\n\n async json(_args: [], opts: PruneOpts) {\n return this.runPrune(opts);\n }\n\n private async runPrune(opts: PruneOpts): Promise<PruneCapsulesReport> {\n // CLI flags win; otherwise fall back to user config so manual and auto-prune\n // behave consistently. Final fallback to defaults happens in `pruneCapsules`.\n const olderThanFromConfig = this.configStore.getConfig(CFG_CAPSULES_MAX_AGE_DAYS);\n return this.isolator.pruneCapsules({\n olderThanDays: toFiniteNumber(opts.olderThan) ?? toFiniteNumber(olderThanFromConfig),\n keepWorkspaceCaps: opts.keepWorkspaceCaps === true,\n includeOrphans: opts.noOrphans !== true,\n dryRun: opts.dryRun === true,\n withSizes: opts.withSizes === true,\n });\n }\n}\n\nexport class CapsuleCmd implements Command {\n name = 'capsule';\n description = 'manage isolated component environments';\n extendedDescription = `capsules are temporary isolated directories containing component code and dependencies.\nautomatically created during build processes to compile and test components in isolation.\nensures components work independently before publishing, similar to how they'll be consumed.`;\n alias = '';\n group = 'advanced';\n commands: Command[] = [];\n options = [['j', 'json', 'json format']] as CommandOptions;\n\n constructor(\n private isolator: IsolatorMain,\n private workspace: Workspace | undefined,\n private scope: ScopeMain,\n private configStore: ConfigStoreMain\n ) {}\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n async report(args: [string]) {\n return new CapsuleListCmd(this.isolator, this.workspace, this.scope, this.configStore).report([], {});\n }\n}\n\nfunction getCapsulesRootDirs(isolator, scope: ScopeMain, workspace) {\n const workspaceCapsulesRootDir = workspace\n ? isolator.getCapsulesRootDir({\n baseDir: workspace.getCapsulePath(),\n useHash: workspace.shouldUseHashForCapsules(),\n })\n : undefined;\n const scopeAspectsCapsulesRootDir = isolator.getCapsulesRootDir({\n baseDir: scope.getAspectCapsulePath(),\n useHash: scope.shouldUseHashForCapsules(),\n });\n const scopeCapsulesRootDir = workspace\n ? undefined\n : isolator.getCapsulesRootDir({\n baseDir: process.cwd(),\n useHash: true,\n });\n\n return { workspaceCapsulesRootDir, scopeAspectsCapsulesRootDir, scopeCapsulesRootDir };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.workspace_workspace@1.0.
|
|
2
|
-
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.workspace_workspace@1.0.
|
|
1
|
+
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.workspace_workspace@1.0.1010/dist/workspace.composition.js';
|
|
2
|
+
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.workspace_workspace@1.0.1010/dist/workspace.docs.mdx';
|
|
3
3
|
|
|
4
4
|
export const compositions = [compositions_0];
|
|
5
5
|
export const overview = [overview_0];
|
|
@@ -7,8 +7,8 @@ type UseWorkspaceOptions = {
|
|
|
7
7
|
onComponentRemoved?: (compId: ComponentID[]) => void;
|
|
8
8
|
};
|
|
9
9
|
export declare function useWorkspace(options?: UseWorkspaceOptions): {
|
|
10
|
-
errors?: ReadonlyArray<import("graphql").GraphQLFormattedError> | undefined;
|
|
11
10
|
error?: import("@apollo/client").ApolloError | undefined;
|
|
11
|
+
errors?: ReadonlyArray<import("graphql").GraphQLFormattedError> | undefined;
|
|
12
12
|
client: import("@apollo/client").ApolloClient<any>;
|
|
13
13
|
loading: boolean;
|
|
14
14
|
variables: import("@apollo/client").OperationVariables | undefined;
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@teambit/workspace",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.1010",
|
|
4
4
|
"homepage": "https://bit.cloud/teambit/workspace/workspace",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"componentId": {
|
|
7
7
|
"scope": "teambit.workspace",
|
|
8
8
|
"name": "workspace",
|
|
9
|
-
"version": "1.0.
|
|
9
|
+
"version": "1.0.1010"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"lodash": "4.17.21",
|
|
@@ -30,40 +30,20 @@
|
|
|
30
30
|
"reset-css": "5.0.1",
|
|
31
31
|
"@teambit/component-id": "1.2.4",
|
|
32
32
|
"@teambit/harmony": "0.4.7",
|
|
33
|
-
"@teambit/legacy.extension-data": "0.0.125",
|
|
34
|
-
"@teambit/legacy.scope": "0.0.123",
|
|
35
33
|
"@teambit/component-version": "1.0.4",
|
|
36
|
-
"@teambit/legacy.consumer-component": "0.0.124",
|
|
37
|
-
"@teambit/legacy.consumer": "0.0.123",
|
|
38
34
|
"@teambit/bit-error": "0.0.404",
|
|
39
35
|
"@teambit/lane-id": "0.0.312",
|
|
40
|
-
"@teambit/legacy.bit-map": "0.0.180",
|
|
41
36
|
"@teambit/toolbox.fs.last-modified": "0.0.15",
|
|
42
37
|
"@teambit/toolbox.path.path": "0.0.17",
|
|
43
38
|
"@teambit/graph.cleargraph": "0.0.11",
|
|
44
|
-
"@teambit/logger": "0.0.1426",
|
|
45
|
-
"@teambit/cli": "0.0.1333",
|
|
46
|
-
"@teambit/config-store": "0.0.214",
|
|
47
|
-
"@teambit/legacy.constants": "0.0.29",
|
|
48
39
|
"@teambit/component.ui.component-status-resolver": "0.0.510",
|
|
49
40
|
"@teambit/harmony.modules.resolved-component": "0.0.514",
|
|
50
41
|
"@teambit/legacy.utils": "0.0.38",
|
|
51
|
-
"@teambit/scope.remotes": "0.0.123",
|
|
52
|
-
"@teambit/config": "0.0.1508",
|
|
53
42
|
"@teambit/harmony.modules.requireable-component": "0.0.514",
|
|
54
43
|
"@teambit/toolbox.modules.module-resolver": "0.0.20",
|
|
55
|
-
"@teambit/workspace.modules.node-modules-linker": "0.0.354",
|
|
56
|
-
"@teambit/global-config": "0.0.1337",
|
|
57
|
-
"@teambit/legacy.consumer-config": "0.0.123",
|
|
58
|
-
"@teambit/variants": "0.0.1601",
|
|
59
44
|
"@teambit/component-issues": "0.0.172",
|
|
60
|
-
"@teambit/component.sources": "0.0.175",
|
|
61
45
|
"@teambit/dependencies.modules.packages-excluder": "1.0.8",
|
|
62
|
-
"@teambit/git.modules.git-executable": "0.0.30",
|
|
63
|
-
"@teambit/harmony.modules.in-memory-cache": "0.0.33",
|
|
64
46
|
"@teambit/legacy-bit-id": "1.1.3",
|
|
65
|
-
"@teambit/legacy.component-list": "0.0.177",
|
|
66
|
-
"@teambit/legacy.scope-api": "0.0.178",
|
|
67
47
|
"@teambit/toolbox.path.is-path-inside": "0.0.509",
|
|
68
48
|
"@teambit/workspace.modules.match-pattern": "0.0.521",
|
|
69
49
|
"@teambit/component.ui.component-drawer": "0.0.482",
|
|
@@ -81,7 +61,6 @@
|
|
|
81
61
|
"@teambit/ui-foundation.ui.menu": "0.0.503",
|
|
82
62
|
"@teambit/ui-foundation.ui.react-router.slot-router": "0.0.523",
|
|
83
63
|
"@teambit/ui-foundation.ui.tree.drawer": "1.0.0",
|
|
84
|
-
"@teambit/harmony.modules.concurrency": "0.0.30",
|
|
85
64
|
"@teambit/toolbox.promise.map-pool": "0.0.15",
|
|
86
65
|
"@teambit/base-react.themes.theme-switcher": "1.1.2",
|
|
87
66
|
"@teambit/ui-foundation.ui.hooks.use-data-query": "0.0.506",
|
|
@@ -107,23 +86,44 @@
|
|
|
107
86
|
"@teambit/cloud.hooks.use-cloud-scopes": "0.0.21",
|
|
108
87
|
"@teambit/explorer.ui.gallery.component-grid": "0.0.496",
|
|
109
88
|
"@teambit/workspace.ui.empty-workspace": "0.0.509",
|
|
110
|
-
"@teambit/component": "1.0.
|
|
111
|
-
"@teambit/dependency-resolver": "1.0.
|
|
112
|
-
"@teambit/envs": "1.0.
|
|
113
|
-
"@teambit/
|
|
114
|
-
"@teambit/scope": "
|
|
115
|
-
"@teambit/
|
|
116
|
-
"@teambit/
|
|
117
|
-
"@teambit/
|
|
118
|
-
"@teambit/
|
|
119
|
-
"@teambit/
|
|
120
|
-
"@teambit/
|
|
121
|
-
"@teambit/
|
|
122
|
-
"@teambit/
|
|
123
|
-
"@teambit/
|
|
124
|
-
"@teambit/
|
|
125
|
-
"@teambit/
|
|
126
|
-
"@teambit/
|
|
89
|
+
"@teambit/component": "1.0.1010",
|
|
90
|
+
"@teambit/dependency-resolver": "1.0.1010",
|
|
91
|
+
"@teambit/envs": "1.0.1010",
|
|
92
|
+
"@teambit/legacy.extension-data": "0.0.126",
|
|
93
|
+
"@teambit/legacy.scope": "0.0.124",
|
|
94
|
+
"@teambit/legacy.consumer-component": "0.0.125",
|
|
95
|
+
"@teambit/legacy.consumer": "0.0.124",
|
|
96
|
+
"@teambit/legacy.bit-map": "0.0.181",
|
|
97
|
+
"@teambit/logger": "0.0.1427",
|
|
98
|
+
"@teambit/objects": "0.0.517",
|
|
99
|
+
"@teambit/scope": "1.0.1010",
|
|
100
|
+
"@teambit/graph": "1.0.1010",
|
|
101
|
+
"@teambit/cli": "0.0.1334",
|
|
102
|
+
"@teambit/config-store": "0.0.215",
|
|
103
|
+
"@teambit/isolator": "1.0.1010",
|
|
104
|
+
"@teambit/legacy.constants": "0.0.30",
|
|
105
|
+
"@teambit/component-tree": "1.0.1010",
|
|
106
|
+
"@teambit/watcher": "1.0.1010",
|
|
107
|
+
"@teambit/scope.remotes": "0.0.124",
|
|
108
|
+
"@teambit/aspect-loader": "1.0.1010",
|
|
109
|
+
"@teambit/config": "0.0.1509",
|
|
110
|
+
"@teambit/workspace.modules.node-modules-linker": "0.0.355",
|
|
111
|
+
"@teambit/graphql": "1.0.1010",
|
|
112
|
+
"@teambit/bundler": "1.0.1010",
|
|
113
|
+
"@teambit/global-config": "0.0.1338",
|
|
114
|
+
"@teambit/legacy.consumer-config": "0.0.124",
|
|
115
|
+
"@teambit/ui": "1.0.1010",
|
|
116
|
+
"@teambit/variants": "0.0.1602",
|
|
117
|
+
"@teambit/component.sources": "0.0.176",
|
|
118
|
+
"@teambit/git.modules.git-executable": "0.0.31",
|
|
119
|
+
"@teambit/harmony.modules.in-memory-cache": "0.0.34",
|
|
120
|
+
"@teambit/legacy.component-list": "0.0.178",
|
|
121
|
+
"@teambit/legacy.scope-api": "0.0.179",
|
|
122
|
+
"@teambit/command-bar": "1.0.1010",
|
|
123
|
+
"@teambit/sidebar": "1.0.1010",
|
|
124
|
+
"@teambit/pubsub": "1.0.1010",
|
|
125
|
+
"@teambit/harmony.modules.concurrency": "0.0.31",
|
|
126
|
+
"@teambit/deprecation": "1.0.1010"
|
|
127
127
|
},
|
|
128
128
|
"devDependencies": {
|
|
129
129
|
"@types/lodash": "4.14.165",
|