@fnndsc/brasa 0.56.2 → 0.56.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (333) hide show
  1. package/dist/buildinfo.json +1 -1
  2. package/dist/builtins/berth/berth.d.ts +11 -0
  3. package/dist/builtins/berth/berth.js +53 -22
  4. package/dist/builtins/berth/berth.js.map +1 -1
  5. package/dist/builtins/berth/berthCube.d.ts +17 -2
  6. package/dist/builtins/berth/berthCube.js +22 -10
  7. package/dist/builtins/berth/berthCube.js.map +1 -1
  8. package/dist/builtins/debug.d.ts +24 -3
  9. package/dist/builtins/debug.js +66 -13
  10. package/dist/builtins/debug.js.map +1 -1
  11. package/dist/builtins/fs/acl.args.d.ts +5 -38
  12. package/dist/builtins/fs/acl.args.js +6 -72
  13. package/dist/builtins/fs/acl.args.js.map +1 -1
  14. package/dist/builtins/fs/acl.d.ts +100 -10
  15. package/dist/builtins/fs/acl.js +222 -68
  16. package/dist/builtins/fs/acl.js.map +1 -1
  17. package/dist/builtins/fs/cat.args.d.ts +14 -15
  18. package/dist/builtins/fs/cat.args.js +13 -40
  19. package/dist/builtins/fs/cat.args.js.map +1 -1
  20. package/dist/builtins/fs/cat.d.ts +40 -3
  21. package/dist/builtins/fs/cat.js +89 -10
  22. package/dist/builtins/fs/cat.js.map +1 -1
  23. package/dist/builtins/fs/cd.d.ts +24 -6
  24. package/dist/builtins/fs/cd.js +71 -18
  25. package/dist/builtins/fs/cd.js.map +1 -1
  26. package/dist/builtins/fs/configWrite.d.ts +24 -8
  27. package/dist/builtins/fs/configWrite.js +77 -36
  28. package/dist/builtins/fs/configWrite.js.map +1 -1
  29. package/dist/builtins/fs/cp.d.ts +39 -4
  30. package/dist/builtins/fs/cp.js +120 -55
  31. package/dist/builtins/fs/cp.js.map +1 -1
  32. package/dist/builtins/fs/download.d.ts +12 -1
  33. package/dist/builtins/fs/download.js +24 -4
  34. package/dist/builtins/fs/download.js.map +1 -1
  35. package/dist/builtins/fs/du.d.ts +59 -33
  36. package/dist/builtins/fs/du.js +111 -79
  37. package/dist/builtins/fs/du.js.map +1 -1
  38. package/dist/builtins/fs/edit.d.ts +19 -4
  39. package/dist/builtins/fs/edit.js +77 -16
  40. package/dist/builtins/fs/edit.js.map +1 -1
  41. package/dist/builtins/fs/find.d.ts +25 -0
  42. package/dist/builtins/fs/find.js +76 -5
  43. package/dist/builtins/fs/find.js.map +1 -1
  44. package/dist/builtins/fs/mkdir.d.ts +28 -18
  45. package/dist/builtins/fs/mkdir.js +95 -66
  46. package/dist/builtins/fs/mkdir.js.map +1 -1
  47. package/dist/builtins/fs/mv.d.ts +34 -4
  48. package/dist/builtins/fs/mv.js +129 -64
  49. package/dist/builtins/fs/mv.js.map +1 -1
  50. package/dist/builtins/fs/pull.args.d.ts +56 -17
  51. package/dist/builtins/fs/pull.args.js +16 -66
  52. package/dist/builtins/fs/pull.args.js.map +1 -1
  53. package/dist/builtins/fs/pull.d.ts +62 -0
  54. package/dist/builtins/fs/pull.js +86 -22
  55. package/dist/builtins/fs/pull.js.map +1 -1
  56. package/dist/builtins/fs/pwd.d.ts +19 -5
  57. package/dist/builtins/fs/pwd.js +62 -8
  58. package/dist/builtins/fs/pwd.js.map +1 -1
  59. package/dist/builtins/fs/rm.d.ts +58 -21
  60. package/dist/builtins/fs/rm.js +99 -82
  61. package/dist/builtins/fs/rm.js.map +1 -1
  62. package/dist/builtins/fs/rmdir.d.ts +29 -11
  63. package/dist/builtins/fs/rmdir.js +87 -36
  64. package/dist/builtins/fs/rmdir.js.map +1 -1
  65. package/dist/builtins/fs/touch.d.ts +44 -9
  66. package/dist/builtins/fs/touch.js +91 -27
  67. package/dist/builtins/fs/touch.js.map +1 -1
  68. package/dist/builtins/fs/transferJobs.d.ts +64 -0
  69. package/dist/builtins/fs/transferJobs.js +98 -0
  70. package/dist/builtins/fs/transferJobs.js.map +1 -0
  71. package/dist/builtins/fs/tree.d.ts +36 -9
  72. package/dist/builtins/fs/tree.js +126 -36
  73. package/dist/builtins/fs/tree.js.map +1 -1
  74. package/dist/builtins/fs/upload.d.ts +35 -3
  75. package/dist/builtins/fs/upload.js +99 -14
  76. package/dist/builtins/fs/upload.js.map +1 -1
  77. package/dist/builtins/fs/xattr.args.d.ts +12 -33
  78. package/dist/builtins/fs/xattr.args.js +17 -95
  79. package/dist/builtins/fs/xattr.args.js.map +1 -1
  80. package/dist/builtins/fs/xattr.d.ts +98 -8
  81. package/dist/builtins/fs/xattr.js +163 -24
  82. package/dist/builtins/fs/xattr.js.map +1 -1
  83. package/dist/builtins/games/bytes.d.ts +201 -5
  84. package/dist/builtins/games/bytes.js +255 -54
  85. package/dist/builtins/games/bytes.js.map +1 -1
  86. package/dist/builtins/games/chimes.d.ts +180 -3
  87. package/dist/builtins/games/chimes.js +203 -26
  88. package/dist/builtins/games/chimes.js.map +1 -1
  89. package/dist/builtins/games/chrislab.d.ts +101 -3
  90. package/dist/builtins/games/chrislab.js +117 -17
  91. package/dist/builtins/games/chrislab.js.map +1 -1
  92. package/dist/builtins/games/cowsay.d.ts +93 -2
  93. package/dist/builtins/games/cowsay.js +90 -31
  94. package/dist/builtins/games/cowsay.js.map +1 -1
  95. package/dist/builtins/games/figlet.d.ts +70 -2
  96. package/dist/builtins/games/figlet.js +83 -6
  97. package/dist/builtins/games/figlet.js.map +1 -1
  98. package/dist/builtins/games/lab.d.ts +104 -5
  99. package/dist/builtins/games/lab.js +144 -6
  100. package/dist/builtins/games/lab.js.map +1 -1
  101. package/dist/builtins/games/lolcat.d.ts +61 -1
  102. package/dist/builtins/games/lolcat.js +59 -24
  103. package/dist/builtins/games/lolcat.js.map +1 -1
  104. package/dist/builtins/games/morse.d.ts +36 -1
  105. package/dist/builtins/games/morse.js +50 -2
  106. package/dist/builtins/games/morse.js.map +1 -1
  107. package/dist/builtins/games/numbers.d.ts +241 -5
  108. package/dist/builtins/games/numbers.js +298 -23
  109. package/dist/builtins/games/numbers.js.map +1 -1
  110. package/dist/builtins/games/play.d.ts +96 -6
  111. package/dist/builtins/games/play.js +137 -6
  112. package/dist/builtins/games/play.js.map +1 -1
  113. package/dist/builtins/games/qr.d.ts +40 -1
  114. package/dist/builtins/games/qr.js +51 -2
  115. package/dist/builtins/games/qr.js.map +1 -1
  116. package/dist/builtins/games/show.d.ts +131 -6
  117. package/dist/builtins/games/show.js +208 -20
  118. package/dist/builtins/games/show.js.map +1 -1
  119. package/dist/builtins/games/sky.d.ts +178 -4
  120. package/dist/builtins/games/sky.js +228 -12
  121. package/dist/builtins/games/sky.js.map +1 -1
  122. package/dist/builtins/games/text.d.ts +258 -7
  123. package/dist/builtins/games/text.js +310 -29
  124. package/dist/builtins/games/text.js.map +1 -1
  125. package/dist/builtins/games/trek.d.ts +67 -3
  126. package/dist/builtins/games/trek.js +63 -10
  127. package/dist/builtins/games/trek.js.map +1 -1
  128. package/dist/builtins/games/wtf.d.ts +58 -1
  129. package/dist/builtins/games/wtf.js +67 -6
  130. package/dist/builtins/games/wtf.js.map +1 -1
  131. package/dist/builtins/help.d.ts +38 -2
  132. package/dist/builtins/help.js +76 -769
  133. package/dist/builtins/help.js.map +1 -1
  134. package/dist/builtins/helpSections.js +4 -1
  135. package/dist/builtins/helpSections.js.map +1 -1
  136. package/dist/builtins/net/connect.d.ts +36 -3
  137. package/dist/builtins/net/connect.js +84 -26
  138. package/dist/builtins/net/connect.js.map +1 -1
  139. package/dist/builtins/net/cubepath.d.ts +49 -5
  140. package/dist/builtins/net/cubepath.js +69 -27
  141. package/dist/builtins/net/cubepath.js.map +1 -1
  142. package/dist/builtins/net/logout.d.ts +13 -4
  143. package/dist/builtins/net/logout.js +49 -3
  144. package/dist/builtins/net/logout.js.map +1 -1
  145. package/dist/builtins/net/netstat.d.ts +29 -4
  146. package/dist/builtins/net/netstat.js +64 -23
  147. package/dist/builtins/net/netstat.js.map +1 -1
  148. package/dist/builtins/net/pacs.d.ts +169 -15
  149. package/dist/builtins/net/pacs.js +92 -33
  150. package/dist/builtins/net/pacs.js.map +1 -1
  151. package/dist/builtins/net/query.args.d.ts +95 -0
  152. package/dist/builtins/net/query.args.js +26 -0
  153. package/dist/builtins/net/query.args.js.map +1 -0
  154. package/dist/builtins/net/query.d.ts +98 -5
  155. package/dist/builtins/net/query.js +89 -83
  156. package/dist/builtins/net/query.js.map +1 -1
  157. package/dist/builtins/net/status.d.ts +5 -3
  158. package/dist/builtins/net/status.js +5 -12
  159. package/dist/builtins/net/status.js.map +1 -1
  160. package/dist/builtins/parametersofplugin.d.ts +82 -3
  161. package/dist/builtins/parametersofplugin.js +79 -23
  162. package/dist/builtins/parametersofplugin.js.map +1 -1
  163. package/dist/builtins/proc.d.ts +210 -3
  164. package/dist/builtins/proc.js +210 -119
  165. package/dist/builtins/proc.js.map +1 -1
  166. package/dist/builtins/res/compute.d.ts +67 -3
  167. package/dist/builtins/res/compute.js +121 -35
  168. package/dist/builtins/res/compute.js.map +1 -1
  169. package/dist/builtins/res/dicom.d.ts +52 -3
  170. package/dist/builtins/res/dicom.js +82 -34
  171. package/dist/builtins/res/dicom.js.map +1 -1
  172. package/dist/builtins/res/expect.d.ts +52 -3
  173. package/dist/builtins/res/expect.js +92 -29
  174. package/dist/builtins/res/expect.js.map +1 -1
  175. package/dist/builtins/res/feed.d.ts +475 -3
  176. package/dist/builtins/res/feed.js +253 -158
  177. package/dist/builtins/res/feed.js.map +1 -1
  178. package/dist/builtins/res/files.d.ts +517 -3
  179. package/dist/builtins/res/files.js +124 -44
  180. package/dist/builtins/res/files.js.map +1 -1
  181. package/dist/builtins/res/gather.d.ts +113 -3
  182. package/dist/builtins/res/gather.js +153 -44
  183. package/dist/builtins/res/gather.js.map +1 -1
  184. package/dist/builtins/res/gather.process.d.ts +27 -19
  185. package/dist/builtins/res/gather.process.js +29 -59
  186. package/dist/builtins/res/gather.process.js.map +1 -1
  187. package/dist/builtins/res/group.d.ts +284 -3
  188. package/dist/builtins/res/group.js +147 -76
  189. package/dist/builtins/res/group.js.map +1 -1
  190. package/dist/builtins/res/image.d.ts +30 -2
  191. package/dist/builtins/res/image.js +62 -10
  192. package/dist/builtins/res/image.js.map +1 -1
  193. package/dist/builtins/res/play.d.ts +71 -9
  194. package/dist/builtins/res/play.js +124 -82
  195. package/dist/builtins/res/play.js.map +1 -1
  196. package/dist/builtins/res/plugininstance.d.ts +307 -2
  197. package/dist/builtins/res/plugininstance.js +122 -50
  198. package/dist/builtins/res/plugininstance.js.map +1 -1
  199. package/dist/builtins/res/pluginmeta.d.ts +244 -2
  200. package/dist/builtins/res/pluginmeta.js +98 -40
  201. package/dist/builtins/res/pluginmeta.js.map +1 -1
  202. package/dist/builtins/res/record.d.ts +37 -3
  203. package/dist/builtins/res/record.js +127 -57
  204. package/dist/builtins/res/record.js.map +1 -1
  205. package/dist/builtins/res/resourceList.d.ts +136 -0
  206. package/dist/builtins/res/resourceList.js +51 -0
  207. package/dist/builtins/res/resourceList.js.map +1 -0
  208. package/dist/builtins/res/tag.d.ts +244 -3
  209. package/dist/builtins/res/tag.js +97 -41
  210. package/dist/builtins/res/tag.js.map +1 -1
  211. package/dist/builtins/res/user.d.ts +122 -3
  212. package/dist/builtins/res/user.js +83 -21
  213. package/dist/builtins/res/user.js.map +1 -1
  214. package/dist/builtins/res/workflow.d.ts +244 -2
  215. package/dist/builtins/res/workflow.js +97 -40
  216. package/dist/builtins/res/workflow.js.map +1 -1
  217. package/dist/builtins/store.d.ts +85 -3
  218. package/dist/builtins/store.js +135 -68
  219. package/dist/builtins/store.js.map +1 -1
  220. package/dist/builtins/sys/apropos.d.ts +80 -5
  221. package/dist/builtins/sys/apropos.js +121 -15
  222. package/dist/builtins/sys/apropos.js.map +1 -1
  223. package/dist/builtins/sys/cal.d.ts +44 -5
  224. package/dist/builtins/sys/cal.js +57 -10
  225. package/dist/builtins/sys/cal.js.map +1 -1
  226. package/dist/builtins/sys/command.d.ts +20 -0
  227. package/dist/builtins/sys/command.js +31 -0
  228. package/dist/builtins/sys/command.js.map +1 -1
  229. package/dist/builtins/sys/context.d.ts +13 -3
  230. package/dist/builtins/sys/context.js +51 -4
  231. package/dist/builtins/sys/context.js.map +1 -1
  232. package/dist/builtins/sys/date.d.ts +56 -5
  233. package/dist/builtins/sys/date.js +63 -9
  234. package/dist/builtins/sys/date.js.map +1 -1
  235. package/dist/builtins/sys/echo.d.ts +63 -2
  236. package/dist/builtins/sys/echo.js +87 -8
  237. package/dist/builtins/sys/echo.js.map +1 -1
  238. package/dist/builtins/sys/fortune.d.ts +27 -2
  239. package/dist/builtins/sys/fortune.js +44 -2
  240. package/dist/builtins/sys/fortune.js.map +1 -1
  241. package/dist/builtins/sys/grep.d.ts +245 -11
  242. package/dist/builtins/sys/grep.js +418 -131
  243. package/dist/builtins/sys/grep.js.map +1 -1
  244. package/dist/builtins/sys/joblets.d.ts +66 -7
  245. package/dist/builtins/sys/joblets.js +101 -14
  246. package/dist/builtins/sys/joblets.js.map +1 -1
  247. package/dist/builtins/sys/motd.d.ts +37 -3
  248. package/dist/builtins/sys/motd.js +49 -8
  249. package/dist/builtins/sys/motd.js.map +1 -1
  250. package/dist/builtins/sys/notes.d.ts +75 -3
  251. package/dist/builtins/sys/notes.js +90 -29
  252. package/dist/builtins/sys/notes.js.map +1 -1
  253. package/dist/builtins/sys/physicalmode.d.ts +24 -3
  254. package/dist/builtins/sys/physicalmode.js +68 -14
  255. package/dist/builtins/sys/physicalmode.js.map +1 -1
  256. package/dist/builtins/sys/tasks.d.ts +74 -5
  257. package/dist/builtins/sys/tasks.js +102 -14
  258. package/dist/builtins/sys/tasks.js.map +1 -1
  259. package/dist/builtins/sys/textFilters.d.ts +673 -41
  260. package/dist/builtins/sys/textFilters.js +718 -263
  261. package/dist/builtins/sys/textFilters.js.map +1 -1
  262. package/dist/builtins/sys/timing.d.ts +24 -3
  263. package/dist/builtins/sys/timing.js +67 -14
  264. package/dist/builtins/sys/timing.js.map +1 -1
  265. package/dist/builtins/sys/variables.d.ts +70 -4
  266. package/dist/builtins/sys/variables.js +103 -31
  267. package/dist/builtins/sys/variables.js.map +1 -1
  268. package/dist/builtins/sys/version.d.ts +27 -2
  269. package/dist/builtins/sys/version.js +48 -3
  270. package/dist/builtins/sys/version.js.map +1 -1
  271. package/dist/builtins/sys/weather.d.ts +92 -15
  272. package/dist/builtins/sys/weather.js +71 -45
  273. package/dist/builtins/sys/weather.js.map +1 -1
  274. package/dist/builtins/sys/whoami.d.ts +38 -18
  275. package/dist/builtins/sys/whoami.js +112 -8
  276. package/dist/builtins/sys/whoami.js.map +1 -1
  277. package/dist/builtins/utils.d.ts +0 -37
  278. package/dist/builtins/utils.js +0 -86
  279. package/dist/builtins/utils.js.map +1 -1
  280. package/dist/chris/chrisCommands.js +58 -152
  281. package/dist/chris/chrisCommands.js.map +1 -1
  282. package/dist/chris/commandFallback.d.ts +12 -0
  283. package/dist/chris/commandFallback.js +47 -0
  284. package/dist/chris/commandFallback.js.map +1 -1
  285. package/dist/chris/filesystem.js +7 -5
  286. package/dist/chris/filesystem.js.map +1 -1
  287. package/dist/chris/help.js +0 -1018
  288. package/dist/chris/help.js.map +1 -1
  289. package/dist/chris/kinds.d.ts +21 -0
  290. package/dist/chris/kinds.js +114 -2
  291. package/dist/chris/kinds.js.map +1 -1
  292. package/dist/chris/mounts.d.ts +4 -4
  293. package/dist/chris/mounts.js +9 -16
  294. package/dist/chris/mounts.js.map +1 -1
  295. package/dist/chris/navigation.d.ts +2 -3
  296. package/dist/chris/navigation.js +6 -20
  297. package/dist/chris/navigation.js.map +1 -1
  298. package/dist/chris/pacsResources.d.ts +259 -0
  299. package/dist/chris/pacsResources.js +168 -0
  300. package/dist/chris/pacsResources.js.map +1 -0
  301. package/dist/core/commandDeclaration.d.ts +97 -7
  302. package/dist/core/commandDeclaration.js +21 -0
  303. package/dist/core/commandDeclaration.js.map +1 -1
  304. package/dist/core/commandParse.js +65 -17
  305. package/dist/core/commandParse.js.map +1 -1
  306. package/dist/core/commandRegistry.d.ts +4 -3
  307. package/dist/core/commandRegistry.js +36 -8
  308. package/dist/core/commandRegistry.js.map +1 -1
  309. package/dist/core/commandSchema.js +5 -2
  310. package/dist/core/commandSchema.js.map +1 -1
  311. package/dist/core/commandUsage.d.ts +15 -0
  312. package/dist/core/commandUsage.js +59 -7
  313. package/dist/core/commandUsage.js.map +1 -1
  314. package/dist/core/coreCommands.js +63 -212
  315. package/dist/core/coreCommands.js.map +1 -1
  316. package/dist/core/paths.d.ts +29 -1
  317. package/dist/core/paths.js +15 -2
  318. package/dist/core/paths.js.map +1 -1
  319. package/dist/core/preprocess.d.ts +3 -4
  320. package/dist/core/preprocess.js +4 -5
  321. package/dist/core/preprocess.js.map +1 -1
  322. package/dist/lib/completer/declared.js +7 -4
  323. package/dist/lib/completer/declared.js.map +1 -1
  324. package/dist/lib/completer/index.js +2 -7
  325. package/dist/lib/completer/index.js.map +1 -1
  326. package/dist/lib/parser.d.ts +0 -8
  327. package/dist/lib/parser.js +0 -11
  328. package/dist/lib/parser.js.map +1 -1
  329. package/dist/lib/vfs/vfs.d.ts +2 -1
  330. package/dist/lib/vfs/vfs.js +5 -4
  331. package/dist/lib/vfs/vfs.js.map +1 -1
  332. package/dist/notes.json +1 -1
  333. package/package.json +5 -5
@@ -6,7 +6,10 @@
6
6
  * The walk reads every folder through the listing cache (`vfs.listing_get`),
7
7
  * the same listings `ls` reads, so a tree already seen is walked without a
8
8
  * word to CUBE; only a folder never listed, or one whose listing expired, is
9
- * fetched. Links are not followed (POSIX's default). A long walk says how far
9
+ * fetched. A starting point is walked where the store keeps it
10
+ * (`storePath_resolve`: a run's `data` path, a link named on the line, as
11
+ * POSIX's `-H`), and links met below it are not followed (POSIX's default),
12
+ * the paths printed as the starting point was typed. A long walk says how far
10
13
  * it has got, and Ctrl-C stops it, saying where; a folder that cannot be read
11
14
  * is named and the command fails, as POSIX `find` does, without stopping the
12
15
  * walk.
@@ -17,11 +20,15 @@
17
20
  * `-mindepth N`; actions `-print` (the default) and `-print0`. Anything else
18
21
  * is refused by name.
19
22
  *
23
+ * Declared in one record (`findCommand`) as an expression grammar: its words
24
+ * are tests and operators, not options, so it parses them itself and
25
+ * completes them itself (`find_complete`).
26
+ *
20
27
  * @module
21
28
  */
22
29
  import chalk from 'chalk';
23
30
  import path from 'path';
24
- import { path_resolve } from '../utils.js';
31
+ import { path_resolve, storePath_resolve } from '../utils.js';
25
32
  import { vfs } from '../../lib/vfs/vfs.js';
26
33
  import { vfsDispatcher_get } from '../../core/filesystem.js';
27
34
  import { spinner } from '../../lib/spinner.js';
@@ -299,8 +306,10 @@ export async function builtin_find(args) {
299
306
  };
300
307
  try {
301
308
  for (const start of query.starts) {
302
- const resolved = await path_resolve(start);
303
- const shownRoot = start.startsWith('~') ? resolved : start;
309
+ // Walked where the store keeps it: a run's data path, a link on the line.
310
+ const resolved = await storePath_resolve(start);
311
+ const logical = await path_resolve(start);
312
+ const shownRoot = start.startsWith('~') ? logical : start;
304
313
  const self = await vfs.listing_get(resolved, { directory: true });
305
314
  const entry = self.ok ? self.value.items[0] : undefined;
306
315
  if (entry === undefined) {
@@ -309,7 +318,7 @@ export async function builtin_find(args) {
309
318
  continue;
310
319
  }
311
320
  const rootType = itemType_derive(entry);
312
- visit({ shown: shownRoot, name: path.posix.basename(resolved) || resolved, type: rootType, date: entry.date || undefined, depth: 0 });
321
+ visit({ shown: shownRoot, name: path.posix.basename(logical) || logical, type: rootType, date: entry.date || undefined, depth: 0 });
313
322
  if (rootType !== 'd')
314
323
  continue;
315
324
  // Depth first, in listing order: an entry, then everything beneath it.
@@ -426,4 +435,66 @@ export async function builtin_find(args) {
426
435
  const failed = failures !== unjudgedNote;
427
436
  return { status: failed ? 'error' : 'ok', rendered: out.join(''), renderedErr: failures === '' ? undefined : (failed ? chalk.red(failures) : chalk.yellow(failures)) };
428
437
  }
438
+ /** find's tests, operators and actions, as completion offers them. */
439
+ const FIND_PRIMARIES = [
440
+ '-name', '-iname', '-path', '-ipath', '-type', '-newermt', '-status', '-plugin', '-pipeline', '-workflow',
441
+ '-maxdepth', '-mindepth', '-print', '-print0', '-true', '-false', '-not', '-o', '-or', '-a', '-and',
442
+ ];
443
+ /** The tests that take the next word as their argument. */
444
+ const FIND_TAKES_ARGUMENT = new Set([
445
+ '-name', '-iname', '-path', '-ipath', '-wholename', '-type', '-newermt', '-status', '-plugin', '-pipeline', '-workflow', '-maxdepth', '-mindepth',
446
+ ]);
447
+ /** The statuses `-status` most often asks for. */
448
+ const FIND_STATUSES = ['finishedSuccessfully', 'finishedWithError', 'started', 'scheduled', 'waiting', 'cancelled'];
449
+ /**
450
+ * Completes one word of a `find` line: a path among the starting points, a
451
+ * test or operator once the expression has begun (or when a dash is typed),
452
+ * and `-type`'s and `-status`'s words.
453
+ *
454
+ * @param words - The words before the one completed.
455
+ * @param word - The word typed so far.
456
+ * @returns The candidates.
457
+ *
458
+ * @example
459
+ * ```ts
460
+ * await find_complete(['.', '-type'], ''); // ['f', 'd', 'l']
461
+ * ```
462
+ */
463
+ export async function find_complete(words, word) {
464
+ const previous = words.at(-1);
465
+ if (previous === '-type')
466
+ return ['f', 'd', 'l'].filter((kind) => kind.startsWith(word));
467
+ if (previous === '-status')
468
+ return FIND_STATUSES.filter((status) => status.startsWith(word));
469
+ if (previous !== undefined && FIND_TAKES_ARGUMENT.has(previous))
470
+ return [];
471
+ const begun = words.some((one) => /^[-!(]/.test(one));
472
+ if (begun || word.startsWith('-'))
473
+ return FIND_PRIMARIES.filter((primary) => primary.startsWith(word));
474
+ const { cfsPaths_complete } = await import('../../lib/completer/cfsPaths.js');
475
+ return cfsPaths_complete(word);
476
+ }
477
+ /**
478
+ * `find [path...] [expression]`: the declaration, an expression grammar.
479
+ *
480
+ * @example
481
+ * ```ts
482
+ * commands_register({ declarations: [findCommand] });
483
+ * ```
484
+ */
485
+ export const findCommand = {
486
+ name: 'find',
487
+ grammar: 'expression',
488
+ help: {
489
+ usage: 'find [path...] [expression]',
490
+ summary: 'Walk folders and print the paths an expression selects',
491
+ description: "Walk from each path (. when none) and print the paths the expression selects. Tests and actions join by implicit AND, -o, ! (or -not) and parentheses. A starting point is walked where the store keeps it, so a run's data path and a link named on the line are walked at their target; links met below it are not followed. Folders are read from the listing cache, so a tree already seen is walked without asking CUBE; /proc/jobs is answered whole from the session's job index. A long walk says how far it has got; Ctrl-C stops it and says where. Tests: -name PATTERN and -iname PATTERN (the entry's name matches a shell pattern; -iname ignores case); -path PATTERN and -ipath PATTERN (the printed path matches; * crosses /); -type f|d|l (a file, a folder, a link); -newermt DATE (changed after DATE: 2026-10-10, or an ISO time); -status PATTERN (a job's or feed's status in /proc/jobs: finishedWithError, started, ...); -plugin PATTERN (the plugin a job ran in /proc/jobs: pl-dircopy, 'pl-dy*'); -pipeline PATTERN (the pipeline whose run made a job in /proc/jobs; '' is a direct run); -workflow ID (the pipeline run that made a job in /proc/jobs). Options: -maxdepth N and -mindepth N (descend at most N levels; test only from level N). Actions: -print (the default) and -print0 (end each path with NUL).",
492
+ category: 'Files',
493
+ posix: { group: 'Files', differs: 'walks the namespace through the listing cache; a starting point is walked at its target, links below it are not followed' },
494
+ examples: ["find ~ -name '*.nii'", 'find ~/feeds -maxdepth 2 -type d', "find . -name '*.json' -o -name '*.csv'", 'find /proc/jobs -plugin pl-dircopy -status finishedWithError', 'find /proc/jobs -maxdepth 1 -newermt 2026-10-10'],
495
+ },
496
+ holds: [],
497
+ handler: (args) => builtin_find(args),
498
+ complete: find_complete,
499
+ };
429
500
  //# sourceMappingURL=find.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"find.js","sourceRoot":"","sources":["../../../src/builtins/fs/find.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"find.js","sourceRoot":"","sources":["../../../src/builtins/fs/find.ts"],"names":[],"mappings":"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"}
@@ -17,19 +17,37 @@ export interface MkdirOptions {
17
17
  */
18
18
  parents?: boolean;
19
19
  }
20
- /** Parsed `mkdir` arguments, or the option it refuses. */
21
- export type MkdirArgs = MkdirOptions | {
22
- refused: string;
23
- };
24
20
  /**
25
- * Parses `mkdir` arguments: `-p` / `--parents`, and `--` to end options.
26
- * Any other option is refused by name rather than taken for a path — a
27
- * `-p` the session did not know once became a folder named `-p`.
21
+ * `mkdir [-p] <directory…>`: the declaration.
28
22
  *
29
- * @param args - Raw command arguments.
30
- * @returns The options, or the refusal line for the first unknown option.
23
+ * @example
24
+ * ```ts
25
+ * commands_register({ declarations: [mkdirCommand] });
26
+ * ```
31
27
  */
32
- export declare function mkdirArgs_parse(args: string[]): MkdirArgs;
28
+ export declare const mkdirCommand: import("../../core/commandDeclaration.js").CommandDeclaration<{
29
+ readonly operands: readonly [{
30
+ readonly name: "paths";
31
+ readonly kind: "cfsPath";
32
+ readonly repeat: true;
33
+ readonly glob: true;
34
+ readonly summary: "The folders to make";
35
+ }];
36
+ readonly options: {
37
+ readonly parents: {
38
+ readonly short: "p";
39
+ readonly long: "parents";
40
+ readonly summary: "Make missing parents too, and take a folder already there as done";
41
+ };
42
+ };
43
+ }>;
44
+ /**
45
+ * `mkdir` over words already split: the declaration's parse and handler.
46
+ *
47
+ * @param args - The words after `mkdir`.
48
+ * @returns The envelope from {@link mkdir_run}, or the refusal of a bad line.
49
+ */
50
+ export declare function builtin_mkdir(args: string[]): Promise<CommandEnvelope>;
33
51
  /**
34
52
  * Creates directories: the shared typed core behind the parsed builtin and
35
53
  * the typed API.
@@ -39,11 +57,3 @@ export declare function mkdirArgs_parse(args: string[]): MkdirArgs;
39
57
  * model lists per-target outcomes.
40
58
  */
41
59
  export declare function mkdir_run(options: MkdirOptions): Promise<CommandEnvelope>;
42
- /**
43
- * Creates directories from parsed command-line arguments.
44
- *
45
- * @param args - Command line arguments (`-p` and directory paths).
46
- * @returns The envelope from {@link mkdir_run}, or the refusal of an
47
- * option mkdir does not have.
48
- */
49
- export declare function builtin_mkdir(args: string[]): Promise<CommandEnvelope>;
@@ -1,14 +1,35 @@
1
1
  /**
2
- * @file Builtin mkdir command.
3
- * Creates directories, reported as a command envelope.
2
+ * @file `mkdir`: makes folders in ChRIS's filesystem (CFS).
3
+ *
4
+ * Declared in one record (`mkdirCommand`): folders, which glob, and `-p`.
5
+ * A path through a link is made where the link points; a path a projection
6
+ * holds itself (a tag under /proc/tags) is the projection's to make.
7
+ *
8
+ * Key components:
9
+ * - mkdirCommand: the declaration.
10
+ * - builtin_mkdir: the declaration run over words already split.
11
+ * - mkdir_run: the typed core behind both, and the typed API.
12
+ *
13
+ * Typical usage:
14
+ * ```ts
15
+ * await builtin_mkdir(['-p', 'experiments/run1']);
16
+ * await mkdir_run({ paths: ['experiments/run1'], parents: true });
17
+ * ```
18
+ *
19
+ * Dependencies: the session's filesystem and listing cache, the store-path
20
+ * resolver, and the error stack (a provider's reason).
21
+ *
22
+ * @module
4
23
  */
5
- import { vfsOutcome_convertToResult, mkdir_render } from '@fnndsc/fond';
24
+ import { errno_words, vfsOutcome_convertToResult, mkdir_render } from '@fnndsc/fond';
6
25
  import chalk from 'chalk';
7
- import { path_resolve, error_stripDebugPrefix } from '../utils.js';
26
+ import { path_resolve, storePath_resolve, error_stripDebugPrefix } from '../utils.js';
8
27
  import { listingCache_get, vfsDispatcher_get } from '../../core/filesystem.js';
9
28
  import { pathEntry_find, entry_isFolder, folderTree_make } from './entries.js';
10
29
  import { errorStack } from '@fnndsc/fond';
11
30
  import { envelope_ok, envelope_error } from '@fnndsc/menu';
31
+ import { command_declare } from '../../core/commandDeclaration.js';
32
+ import { declaredCommand_run } from '../../core/commandParse.js';
12
33
  /**
13
34
  * Makes a folder in a projection. Under `-p` a folder already there is
14
35
  * fine, as it is on a disk; without it the projection's own refusal stands.
@@ -66,39 +87,63 @@ function ancestors_invalidate(targetPath) {
66
87
  }
67
88
  }
68
89
  /**
69
- * Parses `mkdir` arguments: `-p` / `--parents`, and `--` to end options.
70
- * Any other option is refused by name rather than taken for a path — a
71
- * `-p` the session did not know once became a folder named `-p`.
90
+ * Forgets the listings a made folder changed, by the session's path and by
91
+ * the store's: its parent's, or under `-p` every one above it that is behind.
72
92
  *
73
- * @param args - Raw command arguments.
74
- * @returns The options, or the refusal line for the first unknown option.
93
+ * @param shown - The folder as the session names it.
94
+ * @param targetPath - The folder in the store.
95
+ * @param parents - Whether `-p` was given.
75
96
  */
76
- export function mkdirArgs_parse(args) {
77
- let parents = false;
78
- const paths = [];
79
- let endOfOptions = false;
80
- for (const arg of args) {
81
- if (endOfOptions || arg === '-' || !arg.startsWith('-')) {
82
- paths.push(arg);
83
- continue;
84
- }
85
- if (arg === '--') {
86
- endOfOptions = true;
87
- continue;
88
- }
89
- if (arg === '--parents') {
90
- parents = true;
91
- continue;
92
- }
93
- if (arg.startsWith('--'))
94
- return { refused: `mkdir: unrecognized option '${arg}'` };
95
- for (const flag of arg.substring(1)) {
96
- if (flag !== 'p')
97
- return { refused: `mkdir: invalid option -- '${flag}'` };
98
- parents = true;
99
- }
97
+ function listings_forget(shown, targetPath, parents) {
98
+ for (const at of new Set([shown, targetPath])) {
99
+ if (parents)
100
+ ancestors_invalidate(at);
101
+ else
102
+ listingCache_get().cache_invalidate?.(at.substring(0, at.lastIndexOf('/')) || '/');
100
103
  }
101
- return { paths, parents };
104
+ }
105
+ /** What an `mkdir` line may hold. */
106
+ const MKDIR_GRAMMAR = {
107
+ operands: [
108
+ { name: 'paths', kind: 'cfsPath', repeat: true, glob: true, summary: 'The folders to make' },
109
+ ],
110
+ options: {
111
+ parents: { short: 'p', long: 'parents', summary: 'Make missing parents too, and take a folder already there as done' },
112
+ },
113
+ };
114
+ /**
115
+ * `mkdir [-p] <directory…>`: the declaration.
116
+ *
117
+ * @example
118
+ * ```ts
119
+ * commands_register({ declarations: [mkdirCommand] });
120
+ * ```
121
+ */
122
+ export const mkdirCommand = command_declare({
123
+ name: 'mkdir',
124
+ grammar: MKDIR_GRAMMAR,
125
+ help: {
126
+ summary: 'Create directories',
127
+ description: 'Makes each folder in ChRIS\'s filesystem. Without -p, as on Linux: a missing parent is "No such file or directory" and an existing folder is "File exists". A path through a link is made where the link points. Under /proc/tags a folder is a tag.',
128
+ category: 'Files',
129
+ posix: { group: 'Files', differs: 'makes CFS folders; -p for parents' },
130
+ examples: [
131
+ 'mkdir newdir # Create single directory',
132
+ 'mkdir dir1 dir2 # Create multiple directories',
133
+ 'mkdir -p experiments/run1 # Create nested directory, parents included',
134
+ 'mkdir /proc/tags/urgent # Make a tag (setfattr hangs it on a feed)',
135
+ ],
136
+ },
137
+ handler: async (args) => mkdir_run({ paths: args.operands.paths, parents: args.options.parents }),
138
+ });
139
+ /**
140
+ * `mkdir` over words already split: the declaration's parse and handler.
141
+ *
142
+ * @param args - The words after `mkdir`.
143
+ * @returns The envelope from {@link mkdir_run}, or the refusal of a bad line.
144
+ */
145
+ export async function builtin_mkdir(args) {
146
+ return declaredCommand_run(mkdirCommand, args);
102
147
  }
103
148
  /**
104
149
  * Creates directories: the shared typed core behind the parsed builtin and
@@ -119,57 +164,54 @@ export async function mkdir_run(options) {
119
164
  const outcomes = [];
120
165
  for (const pathArg of args) {
121
166
  try {
122
- const targetPath = await path_resolve(pathArg);
123
- const parentDir = targetPath.substring(0, targetPath.lastIndexOf('/')) || '/';
167
+ const shown = await path_resolve(pathArg);
168
+ const targetPath = await storePath_resolve(pathArg);
124
169
  // A projection that makes folders (a tag under /proc/tags) makes them
125
170
  // itself; one that makes none refuses by name.
126
171
  const dispatcher = vfsDispatcher_get();
127
172
  if (dispatcher.path_isVirtual(targetPath)) {
128
173
  const made = await virtualFolder_make(targetPath, parents);
129
174
  if (made.created)
130
- rendered += `${mkdir_render(targetPath, true)}\n`;
175
+ rendered += `${mkdir_render(shown, true)}\n`;
131
176
  else if (made.existed !== true)
132
177
  renderedErr += `${chalk.red(refusal_said(`mkdir: cannot create directory '${pathArg}'`))}\n`;
133
- outcomes.push(made);
178
+ outcomes.push({ ...made, path: shown });
134
179
  if (made.created)
135
- listingCache_get().cache_invalidate?.(parentDir);
180
+ listings_forget(shown, targetPath, false);
136
181
  continue;
137
182
  }
138
183
  const made = parents ? await folderTree_make(dispatcher, targetPath) : await dispatcher.mkdir(targetPath);
139
184
  if (made.ok) {
140
- rendered += `${mkdir_render(targetPath, true)}\n`;
141
- outcomes.push({ path: targetPath, created: true });
142
- if (parents)
143
- ancestors_invalidate(targetPath);
144
- else
145
- listingCache_get().cache_invalidate?.(parentDir);
185
+ rendered += `${mkdir_render(shown, true)}\n`;
186
+ outcomes.push({ path: shown, created: true });
187
+ listings_forget(shown, targetPath, parents);
146
188
  continue;
147
189
  }
148
190
  if (made.errno === 'EEXIST') {
149
191
  if (parents && entry_isFolder(await pathEntry_find(dispatcher, targetPath))) {
150
- outcomes.push({ path: targetPath, created: false, existed: true });
192
+ outcomes.push({ path: shown, created: false, existed: true });
151
193
  }
152
194
  else {
153
195
  renderedErr += `${chalk.red(`mkdir: cannot create directory '${pathArg}': File exists`)}\n`;
154
- outcomes.push({ path: targetPath, created: false });
196
+ outcomes.push({ path: shown, created: false });
155
197
  }
156
198
  continue;
157
199
  }
158
200
  if (made.errno === 'ENOENT') {
159
201
  renderedErr += `${chalk.red(`mkdir: cannot create directory '${pathArg}': No such file or directory`)}\n`;
160
- outcomes.push({ path: targetPath, created: false });
202
+ outcomes.push({ path: shown, created: false });
161
203
  continue;
162
204
  }
163
205
  if (made.errno === 'ENOTDIR') {
164
206
  // A file above the target: CUBE would otherwise have made a folder over it.
165
207
  renderedErr += `${chalk.red(`mkdir: cannot create directory '${pathArg}': Not a directory`)}\n`;
166
- outcomes.push({ path: targetPath, created: false });
208
+ outcomes.push({ path: shown, created: false });
167
209
  continue;
168
210
  }
169
- rendered += `${mkdir_render(targetPath, false)}\n`;
170
- if (made.reason !== undefined)
171
- renderedErr += `${chalk.red(made.reason)}\n`;
172
- outcomes.push({ path: targetPath, created: false });
211
+ rendered += `${mkdir_render(shown, false)}\n`;
212
+ // A refusal with no words of its own (a store that will not, EACCES) still says why.
213
+ renderedErr += `${chalk.red(made.reason ?? `mkdir: cannot create directory '${pathArg}': ${errno_words(made.errno)}`)}\n`;
214
+ outcomes.push({ path: shown, created: false });
173
215
  }
174
216
  catch (e) {
175
217
  const msg = e instanceof Error ? e.message : String(e);
@@ -186,17 +228,4 @@ export async function mkdir_run(options) {
186
228
  }
187
229
  return envelope_ok(rendered, model);
188
230
  }
189
- /**
190
- * Creates directories from parsed command-line arguments.
191
- *
192
- * @param args - Command line arguments (`-p` and directory paths).
193
- * @returns The envelope from {@link mkdir_run}, or the refusal of an
194
- * option mkdir does not have.
195
- */
196
- export async function builtin_mkdir(args) {
197
- const parsed = mkdirArgs_parse(args);
198
- if ('refused' in parsed)
199
- return envelope_error('', undefined, `${chalk.red(parsed.refused)}\n`);
200
- return mkdir_run(parsed);
201
- }
202
231
  //# sourceMappingURL=mkdir.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mkdir.js","sourceRoot":"","sources":["../../../src/builtins/fs/mkdir.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mkdir.js","sourceRoot":"","sources":["../../../src/builtins/fs/mkdir.ts"],"names":[],"mappings":"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"}
@@ -12,12 +12,42 @@ export interface MvModelData {
12
12
  failed: number;
13
13
  }
14
14
  /**
15
- * Moves or renames a file or directory.
16
- * Supports multiple sources when destination is a directory.
15
+ * `mv [-t] [--target-directory <dir>] <paths…>`: the declaration.
17
16
  *
18
- * @param args - [src1, src2, ..., dest] or [src, dest]
17
+ * @example
18
+ * ```ts
19
+ * commands_register({ declarations: [mvCommand] });
20
+ * ```
21
+ */
22
+ export declare const mvCommand: import("../../core/commandDeclaration.js").CommandDeclaration<{
23
+ readonly operands: readonly [{
24
+ readonly name: "paths";
25
+ readonly kind: "cfsPath";
26
+ readonly repeat: true;
27
+ readonly glob: true;
28
+ readonly summary: "The sources, then the destination; a lone source asks where it goes";
29
+ }];
30
+ readonly options: {
31
+ readonly askTarget: {
32
+ readonly short: "t";
33
+ readonly summary: "Every operand is a source; asks for the target directory, and the answer must be one";
34
+ };
35
+ readonly targetDirectory: {
36
+ readonly long: "target-directory";
37
+ readonly summary: "Every operand is a source; move into this directory";
38
+ readonly value: {
39
+ readonly name: "dir";
40
+ readonly kind: "cfsPath";
41
+ };
42
+ };
43
+ };
44
+ }>;
45
+ /**
46
+ * `mv` over words already split: the declaration's parse and handler.
47
+ *
48
+ * @param args - The words after `mv`.
19
49
  * @returns An envelope whose rendered text reports progress and results and
20
- * whose model carries per-source outcomes.
50
+ * whose model carries per-source outcomes, or the refusal of a bad line.
21
51
  */
22
52
  export declare function builtin_mv(args: string[]): Promise<CommandEnvelope>;
23
53
  /** Typed invocation options for mv. */