@jujulego/jill 3.0.0-alpha.2 → 3.0.0-alpha.3
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 +1 -2
- package/bin/jill.js +1 -0
- package/dist/TaskName.js +1 -1
- package/dist/TaskName.js.map +1 -1
- package/dist/inked.js +31 -27
- package/dist/inked.js.map +1 -1
- package/dist/instrument.js +8 -0
- package/dist/instrument.js.map +1 -0
- package/dist/list.ink.js +8 -7
- package/dist/list.ink.js.map +1 -1
- package/dist/main.js +37 -10
- package/dist/main.js.map +1 -1
- package/dist/parser.js +285 -60
- package/dist/parser.js.map +1 -1
- package/dist/planner.service.js +20 -8
- package/dist/planner.service.js.map +1 -1
- package/dist/task-exec.ink.js +9 -8
- package/dist/task-exec.ink.js.map +1 -1
- package/dist/task-plan.ink.js +8 -7
- package/dist/task-plan.ink.js.map +1 -1
- package/dist/tree.ink.js +8 -7
- package/dist/tree.ink.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +10 -8
package/README.md
CHANGED
|
@@ -2,8 +2,7 @@
|
|
|
2
2
|
[](https://www.npmjs.com/package/@jujulego/jill)
|
|
3
3
|

|
|
4
4
|

|
|
5
|
-
[](https://sonarcloud.io/dashboard?id=jujulego_jill)
|
|
5
|
+
[](https://codecov.io/gh/Jujulego/jill)
|
|
7
6
|
|
|
8
7
|
Zero-config monorepo cli
|
|
9
8
|
|
package/bin/jill.js
CHANGED
package/dist/TaskName.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
1
|
+
;{try{(function(){var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="37ad726c-3634-4efb-a2ff-4245662538b8",e._sentryDebugIdIdentifier="sentry-dbid-37ad726c-3634-4efb-a2ff-4245662538b8");})();}catch(e){}};!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"3.0.0-alpha.3"};}catch(e){}}();import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
2
2
|
import { Text } from 'ink';
|
|
3
3
|
import { a as isScriptCtx } from './parser.js';
|
|
4
4
|
|
package/dist/TaskName.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaskName.js","sources":["../src/cli/components/TaskName.tsx"],"sourcesContent":["import { type Task, type TaskSummary } from '@jujulego/tasks';\nimport { Text } from 'ink';\nimport { isScriptCtx } from '../../tasks/script-task.js';\n\n// Components\nexport default function TaskName({ task, withWorkspace }: TaskNameProps) {\n if (isScriptCtx(task.context)) {\n return (\n <Text>\n Run <Text bold>{ task.context.script }</Text> script{ withWorkspace && <>{' '}in { task.context.workspace.name }</> }\n </Text>\n );\n } else {\n return <Text>{ task.name }</Text>;\n }\n}\n\n// Types\nexport interface TaskNameProps {\n readonly task: Task | TaskSummary;\n readonly withWorkspace?: boolean;\n}\n"],"names":["TaskName","task","withWorkspace","isScriptCtx","context","_jsxs","Text","_jsx","bold","script","_Fragment","workspace","name"],"mappings":";;;;AAIA;AACe,
|
|
1
|
+
{"version":3,"file":"TaskName.js","sources":["../src/cli/components/TaskName.tsx"],"sourcesContent":["import { type Task, type TaskSummary } from '@jujulego/tasks';\nimport { Text } from 'ink';\nimport { isScriptCtx } from '../../tasks/script-task.js';\n\n// Components\nexport default function TaskName({ task, withWorkspace }: TaskNameProps) {\n if (isScriptCtx(task.context)) {\n return (\n <Text>\n Run <Text bold>{ task.context.script }</Text> script{ withWorkspace && <>{' '}in { task.context.workspace.name }</> }\n </Text>\n );\n } else {\n return <Text>{ task.name }</Text>;\n }\n}\n\n// Types\nexport interface TaskNameProps {\n readonly task: Task | TaskSummary;\n readonly withWorkspace?: boolean;\n}\n"],"names":["TaskName","task","withWorkspace","isScriptCtx","context","_jsxs","Text","_jsx","bold","script","_Fragment","workspace","name"],"mappings":";;;;AAIA,CAAA,CAAA,CAAA,UAAA;AACe,QAAA,CAASA,QAAAA,CAAS,CAAA,CAAEC,IAAI,CAAA,CAAEC,aAAa,EAAiB,CAAA,CAAA,CAAA;IACrE,IAAIC,WAAAA,CAAYF,IAAAA,CAAKG,OAAO,CAAA,CAAA,CAAG,CAAA;AAC7B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,MAAA,CAAA,CAAA,CAAA,CAAA,QAAA,CAAA,CAAA,CACEC,IAAA,CAACC,IAAAA,CAAAA,CAAAA,CAAAA;;AAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAA,CAAA,CAAA,CAAA;8BACAC,GAAA,CAACD,IAAAA,CAAAA,CAAAA,CAAAA;oBAAKE,IAAI,EAAA,IAAA,CAAA;8BAAGP,IAAAA,CAAKG,OAAO,CAACK,MAAAA;;AAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,MAAA,CAAA,CAAA;gBAASP,aAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,QAAAA,CAAAA,CAAAA,CAAiBG,IAAA,CAAAK,QAAA,CAAA,CAAA,CAAA;;AAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA;AAAKT,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,IAAAA,CAAKG,OAAO,CAACO,SAAS,CAACC,IAAAA;;;;;IAGhH,CAAA,CAAA,IAAA,CAAO,CAAA;AACL,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,MAAA,CAAA,CAAA,CAAA,CAAA,QAAA,CAAA,CAAA,CAAOL,GAAA,CAACD,IAAAA,CAAAA,CAAAA,CAAAA;AAAOL,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,QAAAA,CAAAA,CAAAA,IAAAA,CAAKW,IAAAA;;AACtB,CAAA,CAAA,CAAA,CAAA,CAAA;AACF,CAAA;;"}
|
package/dist/inked.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
1
|
+
;{try{(function(){var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="dbf89afb-2036-40fc-a280-520e18c50982",e._sentryDebugIdIdentifier="sentry-dbid-dbf89afb-2036-40fc-a280-520e18c50982");})();}catch(e){}};!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"3.0.0-alpha.3"};}catch(e){}}();import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
2
|
+
import { startSpan } from '@sentry/node';
|
|
2
3
|
import { useStderr, render } from 'ink';
|
|
3
4
|
import { inject$ } from '@kyrielle/injector';
|
|
4
5
|
import { LogGateway } from '@kyrielle/logger';
|
|
@@ -28,34 +29,37 @@ function StaticLogs() {
|
|
|
28
29
|
/**
|
|
29
30
|
* Renders each yielded element using ink
|
|
30
31
|
*/ function inked(stepper) {
|
|
31
|
-
return
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
});
|
|
39
|
-
try {
|
|
40
|
-
const generator = stepper(props, {
|
|
41
|
-
app,
|
|
42
|
-
controller
|
|
32
|
+
return (props)=>startSpan({
|
|
33
|
+
name: 'inked',
|
|
34
|
+
op: 'ui.ink'
|
|
35
|
+
}, async ()=>{
|
|
36
|
+
const controller = new AbortController();
|
|
37
|
+
const app = render(/*#__PURE__*/ jsx(StaticLogs, {}), {
|
|
38
|
+
exitOnCtrlC: true
|
|
43
39
|
});
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
})
|
|
52
|
-
result = await generator.next();
|
|
40
|
+
void app.waitUntilExit().then(()=>{
|
|
41
|
+
controller.abort();
|
|
42
|
+
});
|
|
43
|
+
try {
|
|
44
|
+
const generator = stepper(props, {
|
|
45
|
+
app,
|
|
46
|
+
controller
|
|
47
|
+
});
|
|
48
|
+
let result = await generator.next();
|
|
49
|
+
while(!result.done){
|
|
50
|
+
app.rerender(/*#__PURE__*/ jsxs(Fragment, {
|
|
51
|
+
children: [
|
|
52
|
+
/*#__PURE__*/ jsx(StaticLogs, {}),
|
|
53
|
+
result.value
|
|
54
|
+
]
|
|
55
|
+
}));
|
|
56
|
+
result = await generator.next();
|
|
57
|
+
}
|
|
58
|
+
return result.value;
|
|
59
|
+
} finally{
|
|
60
|
+
app.unmount();
|
|
53
61
|
}
|
|
54
|
-
|
|
55
|
-
} finally{
|
|
56
|
-
app.unmount();
|
|
57
|
-
}
|
|
58
|
-
};
|
|
62
|
+
});
|
|
59
63
|
}
|
|
60
64
|
|
|
61
65
|
export { inked as i };
|
package/dist/inked.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inked.js","sources":["../src/cli/components/StaticLogs.tsx","../src/cli/inked.tsx"],"sourcesContent":["import { inject$ } from '@kyrielle/injector';\nimport { LogGateway, type WithDelay } from '@kyrielle/logger';\nimport { useStderr } from 'ink';\nimport { observer$ } from 'kyrielle';\nimport { useLayoutEffect } from 'react';\nimport { logFormat } from '../../utils/logger.js';\n\n// Component\nexport default function StaticLogs() {\n const stderr = useStderr();\n\n useLayoutEffect(() => {\n const gateway: LogGateway<WithDelay> = inject$(LogGateway);\n const toConsole = gateway.disconnect('console')!;\n\n gateway.connect('ink', observer$({\n next: (log) => stderr.write(logFormat(log) + '\\n')\n }));\n\n return () => {\n gateway.disconnect('ink');\n gateway.connect('console', toConsole);\n };\n }, [stderr]);\n\n return null;\n}\n\n","import { type Instance, render } from 'ink';\nimport type { ReactNode } from 'react';\nimport StaticLogs from './components/StaticLogs.jsx';\n\n/**\n * Renders each yielded element using ink\n */\nexport function inked<P, R>(stepper: InkedStepper<P, R>): InkedComponent<P, R> {\n return
|
|
1
|
+
{"version":3,"file":"inked.js","sources":["../src/cli/components/StaticLogs.tsx","../src/cli/inked.tsx"],"sourcesContent":["import { inject$ } from '@kyrielle/injector';\nimport { LogGateway, type WithDelay } from '@kyrielle/logger';\nimport { useStderr } from 'ink';\nimport { observer$ } from 'kyrielle';\nimport { useLayoutEffect } from 'react';\nimport { logFormat } from '../../utils/logger.js';\n\n// Component\nexport default function StaticLogs() {\n const stderr = useStderr();\n\n useLayoutEffect(() => {\n const gateway: LogGateway<WithDelay> = inject$(LogGateway);\n const toConsole = gateway.disconnect('console')!;\n\n gateway.connect('ink', observer$({\n next: (log) => stderr.write(logFormat(log) + '\\n')\n }));\n\n return () => {\n gateway.disconnect('ink');\n gateway.connect('console', toConsole);\n };\n }, [stderr]);\n\n return null;\n}\n\n","import { startSpan } from '@sentry/node';\nimport { type Instance, render } from 'ink';\nimport type { ReactNode } from 'react';\nimport StaticLogs from './components/StaticLogs.jsx';\n\n/**\n * Renders each yielded element using ink\n */\nexport function inked<P, R>(stepper: InkedStepper<P, R>): InkedComponent<P, R> {\n return (props: P): Promise<R> => startSpan({ name: 'inked', op: 'ui.ink' }, async () => {\n const controller = new AbortController();\n\n const app = render(<StaticLogs />, { exitOnCtrlC: true });\n void app.waitUntilExit().then(() => {\n controller.abort();\n });\n\n try {\n const generator = stepper(props, { app, controller });\n let result = await generator.next();\n\n while (!result.done) {\n app.rerender(\n <>\n <StaticLogs />\n { result.value }\n </>\n );\n\n result = await generator.next();\n }\n\n return result.value;\n } finally {\n app.unmount();\n }\n });\n}\n\n// Types\nexport interface InkedContext {\n readonly app: Instance;\n readonly controller: AbortController;\n}\n\nexport type InkedStepper<P, R> = (props: P, context: InkedContext) => AsyncGenerator<ReactNode, R> | Generator<ReactNode, R>;\nexport type InkedComponent<P, R> = (props: P) => Promise<R>;\n"],"names":["StaticLogs","stderr","useStderr","useLayoutEffect","gateway","inject$","LogGateway","toConsole","disconnect","connect","observer$","next","log","write","logFormat","inked","stepper","props","startSpan","name","op","controller","AbortController","app","render","_jsx","exitOnCtrlC","waitUntilExit","then","abort","generator","result","done","rerender","_jsxs","_Fragment","value","unmount"],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
;{try{(function(){var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="c9edf498-8d73-40aa-9138-6bd0d404a495",e._sentryDebugIdIdentifier="sentry-dbid-c9edf498-8d73-40aa-9138-6bd0d404a495");})();}catch(e){}};!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"3.0.0-alpha.3"};}catch(e){}}();import { init } from '@sentry/node';
|
|
2
|
+
|
|
3
|
+
init({
|
|
4
|
+
dsn: 'https://53e6d10c16975ebd025175d9836d039b@o4508229080055808.ingest.de.sentry.io/4509876546895952',
|
|
5
|
+
sendDefaultPii: false,
|
|
6
|
+
tracesSampleRate: 1.0
|
|
7
|
+
});
|
|
8
|
+
//# sourceMappingURL=instrument.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"instrument.js","sources":["../src/instrument.ts"],"sourcesContent":["import { init } from '@sentry/node';\n\ninit({\n dsn: 'https://53e6d10c16975ebd025175d9836d039b@o4508229080055808.ingest.de.sentry.io/4509876546895952',\n sendDefaultPii: false,\n tracesSampleRate: 1.0,\n});\n"],"names":["init","dsn","sendDefaultPii","tracesSampleRate"],"mappings":";;AAEAA,IAAAA,CAAK,CAAA;IACHC,GAAAA,EAAK,CAAA,KAAA,CAAA,CAAA,CAAA,gCAAA,CAAA,iBAAA,CAAA,MAAA,CAAA,EAAA,CAAA,MAAA,CAAA,EAAA,CAAA,gBAAA,CAAA,CAAA;IACLC,cAAAA,EAAgB,KAAA,CAAA;IAChBC,gBAAAA,CAAAA,CAAkB,CAAA,CAAA,CAAA;AACpB,CAAA,CAAA"}
|
package/dist/list.ink.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
1
|
+
;{try{(function(){var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="3a2f22a4-6985-460a-97d1-9545683745a8",e._sentryDebugIdIdentifier="sentry-dbid-3a2f22a4-6985-460a-97d1-9545683745a8");})();}catch(e){}};!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"3.0.0-alpha.3"};}catch(e){}}();import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
2
|
import { Box, Text } from 'ink';
|
|
3
3
|
import { c as capitalize } from './parser.js';
|
|
4
4
|
import { i as inked } from './inked.js';
|
|
@@ -6,19 +6,20 @@ import '@jujulego/tasks';
|
|
|
6
6
|
import '@kyrielle/injector';
|
|
7
7
|
import 'kyrielle';
|
|
8
8
|
import '@kyrielle/logger';
|
|
9
|
+
import '@sentry/node';
|
|
9
10
|
import 'node:path';
|
|
10
|
-
import 'glob';
|
|
11
|
-
import 'node:fs';
|
|
12
|
-
import 'normalize-package-data';
|
|
13
|
-
import 'semver';
|
|
14
|
-
import 'moo';
|
|
15
11
|
import 'node:child_process';
|
|
16
12
|
import 'node:process';
|
|
17
13
|
import 'chalk';
|
|
14
|
+
import 'semver';
|
|
18
15
|
import 'slugify';
|
|
19
16
|
import 'yargs';
|
|
20
|
-
import '
|
|
17
|
+
import 'node:fs';
|
|
21
18
|
import 'path-scurry';
|
|
19
|
+
import '@swc/helpers/_/_apply_decs_2203_r';
|
|
20
|
+
import 'glob';
|
|
21
|
+
import 'normalize-package-data';
|
|
22
|
+
import 'moo';
|
|
22
23
|
import '@jujulego/quick-tag';
|
|
23
24
|
import 'ajv';
|
|
24
25
|
import 'node:os';
|
package/dist/list.ink.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.ink.js","sources":["../src/cli/commands/list.ink.tsx"],"sourcesContent":["import { Box, Text } from 'ink';\nimport { capitalize } from '../../utils/string.js';\nimport { inked } from '../inked.jsx';\nimport type { ExtractedData, ListAttr } from './list.js';\n\nconst ListInk = inked(function* (props: ListInkProps) {\n const { attributes, headers, workspaces } = props;\n\n yield (\n <Box>\n { attributes.map((attr) => (\n <Box key={attr} flexDirection=\"column\" marginRight={2}>\n { headers && (\n <Text bold>{ capitalize(attr) }</Text>\n ) }\n { workspaces.map((wks, idx) => (\n <Text key={idx}>{ wks[attr] || ' ' }</Text>\n ))}\n </Box>\n )) }\n </Box>\n );\n});\n\nexport default ListInk;\n\n// Types\nexport interface ListInkProps {\n readonly attributes: readonly ListAttr[];\n readonly headers?: boolean;\n readonly workspaces: readonly ExtractedData[];\n}"],"names":["ListInk","inked","props","attributes","headers","workspaces","_jsx","Box","map","attr","_jsxs","flexDirection","marginRight","Text","bold","capitalize","wks","idx"],"mappings":"
|
|
1
|
+
{"version":3,"file":"list.ink.js","sources":["../src/cli/commands/list.ink.tsx"],"sourcesContent":["import { Box, Text } from 'ink';\nimport { capitalize } from '../../utils/string.js';\nimport { inked } from '../inked.jsx';\nimport type { ExtractedData, ListAttr } from './list.js';\n\nconst ListInk = inked(function* (props: ListInkProps) {\n const { attributes, headers, workspaces } = props;\n\n yield (\n <Box>\n { attributes.map((attr) => (\n <Box key={attr} flexDirection=\"column\" marginRight={2}>\n { headers && (\n <Text bold>{ capitalize(attr) }</Text>\n ) }\n { workspaces.map((wks, idx) => (\n <Text key={idx}>{ wks[attr] || ' ' }</Text>\n ))}\n </Box>\n )) }\n </Box>\n );\n});\n\nexport default ListInk;\n\n// Types\nexport interface ListInkProps {\n readonly attributes: readonly ListAttr[];\n readonly headers?: boolean;\n readonly workspaces: readonly ExtractedData[];\n}"],"names":["ListInk","inked","props","attributes","headers","workspaces","_jsx","Box","map","attr","_jsxs","flexDirection","marginRight","Text","bold","capitalize","wks","idx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,KAAA,CAAMA,OAAAA,CAAAA,CAAAA,CAAUC,KAAAA,CAAM,QAAA,CAAA,CAAWC,KAAmB,CAAA,CAAA,CAAA;AAClD,CAAA,CAAA,CAAA,CAAA,KAAA,CAAM,EAAEC,UAAU,CAAA,CAAEC,OAAO,CAAA,CAAEC,UAAU,CAAA,CAAE,CAAA,CAAA,CAAGH,KAAAA,CAAAA;AAE5C,CAAA,CAAA,CAAA,CAAA,KAAA,CAAA,CAAA,CAAA,CAAA,QAAA,CAAA,CAAA,CACEI,GAAA,CAACC,GAAAA,CAAAA,CAAAA,CAAAA;AACGJ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,QAAAA,CAAAA,CAAAA,UAAAA,CAAWK,GAAG,CAAC,CAACC,IAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,QAAAA,CAAAA,CAAAA,CAChBC,IAAA,CAACH,GAAAA,CAAAA,CAAAA,CAAAA;gBAAeI,aAAAA,EAAc,CAAA,MAAA,CAAA,CAAA;gBAASC,WAAAA,EAAa,CAAA,CAAA;;AAChDR,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,OAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,QAAAA,CAAAA,CAAAA,CACAE,GAAA,CAACO,IAAAA,CAAAA,CAAAA,CAAAA;wBAAKC,IAAI,EAAA,IAAA,CAAA;kCAAGC,UAAAA,CAAWN,IAAAA,CAAAA;;AAExBJ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,UAAAA,CAAWG,GAAG,CAAC,CAACQ,GAAAA,CAAAA,CAAKC,oBACrBX,GAAA,CAACO,IAAAA,CAAAA,CAAAA,CAAAA;sCAAiBG,GAAG,CAACP,KAAK,CAAA,CAAA,CAAA,CAAI,CAAA,CAAA,CAAA;AAApBQ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,GAAAA,CAAAA,CAAAA;;AALLR,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,IAAAA,CAAAA,CAAAA;;AAWlB,CAAA,CAAA,CAAA;;"}
|
package/dist/main.js
CHANGED
|
@@ -1,21 +1,23 @@
|
|
|
1
|
-
|
|
1
|
+
;{try{(function(){var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="8a2485f3-b592-4c76-b67b-06ad641e7844",e._sentryDebugIdIdentifier="sentry-dbid-8a2485f3-b592-4c76-b67b-06ad641e7844");})();}catch(e){}};!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"3.0.0-alpha.3"};}catch(e){}}();import { inject$ } from '@kyrielle/injector';
|
|
2
|
+
import { startSpan, captureMessage, captureException } from '@sentry/node';
|
|
3
|
+
import process from 'node:process';
|
|
4
|
+
import { hideBin } from 'yargs/helpers';
|
|
5
|
+
import { e as executeParser, L as LOGGER, C as ClientError } from './parser.js';
|
|
2
6
|
import '@jujulego/tasks';
|
|
3
|
-
import '@kyrielle/injector';
|
|
4
7
|
import 'kyrielle';
|
|
5
8
|
import '@kyrielle/logger';
|
|
6
9
|
import 'node:path';
|
|
7
|
-
import 'glob';
|
|
8
|
-
import 'node:fs';
|
|
9
|
-
import 'normalize-package-data';
|
|
10
|
-
import 'semver';
|
|
11
|
-
import 'moo';
|
|
12
10
|
import 'node:child_process';
|
|
13
|
-
import 'node:process';
|
|
14
11
|
import 'chalk';
|
|
12
|
+
import 'semver';
|
|
15
13
|
import 'slugify';
|
|
16
14
|
import 'yargs';
|
|
17
|
-
import '
|
|
15
|
+
import 'node:fs';
|
|
18
16
|
import 'path-scurry';
|
|
17
|
+
import '@swc/helpers/_/_apply_decs_2203_r';
|
|
18
|
+
import 'glob';
|
|
19
|
+
import 'normalize-package-data';
|
|
20
|
+
import 'moo';
|
|
19
21
|
import '@jujulego/quick-tag';
|
|
20
22
|
import 'ajv';
|
|
21
23
|
import 'node:os';
|
|
@@ -23,6 +25,31 @@ import 'cosmiconfig';
|
|
|
23
25
|
import 'chalk-template';
|
|
24
26
|
|
|
25
27
|
// Bootstrap
|
|
28
|
+
const argv = hideBin(process.argv);
|
|
26
29
|
const parser = executeParser();
|
|
27
|
-
await
|
|
30
|
+
await startSpan({
|
|
31
|
+
name: 'jill',
|
|
32
|
+
op: 'cli.main',
|
|
33
|
+
attributes: {
|
|
34
|
+
'cli.argv': argv
|
|
35
|
+
}
|
|
36
|
+
}, ()=>parser.wrap(parser.terminalWidth()).fail((msg, err)=>{
|
|
37
|
+
const logger = inject$(LOGGER);
|
|
38
|
+
if (msg) {
|
|
39
|
+
logger.error(msg);
|
|
40
|
+
captureMessage(msg, {
|
|
41
|
+
level: 'error'
|
|
42
|
+
});
|
|
43
|
+
} else if (err instanceof ClientError) {
|
|
44
|
+
logger.warning(err.message);
|
|
45
|
+
} else {
|
|
46
|
+
captureException(err, {
|
|
47
|
+
tags: {
|
|
48
|
+
handled: false
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
logger.error(err.message);
|
|
52
|
+
}
|
|
53
|
+
process.exitCode = 1;
|
|
54
|
+
}).parseAsync(argv).catch(()=>{}));
|
|
28
55
|
//# sourceMappingURL=main.js.map
|
package/dist/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sources":["../src/main.ts"],"sourcesContent":["import { executeParser } from './cli/parser.js';\n\n// Bootstrap\nconst parser = executeParser();\n\nawait parser\n .wrap(parser.terminalWidth())\n .parseAsync();\n"],"names":["parser","executeParser","wrap","terminalWidth","parseAsync"],"mappings":"
|
|
1
|
+
{"version":3,"file":"main.js","sources":["../src/main.ts"],"sourcesContent":["import { inject$ } from '@kyrielle/injector';\nimport { captureException, captureMessage, startSpan } from '@sentry/node';\nimport process from 'node:process';\nimport { hideBin } from 'yargs/helpers';\nimport { executeParser } from './cli/parser.js';\nimport { ClientError } from './cli/utils/errors.js';\nimport { LOGGER } from './tokens.js';\n\n// Bootstrap\nconst argv = hideBin(process.argv);\nconst parser = executeParser();\n\nawait startSpan({ name: 'jill', op: 'cli.main', attributes: { 'cli.argv': argv } }, () => parser\n .wrap(parser.terminalWidth())\n .fail((msg, err) => {\n const logger = inject$(LOGGER);\n\n if (msg) {\n logger.error(msg);\n captureMessage(msg, { level: 'error' });\n } else if (err instanceof ClientError) {\n logger.warning(err.message);\n } else {\n captureException(err, { tags: { handled: false } });\n logger.error(err.message);\n }\n\n process.exitCode = 1;\n })\n .parseAsync(argv)\n .catch(() => {})\n);\n"],"names":["argv","hideBin","process","parser","executeParser","startSpan","name","op","attributes","wrap","terminalWidth","fail","msg","err","logger","inject$","LOGGER","error","captureMessage","level","ClientError","warning","message","captureException","tags","handled","exitCode","parseAsync","catch"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,CAAA,CAAA,CAAA,SAAA;AACA,KAAA,CAAMA,IAAAA,CAAAA,CAAAA,CAAOC,OAAAA,CAAQC,OAAAA,CAAQF,IAAI,CAAA,CAAA;AACjC,KAAA,CAAMG,MAAAA,CAAAA,CAAAA,CAASC,aAAAA,CAAAA,CAAAA,CAAAA;AAEf,KAAA,CAAMC,SAAAA,CAAU,CAAA;IAAEC,IAAAA,EAAM,CAAA,IAAA,CAAA,CAAA;IAAQC,EAAAA,EAAI,CAAA,GAAA,CAAA,IAAA,CAAA,CAAA;IAAYC,UAAAA,CAAAA,CAAY,CAAA;QAAE,UAAA,CAAA,CAAYR,IAAAA;AAAK,CAAA,CAAA,CAAA,CAAA,CAAA;AAAE,CAAA,EAAG,CAAA,CAAA,CAAA,CAAMG,MAAAA,CACvFM,IAAI,CAACN,MAAAA,CAAOO,aAAa,CAAA,CAAA,CAAA,CACzBC,IAAI,CAAC,CAACC,GAAAA,CAAAA,CAAKC,GAAAA,CAAAA,CAAAA,CAAAA,CAAAA;AACV,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,MAAMC,SAASC,MAAAA,CAAAA,CAAQC,MAAAA,CAAAA,CAAAA;AAEvB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAIJ,GAAAA,CAAAA,CAAK,CAAA;AACPE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,MAAAA,CAAOG,KAAK,CAACL,GAAAA,CAAAA,CAAAA;AACbM,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,cAAAA,CAAeN,GAAAA,CAAAA,CAAK,CAAA;gBAAEO,KAAAA,CAAAA,CAAO,CAAA,KAAA,CAAA;AAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;QACvC,CAAA,CAAA,IAAA,CAAO,EAAA,CAAA,CAAIN,eAAeO,WAAAA,CAAAA,CAAa,CAAA;YACrCN,MAAAA,CAAOO,OAAO,CAACR,GAAAA,CAAIS,OAAO,CAAA,CAAA;QAC5B,CAAA,CAAA,IAAA,CAAO,CAAA;AACLC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,gBAAAA,CAAiBV,GAAAA,CAAAA,CAAK,CAAA;gBAAEW,IAAAA,CAAAA,CAAM,CAAA;oBAAEC,OAAAA,CAAAA,CAAS,KAAA;AAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;YACjDX,MAAAA,CAAOG,KAAK,CAACJ,GAAAA,CAAIS,OAAO,CAAA,CAAA;AAC1B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAEApB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,OAAAA,CAAQwB,QAAQ,CAAA,CAAA,CAAG,CAAA,CAAA;AACrB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACCC,UAAU,CAAC3B,IAAAA,CAAAA,CACX4B,KAAK,CAAC,CAAA,CAAA,CAAA,CAAA,CAAO,CAAA,CAAA,CAAA"}
|