@fnndsc/brasa 0.34.0 → 0.35.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (425) hide show
  1. package/dist/api/models.d.ts +1 -2
  2. package/dist/api/models.js.map +1 -1
  3. package/dist/buildinfo.json +1 -1
  4. package/dist/builtins/debug.d.ts +1 -1
  5. package/dist/builtins/debug.js +12 -8
  6. package/dist/builtins/debug.js.map +1 -1
  7. package/dist/builtins/executable.d.ts +1 -1
  8. package/dist/builtins/executable.js +2 -1
  9. package/dist/builtins/executable.js.map +1 -1
  10. package/dist/builtins/fs/acl.d.ts +1 -16
  11. package/dist/builtins/fs/acl.js +3 -1
  12. package/dist/builtins/fs/acl.js.map +1 -1
  13. package/dist/builtins/fs/archive.js +1 -1
  14. package/dist/builtins/fs/archive.js.map +1 -1
  15. package/dist/builtins/fs/cat.d.ts +1 -1
  16. package/dist/builtins/fs/cat.js +47 -7
  17. package/dist/builtins/fs/cat.js.map +1 -1
  18. package/dist/builtins/fs/cd.d.ts +1 -19
  19. package/dist/builtins/fs/cd.js +45 -94
  20. package/dist/builtins/fs/cd.js.map +1 -1
  21. package/dist/builtins/fs/configWrite.d.ts +1 -1
  22. package/dist/builtins/fs/configWrite.js +1 -1
  23. package/dist/builtins/fs/configWrite.js.map +1 -1
  24. package/dist/builtins/fs/cp.d.ts +1 -1
  25. package/dist/builtins/fs/cp.js +19 -13
  26. package/dist/builtins/fs/cp.js.map +1 -1
  27. package/dist/builtins/fs/download.d.ts +1 -1
  28. package/dist/builtins/fs/download.js +2 -1
  29. package/dist/builtins/fs/download.js.map +1 -1
  30. package/dist/builtins/fs/du.d.ts +10 -1
  31. package/dist/builtins/fs/du.js +36 -2
  32. package/dist/builtins/fs/du.js.map +1 -1
  33. package/dist/builtins/fs/edit.d.ts +1 -1
  34. package/dist/builtins/fs/edit.js +10 -4
  35. package/dist/builtins/fs/edit.js.map +1 -1
  36. package/dist/builtins/fs/entries.d.ts +43 -0
  37. package/dist/builtins/fs/entries.js +81 -0
  38. package/dist/builtins/fs/entries.js.map +1 -0
  39. package/dist/builtins/fs/ls.d.ts +1 -2
  40. package/dist/builtins/fs/ls.js +70 -10
  41. package/dist/builtins/fs/ls.js.map +1 -1
  42. package/dist/builtins/fs/mkdir.d.ts +1 -1
  43. package/dist/builtins/fs/mkdir.js +29 -20
  44. package/dist/builtins/fs/mkdir.js.map +1 -1
  45. package/dist/builtins/fs/mv.d.ts +1 -1
  46. package/dist/builtins/fs/mv.js +40 -23
  47. package/dist/builtins/fs/mv.js.map +1 -1
  48. package/dist/builtins/fs/pull.d.ts +1 -1
  49. package/dist/builtins/fs/pull.js +2 -1
  50. package/dist/builtins/fs/pull.js.map +1 -1
  51. package/dist/builtins/fs/pwd.d.ts +1 -1
  52. package/dist/builtins/fs/pwd.js +9 -45
  53. package/dist/builtins/fs/pwd.js.map +1 -1
  54. package/dist/builtins/fs/rm.d.ts +1 -22
  55. package/dist/builtins/fs/rm.js +33 -58
  56. package/dist/builtins/fs/rm.js.map +1 -1
  57. package/dist/builtins/fs/rmdir.d.ts +1 -1
  58. package/dist/builtins/fs/rmdir.js +21 -40
  59. package/dist/builtins/fs/rmdir.js.map +1 -1
  60. package/dist/builtins/fs/touch.d.ts +1 -1
  61. package/dist/builtins/fs/touch.js +64 -25
  62. package/dist/builtins/fs/touch.js.map +1 -1
  63. package/dist/builtins/fs/tree.d.ts +1 -1
  64. package/dist/builtins/fs/tree.js +26 -3
  65. package/dist/builtins/fs/tree.js.map +1 -1
  66. package/dist/builtins/fs/upload.d.ts +1 -1
  67. package/dist/builtins/fs/upload.js +3 -1
  68. package/dist/builtins/fs/upload.js.map +1 -1
  69. package/dist/builtins/fs/url.d.ts +19 -0
  70. package/dist/builtins/fs/url.js +53 -0
  71. package/dist/builtins/fs/url.js.map +1 -0
  72. package/dist/builtins/fs/xattr.d.ts +1 -10
  73. package/dist/builtins/fs/xattr.js +3 -1
  74. package/dist/builtins/fs/xattr.js.map +1 -1
  75. package/dist/builtins/games/bytes.d.ts +1 -1
  76. package/dist/builtins/games/bytes.js +2 -1
  77. package/dist/builtins/games/bytes.js.map +1 -1
  78. package/dist/builtins/games/chimes.d.ts +1 -13
  79. package/dist/builtins/games/chimes.js +1 -1
  80. package/dist/builtins/games/chimes.js.map +1 -1
  81. package/dist/builtins/games/chrislab.d.ts +33 -0
  82. package/dist/builtins/games/chrislab.js +117 -0
  83. package/dist/builtins/games/chrislab.js.map +1 -0
  84. package/dist/builtins/games/cowsay.d.ts +1 -11
  85. package/dist/builtins/games/cowsay.js +1 -1
  86. package/dist/builtins/games/cowsay.js.map +1 -1
  87. package/dist/builtins/games/figlet.d.ts +1 -11
  88. package/dist/builtins/games/figlet.js +1 -1
  89. package/dist/builtins/games/figlet.js.map +1 -1
  90. package/dist/builtins/games/lab.d.ts +1 -43
  91. package/dist/builtins/games/lab.js +7 -111
  92. package/dist/builtins/games/lab.js.map +1 -1
  93. package/dist/builtins/games/lolcat.d.ts +1 -11
  94. package/dist/builtins/games/lolcat.js +1 -1
  95. package/dist/builtins/games/lolcat.js.map +1 -1
  96. package/dist/builtins/games/morse.d.ts +1 -10
  97. package/dist/builtins/games/morse.js +1 -1
  98. package/dist/builtins/games/morse.js.map +1 -1
  99. package/dist/builtins/games/numbers.d.ts +1 -10
  100. package/dist/builtins/games/numbers.js +1 -1
  101. package/dist/builtins/games/numbers.js.map +1 -1
  102. package/dist/builtins/games/play.d.ts +1 -11
  103. package/dist/builtins/games/play.js +1 -1
  104. package/dist/builtins/games/play.js.map +1 -1
  105. package/dist/builtins/games/qr.d.ts +1 -12
  106. package/dist/builtins/games/qr.js +1 -1
  107. package/dist/builtins/games/qr.js.map +1 -1
  108. package/dist/builtins/games/show.d.ts +1 -12
  109. package/dist/builtins/games/show.js +1 -1
  110. package/dist/builtins/games/show.js.map +1 -1
  111. package/dist/builtins/games/sky.d.ts +1 -11
  112. package/dist/builtins/games/sky.js +1 -1
  113. package/dist/builtins/games/sky.js.map +1 -1
  114. package/dist/builtins/games/text.d.ts +1 -10
  115. package/dist/builtins/games/text.js +1 -1
  116. package/dist/builtins/games/text.js.map +1 -1
  117. package/dist/builtins/games/wtf.d.ts +1 -9
  118. package/dist/builtins/games/wtf.js +1 -1
  119. package/dist/builtins/games/wtf.js.map +1 -1
  120. package/dist/builtins/help.d.ts +18 -15
  121. package/dist/builtins/help.js +60 -1197
  122. package/dist/builtins/help.js.map +1 -1
  123. package/dist/builtins/net/connect.d.ts +1 -1
  124. package/dist/builtins/net/connect.js +2 -1
  125. package/dist/builtins/net/connect.js.map +1 -1
  126. package/dist/builtins/net/cubepath.d.ts +1 -1
  127. package/dist/builtins/net/cubepath.js +1 -1
  128. package/dist/builtins/net/cubepath.js.map +1 -1
  129. package/dist/builtins/net/logout.d.ts +1 -1
  130. package/dist/builtins/net/logout.js +1 -1
  131. package/dist/builtins/net/logout.js.map +1 -1
  132. package/dist/builtins/net/netstat.d.ts +1 -1
  133. package/dist/builtins/net/netstat.js +1 -2
  134. package/dist/builtins/net/netstat.js.map +1 -1
  135. package/dist/builtins/net/pacs.d.ts +1 -1
  136. package/dist/builtins/net/pacs.js +3 -2
  137. package/dist/builtins/net/pacs.js.map +1 -1
  138. package/dist/builtins/net/pacsUtils.js +2 -1
  139. package/dist/builtins/net/pacsUtils.js.map +1 -1
  140. package/dist/builtins/net/query.csv.js +1 -1
  141. package/dist/builtins/net/query.csv.js.map +1 -1
  142. package/dist/builtins/net/query.d.ts +2 -2
  143. package/dist/builtins/net/query.fanout.d.ts +1 -1
  144. package/dist/builtins/net/query.fanout.js +1 -1
  145. package/dist/builtins/net/query.fanout.js.map +1 -1
  146. package/dist/builtins/net/query.js +3 -2
  147. package/dist/builtins/net/query.js.map +1 -1
  148. package/dist/builtins/net/status.d.ts +1 -1
  149. package/dist/builtins/net/status.js +2 -1
  150. package/dist/builtins/net/status.js.map +1 -1
  151. package/dist/builtins/parametersofplugin.d.ts +1 -1
  152. package/dist/builtins/parametersofplugin.js +1 -1
  153. package/dist/builtins/parametersofplugin.js.map +1 -1
  154. package/dist/builtins/pluginExecute.d.ts +1 -1
  155. package/dist/builtins/pluginExecute.js +3 -1
  156. package/dist/builtins/pluginExecute.js.map +1 -1
  157. package/dist/builtins/proc.d.ts +1 -2
  158. package/dist/builtins/proc.js +98 -9
  159. package/dist/builtins/proc.js.map +1 -1
  160. package/dist/builtins/res/compute.d.ts +1 -1
  161. package/dist/builtins/res/compute.js +2 -1
  162. package/dist/builtins/res/compute.js.map +1 -1
  163. package/dist/builtins/res/dicom.d.ts +2 -2
  164. package/dist/builtins/res/dicom.js +1 -2
  165. package/dist/builtins/res/dicom.js.map +1 -1
  166. package/dist/builtins/res/expect.d.ts +1 -1
  167. package/dist/builtins/res/expect.js +2 -1
  168. package/dist/builtins/res/expect.js.map +1 -1
  169. package/dist/builtins/res/feed.d.ts +1 -1
  170. package/dist/builtins/res/feed.diagram.d.ts +1 -2
  171. package/dist/builtins/res/feed.diagram.js +2 -2
  172. package/dist/builtins/res/feed.diagram.js.map +1 -1
  173. package/dist/builtins/res/feed.js +3 -1
  174. package/dist/builtins/res/feed.js.map +1 -1
  175. package/dist/builtins/res/feed.tree.d.ts +1 -1
  176. package/dist/builtins/res/feed.tree.js +1 -1
  177. package/dist/builtins/res/feed.tree.js.map +1 -1
  178. package/dist/builtins/res/files.d.ts +1 -1
  179. package/dist/builtins/res/files.js +1 -1
  180. package/dist/builtins/res/files.js.map +1 -1
  181. package/dist/builtins/res/gather.d.ts +1 -1
  182. package/dist/builtins/res/gather.js +1 -1
  183. package/dist/builtins/res/gather.js.map +1 -1
  184. package/dist/builtins/res/gather.store.js.map +1 -1
  185. package/dist/builtins/res/group.d.ts +1 -1
  186. package/dist/builtins/res/group.js +1 -1
  187. package/dist/builtins/res/group.js.map +1 -1
  188. package/dist/builtins/res/image.d.ts +1 -20
  189. package/dist/builtins/res/image.js +1 -2
  190. package/dist/builtins/res/image.js.map +1 -1
  191. package/dist/builtins/res/pipeline.d.ts +1 -1
  192. package/dist/builtins/res/pipeline.diagram.d.ts +1 -1
  193. package/dist/builtins/res/pipeline.diagram.js +2 -2
  194. package/dist/builtins/res/pipeline.diagram.js.map +1 -1
  195. package/dist/builtins/res/pipeline.js +3 -1
  196. package/dist/builtins/res/pipeline.js.map +1 -1
  197. package/dist/builtins/res/play.d.ts +1 -1
  198. package/dist/builtins/res/play.js +2 -1
  199. package/dist/builtins/res/play.js.map +1 -1
  200. package/dist/builtins/res/plugin.d.ts +1 -1
  201. package/dist/builtins/res/plugin.info.d.ts +1 -1
  202. package/dist/builtins/res/plugin.info.js +2 -1
  203. package/dist/builtins/res/plugin.info.js.map +1 -1
  204. package/dist/builtins/res/plugin.js +2 -2
  205. package/dist/builtins/res/plugin.js.map +1 -1
  206. package/dist/builtins/res/plugininstance.d.ts +1 -1
  207. package/dist/builtins/res/plugininstance.js +1 -1
  208. package/dist/builtins/res/plugininstance.js.map +1 -1
  209. package/dist/builtins/res/pluginmeta.d.ts +1 -1
  210. package/dist/builtins/res/pluginmeta.js +1 -1
  211. package/dist/builtins/res/pluginmeta.js.map +1 -1
  212. package/dist/builtins/res/record.d.ts +1 -1
  213. package/dist/builtins/res/record.js +1 -1
  214. package/dist/builtins/res/record.js.map +1 -1
  215. package/dist/builtins/res/tag.d.ts +1 -1
  216. package/dist/builtins/res/tag.js +1 -1
  217. package/dist/builtins/res/tag.js.map +1 -1
  218. package/dist/builtins/res/user.d.ts +1 -1
  219. package/dist/builtins/res/user.js +2 -1
  220. package/dist/builtins/res/user.js.map +1 -1
  221. package/dist/builtins/res/workflow.d.ts +1 -1
  222. package/dist/builtins/res/workflow.js +1 -1
  223. package/dist/builtins/res/workflow.js.map +1 -1
  224. package/dist/builtins/store.d.ts +1 -1
  225. package/dist/builtins/store.js +2 -1
  226. package/dist/builtins/store.js.map +1 -1
  227. package/dist/builtins/sys/cal.d.ts +1 -12
  228. package/dist/builtins/sys/cal.js +1 -1
  229. package/dist/builtins/sys/cal.js.map +1 -1
  230. package/dist/builtins/sys/context.d.ts +1 -1
  231. package/dist/builtins/sys/context.js +1 -1
  232. package/dist/builtins/sys/context.js.map +1 -1
  233. package/dist/builtins/sys/date.d.ts +1 -12
  234. package/dist/builtins/sys/date.js +1 -1
  235. package/dist/builtins/sys/date.js.map +1 -1
  236. package/dist/builtins/sys/fortune.d.ts +1 -11
  237. package/dist/builtins/sys/fortune.js +1 -1
  238. package/dist/builtins/sys/fortune.js.map +1 -1
  239. package/dist/builtins/sys/motd.d.ts +1 -18
  240. package/dist/builtins/sys/motd.js +3 -3
  241. package/dist/builtins/sys/motd.js.map +1 -1
  242. package/dist/builtins/sys/notes.d.ts +1 -2
  243. package/dist/builtins/sys/notes.js +1 -2
  244. package/dist/builtins/sys/notes.js.map +1 -1
  245. package/dist/builtins/sys/physicalmode.d.ts +1 -1
  246. package/dist/builtins/sys/physicalmode.js +1 -1
  247. package/dist/builtins/sys/physicalmode.js.map +1 -1
  248. package/dist/builtins/sys/timing.d.ts +1 -1
  249. package/dist/builtins/sys/timing.js +1 -1
  250. package/dist/builtins/sys/timing.js.map +1 -1
  251. package/dist/builtins/sys/version.d.ts +1 -7
  252. package/dist/builtins/sys/version.js +1 -1
  253. package/dist/builtins/sys/version.js.map +1 -1
  254. package/dist/builtins/sys/weather.d.ts +1 -1
  255. package/dist/builtins/sys/weather.js +1 -1
  256. package/dist/builtins/sys/weather.js.map +1 -1
  257. package/dist/builtins/sys/whoami.d.ts +1 -1
  258. package/dist/builtins/sys/whoami.js +2 -1
  259. package/dist/builtins/sys/whoami.js.map +1 -1
  260. package/dist/builtins/utils.d.ts +2 -19
  261. package/dist/builtins/utils.js +5 -55
  262. package/dist/builtins/utils.js.map +1 -1
  263. package/dist/builtins/wildcard.d.ts +4 -53
  264. package/dist/builtins/wildcard.js +3 -177
  265. package/dist/builtins/wildcard.js.map +1 -1
  266. package/dist/chris/backend.d.ts +22 -0
  267. package/dist/chris/backend.js +102 -0
  268. package/dist/chris/backend.js.map +1 -0
  269. package/dist/chris/binEntry.js.map +1 -0
  270. package/dist/chris/binMount.d.ts +60 -0
  271. package/dist/chris/binMount.js +154 -0
  272. package/dist/chris/binMount.js.map +1 -0
  273. package/dist/{core → chris}/chiliDelegate.d.ts +1 -1
  274. package/dist/{core → chris}/chiliDelegate.js +1 -1
  275. package/dist/chris/chiliDelegate.js.map +1 -0
  276. package/dist/chris/chrisCommands.d.ts +14 -0
  277. package/dist/chris/chrisCommands.js +168 -0
  278. package/dist/chris/chrisCommands.js.map +1 -0
  279. package/dist/chris/commandFallback.d.ts +3 -0
  280. package/dist/chris/commandFallback.js +113 -0
  281. package/dist/chris/commandFallback.js.map +1 -0
  282. package/dist/chris/completion.d.ts +3 -0
  283. package/dist/chris/completion.js +100 -0
  284. package/dist/chris/completion.js.map +1 -0
  285. package/dist/chris/connect.js.map +1 -0
  286. package/dist/chris/debug.d.ts +10 -0
  287. package/dist/chris/debug.js +9 -0
  288. package/dist/chris/debug.js.map +1 -0
  289. package/dist/chris/files.d.ts +16 -0
  290. package/dist/chris/files.js +178 -0
  291. package/dist/chris/files.js.map +1 -0
  292. package/dist/chris/filesystem.d.ts +3 -0
  293. package/dist/chris/filesystem.js +57 -0
  294. package/dist/chris/filesystem.js.map +1 -0
  295. package/dist/chris/help.d.ts +16 -0
  296. package/dist/chris/help.js +1197 -0
  297. package/dist/chris/help.js.map +1 -0
  298. package/dist/chris/jobsState.js.map +1 -0
  299. package/dist/chris/mounts.d.ts +7 -0
  300. package/dist/chris/mounts.js +34 -0
  301. package/dist/chris/mounts.js.map +1 -0
  302. package/dist/chris/navigation.d.ts +40 -0
  303. package/dist/chris/navigation.js +160 -0
  304. package/dist/chris/navigation.js.map +1 -0
  305. package/dist/{core → chris}/promptContext.d.ts +2 -2
  306. package/dist/{core → chris}/promptContext.js +3 -3
  307. package/dist/chris/promptContext.js.map +1 -0
  308. package/dist/chris/references.d.ts +14 -0
  309. package/dist/chris/references.js +113 -0
  310. package/dist/chris/references.js.map +1 -0
  311. package/dist/chris/tasks.d.ts +31 -0
  312. package/dist/chris/tasks.js +55 -0
  313. package/dist/chris/tasks.js.map +1 -0
  314. package/dist/chris/universeLayout.js.map +1 -0
  315. package/dist/chris/watch.d.ts +3 -0
  316. package/dist/chris/watch.js +15 -0
  317. package/dist/chris/watch.js.map +1 -0
  318. package/dist/core/answerKinds.d.ts +32 -0
  319. package/dist/core/answerKinds.js +56 -0
  320. package/dist/core/answerKinds.js.map +1 -0
  321. package/dist/core/backend.d.ts +274 -0
  322. package/dist/core/backend.js +32 -0
  323. package/dist/core/backend.js.map +1 -0
  324. package/dist/core/commandOrder.d.ts +16 -0
  325. package/dist/core/commandOrder.js +17 -0
  326. package/dist/core/commandOrder.js.map +1 -0
  327. package/dist/core/commandRegistry.d.ts +120 -0
  328. package/dist/core/commandRegistry.js +124 -0
  329. package/dist/core/commandRegistry.js.map +1 -0
  330. package/dist/core/coreCommands.d.ts +16 -0
  331. package/dist/core/coreCommands.js +159 -0
  332. package/dist/core/coreCommands.js.map +1 -0
  333. package/dist/core/dispatch.d.ts +2 -19
  334. package/dist/core/dispatch.js +86 -447
  335. package/dist/core/dispatch.js.map +1 -1
  336. package/dist/core/elevation.d.ts +5 -5
  337. package/dist/core/elevation.js +12 -7
  338. package/dist/core/elevation.js.map +1 -1
  339. package/dist/core/engine.d.ts +30 -18
  340. package/dist/core/engine.js +58 -116
  341. package/dist/core/engine.js.map +1 -1
  342. package/dist/core/errorText.d.ts +14 -0
  343. package/dist/core/errorText.js +26 -0
  344. package/dist/core/errorText.js.map +1 -0
  345. package/dist/core/expansion.d.ts +0 -2
  346. package/dist/core/expansion.js +43 -101
  347. package/dist/core/expansion.js.map +1 -1
  348. package/dist/core/fileRefusal.d.ts +4 -15
  349. package/dist/core/fileRefusal.js +4 -26
  350. package/dist/core/fileRefusal.js.map +1 -1
  351. package/dist/core/filesystem.d.ts +27 -0
  352. package/dist/core/filesystem.js +45 -0
  353. package/dist/core/filesystem.js.map +1 -0
  354. package/dist/core/handlerRun.d.ts +30 -0
  355. package/dist/core/handlerRun.js +34 -0
  356. package/dist/core/handlerRun.js.map +1 -0
  357. package/dist/core/paths.d.ts +18 -0
  358. package/dist/core/paths.js +49 -0
  359. package/dist/core/paths.js.map +1 -0
  360. package/dist/core/preprocess.d.ts +1 -1
  361. package/dist/core/preprocess.js +1 -1
  362. package/dist/core/preprocess.js.map +1 -1
  363. package/dist/core/sink.d.ts +1 -1
  364. package/dist/core/sink.js +0 -8
  365. package/dist/core/sink.js.map +1 -1
  366. package/dist/core/taskWatch.d.ts +42 -0
  367. package/dist/core/taskWatch.js +142 -0
  368. package/dist/core/taskWatch.js.map +1 -0
  369. package/dist/core/tasks.d.ts +46 -0
  370. package/dist/core/tasks.js +102 -0
  371. package/dist/core/tasks.js.map +1 -0
  372. package/dist/core.d.ts +22 -0
  373. package/dist/core.js +23 -0
  374. package/dist/core.js.map +1 -0
  375. package/dist/index.d.ts +8 -5
  376. package/dist/index.js +17 -5
  377. package/dist/index.js.map +1 -1
  378. package/dist/lib/completer/index.js +41 -99
  379. package/dist/lib/completer/index.js.map +1 -1
  380. package/dist/lib/prefetch.js +2 -2
  381. package/dist/lib/prefetch.js.map +1 -1
  382. package/dist/lib/vfs/listing.d.ts +1 -1
  383. package/dist/lib/vfs/providers/static.d.ts +15 -6
  384. package/dist/lib/vfs/providers/static.js +20 -43
  385. package/dist/lib/vfs/providers/static.js.map +1 -1
  386. package/dist/lib/vfs/providers/static_content.d.ts +4 -4
  387. package/dist/lib/vfs/providers/static_content.js +4 -24
  388. package/dist/lib/vfs/providers/static_content.js.map +1 -1
  389. package/dist/lib/vfs/vfs.d.ts +11 -2
  390. package/dist/lib/vfs/vfs.js +90 -51
  391. package/dist/lib/vfs/vfs.js.map +1 -1
  392. package/dist/lib/wildcard.d.ts +57 -0
  393. package/dist/lib/wildcard.js +183 -0
  394. package/dist/lib/wildcard.js.map +1 -0
  395. package/dist/notes.json +1 -1
  396. package/dist/null/backend.d.ts +29 -0
  397. package/dist/null/backend.js +41 -0
  398. package/dist/null/backend.js.map +1 -0
  399. package/dist/session/answer.d.ts +4 -4
  400. package/dist/session/answer.js +0 -2
  401. package/dist/session/answer.js.map +1 -1
  402. package/dist/session/index.d.ts +12 -10
  403. package/dist/session/index.js +9 -38
  404. package/dist/session/index.js.map +1 -1
  405. package/package.json +13 -7
  406. package/dist/builtins/fs/folderExists.d.ts +0 -8
  407. package/dist/builtins/fs/folderExists.js +0 -67
  408. package/dist/builtins/fs/folderExists.js.map +0 -1
  409. package/dist/command-keys.d.ts +0 -8
  410. package/dist/command-keys.js +0 -37
  411. package/dist/command-keys.js.map +0 -1
  412. package/dist/core/chiliDelegate.js.map +0 -1
  413. package/dist/core/connect.js.map +0 -1
  414. package/dist/core/jobsState.js.map +0 -1
  415. package/dist/core/promptContext.js.map +0 -1
  416. package/dist/lib/vfs/providers/binEntry.js.map +0 -1
  417. package/dist/universe/universeLayout.js.map +0 -1
  418. /package/dist/{lib/vfs/providers → chris}/binEntry.d.ts +0 -0
  419. /package/dist/{lib/vfs/providers → chris}/binEntry.js +0 -0
  420. /package/dist/{core → chris}/connect.d.ts +0 -0
  421. /package/dist/{core → chris}/connect.js +0 -0
  422. /package/dist/{core → chris}/jobsState.d.ts +0 -0
  423. /package/dist/{core → chris}/jobsState.js +0 -0
  424. /package/dist/{universe → chris}/universeLayout.d.ts +0 -0
  425. /package/dist/{universe → chris}/universeLayout.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backend.js","sourceRoot":"","sources":["../../src/chris/backend.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"binEntry.js","sourceRoot":"","sources":["../../src/chris/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"}
@@ -0,0 +1,60 @@
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 { type VfsOutcome } from '@fnndsc/fond';
11
+ import { Result, type VFSProvider, type VFSItem, type CpOptions } from '@fnndsc/fond';
12
+ /** `/bin`: CUBE's plugins and pipelines. */
13
+ export declare class BinVfsProvider implements VFSProvider {
14
+ /** The prefix this provider handles. */
15
+ prefix: string;
16
+ /**
17
+ * Lists the plugins (as `name-vVERSION`) and the pipelines (by slug).
18
+ *
19
+ * @param pathStr - The absolute path.
20
+ * @param options - Sort controls.
21
+ * @returns The executables.
22
+ */
23
+ list(pathStr: string, options?: {
24
+ sort?: "name" | "size" | "date" | "owner";
25
+ reverse?: boolean;
26
+ }): Promise<Result<VFSItem[]>>;
27
+ /** @inheritdoc */
28
+ cp(src: string, dest: string, options: CpOptions): Promise<VfsOutcome>;
29
+ /**
30
+ * Refuses to copy from `/bin`.
31
+ *
32
+ * @param src - Source path.
33
+ * @param dest - Destination path.
34
+ * @param options - Copy options.
35
+ * @returns False, always.
36
+ */
37
+ private copy_run;
38
+ /** @inheritdoc */
39
+ rm(): Promise<VfsOutcome>;
40
+ /** @inheritdoc */
41
+ rmTree(): Promise<VfsOutcome>;
42
+ /** @inheritdoc */
43
+ read(pathStr: string): Promise<VfsOutcome<string>>;
44
+ /**
45
+ * Reads an entry: a pipeline's summary, or a plugin's manual.
46
+ *
47
+ * @param pathStr - The absolute path of the entry.
48
+ * @returns The text.
49
+ */
50
+ private text_read;
51
+ /** @inheritdoc */
52
+ readBinary(pathStr: string): Promise<VfsOutcome<Buffer>>;
53
+ /**
54
+ * Reads an entry as bytes.
55
+ *
56
+ * @param pathStr - The absolute path of the entry.
57
+ * @returns The text's bytes.
58
+ */
59
+ private bytes_read;
60
+ }
@@ -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/cumin';
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/cumin';
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,3 @@
1
+ import type { BackendFallback } from '../core/backend.js';
2
+ /** The ChRIS backend's fallback. */
3
+ export declare const chrisFallback: BackendFallback;
@@ -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,3 @@
1
+ import type { BackendCompletion } from '../core/backend.js';
2
+ /** What the ChRIS session adds to completion. */
3
+ export declare const chrisCompletion: BackendCompletion;