@fnndsc/brasa 0.33.4 → 0.35.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/api/models.d.ts +1 -2
- package/dist/api/models.js.map +1 -1
- package/dist/buildinfo.json +1 -1
- package/dist/builtins/debug.d.ts +1 -1
- package/dist/builtins/debug.js +12 -8
- package/dist/builtins/debug.js.map +1 -1
- package/dist/builtins/executable.d.ts +1 -1
- package/dist/builtins/executable.js +2 -1
- package/dist/builtins/executable.js.map +1 -1
- package/dist/builtins/fs/acl.d.ts +1 -16
- package/dist/builtins/fs/acl.js +3 -1
- package/dist/builtins/fs/acl.js.map +1 -1
- package/dist/builtins/fs/archive.js +1 -1
- package/dist/builtins/fs/archive.js.map +1 -1
- package/dist/builtins/fs/cat.d.ts +1 -1
- package/dist/builtins/fs/cat.js +47 -7
- package/dist/builtins/fs/cat.js.map +1 -1
- package/dist/builtins/fs/cd.d.ts +1 -19
- package/dist/builtins/fs/cd.js +45 -94
- package/dist/builtins/fs/cd.js.map +1 -1
- package/dist/builtins/fs/configWrite.d.ts +1 -1
- package/dist/builtins/fs/configWrite.js +1 -1
- package/dist/builtins/fs/configWrite.js.map +1 -1
- package/dist/builtins/fs/cp.d.ts +1 -1
- package/dist/builtins/fs/cp.js +19 -13
- package/dist/builtins/fs/cp.js.map +1 -1
- package/dist/builtins/fs/download.d.ts +1 -1
- package/dist/builtins/fs/download.js +2 -1
- package/dist/builtins/fs/download.js.map +1 -1
- package/dist/builtins/fs/du.d.ts +10 -1
- package/dist/builtins/fs/du.js +36 -2
- package/dist/builtins/fs/du.js.map +1 -1
- package/dist/builtins/fs/edit.d.ts +1 -1
- package/dist/builtins/fs/edit.js +10 -4
- package/dist/builtins/fs/edit.js.map +1 -1
- package/dist/builtins/fs/entries.d.ts +43 -0
- package/dist/builtins/fs/entries.js +81 -0
- package/dist/builtins/fs/entries.js.map +1 -0
- package/dist/builtins/fs/ls.d.ts +1 -2
- package/dist/builtins/fs/ls.js +70 -10
- package/dist/builtins/fs/ls.js.map +1 -1
- package/dist/builtins/fs/mkdir.d.ts +1 -1
- package/dist/builtins/fs/mkdir.js +29 -20
- package/dist/builtins/fs/mkdir.js.map +1 -1
- package/dist/builtins/fs/mv.d.ts +1 -1
- package/dist/builtins/fs/mv.js +40 -23
- package/dist/builtins/fs/mv.js.map +1 -1
- package/dist/builtins/fs/pull.d.ts +1 -1
- package/dist/builtins/fs/pull.js +2 -1
- package/dist/builtins/fs/pull.js.map +1 -1
- package/dist/builtins/fs/pwd.d.ts +1 -1
- package/dist/builtins/fs/pwd.js +9 -45
- package/dist/builtins/fs/pwd.js.map +1 -1
- package/dist/builtins/fs/rm.d.ts +1 -22
- package/dist/builtins/fs/rm.js +33 -58
- package/dist/builtins/fs/rm.js.map +1 -1
- package/dist/builtins/fs/rmdir.d.ts +1 -1
- package/dist/builtins/fs/rmdir.js +21 -40
- package/dist/builtins/fs/rmdir.js.map +1 -1
- package/dist/builtins/fs/touch.d.ts +1 -1
- package/dist/builtins/fs/touch.js +64 -25
- package/dist/builtins/fs/touch.js.map +1 -1
- package/dist/builtins/fs/tree.d.ts +1 -1
- package/dist/builtins/fs/tree.js +26 -3
- package/dist/builtins/fs/tree.js.map +1 -1
- package/dist/builtins/fs/upload.d.ts +1 -1
- package/dist/builtins/fs/upload.js +3 -1
- package/dist/builtins/fs/upload.js.map +1 -1
- package/dist/builtins/fs/xattr.d.ts +1 -10
- package/dist/builtins/fs/xattr.js +3 -1
- package/dist/builtins/fs/xattr.js.map +1 -1
- package/dist/builtins/games/bytes.d.ts +1 -1
- package/dist/builtins/games/bytes.js +2 -1
- package/dist/builtins/games/bytes.js.map +1 -1
- package/dist/builtins/games/chimes.d.ts +1 -13
- package/dist/builtins/games/chimes.js +1 -1
- package/dist/builtins/games/chimes.js.map +1 -1
- package/dist/builtins/games/chrislab.d.ts +33 -0
- package/dist/builtins/games/chrislab.js +117 -0
- package/dist/builtins/games/chrislab.js.map +1 -0
- package/dist/builtins/games/cowsay.d.ts +1 -11
- package/dist/builtins/games/cowsay.js +1 -1
- package/dist/builtins/games/cowsay.js.map +1 -1
- package/dist/builtins/games/figlet.d.ts +1 -11
- package/dist/builtins/games/figlet.js +1 -1
- package/dist/builtins/games/figlet.js.map +1 -1
- package/dist/builtins/games/lab.d.ts +1 -43
- package/dist/builtins/games/lab.js +7 -111
- package/dist/builtins/games/lab.js.map +1 -1
- package/dist/builtins/games/lolcat.d.ts +1 -11
- package/dist/builtins/games/lolcat.js +1 -1
- package/dist/builtins/games/lolcat.js.map +1 -1
- package/dist/builtins/games/morse.d.ts +1 -10
- package/dist/builtins/games/morse.js +1 -1
- package/dist/builtins/games/morse.js.map +1 -1
- package/dist/builtins/games/numbers.d.ts +1 -10
- package/dist/builtins/games/numbers.js +1 -1
- package/dist/builtins/games/numbers.js.map +1 -1
- package/dist/builtins/games/play.d.ts +1 -11
- package/dist/builtins/games/play.js +1 -1
- package/dist/builtins/games/play.js.map +1 -1
- package/dist/builtins/games/qr.d.ts +1 -12
- package/dist/builtins/games/qr.js +1 -1
- package/dist/builtins/games/qr.js.map +1 -1
- package/dist/builtins/games/show.d.ts +1 -12
- package/dist/builtins/games/show.js +1 -1
- package/dist/builtins/games/show.js.map +1 -1
- package/dist/builtins/games/sky.d.ts +1 -11
- package/dist/builtins/games/sky.js +1 -1
- package/dist/builtins/games/sky.js.map +1 -1
- package/dist/builtins/games/text.d.ts +1 -10
- package/dist/builtins/games/text.js +1 -1
- package/dist/builtins/games/text.js.map +1 -1
- package/dist/builtins/games/wtf.d.ts +1 -9
- package/dist/builtins/games/wtf.js +1 -1
- package/dist/builtins/games/wtf.js.map +1 -1
- package/dist/builtins/help.d.ts +18 -15
- package/dist/builtins/help.js +51 -1200
- package/dist/builtins/help.js.map +1 -1
- package/dist/builtins/net/connect.d.ts +1 -1
- package/dist/builtins/net/connect.js +2 -1
- package/dist/builtins/net/connect.js.map +1 -1
- package/dist/builtins/net/cubepath.d.ts +1 -1
- package/dist/builtins/net/cubepath.js +1 -1
- package/dist/builtins/net/cubepath.js.map +1 -1
- package/dist/builtins/net/logout.d.ts +1 -1
- package/dist/builtins/net/logout.js +1 -1
- package/dist/builtins/net/logout.js.map +1 -1
- package/dist/builtins/net/netstat.d.ts +1 -1
- package/dist/builtins/net/netstat.js +1 -2
- package/dist/builtins/net/netstat.js.map +1 -1
- package/dist/builtins/net/pacs.d.ts +1 -1
- package/dist/builtins/net/pacs.js +3 -2
- package/dist/builtins/net/pacs.js.map +1 -1
- package/dist/builtins/net/pacsUtils.js +2 -1
- package/dist/builtins/net/pacsUtils.js.map +1 -1
- package/dist/builtins/net/query.csv.js +1 -1
- package/dist/builtins/net/query.csv.js.map +1 -1
- package/dist/builtins/net/query.d.ts +2 -2
- package/dist/builtins/net/query.fanout.d.ts +1 -1
- package/dist/builtins/net/query.fanout.js +1 -1
- package/dist/builtins/net/query.fanout.js.map +1 -1
- package/dist/builtins/net/query.js +3 -2
- package/dist/builtins/net/query.js.map +1 -1
- package/dist/builtins/net/status.d.ts +1 -1
- package/dist/builtins/net/status.js +2 -1
- package/dist/builtins/net/status.js.map +1 -1
- package/dist/builtins/parametersofplugin.d.ts +1 -1
- package/dist/builtins/parametersofplugin.js +1 -1
- package/dist/builtins/parametersofplugin.js.map +1 -1
- package/dist/builtins/pluginExecute.d.ts +1 -1
- package/dist/builtins/pluginExecute.js +3 -1
- package/dist/builtins/pluginExecute.js.map +1 -1
- package/dist/builtins/proc.d.ts +1 -2
- package/dist/builtins/proc.js +4 -3
- package/dist/builtins/proc.js.map +1 -1
- package/dist/builtins/res/compute.d.ts +1 -1
- package/dist/builtins/res/compute.js +2 -1
- package/dist/builtins/res/compute.js.map +1 -1
- package/dist/builtins/res/dicom.d.ts +2 -2
- package/dist/builtins/res/dicom.js +1 -2
- package/dist/builtins/res/dicom.js.map +1 -1
- package/dist/builtins/res/expect.d.ts +1 -1
- package/dist/builtins/res/expect.js +2 -1
- package/dist/builtins/res/expect.js.map +1 -1
- package/dist/builtins/res/feed.d.ts +1 -1
- package/dist/builtins/res/feed.diagram.d.ts +1 -2
- package/dist/builtins/res/feed.diagram.js +2 -2
- package/dist/builtins/res/feed.diagram.js.map +1 -1
- package/dist/builtins/res/feed.js +3 -1
- package/dist/builtins/res/feed.js.map +1 -1
- package/dist/builtins/res/feed.tree.d.ts +1 -1
- package/dist/builtins/res/feed.tree.js +1 -1
- package/dist/builtins/res/feed.tree.js.map +1 -1
- package/dist/builtins/res/files.d.ts +1 -1
- package/dist/builtins/res/files.js +1 -1
- package/dist/builtins/res/files.js.map +1 -1
- package/dist/builtins/res/gather.d.ts +1 -1
- package/dist/builtins/res/gather.js +1 -1
- package/dist/builtins/res/gather.js.map +1 -1
- package/dist/builtins/res/gather.store.js.map +1 -1
- package/dist/builtins/res/group.d.ts +1 -1
- package/dist/builtins/res/group.js +1 -1
- package/dist/builtins/res/group.js.map +1 -1
- package/dist/builtins/res/image.d.ts +1 -20
- package/dist/builtins/res/image.js +1 -2
- package/dist/builtins/res/image.js.map +1 -1
- package/dist/builtins/res/pipeline.d.ts +1 -1
- package/dist/builtins/res/pipeline.diagram.d.ts +1 -1
- package/dist/builtins/res/pipeline.diagram.js +2 -2
- package/dist/builtins/res/pipeline.diagram.js.map +1 -1
- package/dist/builtins/res/pipeline.js +3 -1
- package/dist/builtins/res/pipeline.js.map +1 -1
- package/dist/builtins/res/play.d.ts +1 -1
- package/dist/builtins/res/play.js +2 -1
- package/dist/builtins/res/play.js.map +1 -1
- package/dist/builtins/res/plugin.d.ts +1 -1
- package/dist/builtins/res/plugin.info.d.ts +1 -1
- package/dist/builtins/res/plugin.info.js +2 -1
- package/dist/builtins/res/plugin.info.js.map +1 -1
- package/dist/builtins/res/plugin.js +2 -2
- package/dist/builtins/res/plugin.js.map +1 -1
- package/dist/builtins/res/plugininstance.d.ts +1 -1
- package/dist/builtins/res/plugininstance.js +1 -1
- package/dist/builtins/res/plugininstance.js.map +1 -1
- package/dist/builtins/res/pluginmeta.d.ts +1 -1
- package/dist/builtins/res/pluginmeta.js +1 -1
- package/dist/builtins/res/pluginmeta.js.map +1 -1
- package/dist/builtins/res/record.d.ts +1 -1
- package/dist/builtins/res/record.js +1 -1
- package/dist/builtins/res/record.js.map +1 -1
- package/dist/builtins/res/tag.d.ts +1 -1
- package/dist/builtins/res/tag.js +1 -1
- package/dist/builtins/res/tag.js.map +1 -1
- package/dist/builtins/res/user.d.ts +1 -1
- package/dist/builtins/res/user.js +2 -1
- package/dist/builtins/res/user.js.map +1 -1
- package/dist/builtins/res/workflow.d.ts +1 -1
- package/dist/builtins/res/workflow.js +1 -1
- package/dist/builtins/res/workflow.js.map +1 -1
- package/dist/builtins/store.d.ts +1 -1
- package/dist/builtins/store.js +2 -1
- package/dist/builtins/store.js.map +1 -1
- package/dist/builtins/sys/cal.d.ts +1 -12
- package/dist/builtins/sys/cal.js +1 -1
- package/dist/builtins/sys/cal.js.map +1 -1
- package/dist/builtins/sys/context.d.ts +1 -1
- package/dist/builtins/sys/context.js +1 -1
- package/dist/builtins/sys/context.js.map +1 -1
- package/dist/builtins/sys/date.d.ts +1 -12
- package/dist/builtins/sys/date.js +1 -1
- package/dist/builtins/sys/date.js.map +1 -1
- package/dist/builtins/sys/fortune.d.ts +1 -11
- package/dist/builtins/sys/fortune.js +1 -1
- package/dist/builtins/sys/fortune.js.map +1 -1
- package/dist/builtins/sys/motd.d.ts +1 -18
- package/dist/builtins/sys/motd.js +3 -3
- package/dist/builtins/sys/motd.js.map +1 -1
- package/dist/builtins/sys/notes.d.ts +1 -2
- package/dist/builtins/sys/notes.js +1 -2
- package/dist/builtins/sys/notes.js.map +1 -1
- package/dist/builtins/sys/physicalmode.d.ts +1 -1
- package/dist/builtins/sys/physicalmode.js +1 -1
- package/dist/builtins/sys/physicalmode.js.map +1 -1
- package/dist/builtins/sys/timing.d.ts +1 -1
- package/dist/builtins/sys/timing.js +1 -1
- package/dist/builtins/sys/timing.js.map +1 -1
- package/dist/builtins/sys/version.d.ts +1 -7
- package/dist/builtins/sys/version.js +1 -1
- package/dist/builtins/sys/version.js.map +1 -1
- package/dist/builtins/sys/weather.d.ts +1 -1
- package/dist/builtins/sys/weather.js +1 -1
- package/dist/builtins/sys/weather.js.map +1 -1
- package/dist/builtins/sys/whoami.d.ts +1 -1
- package/dist/builtins/sys/whoami.js +2 -1
- package/dist/builtins/sys/whoami.js.map +1 -1
- package/dist/builtins/utils.d.ts +2 -19
- package/dist/builtins/utils.js +5 -55
- package/dist/builtins/utils.js.map +1 -1
- package/dist/builtins/wildcard.d.ts +4 -53
- package/dist/builtins/wildcard.js +3 -177
- package/dist/builtins/wildcard.js.map +1 -1
- package/dist/chris/backend.d.ts +22 -0
- package/dist/chris/backend.js +102 -0
- package/dist/chris/backend.js.map +1 -0
- package/dist/chris/binEntry.js.map +1 -0
- package/dist/chris/binMount.d.ts +60 -0
- package/dist/chris/binMount.js +154 -0
- package/dist/chris/binMount.js.map +1 -0
- package/dist/{core → chris}/chiliDelegate.d.ts +1 -1
- package/dist/{core → chris}/chiliDelegate.js +1 -1
- package/dist/chris/chiliDelegate.js.map +1 -0
- package/dist/chris/chrisCommands.d.ts +14 -0
- package/dist/chris/chrisCommands.js +168 -0
- package/dist/chris/chrisCommands.js.map +1 -0
- package/dist/chris/commandFallback.d.ts +3 -0
- package/dist/chris/commandFallback.js +113 -0
- package/dist/chris/commandFallback.js.map +1 -0
- package/dist/chris/completion.d.ts +3 -0
- package/dist/chris/completion.js +100 -0
- package/dist/chris/completion.js.map +1 -0
- package/dist/chris/connect.js.map +1 -0
- package/dist/chris/debug.d.ts +10 -0
- package/dist/chris/debug.js +9 -0
- package/dist/chris/debug.js.map +1 -0
- package/dist/chris/files.d.ts +16 -0
- package/dist/chris/files.js +141 -0
- package/dist/chris/files.js.map +1 -0
- package/dist/chris/filesystem.d.ts +3 -0
- package/dist/chris/filesystem.js +57 -0
- package/dist/chris/filesystem.js.map +1 -0
- package/dist/chris/help.d.ts +16 -0
- package/dist/chris/help.js +1193 -0
- package/dist/chris/help.js.map +1 -0
- package/dist/chris/jobsState.js.map +1 -0
- package/dist/chris/mounts.d.ts +7 -0
- package/dist/chris/mounts.js +34 -0
- package/dist/chris/mounts.js.map +1 -0
- package/dist/chris/navigation.d.ts +40 -0
- package/dist/chris/navigation.js +160 -0
- package/dist/chris/navigation.js.map +1 -0
- package/dist/{core → chris}/promptContext.d.ts +2 -2
- package/dist/{core → chris}/promptContext.js +3 -3
- package/dist/chris/promptContext.js.map +1 -0
- package/dist/chris/references.d.ts +14 -0
- package/dist/chris/references.js +113 -0
- package/dist/chris/references.js.map +1 -0
- package/dist/chris/tasks.d.ts +31 -0
- package/dist/chris/tasks.js +55 -0
- package/dist/chris/tasks.js.map +1 -0
- package/dist/chris/universeLayout.js.map +1 -0
- package/dist/chris/watch.d.ts +3 -0
- package/dist/chris/watch.js +15 -0
- package/dist/chris/watch.js.map +1 -0
- package/dist/core/answerKinds.d.ts +32 -0
- package/dist/core/answerKinds.js +56 -0
- package/dist/core/answerKinds.js.map +1 -0
- package/dist/core/backend.d.ts +261 -0
- package/dist/core/backend.js +32 -0
- package/dist/core/backend.js.map +1 -0
- package/dist/core/commandOrder.d.ts +16 -0
- package/dist/core/commandOrder.js +17 -0
- package/dist/core/commandOrder.js.map +1 -0
- package/dist/core/commandRegistry.d.ts +120 -0
- package/dist/core/commandRegistry.js +124 -0
- package/dist/core/commandRegistry.js.map +1 -0
- package/dist/core/coreCommands.d.ts +16 -0
- package/dist/core/coreCommands.js +156 -0
- package/dist/core/coreCommands.js.map +1 -0
- package/dist/core/dispatch.d.ts +2 -19
- package/dist/core/dispatch.js +86 -447
- package/dist/core/dispatch.js.map +1 -1
- package/dist/core/elevation.d.ts +5 -5
- package/dist/core/elevation.js +12 -7
- package/dist/core/elevation.js.map +1 -1
- package/dist/core/engine.d.ts +28 -18
- package/dist/core/engine.js +44 -119
- package/dist/core/engine.js.map +1 -1
- package/dist/core/errorText.d.ts +14 -0
- package/dist/core/errorText.js +26 -0
- package/dist/core/errorText.js.map +1 -0
- package/dist/core/expansion.d.ts +0 -2
- package/dist/core/expansion.js +43 -101
- package/dist/core/expansion.js.map +1 -1
- package/dist/core/fileRefusal.d.ts +4 -15
- package/dist/core/fileRefusal.js +4 -26
- package/dist/core/fileRefusal.js.map +1 -1
- package/dist/core/filesystem.d.ts +27 -0
- package/dist/core/filesystem.js +45 -0
- package/dist/core/filesystem.js.map +1 -0
- package/dist/core/handlerRun.d.ts +30 -0
- package/dist/core/handlerRun.js +34 -0
- package/dist/core/handlerRun.js.map +1 -0
- package/dist/core/paths.d.ts +18 -0
- package/dist/core/paths.js +49 -0
- package/dist/core/paths.js.map +1 -0
- package/dist/core/preprocess.d.ts +1 -1
- package/dist/core/preprocess.js +1 -1
- package/dist/core/preprocess.js.map +1 -1
- package/dist/core/sink.d.ts +3 -25
- package/dist/core/sink.js +0 -8
- package/dist/core/sink.js.map +1 -1
- package/dist/core/surface.d.ts +3 -179
- package/dist/core/surface.js.map +1 -1
- package/dist/core/taskWatch.d.ts +42 -0
- package/dist/core/taskWatch.js +142 -0
- package/dist/core/taskWatch.js.map +1 -0
- package/dist/core/tasks.d.ts +46 -0
- package/dist/core/tasks.js +102 -0
- package/dist/core/tasks.js.map +1 -0
- package/dist/core.d.ts +22 -0
- package/dist/core.js +23 -0
- package/dist/core.js.map +1 -0
- package/dist/index.d.ts +8 -5
- package/dist/index.js +17 -5
- package/dist/index.js.map +1 -1
- package/dist/lib/completer/index.js +41 -99
- package/dist/lib/completer/index.js.map +1 -1
- package/dist/lib/prefetch.js +2 -2
- package/dist/lib/prefetch.js.map +1 -1
- package/dist/lib/vfs/listing.d.ts +1 -1
- package/dist/lib/vfs/providers/static.d.ts +15 -6
- package/dist/lib/vfs/providers/static.js +20 -43
- package/dist/lib/vfs/providers/static.js.map +1 -1
- package/dist/lib/vfs/providers/static_content.d.ts +4 -4
- package/dist/lib/vfs/providers/static_content.js +4 -24
- package/dist/lib/vfs/providers/static_content.js.map +1 -1
- package/dist/lib/vfs/vfs.d.ts +11 -2
- package/dist/lib/vfs/vfs.js +90 -51
- package/dist/lib/vfs/vfs.js.map +1 -1
- package/dist/lib/wildcard.d.ts +57 -0
- package/dist/lib/wildcard.js +183 -0
- package/dist/lib/wildcard.js.map +1 -0
- package/dist/notes.json +1 -1
- package/dist/null/backend.d.ts +29 -0
- package/dist/null/backend.js +41 -0
- package/dist/null/backend.js.map +1 -0
- package/dist/session/answer.d.ts +4 -4
- package/dist/session/answer.js +0 -2
- package/dist/session/answer.js.map +1 -1
- package/dist/session/index.d.ts +12 -10
- package/dist/session/index.js +9 -38
- package/dist/session/index.js.map +1 -1
- package/package.json +12 -6
- package/dist/builtins/fs/folderExists.d.ts +0 -8
- package/dist/builtins/fs/folderExists.js +0 -67
- package/dist/builtins/fs/folderExists.js.map +0 -1
- package/dist/command-keys.d.ts +0 -8
- package/dist/command-keys.js +0 -37
- package/dist/command-keys.js.map +0 -1
- package/dist/core/chiliDelegate.js.map +0 -1
- package/dist/core/connect.js.map +0 -1
- package/dist/core/jobsState.js.map +0 -1
- package/dist/core/promptContext.js.map +0 -1
- package/dist/lib/vfs/providers/binEntry.js.map +0 -1
- package/dist/universe/universeLayout.js.map +0 -1
- /package/dist/{lib/vfs/providers → chris}/binEntry.d.ts +0 -0
- /package/dist/{lib/vfs/providers → chris}/binEntry.js +0 -0
- /package/dist/{core → chris}/connect.d.ts +0 -0
- /package/dist/{core → chris}/connect.js +0 -0
- /package/dist/{core → chris}/jobsState.d.ts +0 -0
- /package/dist/{core → chris}/jobsState.js +0 -0
- /package/dist/{universe → chris}/universeLayout.d.ts +0 -0
- /package/dist/{universe → chris}/universeLayout.js +0 -0
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file `/bin` in a ChRIS session: CUBE's plugins and pipelines, as executables.
|
|
3
|
+
*
|
|
4
|
+
* Listing it reads the plugins and pipelines CUBE holds; reading an entry
|
|
5
|
+
* gives a plugin's manual or a pipeline's summary. Nothing here writes or
|
|
6
|
+
* copies.
|
|
7
|
+
*
|
|
8
|
+
* @module
|
|
9
|
+
*/
|
|
10
|
+
import { vfs_fail, vfsOutcome_ofBoolean, vfsOutcome_ofResult } from '@fnndsc/fond';
|
|
11
|
+
import { plugins_listAll, pipelines_getAll } from '@fnndsc/salsa';
|
|
12
|
+
import { Ok, Err, errorStack, vfsItems_sort } from '@fnndsc/fond';
|
|
13
|
+
import { pluginInfo_build, pluginInfoText_render, pluginSpecifier_parse, } from '../builtins/res/plugin.info.js';
|
|
14
|
+
import { binPipelineSummary_render, binPipelineSummary_try } from './binEntry.js';
|
|
15
|
+
/** `/bin`: CUBE's plugins and pipelines. */
|
|
16
|
+
export class BinVfsProvider {
|
|
17
|
+
/** The prefix this provider handles. */
|
|
18
|
+
prefix = '/bin';
|
|
19
|
+
/**
|
|
20
|
+
* Lists the plugins (as `name-vVERSION`) and the pipelines (by slug).
|
|
21
|
+
*
|
|
22
|
+
* @param pathStr - The absolute path.
|
|
23
|
+
* @param options - Sort controls.
|
|
24
|
+
* @returns The executables.
|
|
25
|
+
*/
|
|
26
|
+
async list(pathStr, options) {
|
|
27
|
+
try {
|
|
28
|
+
let effectivePath = pathStr.startsWith("/") ? pathStr : "/" + pathStr;
|
|
29
|
+
if (effectivePath.length > 1 && effectivePath.endsWith("/")) {
|
|
30
|
+
effectivePath = effectivePath.slice(0, -1);
|
|
31
|
+
}
|
|
32
|
+
if (effectivePath !== "/bin")
|
|
33
|
+
return Ok([]);
|
|
34
|
+
const [plugins, pipelinesResult] = await Promise.all([
|
|
35
|
+
plugins_listAll({}),
|
|
36
|
+
pipelines_getAll(),
|
|
37
|
+
]);
|
|
38
|
+
const items = [];
|
|
39
|
+
if (plugins && plugins.tableData) {
|
|
40
|
+
plugins.tableData.forEach((plugin) => {
|
|
41
|
+
const pluginName = typeof plugin.name === 'string' ? plugin.name : String(plugin.name);
|
|
42
|
+
const pluginVersion = typeof plugin.version === 'string' ? plugin.version : String(plugin.version || '');
|
|
43
|
+
const displayName = pluginVersion ? `${pluginName}-v${pluginVersion}` : pluginName;
|
|
44
|
+
items.push({
|
|
45
|
+
name: displayName,
|
|
46
|
+
type: "plugin",
|
|
47
|
+
size: 0,
|
|
48
|
+
owner: "system",
|
|
49
|
+
date: typeof plugin.creation_date === 'string' ? plugin.creation_date : '',
|
|
50
|
+
});
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
if (pipelinesResult.ok) {
|
|
54
|
+
pipelinesResult.value.forEach((pipeline) => {
|
|
55
|
+
const slug = typeof pipeline.slug === 'string' ? pipeline.slug : pipeline.name.replace(/\s+/g, '_');
|
|
56
|
+
items.push({
|
|
57
|
+
name: slug,
|
|
58
|
+
type: "pipeline",
|
|
59
|
+
size: 0,
|
|
60
|
+
owner: typeof pipeline.authors === 'string' ? pipeline.authors : 'system',
|
|
61
|
+
date: '',
|
|
62
|
+
title: pipeline.name,
|
|
63
|
+
id: pipeline.id,
|
|
64
|
+
});
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
const sorted = vfsItems_sort(items, options?.sort, options?.reverse);
|
|
68
|
+
return Ok(sorted);
|
|
69
|
+
}
|
|
70
|
+
catch (error) {
|
|
71
|
+
const msg = error instanceof Error ? error.message : String(error);
|
|
72
|
+
errorStack.stack_push("error", `Static VFS list failed for prefix ${this.prefix}: ${msg}`);
|
|
73
|
+
return Err();
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
/** @inheritdoc */
|
|
77
|
+
async cp(src, dest, options) {
|
|
78
|
+
return vfsOutcome_ofBoolean(await this.copy_run(src, dest, options), 'EROFS');
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Refuses to copy from `/bin`.
|
|
82
|
+
*
|
|
83
|
+
* @param src - Source path.
|
|
84
|
+
* @param dest - Destination path.
|
|
85
|
+
* @param options - Copy options.
|
|
86
|
+
* @returns False, always.
|
|
87
|
+
*/
|
|
88
|
+
async copy_run(src, dest, options) {
|
|
89
|
+
errorStack.stack_push("error", `cp: Copying from static VFS path '${src}' is not supported.`);
|
|
90
|
+
return false;
|
|
91
|
+
}
|
|
92
|
+
/** @inheritdoc */
|
|
93
|
+
async rm() {
|
|
94
|
+
return vfs_fail('EROFS', 'virtual /bin directory');
|
|
95
|
+
}
|
|
96
|
+
/** @inheritdoc */
|
|
97
|
+
async rmTree() {
|
|
98
|
+
return vfs_fail('EROFS', 'virtual /bin directory');
|
|
99
|
+
}
|
|
100
|
+
/** @inheritdoc */
|
|
101
|
+
async read(pathStr) {
|
|
102
|
+
return vfsOutcome_ofResult(await this.text_read(pathStr), 'ENOENT');
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Reads an entry: a pipeline's summary, or a plugin's manual.
|
|
106
|
+
*
|
|
107
|
+
* @param pathStr - The absolute path of the entry.
|
|
108
|
+
* @returns The text.
|
|
109
|
+
*/
|
|
110
|
+
async text_read(pathStr) {
|
|
111
|
+
try {
|
|
112
|
+
let effectivePath = pathStr.startsWith("/") ? pathStr : "/" + pathStr;
|
|
113
|
+
if (effectivePath.length > 1 && effectivePath.endsWith("/")) {
|
|
114
|
+
effectivePath = effectivePath.slice(0, -1);
|
|
115
|
+
}
|
|
116
|
+
const commandName = effectivePath.substring("/bin/".length);
|
|
117
|
+
const pipelineSummary = binPipelineSummary_try(commandName);
|
|
118
|
+
if (pipelineSummary !== null)
|
|
119
|
+
return Ok(binPipelineSummary_render(pipelineSummary));
|
|
120
|
+
const specifier = pluginSpecifier_parse(commandName);
|
|
121
|
+
if (specifier === null) {
|
|
122
|
+
errorStack.stack_push("error", `Unknown /bin entry: ${commandName}`);
|
|
123
|
+
return Err();
|
|
124
|
+
}
|
|
125
|
+
// The manual is a projection of the plugin model — the same facts
|
|
126
|
+
// `plugin info` puts on the wire, so a terminal and a graphical
|
|
127
|
+
// surface cannot end up describing different plugins.
|
|
128
|
+
const built = await pluginInfo_build(specifier);
|
|
129
|
+
if (!built.ok)
|
|
130
|
+
return Err();
|
|
131
|
+
return Ok(pluginInfoText_render(built.value));
|
|
132
|
+
}
|
|
133
|
+
catch (error) {
|
|
134
|
+
const msg = error instanceof Error ? error.message : String(error);
|
|
135
|
+
errorStack.stack_push("error", `Static VFS read failed for prefix ${this.prefix}: ${msg}`);
|
|
136
|
+
return Err();
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
/** @inheritdoc */
|
|
140
|
+
async readBinary(pathStr) {
|
|
141
|
+
return vfsOutcome_ofResult(await this.bytes_read(pathStr), 'ENOENT');
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Reads an entry as bytes.
|
|
145
|
+
*
|
|
146
|
+
* @param pathStr - The absolute path of the entry.
|
|
147
|
+
* @returns The text's bytes.
|
|
148
|
+
*/
|
|
149
|
+
async bytes_read(pathStr) {
|
|
150
|
+
const res = await this.read(pathStr);
|
|
151
|
+
return res.ok ? Ok(Buffer.from(res.value, "utf-8")) : Err();
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
//# sourceMappingURL=binMount.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"binMount.js","sourceRoot":"","sources":["../../src/chris/binMount.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
*
|
|
9
9
|
* @module
|
|
10
10
|
*/
|
|
11
|
-
import { type CommandEnvelope } from '@fnndsc/
|
|
11
|
+
import { type CommandEnvelope } from '@fnndsc/menu';
|
|
12
12
|
/**
|
|
13
13
|
* Whether chili has a top-level command by this name. Used to decide whether an
|
|
14
14
|
* unknown chell command is worth delegating: a name chili does not know (a typo,
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
*/
|
|
11
11
|
import chalk from 'chalk';
|
|
12
12
|
import { run_capture, commandNames_get } from '@fnndsc/chili/run.js';
|
|
13
|
-
import { envelope_ok, envelope_error } from '@fnndsc/
|
|
13
|
+
import { envelope_ok, envelope_error } from '@fnndsc/menu';
|
|
14
14
|
/** chili's top-level command names, resolved once and memoized (see {@link chiliCommand_exists}). */
|
|
15
15
|
let chiliCommandNames = null;
|
|
16
16
|
/**
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chiliDelegate.js","sourceRoot":"","sources":["../../src/chris/chiliDelegate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAwB,WAAW,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEjF,qGAAqG;AACrG,IAAI,iBAAiB,GAAuB,IAAI,CAAC;AAEjD;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,OAAe;IACvD,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,iBAAiB,GAAG,MAAM,gBAAgB,EAAE,CAAC;IAC/C,CAAC;IACD,OAAO,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AACxC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,2BAA2B,CAAC,OAAe;IACzD,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,0BAA0B,OAAO,0BAA0B,CAAC,IAAI,CAAC;AAC1F,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,OAAe,EAAE,IAAc;IACpE,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,MAAM,WAAW,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;QAC3D,MAAM,QAAQ,GAAoB,WAAW,CAAC,GAAG,CAAC,CAAC;QACnD,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnB,QAAQ,CAAC,WAAW,GAAG,GAAG,CAAC;QAC7B,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,MAAM,OAAO,GAAW,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACnE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO,cAAc,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,kBAAkB,OAAO,aAAa,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC;IAC1G,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file The ChRIS backend's commands: everything that speaks CUBE — identity
|
|
3
|
+
* and connection, sharing and attributes, the resources (feeds, plugins,
|
|
4
|
+
* instances, workflows, compute, groups, users, tags), PACS and DICOM, `/proc`,
|
|
5
|
+
* upload and download, and the store.
|
|
6
|
+
*
|
|
7
|
+
* Registered by brasa's package entry (`index.ts`), not by the engine's core:
|
|
8
|
+
* the core dispatches whatever is registered and imports none of this.
|
|
9
|
+
*
|
|
10
|
+
* @module
|
|
11
|
+
*/
|
|
12
|
+
import { type CommandGroup } from '../core/commandRegistry.js';
|
|
13
|
+
/** The ChRIS backend commands: their handlers. Their help is registered from `builtins/help.ts`, which holds it. */
|
|
14
|
+
export declare const chrisCommands: CommandGroup;
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
import { builtin_chrisfetch, builtin_ping } from '../builtins/games/chrislab.js';
|
|
2
|
+
import { builtin_chmod, builtin_compute, builtin_config, builtin_connect, builtin_context, builtin_cubepath, builtin_dcm, builtin_dirs, builtin_download, builtin_feed, builtin_files, builtin_gather, builtin_getfacl, builtin_getfattr, builtin_group, builtin_id, builtin_image, builtin_links, builtin_logout, builtin_pacs, builtin_parametersofplugin, builtin_physicalmode, builtin_pipeline, builtin_plugin, builtin_plugininstance, builtin_pluginmeta, builtin_pull, builtin_query, builtin_setfacl, builtin_setfattr, builtin_store, builtin_tag, builtin_upload, builtin_user, builtin_whereami, builtin_whoami, builtin_workflow } from '../builtins/index.js';
|
|
3
|
+
import { builtin_netstat } from '../builtins/net/netstat.js';
|
|
4
|
+
import { builtin_proc } from '../builtins/proc.js';
|
|
5
|
+
import { chiliCommand_run } from './chiliDelegate.js';
|
|
6
|
+
import { envelopeHandler_wrap } from '../core/sink.js';
|
|
7
|
+
import { builtin_file, builtin_md5sum, builtin_sha256sum, builtin_strings, builtin_xxd } from '../builtins/games/bytes.js';
|
|
8
|
+
import { builtin_du } from '../builtins/fs/du.js';
|
|
9
|
+
import { builtin_edit } from '../builtins/fs/edit.js';
|
|
10
|
+
import { builtin_tree } from '../builtins/fs/tree.js';
|
|
11
|
+
import { builtin_expect } from '../builtins/res/expect.js';
|
|
12
|
+
import { builtin_play } from '../builtins/res/play.js';
|
|
13
|
+
import { builtin_record } from '../builtins/res/record.js';
|
|
14
|
+
import { builtin_motd } from '../builtins/sys/motd.js';
|
|
15
|
+
import { chrisHelp } from './help.js';
|
|
16
|
+
const envelope = {
|
|
17
|
+
setfacl: builtin_setfacl,
|
|
18
|
+
getfacl: builtin_getfacl,
|
|
19
|
+
chmod: builtin_chmod,
|
|
20
|
+
setfattr: builtin_setfattr,
|
|
21
|
+
getfattr: builtin_getfattr,
|
|
22
|
+
netstat: builtin_netstat,
|
|
23
|
+
id: builtin_id,
|
|
24
|
+
whoami: builtin_whoami,
|
|
25
|
+
whereami: builtin_whereami,
|
|
26
|
+
physicalmode: builtin_physicalmode,
|
|
27
|
+
ping: builtin_ping,
|
|
28
|
+
chrisfetch: builtin_chrisfetch,
|
|
29
|
+
proc: builtin_proc,
|
|
30
|
+
logout: builtin_logout,
|
|
31
|
+
cubepath: builtin_cubepath,
|
|
32
|
+
dcm: builtin_dcm,
|
|
33
|
+
image: builtin_image,
|
|
34
|
+
query: builtin_query,
|
|
35
|
+
feed: builtin_feed,
|
|
36
|
+
feeds: builtin_feed,
|
|
37
|
+
compute: builtin_compute,
|
|
38
|
+
computes: builtin_compute,
|
|
39
|
+
tag: builtin_tag,
|
|
40
|
+
tags: builtin_tag,
|
|
41
|
+
gather: builtin_gather,
|
|
42
|
+
group: builtin_group,
|
|
43
|
+
groups: builtin_group,
|
|
44
|
+
user: builtin_user,
|
|
45
|
+
users: builtin_user,
|
|
46
|
+
pluginmeta: builtin_pluginmeta,
|
|
47
|
+
pluginmetas: builtin_pluginmeta,
|
|
48
|
+
meta: builtin_pluginmeta,
|
|
49
|
+
metas: builtin_pluginmeta,
|
|
50
|
+
plugininstance: builtin_plugininstance,
|
|
51
|
+
plugininstances: builtin_plugininstance,
|
|
52
|
+
instance: builtin_plugininstance,
|
|
53
|
+
instances: builtin_plugininstance,
|
|
54
|
+
job: builtin_plugininstance,
|
|
55
|
+
jobs: builtin_plugininstance,
|
|
56
|
+
workflow: builtin_workflow,
|
|
57
|
+
workflows: builtin_workflow,
|
|
58
|
+
files: builtin_files,
|
|
59
|
+
links: builtin_links,
|
|
60
|
+
dirs: builtin_dirs,
|
|
61
|
+
context: builtin_context,
|
|
62
|
+
parametersofplugin: builtin_parametersofplugin,
|
|
63
|
+
plugin: builtin_plugin,
|
|
64
|
+
plugins: builtin_plugin,
|
|
65
|
+
pacsservers: (args) => chiliCommand_run('pacsservers', ['-s', ...args]),
|
|
66
|
+
pacsqueries: (args) => chiliCommand_run('pacsqueries', ['-s', ...args]),
|
|
67
|
+
pacsretrieve: (args) => chiliCommand_run('pacsretrieve', ['-s', ...args]),
|
|
68
|
+
connect: builtin_connect,
|
|
69
|
+
upload: builtin_upload,
|
|
70
|
+
download: builtin_download,
|
|
71
|
+
store: builtin_store,
|
|
72
|
+
config: builtin_config,
|
|
73
|
+
pacs: builtin_pacs,
|
|
74
|
+
pull: builtin_pull,
|
|
75
|
+
pipeline: builtin_pipeline,
|
|
76
|
+
pipelines: builtin_pipeline,
|
|
77
|
+
file: builtin_file,
|
|
78
|
+
xxd: builtin_xxd,
|
|
79
|
+
strings: builtin_strings,
|
|
80
|
+
sha256sum: builtin_sha256sum,
|
|
81
|
+
md5sum: builtin_md5sum,
|
|
82
|
+
motd: builtin_motd,
|
|
83
|
+
tree: builtin_tree,
|
|
84
|
+
du: builtin_du,
|
|
85
|
+
expect: builtin_expect,
|
|
86
|
+
play: builtin_play,
|
|
87
|
+
record: builtin_record,
|
|
88
|
+
edit: builtin_edit,
|
|
89
|
+
};
|
|
90
|
+
const plain = {
|
|
91
|
+
connect: envelopeHandler_wrap(builtin_connect),
|
|
92
|
+
logout: envelopeHandler_wrap(builtin_logout),
|
|
93
|
+
netstat: envelopeHandler_wrap(builtin_netstat),
|
|
94
|
+
setfacl: envelopeHandler_wrap(builtin_setfacl),
|
|
95
|
+
getfacl: envelopeHandler_wrap(builtin_getfacl),
|
|
96
|
+
chmod: envelopeHandler_wrap(builtin_chmod),
|
|
97
|
+
setfattr: envelopeHandler_wrap(builtin_setfattr),
|
|
98
|
+
getfattr: envelopeHandler_wrap(builtin_getfattr),
|
|
99
|
+
upload: envelopeHandler_wrap(builtin_upload),
|
|
100
|
+
pacs: envelopeHandler_wrap(builtin_pacs),
|
|
101
|
+
pipeline: envelopeHandler_wrap(builtin_pipeline),
|
|
102
|
+
pipelines: envelopeHandler_wrap(builtin_pipeline),
|
|
103
|
+
pull: envelopeHandler_wrap(builtin_pull),
|
|
104
|
+
query: envelopeHandler_wrap(builtin_query),
|
|
105
|
+
cubepath: envelopeHandler_wrap(builtin_cubepath),
|
|
106
|
+
dcm: envelopeHandler_wrap(builtin_dcm),
|
|
107
|
+
image: envelopeHandler_wrap(builtin_image),
|
|
108
|
+
download: envelopeHandler_wrap(builtin_download),
|
|
109
|
+
config: envelopeHandler_wrap(builtin_config),
|
|
110
|
+
context: envelopeHandler_wrap(builtin_context),
|
|
111
|
+
parametersofplugin: envelopeHandler_wrap(builtin_parametersofplugin),
|
|
112
|
+
physicalmode: envelopeHandler_wrap(builtin_physicalmode),
|
|
113
|
+
id: envelopeHandler_wrap(builtin_id),
|
|
114
|
+
whoami: envelopeHandler_wrap(builtin_whoami),
|
|
115
|
+
whereami: envelopeHandler_wrap(builtin_whereami),
|
|
116
|
+
ping: envelopeHandler_wrap(builtin_ping),
|
|
117
|
+
chrisfetch: envelopeHandler_wrap(builtin_chrisfetch),
|
|
118
|
+
proc: envelopeHandler_wrap(builtin_proc),
|
|
119
|
+
store: envelopeHandler_wrap(builtin_store),
|
|
120
|
+
plugin: envelopeHandler_wrap(builtin_plugin),
|
|
121
|
+
plugins: envelopeHandler_wrap(builtin_plugin),
|
|
122
|
+
feed: envelopeHandler_wrap(builtin_feed),
|
|
123
|
+
feeds: envelopeHandler_wrap(builtin_feed),
|
|
124
|
+
compute: envelopeHandler_wrap(builtin_compute),
|
|
125
|
+
computes: envelopeHandler_wrap(builtin_compute),
|
|
126
|
+
tag: envelopeHandler_wrap(builtin_tag),
|
|
127
|
+
tags: envelopeHandler_wrap(builtin_tag),
|
|
128
|
+
gather: envelopeHandler_wrap(builtin_gather),
|
|
129
|
+
group: envelopeHandler_wrap(builtin_group),
|
|
130
|
+
groups: envelopeHandler_wrap(builtin_group),
|
|
131
|
+
pluginmeta: envelopeHandler_wrap(builtin_pluginmeta),
|
|
132
|
+
pluginmetas: envelopeHandler_wrap(builtin_pluginmeta),
|
|
133
|
+
meta: envelopeHandler_wrap(builtin_pluginmeta),
|
|
134
|
+
metas: envelopeHandler_wrap(builtin_pluginmeta),
|
|
135
|
+
plugininstance: envelopeHandler_wrap(builtin_plugininstance),
|
|
136
|
+
plugininstances: envelopeHandler_wrap(builtin_plugininstance),
|
|
137
|
+
instance: envelopeHandler_wrap(builtin_plugininstance),
|
|
138
|
+
instances: envelopeHandler_wrap(builtin_plugininstance),
|
|
139
|
+
job: envelopeHandler_wrap(builtin_plugininstance),
|
|
140
|
+
jobs: envelopeHandler_wrap(builtin_plugininstance),
|
|
141
|
+
workflow: envelopeHandler_wrap(builtin_workflow),
|
|
142
|
+
workflows: envelopeHandler_wrap(builtin_workflow),
|
|
143
|
+
files: envelopeHandler_wrap(builtin_files),
|
|
144
|
+
links: envelopeHandler_wrap(builtin_links),
|
|
145
|
+
dirs: envelopeHandler_wrap(builtin_dirs),
|
|
146
|
+
pacsservers: envelopeHandler_wrap((args) => chiliCommand_run('pacsservers', ['-s', ...args])),
|
|
147
|
+
pacsqueries: envelopeHandler_wrap((args) => chiliCommand_run('pacsqueries', ['-s', ...args])),
|
|
148
|
+
pacsretrieve: envelopeHandler_wrap((args) => chiliCommand_run('pacsretrieve', ['-s', ...args])),
|
|
149
|
+
edit: envelopeHandler_wrap(builtin_edit),
|
|
150
|
+
file: envelopeHandler_wrap(builtin_file),
|
|
151
|
+
xxd: envelopeHandler_wrap(builtin_xxd),
|
|
152
|
+
strings: envelopeHandler_wrap(builtin_strings),
|
|
153
|
+
sha256sum: envelopeHandler_wrap(builtin_sha256sum),
|
|
154
|
+
md5sum: envelopeHandler_wrap(builtin_md5sum),
|
|
155
|
+
motd: envelopeHandler_wrap(builtin_motd),
|
|
156
|
+
tree: envelopeHandler_wrap(builtin_tree),
|
|
157
|
+
du: envelopeHandler_wrap(builtin_du),
|
|
158
|
+
expect: envelopeHandler_wrap(builtin_expect),
|
|
159
|
+
play: envelopeHandler_wrap(builtin_play),
|
|
160
|
+
record: envelopeHandler_wrap(builtin_record),
|
|
161
|
+
};
|
|
162
|
+
/** The ChRIS backend commands: their handlers. Their help is registered from `builtins/help.ts`, which holds it. */
|
|
163
|
+
export const chrisCommands = {
|
|
164
|
+
envelope,
|
|
165
|
+
plain,
|
|
166
|
+
help: chrisHelp,
|
|
167
|
+
};
|
|
168
|
+
//# sourceMappingURL=chrisCommands.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chrisCommands.js","sourceRoot":"","sources":["../../src/chris/chrisCommands.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
import { envelope_deliver, sink_get } from '../core/sink.js';
|
|
2
|
+
import { exitCode_read, handler_runDirect } from '../core/handlerRun.js';
|
|
3
|
+
import { vfs } from '../lib/vfs/vfs.js';
|
|
4
|
+
import { builtin_pipeline } from '../builtins/res/pipeline.js';
|
|
5
|
+
import { builtin_executePlugin } from '../builtins/pluginExecute.js';
|
|
6
|
+
import { pluginExecutable_handle } from '../builtins/executable.js';
|
|
7
|
+
import { pipelineExecutableHelp_render, pluginExecutableHelp_render } from '../builtins/help.js';
|
|
8
|
+
import { chiliCommand_run, chiliCommand_exists, chiliDelegationNotice_build } from './chiliDelegate.js';
|
|
9
|
+
/**
|
|
10
|
+
* Handles a pipeline name invoked directly as an executable from /bin.
|
|
11
|
+
* Routes flag combinations to the appropriate pipeline subcommand:
|
|
12
|
+
* --diagram → pipeline diagram (preserving renderer flags)
|
|
13
|
+
* --signalflow → pipeline diagram --signalflow
|
|
14
|
+
* --help / -h → contextual pipeline-executable help
|
|
15
|
+
* --nodes / --parameters → pipeline info
|
|
16
|
+
* --manifest → pipeline manifest
|
|
17
|
+
* --source / --readme → pipeline source
|
|
18
|
+
* (bare or --compute) → pipeline run
|
|
19
|
+
*
|
|
20
|
+
* @param name - The pipeline name as typed.
|
|
21
|
+
* @param args - Arguments following the pipeline name.
|
|
22
|
+
* @returns The pipeline builtin's envelope, preserving diagram models and text.
|
|
23
|
+
*/
|
|
24
|
+
async function pipelineExecutable_handle(name, args) {
|
|
25
|
+
const exitCodeBefore = exitCode_read();
|
|
26
|
+
let envelope;
|
|
27
|
+
if (args.includes('--help') || args.includes('-h')) {
|
|
28
|
+
envelope = { status: 'ok', rendered: pipelineExecutableHelp_render(name) };
|
|
29
|
+
}
|
|
30
|
+
else if (args.includes('--diagram')) {
|
|
31
|
+
const diagramArgs = args.filter((argument) => argument !== '--diagram');
|
|
32
|
+
envelope = await builtin_pipeline(['diagram', name, ...diagramArgs]);
|
|
33
|
+
}
|
|
34
|
+
else if (args.includes('--signalflow')) {
|
|
35
|
+
envelope = await builtin_pipeline(['diagram', name, '--signalflow']);
|
|
36
|
+
}
|
|
37
|
+
else if (args.includes('--manifest')) {
|
|
38
|
+
envelope = await builtin_pipeline(['manifest', name]);
|
|
39
|
+
}
|
|
40
|
+
else if (args.includes('--nodes') || args.includes('--parameters')) {
|
|
41
|
+
envelope = await builtin_pipeline(['info', name]);
|
|
42
|
+
}
|
|
43
|
+
else if (args.includes('--source') || args.includes('--readme')) {
|
|
44
|
+
envelope = await builtin_pipeline(['source', name]);
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
envelope = await builtin_pipeline(['run', name, ...args]);
|
|
48
|
+
}
|
|
49
|
+
const result = envelope ?? { status: 'ok', rendered: '' };
|
|
50
|
+
const exitCodeAfter = exitCode_read();
|
|
51
|
+
if (exitCodeAfter !== 0 && exitCodeAfter !== exitCodeBefore)
|
|
52
|
+
result.status = 'error';
|
|
53
|
+
return result;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Finds exact plugin and pipeline executable matches in the virtual `/bin`.
|
|
57
|
+
*
|
|
58
|
+
* @param command - Executable name as typed.
|
|
59
|
+
* @returns Matching dynamic executable entries, if the listing is available.
|
|
60
|
+
*/
|
|
61
|
+
async function binExecutableMatches_get(command) {
|
|
62
|
+
const binResult = await vfs.data_get('/bin');
|
|
63
|
+
if (!binResult.ok) {
|
|
64
|
+
return { plugin: undefined, pipeline: undefined };
|
|
65
|
+
}
|
|
66
|
+
return {
|
|
67
|
+
plugin: binResult.value.find((item) => item.name === command && item.type === 'plugin'),
|
|
68
|
+
pipeline: binResult.value.find((item) => item.name === command && item.type === 'pipeline'),
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Hands a word to chili when chili has it, with the hand-off notice on the
|
|
73
|
+
* live sink first, so it appears ahead of chili's (possibly slow) output.
|
|
74
|
+
*
|
|
75
|
+
* @param command - The word.
|
|
76
|
+
* @param args - Its arguments.
|
|
77
|
+
* @returns chili's delivered envelope, or null when chili has no such command.
|
|
78
|
+
*/
|
|
79
|
+
async function chili_delegate(command, args) {
|
|
80
|
+
if (!(await chiliCommand_exists(command)))
|
|
81
|
+
return null;
|
|
82
|
+
sink_get().data_write(chiliDelegationNotice_build(command));
|
|
83
|
+
const chiliEnvelope = await chiliCommand_run(command, ['-s', ...args]);
|
|
84
|
+
envelope_deliver(chiliEnvelope);
|
|
85
|
+
return chiliEnvelope;
|
|
86
|
+
}
|
|
87
|
+
/** The ChRIS backend's fallback. */
|
|
88
|
+
export const chrisFallback = {
|
|
89
|
+
claim: pluginExecutable_handle,
|
|
90
|
+
unknown: async (command, args, captured) => {
|
|
91
|
+
const binMatches = await binExecutableMatches_get(command);
|
|
92
|
+
// A bare /bin plugin name runs the plugin, and a run is a CUBE job: typed
|
|
93
|
+
// at the prompt it starts one; inside a pipe or a redirect it does not, so
|
|
94
|
+
// a pipeline of words never starts a job as a side effect.
|
|
95
|
+
if (!captured && binMatches.plugin) {
|
|
96
|
+
return handler_runDirect((pluginArgs) => builtin_executePlugin(command, pluginArgs), args);
|
|
97
|
+
}
|
|
98
|
+
if (binMatches.pipeline) {
|
|
99
|
+
const envelope = await pipelineExecutable_handle(command, args);
|
|
100
|
+
envelope_deliver(envelope);
|
|
101
|
+
return envelope;
|
|
102
|
+
}
|
|
103
|
+
return chili_delegate(command, args);
|
|
104
|
+
},
|
|
105
|
+
help: async (command) => {
|
|
106
|
+
// A plugin version (`pl-dircopy-v2.1.2`) is its own executable.
|
|
107
|
+
if (/-v[^/]+$/.test(command))
|
|
108
|
+
return pluginExecutableHelp_render(command);
|
|
109
|
+
const binMatches = await binExecutableMatches_get(command);
|
|
110
|
+
return binMatches.pipeline ? pipelineExecutableHelp_render(command) : null;
|
|
111
|
+
},
|
|
112
|
+
};
|
|
113
|
+
//# sourceMappingURL=commandFallback.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commandFallback.js","sourceRoot":"","sources":["../../src/chris/commandFallback.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file What a ChRIS session adds to completion: its plugins as command
|
|
3
|
+
* words, a pipeline's `--node.field` options, and the names completed at `/`.
|
|
4
|
+
*
|
|
5
|
+
* @module
|
|
6
|
+
*/
|
|
7
|
+
import { plugins_listAll, pipelineManifest_get } from '@fnndsc/salsa';
|
|
8
|
+
import { listCache_get } from '@fnndsc/cumin';
|
|
9
|
+
/**
|
|
10
|
+
* Fetches available plugin names from /bin in the format: name-vVersion.
|
|
11
|
+
* This matches the display format used in /bin listings.
|
|
12
|
+
* Uses cache first for fast completion.
|
|
13
|
+
* @returns Array of plugin names with version suffixes.
|
|
14
|
+
*/
|
|
15
|
+
async function plugins_getNames() {
|
|
16
|
+
try {
|
|
17
|
+
// Check cache first for /bin
|
|
18
|
+
const listCache = listCache_get();
|
|
19
|
+
const cached = listCache.cache_get('/bin');
|
|
20
|
+
if (cached && cached.data) {
|
|
21
|
+
// Return cached plugin names immediately
|
|
22
|
+
return cached.data.map((item) => item.name);
|
|
23
|
+
}
|
|
24
|
+
// Cache miss - fetch from API (only on first tab completion)
|
|
25
|
+
const plugins = await plugins_listAll({});
|
|
26
|
+
if (plugins && plugins.tableData) {
|
|
27
|
+
const pluginNames = plugins.tableData.map((p) => {
|
|
28
|
+
const name = typeof p.name === 'string' ? p.name : String(p.name ?? '');
|
|
29
|
+
const version = typeof p.version === 'string' ? p.version : String(p.version ?? '');
|
|
30
|
+
// Format as name-vVersion to match /bin display format
|
|
31
|
+
return version ? `${name}-v${version}` : name;
|
|
32
|
+
});
|
|
33
|
+
// Cache it for next time
|
|
34
|
+
const lsItems = plugins.tableData.map((p) => {
|
|
35
|
+
const name = typeof p.name === 'string' ? p.name : String(p.name ?? '');
|
|
36
|
+
const version = typeof p.version === 'string' ? p.version : String(p.version ?? '');
|
|
37
|
+
return {
|
|
38
|
+
name: version ? `${name}-v${version}` : name,
|
|
39
|
+
type: 'plugin',
|
|
40
|
+
size: 0,
|
|
41
|
+
owner: 'system',
|
|
42
|
+
date: p.creation_date ? String(p.creation_date) : '',
|
|
43
|
+
};
|
|
44
|
+
});
|
|
45
|
+
listCache.cache_set('/bin', lsItems);
|
|
46
|
+
return pluginNames;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
catch (e) {
|
|
50
|
+
// Silently fail if plugins cannot be fetched
|
|
51
|
+
}
|
|
52
|
+
return [];
|
|
53
|
+
}
|
|
54
|
+
/** The fields every pipeline node takes for its execution. */
|
|
55
|
+
const EXECUTION_FIELDS = [
|
|
56
|
+
'compute_resource_name', 'cpu_limit', 'memory_limit', 'gpu_limit', 'number_of_workers',
|
|
57
|
+
];
|
|
58
|
+
/**
|
|
59
|
+
* The `--node.field` options of the pipeline a line runs (`pipeline run X`
|
|
60
|
+
* or `X` itself), starting with the word typed.
|
|
61
|
+
*
|
|
62
|
+
* @param args - The line's words.
|
|
63
|
+
* @param word - The option word typed so far.
|
|
64
|
+
* @returns The options, none when the pipeline cannot be read, or null for
|
|
65
|
+
* a line naming no pipeline.
|
|
66
|
+
*/
|
|
67
|
+
async function pipelineOptions_get(args, word) {
|
|
68
|
+
const pipelineSpecifier = args[0] === 'pipeline' && args[1] === 'run'
|
|
69
|
+
? args[2]
|
|
70
|
+
: args[0];
|
|
71
|
+
if (pipelineSpecifier === undefined)
|
|
72
|
+
return null;
|
|
73
|
+
const result = await pipelineManifest_get(pipelineSpecifier);
|
|
74
|
+
if (!result.ok)
|
|
75
|
+
return [];
|
|
76
|
+
const options = [];
|
|
77
|
+
const manifest = result.value;
|
|
78
|
+
for (const node of manifest.nodes) {
|
|
79
|
+
const titleUsable = /^[A-Za-z0-9_-]+$/.test(node.title) &&
|
|
80
|
+
manifest.nodes.filter((candidate) => candidate.title === node.title).length === 1;
|
|
81
|
+
const selectors = titleUsable ? [node.title, `@${node.pipingID}`] : [`@${node.pipingID}`];
|
|
82
|
+
const fields = [
|
|
83
|
+
...EXECUTION_FIELDS,
|
|
84
|
+
...(node.parameterDefinitions ?? [])
|
|
85
|
+
.filter((parameter) => parameter.name !== 'plugininstances')
|
|
86
|
+
.map((parameter) => parameter.name),
|
|
87
|
+
];
|
|
88
|
+
for (const field of fields) {
|
|
89
|
+
options.push(...selectors.map((selector) => `--${selector}.${field}`));
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
return options.filter((option) => option.startsWith(word));
|
|
93
|
+
}
|
|
94
|
+
/** What the ChRIS session adds to completion. */
|
|
95
|
+
export const chrisCompletion = {
|
|
96
|
+
commandWords: plugins_getNames,
|
|
97
|
+
options: pipelineOptions_get,
|
|
98
|
+
rootWords: ['bin', 'usr'],
|
|
99
|
+
};
|
|
100
|
+
//# sourceMappingURL=completion.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"completion.js","sourceRoot":"","sources":["../../src/chris/completion.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"connect.js","sourceRoot":"","sources":["../../src/chris/connect.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAyB,YAAY,EAAE,OAAO,EAA4B,MAAM,eAAe,CAAC;AAqBvG;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB;IAC5C,MAAM,OAAO,GAAkB,MAAM,iBAAiB,EAAE,CAAC;IAEzD,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;QAClC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC;IAC3C,CAAC;IAED,MAAM,KAAK,GAAkB,MAAM,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAC1E,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;QACvB,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC;IACzC,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAkB,MAAM,OAAO,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;QACpE,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;YACvB,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC;QAC1C,CAAC;QACD,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;QACvB,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC;IACzC,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;QACvB,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;IAC7G,CAAC;AACH,CAAC;AAeD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,IAAY,EAAE,GAAW,EAAE,KAAa;IACrF,MAAM,OAAO,GAAwB,MAAM,OAAO,CAAC,UAAU,CAAC,2BAA2B,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;IAChH,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;QACvB,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;QACvB,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,iBAAiB,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;IAC1F,CAAC;IACD,OAAO,CAAC,OAAO,GAAG,KAAK,CAAC;IACxB,MAAM,YAAY,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IACxD,MAAM,YAAY,CAAC,WAAW,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IACtD,MAAM,YAAY,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IACtD,MAAM,YAAY,CAAC,WAAW,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IACxD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,iBAAiB,EAAE,EAAE,CAAC;AACrE,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file Debugging in a ChRIS session: the CUBE connection's own flag.
|
|
3
|
+
*
|
|
4
|
+
* @module
|
|
5
|
+
*/
|
|
6
|
+
import type { Backend } from '../core/backend.js';
|
|
7
|
+
/** Whether the CUBE connection is debugging, or null until its configuration exists. */
|
|
8
|
+
export declare const chrisDebug_get: NonNullable<Backend['debug_get']>;
|
|
9
|
+
/** Turns the CUBE connection's debugging on or off, once its configuration exists. */
|
|
10
|
+
export declare const chrisDebug_set: NonNullable<Backend['debug_set']>;
|