@jujulego/jill 3.0.0-alpha.2 → 3.0.0-alpha.4

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
@@ -2,8 +2,7 @@
2
2
  [![Version](https://img.shields.io/npm/v/@jujulego/jill)](https://www.npmjs.com/package/@jujulego/jill)
3
3
  ![Licence](https://img.shields.io/github/license/jujulego/jill)
4
4
  ![Language](https://img.shields.io/github/languages/top/jujulego/jill)
5
- [![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=jujulego_jill&metric=alert_status)](https://sonarcloud.io/dashboard?id=jujulego_jill)
6
- [![Coverage](https://sonarcloud.io/api/project_badges/measure?project=jujulego_jill&metric=coverage)](https://sonarcloud.io/dashboard?id=jujulego_jill)
5
+ [![codecov](https://codecov.io/gh/Jujulego/jill/graph/badge.svg?token=Ug8TWPaPNA)](https://codecov.io/gh/Jujulego/jill)
7
6
 
8
7
  Zero-config monorepo cli
9
8
 
package/bin/jill.js CHANGED
@@ -1,3 +1,4 @@
1
1
  #!/usr/bin/env node
2
2
 
3
+ import '../dist/instrument.js';
3
4
  import '../dist/main.js';
package/dist/TaskName.js CHANGED
@@ -1,6 +1,6 @@
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]="02879f96-4c6d-4317-b129-127bfd838329",e._sentryDebugIdIdentifier="sentry-dbid-02879f96-4c6d-4317-b129-127bfd838329");})();}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.4"};}catch(e){}}();import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
2
2
  import { Text } from 'ink';
3
- import { a as isScriptCtx } from './parser.js';
3
+ import { a as isScriptCtx } from './main.js';
4
4
 
5
5
  // Components
6
6
  function TaskName({ task, withWorkspace }) {
@@ -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,SAASA,QAAAA,CAAS,EAAEC,IAAI,EAAEC,aAAa,EAAiB,EAAA;IACrE,IAAIC,WAAAA,CAAYF,IAAAA,CAAKG,OAAO,CAAA,EAAG;AAC7B,QAAA,qBACEC,IAAA,CAACC,IAAAA,EAAAA;;AAAK,gBAAA,MAAA;8BACAC,GAAA,CAACD,IAAAA,EAAAA;oBAAKE,IAAI,EAAA,IAAA;8BAAGP,IAAAA,CAAKG,OAAO,CAACK;;AAAe,gBAAA,SAAA;gBAASP,aAAAA,kBAAiBG,IAAA,CAAAK,QAAA,EAAA;;AAAG,wBAAA,GAAA;AAAI,wBAAA,KAAA;AAAKT,wBAAAA,IAAAA,CAAKG,OAAO,CAACO,SAAS,CAACC;;;;;IAGhH,CAAA,MAAO;AACL,QAAA,qBAAOL,GAAA,CAACD,IAAAA,EAAAA;AAAOL,YAAAA,QAAAA,EAAAA,IAAAA,CAAKW;;AACtB,IAAA;AACF;;;;"}
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,10 +1,11 @@
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]="4d12f71e-5704-447d-a36a-71ad3d557651",e._sentryDebugIdIdentifier="sentry-dbid-4d12f71e-5704-447d-a36a-71ad3d557651");})();}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.4"};}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';
5
6
  import { observer$ } from 'kyrielle';
6
7
  import { useLayoutEffect } from 'react';
7
- import { l as logFormat } from './parser.js';
8
+ import { l as logFormat } from './main.js';
8
9
 
9
10
  // Component
10
11
  function StaticLogs() {
@@ -28,34 +29,37 @@ function StaticLogs() {
28
29
  /**
29
30
  * Renders each yielded element using ink
30
31
  */ function inked(stepper) {
31
- return async (props)=>{
32
- const controller = new AbortController();
33
- const app = render(/*#__PURE__*/ jsx(StaticLogs, {}), {
34
- exitOnCtrlC: true
35
- });
36
- void app.waitUntilExit().then(()=>{
37
- controller.abort();
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
- let result = await generator.next();
45
- while(!result.done){
46
- app.rerender(/*#__PURE__*/ jsxs(Fragment, {
47
- children: [
48
- /*#__PURE__*/ jsx(StaticLogs, {}),
49
- result.value
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
- return result.value;
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 async (props: P): Promise<R> => {\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","controller","AbortController","app","render","_jsx","exitOnCtrlC","waitUntilExit","then","abort","generator","result","done","rerender","_jsxs","_Fragment","value","unmount"],"mappings":";;;;;;;;AAOA;AACe,SAASA,UAAAA,GAAAA;AACtB,IAAA,MAAMC,MAAAA,GAASC,SAAAA,EAAAA;IAEfC,eAAAA,CAAgB,IAAA;AACd,QAAA,MAAMC,UAAiCC,OAAAA,CAAQC,UAAAA,CAAAA;QAC/C,MAAMC,SAAAA,GAAYH,OAAAA,CAAQI,UAAU,CAAC,SAAA,CAAA;QAErCJ,OAAAA,CAAQK,OAAO,CAAC,KAAA,EAAOC,SAAAA,CAAU;AAC/BC,YAAAA,IAAAA,EAAM,CAACC,GAAAA,GAAQX,MAAAA,CAAOY,KAAK,CAACC,UAAUF,GAAAA,CAAAA,GAAO,IAAA;AAC/C,SAAA,CAAA,CAAA;QAEA,OAAO,IAAA;AACLR,YAAAA,OAAAA,CAAQI,UAAU,CAAC,KAAA,CAAA;YACnBJ,OAAAA,CAAQK,OAAO,CAAC,SAAA,EAAWF,SAAAA,CAAAA;AAC7B,QAAA,CAAA;IACF,CAAA,EAAG;AAACN,QAAAA;AAAO,KAAA,CAAA;IAEX,OAAO,IAAA;AACT;;ACtBA;;IAGO,SAASc,KAAAA,CAAYC,OAA2B,EAAA;AACrD,IAAA,OAAO,OAAOC,KAAAA,GAAAA;AACZ,QAAA,MAAMC,aAAa,IAAIC,eAAAA,EAAAA;QAEvB,MAAMC,GAAAA,GAAMC,MAAAA,eAAOC,GAAA,CAACtB,UAAAA,EAAAA,EAAAA,CAAAA,EAAe;YAAEuB,WAAAA,EAAa;AAAK,SAAA,CAAA;AACvD,QAAA,KAAKH,GAAAA,CAAII,aAAa,EAAA,CAAGC,IAAI,CAAC,IAAA;AAC5BP,YAAAA,UAAAA,CAAWQ,KAAK,EAAA;AAClB,QAAA,CAAA,CAAA;QAEA,IAAI;YACF,MAAMC,SAAAA,GAAYX,QAAQC,KAAAA,EAAO;AAAEG,gBAAAA,GAAAA;AAAKF,gBAAAA;AAAW,aAAA,CAAA;YACnD,IAAIU,MAAAA,GAAS,MAAMD,SAAAA,CAAUhB,IAAI,EAAA;YAEjC,MAAO,CAACiB,MAAAA,CAAOC,IAAI,CAAE;AACnBT,gBAAAA,GAAAA,CAAIU,QAAQ,eACVC,IAAA,CAAAC,QAAA,EAAA;;sCACEV,GAAA,CAACtB,UAAAA,EAAAA,EAAAA,CAAAA;AACC4B,wBAAAA,MAAAA,CAAOK;;;gBAIbL,MAAAA,GAAS,MAAMD,UAAUhB,IAAI,EAAA;AAC/B,YAAA;AAEA,YAAA,OAAOiB,OAAOK,KAAK;QACrB,CAAA,QAAU;AACRb,YAAAA,GAAAA,CAAIc,OAAO,EAAA;AACb,QAAA;AACF,IAAA,CAAA;AACF;;;;"}
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]="4c021338-51d9-446f-b1b4-8d9c5aa2a1ff",e._sentryDebugIdIdentifier="sentry-dbid-4c021338-51d9-446f-b1b4-8d9c5aa2a1ff");})();}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.4"};}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,24 +1,26 @@
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]="875be21e-2d97-4074-9152-d18814d3f2e9",e._sentryDebugIdIdentifier="sentry-dbid-875be21e-2d97-4074-9152-d18814d3f2e9");})();}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.4"};}catch(e){}}();import { jsx, jsxs } from 'react/jsx-runtime';
2
2
  import { Box, Text } from 'ink';
3
- import { c as capitalize } from './parser.js';
3
+ import { c as capitalize } from './main.js';
4
4
  import { i as inked } from './inked.js';
5
- import '@jujulego/tasks';
6
5
  import '@kyrielle/injector';
6
+ import '@sentry/node';
7
+ import 'node:process';
8
+ import 'yargs/helpers';
7
9
  import 'kyrielle';
10
+ import 'yargs';
11
+ import '@jujulego/tasks';
8
12
  import '@kyrielle/logger';
13
+ import 'node:fs';
14
+ import 'path-scurry';
15
+ import '@swc/helpers/_/_apply_decs_2203_r';
9
16
  import 'node:path';
10
17
  import 'glob';
11
- import 'node:fs';
12
18
  import 'normalize-package-data';
13
19
  import 'semver';
14
20
  import 'moo';
15
21
  import 'node:child_process';
16
- import 'node:process';
17
22
  import 'chalk';
18
23
  import 'slugify';
19
- import 'yargs';
20
- import 'yargs/helpers';
21
- import 'path-scurry';
22
24
  import '@jujulego/quick-tag';
23
25
  import 'ajv';
24
26
  import 'node:os';
@@ -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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,MAAMA,OAAAA,GAAUC,KAAAA,CAAM,UAAWC,KAAmB,EAAA;AAClD,IAAA,MAAM,EAAEC,UAAU,EAAEC,OAAO,EAAEC,UAAU,EAAE,GAAGH,KAAAA;AAE5C,IAAA,oBACEI,GAAA,CAACC,GAAAA,EAAAA;AACGJ,QAAAA,QAAAA,EAAAA,UAAAA,CAAWK,GAAG,CAAC,CAACC,IAAAA,iBAChBC,IAAA,CAACH,GAAAA,EAAAA;gBAAeI,aAAAA,EAAc,QAAA;gBAASC,WAAAA,EAAa,CAAA;;AAChDR,oBAAAA,OAAAA,kBACAE,GAAA,CAACO,IAAAA,EAAAA;wBAAKC,IAAI,EAAA,IAAA;kCAAGC,UAAAA,CAAWN,IAAAA;;AAExBJ,oBAAAA,UAAAA,CAAWG,GAAG,CAAC,CAACQ,GAAAA,EAAKC,oBACrBX,GAAA,CAACO,IAAAA,EAAAA;sCAAiBG,GAAG,CAACP,KAAK,IAAI;AAApBQ,yBAAAA,EAAAA,GAAAA,CAAAA;;AALLR,aAAAA,EAAAA,IAAAA,CAAAA;;AAWlB,CAAA;;;;"}
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;;"}