@jujulego/jill 2.1.0-alpha.6 → 2.2.0-alpha.1

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.
Files changed (57) hide show
  1. package/dist/205.js +2 -0
  2. package/dist/205.js.map +1 -0
  3. package/dist/434.js +9 -0
  4. package/dist/{801.js.LICENSE.txt → 434.js.LICENSE.txt} +0 -0
  5. package/dist/434.js.map +1 -0
  6. package/dist/{services/ajv.config.d.ts → ajv.config.d.ts} +0 -0
  7. package/dist/bases/command.d.ts +17 -0
  8. package/dist/bases/ink-command.d.ts +11 -0
  9. package/dist/bases/middleware.d.ts +8 -0
  10. package/dist/commands/each.d.ts +22 -14
  11. package/dist/commands/group.d.ts +18 -8
  12. package/dist/commands/list.d.ts +20 -21
  13. package/dist/commands/run.d.ts +19 -6
  14. package/dist/commands/tree.d.ts +7 -3
  15. package/dist/commons/git.service.d.ts +61 -0
  16. package/dist/{services → commons}/logger.service.d.ts +0 -0
  17. package/dist/{services → commons}/spinner.service.d.ts +0 -0
  18. package/dist/config/config-loader.d.ts +4 -0
  19. package/dist/config/config-options.d.ts +5 -0
  20. package/dist/config/types.d.ts +7 -0
  21. package/dist/config/utils.d.ts +5 -0
  22. package/dist/filters/affected.filter.d.ts +1 -0
  23. package/dist/index.d.ts +15 -13
  24. package/dist/index.js +1 -1
  25. package/dist/index.js.map +1 -1
  26. package/dist/ink.config.d.ts +3 -0
  27. package/dist/inversify.config.d.ts +8 -0
  28. package/dist/main.d.ts +5 -1
  29. package/dist/main.js +1 -1
  30. package/dist/main.js.map +1 -1
  31. package/dist/middlewares/load-project.d.ts +17 -4
  32. package/dist/middlewares/load-workspace.d.ts +16 -3
  33. package/dist/{services/plugins → plugins}/plugin-loader.service.d.ts +3 -3
  34. package/dist/{services/plugins → plugins}/types.d.ts +1 -1
  35. package/dist/{services/plugins → plugins}/utils.d.ts +0 -0
  36. package/dist/project/constants.d.ts +1 -0
  37. package/dist/project/project.d.ts +1 -0
  38. package/dist/project/workspace.d.ts +2 -0
  39. package/dist/{services → tasks}/task-expr.service.d.ts +3 -0
  40. package/dist/{services → tasks}/task-manager.config.d.ts +0 -0
  41. package/dist/tsconfig.build.tsbuildinfo +1 -1
  42. package/dist/types.d.ts +4 -0
  43. package/package.json +6 -6
  44. package/dist/784.js +0 -2
  45. package/dist/784.js.map +0 -1
  46. package/dist/801.js +0 -9
  47. package/dist/801.js.map +0 -1
  48. package/dist/commands/index.d.ts +0 -40
  49. package/dist/git.d.ts +0 -16
  50. package/dist/middlewares/config-options.d.ts +0 -5
  51. package/dist/middlewares/setup-ink.d.ts +0 -1
  52. package/dist/services/config/explorer.d.ts +0 -4
  53. package/dist/services/config/loader.d.ts +0 -4
  54. package/dist/services/config/types.d.ts +0 -5
  55. package/dist/services/config/validator.d.ts +0 -4
  56. package/dist/services/inversify.config.d.ts +0 -11
  57. package/dist/utils/yargs.d.ts +0 -9
@@ -0,0 +1,17 @@
1
+ import { interfaces as int } from 'inversify';
2
+ import { type ArgumentsCamelCase, type Argv, type CommandModule } from 'yargs';
3
+ import { type Awaitable, type Type } from '@/src/types';
4
+ import { type IMiddleware } from './middleware';
5
+ export declare const COMMAND: int.ServiceIdentifier<CommandModule>;
6
+ export interface ICommand<A = unknown> {
7
+ builder?: (parser: Argv) => Awaitable<Argv<A>>;
8
+ handler(args: ArgumentsCamelCase<A>): Awaitable<void>;
9
+ }
10
+ export interface ICommandOpts {
11
+ readonly command: string;
12
+ readonly aliases?: string | readonly string[];
13
+ readonly describe?: string;
14
+ readonly deprecated?: boolean;
15
+ readonly middlewares?: Type<IMiddleware>[];
16
+ }
17
+ export declare function Command(opts: ICommandOpts): (target: Type<ICommand>) => void;
@@ -0,0 +1,11 @@
1
+ import ink from 'ink';
2
+ import { type ReactNode } from 'react';
3
+ import { type ArgumentsCamelCase, type Argv } from 'yargs';
4
+ import { type Awaitable, type AwaitableGenerator } from '@/src/types';
5
+ import { type ICommand } from './command';
6
+ export declare abstract class InkCommand<A = unknown> implements ICommand<A> {
7
+ readonly app: ink.Instance;
8
+ abstract render(args: ArgumentsCamelCase<A>): AwaitableGenerator<ReactNode>;
9
+ builder(parser: Argv): Awaitable<Argv<A>>;
10
+ handler(args: ArgumentsCamelCase<A>): Promise<void>;
11
+ }
@@ -0,0 +1,8 @@
1
+ import { type ArgumentsCamelCase, type Argv } from 'yargs';
2
+ import { type Awaitable, Type } from '@/src/types';
3
+ export interface IMiddleware<A = unknown> {
4
+ builder?: (parser: Argv) => Argv<A>;
5
+ handler(args: ArgumentsCamelCase<A>): Awaitable<void>;
6
+ }
7
+ export declare function Middleware(): (target: Type<IMiddleware>) => void;
8
+ export declare function applyMiddlewares(parser: Argv, middlewares: Type<IMiddleware>[]): Argv;
@@ -1,15 +1,23 @@
1
- /// <reference types="yargs" />
2
- declare const _default: import("yargs").CommandModule<unknown, {
1
+ /// <reference types="react" />
2
+ import { TaskManager } from '@jujulego/tasks';
3
+ import { type ArgumentsCamelCase, type Argv } from 'yargs';
4
+ import { InkCommand } from '@/src/bases/ink-command';
5
+ import { SpinnerService } from '@/src/commons/spinner.service';
6
+ import { Project } from '@/src/project/project';
7
+ import { type WorkspaceDepsMode } from '@/src/project/workspace';
8
+ export interface IEachCommandArgs {
3
9
  script: string;
4
- } & {
5
- "deps-mode": "all";
6
- } & {
7
- private: boolean | undefined;
8
- } & {
9
- affected: string | undefined;
10
- } & {
11
- "affected-rev-sort": string | undefined;
12
- } & {
13
- "affected-rev-fallback": string;
14
- }>;
15
- export default _default;
10
+ 'deps-mode': WorkspaceDepsMode;
11
+ private?: boolean;
12
+ affected: string;
13
+ 'affected-rev-fallback': string;
14
+ 'affected-rev-sort'?: string;
15
+ }
16
+ export declare class EachCommand extends InkCommand<IEachCommandArgs> {
17
+ private readonly spinner;
18
+ private readonly manager;
19
+ readonly project: Project;
20
+ constructor(spinner: SpinnerService, manager: TaskManager);
21
+ builder(parser: Argv): Argv<IEachCommandArgs>;
22
+ render(args: ArgumentsCamelCase<IEachCommandArgs>): AsyncGenerator<JSX.Element, undefined, unknown>;
23
+ }
@@ -1,8 +1,18 @@
1
- import yargs from 'yargs';
2
- import { WorkspaceDepsMode } from '@/src/project/workspace';
3
- declare const _default: yargs.CommandModule<unknown, {
4
- script: import("@/src/services/task-expr.service").TaskNode | import("@/src/services/task-expr.service").GroupNode;
5
- } & {
6
- "deps-mode": WorkspaceDepsMode;
7
- }>;
8
- export default _default;
1
+ /// <reference types="react" />
2
+ import { TaskManager } from '@jujulego/tasks';
3
+ import { type ArgumentsCamelCase, type Argv } from 'yargs';
4
+ import { InkCommand } from '@/src/bases/ink-command';
5
+ import { Workspace, type WorkspaceDepsMode } from '@/src/project/workspace';
6
+ import { TaskExprService, type TaskTree } from '@/src/tasks/task-expr.service';
7
+ export interface IGroupCommandArgs {
8
+ script: TaskTree;
9
+ 'deps-mode': WorkspaceDepsMode;
10
+ }
11
+ export declare class GroupCommand extends InkCommand<IGroupCommandArgs> {
12
+ private readonly taskExpr;
13
+ private readonly manager;
14
+ readonly workspace: Workspace;
15
+ constructor(taskExpr: TaskExprService, manager: TaskManager);
16
+ builder(parser: Argv): Argv<IGroupCommandArgs>;
17
+ render(args: ArgumentsCamelCase<IGroupCommandArgs>): AsyncGenerator<JSX.Element, undefined, unknown>;
18
+ }
@@ -1,23 +1,22 @@
1
- /// <reference types="yargs" />
1
+ /// <reference types="react" />
2
+ import { ArgumentsCamelCase, type Argv } from 'yargs';
3
+ import { InkCommand } from '@/src/bases/ink-command';
4
+ import { Project } from '@/src/project/project';
2
5
  export type Attribute = 'name' | 'version' | 'root' | 'slug';
3
6
  export type Data = Partial<Record<Attribute, string>>;
4
- declare const _default: import("yargs").CommandModule<unknown, {
5
- private: boolean | undefined;
6
- } & {
7
- "with-script": string[] | undefined;
8
- } & {
9
- affected: string | undefined;
10
- } & {
11
- "affected-rev-sort": string | undefined;
12
- } & {
13
- "affected-rev-fallback": string;
14
- } & {
15
- attrs: never[] | ("version" | "name" | "root" | "slug")[];
16
- } & {
17
- headers: boolean | undefined;
18
- } & {
19
- long: boolean | undefined;
20
- } & {
21
- json: boolean | undefined;
22
- }>;
23
- export default _default;
7
+ export interface IListCommandArgs {
8
+ private?: boolean;
9
+ 'with-script'?: string[];
10
+ affected: string;
11
+ 'affected-rev-fallback': string;
12
+ 'affected-rev-sort'?: string;
13
+ attrs: Attribute[];
14
+ headers?: boolean;
15
+ long?: boolean;
16
+ json?: boolean;
17
+ }
18
+ export declare class ListCommand extends InkCommand<IListCommandArgs> {
19
+ readonly project: Project;
20
+ builder(parser: Argv): Argv<IListCommandArgs>;
21
+ render(args: ArgumentsCamelCase<IListCommandArgs>): AsyncGenerator<JSX.Element, void, unknown>;
22
+ }
@@ -1,7 +1,20 @@
1
- /// <reference types="yargs" />
2
- declare const _default: import("yargs").CommandModule<unknown, {
1
+ /// <reference types="react" />
2
+ import { TaskManager } from '@jujulego/tasks';
3
+ import { type ArgumentsCamelCase, type Argv } from 'yargs';
4
+ import { InkCommand } from '@/src/bases/ink-command';
5
+ import { Workspace, type WorkspaceDepsMode } from '@/src/project/workspace';
6
+ export interface IRunCommandArgs {
3
7
  script: string;
4
- } & {
5
- "deps-mode": "all";
6
- }>;
7
- export default _default;
8
+ 'deps-mode': WorkspaceDepsMode;
9
+ }
10
+ export declare class RunCommand extends InkCommand<IRunCommandArgs> {
11
+ private readonly manager;
12
+ readonly workspace: Workspace;
13
+ constructor(manager: TaskManager);
14
+ builder(parser: Argv): Argv<{
15
+ script: string;
16
+ } & {
17
+ "deps-mode": "all";
18
+ }>;
19
+ render(args: ArgumentsCamelCase<IRunCommandArgs>): AsyncGenerator<JSX.Element, undefined, unknown>;
20
+ }
@@ -1,3 +1,7 @@
1
- /// <reference types="yargs" />
2
- declare const _default: import("yargs").CommandModule<unknown, unknown>;
3
- export default _default;
1
+ /// <reference types="react" />
2
+ import { InkCommand } from '@/src/bases/ink-command';
3
+ import { Workspace } from '@/src/project/workspace';
4
+ export declare class TreeCommand extends InkCommand {
5
+ readonly workspace: Workspace;
6
+ render(): Generator<JSX.Element, void, unknown>;
7
+ }
@@ -0,0 +1,61 @@
1
+ import { SpawnTask, SpawnTaskOptions, TaskContext, TaskManager } from '@jujulego/tasks';
2
+ import { Logger } from '@/src/commons/logger.service';
3
+ export interface GitContext extends TaskContext {
4
+ command: string;
5
+ }
6
+ export declare class GitService {
7
+ private readonly manager;
8
+ private readonly logger;
9
+ constructor(manager: TaskManager, logger: Logger);
10
+ /**
11
+ * Runs a git command inside a SpawnTask
12
+ *
13
+ * @param cmd
14
+ * @param args
15
+ * @param options
16
+ */
17
+ command(cmd: string, args: string[], options?: SpawnTaskOptions): SpawnTask<GitContext>;
18
+ /**
19
+ * Runs git branch
20
+ *
21
+ * @param args
22
+ * @param options
23
+ */
24
+ branch(args: string[], options?: SpawnTaskOptions): SpawnTask<GitContext>;
25
+ /**
26
+ * Runs git diff
27
+ *
28
+ * @param args
29
+ * @param options
30
+ */
31
+ diff(args: string[], options?: SpawnTaskOptions): SpawnTask<GitContext>;
32
+ /**
33
+ * Runs git tag
34
+ *
35
+ * @param args
36
+ * @param options
37
+ */
38
+ tag(args: string[], options?: SpawnTaskOptions): SpawnTask<GitContext>;
39
+ /**
40
+ * Uses git diff to detect if given files have been affected since given reference
41
+ *
42
+ * @param reference
43
+ * @param files
44
+ * @param opts
45
+ */
46
+ isAffected(reference: string, files?: string[], opts?: SpawnTaskOptions): Promise<boolean>;
47
+ /**
48
+ * List git branches
49
+ *
50
+ * @param args
51
+ * @param opts
52
+ */
53
+ listBranches(args?: string[], opts?: SpawnTaskOptions): Promise<string[]>;
54
+ /**
55
+ * List git tags
56
+ *
57
+ * @param args
58
+ * @param opts
59
+ */
60
+ listTags(args?: string[], opts?: SpawnTaskOptions): Promise<string[]>;
61
+ }
File without changes
File without changes
@@ -0,0 +1,4 @@
1
+ import { interfaces as int } from 'inversify';
2
+ import { type IConfig } from './types';
3
+ export declare const CONFIG: int.ServiceIdentifier<IConfig>;
4
+ export declare function configLoader(): Promise<IConfig>;
@@ -0,0 +1,5 @@
1
+ import { Argv } from 'yargs';
2
+ import { interfaces as int } from 'inversify';
3
+ import { type IConfig } from '@/src/config/types';
4
+ export declare const CONFIG_OPTIONS: int.ServiceIdentifier<IConfig>;
5
+ export declare function applyConfigOptions(parser: Argv): Argv<Omit<IConfig, 'plugins'>>;
@@ -0,0 +1,7 @@
1
+ import { cosmiconfig } from 'cosmiconfig';
2
+ export interface IConfig {
3
+ jobs?: number;
4
+ plugins?: string[];
5
+ verbose?: 'info' | 'verbose' | 'debug';
6
+ }
7
+ export type IConfigExplorer = ReturnType<typeof cosmiconfig>;
@@ -0,0 +1,5 @@
1
+ import { interfaces as int } from 'inversify';
2
+ import { ValidateFunction } from 'ajv';
3
+ import { type IConfig, type IConfigExplorer } from './types';
4
+ export declare const CONFIG_EXPLORER: int.ServiceIdentifier<IConfigExplorer>;
5
+ export declare const CONFIG_VALIDATOR: int.ServiceIdentifier<ValidateFunction<IConfig>>;
@@ -5,6 +5,7 @@ export declare class AffectedFilter implements PipelineFilter {
5
5
  readonly fallback: string;
6
6
  readonly sort?: string | undefined;
7
7
  private readonly _logger;
8
+ private readonly _git;
8
9
  constructor(format: string, fallback: string, sort?: string | undefined);
9
10
  private _formatRevision;
10
11
  test(workspace: Workspace): Promise<boolean>;
package/dist/index.d.ts CHANGED
@@ -1,4 +1,7 @@
1
- export * from './git';
1
+ export * from './bases/command';
2
+ export * from './bases/ink-command';
3
+ export * from './bases/middleware';
4
+ export * from './commons/git.service';
2
5
  export * from './types';
3
6
  export * from './filters/affected.filter';
4
7
  export * from './filters/pipeline';
@@ -6,19 +9,19 @@ export * from './filters/private.filter';
6
9
  export * from './filters/scripts.filter';
7
10
  export * from './middlewares/load-project';
8
11
  export * from './middlewares/load-workspace';
9
- export * from './middlewares/setup-ink';
12
+ export * from './project/constants';
10
13
  export * from './project/project';
11
14
  export * from './project/workspace';
12
- export * from './services/inversify.config';
13
- export * from './services/spinner.service';
14
- export * from './services/task-expr.service';
15
- export * from './services/task-manager.config';
16
- export { CONFIG } from './services/config/loader';
17
- export { type Config } from './services/config/types';
18
- export { Logger } from './services/logger.service';
19
- export { PluginLoaderService } from './services/plugins/plugin-loader.service';
20
- export { type Plugin } from './services/plugins/types';
21
- export { definePlugin } from './services/plugins/utils';
15
+ export * from './inversify.config';
16
+ export * from './commons/spinner.service';
17
+ export * from './tasks/task-expr.service';
18
+ export * from './tasks/task-manager.config';
19
+ export { CONFIG } from './config/config-loader';
20
+ export { type IConfig } from './config/types';
21
+ export { Logger } from './commons/logger.service';
22
+ export { PluginLoaderService } from './plugins/plugin-loader.service';
23
+ export { type Plugin } from './plugins/types';
24
+ export { definePlugin } from './plugins/utils';
22
25
  export { default as GroupTaskSpinner } from './ui/group-task-spinner';
23
26
  export * from './ui/group-task-spinner';
24
27
  export { default as Layout } from './ui/layout';
@@ -36,4 +39,3 @@ export * from './ui/workspace-tree';
36
39
  export * from './utils/import';
37
40
  export * from './utils/streams';
38
41
  export * from './utils/string';
39
- export * from './utils/yargs';
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";(()=>{var e={id:826,ids:[826]};e.modules={3590:(e,r,i)=>{i.r(r),i.d(r,{AffectedFilter:()=>t.L,CONFIG:()=>S.k,CURRENT:()=>l.Wk,Git:()=>s.H,GroupTaskSpinner:()=>I.Z,INK_APP:()=>l.Is,Layout:()=>P.Z,List:()=>T.Z,Logger:()=>f.Y,Pipeline:()=>o.B,PluginLoaderService:()=>v.B,PrivateFilter:()=>p.N,Project:()=>x.I,SERVICES_CONFIG:()=>l.Ro,ScriptsFilter:()=>u.f,SpinnerService:()=>q.V,TASK_MANAGER:()=>m.N,TaskExprService:()=>k.P,TaskManagerSpinner:()=>y.Z,TaskName:()=>N.Z,TaskSpinner:()=>g.Z,Workspace:()=>c.j,WorkspaceTree:()=>Z.Z,applyMiddlewares:()=>L.S4,capitalize:()=>G.k,combine:()=>F.$,container:()=>l.nC,defineCommand:()=>L.gb,defineMiddleware:()=>L.kl,definePlugin:()=>C.C,dynamicImport:()=>h.y,lazyInject:()=>l.yT,loadProject:()=>a.C,loadWorkspace:()=>n.R,setupInk:()=>d.G,streamLines:()=>F.F});var s=i(3381),t=i(8652),o=i(2999),p=i(307),u=i(4203),a=i(8754),n=i(2419),d=i(6147),x=i(7672),c=i(8410),l=i(6831),q=i(3352),k=i(8881),m=i(5743),S=i(8004),f=i(6798),v=i(4834),C=i(2841),I=i(6872),P=i(8348),T=i(5740),y=i(4887),N=i(1562),g=i(6797),Z=i(6238),h=i(8520),F=i(5960),G=i(6379),L=i(1021)},9491:e=>{e.exports=require("assert")},4300:e=>{e.exports=require("buffer")},2081:e=>{e.exports=require("child_process")},2361:e=>{e.exports=require("events")},7147:e=>{e.exports=require("fs")},3685:e=>{e.exports=require("http")},5687:e=>{e.exports=require("https")},8188:e=>{e.exports=require("module")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},3977:e=>{e.exports=require("node:fs/promises")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},2037:e=>{e.exports=require("os")},1017:e=>{e.exports=require("path")},2781:e=>{e.exports=require("stream")},1576:e=>{e.exports=require("string_decoder")},6224:e=>{e.exports=require("tty")},7310:e=>{e.exports=require("url")},3837:e=>{e.exports=require("util")},9796:e=>{e.exports=require("zlib")}};var r=require("./runtime.js");r.C(e);var i=r.X(0,[801,784],(()=>(3590,r(r.s=3590))));module.exports=i})();
1
+ "use strict";(()=>{var e={id:826,ids:[826]};e.modules={3590:(e,r,i)=>{i.r(r),i.d(r,{AffectedFilter:()=>a.L,COMMAND:()=>t.N,CONFIG:()=>C.k,CURRENT:()=>l.W,Command:()=>t.m,GitService:()=>p.F,GroupTaskSpinner:()=>f.Z,InkCommand:()=>s.m,Layout:()=>L.Z,List:()=>j.Z,LoadProject:()=>c.r,LoadWorkspace:()=>x.S,Logger:()=>N.Y,Middleware:()=>o.d,Pipeline:()=>u.B,PluginLoaderService:()=>P.B,PrivateFilter:()=>n.N,Project:()=>q.I,ScriptsFilter:()=>d.f,Service:()=>S.t6,SpinnerService:()=>k.V,TASK_MANAGER:()=>y.N,TaskExprService:()=>v.P,TaskManagerSpinner:()=>Z.Z,TaskName:()=>g.Z,TaskSpinner:()=>h.Z,Workspace:()=>m.j,WorkspaceTree:()=>z.Z,applyMiddlewares:()=>o.S,capitalize:()=>M.k,combine:()=>I.$,container:()=>S.nC,definePlugin:()=>T.C,dynamicImport:()=>F.y,lazyCurrentProject:()=>q.P,lazyCurrentWorkspace:()=>m.H,lazyInject:()=>S.yT,lazyInjectNamed:()=>S.oV,streamLines:()=>I.F});var t=i(639),s=i(1503),o=i(7703),p=i(236),a=i(8652),u=i(2999),n=i(307),d=i(4203),c=i(8754),x=i(2419),l=i(1284),q=i(7672),m=i(8410),S=i(466),k=i(3565),v=i(3678),y=i(5099),C=i(2388),N=i(9060),P=i(5246),T=i(5635),f=i(6872),L=i(8348),j=i(5740),Z=i(4887),g=i(1562),h=i(6797),z=i(6238),F=i(8520),I=i(8897),M=i(6379)},9491:e=>{e.exports=require("assert")},4300:e=>{e.exports=require("buffer")},2081:e=>{e.exports=require("child_process")},2361:e=>{e.exports=require("events")},7147:e=>{e.exports=require("fs")},3685:e=>{e.exports=require("http")},5687:e=>{e.exports=require("https")},8188:e=>{e.exports=require("module")},7718:e=>{e.exports=require("node:child_process")},6005:e=>{e.exports=require("node:crypto")},3977:e=>{e.exports=require("node:fs/promises")},612:e=>{e.exports=require("node:os")},9411:e=>{e.exports=require("node:path")},2037:e=>{e.exports=require("os")},1017:e=>{e.exports=require("path")},2781:e=>{e.exports=require("stream")},1576:e=>{e.exports=require("string_decoder")},6224:e=>{e.exports=require("tty")},7310:e=>{e.exports=require("url")},3837:e=>{e.exports=require("util")},9796:e=>{e.exports=require("zlib")}};var r=require("./runtime.js");r.C(e);var i=r.X(0,[434,205],(()=>(3590,r(r.s=3590))));module.exports=i})();
2
2
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","mappings":"0lCAAAA,EAAOC,QAAUC,QAAQ,S,WCAzBF,EAAOC,QAAUC,QAAQ,S,WCAzBF,EAAOC,QAAUC,QAAQ,gB,WCAzBF,EAAOC,QAAUC,QAAQ,S,WCAzBF,EAAOC,QAAUC,QAAQ,K,WCAzBF,EAAOC,QAAUC,QAAQ,O,WCAzBF,EAAOC,QAAUC,QAAQ,Q,WCAzBF,EAAOC,QAAUC,QAAQ,S,WCAzBF,EAAOC,QAAUC,QAAQ,qB,WCAzBF,EAAOC,QAAUC,QAAQ,c,WCAzBF,EAAOC,QAAUC,QAAQ,mB,UCAzBF,EAAOC,QAAUC,QAAQ,U,WCAzBF,EAAOC,QAAUC,QAAQ,Y,WCAzBF,EAAOC,QAAUC,QAAQ,K,WCAzBF,EAAOC,QAAUC,QAAQ,O,WCAzBF,EAAOC,QAAUC,QAAQ,S,WCAzBF,EAAOC,QAAUC,QAAQ,iB,WCAzBF,EAAOC,QAAUC,QAAQ,M,WCAzBF,EAAOC,QAAUC,QAAQ,M,WCAzBF,EAAOC,QAAUC,QAAQ,O,WCAzBF,EAAOC,QAAUC,QAAQ,O","sources":["webpack://@jujulego/jill/external node-commonjs \"assert\"","webpack://@jujulego/jill/external node-commonjs \"buffer\"","webpack://@jujulego/jill/external node-commonjs \"child_process\"","webpack://@jujulego/jill/external node-commonjs \"events\"","webpack://@jujulego/jill/external node-commonjs \"fs\"","webpack://@jujulego/jill/external node-commonjs \"http\"","webpack://@jujulego/jill/external node-commonjs \"https\"","webpack://@jujulego/jill/external node-commonjs \"module\"","webpack://@jujulego/jill/external node-commonjs \"node:child_process\"","webpack://@jujulego/jill/external node-commonjs \"node:crypto\"","webpack://@jujulego/jill/external node-commonjs \"node:fs/promises\"","webpack://@jujulego/jill/external node-commonjs \"node:os\"","webpack://@jujulego/jill/external node-commonjs \"node:path\"","webpack://@jujulego/jill/external node-commonjs \"os\"","webpack://@jujulego/jill/external node-commonjs \"path\"","webpack://@jujulego/jill/external node-commonjs \"stream\"","webpack://@jujulego/jill/external node-commonjs \"string_decoder\"","webpack://@jujulego/jill/external node-commonjs \"tty\"","webpack://@jujulego/jill/external node-commonjs \"url\"","webpack://@jujulego/jill/external node-commonjs \"util\"","webpack://@jujulego/jill/external node-commonjs \"zlib\""],"sourcesContent":["module.exports = require(\"assert\");","module.exports = require(\"buffer\");","module.exports = require(\"child_process\");","module.exports = require(\"events\");","module.exports = require(\"fs\");","module.exports = require(\"http\");","module.exports = require(\"https\");","module.exports = require(\"module\");","module.exports = require(\"node:child_process\");","module.exports = require(\"node:crypto\");","module.exports = require(\"node:fs/promises\");","module.exports = require(\"node:os\");","module.exports = require(\"node:path\");","module.exports = require(\"os\");","module.exports = require(\"path\");","module.exports = require(\"stream\");","module.exports = require(\"string_decoder\");","module.exports = require(\"tty\");","module.exports = require(\"url\");","module.exports = require(\"util\");","module.exports = require(\"zlib\");"],"names":["module","exports","require"],"sourceRoot":""}
1
+ {"version":3,"file":"index.js","mappings":"4qCAAAA,EAAOC,QAAUC,QAAQ,S,WCAzBF,EAAOC,QAAUC,QAAQ,S,WCAzBF,EAAOC,QAAUC,QAAQ,gB,WCAzBF,EAAOC,QAAUC,QAAQ,S,WCAzBF,EAAOC,QAAUC,QAAQ,K,WCAzBF,EAAOC,QAAUC,QAAQ,O,WCAzBF,EAAOC,QAAUC,QAAQ,Q,WCAzBF,EAAOC,QAAUC,QAAQ,S,WCAzBF,EAAOC,QAAUC,QAAQ,qB,WCAzBF,EAAOC,QAAUC,QAAQ,c,WCAzBF,EAAOC,QAAUC,QAAQ,mB,UCAzBF,EAAOC,QAAUC,QAAQ,U,WCAzBF,EAAOC,QAAUC,QAAQ,Y,WCAzBF,EAAOC,QAAUC,QAAQ,K,WCAzBF,EAAOC,QAAUC,QAAQ,O,WCAzBF,EAAOC,QAAUC,QAAQ,S,WCAzBF,EAAOC,QAAUC,QAAQ,iB,WCAzBF,EAAOC,QAAUC,QAAQ,M,WCAzBF,EAAOC,QAAUC,QAAQ,M,WCAzBF,EAAOC,QAAUC,QAAQ,O,WCAzBF,EAAOC,QAAUC,QAAQ,O","sources":["webpack://@jujulego/jill/external node-commonjs \"assert\"","webpack://@jujulego/jill/external node-commonjs \"buffer\"","webpack://@jujulego/jill/external node-commonjs \"child_process\"","webpack://@jujulego/jill/external node-commonjs \"events\"","webpack://@jujulego/jill/external node-commonjs \"fs\"","webpack://@jujulego/jill/external node-commonjs \"http\"","webpack://@jujulego/jill/external node-commonjs \"https\"","webpack://@jujulego/jill/external node-commonjs \"module\"","webpack://@jujulego/jill/external node-commonjs \"node:child_process\"","webpack://@jujulego/jill/external node-commonjs \"node:crypto\"","webpack://@jujulego/jill/external node-commonjs \"node:fs/promises\"","webpack://@jujulego/jill/external node-commonjs \"node:os\"","webpack://@jujulego/jill/external node-commonjs \"node:path\"","webpack://@jujulego/jill/external node-commonjs \"os\"","webpack://@jujulego/jill/external node-commonjs \"path\"","webpack://@jujulego/jill/external node-commonjs \"stream\"","webpack://@jujulego/jill/external node-commonjs \"string_decoder\"","webpack://@jujulego/jill/external node-commonjs \"tty\"","webpack://@jujulego/jill/external node-commonjs \"url\"","webpack://@jujulego/jill/external node-commonjs \"util\"","webpack://@jujulego/jill/external node-commonjs \"zlib\""],"sourcesContent":["module.exports = require(\"assert\");","module.exports = require(\"buffer\");","module.exports = require(\"child_process\");","module.exports = require(\"events\");","module.exports = require(\"fs\");","module.exports = require(\"http\");","module.exports = require(\"https\");","module.exports = require(\"module\");","module.exports = require(\"node:child_process\");","module.exports = require(\"node:crypto\");","module.exports = require(\"node:fs/promises\");","module.exports = require(\"node:os\");","module.exports = require(\"node:path\");","module.exports = require(\"os\");","module.exports = require(\"path\");","module.exports = require(\"stream\");","module.exports = require(\"string_decoder\");","module.exports = require(\"tty\");","module.exports = require(\"url\");","module.exports = require(\"util\");","module.exports = require(\"zlib\");"],"names":["module","exports","require"],"sourceRoot":""}
@@ -0,0 +1,3 @@
1
+ import ink from 'ink';
2
+ import { interfaces as int } from 'inversify';
3
+ export declare const INK_APP: int.ServiceIdentifier<ink.Instance>;
@@ -0,0 +1,8 @@
1
+ import { Container } from 'inversify';
2
+ import 'reflect-metadata';
3
+ export declare const container: Container;
4
+ export declare const lazyInject: (serviceIdentifier: string | symbol | import("inversify/lib/interfaces/interfaces").interfaces.Newable<any> | import("inversify/lib/interfaces/interfaces").interfaces.Abstract<any>) => (proto: any, key: string) => void, lazyInjectNamed: (serviceIdentifier: string | symbol | import("inversify/lib/interfaces/interfaces").interfaces.Newable<any> | import("inversify/lib/interfaces/interfaces").interfaces.Abstract<any>, named: string) => (proto: any, key: string) => void;
5
+ /**
6
+ * Register class as a service
7
+ */
8
+ export declare function Service(): ClassDecorator;
package/dist/main.d.ts CHANGED
@@ -1 +1,5 @@
1
- export {};
1
+ import '@/src/commands/each';
2
+ import '@/src/commands/group';
3
+ import '@/src/commands/list';
4
+ import '@/src/commands/run';
5
+ import '@/src/commands/tree';
package/dist/main.js CHANGED
@@ -1,2 +1,2 @@
1
- (()=>{var e={id:179,ids:[179]};e.modules={6077:(e,t,r)=>{"use strict";r.r(t);var n=r(6627),s=(r(1524),r(2495));r(3919),r(4712);var o=r(6831),i=r(6798),a=r(4834),c=r(2010),u=r(2670),d=r(8631),l=r(9744);function p(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}function f(e,t,r){return f=p()?Reflect.construct:function(e,t,r){var n=[null];n.push.apply(n,t);var s=new(Function.bind.apply(e,n));return r&&g(s,r.prototype),s},f.apply(null,arguments)}function h(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function m(e){return m=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},m(e)}function y(e,t){return!t||"object"!==v(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function g(e,t){return g=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},g(e,t)}var v=function(e){return e&&"undefined"!=typeof Symbol&&e.constructor===Symbol?"symbol":typeof e};function b(e){var t="function"==typeof Map?new Map:void 0;return b=function(e){if(null===e||(r=e,-1===Function.toString.call(r).indexOf("[native code]")))return e;var r;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return f(e,arguments,m(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),g(n,e)},b(e)}var w=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&g(e,t)}(s,e);var t,r,n=(t=s,r=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,n=m(t);if(r){var s=m(this).constructor;e=Reflect.construct(n,arguments,s)}else e=n.apply(this,arguments);return y(this,e)});function s(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,s),(t=n.call(this)).manager=e,t._tasks=new Set,t._status="created",t._results={success:0,failed:0},t}var o,i,a=s.prototype;return a._handleComplete=function(e,t){this.emit("completed",e),t?++this._results.success:++this._results.failed,this._results.success+this._results.failed===this._tasks.size&&(this._status="finished",this.emit("finished",this._results))},a.add=function(e){var t=this;if((0,l.M)(e),"created"!==this._status)throw Error("Cannot add a task to a ".concat(this._status," task set"));this._tasks.has(e)||(e.subscribe("status",(function(r){var n=r.status;"running"===n?t.emit("started",e):"done"!==n&&"failed"!==n||t._handleComplete(e,"done"===n)})),this._tasks.add(e))},a.start=function(){if("created"!==this._status)throw Error("Cannot start a ".concat(this._status," task set"));if(0===this._tasks.size)this._status="finished",this.emit("finished",this._results);else{this._status="started";var e=!0,t=!1,r=void 0;try{for(var n,s=this._tasks[Symbol.iterator]();!(e=(n=s.next()).done);e=!0){var o=n.value;this.manager.add(o)}}catch(e){t=!0,r=e}finally{try{e||null==s.return||s.return()}finally{if(t)throw r}}}},o=s,(i=[{key:"status",get:function(){return this._status}},{key:"tasks",get:function(){return Array.from(this._tasks.values())}},{key:"results",get:function(){return this._results}}])&&h(o.prototype,i),s}(b(d.n)),k=r(8652),O=r(2999),A=r(307),x=r(4203),S=r(8754),j=r(6147),C=r(7672),E=r(3352),_=r(5743),N=r(8348),R=r(4887),q=r(1021);const Y=(0,q.gb)({command:"each <script>",describe:"Run script on many workspaces",builder:async e=>(await(0,q.S4)(e,[j.G,S.C])).positional("script",{type:"string",demandOption:!0}).option("deps-mode",{choice:["all","prod","none"],default:"all",desc:"Dependency selection mode:\n - all = dependencies AND devDependencies\n - prod = dependencies\n - none = nothing"}).option("private",{type:"boolean",group:"Filters:",desc:"Print only private workspaces"}).option("affected",{alias:"a",type:"string",coerce:e=>""===e?"master":e,group:"Affected:",desc:"Print only affected workspaces towards given git revision. If no revision is given, it will check towards master.\nReplaces %name by workspace name."}).option("affected-rev-sort",{type:"string",group:"Affected:",desc:"Sort applied to git tag / git branch command"}).option("affected-rev-fallback",{type:"string",default:"master",group:"Affected:",desc:"Fallback revision, used if no revision matching the given format is found"}),async handler(e){const t=o.nC.get(o.Is),r=o.nC.getNamed(C.I,o.Wk),n=o.nC.get(_.N),s=o.nC.get(E.V);try{s.spin("Loading workspaces ...");const o=new O.B;o.add(new x.f([e.script])),void 0!==e.private&&o.add(new A.N(e.private)),void 0!==e.affected&&o.add(new k.L(e.affected,e.affectedRevFallback,e.affectedRevSort));const i=e._.map((e=>e.toString()));"each"===i[0]&&i.splice(0,1);const a=new w(n);for await(const t of o.filter(r.workspaces()))a.add(await t.run(e.script,i,{buildDeps:e.depsMode}));if(0===a.tasks.length)return s.failed("No workspace found !"),process.exit(1);if(s.stop(),t.rerender((0,c.jsx)(N.Z,{children:(0,c.jsx)(R.Z,{manager:n})})),a.start(),(await(0,u.mA)(a,"finished")).failed>0)return process.exit(1)}finally{s.stop()}}});var D=r(2419),I=r(8410),P=r(8881);const z=(0,q.gb)({command:"group <script..>",describe:"Run many scripts inside a workspace",builder:async e=>(await(0,q.S4)(e,[j.G,S.C,D.R])).positional("script",{demandOption:!0,coerce:e=>o.nC.get(P.P).parse(e.join(" ")).roots[0]}).option("deps-mode",{choices:["all","prod","none"],default:"all",desc:"Dependency selection mode:\n - all = dependencies AND devDependencies\n - prod = dependencies\n - none = nothing"}),async handler(e){const t=o.nC.get(o.Is),r=o.nC.getNamed(I.j,o.Wk),s=o.nC.get(_.N),i=o.nC.get(P.P),a=await i.buildTask(e.script,r,{buildDeps:e.depsMode});if(s.add(a),t.rerender((0,c.jsx)(N.Z,{children:(0,c.jsx)(R.Z,{manager:s})})),"failed"===(await(0,u.mA)(a,"completed")).status)return n.Z.exit(1,new Error("Task failed !"))}});var U=r(7796),Z=r.n(U),T=r(9411),F=r.n(T),J=r(248),G=r.n(J),H=r(5740);const L=["name","version","root"],W=["name","version","slug","root"],M=["name"],B={name:e=>e.name,version:(e,t)=>e.manifest.version||(t?void 0:Z().grey("unset")),root:e=>e.cwd,slug:e=>G()(e.name)},K=(0,q.gb)({command:["list","ls"],describe:"List workspaces",builder:async e=>(await(0,q.S4)(e,[j.G,S.C])).option("private",{type:"boolean",group:"Filters:",desc:"Print only private workspaces"}).option("with-script",{type:"array",string:!0,group:"Filters:",desc:"Print only workspaces having the given script"}).option("affected",{alias:"a",type:"string",coerce:e=>""===e?"master":e,group:"Affected:",desc:"Print only affected workspaces towards given git revision. If no revision is given, it will check towards master.\nReplaces %name by workspace name."}).option("affected-rev-sort",{type:"string",group:"Affected:",desc:"Sort applied to git tag / git branch command"}).option("affected-rev-fallback",{type:"string",default:"master",group:"Affected:",desc:"Fallback revision, used if no revision matching the given format is found"}).option("attrs",{type:"array",choices:["name","version","root","slug"],default:[],group:"Format:",desc:"Select printed attributes"}).option("headers",{type:"boolean",group:"Format:",desc:"Prints columns headers"}).option("long",{alias:"l",type:"boolean",group:"Format:",desc:"Prints name, version and root of all workspaces"}).option("json",{type:"boolean",group:"Format:",desc:"Prints data as a JSON array"}),async handler(e){const t=new O.B;void 0!==e.private&&t.add(new A.N(e.private)),e.withScript&&t.add(new x.f(e.withScript)),void 0!==e.affected&&t.add(new k.L(e.affected,e.affectedRevFallback,e.affectedRevSort));const r=o.nC.getNamed(C.I,o.Wk),n=[];for await(const e of t.filter(r.workspaces()))n.push(e);let s=e.attrs;0===s.length&&(s=e.long?L:e.json?W:M);const i=n.map((t=>function(e){return(t,r)=>{const n={};for(const s of e)n[s]=B[s](t,r);return n}}(s)(t,e.json||!1)));if(e.json)process.stdout.isTTY?console.log(JSON.stringify(i,null,2)):process.stdout.write(JSON.stringify(i));else{const t=o.nC.get(o.Is);for(const e of i)e.root&&(e.root=F().relative(process.cwd(),e.root)||".");t.rerender((0,c.jsx)(N.Z,{children:(0,c.jsx)(H.Z,{items:i,headers:e.headers??s.length>1})}))}}}),V=(0,q.gb)({command:"run <script>",describe:"Run script inside workspace",builder:async e=>(await(0,q.S4)(e,[j.G,S.C,D.R])).positional("script",{type:"string",demandOption:!0}).option("deps-mode",{choice:["all","prod","none"],default:"all",desc:"Dependency selection mode:\n - all = dependencies AND devDependencies\n - prod = dependencies\n - none = nothing"}),async handler(e){const t=o.nC.get(o.Is),r=o.nC.getNamed(I.j,o.Wk),n=o.nC.get(_.N),s=e._.map((e=>e.toString()));"run"===s[0]&&s.splice(0,1);const i=await r.run(e.script,s,{buildDeps:e.depsMode});if(n.add(i),t.rerender((0,c.jsx)(N.Z,{children:(0,c.jsx)(R.Z,{manager:n})})),"failed"===(await(0,u.mA)(i,"completed")).status)return process.exit(1)}});var X=r(6238);const $=(0,q.gb)({command:"tree",describe:"Print workspace dependency tree",builder:e=>(0,q.S4)(e,[j.G,S.C,D.R]),handler:()=>{const e=o.nC.get(o.Is),t=o.nC.getNamed(I.j,o.Wk);e.rerender((0,c.jsx)(N.Z,{children:(0,c.jsx)(X.Z,{workspace:t})}))}}),Q=[Y,z,K,V,$];var ee=r(612),te=r.n(ee),re=r(8004);const ne={1:"verbose",2:"debug"},se=(0,q.kl)({builder:async e=>e.option("verbose",{alias:"v",type:"count",description:"Set verbosity level"}).option("jobs",{alias:"j",type:"number",default:(await o.nC.getAsync(re.k)).jobs??te().cpus().length-1,description:"Set maximum parallel job number"}),handler(e){e.verbose&&(o.nC.get(i.Y).level=ne[Math.min(e.verbose,2)]),o.nC.bind(o.Ro).toConstantValue({jobs:e.jobs})}}),oe=JSON.parse('{"i8":"2.1.0-alpha.6"}');(async()=>{try{const e=(0,n.Z)((0,s.b)(process.argv)).scriptName("jill").completion("completion","Generate bash completion script").help("help","Show help for a command").version("version","Show version",oe.i8).wrap(process.stdout.columns);await(0,q.S4)(e,[se]);const t=await o.nC.getAsync(a.B);await t.loadPlugins(e),await e.command(Q).demandCommand().recommendCommands().strict().parse()}catch(e){o.nC.get(i.Y).error(e),process.exit(1)}})()},248:function(e){var t;t=function(){var e=JSON.parse('{"$":"dollar","%":"percent","&":"and","<":"less",">":"greater","|":"or","¢":"cent","£":"pound","¤":"currency","¥":"yen","©":"(c)","ª":"a","®":"(r)","º":"o","À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","Æ":"AE","Ç":"C","È":"E","É":"E","Ê":"E","Ë":"E","Ì":"I","Í":"I","Î":"I","Ï":"I","Ð":"D","Ñ":"N","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","Ù":"U","Ú":"U","Û":"U","Ü":"U","Ý":"Y","Þ":"TH","ß":"ss","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","æ":"ae","ç":"c","è":"e","é":"e","ê":"e","ë":"e","ì":"i","í":"i","î":"i","ï":"i","ð":"d","ñ":"n","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","ù":"u","ú":"u","û":"u","ü":"u","ý":"y","þ":"th","ÿ":"y","Ā":"A","ā":"a","Ă":"A","ă":"a","Ą":"A","ą":"a","Ć":"C","ć":"c","Č":"C","č":"c","Ď":"D","ď":"d","Đ":"DJ","đ":"dj","Ē":"E","ē":"e","Ė":"E","ė":"e","Ę":"e","ę":"e","Ě":"E","ě":"e","Ğ":"G","ğ":"g","Ģ":"G","ģ":"g","Ĩ":"I","ĩ":"i","Ī":"i","ī":"i","Į":"I","į":"i","İ":"I","ı":"i","Ķ":"k","ķ":"k","Ļ":"L","ļ":"l","Ľ":"L","ľ":"l","Ł":"L","ł":"l","Ń":"N","ń":"n","Ņ":"N","ņ":"n","Ň":"N","ň":"n","Ō":"O","ō":"o","Ő":"O","ő":"o","Œ":"OE","œ":"oe","Ŕ":"R","ŕ":"r","Ř":"R","ř":"r","Ś":"S","ś":"s","Ş":"S","ş":"s","Š":"S","š":"s","Ţ":"T","ţ":"t","Ť":"T","ť":"t","Ũ":"U","ũ":"u","Ū":"u","ū":"u","Ů":"U","ů":"u","Ű":"U","ű":"u","Ų":"U","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","ź":"z","Ż":"Z","ż":"z","Ž":"Z","ž":"z","Ə":"E","ƒ":"f","Ơ":"O","ơ":"o","Ư":"U","ư":"u","Lj":"LJ","lj":"lj","Nj":"NJ","nj":"nj","Ș":"S","ș":"s","Ț":"T","ț":"t","ə":"e","˚":"o","Ά":"A","Έ":"E","Ή":"H","Ί":"I","Ό":"O","Ύ":"Y","Ώ":"W","ΐ":"i","Α":"A","Β":"B","Γ":"G","Δ":"D","Ε":"E","Ζ":"Z","Η":"H","Θ":"8","Ι":"I","Κ":"K","Λ":"L","Μ":"M","Ν":"N","Ξ":"3","Ο":"O","Π":"P","Ρ":"R","Σ":"S","Τ":"T","Υ":"Y","Φ":"F","Χ":"X","Ψ":"PS","Ω":"W","Ϊ":"I","Ϋ":"Y","ά":"a","έ":"e","ή":"h","ί":"i","ΰ":"y","α":"a","β":"b","γ":"g","δ":"d","ε":"e","ζ":"z","η":"h","θ":"8","ι":"i","κ":"k","λ":"l","μ":"m","ν":"n","ξ":"3","ο":"o","π":"p","ρ":"r","ς":"s","σ":"s","τ":"t","υ":"y","φ":"f","χ":"x","ψ":"ps","ω":"w","ϊ":"i","ϋ":"y","ό":"o","ύ":"y","ώ":"w","Ё":"Yo","Ђ":"DJ","Є":"Ye","І":"I","Ї":"Yi","Ј":"J","Љ":"LJ","Њ":"NJ","Ћ":"C","Џ":"DZ","А":"A","Б":"B","В":"V","Г":"G","Д":"D","Е":"E","Ж":"Zh","З":"Z","И":"I","Й":"J","К":"K","Л":"L","М":"M","Н":"N","О":"O","П":"P","Р":"R","С":"S","Т":"T","У":"U","Ф":"F","Х":"H","Ц":"C","Ч":"Ch","Ш":"Sh","Щ":"Sh","Ъ":"U","Ы":"Y","Ь":"","Э":"E","Ю":"Yu","Я":"Ya","а":"a","б":"b","в":"v","г":"g","д":"d","е":"e","ж":"zh","з":"z","и":"i","й":"j","к":"k","л":"l","м":"m","н":"n","о":"o","п":"p","р":"r","с":"s","т":"t","у":"u","ф":"f","х":"h","ц":"c","ч":"ch","ш":"sh","щ":"sh","ъ":"u","ы":"y","ь":"","э":"e","ю":"yu","я":"ya","ё":"yo","ђ":"dj","є":"ye","і":"i","ї":"yi","ј":"j","љ":"lj","њ":"nj","ћ":"c","ѝ":"u","џ":"dz","Ґ":"G","ґ":"g","Ғ":"GH","ғ":"gh","Қ":"KH","қ":"kh","Ң":"NG","ң":"ng","Ү":"UE","ү":"ue","Ұ":"U","ұ":"u","Һ":"H","һ":"h","Ә":"AE","ә":"ae","Ө":"OE","ө":"oe","Ա":"A","Բ":"B","Գ":"G","Դ":"D","Ե":"E","Զ":"Z","Է":"E\'","Ը":"Y\'","Թ":"T\'","Ժ":"JH","Ի":"I","Լ":"L","Խ":"X","Ծ":"C\'","Կ":"K","Հ":"H","Ձ":"D\'","Ղ":"GH","Ճ":"TW","Մ":"M","Յ":"Y","Ն":"N","Շ":"SH","Չ":"CH","Պ":"P","Ջ":"J","Ռ":"R\'","Ս":"S","Վ":"V","Տ":"T","Ր":"R","Ց":"C","Փ":"P\'","Ք":"Q\'","Օ":"O\'\'","Ֆ":"F","և":"EV","ء":"a","آ":"aa","أ":"a","ؤ":"u","إ":"i","ئ":"e","ا":"a","ب":"b","ة":"h","ت":"t","ث":"th","ج":"j","ح":"h","خ":"kh","د":"d","ذ":"th","ر":"r","ز":"z","س":"s","ش":"sh","ص":"s","ض":"dh","ط":"t","ظ":"z","ع":"a","غ":"gh","ف":"f","ق":"q","ك":"k","ل":"l","م":"m","ن":"n","ه":"h","و":"w","ى":"a","ي":"y","ً":"an","ٌ":"on","ٍ":"en","َ":"a","ُ":"u","ِ":"e","ْ":"","٠":"0","١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","پ":"p","چ":"ch","ژ":"zh","ک":"k","گ":"g","ی":"y","۰":"0","۱":"1","۲":"2","۳":"3","۴":"4","۵":"5","۶":"6","۷":"7","۸":"8","۹":"9","฿":"baht","ა":"a","ბ":"b","გ":"g","დ":"d","ე":"e","ვ":"v","ზ":"z","თ":"t","ი":"i","კ":"k","ლ":"l","მ":"m","ნ":"n","ო":"o","პ":"p","ჟ":"zh","რ":"r","ს":"s","ტ":"t","უ":"u","ფ":"f","ქ":"k","ღ":"gh","ყ":"q","შ":"sh","ჩ":"ch","ც":"ts","ძ":"dz","წ":"ts","ჭ":"ch","ხ":"kh","ჯ":"j","ჰ":"h","Ṣ":"S","ṣ":"s","Ẁ":"W","ẁ":"w","Ẃ":"W","ẃ":"w","Ẅ":"W","ẅ":"w","ẞ":"SS","Ạ":"A","ạ":"a","Ả":"A","ả":"a","Ấ":"A","ấ":"a","Ầ":"A","ầ":"a","Ẩ":"A","ẩ":"a","Ẫ":"A","ẫ":"a","Ậ":"A","ậ":"a","Ắ":"A","ắ":"a","Ằ":"A","ằ":"a","Ẳ":"A","ẳ":"a","Ẵ":"A","ẵ":"a","Ặ":"A","ặ":"a","Ẹ":"E","ẹ":"e","Ẻ":"E","ẻ":"e","Ẽ":"E","ẽ":"e","Ế":"E","ế":"e","Ề":"E","ề":"e","Ể":"E","ể":"e","Ễ":"E","ễ":"e","Ệ":"E","ệ":"e","Ỉ":"I","ỉ":"i","Ị":"I","ị":"i","Ọ":"O","ọ":"o","Ỏ":"O","ỏ":"o","Ố":"O","ố":"o","Ồ":"O","ồ":"o","Ổ":"O","ổ":"o","Ỗ":"O","ỗ":"o","Ộ":"O","ộ":"o","Ớ":"O","ớ":"o","Ờ":"O","ờ":"o","Ở":"O","ở":"o","Ỡ":"O","ỡ":"o","Ợ":"O","ợ":"o","Ụ":"U","ụ":"u","Ủ":"U","ủ":"u","Ứ":"U","ứ":"u","Ừ":"U","ừ":"u","Ử":"U","ử":"u","Ữ":"U","ữ":"u","Ự":"U","ự":"u","Ỳ":"Y","ỳ":"y","Ỵ":"Y","ỵ":"y","Ỷ":"Y","ỷ":"y","Ỹ":"Y","ỹ":"y","–":"-","‘":"\'","’":"\'","“":"\\"","”":"\\"","„":"\\"","†":"+","•":"*","…":"...","₠":"ecu","₢":"cruzeiro","₣":"french franc","₤":"lira","₥":"mill","₦":"naira","₧":"peseta","₨":"rupee","₩":"won","₪":"new shequel","₫":"dong","€":"euro","₭":"kip","₮":"tugrik","₯":"drachma","₰":"penny","₱":"peso","₲":"guarani","₳":"austral","₴":"hryvnia","₵":"cedi","₸":"kazakhstani tenge","₹":"indian rupee","₺":"turkish lira","₽":"russian ruble","₿":"bitcoin","℠":"sm","™":"tm","∂":"d","∆":"delta","∑":"sum","∞":"infinity","♥":"love","元":"yuan","円":"yen","﷼":"rial","ﻵ":"laa","ﻷ":"laa","ﻹ":"lai","ﻻ":"la"}'),t=JSON.parse('{"bg":{"Й":"Y","Ц":"Ts","Щ":"Sht","Ъ":"A","Ь":"Y","й":"y","ц":"ts","щ":"sht","ъ":"a","ь":"y"},"de":{"Ä":"AE","ä":"ae","Ö":"OE","ö":"oe","Ü":"UE","ü":"ue","ß":"ss","%":"prozent","&":"und","|":"oder","∑":"summe","∞":"unendlich","♥":"liebe"},"es":{"%":"por ciento","&":"y","<":"menor que",">":"mayor que","|":"o","¢":"centavos","£":"libras","¤":"moneda","₣":"francos","∑":"suma","∞":"infinito","♥":"amor"},"fr":{"%":"pourcent","&":"et","<":"plus petit",">":"plus grand","|":"ou","¢":"centime","£":"livre","¤":"devise","₣":"franc","∑":"somme","∞":"infini","♥":"amour"},"pt":{"%":"porcento","&":"e","<":"menor",">":"maior","|":"ou","¢":"centavo","∑":"soma","£":"libra","∞":"infinito","♥":"amor"},"uk":{"И":"Y","и":"y","Й":"Y","й":"y","Ц":"Ts","ц":"ts","Х":"Kh","х":"kh","Щ":"Shch","щ":"shch","Г":"H","г":"h"},"vi":{"Đ":"D","đ":"d"},"da":{"Ø":"OE","ø":"oe","Å":"AA","å":"aa","%":"procent","&":"og","|":"eller","$":"dollar","<":"mindre end",">":"større end"},"nb":{"&":"og","Å":"AA","Æ":"AE","Ø":"OE","å":"aa","æ":"ae","ø":"oe"},"it":{"&":"e"},"nl":{"&":"en"},"sv":{"&":"och","Å":"AA","Ä":"AE","Ö":"OE","å":"aa","ä":"ae","ö":"oe"}}');function r(r,n){if("string"!=typeof r)throw new Error("slugify: string argument expected");var s=t[(n="string"==typeof n?{replacement:n}:n||{}).locale]||{},o=void 0===n.replacement?"-":n.replacement,i=void 0===n.trim||n.trim,a=r.normalize().split("").reduce((function(t,r){var i=s[r]||e[r]||r;return i===o&&(i=" "),t+i.replace(n.remove||/[^\w\s$*_+~.()'"!\-:@]+/g,"")}),"");return n.strict&&(a=a.replace(/[^A-Za-z0-9\s]/g,"")),i&&(a=a.trim()),a=a.replace(/\s+/g,o),n.lower&&(a=a.toLowerCase()),a}return r.extend=function(t){Object.assign(e,t)},r},e.exports=t(),e.exports.default=t()},9491:e=>{"use strict";e.exports=require("assert")},4300:e=>{"use strict";e.exports=require("buffer")},2081:e=>{"use strict";e.exports=require("child_process")},2361:e=>{"use strict";e.exports=require("events")},7147:e=>{"use strict";e.exports=require("fs")},3685:e=>{"use strict";e.exports=require("http")},5687:e=>{"use strict";e.exports=require("https")},8188:e=>{"use strict";e.exports=require("module")},7718:e=>{"use strict";e.exports=require("node:child_process")},6005:e=>{"use strict";e.exports=require("node:crypto")},3977:e=>{"use strict";e.exports=require("node:fs/promises")},612:e=>{"use strict";e.exports=require("node:os")},9411:e=>{"use strict";e.exports=require("node:path")},2037:e=>{"use strict";e.exports=require("os")},1017:e=>{"use strict";e.exports=require("path")},2781:e=>{"use strict";e.exports=require("stream")},1576:e=>{"use strict";e.exports=require("string_decoder")},6224:e=>{"use strict";e.exports=require("tty")},7310:e=>{"use strict";e.exports=require("url")},3837:e=>{"use strict";e.exports=require("util")},9796:e=>{"use strict";e.exports=require("zlib")}};var t=require("./runtime.js");t.C(e);var r=t.X(0,[801,784],(()=>(6077,t(t.s=6077))));module.exports=r})();
1
+ (()=>{var e={id:179,ids:[179]};e.modules={1977:(e,t,r)=>{"use strict";r.r(t);var s=r(6627),o=r(4346),i=r(639),n=r(9060),a=r(3843),c=r(466),d=r(5246),p=r(2010),l=r(2670),u=r(8631),f=r(6888);class h extends u.n{constructor(e){super(),this.manager=e,this._tasks=new Set,this._status="created",this._results={success:0,failed:0}}_handleComplete(e,t){this.emit("completed",e),t?++this._results.success:++this._results.failed,this._results.success+this._results.failed===this._tasks.size&&(this._status="finished",this.emit("finished",this._results))}add(e){if((0,f.M)(e),"created"!==this._status)throw Error(`Cannot add a task to a ${this._status} task set`);this._tasks.has(e)||(e.subscribe("status",(({status:t})=>{"running"===t?this.emit("started",e):"done"!==t&&"failed"!==t||this._handleComplete(e,"done"===t)})),this._tasks.add(e))}start(){if("created"!==this._status)throw Error(`Cannot start a ${this._status} task set`);if(0===this._tasks.size)this._status="finished",this.emit("finished",this._results);else{this._status="started";for(const e of this._tasks)this.manager.add(e)}}get status(){return this._status}get tasks(){return Array.from(this._tasks.values())}get results(){return this._results}}var m=r(9724),g=r(1503),y=r(3565),v=r(8652),w=r(2999),k=r(307),b=r(4203),O=r(8754),A=r(7672),x=r(5099),j=r(4887),E=function(e,t,r,s){var o,i=arguments.length,n=i<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,r):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,s);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(n=(i<3?o(n):i>3?o(t,r,n):o(t,r))||n);return i>3&&n&&Object.defineProperty(t,r,n),n},S=function(e,t){return function(r,s){t(r,s,e)}};let _=class extends g.m{constructor(e,t){super(),this.spinner=e,this.manager=t}builder(e){return e.positional("script",{type:"string",demandOption:!0}).option("deps-mode",{choice:["all","prod","none"],default:"all",desc:"Dependency selection mode:\n - all = dependencies AND devDependencies\n - prod = dependencies\n - none = nothing"}).option("private",{type:"boolean",group:"Filters:",desc:"Print only private workspaces"}).option("affected",{alias:"a",type:"string",coerce:e=>""===e?"master":e,group:"Filters:",desc:"Print only affected workspaces towards given git revision. If no revision is given, it will check towards master. Replaces %name by workspace name."}).option("affected-rev-sort",{type:"string",group:"Filters:",desc:"Sort applied to git tag / git branch command"}).option("affected-rev-fallback",{type:"string",default:"master",group:"Filters:",desc:"Fallback revision, used if no revision matching the given format is found"})}async*render(e){try{this.spinner.spin("Loading workspaces ...");const t=new w.B;t.add(new b.f([e.script])),void 0!==e.private&&t.add(new k.N(e.private)),void 0!==e.affected&&t.add(new v.L(e.affected,e.affectedRevFallback,e.affectedRevSort));const r=e._.map((e=>e.toString()));"each"===r[0]&&r.splice(0,1);const s=new h(this.manager);for await(const o of t.filter(this.project.workspaces()))s.add(await o.run(e.script,r,{buildDeps:e.depsMode}));if(0===s.tasks.length)return this.spinner.failed("No workspace found !"),process.exit(1);if(this.spinner.stop(),yield(0,p.jsx)(j.Z,{manager:this.manager}),s.start(),(await(0,l.mA)(s,"finished")).failed>0)return process.exit(1)}finally{this.spinner.stop()}}};E([(0,A.P)()],_.prototype,"project",void 0),_=E([(0,i.m)({command:"each <script>",describe:"Run script on many workspaces",middlewares:[O.r]}),S(0,(0,m.f)(y.V)),S(1,(0,m.f)(x.N))],_);var R=r(2419),N=r(8410),P=r(3678),q=function(e,t,r,s){var o,i=arguments.length,n=i<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,r):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,s);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(n=(i<3?o(n):i>3?o(t,r,n):o(t,r))||n);return i>3&&n&&Object.defineProperty(t,r,n),n},D=function(e,t){return function(r,s){t(r,s,e)}};let Y=class extends g.m{constructor(e,t){super(),this.taskExpr=e,this.manager=t}builder(e){return e.positional("script",{demandOption:!0,coerce:e=>this.taskExpr.parse(e.join(" "))}).option("deps-mode",{choice:["all","prod","none"],default:"all",desc:"Dependency selection mode:\n - all = dependencies AND devDependencies\n - prod = dependencies\n - none = nothing"})}async*render(e){const t=await this.taskExpr.buildTask(e.script.roots[0],this.workspace,{buildDeps:e.depsMode});if(this.manager.add(t),yield(0,p.jsx)(j.Z,{manager:this.manager}),"failed"===(await(0,l.mA)(t,"completed")).status)return process.exit(1)}};q([(0,N.H)()],Y.prototype,"workspace",void 0),Y=q([(0,i.m)({command:"group <script..>",describe:"Run many scripts inside a workspace (experimental)",middlewares:[O.r,R.S]}),D(0,(0,m.f)(P.P)),D(1,(0,m.f)(x.N))],Y);var z=r(7796),U=r.n(z),C=r(9411),F=r.n(C),I=r(248),H=r.n(I),J=r(5740),Z=function(e,t,r,s){var o,i=arguments.length,n=i<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,r):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,s);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(n=(i<3?o(n):i>3?o(t,r,n):o(t,r))||n);return i>3&&n&&Object.defineProperty(t,r,n),n};const T=["name","version","root"],L=["name","version","slug","root"],G=["name"],M={name:e=>e.name,version:(e,t)=>e.manifest.version||(t?void 0:U().grey("unset")),root:e=>e.cwd,slug:e=>H()(e.name)};let W=class extends g.m{builder(e){return e.option("private",{type:"boolean",group:"Filters:",desc:"Print only private workspaces"}).option("with-script",{type:"array",string:!0,group:"Filters:",desc:"Print only workspaces having the given script"}).option("affected",{alias:"a",type:"string",coerce:e=>""===e?"master":e,group:"Filters:",desc:"Print only affected workspaces towards given git revision. If no revision is given, it will check towards master. Replaces %name by workspace name."}).option("affected-rev-sort",{type:"string",group:"Filters:",desc:"Sort applied to git tag / git branch command"}).option("affected-rev-fallback",{type:"string",default:"master",group:"Filters:",desc:"Fallback revision, used if no revision matching the given format is found"}).option("attrs",{type:"array",choices:["name","version","root","slug"],default:[],group:"Format:",desc:"Select printed attributes"}).option("headers",{type:"boolean",group:"Format:",desc:"Prints columns headers"}).option("long",{alias:"l",type:"boolean",group:"Format:",desc:"Prints name, version and root of all workspaces"}).option("json",{type:"boolean",group:"Format:",desc:"Prints data as a JSON array"})}async*render(e){const t=new w.B;void 0!==e.private&&t.add(new k.N(e.private)),e.withScript&&t.add(new b.f(e.withScript)),void 0!==e.affected&&t.add(new v.L(e.affected,e.affectedRevFallback,e.affectedRevSort));const r=[];for await(const e of t.filter(this.project.workspaces()))r.push(e);let s=e.attrs;0===s.length&&(s=e.long?T:e.json?L:G);const o=r.map((t=>function(e){return(t,r)=>{const s={};for(const o of e)s[o]=M[o](t,r);return s}}(s)(t,e.json||!1)));if(e.json)process.stdout.isTTY?console.log(JSON.stringify(o,null,2)):process.stdout.write(JSON.stringify(o));else{for(const e of o)e.root&&(e.root=F().relative(process.cwd(),e.root)||".");yield(0,p.jsx)(J.Z,{items:o,headers:e.headers??s.length>1})}}};Z([(0,A.P)()],W.prototype,"project",void 0),W=Z([(0,i.m)({command:"list",aliases:["ls"],describe:"List workspace",middlewares:[O.r]})],W);var B=function(e,t,r,s){var o,i=arguments.length,n=i<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,r):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,s);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(n=(i<3?o(n):i>3?o(t,r,n):o(t,r))||n);return i>3&&n&&Object.defineProperty(t,r,n),n};let K=class extends g.m{constructor(e){super(),this.manager=e}builder(e){return e.positional("script",{type:"string",demandOption:!0}).option("deps-mode",{choice:["all","prod","none"],default:"all",desc:"Dependency selection mode:\n - all = dependencies AND devDependencies\n - prod = dependencies\n - none = nothing"})}async*render(e){const t=e._.map((e=>e.toString()));"run"===t[0]&&t.splice(0,1);const r=await this.workspace.run(e.script,t,{buildDeps:e.depsMode});if(this.manager.add(r),yield(0,p.jsx)(j.Z,{manager:this.manager}),"failed"===(await(0,l.mA)(r,"completed")).status)return process.exit(1)}};var $,V;B([(0,N.H)()],K.prototype,"workspace",void 0),K=B([(0,i.m)({command:"run <script>",describe:"Run script inside workspace",middlewares:[O.r,R.S]}),($=0,V=(0,m.f)(x.N),function(e,t){V(e,t,$)})],K);var X=r(6238),Q=function(e,t,r,s){var o,i=arguments.length,n=i<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,r):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,s);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(n=(i<3?o(n):i>3?o(t,r,n):o(t,r))||n);return i>3&&n&&Object.defineProperty(t,r,n),n};let ee=class extends g.m{*render(){yield(0,p.jsx)(X.Z,{workspace:this.workspace})}};Q([(0,N.H)()],ee.prototype,"workspace",void 0),ee=Q([(0,i.m)({command:"tree",describe:"Print workspace dependency tree",middlewares:[O.r,R.S]})],ee);const te=JSON.parse('{"i8":"2.2.0-alpha.1"}');(async()=>{try{const e=(0,s.Z)((0,o.bA)(process.argv)).scriptName("jill").completion("completion","Generate bash completion script").help("help","Show help for a command").version("version","Show version",te.i8).wrap(process.stdout.columns);(0,a.N)(e);const t=await c.nC.getAsync(d.B);await t.loadPlugins(e),await e.command(await c.nC.getAllAsync(i.N)).demandCommand().recommendCommands().strict().parse()}catch(e){c.nC.get(n.Y).error(e),process.exit(1)}})()},248:function(e){var t;t=function(){var e=JSON.parse('{"$":"dollar","%":"percent","&":"and","<":"less",">":"greater","|":"or","¢":"cent","£":"pound","¤":"currency","¥":"yen","©":"(c)","ª":"a","®":"(r)","º":"o","À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","Æ":"AE","Ç":"C","È":"E","É":"E","Ê":"E","Ë":"E","Ì":"I","Í":"I","Î":"I","Ï":"I","Ð":"D","Ñ":"N","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","Ù":"U","Ú":"U","Û":"U","Ü":"U","Ý":"Y","Þ":"TH","ß":"ss","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","æ":"ae","ç":"c","è":"e","é":"e","ê":"e","ë":"e","ì":"i","í":"i","î":"i","ï":"i","ð":"d","ñ":"n","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","ù":"u","ú":"u","û":"u","ü":"u","ý":"y","þ":"th","ÿ":"y","Ā":"A","ā":"a","Ă":"A","ă":"a","Ą":"A","ą":"a","Ć":"C","ć":"c","Č":"C","č":"c","Ď":"D","ď":"d","Đ":"DJ","đ":"dj","Ē":"E","ē":"e","Ė":"E","ė":"e","Ę":"e","ę":"e","Ě":"E","ě":"e","Ğ":"G","ğ":"g","Ģ":"G","ģ":"g","Ĩ":"I","ĩ":"i","Ī":"i","ī":"i","Į":"I","į":"i","İ":"I","ı":"i","Ķ":"k","ķ":"k","Ļ":"L","ļ":"l","Ľ":"L","ľ":"l","Ł":"L","ł":"l","Ń":"N","ń":"n","Ņ":"N","ņ":"n","Ň":"N","ň":"n","Ō":"O","ō":"o","Ő":"O","ő":"o","Œ":"OE","œ":"oe","Ŕ":"R","ŕ":"r","Ř":"R","ř":"r","Ś":"S","ś":"s","Ş":"S","ş":"s","Š":"S","š":"s","Ţ":"T","ţ":"t","Ť":"T","ť":"t","Ũ":"U","ũ":"u","Ū":"u","ū":"u","Ů":"U","ů":"u","Ű":"U","ű":"u","Ų":"U","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","ź":"z","Ż":"Z","ż":"z","Ž":"Z","ž":"z","Ə":"E","ƒ":"f","Ơ":"O","ơ":"o","Ư":"U","ư":"u","Lj":"LJ","lj":"lj","Nj":"NJ","nj":"nj","Ș":"S","ș":"s","Ț":"T","ț":"t","ə":"e","˚":"o","Ά":"A","Έ":"E","Ή":"H","Ί":"I","Ό":"O","Ύ":"Y","Ώ":"W","ΐ":"i","Α":"A","Β":"B","Γ":"G","Δ":"D","Ε":"E","Ζ":"Z","Η":"H","Θ":"8","Ι":"I","Κ":"K","Λ":"L","Μ":"M","Ν":"N","Ξ":"3","Ο":"O","Π":"P","Ρ":"R","Σ":"S","Τ":"T","Υ":"Y","Φ":"F","Χ":"X","Ψ":"PS","Ω":"W","Ϊ":"I","Ϋ":"Y","ά":"a","έ":"e","ή":"h","ί":"i","ΰ":"y","α":"a","β":"b","γ":"g","δ":"d","ε":"e","ζ":"z","η":"h","θ":"8","ι":"i","κ":"k","λ":"l","μ":"m","ν":"n","ξ":"3","ο":"o","π":"p","ρ":"r","ς":"s","σ":"s","τ":"t","υ":"y","φ":"f","χ":"x","ψ":"ps","ω":"w","ϊ":"i","ϋ":"y","ό":"o","ύ":"y","ώ":"w","Ё":"Yo","Ђ":"DJ","Є":"Ye","І":"I","Ї":"Yi","Ј":"J","Љ":"LJ","Њ":"NJ","Ћ":"C","Џ":"DZ","А":"A","Б":"B","В":"V","Г":"G","Д":"D","Е":"E","Ж":"Zh","З":"Z","И":"I","Й":"J","К":"K","Л":"L","М":"M","Н":"N","О":"O","П":"P","Р":"R","С":"S","Т":"T","У":"U","Ф":"F","Х":"H","Ц":"C","Ч":"Ch","Ш":"Sh","Щ":"Sh","Ъ":"U","Ы":"Y","Ь":"","Э":"E","Ю":"Yu","Я":"Ya","а":"a","б":"b","в":"v","г":"g","д":"d","е":"e","ж":"zh","з":"z","и":"i","й":"j","к":"k","л":"l","м":"m","н":"n","о":"o","п":"p","р":"r","с":"s","т":"t","у":"u","ф":"f","х":"h","ц":"c","ч":"ch","ш":"sh","щ":"sh","ъ":"u","ы":"y","ь":"","э":"e","ю":"yu","я":"ya","ё":"yo","ђ":"dj","є":"ye","і":"i","ї":"yi","ј":"j","љ":"lj","њ":"nj","ћ":"c","ѝ":"u","џ":"dz","Ґ":"G","ґ":"g","Ғ":"GH","ғ":"gh","Қ":"KH","қ":"kh","Ң":"NG","ң":"ng","Ү":"UE","ү":"ue","Ұ":"U","ұ":"u","Һ":"H","һ":"h","Ә":"AE","ә":"ae","Ө":"OE","ө":"oe","Ա":"A","Բ":"B","Գ":"G","Դ":"D","Ե":"E","Զ":"Z","Է":"E\'","Ը":"Y\'","Թ":"T\'","Ժ":"JH","Ի":"I","Լ":"L","Խ":"X","Ծ":"C\'","Կ":"K","Հ":"H","Ձ":"D\'","Ղ":"GH","Ճ":"TW","Մ":"M","Յ":"Y","Ն":"N","Շ":"SH","Չ":"CH","Պ":"P","Ջ":"J","Ռ":"R\'","Ս":"S","Վ":"V","Տ":"T","Ր":"R","Ց":"C","Փ":"P\'","Ք":"Q\'","Օ":"O\'\'","Ֆ":"F","և":"EV","ء":"a","آ":"aa","أ":"a","ؤ":"u","إ":"i","ئ":"e","ا":"a","ب":"b","ة":"h","ت":"t","ث":"th","ج":"j","ح":"h","خ":"kh","د":"d","ذ":"th","ر":"r","ز":"z","س":"s","ش":"sh","ص":"s","ض":"dh","ط":"t","ظ":"z","ع":"a","غ":"gh","ف":"f","ق":"q","ك":"k","ل":"l","م":"m","ن":"n","ه":"h","و":"w","ى":"a","ي":"y","ً":"an","ٌ":"on","ٍ":"en","َ":"a","ُ":"u","ِ":"e","ْ":"","٠":"0","١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","پ":"p","چ":"ch","ژ":"zh","ک":"k","گ":"g","ی":"y","۰":"0","۱":"1","۲":"2","۳":"3","۴":"4","۵":"5","۶":"6","۷":"7","۸":"8","۹":"9","฿":"baht","ა":"a","ბ":"b","გ":"g","დ":"d","ე":"e","ვ":"v","ზ":"z","თ":"t","ი":"i","კ":"k","ლ":"l","მ":"m","ნ":"n","ო":"o","პ":"p","ჟ":"zh","რ":"r","ს":"s","ტ":"t","უ":"u","ფ":"f","ქ":"k","ღ":"gh","ყ":"q","შ":"sh","ჩ":"ch","ც":"ts","ძ":"dz","წ":"ts","ჭ":"ch","ხ":"kh","ჯ":"j","ჰ":"h","Ṣ":"S","ṣ":"s","Ẁ":"W","ẁ":"w","Ẃ":"W","ẃ":"w","Ẅ":"W","ẅ":"w","ẞ":"SS","Ạ":"A","ạ":"a","Ả":"A","ả":"a","Ấ":"A","ấ":"a","Ầ":"A","ầ":"a","Ẩ":"A","ẩ":"a","Ẫ":"A","ẫ":"a","Ậ":"A","ậ":"a","Ắ":"A","ắ":"a","Ằ":"A","ằ":"a","Ẳ":"A","ẳ":"a","Ẵ":"A","ẵ":"a","Ặ":"A","ặ":"a","Ẹ":"E","ẹ":"e","Ẻ":"E","ẻ":"e","Ẽ":"E","ẽ":"e","Ế":"E","ế":"e","Ề":"E","ề":"e","Ể":"E","ể":"e","Ễ":"E","ễ":"e","Ệ":"E","ệ":"e","Ỉ":"I","ỉ":"i","Ị":"I","ị":"i","Ọ":"O","ọ":"o","Ỏ":"O","ỏ":"o","Ố":"O","ố":"o","Ồ":"O","ồ":"o","Ổ":"O","ổ":"o","Ỗ":"O","ỗ":"o","Ộ":"O","ộ":"o","Ớ":"O","ớ":"o","Ờ":"O","ờ":"o","Ở":"O","ở":"o","Ỡ":"O","ỡ":"o","Ợ":"O","ợ":"o","Ụ":"U","ụ":"u","Ủ":"U","ủ":"u","Ứ":"U","ứ":"u","Ừ":"U","ừ":"u","Ử":"U","ử":"u","Ữ":"U","ữ":"u","Ự":"U","ự":"u","Ỳ":"Y","ỳ":"y","Ỵ":"Y","ỵ":"y","Ỷ":"Y","ỷ":"y","Ỹ":"Y","ỹ":"y","–":"-","‘":"\'","’":"\'","“":"\\"","”":"\\"","„":"\\"","†":"+","•":"*","…":"...","₠":"ecu","₢":"cruzeiro","₣":"french franc","₤":"lira","₥":"mill","₦":"naira","₧":"peseta","₨":"rupee","₩":"won","₪":"new shequel","₫":"dong","€":"euro","₭":"kip","₮":"tugrik","₯":"drachma","₰":"penny","₱":"peso","₲":"guarani","₳":"austral","₴":"hryvnia","₵":"cedi","₸":"kazakhstani tenge","₹":"indian rupee","₺":"turkish lira","₽":"russian ruble","₿":"bitcoin","℠":"sm","™":"tm","∂":"d","∆":"delta","∑":"sum","∞":"infinity","♥":"love","元":"yuan","円":"yen","﷼":"rial","ﻵ":"laa","ﻷ":"laa","ﻹ":"lai","ﻻ":"la"}'),t=JSON.parse('{"bg":{"Й":"Y","Ц":"Ts","Щ":"Sht","Ъ":"A","Ь":"Y","й":"y","ц":"ts","щ":"sht","ъ":"a","ь":"y"},"de":{"Ä":"AE","ä":"ae","Ö":"OE","ö":"oe","Ü":"UE","ü":"ue","ß":"ss","%":"prozent","&":"und","|":"oder","∑":"summe","∞":"unendlich","♥":"liebe"},"es":{"%":"por ciento","&":"y","<":"menor que",">":"mayor que","|":"o","¢":"centavos","£":"libras","¤":"moneda","₣":"francos","∑":"suma","∞":"infinito","♥":"amor"},"fr":{"%":"pourcent","&":"et","<":"plus petit",">":"plus grand","|":"ou","¢":"centime","£":"livre","¤":"devise","₣":"franc","∑":"somme","∞":"infini","♥":"amour"},"pt":{"%":"porcento","&":"e","<":"menor",">":"maior","|":"ou","¢":"centavo","∑":"soma","£":"libra","∞":"infinito","♥":"amor"},"uk":{"И":"Y","и":"y","Й":"Y","й":"y","Ц":"Ts","ц":"ts","Х":"Kh","х":"kh","Щ":"Shch","щ":"shch","Г":"H","г":"h"},"vi":{"Đ":"D","đ":"d"},"da":{"Ø":"OE","ø":"oe","Å":"AA","å":"aa","%":"procent","&":"og","|":"eller","$":"dollar","<":"mindre end",">":"større end"},"nb":{"&":"og","Å":"AA","Æ":"AE","Ø":"OE","å":"aa","æ":"ae","ø":"oe"},"it":{"&":"e"},"nl":{"&":"en"},"sv":{"&":"och","Å":"AA","Ä":"AE","Ö":"OE","å":"aa","ä":"ae","ö":"oe"}}');function r(r,s){if("string"!=typeof r)throw new Error("slugify: string argument expected");var o=t[(s="string"==typeof s?{replacement:s}:s||{}).locale]||{},i=void 0===s.replacement?"-":s.replacement,n=void 0===s.trim||s.trim,a=r.normalize().split("").reduce((function(t,r){var n=o[r]||e[r]||r;return n===i&&(n=" "),t+n.replace(s.remove||/[^\w\s$*_+~.()'"!\-:@]+/g,"")}),"");return s.strict&&(a=a.replace(/[^A-Za-z0-9\s]/g,"")),n&&(a=a.trim()),a=a.replace(/\s+/g,i),s.lower&&(a=a.toLowerCase()),a}return r.extend=function(t){Object.assign(e,t)},r},e.exports=t(),e.exports.default=t()},9491:e=>{"use strict";e.exports=require("assert")},4300:e=>{"use strict";e.exports=require("buffer")},2081:e=>{"use strict";e.exports=require("child_process")},2361:e=>{"use strict";e.exports=require("events")},7147:e=>{"use strict";e.exports=require("fs")},3685:e=>{"use strict";e.exports=require("http")},5687:e=>{"use strict";e.exports=require("https")},8188:e=>{"use strict";e.exports=require("module")},7718:e=>{"use strict";e.exports=require("node:child_process")},6005:e=>{"use strict";e.exports=require("node:crypto")},3977:e=>{"use strict";e.exports=require("node:fs/promises")},612:e=>{"use strict";e.exports=require("node:os")},9411:e=>{"use strict";e.exports=require("node:path")},2037:e=>{"use strict";e.exports=require("os")},1017:e=>{"use strict";e.exports=require("path")},2781:e=>{"use strict";e.exports=require("stream")},1576:e=>{"use strict";e.exports=require("string_decoder")},6224:e=>{"use strict";e.exports=require("tty")},7310:e=>{"use strict";e.exports=require("url")},3837:e=>{"use strict";e.exports=require("util")},9796:e=>{"use strict";e.exports=require("zlib")}};var t=require("./runtime.js");t.C(e);var r=t.X(0,[434,205],(()=>(1977,t(t.s=1977))));module.exports=r})();
2
2
  //# sourceMappingURL=main.js.map