@fnndsc/brasa 0.9.2 → 0.10.0
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/dist/buildinfo.json +1 -0
- package/dist/builtins/argumentTokens.d.ts +18 -0
- package/dist/builtins/argumentTokens.js +58 -0
- package/dist/builtins/argumentTokens.js.map +1 -0
- package/dist/builtins/executable.d.ts +3 -7
- package/dist/builtins/executable.js +32 -29
- package/dist/builtins/executable.js.map +1 -1
- package/dist/builtins/feedCreation.d.ts +23 -0
- package/dist/builtins/feedCreation.js +45 -0
- package/dist/builtins/feedCreation.js.map +1 -0
- package/dist/builtins/fs/cat.args.d.ts +36 -0
- package/dist/builtins/fs/cat.args.js +63 -0
- package/dist/builtins/fs/cat.args.js.map +1 -0
- package/dist/builtins/fs/cat.d.ts +2 -2
- package/dist/builtins/fs/cat.js +222 -101
- package/dist/builtins/fs/cat.js.map +1 -1
- package/dist/builtins/fs/cd.js +41 -5
- package/dist/builtins/fs/cd.js.map +1 -1
- package/dist/builtins/fs/cp.js +3 -2
- package/dist/builtins/fs/cp.js.map +1 -1
- package/dist/builtins/fs/download.d.ts +1 -1
- package/dist/builtins/fs/download.js +52 -13
- package/dist/builtins/fs/download.js.map +1 -1
- package/dist/builtins/fs/du.js +15 -1
- package/dist/builtins/fs/du.js.map +1 -1
- package/dist/builtins/fs/ls.js +10 -1
- package/dist/builtins/fs/ls.js.map +1 -1
- package/dist/builtins/fs/mv.js +7 -3
- package/dist/builtins/fs/mv.js.map +1 -1
- package/dist/builtins/fs/pull.args.d.ts +14 -1
- package/dist/builtins/fs/pull.args.js +72 -9
- package/dist/builtins/fs/pull.args.js.map +1 -1
- package/dist/builtins/fs/pull.d.ts +1 -0
- package/dist/builtins/fs/pull.js +191 -259
- package/dist/builtins/fs/pull.js.map +1 -1
- package/dist/builtins/fs/rm.js +4 -0
- package/dist/builtins/fs/rm.js.map +1 -1
- package/dist/builtins/fs/tree.js +7 -3
- package/dist/builtins/fs/tree.js.map +1 -1
- package/dist/builtins/fs/upload.js +29 -2
- package/dist/builtins/fs/upload.js.map +1 -1
- package/dist/builtins/help.d.ts +7 -0
- package/dist/builtins/help.js +144 -36
- package/dist/builtins/help.js.map +1 -1
- package/dist/builtins/index.d.ts +1 -0
- package/dist/builtins/index.js +1 -0
- package/dist/builtins/index.js.map +1 -1
- package/dist/builtins/net/pacs.d.ts +1 -0
- package/dist/builtins/net/pacs.js +5 -1
- package/dist/builtins/net/pacs.js.map +1 -1
- package/dist/builtins/net/pacsUtils.d.ts +5 -4
- package/dist/builtins/net/pacsUtils.js +12 -32
- package/dist/builtins/net/pacsUtils.js.map +1 -1
- package/dist/builtins/net/query.js +4 -1
- package/dist/builtins/net/query.js.map +1 -1
- package/dist/builtins/net/status.d.ts +14 -0
- package/dist/builtins/net/status.js +210 -0
- package/dist/builtins/net/status.js.map +1 -0
- package/dist/builtins/pluginExecute.d.ts +3 -2
- package/dist/builtins/pluginExecute.js +41 -70
- package/dist/builtins/pluginExecute.js.map +1 -1
- package/dist/builtins/pluginSelector.d.ts +15 -0
- package/dist/builtins/pluginSelector.js +21 -0
- package/dist/builtins/pluginSelector.js.map +1 -0
- package/dist/builtins/proc.js +106 -4
- package/dist/builtins/proc.js.map +1 -1
- package/dist/builtins/res/compute.js +8 -3
- package/dist/builtins/res/compute.js.map +1 -1
- package/dist/builtins/res/group.d.ts +1 -1
- package/dist/builtins/res/group.js +122 -5
- package/dist/builtins/res/group.js.map +1 -1
- package/dist/builtins/res/pipeline.args.d.ts +4 -0
- package/dist/builtins/res/pipeline.args.js +63 -12
- package/dist/builtins/res/pipeline.args.js.map +1 -1
- package/dist/builtins/res/pipeline.d.ts +3 -1
- package/dist/builtins/res/pipeline.js +155 -60
- package/dist/builtins/res/pipeline.js.map +1 -1
- package/dist/builtins/res/pipeline.manifest.d.ts +15 -0
- package/dist/builtins/res/pipeline.manifest.js +93 -0
- package/dist/builtins/res/pipeline.manifest.js.map +1 -0
- package/dist/builtins/res/plugin.js +14 -7
- package/dist/builtins/res/plugin.js.map +1 -1
- package/dist/builtins/res/user.d.ts +8 -0
- package/dist/builtins/res/user.js +87 -0
- package/dist/builtins/res/user.js.map +1 -0
- package/dist/builtins/store.js +24 -3
- package/dist/builtins/store.js.map +1 -1
- package/dist/builtins/sys/fortune.d.ts +9 -0
- package/dist/builtins/sys/fortune.js +16 -1
- package/dist/builtins/sys/fortune.js.map +1 -1
- package/dist/builtins/sys/whoami.d.ts +13 -1
- package/dist/builtins/sys/whoami.js +47 -2
- package/dist/builtins/sys/whoami.js.map +1 -1
- package/dist/builtins/utils.d.ts +14 -1
- package/dist/builtins/utils.js +13 -3
- package/dist/builtins/utils.js.map +1 -1
- package/dist/builtins/wildcard.d.ts +31 -0
- package/dist/builtins/wildcard.js +112 -50
- package/dist/builtins/wildcard.js.map +1 -1
- package/dist/command-keys.js +2 -1
- package/dist/command-keys.js.map +1 -1
- package/dist/core/cancellation.d.ts +28 -0
- package/dist/core/cancellation.js +70 -0
- package/dist/core/cancellation.js.map +1 -0
- package/dist/core/dispatch.d.ts +1 -8
- package/dist/core/dispatch.js +82 -82
- package/dist/core/dispatch.js.map +1 -1
- package/dist/core/elevation.d.ts +35 -0
- package/dist/core/elevation.js +77 -0
- package/dist/core/elevation.js.map +1 -0
- package/dist/core/engine.d.ts +12 -0
- package/dist/core/engine.js +35 -8
- package/dist/core/engine.js.map +1 -1
- package/dist/core/preprocess.d.ts +11 -4
- package/dist/core/preprocess.js +43 -10
- package/dist/core/preprocess.js.map +1 -1
- package/dist/core/progress.d.ts +15 -5
- package/dist/core/progress.js +14 -0
- package/dist/core/progress.js.map +1 -1
- package/dist/core/promptContext.d.ts +3 -5
- package/dist/core/promptContext.js +9 -2
- package/dist/core/promptContext.js.map +1 -1
- package/dist/core/sink.d.ts +9 -0
- package/dist/core/sink.js +23 -3
- package/dist/core/sink.js.map +1 -1
- package/dist/core/surface.d.ts +14 -0
- package/dist/core/surface.js +5 -0
- package/dist/core/surface.js.map +1 -1
- package/dist/core/version.d.ts +34 -0
- package/dist/core/version.js +51 -0
- package/dist/core/version.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/completer/index.js +39 -1
- package/dist/lib/completer/index.js.map +1 -1
- package/dist/lib/parser.d.ts +75 -2
- package/dist/lib/parser.js +158 -15
- package/dist/lib/parser.js.map +1 -1
- package/dist/lib/vfs/providers/binEntry.d.ts +20 -0
- package/dist/lib/vfs/providers/binEntry.js +47 -0
- package/dist/lib/vfs/providers/binEntry.js.map +1 -0
- package/dist/lib/vfs/providers/static.js +1 -0
- package/dist/lib/vfs/providers/static.js.map +1 -1
- package/dist/lib/vfs/providers/static_content.js +5 -36
- package/dist/lib/vfs/providers/static_content.js.map +1 -1
- package/dist/lib/vfs/vfs.d.ts +7 -0
- package/dist/lib/vfs/vfs.js +25 -0
- package/dist/lib/vfs/vfs.js.map +1 -1
- package/dist/session/index.d.ts +18 -0
- package/dist/session/index.js +29 -1
- package/dist/session/index.js.map +1 -1
- package/package.json +10 -5
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* @module
|
|
8
8
|
*/
|
|
9
9
|
import { session } from '../../session/index.js';
|
|
10
|
-
import { plugins_listAll, vfsDispatcher, context_getSingle } from '@fnndsc/salsa';
|
|
10
|
+
import { plugins_listAll, vfsDispatcher, context_getSingle, pipelineManifest_get, } from '@fnndsc/salsa';
|
|
11
11
|
import { partialPath_split, completions_build } from './pathComplete.helpers.js';
|
|
12
12
|
import { listCache_get } from '@fnndsc/cumin';
|
|
13
13
|
import * as path from 'path';
|
|
@@ -124,6 +124,44 @@ export function input_complete(line, callback) {
|
|
|
124
124
|
});
|
|
125
125
|
return;
|
|
126
126
|
}
|
|
127
|
+
const compoundWord = completionWord_get(line);
|
|
128
|
+
if (compoundWord.value.startsWith('--')) {
|
|
129
|
+
const pipelineSpecifier = args[0] === 'pipeline' && args[1] === 'run'
|
|
130
|
+
? args[2]
|
|
131
|
+
: args[0];
|
|
132
|
+
if (pipelineSpecifier !== undefined) {
|
|
133
|
+
pipelineManifest_get(pipelineSpecifier).then((result) => {
|
|
134
|
+
if (!result.ok) {
|
|
135
|
+
callback(null, [[], compoundWord.raw]);
|
|
136
|
+
return;
|
|
137
|
+
}
|
|
138
|
+
const executionFields = [
|
|
139
|
+
'compute_resource_name', 'cpu_limit', 'memory_limit', 'gpu_limit', 'number_of_workers',
|
|
140
|
+
];
|
|
141
|
+
const options = [];
|
|
142
|
+
const manifest = result.value;
|
|
143
|
+
for (const node of manifest.nodes) {
|
|
144
|
+
const titleUsable = /^[A-Za-z0-9_-]+$/.test(node.title) &&
|
|
145
|
+
manifest.nodes.filter((candidate) => candidate.title === node.title).length === 1;
|
|
146
|
+
const selectors = titleUsable ? [node.title, `@${node.pipingID}`] : [`@${node.pipingID}`];
|
|
147
|
+
const fields = [
|
|
148
|
+
...executionFields,
|
|
149
|
+
...(node.parameterDefinitions ?? [])
|
|
150
|
+
.filter((parameter) => parameter.name !== 'plugininstances')
|
|
151
|
+
.map((parameter) => parameter.name),
|
|
152
|
+
];
|
|
153
|
+
for (const field of fields) {
|
|
154
|
+
options.push(...selectors.map((selector) => `--${selector}.${field}`));
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
callback(null, [
|
|
158
|
+
options.filter((option) => option.startsWith(compoundWord.value)),
|
|
159
|
+
compoundWord.raw,
|
|
160
|
+
]);
|
|
161
|
+
}).catch(() => callback(null, [[], compoundWord.raw]));
|
|
162
|
+
return;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
127
165
|
// Case 2: Path Completion (Argument to specific commands)
|
|
128
166
|
const cmd = args[0];
|
|
129
167
|
if (['cd', 'ls', 'mkdir', 'touch', 'cat', 'edit', 'cp', 'mv', 'rm', 'upload', 'download', 'du', 'tree', 'pull', 'cubepath', 'query'].includes(cmd)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/completer/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/completer/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EACL,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,oBAAoB,GAGrB,MAAM,eAAe,CAAC;AAGvB,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAe7C,SAAS,kBAAkB,CAAC,IAAY;IACtC,IAAI,KAAK,GAAW,CAAC,CAAC;IACtB,IAAI,KAAK,GAAqB,IAAI,CAAC;IACnC,IAAI,UAAU,GAAY,KAAK,CAAC;IAEhC,KAAK,IAAI,KAAK,GAAW,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QACzD,MAAM,IAAI,GAAW,IAAI,CAAC,KAAK,CAAC,CAAC;QACjC,IAAI,UAAU,EAAE,CAAC;YACf,UAAU,GAAG,KAAK,CAAC;YACnB,SAAS;QACX,CAAC;QACD,IAAI,IAAI,KAAK,IAAI,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;YACnC,UAAU,GAAG,IAAI,CAAC;YAClB,SAAS;QACX,CAAC;QACD,IAAI,CAAC,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,KAAK,KAAK,IAAI,CAAC,EAAE,CAAC;YACjE,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;YAC5B,SAAS;QACX,CAAC;QACD,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9B,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IAED,MAAM,GAAG,GAAW,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC1C,MAAM,MAAM,GAAa,aAAa,CAAC,GAAG,CAAC,CAAC;IAC5C,MAAM,KAAK,GAAW,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACzD,MAAM,YAAY,GAChB,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/D,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;AAC7C,CAAC;AAED,SAAS,iBAAiB,CAAC,UAAkB,EAAE,IAAoB;IACjE,IAAI,IAAI,CAAC,KAAK,KAAK,GAAG,EAAE,CAAC;QACvB,OAAO,IAAI,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;IACjD,CAAC;IACD,IAAI,IAAI,CAAC,KAAK,KAAK,GAAG,EAAE,CAAC;QACvB,OAAO,IAAI,UAAU,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE,CAAC;IACtD,CAAC;IACD,OAAO,UAAU,CAAC,OAAO,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;AACpD,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,gBAAgB;IAC7B,IAAI,CAAC;QACH,6BAA6B;QAC7B,MAAM,SAAS,GAAG,aAAa,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,SAAS,CAAC,SAAS,CAAgB,MAAM,CAAC,CAAC;QAE1D,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YAC1B,yCAAyC;YACzC,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAiB,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3D,CAAC;QAED,6DAA6D;QAC7D,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,EAAE,CAAC,CAAC;QAC1C,IAAI,OAAO,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;YACjC,MAAM,WAAW,GAAa,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAA0B,EAAE,EAAE;gBACjF,MAAM,IAAI,GAAW,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;gBAChF,MAAM,OAAO,GAAW,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;gBAC5F,uDAAuD;gBACvD,OAAO,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YAChD,CAAC,CAAC,CAAC;YAEH,yBAAyB;YACzB,MAAM,OAAO,GAAkB,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAA0B,EAAE,EAAE;gBAClF,MAAM,IAAI,GAAW,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;gBAChF,MAAM,OAAO,GAAW,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;gBAC5F,OAAO;oBACL,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI;oBAC5C,IAAI,EAAE,QAAiB;oBACvB,IAAI,EAAE,CAAC;oBACP,KAAK,EAAE,QAAQ;oBACf,IAAI,EAAE,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE;iBACrD,CAAC;YACJ,CAAC,CAAC,CAAC;YACH,SAAS,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAErC,OAAO,WAAW,CAAC;QACrB,CAAC;IACH,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,6CAA6C;IAC/C,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,IAAY,EAAE,QAA2B;IACtE,MAAM,OAAO,GAAW,IAAI,CAAC,SAAS,EAAE,CAAC;IACzC,MAAM,IAAI,GAAa,aAAa,CAAC,OAAO,CAAC,CAAC;IAE9C,0CAA0C;IAC1C,2FAA2F;IAC3F,sBAAsB;IACtB,MAAM,mBAAmB,GAAY,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAErG,IAAI,mBAAmB,EAAE,CAAC;QACxB,2CAA2C;QAC3C,MAAM,WAAW,GAAa,oBAAoB,EAAE,CAAC,MAAM,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;QAElG,2CAA2C;QAC3C,gBAAgB,EAAE,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE;YACtC,MAAM,UAAU,GAAa,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;YAE9E,oCAAoC;YACpC,MAAM,OAAO,GAAa,CAAC,GAAG,WAAW,EAAE,GAAG,UAAU,CAAC,CAAC;YAC1D,QAAQ,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;YACZ,wCAAwC;YACxC,QAAQ,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IAED,MAAM,YAAY,GAAmB,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAC9D,IAAI,YAAY,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,MAAM,iBAAiB,GAAuB,IAAI,CAAC,CAAC,CAAC,KAAK,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,KAAK;YACvF,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YACT,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACZ,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;YACpC,oBAAoB,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;gBACtD,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;oBACf,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;oBACvC,OAAO;gBACT,CAAC;gBACD,MAAM,eAAe,GAAa;oBAChC,uBAAuB,EAAE,WAAW,EAAE,cAAc,EAAE,WAAW,EAAE,mBAAmB;iBACvF,CAAC;gBACF,MAAM,OAAO,GAAa,EAAE,CAAC;gBAC7B,MAAM,QAAQ,GAAqB,MAAM,CAAC,KAAyB,CAAC;gBACpE,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;oBAClC,MAAM,WAAW,GAAY,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;wBAC9D,QAAQ,CAAC,KAAK,CAAC,MAAM,CACnB,CAAC,SAA+B,EAAW,EAAE,CAAC,SAAS,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAC7E,CAAC,MAAM,KAAK,CAAC,CAAC;oBACjB,MAAM,SAAS,GAAa,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;oBACpG,MAAM,MAAM,GAAa;wBACvB,GAAG,eAAe;wBAClB,GAAG,CAAC,IAAI,CAAC,oBAAoB,IAAI,EAAE,CAAC;6BACjC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,iBAAiB,CAAC;6BAC3D,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC;qBACtC,CAAC;oBACF,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;wBAC3B,OAAO,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,QAAgB,EAAU,EAAE,CAAC,KAAK,QAAQ,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC;oBACzF,CAAC;gBACH,CAAC;gBACD,QAAQ,CAAC,IAAI,EAAE;oBACb,OAAO,CAAC,MAAM,CAAC,CAAC,MAAc,EAAW,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;oBAClF,YAAY,CAAC,GAAG;iBACjB,CAAC,CAAC;YACL,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACvD,OAAO;QACT,CAAC;IACH,CAAC;IAED,0DAA0D;IAC1D,MAAM,GAAG,GAAW,IAAI,CAAC,CAAC,CAAC,CAAC;IAC5B,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACnJ,MAAM,IAAI,GAAmB,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAEtD,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;YACvC,QAAQ,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAa,EAAE,EAAE,CAAC,iBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC/F,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACb,gDAAgD;YAChD,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IAED,yBAAyB;IACzB,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;AAC7B,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,aAAa,CAAC,OAAe;IAC1C,kDAAkD;IAClD,IAAI,gBAAgB,GAAW,OAAO,CAAC;IAEvC,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAkB,MAAM,iBAAiB,EAAE,CAAC;QACzD,MAAM,IAAI,GAAkB,OAAO,CAAC,IAAI,CAAC;QACzC,MAAM,IAAI,GAAW,IAAI,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QAClD,IAAI,OAAO,KAAK,GAAG,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACxC,gBAAgB,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC/D,CAAC;aAAM,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACpC,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAED,wDAAwD;IACxD,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;IAElE,uCAAuC;IACvC,IAAI,YAAoB,CAAC;IACzB,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9B,YAAY,GAAG,SAAS,CAAC;IAC3B,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,GAAW,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC;QAC3C,YAAY,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IACtE,CAAC;IAED,wCAAwC;IACxC,IAAI,KAAK,GAAkB,EAAE,CAAC;IAC9B,MAAM,SAAS,GAAG,aAAa,EAAE,CAAC;IAElC,oBAAoB;IACpB,MAAM,MAAM,GAAG,SAAS,CAAC,SAAS,CAAgB,YAAY,CAAC,CAAC;IAChE,IAAI,MAAM,EAAE,CAAC;QACX,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC;IACtB,CAAC;SAAM,CAAC;QACN,IAAI,CAAC;YACH,2EAA2E;YAC3E,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACzD,IAAI,SAAS,CAAC,EAAE,EAAE,CAAC;gBACjB,KAAK,GAAG,SAAS,CAAC,KAAiC,CAAC;YACtD,CAAC;YAED,gDAAgD;YAChD,IAAI,YAAY,KAAK,GAAG,IAAI,YAAY,KAAK,EAAE,EAAE,CAAC;gBAChD,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAc,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;gBAClF,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;oBACpB,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;gBACnG,CAAC;gBACD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;oBACpB,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;gBACnG,CAAC;gBACD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;oBACrB,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;gBACpG,CAAC;YACH,CAAC;YAED,oBAAoB;YACpB,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrB,SAAS,CAAC,SAAS,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;YAC3C,CAAC;QACH,CAAC;QAAC,OAAO,CAAU,EAAE,CAAC;YACpB,yCAAyC;QAC3C,CAAC;IACH,CAAC;IAED,wEAAwE;IACxE,gEAAgE;IAChE,OAAO,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AACnD,CAAC"}
|
package/dist/lib/parser.d.ts
CHANGED
|
@@ -1,9 +1,82 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @file Command line argument tokenizer.
|
|
3
3
|
*
|
|
4
|
-
* Splits a command line into
|
|
5
|
-
*
|
|
4
|
+
* Splits a command line into words while respecting single/double quotes and
|
|
5
|
+
* backslash escapes. Quotes are stripped from rendered values, but their
|
|
6
|
+
* pathname-expansion meaning is retained.
|
|
6
7
|
*/
|
|
8
|
+
/** A rendered shell word and the glob pattern it may contribute. */
|
|
9
|
+
export interface ShellWord {
|
|
10
|
+
value: string;
|
|
11
|
+
globPattern: string;
|
|
12
|
+
pathnameExpansion: boolean;
|
|
13
|
+
pathnameExpanded: boolean;
|
|
14
|
+
}
|
|
15
|
+
/** String arguments with per-operand pathname-expansion provenance. */
|
|
16
|
+
export type ShellArguments = string[] & {
|
|
17
|
+
pathnameExpanded?: readonly boolean[];
|
|
18
|
+
pathnameExpansion?: readonly boolean[];
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* Creates a shell word from a literal value.
|
|
22
|
+
*
|
|
23
|
+
* @param value - Rendered word value.
|
|
24
|
+
* @returns A word that cannot trigger pathname expansion.
|
|
25
|
+
*/
|
|
26
|
+
export declare function shellWord_literal(value: string): ShellWord;
|
|
27
|
+
/**
|
|
28
|
+
* Creates an unquoted shell word from a compatibility string value.
|
|
29
|
+
*
|
|
30
|
+
* @param value - Rendered word value.
|
|
31
|
+
* @returns A word whose wildcard syntax is eligible for pathname expansion.
|
|
32
|
+
*/
|
|
33
|
+
export declare function shellWord_unquoted(value: string): ShellWord;
|
|
34
|
+
/**
|
|
35
|
+
* Converts shell words to compatibility string arguments.
|
|
36
|
+
*
|
|
37
|
+
* @param words - Parsed or expanded shell words.
|
|
38
|
+
* @returns String arguments annotated with expansion provenance.
|
|
39
|
+
*/
|
|
40
|
+
export declare function shellWords_values(words: readonly ShellWord[]): ShellArguments;
|
|
41
|
+
/**
|
|
42
|
+
* Checks whether one compatibility argument was produced by pathname expansion.
|
|
43
|
+
*
|
|
44
|
+
* @param args - String arguments created by {@link shellWords_values}.
|
|
45
|
+
* @param index - Argument position to inspect.
|
|
46
|
+
* @returns True when the argument was produced by pathname expansion.
|
|
47
|
+
*/
|
|
48
|
+
export declare function shellArguments_pathnameExpanded(args: readonly string[], index: number): boolean;
|
|
49
|
+
/**
|
|
50
|
+
* Checks whether one compatibility argument contained unquoted wildcard syntax.
|
|
51
|
+
*
|
|
52
|
+
* @param args - String arguments created by {@link shellWords_values}.
|
|
53
|
+
* @param index - Argument position to inspect.
|
|
54
|
+
* @returns True when the source word allowed pathname expansion.
|
|
55
|
+
*/
|
|
56
|
+
export declare function shellArguments_pathnameExpansion(args: readonly string[], index: number): boolean;
|
|
57
|
+
/**
|
|
58
|
+
* Applies environment substitution without discarding shell-word provenance.
|
|
59
|
+
*
|
|
60
|
+
* @param args - Compatibility arguments with pathname metadata.
|
|
61
|
+
* @param expand - Per-token environment substitution function.
|
|
62
|
+
* @returns Substituted arguments retaining the original pathname metadata.
|
|
63
|
+
*/
|
|
64
|
+
export declare function shellArguments_envRefsExpand(args: readonly string[], expand: (value: string) => string): ShellArguments;
|
|
65
|
+
/**
|
|
66
|
+
* Slices compatibility arguments while rebasing pathname metadata.
|
|
67
|
+
*
|
|
68
|
+
* @param args - Compatibility arguments with pathname metadata.
|
|
69
|
+
* @param start - Inclusive offset of the first returned argument.
|
|
70
|
+
* @returns The sliced arguments with matching provenance entries.
|
|
71
|
+
*/
|
|
72
|
+
export declare function shellArguments_slice(args: readonly string[], start: number): ShellArguments;
|
|
73
|
+
/**
|
|
74
|
+
* Tokenizes a line while preserving quote and escape provenance for globbing.
|
|
75
|
+
*
|
|
76
|
+
* @param line - Raw command line input.
|
|
77
|
+
* @returns Parsed shell words with rendered and glob-pattern representations.
|
|
78
|
+
*/
|
|
79
|
+
export declare function shellWords_tokenize(line: string): ShellWord[];
|
|
7
80
|
/**
|
|
8
81
|
* Tokenizes a command line preserving quoted segments with spaces.
|
|
9
82
|
*
|
package/dist/lib/parser.js
CHANGED
|
@@ -1,52 +1,195 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @file Command line argument tokenizer.
|
|
3
3
|
*
|
|
4
|
-
* Splits a command line into
|
|
5
|
-
*
|
|
4
|
+
* Splits a command line into words while respecting single/double quotes and
|
|
5
|
+
* backslash escapes. Quotes are stripped from rendered values, but their
|
|
6
|
+
* pathname-expansion meaning is retained.
|
|
6
7
|
*/
|
|
8
|
+
/** Escapes wildcard metacharacters for literal minimatch use. */
|
|
9
|
+
function globLiteral_escape(value) {
|
|
10
|
+
return value.replace(/[\\*?\[\]]/g, '\\$&');
|
|
11
|
+
}
|
|
7
12
|
/**
|
|
8
|
-
*
|
|
13
|
+
* Creates a shell word from a literal value.
|
|
14
|
+
*
|
|
15
|
+
* @param value - Rendered word value.
|
|
16
|
+
* @returns A word that cannot trigger pathname expansion.
|
|
17
|
+
*/
|
|
18
|
+
export function shellWord_literal(value) {
|
|
19
|
+
return {
|
|
20
|
+
value,
|
|
21
|
+
globPattern: globLiteral_escape(value),
|
|
22
|
+
pathnameExpansion: false,
|
|
23
|
+
pathnameExpanded: false,
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Creates an unquoted shell word from a compatibility string value.
|
|
28
|
+
*
|
|
29
|
+
* @param value - Rendered word value.
|
|
30
|
+
* @returns A word whose wildcard syntax is eligible for pathname expansion.
|
|
31
|
+
*/
|
|
32
|
+
export function shellWord_unquoted(value) {
|
|
33
|
+
return {
|
|
34
|
+
value,
|
|
35
|
+
globPattern: value,
|
|
36
|
+
pathnameExpansion: /[*?[\]]/.test(value),
|
|
37
|
+
pathnameExpanded: false,
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Converts shell words to compatibility string arguments.
|
|
42
|
+
*
|
|
43
|
+
* @param words - Parsed or expanded shell words.
|
|
44
|
+
* @returns String arguments annotated with expansion provenance.
|
|
45
|
+
*/
|
|
46
|
+
export function shellWords_values(words) {
|
|
47
|
+
const values = words.map((word) => word.value);
|
|
48
|
+
Object.defineProperty(values, 'pathnameExpanded', {
|
|
49
|
+
value: words.map((word) => word.pathnameExpanded),
|
|
50
|
+
enumerable: false,
|
|
51
|
+
});
|
|
52
|
+
Object.defineProperty(values, 'pathnameExpansion', {
|
|
53
|
+
value: words.map((word) => word.pathnameExpansion),
|
|
54
|
+
enumerable: false,
|
|
55
|
+
});
|
|
56
|
+
return values;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Checks whether one compatibility argument was produced by pathname expansion.
|
|
60
|
+
*
|
|
61
|
+
* @param args - String arguments created by {@link shellWords_values}.
|
|
62
|
+
* @param index - Argument position to inspect.
|
|
63
|
+
* @returns True when the argument was produced by pathname expansion.
|
|
64
|
+
*/
|
|
65
|
+
export function shellArguments_pathnameExpanded(args, index) {
|
|
66
|
+
const expanded = args.pathnameExpanded;
|
|
67
|
+
return expanded?.[index] === true;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Checks whether one compatibility argument contained unquoted wildcard syntax.
|
|
71
|
+
*
|
|
72
|
+
* @param args - String arguments created by {@link shellWords_values}.
|
|
73
|
+
* @param index - Argument position to inspect.
|
|
74
|
+
* @returns True when the source word allowed pathname expansion.
|
|
75
|
+
*/
|
|
76
|
+
export function shellArguments_pathnameExpansion(args, index) {
|
|
77
|
+
const expansion = args.pathnameExpansion;
|
|
78
|
+
return expansion?.[index] === true;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Applies environment substitution without discarding shell-word provenance.
|
|
82
|
+
*
|
|
83
|
+
* @param args - Compatibility arguments with pathname metadata.
|
|
84
|
+
* @param expand - Per-token environment substitution function.
|
|
85
|
+
* @returns Substituted arguments retaining the original pathname metadata.
|
|
86
|
+
*/
|
|
87
|
+
export function shellArguments_envRefsExpand(args, expand) {
|
|
88
|
+
const values = args.map(expand);
|
|
89
|
+
const source = args;
|
|
90
|
+
Object.defineProperty(values, 'pathnameExpanded', {
|
|
91
|
+
value: source.pathnameExpanded,
|
|
92
|
+
enumerable: false,
|
|
93
|
+
});
|
|
94
|
+
Object.defineProperty(values, 'pathnameExpansion', {
|
|
95
|
+
value: source.pathnameExpansion,
|
|
96
|
+
enumerable: false,
|
|
97
|
+
});
|
|
98
|
+
return values;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Slices compatibility arguments while rebasing pathname metadata.
|
|
102
|
+
*
|
|
103
|
+
* @param args - Compatibility arguments with pathname metadata.
|
|
104
|
+
* @param start - Inclusive offset of the first returned argument.
|
|
105
|
+
* @returns The sliced arguments with matching provenance entries.
|
|
106
|
+
*/
|
|
107
|
+
export function shellArguments_slice(args, start) {
|
|
108
|
+
const source = args;
|
|
109
|
+
const values = args.slice(start);
|
|
110
|
+
Object.defineProperty(values, 'pathnameExpanded', {
|
|
111
|
+
value: source.pathnameExpanded?.slice(start),
|
|
112
|
+
enumerable: false,
|
|
113
|
+
});
|
|
114
|
+
Object.defineProperty(values, 'pathnameExpansion', {
|
|
115
|
+
value: source.pathnameExpansion?.slice(start),
|
|
116
|
+
enumerable: false,
|
|
117
|
+
});
|
|
118
|
+
return values;
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Tokenizes a line while preserving quote and escape provenance for globbing.
|
|
9
122
|
*
|
|
10
123
|
* @param line - Raw command line input.
|
|
11
|
-
* @returns
|
|
124
|
+
* @returns Parsed shell words with rendered and glob-pattern representations.
|
|
12
125
|
*/
|
|
13
|
-
export function
|
|
126
|
+
export function shellWords_tokenize(line) {
|
|
14
127
|
const tokens = [];
|
|
15
|
-
let
|
|
128
|
+
let currentValue = '';
|
|
129
|
+
let currentPattern = '';
|
|
130
|
+
let pathnameExpansion = false;
|
|
131
|
+
let wordStarted = false;
|
|
16
132
|
let inSingle = false;
|
|
17
133
|
let inDouble = false;
|
|
18
134
|
let escapeNext = false;
|
|
135
|
+
const character_append = (char, literal) => {
|
|
136
|
+
currentValue += char;
|
|
137
|
+
currentPattern += literal ? globLiteral_escape(char) : char;
|
|
138
|
+
pathnameExpansion ||= !literal && /[*?[\]]/.test(char);
|
|
139
|
+
wordStarted = true;
|
|
140
|
+
};
|
|
141
|
+
const word_pushCurrent = () => {
|
|
142
|
+
if (!wordStarted)
|
|
143
|
+
return;
|
|
144
|
+
tokens.push({
|
|
145
|
+
value: currentValue,
|
|
146
|
+
globPattern: currentPattern,
|
|
147
|
+
pathnameExpansion,
|
|
148
|
+
pathnameExpanded: false,
|
|
149
|
+
});
|
|
150
|
+
currentValue = '';
|
|
151
|
+
currentPattern = '';
|
|
152
|
+
pathnameExpansion = false;
|
|
153
|
+
wordStarted = false;
|
|
154
|
+
};
|
|
19
155
|
for (let i = 0; i < line.length; i++) {
|
|
20
156
|
const char = line[i];
|
|
21
157
|
if (escapeNext) {
|
|
22
|
-
|
|
158
|
+
character_append(char, true);
|
|
23
159
|
escapeNext = false;
|
|
24
160
|
continue;
|
|
25
161
|
}
|
|
26
162
|
if (char === '\\') {
|
|
27
163
|
escapeNext = true;
|
|
164
|
+
wordStarted = true;
|
|
28
165
|
continue;
|
|
29
166
|
}
|
|
30
167
|
if (char === "'" && !inDouble) {
|
|
31
168
|
inSingle = !inSingle;
|
|
169
|
+
wordStarted = true;
|
|
32
170
|
continue;
|
|
33
171
|
}
|
|
34
172
|
if (char === '"' && !inSingle) {
|
|
35
173
|
inDouble = !inDouble;
|
|
174
|
+
wordStarted = true;
|
|
36
175
|
continue;
|
|
37
176
|
}
|
|
38
177
|
if (!inSingle && !inDouble && /\s/.test(char)) {
|
|
39
|
-
|
|
40
|
-
tokens.push(current);
|
|
41
|
-
current = '';
|
|
42
|
-
}
|
|
178
|
+
word_pushCurrent();
|
|
43
179
|
continue;
|
|
44
180
|
}
|
|
45
|
-
|
|
46
|
-
}
|
|
47
|
-
if (current.length > 0) {
|
|
48
|
-
tokens.push(current);
|
|
181
|
+
character_append(char, inSingle || inDouble);
|
|
49
182
|
}
|
|
183
|
+
word_pushCurrent();
|
|
50
184
|
return tokens;
|
|
51
185
|
}
|
|
186
|
+
/**
|
|
187
|
+
* Tokenizes a command line preserving quoted segments with spaces.
|
|
188
|
+
*
|
|
189
|
+
* @param line - Raw command line input.
|
|
190
|
+
* @returns Array of tokens with quotes removed.
|
|
191
|
+
*/
|
|
192
|
+
export function args_tokenize(line) {
|
|
193
|
+
return shellWords_tokenize(line).map((word) => word.value);
|
|
194
|
+
}
|
|
52
195
|
//# sourceMappingURL=parser.js.map
|
package/dist/lib/parser.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/lib/parser.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/lib/parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/** Shallow identity and discovery information for one Pipeline executable. */
|
|
2
|
+
export interface BinPipelineSummary {
|
|
3
|
+
command: string;
|
|
4
|
+
pipelineID: number;
|
|
5
|
+
name?: string;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Resolve a Pipeline executable from cached `/bin` identity only.
|
|
9
|
+
*
|
|
10
|
+
* @param commandName - Exact dynamic `/bin` entry basename.
|
|
11
|
+
* @returns A shallow summary, or null when the name is known not to be a Pipeline.
|
|
12
|
+
*/
|
|
13
|
+
export declare function binPipelineSummary_try(commandName: string): BinPipelineSummary | null;
|
|
14
|
+
/**
|
|
15
|
+
* Serialize a shallow Pipeline executable summary.
|
|
16
|
+
*
|
|
17
|
+
* @param summary - Cache-only Pipeline identity and discovery information.
|
|
18
|
+
* @returns Stable YAML directing callers to the explicit manifest command.
|
|
19
|
+
*/
|
|
20
|
+
export declare function binPipelineSummary_render(summary: BinPipelineSummary): string;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file Cache-only summaries for registered Pipeline executables in `/bin`.
|
|
3
|
+
*
|
|
4
|
+
* Reading an executable entry must not hydrate its registered invocation
|
|
5
|
+
* manifest. This module uses the warm `/bin` listing when available and falls
|
|
6
|
+
* back to the stable `_id<N>` suffix, without making a CUBE request.
|
|
7
|
+
*
|
|
8
|
+
* @module
|
|
9
|
+
*/
|
|
10
|
+
import { listCache_get } from '@fnndsc/cumin';
|
|
11
|
+
import { dump as yamlDump } from 'js-yaml';
|
|
12
|
+
/**
|
|
13
|
+
* Resolve a Pipeline executable from cached `/bin` identity only.
|
|
14
|
+
*
|
|
15
|
+
* @param commandName - Exact dynamic `/bin` entry basename.
|
|
16
|
+
* @returns A shallow summary, or null when the name is known not to be a Pipeline.
|
|
17
|
+
*/
|
|
18
|
+
export function binPipelineSummary_try(commandName) {
|
|
19
|
+
const idMatch = commandName.match(/_id(\d+)$/);
|
|
20
|
+
if (idMatch === null)
|
|
21
|
+
return null;
|
|
22
|
+
const cached = listCache_get().cache_get('/bin');
|
|
23
|
+
const entry = cached?.data.find((candidate) => candidate.type === 'pipeline' && candidate.name === commandName);
|
|
24
|
+
if (cached !== null && entry === undefined)
|
|
25
|
+
return null;
|
|
26
|
+
return {
|
|
27
|
+
command: commandName,
|
|
28
|
+
pipelineID: entry?.id ?? Number(idMatch[1]),
|
|
29
|
+
name: entry?.title,
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Serialize a shallow Pipeline executable summary.
|
|
34
|
+
*
|
|
35
|
+
* @param summary - Cache-only Pipeline identity and discovery information.
|
|
36
|
+
* @returns Stable YAML directing callers to the explicit manifest command.
|
|
37
|
+
*/
|
|
38
|
+
export function binPipelineSummary_render(summary) {
|
|
39
|
+
return yamlDump({
|
|
40
|
+
kind: 'pipeline',
|
|
41
|
+
pipeline_id: summary.pipelineID,
|
|
42
|
+
...(summary.name === undefined ? {} : { name: summary.name }),
|
|
43
|
+
command: summary.command,
|
|
44
|
+
manifest: `pipeline manifest ${summary.command}`,
|
|
45
|
+
}, { noRefs: true, lineWidth: -1 });
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=binEntry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"binEntry.js","sourceRoot":"","sources":["../../../../src/lib/vfs/providers/binEntry.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,OAAO,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,SAAS,CAAC;AAW3C;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CAAC,WAAmB;IACxD,MAAM,OAAO,GAA4B,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IACxE,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAElC,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC,SAAS,CAAmB,MAAM,CAAC,CAAC;IACnE,MAAM,KAAK,GAA+B,MAAM,EAAE,IAAI,CAAC,IAAI,CACzD,CAAC,SAAyB,EAAW,EAAE,CACrC,SAAS,CAAC,IAAI,KAAK,UAAU,IAAI,SAAS,CAAC,IAAI,KAAK,WAAW,CAClE,CAAC;IACF,IAAI,MAAM,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAExD,OAAO;QACL,OAAO,EAAE,WAAW;QACpB,UAAU,EAAE,KAAK,EAAE,EAAE,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3C,IAAI,EAAE,KAAK,EAAE,KAAK;KACnB,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,yBAAyB,CAAC,OAA2B;IACnE,OAAO,QAAQ,CAAC;QACd,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,OAAO,CAAC,UAAU;QAC/B,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;QAC7D,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,QAAQ,EAAE,qBAAqB,OAAO,CAAC,OAAO,EAAE;KACjD,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;AACtC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"static.js","sourceRoot":"","sources":["../../../../src/lib/vfs/providers/static.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"static.js","sourceRoot":"","sources":["../../../../src/lib/vfs/providers/static.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,11 +6,11 @@
|
|
|
6
6
|
*
|
|
7
7
|
* @module
|
|
8
8
|
*/
|
|
9
|
-
import { Ok, Err, errorStack
|
|
9
|
+
import { Ok, Err, errorStack } from '@fnndsc/cumin';
|
|
10
10
|
import { commandHelp_get } from '../../../builtins/help.js';
|
|
11
|
-
import { pipeline_sourceGet } from '@fnndsc/salsa';
|
|
12
11
|
import chalk from 'chalk';
|
|
13
12
|
import { session } from '../../../session/index.js';
|
|
13
|
+
import { binPipelineSummary_render, binPipelineSummary_try, } from './binEntry.js';
|
|
14
14
|
/**
|
|
15
15
|
* Formats a plugin parameter list into a beautifully aligned text manual.
|
|
16
16
|
*
|
|
@@ -70,34 +70,6 @@ function pluginParameters_render(plugin, parameters, command) {
|
|
|
70
70
|
lines.push('');
|
|
71
71
|
return lines.join('\n');
|
|
72
72
|
}
|
|
73
|
-
/**
|
|
74
|
-
* Renders a brief info block for a pipeline that has no registered YAML source.
|
|
75
|
-
*
|
|
76
|
-
* @param pipeline - The resolved PipelineRecord.
|
|
77
|
-
* @returns Formatted summary string.
|
|
78
|
-
*/
|
|
79
|
-
function pipelineSummary_render(pipeline) {
|
|
80
|
-
const lines = [];
|
|
81
|
-
lines.push('');
|
|
82
|
-
lines.push(chalk.bold.magenta(pipeline.name));
|
|
83
|
-
lines.push(chalk.gray('─'.repeat(74)));
|
|
84
|
-
lines.push(`${chalk.bold.blue('ID:')} ${pipeline.id}`);
|
|
85
|
-
if (pipeline.authors)
|
|
86
|
-
lines.push(`${chalk.bold.blue('Authors:')} ${pipeline.authors}`);
|
|
87
|
-
if (pipeline.category)
|
|
88
|
-
lines.push(`${chalk.bold.blue('Category:')} ${pipeline.category}`);
|
|
89
|
-
if (pipeline.locked !== undefined)
|
|
90
|
-
lines.push(`${chalk.bold.blue('Locked:')} ${pipeline.locked}`);
|
|
91
|
-
if (pipeline.description) {
|
|
92
|
-
lines.push('');
|
|
93
|
-
lines.push(chalk.bold.blue('DESCRIPTION'));
|
|
94
|
-
lines.push(` ${pipeline.description}`);
|
|
95
|
-
}
|
|
96
|
-
lines.push('');
|
|
97
|
-
lines.push(chalk.dim('No YAML source registered. Use `pipeline info <name>` for full DAG details.'));
|
|
98
|
-
lines.push('');
|
|
99
|
-
return lines.join('\n');
|
|
100
|
-
}
|
|
101
73
|
/**
|
|
102
74
|
* Reads virtual file content under command and builtin static paths.
|
|
103
75
|
*
|
|
@@ -124,14 +96,11 @@ export async function staticVfs_read(pathStr, prefix) {
|
|
|
124
96
|
}
|
|
125
97
|
if (prefix === "/bin") {
|
|
126
98
|
const commandName = effectivePath.substring("/bin/".length);
|
|
99
|
+
const pipelineSummary = binPipelineSummary_try(commandName);
|
|
100
|
+
if (pipelineSummary !== null)
|
|
101
|
+
return Ok(binPipelineSummary_render(pipelineSummary));
|
|
127
102
|
const versionSeparatorIndex = commandName.lastIndexOf('-v');
|
|
128
103
|
if (versionSeparatorIndex === -1) {
|
|
129
|
-
const yamlResult = await pipeline_sourceGet(commandName);
|
|
130
|
-
if (yamlResult.ok)
|
|
131
|
-
return Ok(yamlResult.value);
|
|
132
|
-
const resolveResult = await pipeline_resolve(commandName);
|
|
133
|
-
if (resolveResult.ok)
|
|
134
|
-
return Ok(pipelineSummary_render(resolveResult.value));
|
|
135
104
|
errorStack.stack_push("error", `Unknown /bin entry: ${commandName}`);
|
|
136
105
|
return Err();
|
|
137
106
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"static_content.js","sourceRoot":"","sources":["../../../../src/lib/vfs/providers/static_content.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAU,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"static_content.js","sourceRoot":"","sources":["../../../../src/lib/vfs/providers/static_content.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/vfs/vfs.d.ts
CHANGED
|
@@ -26,6 +26,13 @@ export declare class VFS {
|
|
|
26
26
|
* @param options - Sort options forwarded to the parent listing.
|
|
27
27
|
*/
|
|
28
28
|
private directoryEntry_get;
|
|
29
|
+
/**
|
|
30
|
+
* Finds a non-directory target in its cached parent listing.
|
|
31
|
+
*
|
|
32
|
+
* @param absolutePath - Absolute path whose parent was previously listed.
|
|
33
|
+
* @returns The matching leaf item, or null when absent or directory-like.
|
|
34
|
+
*/
|
|
35
|
+
private leafFromParentCache_get;
|
|
29
36
|
/**
|
|
30
37
|
* List contents of a directory (Virtual or Native).
|
|
31
38
|
* Convenience method that fetches data and renders it.
|