@jujulego/jill 2.4.0-alpha.4 → 2.4.0-alpha.5

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/README.md CHANGED
@@ -29,14 +29,14 @@ This feature can be disabled using the `--no-hooks` option: `jill run --no-hooks
29
29
 
30
30
  #### Task syntax _(only supported by `jill group` command yet)_
31
31
  Allows to instruct multiple tasks with the given orchestration. The orchestration is given by the following operators:
32
- - `->` in sequence
32
+ - `&&` in sequence
33
33
  - `||` fallbacks
34
34
  - `//` in parallel
35
35
 
36
36
  ##### Examples:
37
37
  - This will run scripts **taskA**, **taskB** and **taskC** in order, one after another.
38
38
  ```shell
39
- jill group 'taskA -> taskB -> taskC'
39
+ jill group 'taskA && taskB && taskC'
40
40
  ```
41
41
 
42
42
  - This will run first **taskA**, if it fails it will run **taskB**, then **taskC** in order, until one succeed.
@@ -51,7 +51,7 @@ Allows to instruct multiple tasks with the given orchestration. The orchestratio
51
51
 
52
52
  - And you can create more complex flows: this will run **taskA** and **taskB** in parallel, and then **taskC** when both tasks are ended
53
53
  ```shell
54
- jill group '(taskA // taskB) -> taskC'
54
+ jill group '(taskA // taskB) && taskC'
55
55
  ```
56
56
 
57
57
  ## Installation
@@ -1,9 +1,9 @@
1
1
  import { Logger } from '@jujulego/logger';
2
2
  import { inject } from 'inversify';
3
3
  import symbols from 'log-symbols';
4
- import { b as LazyCurrentProject, L as LoadProject, S as ScriptsFilter, a as PrivateFilter, A as AffectedFilter, P as Pipeline, d as LazyCurrentWorkspace, c as LoadWorkspace, T as TaskExprService, W as WorkspaceTree, f as Plugin } from './workspace-tree-9cXaezk-.js';
5
- import { h as Command, E as ExitException, I as InkCommand, z as printJson, a as List } from './ink-command-SIxVoU_e.js';
6
- import { T as TaskCommand } from './jill.application-NaKSF97o.js';
4
+ import { b as LazyCurrentProject, L as LoadProject, S as ScriptsFilter, a as PrivateFilter, A as AffectedFilter, P as Pipeline, d as LazyCurrentWorkspace, c as LoadWorkspace, T as TaskExprService, W as WorkspaceTree, f as Plugin } from './workspace-tree-DEg4wm69.js';
5
+ import { h as Command, E as ExitException, I as InkCommand, z as printJson, a as List } from './ink-command-HSaTNbaX.js';
6
+ import { T as TaskCommand } from './jill.application-nR6EmV7y.js';
7
7
  import { jsx } from 'react/jsx-runtime';
8
8
  import chalk from 'chalk';
9
9
  import path from 'node:path';
@@ -627,4 +627,4 @@ CorePlugin = _ts_decorate([
627
627
  ], CorePlugin);
628
628
 
629
629
  export { CorePlugin };
630
- //# sourceMappingURL=core.plugin-CZ8_7QfH.js.map
630
+ //# sourceMappingURL=core.plugin-ED-2XO_T.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"core.plugin-CZ8_7QfH.js","sources":["../src/commands/each.ts","../src/commands/exec.ts","../src/commands/group.ts","../src/commands/list.tsx","../src/commands/run.ts","../src/commands/tree.tsx","../src/core.plugin.ts"],"sourcesContent":["import { Logger } from '@jujulego/logger';\nimport { inject } from 'inversify';\nimport symbols from 'log-symbols';\nimport { type ArgumentsCamelCase, type Argv } from 'yargs';\n\nimport { AffectedFilter } from '@/src/filters/affected.filter.ts';\nimport { Pipeline } from '@/src/filters/pipeline.ts';\nimport { PrivateFilter } from '@/src/filters/private.filter.ts';\nimport { ScriptsFilter } from '@/src/filters/scripts.filter.ts';\nimport { LazyCurrentProject, LoadProject } from '@/src/middlewares/load-project.ts';\nimport { Command } from '@/src/modules/command.ts';\nimport { TaskCommand } from '@/src/modules/task-command.tsx';\nimport { type Project } from '@/src/project/project.ts';\nimport { type WorkspaceDepsMode } from '@/src/project/workspace.ts';\nimport { ExitException } from '@/src/utils/exit.ts';\n\n// Types\nexport interface IEachCommandArgs {\n script: string;\n 'build-script': string;\n 'deps-mode': WorkspaceDepsMode;\n 'allow-no-workspaces'?: boolean;\n\n // Filters\n private?: boolean;\n\n // Affected filter\n affected: string;\n 'affected-rev-fallback': string;\n 'affected-rev-sort'?: string;\n}\n\n// Command\n@Command({\n command: 'each <script>',\n describe: 'Run script on many workspaces',\n middlewares: [\n LoadProject\n ]\n})\nexport class EachCommand extends TaskCommand<IEachCommandArgs> {\n // Lazy injections\n @LazyCurrentProject()\n readonly project: Project;\n\n // Constructor\n constructor(\n @inject(Logger)\n private readonly logger: Logger,\n ) {\n super();\n }\n\n // Methods\n builder(parser: Argv): Argv<IEachCommandArgs> {\n return this.addTaskOptions(parser)\n // Run options\n .positional('script', { type: 'string', demandOption: true })\n .option('build-script', {\n default: 'build',\n desc: 'Script to use to build dependencies'\n })\n .option('deps-mode', {\n alias: 'd',\n choice: ['all', 'prod', 'none'],\n default: 'all' as const,\n desc: 'Dependency selection mode:\\n' +\n ' - all = dependencies AND devDependencies\\n' +\n ' - prod = dependencies\\n' +\n ' - none = nothing'\n })\n .option('allow-no-workspaces', {\n type: 'boolean',\n default: false,\n desc: 'Allow no matching workspaces. By default, jill will throw when no affected workspaces are found',\n })\n\n // Filters\n .option('private', {\n type: 'boolean',\n group: 'Filters:',\n desc: 'Print only private workspaces',\n })\n .option('affected', {\n alias: 'a',\n type: 'string',\n coerce: (rev) => rev === '' ? 'master' : rev,\n group: 'Filters:',\n desc: 'Print only affected workspaces towards given git revision. If no revision is given, it will check towards master. Replaces %name by workspace name.',\n })\n .option('affected-rev-sort', {\n type: 'string',\n group: 'Filters:',\n desc: 'Sort applied to git tag / git branch command',\n })\n .option('affected-rev-fallback', {\n type: 'string',\n default: 'master',\n group: 'Filters:',\n desc: 'Fallback revision, used if no revision matching the given format is found',\n })\n\n // Config\n .strict(false)\n .parserConfiguration({\n 'unknown-options-as-args': true,\n });\n }\n\n async *prepare(args: ArgumentsCamelCase<IEachCommandArgs>) {\n // Setup pipeline\n const pipeline = new Pipeline();\n pipeline.add(new ScriptsFilter([args.script]));\n\n if (args.private !== undefined) {\n pipeline.add(new PrivateFilter(args.private));\n }\n\n if (args.affected !== undefined) {\n pipeline.add(new AffectedFilter(\n args.affected,\n args.affectedRevFallback,\n args.affectedRevSort\n ));\n }\n\n // Extract arguments\n const rest = args._.map(arg => arg.toString());\n\n if (rest[0] === 'each') {\n rest.splice(0, 1);\n }\n\n // Create script tasks\n let empty = true;\n\n for await (const wks of pipeline.filter(this.project.workspaces())) {\n const task = await wks.run(args.script, rest, {\n buildScript: args.buildScript,\n buildDeps: args.depsMode,\n });\n\n if (task) {\n yield task;\n empty = false;\n }\n }\n\n if (empty) {\n this.logger.error(`${symbols.error} No matching workspace found !`);\n\n if (args.allowNoWorkspaces === false) {\n throw new ExitException(1);\n }\n }\n }\n}\n","import { type ArgumentsCamelCase, type Argv } from 'yargs';\n\nimport { Command } from '@/src/modules/command.ts';\nimport { TaskCommand } from '@/src/modules/task-command.tsx';\nimport { LoadProject } from '@/src/middlewares/load-project.ts';\nimport { LazyCurrentWorkspace, LoadWorkspace } from '@/src/middlewares/load-workspace.ts';\nimport { type Workspace, type WorkspaceDepsMode } from '@/src/project/workspace.ts';\n\n// Types\nexport interface IExecCommandArgs {\n command: string;\n 'build-script': string;\n 'deps-mode': WorkspaceDepsMode;\n}\n\n// Command\n@Command({\n command: 'exec <command>',\n aliases: ['$0'],\n describe: 'Run command inside workspace, after all its dependencies has been built.',\n middlewares: [\n LoadProject,\n LoadWorkspace\n ]\n})\nexport class ExecCommand extends TaskCommand<IExecCommandArgs> {\n // Lazy injections\n @LazyCurrentWorkspace()\n readonly workspace: Workspace;\n\n // Methods\n builder(parser: Argv) {\n return this.addTaskOptions(parser)\n .positional('command', { type: 'string', demandOption: true })\n .option('build-script', {\n default: 'build',\n desc: 'Script to use to build dependencies'\n })\n .option('deps-mode', {\n alias: 'd',\n choice: ['all', 'prod', 'none'],\n default: 'all' as const,\n desc: 'Dependency selection mode:\\n' +\n ' - all = dependencies AND devDependencies\\n' +\n ' - prod = dependencies\\n' +\n ' - none = nothing'\n })\n\n // Documentation\n .example('jill eslint', '')\n .example('jill eslint --env-info', 'Unknown arguments are passed down to command. Here it would run eslint --env-info')\n .example('jill eslint -- -v', 'You can use -- to stop argument parsing. Here it would run eslint -v')\n\n // Config\n .strict(false)\n .parserConfiguration({\n 'unknown-options-as-args': true,\n });\n }\n\n async *prepare(args: ArgumentsCamelCase<IExecCommandArgs>) {\n // Extract arguments\n const rest = args._.map(arg => arg.toString());\n\n if (rest[0] === 'exec') {\n rest.splice(0, 1);\n }\n\n // Run script in workspace\n const task = await this.workspace.exec(args.command, rest, {\n buildScript: args.buildScript,\n buildDeps: args.depsMode,\n });\n\n yield task;\n }\n}\n","import { inject } from 'inversify';\nimport { type ArgumentsCamelCase, type Argv } from 'yargs';\n\nimport { Command } from '@/src/modules/command.ts';\nimport { TaskCommand } from '@/src/modules/task-command.tsx';\nimport { LoadProject } from '@/src/middlewares/load-project.ts';\nimport { LazyCurrentWorkspace, LoadWorkspace } from '@/src/middlewares/load-workspace.ts';\nimport { type Workspace, type WorkspaceDepsMode } from '@/src/project/workspace.ts';\nimport { TaskExprService, type TaskTree } from '@/src/tasks/task-expr.service.ts';\n\n// Types\nexport interface IGroupCommandArgs {\n script: TaskTree;\n 'build-script': string;\n 'deps-mode': WorkspaceDepsMode;\n}\n\n// Command\n@Command({\n command: 'group <script..>',\n describe: 'Run many scripts inside a workspace (experimental)',\n middlewares: [\n LoadProject,\n LoadWorkspace\n ]\n})\nexport class GroupCommand extends TaskCommand<IGroupCommandArgs> {\n // Lazy injections\n @LazyCurrentWorkspace()\n readonly workspace: Workspace;\n\n // Constructor\n constructor(\n @inject(TaskExprService)\n private readonly taskExpr: TaskExprService,\n ) {\n super();\n }\n\n // Methods\n builder(parser: Argv): Argv<IGroupCommandArgs> {\n return this.addTaskOptions(parser)\n .positional('script', {\n demandOption: true,\n desc: 'Task expression',\n coerce: (expr: string[]) => this.taskExpr.parse(expr.join(' ')),\n })\n .option('build-script', {\n default: 'build',\n desc: 'Script to use to build dependencies'\n })\n .option('deps-mode', {\n alias: 'd',\n choice: ['all', 'prod', 'none'],\n default: 'all' as const,\n desc: 'Dependency selection mode:\\n' +\n ' - all = dependencies AND devDependencies\\n' +\n ' - prod = dependencies\\n' +\n ' - none = nothing'\n });\n }\n\n async *prepare(args: ArgumentsCamelCase<IGroupCommandArgs>) {\n // Run script in workspace\n const group = await this.taskExpr.buildTask(args.script.roots[0], this.workspace, {\n buildScript: args.buildScript,\n buildDeps: args.depsMode,\n });\n\n yield group;\n }\n}\n","import { Logger } from '@jujulego/logger';\nimport chalk from 'chalk';\nimport { inject } from 'inversify';\nimport path from 'node:path';\nimport { compare, parse } from 'semver';\nimport slugify from 'slugify';\nimport { type ArgumentsCamelCase, type Argv } from 'yargs';\n\nimport { AffectedFilter } from '@/src/filters/affected.filter.ts';\nimport { Pipeline } from '@/src/filters/pipeline.ts';\nimport { PrivateFilter } from '@/src/filters/private.filter.ts';\nimport { ScriptsFilter } from '@/src/filters/scripts.filter.ts';\nimport { LazyCurrentProject, LoadProject } from '@/src/middlewares/load-project.ts';\nimport { Command } from '@/src/modules/command.ts';\nimport { InkCommand } from '@/src/modules/ink-command.tsx';\nimport { type Project } from '@/src/project/project.ts';\nimport { type Workspace } from '@/src/project/workspace.ts';\nimport List from '@/src/ui/list.tsx';\nimport { ExitException } from '@/src/utils/exit.ts';\nimport { printJson } from '@/src/utils/json.ts';\n\n// Types\nexport type Attribute = 'name' | 'version' | 'root' | 'slug';\nexport type Data = Partial<Record<Attribute, string>>;\nexport type Order = 'asc' | 'desc';\n\ntype Extractor<T> = (wks: Workspace, json: boolean) => T;\n\nexport interface ListCommandArgs {\n // Filters\n private?: boolean;\n 'with-script'?: string[];\n\n // Affected filter\n affected: string;\n 'affected-rev-fallback': string;\n 'affected-rev-sort'?: string;\n\n // Format\n attrs?: Attribute[];\n headers?: boolean;\n long?: boolean;\n json?: boolean;\n\n // Sort\n 'sort-by'?: Attribute[];\n order: Order;\n}\n\n// Constants\nconst LONG_ATTRIBUTES: Attribute[] = ['name', 'version', 'root'];\nconst JSON_ATTRIBUTES: Attribute[] = ['name', 'version', 'slug', 'root'];\nconst DEFAULT_ATTRIBUTES: Attribute[] = ['name'];\n\nconst EXTRACTORS = {\n name: wks => wks.name,\n version: (wks, json) => wks.manifest.version || (json ? undefined : chalk.grey('unset')),\n root: wks => wks.cwd,\n slug: wks => slugify.default(wks.name)\n} satisfies Record<Attribute, Extractor<string | undefined>>;\n\nconst COMPARATORS = {\n name: (a = '', b = '') => a.localeCompare(b),\n version: (a, b) => compare(parse(a) ?? '0.0.0', parse(b) ?? '0.0.0'),\n root: (a = '', b = '') => a.localeCompare(b),\n slug: (a = '', b = '') => a.localeCompare(b),\n} satisfies Record<Attribute, (a: string | undefined, b: string | undefined) => number>;\n\n// Utils\nfunction buildExtractor(attrs: Attribute[]): Extractor<Data> {\n return (wks, json: boolean) => {\n const data: Data = {};\n\n for (const attr of attrs) {\n data[attr] = EXTRACTORS[attr](wks, json);\n }\n\n return data;\n };\n}\n\n// Command\n@Command({\n command: 'list',\n aliases: ['ls'],\n describe: 'List workspace',\n middlewares: [\n LoadProject,\n ]\n})\nexport class ListCommand extends InkCommand<ListCommandArgs> {\n // Lazy injections\n @LazyCurrentProject()\n readonly project: Project;\n\n // Constructor\n constructor(\n @inject(Logger)\n private readonly logger: Logger,\n ) {\n super();\n }\n\n // Methods\n builder(parser: Argv): Argv<ListCommandArgs> {\n return parser\n // Filters\n .option('private', {\n type: 'boolean',\n group: 'Filters:',\n desc: 'Print only private workspaces',\n })\n .option('with-script', {\n type: 'array',\n string: true,\n group: 'Filters:',\n desc: 'Print only workspaces having the given script',\n })\n .option('affected', {\n alias: 'a',\n type: 'string',\n coerce: (rev) => rev === '' ? 'master' : rev,\n group: 'Filters:',\n desc: 'Print only affected workspaces towards given git revision. If no revision is given, it will check towards master. Replaces %name by workspace name.',\n })\n .option('affected-rev-sort', {\n type: 'string',\n group: 'Filters:',\n desc: 'Sort applied to git tag / git branch command',\n })\n .option('affected-rev-fallback', {\n type: 'string',\n default: 'master',\n group: 'Filters:',\n desc: 'Fallback revision, used if no revision matching the given format is found',\n })\n\n // Format\n .option('attrs', {\n type: 'array',\n choices: ['name', 'version', 'root', 'slug'] as const,\n group: 'Format:',\n desc: 'Select printed attributes'\n })\n .option('headers', {\n type: 'boolean',\n group: 'Format:',\n desc: 'Prints columns headers'\n })\n .option('long', {\n alias: 'l',\n type: 'boolean',\n group: 'Format:',\n desc: 'Prints name, version and root of all workspaces',\n })\n .option('json', {\n type: 'boolean',\n group: 'Format:',\n desc: 'Prints data as a JSON array',\n })\n\n // Sort\n .option('sort-by', {\n alias: 's',\n type: 'array',\n choices: ['name', 'version', 'root', 'slug'] as const,\n group: 'Sort:',\n desc: 'Sort output by given attribute. By default sorts by name if printed'\n })\n .option('order', {\n alias: 'o',\n type: 'string',\n choices: ['asc', 'desc'] as const,\n default: 'asc' as const,\n group: 'Sort:',\n desc: 'Sort order'\n });\n }\n\n async *render(args: ArgumentsCamelCase<ListCommandArgs>) {\n const { attrs, sortBy } = this._applyDefaults(args);\n\n // Load workspaces\n const pipeline = this._preparePipeline(args);\n const workspaces: Workspace[] = [];\n\n for await (const wks of pipeline.filter(this.project.workspaces())) {\n workspaces.push(wks);\n }\n\n // Build data\n const data = workspaces.map(wks => buildExtractor(attrs)(wks, args.json || false));\n\n if (sortBy.length > 0) {\n data.sort(this._dataComparator(sortBy, args.order));\n }\n\n // Print list\n if (args.json) {\n printJson(data);\n } else {\n for (const d of data) {\n if (d.root) {\n d.root = path.relative(process.cwd(), d.root) || '.';\n }\n }\n\n yield <List items={data} headers={args.headers ?? (attrs.length > 1)} />;\n }\n }\n\n private _applyDefaults(argv: ArgumentsCamelCase<ListCommandArgs>): { attrs: Attribute[], sortBy: Attribute[] } {\n // Compute attributes\n let attrs = argv.attrs ?? [];\n\n if (attrs.length === 0) {\n if (argv.long) {\n attrs = LONG_ATTRIBUTES;\n } else if (argv.json) {\n attrs = JSON_ATTRIBUTES;\n } else {\n attrs = argv.sortBy ?? DEFAULT_ATTRIBUTES;\n }\n }\n\n // Check sorted attributes\n let sortBy = argv.sortBy ?? [];\n\n if (attrs.length > 0 && sortBy.length > 0) {\n const miss = sortBy.filter((attr) => !attrs.includes(attr));\n\n if (miss.length > 0) {\n this.logger.error(`Cannot sort by non printed attributes. Missing ${miss.join(', ')}.`);\n throw new ExitException(1);\n }\n }\n\n if (sortBy.length === 0 && attrs.includes('name')) {\n sortBy = ['name'];\n }\n\n return { attrs, sortBy };\n }\n\n private _preparePipeline(argv: ArgumentsCamelCase<ListCommandArgs>): Pipeline {\n const pipeline = new Pipeline();\n\n if (argv.private !== undefined) {\n pipeline.add(new PrivateFilter(argv.private));\n }\n\n if (argv.withScript) {\n pipeline.add(new ScriptsFilter(argv.withScript));\n }\n\n if (argv.affected !== undefined) {\n pipeline.add(new AffectedFilter(\n argv.affected,\n argv.affectedRevFallback,\n argv.affectedRevSort\n ));\n }\n\n return pipeline;\n }\n\n private _dataComparator(sortBy: Attribute[], order: Order) {\n const factor = order === 'asc' ? 1 : -1;\n\n return (a: Data, b: Data) => {\n for (const attr of sortBy) {\n const diff = COMPARATORS[attr](a[attr], b[attr]);\n\n if (diff !== 0) {\n return factor * diff;\n }\n }\n\n return 0;\n };\n }\n}\n","import { Logger } from '@jujulego/logger';\nimport { inject } from 'inversify';\nimport { type ArgumentsCamelCase, type Argv } from 'yargs';\n\nimport { Command } from '@/src/modules/command.ts';\nimport { TaskCommand } from '@/src/modules/task-command.tsx';\nimport { LoadProject } from '@/src/middlewares/load-project.ts';\nimport { LazyCurrentWorkspace, LoadWorkspace } from '@/src/middlewares/load-workspace.ts';\nimport { type Workspace, type WorkspaceDepsMode } from '@/src/project/workspace.ts';\nimport { ExitException } from '@/src/utils/exit.ts';\n\n// Types\nexport interface IRunCommandArgs {\n script: string;\n 'build-script': string;\n 'deps-mode': WorkspaceDepsMode;\n}\n\n// Command\n@Command({\n command: 'run <script>',\n describe: 'Run script inside workspace',\n middlewares: [\n LoadProject,\n LoadWorkspace\n ]\n})\nexport class RunCommand extends TaskCommand<IRunCommandArgs> {\n // Lazy injections\n @LazyCurrentWorkspace()\n readonly workspace: Workspace;\n\n // Constructor\n constructor(\n @inject(Logger)\n private readonly logger: Logger,\n ) {\n super();\n }\n\n // Methods\n builder(parser: Argv) {\n return this.addTaskOptions(parser)\n .positional('script', { type: 'string', demandOption: true })\n .option('build-script', {\n default: 'build',\n desc: 'Script to use to build dependencies'\n })\n .option('deps-mode', {\n alias: 'd',\n choice: ['all', 'prod', 'none'],\n default: 'all' as const,\n desc: 'Dependency selection mode:\\n' +\n ' - all = dependencies AND devDependencies\\n' +\n ' - prod = dependencies\\n' +\n ' - none = nothing'\n })\n\n // Config\n .strict(false)\n .parserConfiguration({\n 'unknown-options-as-args': true,\n });\n }\n\n async *prepare(args: ArgumentsCamelCase<IRunCommandArgs>) {\n // Extract arguments\n const rest = args._.map(arg => arg.toString());\n\n if (rest[0] === 'run') {\n rest.splice(0, 1);\n }\n\n // Run script in workspace\n const task = await this.workspace.run(args.script, rest, {\n buildScript: args.buildScript,\n buildDeps: args.depsMode,\n });\n\n if (task) {\n yield task;\n } else {\n this.logger.error(`Workspace ${this.workspace.name} have no ${args.script} script`);\n throw new ExitException(1);\n }\n }\n}\n","import { Command } from '@/src/modules/command.ts';\nimport { InkCommand } from '@/src/modules/ink-command.tsx';\nimport { LoadProject } from '@/src/middlewares/load-project.ts';\nimport { LazyCurrentWorkspace, LoadWorkspace } from '@/src/middlewares/load-workspace.ts';\nimport { type Workspace } from '@/src/project/workspace.ts';\nimport WorkspaceTree from '@/src/ui/workspace-tree.tsx';\n\n// Command\n@Command({\n command: 'tree',\n describe: 'Print workspace dependency tree',\n middlewares: [\n LoadProject,\n LoadWorkspace\n ]\n})\nexport class TreeCommand extends InkCommand {\n // Lazy injections\n @LazyCurrentWorkspace()\n readonly workspace: Workspace;\n\n // Methods\n *render() {\n yield <WorkspaceTree workspace={this.workspace} />;\n }\n}\n","import { EachCommand } from '@/src/commands/each.ts';\nimport { ExecCommand } from '@/src/commands/exec.ts';\nimport { GroupCommand } from '@/src/commands/group.ts';\nimport { ListCommand } from '@/src/commands/list.tsx';\nimport { RunCommand } from '@/src/commands/run.ts';\nimport { TreeCommand } from '@/src/commands/tree.tsx';\nimport { Plugin } from '@/src/modules/plugin.ts';\n\n// Plugin\n@Plugin({\n name: 'core',\n commands: [\n EachCommand,\n ExecCommand,\n GroupCommand,\n ListCommand,\n RunCommand,\n TreeCommand,\n ]\n})\nexport class CorePlugin {}\n"],"names":["EachCommand","TaskCommand","constructor","logger","builder","parser","addTaskOptions","positional","type","demandOption","option","default","desc","alias","choice","group","coerce","rev","strict","parserConfiguration","prepare","args","pipeline","Pipeline","add","ScriptsFilter","script","private","undefined","PrivateFilter","affected","AffectedFilter","affectedRevFallback","affectedRevSort","rest","_","map","arg","toString","splice","empty","wks","filter","project","workspaces","task","run","buildScript","buildDeps","depsMode","error","symbols","allowNoWorkspaces","ExitException","LazyCurrentProject","Command","command","describe","middlewares","LoadProject","inject","Logger","ExecCommand","example","workspace","exec","LazyCurrentWorkspace","aliases","LoadWorkspace","GroupCommand","taskExpr","expr","parse","join","buildTask","roots","TaskExprService","LONG_ATTRIBUTES","JSON_ATTRIBUTES","DEFAULT_ATTRIBUTES","EXTRACTORS","name","version","json","manifest","chalk","grey","root","cwd","slug","slugify","COMPARATORS","a","b","localeCompare","compare","buildExtractor","attrs","data","attr","ListCommand","InkCommand","string","choices","render","sortBy","_applyDefaults","_preparePipeline","push","length","sort","_dataComparator","order","printJson","d","path","relative","process","_jsx","List","items","headers","argv","long","miss","includes","withScript","factor","diff","RunCommand","TreeCommand","WorkspaceTree","CorePlugin","Plugin","commands"],"mappings":"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"}
1
+ {"version":3,"file":"core.plugin-ED-2XO_T.js","sources":["../src/commands/each.ts","../src/commands/exec.ts","../src/commands/group.ts","../src/commands/list.tsx","../src/commands/run.ts","../src/commands/tree.tsx","../src/core.plugin.ts"],"sourcesContent":["import { Logger } from '@jujulego/logger';\nimport { inject } from 'inversify';\nimport symbols from 'log-symbols';\nimport { type ArgumentsCamelCase, type Argv } from 'yargs';\n\nimport { AffectedFilter } from '@/src/filters/affected.filter.ts';\nimport { Pipeline } from '@/src/filters/pipeline.ts';\nimport { PrivateFilter } from '@/src/filters/private.filter.ts';\nimport { ScriptsFilter } from '@/src/filters/scripts.filter.ts';\nimport { LazyCurrentProject, LoadProject } from '@/src/middlewares/load-project.ts';\nimport { Command } from '@/src/modules/command.ts';\nimport { TaskCommand } from '@/src/modules/task-command.tsx';\nimport { type Project } from '@/src/project/project.ts';\nimport { type WorkspaceDepsMode } from '@/src/project/workspace.ts';\nimport { ExitException } from '@/src/utils/exit.ts';\n\n// Types\nexport interface IEachCommandArgs {\n script: string;\n 'build-script': string;\n 'deps-mode': WorkspaceDepsMode;\n 'allow-no-workspaces'?: boolean;\n\n // Filters\n private?: boolean;\n\n // Affected filter\n affected: string;\n 'affected-rev-fallback': string;\n 'affected-rev-sort'?: string;\n}\n\n// Command\n@Command({\n command: 'each <script>',\n describe: 'Run script on many workspaces',\n middlewares: [\n LoadProject\n ]\n})\nexport class EachCommand extends TaskCommand<IEachCommandArgs> {\n // Lazy injections\n @LazyCurrentProject()\n readonly project: Project;\n\n // Constructor\n constructor(\n @inject(Logger)\n private readonly logger: Logger,\n ) {\n super();\n }\n\n // Methods\n builder(parser: Argv): Argv<IEachCommandArgs> {\n return this.addTaskOptions(parser)\n // Run options\n .positional('script', { type: 'string', demandOption: true })\n .option('build-script', {\n default: 'build',\n desc: 'Script to use to build dependencies'\n })\n .option('deps-mode', {\n alias: 'd',\n choice: ['all', 'prod', 'none'],\n default: 'all' as const,\n desc: 'Dependency selection mode:\\n' +\n ' - all = dependencies AND devDependencies\\n' +\n ' - prod = dependencies\\n' +\n ' - none = nothing'\n })\n .option('allow-no-workspaces', {\n type: 'boolean',\n default: false,\n desc: 'Allow no matching workspaces. By default, jill will throw when no affected workspaces are found',\n })\n\n // Filters\n .option('private', {\n type: 'boolean',\n group: 'Filters:',\n desc: 'Print only private workspaces',\n })\n .option('affected', {\n alias: 'a',\n type: 'string',\n coerce: (rev) => rev === '' ? 'master' : rev,\n group: 'Filters:',\n desc: 'Print only affected workspaces towards given git revision. If no revision is given, it will check towards master. Replaces %name by workspace name.',\n })\n .option('affected-rev-sort', {\n type: 'string',\n group: 'Filters:',\n desc: 'Sort applied to git tag / git branch command',\n })\n .option('affected-rev-fallback', {\n type: 'string',\n default: 'master',\n group: 'Filters:',\n desc: 'Fallback revision, used if no revision matching the given format is found',\n })\n\n // Config\n .strict(false)\n .parserConfiguration({\n 'unknown-options-as-args': true,\n });\n }\n\n async *prepare(args: ArgumentsCamelCase<IEachCommandArgs>) {\n // Setup pipeline\n const pipeline = new Pipeline();\n pipeline.add(new ScriptsFilter([args.script]));\n\n if (args.private !== undefined) {\n pipeline.add(new PrivateFilter(args.private));\n }\n\n if (args.affected !== undefined) {\n pipeline.add(new AffectedFilter(\n args.affected,\n args.affectedRevFallback,\n args.affectedRevSort\n ));\n }\n\n // Extract arguments\n const rest = args._.map(arg => arg.toString());\n\n if (rest[0] === 'each') {\n rest.splice(0, 1);\n }\n\n // Create script tasks\n let empty = true;\n\n for await (const wks of pipeline.filter(this.project.workspaces())) {\n const task = await wks.run(args.script, rest, {\n buildScript: args.buildScript,\n buildDeps: args.depsMode,\n });\n\n if (task) {\n yield task;\n empty = false;\n }\n }\n\n if (empty) {\n this.logger.error(`${symbols.error} No matching workspace found !`);\n\n if (args.allowNoWorkspaces === false) {\n throw new ExitException(1);\n }\n }\n }\n}\n","import { type ArgumentsCamelCase, type Argv } from 'yargs';\n\nimport { Command } from '@/src/modules/command.ts';\nimport { TaskCommand } from '@/src/modules/task-command.tsx';\nimport { LoadProject } from '@/src/middlewares/load-project.ts';\nimport { LazyCurrentWorkspace, LoadWorkspace } from '@/src/middlewares/load-workspace.ts';\nimport { type Workspace, type WorkspaceDepsMode } from '@/src/project/workspace.ts';\n\n// Types\nexport interface IExecCommandArgs {\n command: string;\n 'build-script': string;\n 'deps-mode': WorkspaceDepsMode;\n}\n\n// Command\n@Command({\n command: 'exec <command>',\n aliases: ['$0'],\n describe: 'Run command inside workspace, after all its dependencies has been built.',\n middlewares: [\n LoadProject,\n LoadWorkspace\n ]\n})\nexport class ExecCommand extends TaskCommand<IExecCommandArgs> {\n // Lazy injections\n @LazyCurrentWorkspace()\n readonly workspace: Workspace;\n\n // Methods\n builder(parser: Argv) {\n return this.addTaskOptions(parser)\n .positional('command', { type: 'string', demandOption: true })\n .option('build-script', {\n default: 'build',\n desc: 'Script to use to build dependencies'\n })\n .option('deps-mode', {\n alias: 'd',\n choice: ['all', 'prod', 'none'],\n default: 'all' as const,\n desc: 'Dependency selection mode:\\n' +\n ' - all = dependencies AND devDependencies\\n' +\n ' - prod = dependencies\\n' +\n ' - none = nothing'\n })\n\n // Documentation\n .example('jill eslint', '')\n .example('jill eslint --env-info', 'Unknown arguments are passed down to command. Here it would run eslint --env-info')\n .example('jill eslint -- -v', 'You can use -- to stop argument parsing. Here it would run eslint -v')\n\n // Config\n .strict(false)\n .parserConfiguration({\n 'unknown-options-as-args': true,\n });\n }\n\n async *prepare(args: ArgumentsCamelCase<IExecCommandArgs>) {\n // Extract arguments\n const rest = args._.map(arg => arg.toString());\n\n if (rest[0] === 'exec') {\n rest.splice(0, 1);\n }\n\n // Run script in workspace\n const task = await this.workspace.exec(args.command, rest, {\n buildScript: args.buildScript,\n buildDeps: args.depsMode,\n });\n\n yield task;\n }\n}\n","import { inject } from 'inversify';\nimport { type ArgumentsCamelCase, type Argv } from 'yargs';\n\nimport { Command } from '@/src/modules/command.ts';\nimport { TaskCommand } from '@/src/modules/task-command.tsx';\nimport { LoadProject } from '@/src/middlewares/load-project.ts';\nimport { LazyCurrentWorkspace, LoadWorkspace } from '@/src/middlewares/load-workspace.ts';\nimport { type Workspace, type WorkspaceDepsMode } from '@/src/project/workspace.ts';\nimport { TaskExprService, type TaskTree } from '@/src/tasks/task-expr.service.ts';\n\n// Types\nexport interface IGroupCommandArgs {\n script: TaskTree;\n 'build-script': string;\n 'deps-mode': WorkspaceDepsMode;\n}\n\n// Command\n@Command({\n command: 'group <script..>',\n describe: 'Run many scripts inside a workspace (experimental)',\n middlewares: [\n LoadProject,\n LoadWorkspace\n ]\n})\nexport class GroupCommand extends TaskCommand<IGroupCommandArgs> {\n // Lazy injections\n @LazyCurrentWorkspace()\n readonly workspace: Workspace;\n\n // Constructor\n constructor(\n @inject(TaskExprService)\n private readonly taskExpr: TaskExprService,\n ) {\n super();\n }\n\n // Methods\n builder(parser: Argv): Argv<IGroupCommandArgs> {\n return this.addTaskOptions(parser)\n .positional('script', {\n demandOption: true,\n desc: 'Task expression',\n coerce: (expr: string[]) => this.taskExpr.parse(expr.join(' ')),\n })\n .option('build-script', {\n default: 'build',\n desc: 'Script to use to build dependencies'\n })\n .option('deps-mode', {\n alias: 'd',\n choice: ['all', 'prod', 'none'],\n default: 'all' as const,\n desc: 'Dependency selection mode:\\n' +\n ' - all = dependencies AND devDependencies\\n' +\n ' - prod = dependencies\\n' +\n ' - none = nothing'\n });\n }\n\n async *prepare(args: ArgumentsCamelCase<IGroupCommandArgs>) {\n // Run script in workspace\n const group = await this.taskExpr.buildTask(args.script.roots[0], this.workspace, {\n buildScript: args.buildScript,\n buildDeps: args.depsMode,\n });\n\n yield group;\n }\n}\n","import { Logger } from '@jujulego/logger';\nimport chalk from 'chalk';\nimport { inject } from 'inversify';\nimport path from 'node:path';\nimport { compare, parse } from 'semver';\nimport slugify from 'slugify';\nimport { type ArgumentsCamelCase, type Argv } from 'yargs';\n\nimport { AffectedFilter } from '@/src/filters/affected.filter.ts';\nimport { Pipeline } from '@/src/filters/pipeline.ts';\nimport { PrivateFilter } from '@/src/filters/private.filter.ts';\nimport { ScriptsFilter } from '@/src/filters/scripts.filter.ts';\nimport { LazyCurrentProject, LoadProject } from '@/src/middlewares/load-project.ts';\nimport { Command } from '@/src/modules/command.ts';\nimport { InkCommand } from '@/src/modules/ink-command.tsx';\nimport { type Project } from '@/src/project/project.ts';\nimport { type Workspace } from '@/src/project/workspace.ts';\nimport List from '@/src/ui/list.tsx';\nimport { ExitException } from '@/src/utils/exit.ts';\nimport { printJson } from '@/src/utils/json.ts';\n\n// Types\nexport type Attribute = 'name' | 'version' | 'root' | 'slug';\nexport type Data = Partial<Record<Attribute, string>>;\nexport type Order = 'asc' | 'desc';\n\ntype Extractor<T> = (wks: Workspace, json: boolean) => T;\n\nexport interface ListCommandArgs {\n // Filters\n private?: boolean;\n 'with-script'?: string[];\n\n // Affected filter\n affected: string;\n 'affected-rev-fallback': string;\n 'affected-rev-sort'?: string;\n\n // Format\n attrs?: Attribute[];\n headers?: boolean;\n long?: boolean;\n json?: boolean;\n\n // Sort\n 'sort-by'?: Attribute[];\n order: Order;\n}\n\n// Constants\nconst LONG_ATTRIBUTES: Attribute[] = ['name', 'version', 'root'];\nconst JSON_ATTRIBUTES: Attribute[] = ['name', 'version', 'slug', 'root'];\nconst DEFAULT_ATTRIBUTES: Attribute[] = ['name'];\n\nconst EXTRACTORS = {\n name: wks => wks.name,\n version: (wks, json) => wks.manifest.version || (json ? undefined : chalk.grey('unset')),\n root: wks => wks.cwd,\n slug: wks => slugify.default(wks.name)\n} satisfies Record<Attribute, Extractor<string | undefined>>;\n\nconst COMPARATORS = {\n name: (a = '', b = '') => a.localeCompare(b),\n version: (a, b) => compare(parse(a) ?? '0.0.0', parse(b) ?? '0.0.0'),\n root: (a = '', b = '') => a.localeCompare(b),\n slug: (a = '', b = '') => a.localeCompare(b),\n} satisfies Record<Attribute, (a: string | undefined, b: string | undefined) => number>;\n\n// Utils\nfunction buildExtractor(attrs: Attribute[]): Extractor<Data> {\n return (wks, json: boolean) => {\n const data: Data = {};\n\n for (const attr of attrs) {\n data[attr] = EXTRACTORS[attr](wks, json);\n }\n\n return data;\n };\n}\n\n// Command\n@Command({\n command: 'list',\n aliases: ['ls'],\n describe: 'List workspace',\n middlewares: [\n LoadProject,\n ]\n})\nexport class ListCommand extends InkCommand<ListCommandArgs> {\n // Lazy injections\n @LazyCurrentProject()\n readonly project: Project;\n\n // Constructor\n constructor(\n @inject(Logger)\n private readonly logger: Logger,\n ) {\n super();\n }\n\n // Methods\n builder(parser: Argv): Argv<ListCommandArgs> {\n return parser\n // Filters\n .option('private', {\n type: 'boolean',\n group: 'Filters:',\n desc: 'Print only private workspaces',\n })\n .option('with-script', {\n type: 'array',\n string: true,\n group: 'Filters:',\n desc: 'Print only workspaces having the given script',\n })\n .option('affected', {\n alias: 'a',\n type: 'string',\n coerce: (rev) => rev === '' ? 'master' : rev,\n group: 'Filters:',\n desc: 'Print only affected workspaces towards given git revision. If no revision is given, it will check towards master. Replaces %name by workspace name.',\n })\n .option('affected-rev-sort', {\n type: 'string',\n group: 'Filters:',\n desc: 'Sort applied to git tag / git branch command',\n })\n .option('affected-rev-fallback', {\n type: 'string',\n default: 'master',\n group: 'Filters:',\n desc: 'Fallback revision, used if no revision matching the given format is found',\n })\n\n // Format\n .option('attrs', {\n type: 'array',\n choices: ['name', 'version', 'root', 'slug'] as const,\n group: 'Format:',\n desc: 'Select printed attributes'\n })\n .option('headers', {\n type: 'boolean',\n group: 'Format:',\n desc: 'Prints columns headers'\n })\n .option('long', {\n alias: 'l',\n type: 'boolean',\n group: 'Format:',\n desc: 'Prints name, version and root of all workspaces',\n })\n .option('json', {\n type: 'boolean',\n group: 'Format:',\n desc: 'Prints data as a JSON array',\n })\n\n // Sort\n .option('sort-by', {\n alias: 's',\n type: 'array',\n choices: ['name', 'version', 'root', 'slug'] as const,\n group: 'Sort:',\n desc: 'Sort output by given attribute. By default sorts by name if printed'\n })\n .option('order', {\n alias: 'o',\n type: 'string',\n choices: ['asc', 'desc'] as const,\n default: 'asc' as const,\n group: 'Sort:',\n desc: 'Sort order'\n });\n }\n\n async *render(args: ArgumentsCamelCase<ListCommandArgs>) {\n const { attrs, sortBy } = this._applyDefaults(args);\n\n // Load workspaces\n const pipeline = this._preparePipeline(args);\n const workspaces: Workspace[] = [];\n\n for await (const wks of pipeline.filter(this.project.workspaces())) {\n workspaces.push(wks);\n }\n\n // Build data\n const data = workspaces.map(wks => buildExtractor(attrs)(wks, args.json || false));\n\n if (sortBy.length > 0) {\n data.sort(this._dataComparator(sortBy, args.order));\n }\n\n // Print list\n if (args.json) {\n printJson(data);\n } else {\n for (const d of data) {\n if (d.root) {\n d.root = path.relative(process.cwd(), d.root) || '.';\n }\n }\n\n yield <List items={data} headers={args.headers ?? (attrs.length > 1)} />;\n }\n }\n\n private _applyDefaults(argv: ArgumentsCamelCase<ListCommandArgs>): { attrs: Attribute[], sortBy: Attribute[] } {\n // Compute attributes\n let attrs = argv.attrs ?? [];\n\n if (attrs.length === 0) {\n if (argv.long) {\n attrs = LONG_ATTRIBUTES;\n } else if (argv.json) {\n attrs = JSON_ATTRIBUTES;\n } else {\n attrs = argv.sortBy ?? DEFAULT_ATTRIBUTES;\n }\n }\n\n // Check sorted attributes\n let sortBy = argv.sortBy ?? [];\n\n if (attrs.length > 0 && sortBy.length > 0) {\n const miss = sortBy.filter((attr) => !attrs.includes(attr));\n\n if (miss.length > 0) {\n this.logger.error(`Cannot sort by non printed attributes. Missing ${miss.join(', ')}.`);\n throw new ExitException(1);\n }\n }\n\n if (sortBy.length === 0 && attrs.includes('name')) {\n sortBy = ['name'];\n }\n\n return { attrs, sortBy };\n }\n\n private _preparePipeline(argv: ArgumentsCamelCase<ListCommandArgs>): Pipeline {\n const pipeline = new Pipeline();\n\n if (argv.private !== undefined) {\n pipeline.add(new PrivateFilter(argv.private));\n }\n\n if (argv.withScript) {\n pipeline.add(new ScriptsFilter(argv.withScript));\n }\n\n if (argv.affected !== undefined) {\n pipeline.add(new AffectedFilter(\n argv.affected,\n argv.affectedRevFallback,\n argv.affectedRevSort\n ));\n }\n\n return pipeline;\n }\n\n private _dataComparator(sortBy: Attribute[], order: Order) {\n const factor = order === 'asc' ? 1 : -1;\n\n return (a: Data, b: Data) => {\n for (const attr of sortBy) {\n const diff = COMPARATORS[attr](a[attr], b[attr]);\n\n if (diff !== 0) {\n return factor * diff;\n }\n }\n\n return 0;\n };\n }\n}\n","import { Logger } from '@jujulego/logger';\nimport { inject } from 'inversify';\nimport { type ArgumentsCamelCase, type Argv } from 'yargs';\n\nimport { Command } from '@/src/modules/command.ts';\nimport { TaskCommand } from '@/src/modules/task-command.tsx';\nimport { LoadProject } from '@/src/middlewares/load-project.ts';\nimport { LazyCurrentWorkspace, LoadWorkspace } from '@/src/middlewares/load-workspace.ts';\nimport { type Workspace, type WorkspaceDepsMode } from '@/src/project/workspace.ts';\nimport { ExitException } from '@/src/utils/exit.ts';\n\n// Types\nexport interface IRunCommandArgs {\n script: string;\n 'build-script': string;\n 'deps-mode': WorkspaceDepsMode;\n}\n\n// Command\n@Command({\n command: 'run <script>',\n describe: 'Run script inside workspace',\n middlewares: [\n LoadProject,\n LoadWorkspace\n ]\n})\nexport class RunCommand extends TaskCommand<IRunCommandArgs> {\n // Lazy injections\n @LazyCurrentWorkspace()\n readonly workspace: Workspace;\n\n // Constructor\n constructor(\n @inject(Logger)\n private readonly logger: Logger,\n ) {\n super();\n }\n\n // Methods\n builder(parser: Argv) {\n return this.addTaskOptions(parser)\n .positional('script', { type: 'string', demandOption: true })\n .option('build-script', {\n default: 'build',\n desc: 'Script to use to build dependencies'\n })\n .option('deps-mode', {\n alias: 'd',\n choice: ['all', 'prod', 'none'],\n default: 'all' as const,\n desc: 'Dependency selection mode:\\n' +\n ' - all = dependencies AND devDependencies\\n' +\n ' - prod = dependencies\\n' +\n ' - none = nothing'\n })\n\n // Config\n .strict(false)\n .parserConfiguration({\n 'unknown-options-as-args': true,\n });\n }\n\n async *prepare(args: ArgumentsCamelCase<IRunCommandArgs>) {\n // Extract arguments\n const rest = args._.map(arg => arg.toString());\n\n if (rest[0] === 'run') {\n rest.splice(0, 1);\n }\n\n // Run script in workspace\n const task = await this.workspace.run(args.script, rest, {\n buildScript: args.buildScript,\n buildDeps: args.depsMode,\n });\n\n if (task) {\n yield task;\n } else {\n this.logger.error(`Workspace ${this.workspace.name} have no ${args.script} script`);\n throw new ExitException(1);\n }\n }\n}\n","import { Command } from '@/src/modules/command.ts';\nimport { InkCommand } from '@/src/modules/ink-command.tsx';\nimport { LoadProject } from '@/src/middlewares/load-project.ts';\nimport { LazyCurrentWorkspace, LoadWorkspace } from '@/src/middlewares/load-workspace.ts';\nimport { type Workspace } from '@/src/project/workspace.ts';\nimport WorkspaceTree from '@/src/ui/workspace-tree.tsx';\n\n// Command\n@Command({\n command: 'tree',\n describe: 'Print workspace dependency tree',\n middlewares: [\n LoadProject,\n LoadWorkspace\n ]\n})\nexport class TreeCommand extends InkCommand {\n // Lazy injections\n @LazyCurrentWorkspace()\n readonly workspace: Workspace;\n\n // Methods\n *render() {\n yield <WorkspaceTree workspace={this.workspace} />;\n }\n}\n","import { EachCommand } from '@/src/commands/each.ts';\nimport { ExecCommand } from '@/src/commands/exec.ts';\nimport { GroupCommand } from '@/src/commands/group.ts';\nimport { ListCommand } from '@/src/commands/list.tsx';\nimport { RunCommand } from '@/src/commands/run.ts';\nimport { TreeCommand } from '@/src/commands/tree.tsx';\nimport { Plugin } from '@/src/modules/plugin.ts';\n\n// Plugin\n@Plugin({\n name: 'core',\n commands: [\n EachCommand,\n ExecCommand,\n GroupCommand,\n ListCommand,\n RunCommand,\n TreeCommand,\n ]\n})\nexport class CorePlugin {}\n"],"names":["EachCommand","TaskCommand","constructor","logger","builder","parser","addTaskOptions","positional","type","demandOption","option","default","desc","alias","choice","group","coerce","rev","strict","parserConfiguration","prepare","args","pipeline","Pipeline","add","ScriptsFilter","script","private","undefined","PrivateFilter","affected","AffectedFilter","affectedRevFallback","affectedRevSort","rest","_","map","arg","toString","splice","empty","wks","filter","project","workspaces","task","run","buildScript","buildDeps","depsMode","error","symbols","allowNoWorkspaces","ExitException","LazyCurrentProject","Command","command","describe","middlewares","LoadProject","inject","Logger","ExecCommand","example","workspace","exec","LazyCurrentWorkspace","aliases","LoadWorkspace","GroupCommand","taskExpr","expr","parse","join","buildTask","roots","TaskExprService","LONG_ATTRIBUTES","JSON_ATTRIBUTES","DEFAULT_ATTRIBUTES","EXTRACTORS","name","version","json","manifest","chalk","grey","root","cwd","slug","slugify","COMPARATORS","a","b","localeCompare","compare","buildExtractor","attrs","data","attr","ListCommand","InkCommand","string","choices","render","sortBy","_applyDefaults","_preparePipeline","push","length","sort","_dataComparator","order","printJson","d","path","relative","process","_jsx","List","items","headers","argv","long","miss","includes","withScript","factor","diff","RunCommand","TreeCommand","WorkspaceTree","CorePlugin","Plugin","commands"],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
- export { d as COMMAND, e as COMMAND_MODULE, C as CONFIG, m as CURRENT, h as Command, r as CommandTask, E as ExitException, G as GroupTaskSpinner, I as InkCommand, L as Layout, a as List, M as Middleware, P as PluginLoaderService, u as ScriptTask, S as Service, v as TASK_MANAGER, T as TaskManagerSpinner, b as TaskName, c as TaskSpinner, i as applyMiddlewares, f as buildCommandModule, A as capitalize, n as container, x as dynamicImport, y as fixDefaultExport, g as getCommandOpts, k as getModule, j as getRegistry, q as isCommandCtx, t as isScriptCtx, o as lazyInject, p as lazyInjectNamed, w as linesFrom, z as printJson, l as setModule, s as setRegistry, B as splitCommandLine, D as workerCache } from './ink-command-SIxVoU_e.js';
2
- export { A as AffectedFilter, G as GitService, b as LazyCurrentProject, d as LazyCurrentWorkspace, L as LoadProject, c as LoadWorkspace, P as Pipeline, f as Plugin, e as PluginModule, a as PrivateFilter, g as Project, h as ProjectRepository, S as ScriptsFilter, T as TaskExprService, i as Workspace, W as WorkspaceTree, j as combine, s as streamLines } from './workspace-tree-9cXaezk-.js';
1
+ export { d as COMMAND, e as COMMAND_MODULE, C as CONFIG, m as CURRENT, h as Command, r as CommandTask, E as ExitException, G as GroupTaskSpinner, I as InkCommand, L as Layout, a as List, M as Middleware, P as PluginLoaderService, u as ScriptTask, S as Service, v as TASK_MANAGER, T as TaskManagerSpinner, b as TaskName, c as TaskSpinner, i as applyMiddlewares, f as buildCommandModule, A as capitalize, n as container, x as dynamicImport, y as fixDefaultExport, g as getCommandOpts, k as getModule, j as getRegistry, q as isCommandCtx, t as isScriptCtx, o as lazyInject, p as lazyInjectNamed, w as linesFrom, z as printJson, l as setModule, s as setRegistry, B as splitCommandLine, D as workerCache } from './ink-command-HSaTNbaX.js';
2
+ export { A as AffectedFilter, G as GitService, b as LazyCurrentProject, d as LazyCurrentWorkspace, L as LoadProject, c as LoadWorkspace, P as Pipeline, f as Plugin, e as PluginModule, a as PrivateFilter, g as Project, h as ProjectRepository, S as ScriptsFilter, T as TaskExprService, i as Workspace, W as WorkspaceTree, j as combine, s as streamLines } from './workspace-tree-DEg4wm69.js';
3
3
  import '@jujulego/logger';
4
4
  import 'inversify';
5
5
  import 'node:async_hooks';
@@ -686,7 +686,7 @@ class ScriptTask extends GroupTask {
686
686
  if (command === "jill") {
687
687
  this._logger.debug(`Interpreting ${line}`);
688
688
  const argv = commandArgs.map((arg)=>arg.replace(/^["'](.+)["']$/, "$1"));
689
- const { JillApplication } = await import('./jill.application-NaKSF97o.js').then(function (n) { return n.j; });
689
+ const { JillApplication } = await import('./jill.application-nR6EmV7y.js').then(function (n) { return n.j; });
690
690
  const app = container.get(JillApplication);
691
691
  const tasks = await app.tasksOf(argv, {
692
692
  project: this.project,
@@ -1174,4 +1174,4 @@ InkCommand = _ts_decorate([
1174
1174
  ], InkCommand);
1175
1175
 
1176
1176
  export { capitalize as A, splitCommandLine as B, CONFIG as C, workerCache as D, ExitException as E, ContextService as F, GroupTaskSpinner as G, applyConfigOptions as H, InkCommand as I, Layout as L, Middleware as M, PluginLoaderService as P, Service as S, TaskManagerSpinner as T, List as a, TaskName as b, TaskSpinner as c, COMMAND as d, COMMAND_MODULE as e, buildCommandModule as f, getCommandOpts as g, Command as h, applyMiddlewares as i, getRegistry as j, getModule as k, setModule as l, CURRENT as m, container as n, lazyInject as o, lazyInjectNamed as p, isCommandCtx as q, CommandTask as r, setRegistry as s, isScriptCtx as t, ScriptTask as u, TASK_MANAGER as v, linesFrom as w, dynamicImport as x, fixDefaultExport as y, printJson as z };
1177
- //# sourceMappingURL=ink-command-SIxVoU_e.js.map
1177
+ //# sourceMappingURL=ink-command-HSaTNbaX.js.map