@teambit/scripts 0.0.183 → 0.0.184

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.
@@ -1,5 +1,5 @@
1
- import { CLIMain } from '@teambit/cli';
2
- import { ComponentMain } from '@teambit/component';
1
+ import type { CLIMain } from '@teambit/cli';
2
+ import type { ComponentMain } from '@teambit/component';
3
3
  import type { EnvsMain } from '@teambit/envs';
4
4
  import type { Logger, LoggerMain } from '@teambit/logger';
5
5
  import type { Workspace } from '@teambit/workspace';
@@ -1 +1 @@
1
- {"version":3,"names":["_cli","data","require","_component","_envs","_logger","_workspace","_chalk","_interopRequireDefault","_lodash","_child_process","_scripts","_scripts2","_script","_exceptions","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ScriptsMain","constructor","workspace","envs","logger","componentAspect","config","getConfigErrorMessage","chalk","yellow","runScript","scriptName","allowedEnvs","length","components","getComponents","componentsByEnv","groupComponentsByEnv","results","envId","envComponents","entries","env","getEnvDefinitionByStringId","scripts","getScriptsFromEnv","has","ScriptNotFound","handler","get","title","green","push","result","executeScript","join","listAllScripts","foundAnyScripts","isEmpty","cyan","gray","scriptsList","list","forEach","handlerStr","white","bold","isEnvAllowed","some","allowedEnv","includes","startsWith","host","getHost","Error","grouped","groupBy","component","getOrCalculateEnv","id","filtered","getScripts","undefined","executeShellCommand","executeFunction","command","output","execSync","cwd","path","encoding","stdio","error","errorMsg","stderr","message","red","context","provider","cli","loggerMain","createLogger","ScriptsAspect","scriptsService","ScriptsService","scriptsMain","registerService","scriptCmd","ScriptCmd","register","exports","CLIAspect","WorkspaceAspect","EnvsAspect","ComponentAspect","LoggerAspect","MainRuntime","addRuntime","_default"],"sources":["scripts.main.runtime.ts"],"sourcesContent":["import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport type { Component } from '@teambit/component';\nimport { ComponentAspect, ComponentMain } from '@teambit/component';\nimport type { EnvsMain, EnvDefinition } from '@teambit/envs';\nimport { EnvsAspect } from '@teambit/envs';\nimport type { Logger, LoggerMain } from '@teambit/logger';\nimport { LoggerAspect } from '@teambit/logger';\nimport type { Workspace } from '@teambit/workspace';\nimport { WorkspaceAspect } from '@teambit/workspace';\nimport chalk from 'chalk';\nimport { groupBy } from 'lodash';\nimport { execSync } from 'child_process';\nimport { ScriptsAspect } from './scripts.aspect';\nimport { ScriptsService } from './scripts.service';\nimport { ScriptCmd } from './script.cmd';\nimport { ScriptNotFound } from './exceptions';\nimport type { Scripts } from './scripts';\nimport type { ScriptHandler, ScriptExecuteContext } from './script-definition';\n\nexport interface ScriptsConfig {\n envs?: string[];\n}\n\nexport class ScriptsMain {\n constructor(\n private workspace: Workspace,\n private envs: EnvsMain,\n private logger: Logger,\n private componentAspect: ComponentMain,\n private config: ScriptsConfig\n ) {}\n\n private getConfigErrorMessage(): string {\n return chalk.yellow(\n 'no envs configured. Add to workspace.jsonc:\\n' +\n '{\\n' +\n ' \"teambit.workspace/scripts\": {\\n' +\n ' \"envs\": [\"your-scope/your-env\"]\\n' +\n ' }\\n' +\n '}'\n );\n }\n\n /**\n * Run a script for all components\n */\n async runScript(scriptName: string): Promise<string> {\n // Filter envs based on config\n const allowedEnvs = this.config.envs || [];\n if (allowedEnvs.length === 0) {\n return this.getConfigErrorMessage();\n }\n\n const components = await this.getComponents();\n if (!components.length) {\n return chalk.yellow('no components found');\n }\n\n // Group components by environment, filtering only configured envs\n const componentsByEnv = this.groupComponentsByEnv(components, allowedEnvs);\n const results: string[] = [];\n\n for (const [envId, envComponents] of Object.entries(componentsByEnv)) {\n const env = this.envs.getEnvDefinitionByStringId(envId);\n if (!env) continue;\n\n const scripts = this.getScriptsFromEnv(env);\n if (!scripts) continue;\n\n if (!scripts.has(scriptName)) {\n throw new ScriptNotFound(scriptName, envId);\n }\n\n const handler = scripts.get(scriptName);\n if (!handler) continue;\n\n const title = chalk.green(\n `\\nRunning script \"${scriptName}\" for ${envComponents.length} component(s) with env ${envId}:`\n );\n results.push(title);\n\n const result = await this.executeScript(handler, envComponents);\n results.push(result);\n }\n\n return results.join('\\n');\n }\n\n /**\n * List all available scripts from all environments\n */\n async listAllScripts(): Promise<string> {\n // Filter envs based on config\n const allowedEnvs = this.config.envs || [];\n if (allowedEnvs.length === 0) {\n return this.getConfigErrorMessage();\n }\n\n const components = await this.getComponents();\n if (!components.length) {\n return chalk.yellow('no components found');\n }\n\n // Group components by environment, filtering only configured envs\n const componentsByEnv = this.groupComponentsByEnv(components, allowedEnvs);\n const results: string[] = [];\n let foundAnyScripts = false;\n\n for (const [envId, envComponents] of Object.entries(componentsByEnv)) {\n const env = this.envs.getEnvDefinitionByStringId(envId);\n if (!env) continue;\n\n const scripts = this.getScriptsFromEnv(env);\n if (!scripts || scripts.isEmpty()) {\n continue;\n }\n\n if (!foundAnyScripts) {\n results.push(chalk.green('Available scripts:\\n'));\n foundAnyScripts = true;\n }\n\n results.push(chalk.cyan(`\\nEnvironment: ${envId}`));\n results.push(chalk.gray(` (used by ${envComponents.length} component(s))`));\n\n const scriptsList = scripts.list();\n scriptsList.forEach((scriptName) => {\n const handler = scripts.get(scriptName);\n const handlerStr = typeof handler === 'function' ? chalk.gray('[function]') : chalk.white(handler as string);\n results.push(` ${chalk.bold(scriptName)}: ${handlerStr}`);\n });\n }\n\n if (!foundAnyScripts) {\n return chalk.yellow('no scripts defined in the configured environments');\n }\n\n return results.join('\\n');\n }\n\n /**\n * Check if an env is allowed to run scripts based on config\n * Supports exact match with or without version\n */\n private isEnvAllowed(envId: string, allowedEnvs: string[]): boolean {\n return allowedEnvs.some((allowedEnv) => {\n // Exact match (with version): \"my-scope/my-env@1.0.0\" === \"my-scope/my-env@1.0.0\"\n if (envId === allowedEnv) return true;\n\n // If config has no version, match env without version part\n // Config: \"my-scope/my-env\" should match \"my-scope/my-env@1.0.0\"\n if (!allowedEnv.includes('@') && envId.startsWith(allowedEnv + '@')) {\n return true;\n }\n\n return false;\n });\n }\n\n private async getComponents(): Promise<Component[]> {\n const host = this.componentAspect.getHost();\n if (!host) throw new Error('workspace not found');\n return host.list();\n }\n\n private groupComponentsByEnv(components: Component[], allowedEnvs?: string[]): Record<string, Component[]> {\n const grouped = groupBy(components, (component) => {\n const env = this.envs.getOrCalculateEnv(component);\n return env.id;\n });\n\n // If allowedEnvs is provided, filter out envs not in the list\n if (allowedEnvs && allowedEnvs.length > 0) {\n const filtered: Record<string, Component[]> = {};\n for (const [envId, envComponents] of Object.entries(grouped)) {\n if (this.isEnvAllowed(envId, allowedEnvs)) {\n filtered[envId] = envComponents;\n }\n }\n return filtered;\n }\n\n return grouped;\n }\n\n private getScriptsFromEnv(env: EnvDefinition): Scripts | undefined {\n if (!env.env.getScripts) return undefined;\n return env.env.getScripts();\n }\n\n private async executeScript(handler: ScriptHandler, components: Component[]): Promise<string> {\n if (typeof handler === 'string') {\n // Execute shell command\n return this.executeShellCommand(handler);\n }\n\n // Execute function\n return this.executeFunction(handler, components);\n }\n\n private executeShellCommand(command: string): string {\n try {\n const output = execSync(command, {\n cwd: this.workspace.path,\n encoding: 'utf-8',\n stdio: 'pipe',\n });\n return chalk.white(output);\n } catch (error: any) {\n const errorMsg = error.stderr || error.message || 'unknown error';\n return chalk.red(`Error executing script: ${errorMsg}`);\n }\n }\n\n private async executeFunction(\n handler: (context?: ScriptExecuteContext) => void | Promise<void>,\n components: Component[]\n ): Promise<string> {\n try {\n const context: ScriptExecuteContext = { components };\n await handler(context);\n return chalk.green('✓ Script function executed successfully');\n } catch (error: any) {\n return chalk.red(`Error executing script function: ${error.message}`);\n }\n }\n\n static slots = [];\n\n static dependencies = [CLIAspect, WorkspaceAspect, EnvsAspect, ComponentAspect, LoggerAspect];\n\n static runtime = MainRuntime;\n\n static async provider(\n [cli, workspace, envs, componentAspect, loggerMain]: [CLIMain, Workspace, EnvsMain, ComponentMain, LoggerMain],\n config: ScriptsConfig\n ) {\n const logger = loggerMain.createLogger(ScriptsAspect.id);\n const scriptsService = new ScriptsService();\n const scriptsMain = new ScriptsMain(workspace, envs, logger, componentAspect, config);\n\n // Register service with envs\n envs.registerService(scriptsService);\n\n // Register CLI command\n const scriptCmd = new ScriptCmd(scriptsMain);\n cli.register(scriptCmd);\n\n return scriptsMain;\n }\n}\n\nScriptsAspect.addRuntime(ScriptsMain);\n\nexport default ScriptsMain;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_cli","data","require","_component","_envs","_logger","_workspace","_chalk","_interopRequireDefault","_lodash","_child_process","_scripts","_scripts2","_script","_exceptions","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ScriptsMain","constructor","workspace","envs","logger","componentAspect","config","getConfigErrorMessage","chalk","yellow","runScript","scriptName","allowedEnvs","length","components","getComponents","componentsByEnv","groupComponentsByEnv","results","envId","envComponents","entries","env","getEnvDefinitionByStringId","scripts","getScriptsFromEnv","has","ScriptNotFound","handler","get","title","green","push","result","executeScript","join","listAllScripts","foundAnyScripts","isEmpty","cyan","gray","scriptsList","list","forEach","handlerStr","white","bold","isEnvAllowed","some","allowedEnv","includes","startsWith","host","getHost","Error","grouped","groupBy","component","getOrCalculateEnv","id","filtered","getScripts","undefined","executeShellCommand","executeFunction","command","output","execSync","cwd","path","encoding","stdio","error","errorMsg","stderr","message","red","context","provider","cli","loggerMain","createLogger","ScriptsAspect","scriptsService","ScriptsService","scriptsMain","registerService","scriptCmd","ScriptCmd","register","exports","CLIAspect","WorkspaceAspect","EnvsAspect","ComponentAspect","LoggerAspect","MainRuntime","addRuntime","_default"],"sources":["scripts.main.runtime.ts"],"sourcesContent":["import type { CLIMain } from '@teambit/cli';\nimport { CLIAspect, MainRuntime } from '@teambit/cli';\nimport type { Component, ComponentMain } from '@teambit/component';\nimport { ComponentAspect } from '@teambit/component';\nimport type { EnvsMain, EnvDefinition } from '@teambit/envs';\nimport { EnvsAspect } from '@teambit/envs';\nimport type { Logger, LoggerMain } from '@teambit/logger';\nimport { LoggerAspect } from '@teambit/logger';\nimport type { Workspace } from '@teambit/workspace';\nimport { WorkspaceAspect } from '@teambit/workspace';\nimport chalk from 'chalk';\nimport { groupBy } from 'lodash';\nimport { execSync } from 'child_process';\nimport { ScriptsAspect } from './scripts.aspect';\nimport { ScriptsService } from './scripts.service';\nimport { ScriptCmd } from './script.cmd';\nimport { ScriptNotFound } from './exceptions';\nimport type { Scripts } from './scripts';\nimport type { ScriptHandler, ScriptExecuteContext } from './script-definition';\n\nexport interface ScriptsConfig {\n envs?: string[];\n}\n\nexport class ScriptsMain {\n constructor(\n private workspace: Workspace,\n private envs: EnvsMain,\n private logger: Logger,\n private componentAspect: ComponentMain,\n private config: ScriptsConfig\n ) {}\n\n private getConfigErrorMessage(): string {\n return chalk.yellow(\n 'no envs configured. Add to workspace.jsonc:\\n' +\n '{\\n' +\n ' \"teambit.workspace/scripts\": {\\n' +\n ' \"envs\": [\"your-scope/your-env\"]\\n' +\n ' }\\n' +\n '}'\n );\n }\n\n /**\n * Run a script for all components\n */\n async runScript(scriptName: string): Promise<string> {\n // Filter envs based on config\n const allowedEnvs = this.config.envs || [];\n if (allowedEnvs.length === 0) {\n return this.getConfigErrorMessage();\n }\n\n const components = await this.getComponents();\n if (!components.length) {\n return chalk.yellow('no components found');\n }\n\n // Group components by environment, filtering only configured envs\n const componentsByEnv = this.groupComponentsByEnv(components, allowedEnvs);\n const results: string[] = [];\n\n for (const [envId, envComponents] of Object.entries(componentsByEnv)) {\n const env = this.envs.getEnvDefinitionByStringId(envId);\n if (!env) continue;\n\n const scripts = this.getScriptsFromEnv(env);\n if (!scripts) continue;\n\n if (!scripts.has(scriptName)) {\n throw new ScriptNotFound(scriptName, envId);\n }\n\n const handler = scripts.get(scriptName);\n if (!handler) continue;\n\n const title = chalk.green(\n `\\nRunning script \"${scriptName}\" for ${envComponents.length} component(s) with env ${envId}:`\n );\n results.push(title);\n\n const result = await this.executeScript(handler, envComponents);\n results.push(result);\n }\n\n return results.join('\\n');\n }\n\n /**\n * List all available scripts from all environments\n */\n async listAllScripts(): Promise<string> {\n // Filter envs based on config\n const allowedEnvs = this.config.envs || [];\n if (allowedEnvs.length === 0) {\n return this.getConfigErrorMessage();\n }\n\n const components = await this.getComponents();\n if (!components.length) {\n return chalk.yellow('no components found');\n }\n\n // Group components by environment, filtering only configured envs\n const componentsByEnv = this.groupComponentsByEnv(components, allowedEnvs);\n const results: string[] = [];\n let foundAnyScripts = false;\n\n for (const [envId, envComponents] of Object.entries(componentsByEnv)) {\n const env = this.envs.getEnvDefinitionByStringId(envId);\n if (!env) continue;\n\n const scripts = this.getScriptsFromEnv(env);\n if (!scripts || scripts.isEmpty()) {\n continue;\n }\n\n if (!foundAnyScripts) {\n results.push(chalk.green('Available scripts:\\n'));\n foundAnyScripts = true;\n }\n\n results.push(chalk.cyan(`\\nEnvironment: ${envId}`));\n results.push(chalk.gray(` (used by ${envComponents.length} component(s))`));\n\n const scriptsList = scripts.list();\n scriptsList.forEach((scriptName) => {\n const handler = scripts.get(scriptName);\n const handlerStr = typeof handler === 'function' ? chalk.gray('[function]') : chalk.white(handler as string);\n results.push(` ${chalk.bold(scriptName)}: ${handlerStr}`);\n });\n }\n\n if (!foundAnyScripts) {\n return chalk.yellow('no scripts defined in the configured environments');\n }\n\n return results.join('\\n');\n }\n\n /**\n * Check if an env is allowed to run scripts based on config\n * Supports exact match with or without version\n */\n private isEnvAllowed(envId: string, allowedEnvs: string[]): boolean {\n return allowedEnvs.some((allowedEnv) => {\n // Exact match (with version): \"my-scope/my-env@1.0.0\" === \"my-scope/my-env@1.0.0\"\n if (envId === allowedEnv) return true;\n\n // If config has no version, match env without version part\n // Config: \"my-scope/my-env\" should match \"my-scope/my-env@1.0.0\"\n if (!allowedEnv.includes('@') && envId.startsWith(allowedEnv + '@')) {\n return true;\n }\n\n return false;\n });\n }\n\n private async getComponents(): Promise<Component[]> {\n const host = this.componentAspect.getHost();\n if (!host) throw new Error('workspace not found');\n return host.list();\n }\n\n private groupComponentsByEnv(components: Component[], allowedEnvs?: string[]): Record<string, Component[]> {\n const grouped = groupBy(components, (component) => {\n const env = this.envs.getOrCalculateEnv(component);\n return env.id;\n });\n\n // If allowedEnvs is provided, filter out envs not in the list\n if (allowedEnvs && allowedEnvs.length > 0) {\n const filtered: Record<string, Component[]> = {};\n for (const [envId, envComponents] of Object.entries(grouped)) {\n if (this.isEnvAllowed(envId, allowedEnvs)) {\n filtered[envId] = envComponents;\n }\n }\n return filtered;\n }\n\n return grouped;\n }\n\n private getScriptsFromEnv(env: EnvDefinition): Scripts | undefined {\n if (!env.env.getScripts) return undefined;\n return env.env.getScripts();\n }\n\n private async executeScript(handler: ScriptHandler, components: Component[]): Promise<string> {\n if (typeof handler === 'string') {\n // Execute shell command\n return this.executeShellCommand(handler);\n }\n\n // Execute function\n return this.executeFunction(handler, components);\n }\n\n private executeShellCommand(command: string): string {\n try {\n const output = execSync(command, {\n cwd: this.workspace.path,\n encoding: 'utf-8',\n stdio: 'pipe',\n });\n return chalk.white(output);\n } catch (error: any) {\n const errorMsg = error.stderr || error.message || 'unknown error';\n return chalk.red(`Error executing script: ${errorMsg}`);\n }\n }\n\n private async executeFunction(\n handler: (context?: ScriptExecuteContext) => void | Promise<void>,\n components: Component[]\n ): Promise<string> {\n try {\n const context: ScriptExecuteContext = { components };\n await handler(context);\n return chalk.green('✓ Script function executed successfully');\n } catch (error: any) {\n return chalk.red(`Error executing script function: ${error.message}`);\n }\n }\n\n static slots = [];\n\n static dependencies = [CLIAspect, WorkspaceAspect, EnvsAspect, ComponentAspect, LoggerAspect];\n\n static runtime = MainRuntime;\n\n static async provider(\n [cli, workspace, envs, componentAspect, loggerMain]: [CLIMain, Workspace, EnvsMain, ComponentMain, LoggerMain],\n config: ScriptsConfig\n ) {\n const logger = loggerMain.createLogger(ScriptsAspect.id);\n const scriptsService = new ScriptsService();\n const scriptsMain = new ScriptsMain(workspace, envs, logger, componentAspect, config);\n\n // Register service with envs\n envs.registerService(scriptsService);\n\n // Register CLI command\n const scriptCmd = new ScriptCmd(scriptsMain);\n cli.register(scriptCmd);\n\n return scriptsMain;\n }\n}\n\nScriptsAspect.addRuntime(ScriptsMain);\n\nexport default ScriptsMain;\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/scripts",
3
- "version": "0.0.183",
3
+ "version": "0.0.184",
4
4
  "homepage": "https://bit.cloud/teambit/workspace/scripts",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.workspace",
8
8
  "name": "scripts",
9
- "version": "0.0.183"
9
+ "version": "0.0.184"
10
10
  },
11
11
  "dependencies": {
12
12
  "chalk": "4.1.2",
@@ -15,11 +15,11 @@
15
15
  "@babel/runtime": "7.20.0",
16
16
  "@teambit/harmony": "0.4.7",
17
17
  "@teambit/bit-error": "0.0.404",
18
- "@teambit/component": "1.0.964",
19
- "@teambit/cli": "0.0.1319",
20
- "@teambit/envs": "1.0.964",
21
- "@teambit/logger": "0.0.1412",
22
- "@teambit/workspace": "1.0.964"
18
+ "@teambit/component": "1.0.965",
19
+ "@teambit/cli": "0.0.1320",
20
+ "@teambit/envs": "1.0.965",
21
+ "@teambit/logger": "0.0.1413",
22
+ "@teambit/workspace": "1.0.965"
23
23
  },
24
24
  "devDependencies": {
25
25
  "@types/lodash": "4.14.165",
@@ -1,6 +1,7 @@
1
- import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';
2
- import type { Component } from '@teambit/component';
3
- import { ComponentAspect, ComponentMain } from '@teambit/component';
1
+ import type { CLIMain } from '@teambit/cli';
2
+ import { CLIAspect, MainRuntime } from '@teambit/cli';
3
+ import type { Component, ComponentMain } from '@teambit/component';
4
+ import { ComponentAspect } from '@teambit/component';
4
5
  import type { EnvsMain, EnvDefinition } from '@teambit/envs';
5
6
  import { EnvsAspect } from '@teambit/envs';
6
7
  import type { Logger, LoggerMain } from '@teambit/logger';