just-bash 2.12.3 → 2.12.5

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 (312) hide show
  1. package/dist/bin/chunks/awk2-4MK3F3NZ.js +2 -0
  2. package/dist/bin/chunks/{chmod-4O2C4V42.js → chmod-N5CQATDW.js} +1 -1
  3. package/dist/bin/chunks/chunk-2HDH5VPF.js +12 -0
  4. package/dist/bin/chunks/chunk-5ATRLST6.js +100 -0
  5. package/dist/bin/chunks/{chunk-3NVWSLHI.js → chunk-6W7JTG6A.js} +99 -99
  6. package/dist/bin/chunks/chunk-7ADG3DNO.js +8 -0
  7. package/dist/bin/chunks/chunk-DERQIX2O.js +36 -0
  8. package/dist/bin/{shell/chunks/chunk-7SWOLTCR.js → chunks/chunk-EMSJEY2U.js} +1 -1
  9. package/dist/bin/chunks/{chunk-2SIXTZCJ.js → chunk-EZS766DD.js} +4 -4
  10. package/dist/bin/chunks/chunk-LWKIHJ5L.js +13 -0
  11. package/dist/bin/chunks/chunk-MY5PY2PL.js +2 -0
  12. package/dist/bin/chunks/{chunk-OKL2SPHK.js → chunk-O5B6WWQQ.js} +39 -39
  13. package/dist/bin/chunks/chunk-OQV5J23L.js +7 -0
  14. package/dist/bin/chunks/chunk-Q5MYEU7X.js +5 -0
  15. package/dist/bin/chunks/chunk-QZNF3Y3J.js +2 -0
  16. package/dist/bin/chunks/chunk-R2LDP472.js +8 -0
  17. package/dist/bin/chunks/chunk-RDGXTKIB.js +21 -0
  18. package/dist/bin/chunks/chunk-RS2PRILS.js +10 -0
  19. package/dist/bin/chunks/chunk-STOAUD75.js +11 -0
  20. package/dist/bin/chunks/chunk-SXB55JOI.js +2 -0
  21. package/dist/bin/chunks/chunk-SYG3IW7P.js +2 -0
  22. package/dist/bin/chunks/chunk-SYL34GE7.js +21 -0
  23. package/dist/bin/chunks/chunk-UT6LUTWP.js +2 -0
  24. package/dist/bin/chunks/chunk-VIYJJTN2.js +14 -0
  25. package/dist/bin/chunks/chunk-W752QGNZ.js +6 -0
  26. package/dist/bin/chunks/{chunk-435ZOZCY.js → chunk-WWVVJW3F.js} +13 -13
  27. package/dist/bin/{shell/chunks/chunk-GA6KXSOC.js → chunks/chunk-YFPDB4PH.js} +1 -1
  28. package/dist/bin/chunks/chunk-YMMJLYIX.js +2 -0
  29. package/dist/bin/chunks/chunk-YTIURC67.js +2 -0
  30. package/dist/bin/chunks/chunk-YWZOGBFE.js +9 -0
  31. package/dist/bin/chunks/chunk-YX7OOTPO.js +9 -0
  32. package/dist/bin/chunks/chunk-ZRRNCS7N.js +2 -0
  33. package/dist/bin/chunks/chunk-ZSVBYEY4.js +6 -0
  34. package/dist/bin/chunks/curl-GIQ5S66Y.js +26 -0
  35. package/dist/bin/{shell/chunks/expansion-TCB3WZP5.js → chunks/expansion-JBCP2CHQ.js} +1 -1
  36. package/dist/bin/chunks/expr-VEFRBJT4.js +2 -0
  37. package/dist/bin/chunks/find-MTLF23HX.js +2 -0
  38. package/dist/bin/chunks/flag-coverage-NDF6MQAO.js +2 -0
  39. package/dist/bin/{shell/chunks/grep-F3GT2VPG.js → chunks/grep-OZJTRD4D.js} +1 -1
  40. package/dist/bin/chunks/jq-F7FJ46VM.js +2 -0
  41. package/dist/bin/chunks/ln-VAOSD4HK.js +2 -0
  42. package/dist/bin/chunks/mkdir-CH7JGW4N.js +2 -0
  43. package/dist/bin/chunks/python3-QBGIYRFR.js +17 -0
  44. package/dist/bin/{shell/chunks/readlink-YNOUXNUY.js → chunks/readlink-BD5VFOC5.js} +1 -1
  45. package/dist/bin/chunks/rm-GWYJO4W7.js +2 -0
  46. package/dist/bin/chunks/sed-ENUQOCBB.js +2 -0
  47. package/dist/bin/chunks/sleep-5T34UFNF.js +2 -0
  48. package/dist/bin/chunks/sqlite3-4SBQACEE.js +2 -0
  49. package/dist/bin/chunks/stat-XS2LXYS2.js +2 -0
  50. package/dist/bin/chunks/tar-3UIZ4IRM.js +2 -0
  51. package/dist/bin/chunks/time-GZSHCM77.js +2 -0
  52. package/dist/bin/chunks/timeout-7ECKKPNP.js +2 -0
  53. package/dist/bin/chunks/tr-LZF57GYP.js +2 -0
  54. package/dist/bin/chunks/worker.js +162 -31
  55. package/dist/bin/chunks/xan-5QTBTP4U.js +2 -0
  56. package/dist/bin/chunks/yq-O5RSLLA3.js +2 -0
  57. package/dist/bin/just-bash.js +281 -281
  58. package/dist/bin/shell/chunks/awk2-4MK3F3NZ.js +2 -0
  59. package/dist/bin/shell/chunks/{chmod-4O2C4V42.js → chmod-N5CQATDW.js} +1 -1
  60. package/dist/bin/shell/chunks/chunk-2HDH5VPF.js +12 -0
  61. package/dist/bin/shell/chunks/chunk-5ATRLST6.js +100 -0
  62. package/dist/bin/shell/chunks/{chunk-3NVWSLHI.js → chunk-6W7JTG6A.js} +99 -99
  63. package/dist/bin/shell/chunks/chunk-7ADG3DNO.js +8 -0
  64. package/dist/bin/shell/chunks/chunk-D64U2VGQ.js +2 -0
  65. package/dist/bin/shell/chunks/chunk-DERQIX2O.js +36 -0
  66. package/dist/bin/{chunks/chunk-7SWOLTCR.js → shell/chunks/chunk-EMSJEY2U.js} +1 -1
  67. package/dist/bin/shell/chunks/{chunk-2SIXTZCJ.js → chunk-EZS766DD.js} +4 -4
  68. package/dist/bin/shell/chunks/chunk-LWKIHJ5L.js +13 -0
  69. package/dist/bin/shell/chunks/{chunk-OKL2SPHK.js → chunk-O5B6WWQQ.js} +39 -39
  70. package/dist/bin/shell/chunks/chunk-OQV5J23L.js +7 -0
  71. package/dist/bin/shell/chunks/chunk-Q5MYEU7X.js +5 -0
  72. package/dist/bin/shell/chunks/chunk-QZNF3Y3J.js +2 -0
  73. package/dist/bin/shell/chunks/chunk-R2LDP472.js +8 -0
  74. package/dist/bin/shell/chunks/chunk-RDGXTKIB.js +21 -0
  75. package/dist/bin/shell/chunks/chunk-RS2PRILS.js +10 -0
  76. package/dist/bin/shell/chunks/chunk-STOAUD75.js +11 -0
  77. package/dist/bin/shell/chunks/chunk-SXB55JOI.js +2 -0
  78. package/dist/bin/shell/chunks/chunk-SYG3IW7P.js +2 -0
  79. package/dist/bin/shell/chunks/chunk-SYL34GE7.js +21 -0
  80. package/dist/bin/shell/chunks/chunk-UT6LUTWP.js +2 -0
  81. package/dist/bin/shell/chunks/chunk-VIYJJTN2.js +14 -0
  82. package/dist/bin/shell/chunks/chunk-W752QGNZ.js +6 -0
  83. package/dist/bin/shell/chunks/{chunk-435ZOZCY.js → chunk-WWVVJW3F.js} +13 -13
  84. package/dist/bin/{chunks/chunk-GA6KXSOC.js → shell/chunks/chunk-YFPDB4PH.js} +1 -1
  85. package/dist/bin/shell/chunks/chunk-YMMJLYIX.js +2 -0
  86. package/dist/bin/shell/chunks/chunk-YTIURC67.js +2 -0
  87. package/dist/bin/shell/chunks/chunk-YWZOGBFE.js +9 -0
  88. package/dist/bin/shell/chunks/chunk-YX7OOTPO.js +9 -0
  89. package/dist/bin/shell/chunks/chunk-ZRRNCS7N.js +2 -0
  90. package/dist/bin/shell/chunks/chunk-ZSVBYEY4.js +6 -0
  91. package/dist/bin/shell/chunks/curl-GIQ5S66Y.js +26 -0
  92. package/dist/bin/{chunks/expansion-TCB3WZP5.js → shell/chunks/expansion-JBCP2CHQ.js} +1 -1
  93. package/dist/bin/shell/chunks/expr-VEFRBJT4.js +2 -0
  94. package/dist/bin/shell/chunks/find-MTLF23HX.js +2 -0
  95. package/dist/bin/shell/chunks/flag-coverage-NDF6MQAO.js +2 -0
  96. package/dist/bin/{chunks/grep-F3GT2VPG.js → shell/chunks/grep-OZJTRD4D.js} +1 -1
  97. package/dist/bin/shell/chunks/jq-F7FJ46VM.js +2 -0
  98. package/dist/bin/shell/chunks/ln-VAOSD4HK.js +2 -0
  99. package/dist/bin/shell/chunks/mkdir-CH7JGW4N.js +2 -0
  100. package/dist/bin/shell/chunks/python3-XN7O5X3A.js +17 -0
  101. package/dist/bin/{chunks/readlink-YNOUXNUY.js → shell/chunks/readlink-BD5VFOC5.js} +1 -1
  102. package/dist/bin/shell/chunks/rm-GWYJO4W7.js +2 -0
  103. package/dist/bin/shell/chunks/sed-ENUQOCBB.js +2 -0
  104. package/dist/bin/shell/chunks/sleep-5T34UFNF.js +2 -0
  105. package/dist/bin/shell/chunks/sqlite3-4SBQACEE.js +2 -0
  106. package/dist/bin/shell/chunks/stat-XS2LXYS2.js +2 -0
  107. package/dist/bin/shell/chunks/tar-3UIZ4IRM.js +2 -0
  108. package/dist/bin/shell/chunks/time-GZSHCM77.js +2 -0
  109. package/dist/bin/shell/chunks/timeout-7ECKKPNP.js +2 -0
  110. package/dist/bin/shell/chunks/tr-LZF57GYP.js +2 -0
  111. package/dist/bin/shell/chunks/xan-5QTBTP4U.js +2 -0
  112. package/dist/bin/shell/chunks/yq-O5RSLLA3.js +2 -0
  113. package/dist/bin/shell/shell.js +241 -241
  114. package/dist/bundle/browser.js +718 -721
  115. package/dist/bundle/chunks/awk2-ID6QVUYU.js +1 -0
  116. package/dist/bundle/chunks/{chmod-MIKE3OIT.js → chmod-SYMGL4JA.js} +1 -1
  117. package/dist/bundle/chunks/chunk-2OZNLYX4.js +9 -0
  118. package/dist/bundle/chunks/{chunk-C6ZZC5FL.js → chunk-3J4BCKUH.js} +99 -99
  119. package/dist/bundle/chunks/chunk-3ZBKQKTX.js +11 -0
  120. package/dist/bundle/chunks/chunk-3ZUFRYJ4.js +1 -0
  121. package/dist/bundle/chunks/chunk-4GTNDTRF.js +7 -0
  122. package/dist/bundle/chunks/chunk-5QVNJEHU.js +8 -0
  123. package/dist/bundle/chunks/chunk-64CW2LGZ.js +6 -0
  124. package/dist/bundle/chunks/chunk-AYQ5FKKK.js +20 -0
  125. package/dist/bundle/chunks/chunk-C764MECG.js +35 -0
  126. package/dist/bundle/chunks/{chunk-XULIVM35.js → chunk-CBAJ47B3.js} +1 -1
  127. package/dist/bundle/chunks/chunk-CCNMISUL.js +1 -0
  128. package/dist/bundle/chunks/chunk-D2FZX7A2.js +10 -0
  129. package/dist/bundle/chunks/chunk-EX62JIX3.js +13 -0
  130. package/dist/bundle/chunks/chunk-FD7SFJNJ.js +4 -0
  131. package/dist/bundle/chunks/chunk-FGALERPA.js +8 -0
  132. package/dist/bundle/chunks/chunk-HJWBQKYG.js +5 -0
  133. package/dist/bundle/chunks/chunk-HOFSUCIB.js +99 -0
  134. package/dist/bundle/chunks/chunk-IP7G3BNA.js +7 -0
  135. package/dist/bundle/chunks/chunk-J642UCRS.js +1 -0
  136. package/dist/bundle/chunks/chunk-L75XCEQX.js +1 -0
  137. package/dist/bundle/chunks/chunk-QI4EPYAT.js +5 -0
  138. package/dist/bundle/chunks/chunk-R5XRHEZH.js +12 -0
  139. package/dist/bundle/chunks/chunk-RH6GWZAJ.js +1 -0
  140. package/dist/bundle/chunks/{chunk-U7QI5ZS5.js → chunk-RVT3MU3A.js} +4 -4
  141. package/dist/bundle/chunks/chunk-SJ5LXPUH.js +1 -0
  142. package/dist/bundle/chunks/{chunk-4VCAQZKQ.js → chunk-TRD56HID.js} +39 -39
  143. package/dist/bundle/chunks/{chunk-5CJQNRNJ.js → chunk-TVHAURH5.js} +13 -13
  144. package/dist/bundle/chunks/chunk-X2AJGDEF.js +1 -0
  145. package/dist/bundle/chunks/chunk-XHM67O4N.js +1 -0
  146. package/dist/bundle/chunks/chunk-XXZ46GOX.js +20 -0
  147. package/dist/bundle/chunks/{chunk-CYTBPLPE.js → chunk-YS3AZT3J.js} +1 -1
  148. package/dist/bundle/chunks/curl-743M564K.js +25 -0
  149. package/dist/bundle/chunks/{expansion-HJ6B4DDG.js → expansion-XG7G47TX.js} +1 -1
  150. package/dist/bundle/chunks/expr-74QHYJL5.js +1 -0
  151. package/dist/bundle/chunks/find-DOIVMX6X.js +1 -0
  152. package/dist/bundle/chunks/flag-coverage-4M54QHNZ.js +1 -0
  153. package/dist/bundle/chunks/{grep-LXKUQUAE.js → grep-3AIAIJVR.js} +1 -1
  154. package/dist/bundle/chunks/jq-5FRYP6YP.js +1 -0
  155. package/dist/bundle/chunks/ln-UJ6YJVBK.js +1 -0
  156. package/dist/bundle/chunks/mkdir-F6XHPXZC.js +1 -0
  157. package/dist/bundle/chunks/python3-WANWDR22.js +16 -0
  158. package/dist/bundle/chunks/{readlink-IEQO24KU.js → readlink-MI4GCHJF.js} +1 -1
  159. package/dist/bundle/chunks/rm-FYNVTQIU.js +1 -0
  160. package/dist/bundle/chunks/sed-TS7M7I25.js +1 -0
  161. package/dist/bundle/chunks/sleep-RRZXXEW2.js +1 -0
  162. package/dist/bundle/chunks/sqlite3-IH5QMEIK.js +1 -0
  163. package/dist/bundle/chunks/stat-BT5A227F.js +1 -0
  164. package/dist/bundle/chunks/tar-JCULQ5J2.js +1 -0
  165. package/dist/bundle/chunks/time-XL42Z4U5.js +1 -0
  166. package/dist/bundle/chunks/timeout-DNGO7OHT.js +1 -0
  167. package/dist/bundle/chunks/tr-GVTWMRZB.js +1 -0
  168. package/dist/bundle/chunks/worker.js +162 -31
  169. package/dist/bundle/chunks/xan-LAW2EMOM.js +1 -0
  170. package/dist/bundle/chunks/yq-MFJEXB7R.js +1 -0
  171. package/dist/bundle/index.cjs +942 -945
  172. package/dist/bundle/index.js +274 -274
  173. package/dist/commands/awk/interpreter/context.d.ts +2 -0
  174. package/dist/commands/awk/interpreter/interpreter.d.ts +2 -0
  175. package/dist/commands/duration.d.ts +5 -0
  176. package/dist/commands/format-mode.d.ts +4 -0
  177. package/dist/commands/query-engine/evaluator.d.ts +3 -0
  178. package/dist/commands/sed/types.d.ts +0 -4
  179. package/dist/commands/tar/archive.d.ts +18 -4
  180. package/dist/fs/in-memory-fs/in-memory-fs.d.ts +0 -3
  181. package/dist/fs/mountable-fs/mountable-fs.d.ts +0 -4
  182. package/dist/fs/overlay-fs/overlay-fs.d.ts +6 -7
  183. package/dist/fs/path-utils.d.ts +46 -0
  184. package/dist/fs/read-write-fs/read-write-fs.d.ts +0 -4
  185. package/dist/fs/real-fs-utils.d.ts +17 -11
  186. package/dist/interpreter/defense-aware-command-context.d.ts +6 -0
  187. package/dist/interpreter/interpreter.d.ts +8 -0
  188. package/dist/interpreter/types.d.ts +5 -0
  189. package/dist/timers.d.ts +2 -14
  190. package/dist/types.d.ts +6 -0
  191. package/package.json +34 -33
  192. package/vendor/cpython-emscripten/python.wasm +0 -0
  193. package/dist/bin/chunks/awk2-ZE5HJBNV.js +0 -2
  194. package/dist/bin/chunks/chunk-253LRF5J.js +0 -11
  195. package/dist/bin/chunks/chunk-2FFXXW3F.js +0 -14
  196. package/dist/bin/chunks/chunk-4E3LY6YK.js +0 -10
  197. package/dist/bin/chunks/chunk-4FNW6LFM.js +0 -5
  198. package/dist/bin/chunks/chunk-4PZYIYYG.js +0 -36
  199. package/dist/bin/chunks/chunk-5VFN7VVJ.js +0 -9
  200. package/dist/bin/chunks/chunk-6L4K3UGO.js +0 -100
  201. package/dist/bin/chunks/chunk-D2GFNFUN.js +0 -7
  202. package/dist/bin/chunks/chunk-DREQRXNN.js +0 -12
  203. package/dist/bin/chunks/chunk-EPIOK4SY.js +0 -6
  204. package/dist/bin/chunks/chunk-GIFF636B.js +0 -2
  205. package/dist/bin/chunks/chunk-IYZRLSTQ.js +0 -2
  206. package/dist/bin/chunks/chunk-JJHAWOIB.js +0 -2
  207. package/dist/bin/chunks/chunk-JNPUO56K.js +0 -10
  208. package/dist/bin/chunks/chunk-KPWFKFSD.js +0 -21
  209. package/dist/bin/chunks/chunk-KWLLB7S3.js +0 -7
  210. package/dist/bin/chunks/chunk-RYXW3SZQ.js +0 -13
  211. package/dist/bin/chunks/chunk-VZKEP45B.js +0 -21
  212. package/dist/bin/chunks/chunk-XAL6VWGA.js +0 -9
  213. package/dist/bin/chunks/chunk-YYQ22ZRL.js +0 -8
  214. package/dist/bin/chunks/curl-RWQO3SBN.js +0 -26
  215. package/dist/bin/chunks/expr-MLHUWFYI.js +0 -2
  216. package/dist/bin/chunks/find-4YAO7JQS.js +0 -2
  217. package/dist/bin/chunks/flag-coverage-23ZUDENJ.js +0 -2
  218. package/dist/bin/chunks/jq-CXSPO2J5.js +0 -2
  219. package/dist/bin/chunks/ln-5TCJXDGY.js +0 -2
  220. package/dist/bin/chunks/mkdir-6OKMS3KO.js +0 -2
  221. package/dist/bin/chunks/python3-74B25WCY.js +0 -17
  222. package/dist/bin/chunks/rm-5QIBTLJG.js +0 -2
  223. package/dist/bin/chunks/sed-DNLJZZXZ.js +0 -2
  224. package/dist/bin/chunks/sleep-GUJH2AMQ.js +0 -2
  225. package/dist/bin/chunks/sqlite3-57UI7HYL.js +0 -2
  226. package/dist/bin/chunks/stat-XH7E4E2C.js +0 -2
  227. package/dist/bin/chunks/tar-VIYVHMER.js +0 -2
  228. package/dist/bin/chunks/time-FAWHHOMA.js +0 -2
  229. package/dist/bin/chunks/timeout-4O4YYRTS.js +0 -2
  230. package/dist/bin/chunks/tr-4V5A3V2C.js +0 -2
  231. package/dist/bin/chunks/xan-7NIVZ3HP.js +0 -2
  232. package/dist/bin/chunks/yq-L5ZSGLLO.js +0 -2
  233. package/dist/bin/shell/chunks/awk2-ZE5HJBNV.js +0 -2
  234. package/dist/bin/shell/chunks/chunk-253LRF5J.js +0 -11
  235. package/dist/bin/shell/chunks/chunk-2FFXXW3F.js +0 -14
  236. package/dist/bin/shell/chunks/chunk-4E3LY6YK.js +0 -10
  237. package/dist/bin/shell/chunks/chunk-4FNW6LFM.js +0 -5
  238. package/dist/bin/shell/chunks/chunk-4PZYIYYG.js +0 -36
  239. package/dist/bin/shell/chunks/chunk-5VFN7VVJ.js +0 -9
  240. package/dist/bin/shell/chunks/chunk-6L4K3UGO.js +0 -100
  241. package/dist/bin/shell/chunks/chunk-D2GFNFUN.js +0 -7
  242. package/dist/bin/shell/chunks/chunk-DREQRXNN.js +0 -12
  243. package/dist/bin/shell/chunks/chunk-EPIOK4SY.js +0 -6
  244. package/dist/bin/shell/chunks/chunk-GIFF636B.js +0 -2
  245. package/dist/bin/shell/chunks/chunk-IYZRLSTQ.js +0 -2
  246. package/dist/bin/shell/chunks/chunk-JJHAWOIB.js +0 -2
  247. package/dist/bin/shell/chunks/chunk-JNPUO56K.js +0 -10
  248. package/dist/bin/shell/chunks/chunk-KPWFKFSD.js +0 -21
  249. package/dist/bin/shell/chunks/chunk-KWLLB7S3.js +0 -7
  250. package/dist/bin/shell/chunks/chunk-RYXW3SZQ.js +0 -13
  251. package/dist/bin/shell/chunks/chunk-VZKEP45B.js +0 -21
  252. package/dist/bin/shell/chunks/chunk-XAL6VWGA.js +0 -9
  253. package/dist/bin/shell/chunks/chunk-YYQ22ZRL.js +0 -8
  254. package/dist/bin/shell/chunks/curl-RWQO3SBN.js +0 -26
  255. package/dist/bin/shell/chunks/expr-MLHUWFYI.js +0 -2
  256. package/dist/bin/shell/chunks/find-4YAO7JQS.js +0 -2
  257. package/dist/bin/shell/chunks/flag-coverage-23ZUDENJ.js +0 -2
  258. package/dist/bin/shell/chunks/jq-CXSPO2J5.js +0 -2
  259. package/dist/bin/shell/chunks/ln-5TCJXDGY.js +0 -2
  260. package/dist/bin/shell/chunks/mkdir-6OKMS3KO.js +0 -2
  261. package/dist/bin/shell/chunks/python3-74B25WCY.js +0 -17
  262. package/dist/bin/shell/chunks/rm-5QIBTLJG.js +0 -2
  263. package/dist/bin/shell/chunks/sed-DNLJZZXZ.js +0 -2
  264. package/dist/bin/shell/chunks/sleep-GUJH2AMQ.js +0 -2
  265. package/dist/bin/shell/chunks/sqlite3-57UI7HYL.js +0 -2
  266. package/dist/bin/shell/chunks/stat-XH7E4E2C.js +0 -2
  267. package/dist/bin/shell/chunks/tar-VIYVHMER.js +0 -2
  268. package/dist/bin/shell/chunks/time-FAWHHOMA.js +0 -2
  269. package/dist/bin/shell/chunks/timeout-4O4YYRTS.js +0 -2
  270. package/dist/bin/shell/chunks/tr-4V5A3V2C.js +0 -2
  271. package/dist/bin/shell/chunks/xan-7NIVZ3HP.js +0 -2
  272. package/dist/bin/shell/chunks/yq-L5ZSGLLO.js +0 -2
  273. package/dist/bundle/chunks/awk2-T6LHPVZE.js +0 -1
  274. package/dist/bundle/chunks/chunk-27LMNKBP.js +0 -7
  275. package/dist/bundle/chunks/chunk-5BFLZVGH.js +0 -20
  276. package/dist/bundle/chunks/chunk-7BQDVPII.js +0 -9
  277. package/dist/bundle/chunks/chunk-7KHLIOOW.js +0 -4
  278. package/dist/bundle/chunks/chunk-AOFQVUAD.js +0 -99
  279. package/dist/bundle/chunks/chunk-BAAVD5NO.js +0 -20
  280. package/dist/bundle/chunks/chunk-BEFDX7IY.js +0 -1
  281. package/dist/bundle/chunks/chunk-GZ2N3SXD.js +0 -8
  282. package/dist/bundle/chunks/chunk-IJXFPKNC.js +0 -1
  283. package/dist/bundle/chunks/chunk-IKZ5LEGB.js +0 -6
  284. package/dist/bundle/chunks/chunk-KPFCTJEX.js +0 -12
  285. package/dist/bundle/chunks/chunk-LN5KAJOV.js +0 -5
  286. package/dist/bundle/chunks/chunk-NBAARP4B.js +0 -1
  287. package/dist/bundle/chunks/chunk-OFJTSXN6.js +0 -8
  288. package/dist/bundle/chunks/chunk-RHOPHAL6.js +0 -35
  289. package/dist/bundle/chunks/chunk-SL4FN3A5.js +0 -9
  290. package/dist/bundle/chunks/chunk-UJIR5V54.js +0 -11
  291. package/dist/bundle/chunks/chunk-XZ3MZS57.js +0 -6
  292. package/dist/bundle/chunks/chunk-YCABLDKV.js +0 -10
  293. package/dist/bundle/chunks/chunk-YIY2RKBW.js +0 -13
  294. package/dist/bundle/chunks/curl-6L7YZUIH.js +0 -25
  295. package/dist/bundle/chunks/expr-3572LAOT.js +0 -1
  296. package/dist/bundle/chunks/find-DQFMWHAC.js +0 -1
  297. package/dist/bundle/chunks/flag-coverage-L3DCLG6V.js +0 -1
  298. package/dist/bundle/chunks/jq-MYSLFARY.js +0 -1
  299. package/dist/bundle/chunks/ln-YAIFIHCT.js +0 -1
  300. package/dist/bundle/chunks/mkdir-QWGXDWUS.js +0 -1
  301. package/dist/bundle/chunks/python3-6BKA3FYA.js +0 -16
  302. package/dist/bundle/chunks/rm-KPTLPKPH.js +0 -1
  303. package/dist/bundle/chunks/sed-3ZCNFRHI.js +0 -1
  304. package/dist/bundle/chunks/sleep-LB7FI6AB.js +0 -1
  305. package/dist/bundle/chunks/sqlite3-FVNA4KNF.js +0 -1
  306. package/dist/bundle/chunks/stat-74KBZFAX.js +0 -1
  307. package/dist/bundle/chunks/tar-E2DVQEWO.js +0 -1
  308. package/dist/bundle/chunks/time-AGNW2ZY6.js +0 -1
  309. package/dist/bundle/chunks/timeout-VN35D5O7.js +0 -1
  310. package/dist/bundle/chunks/tr-2N7Q3KKJ.js +0 -1
  311. package/dist/bundle/chunks/xan-VTO4FP3H.js +0 -1
  312. package/dist/bundle/chunks/yq-JRZFRYSK.js +0 -1
@@ -0,0 +1,8 @@
1
+ #!/usr/bin/env node
2
+ import{a as w,b as v,c as $}from"./chunk-GTNBSMZR.js";var R={name:"chmod",summary:"change file mode bits",usage:"chmod [OPTIONS] MODE FILE...",options:["-R change files recursively","-v output a diagnostic for every file processed"," --help display this help and exit"]},C={name:"chmod",async execute(s,a){if(v(s))return w(R);if(s.length<2)return{stdout:"",stderr:`chmod: missing operand
3
+ `,exitCode:1};let e=!1,c=!1,i=0;for(;i<s.length&&s[i].startsWith("-");){let t=s[i];if(t==="-R"||t==="--recursive")e=!0,i++;else if(t==="-v"||t==="--verbose")c=!0,i++;else if(t==="--"){i++;break}else{if(/^[+-]?[rwxugo]+/.test(t)||/^\d+$/.test(t))break;if(/^-[Rv]+$/.test(t)){t.includes("R")&&(e=!0),t.includes("v")&&(c=!0),i++;continue}return $("chmod",t)}}if(s.length-i<2)return{stdout:"",stderr:`chmod: missing operand
4
+ `,exitCode:1};let n=s[i],l=s.slice(i+1),r=/^[0-7]+$/.test(n),o;if(r)o=parseInt(n,8);else try{p(n,420)}catch{return{stdout:"",stderr:`chmod: invalid mode: '${n}'
5
+ `,exitCode:1}}let f="",d="",u=!1;for(let t of l){let h=a.fs.resolvePath(a.cwd,t);try{let m;if(r&&o!==void 0)m=o;else{let g=await a.fs.stat(h);m=p(n,g.mode)}if(await a.fs.chmod(h,m),c&&(f+=`mode of '${t}' changed to ${m.toString(8).padStart(4,"0")}
6
+ `),e&&(await a.fs.stat(h)).isDirectory){let I=await y(a,h,r?o:void 0,r?void 0:n,c);f+=I}}catch{d+=`chmod: cannot access '${t}': No such file or directory
7
+ `,u=!0}}return{stdout:f,stderr:d,exitCode:u?1:0}}};async function y(s,a,e,c,i){let n="",l=await s.fs.readdir(a);for(let r of l){let o=a==="/"?`/${r}`:`${a}/${r}`,f;if(e!==void 0)f=e;else if(c!==void 0){let u=await s.fs.stat(o);f=p(c,u.mode)}else f=420;await s.fs.chmod(o,f),i&&(n+=`mode of '${o}' changed to ${f.toString(8).padStart(4,"0")}
8
+ `),(await s.fs.stat(o)).isDirectory&&(n+=await y(s,o,e,c,i))}return n}function p(s,a=420){if(/^[0-7]+$/.test(s))return parseInt(s,8);let e=a&4095,c=s.split(",");for(let i of c){let n=i.match(/^([ugoa]*)([+\-=])([rwxXst]*)$/);if(!n)throw new Error(`Invalid mode: ${s}`);let l=n[1]||"a",r=n[2],o=n[3];(l==="a"||l==="")&&(l="ugo");let f=0;o.includes("r")&&(f|=4),o.includes("w")&&(f|=2),(o.includes("x")||o.includes("X"))&&(f|=1);let d=0;o.includes("s")&&(l.includes("u")&&(d|=2048),l.includes("g")&&(d|=1024)),o.includes("t")&&(d|=512);for(let u of l){let t=0;u==="u"?t=6:u==="g"?t=3:u==="o"&&(t=0);let h=f<<t;r==="+"?e|=h:r==="-"?e&=~h:r==="="&&(e&=~(7<<t),e|=h)}r==="+"?e|=d:r==="-"?e&=~d:r==="="&&(o.includes("s")&&(l.includes("u")&&(e&=-2049,e|=d&2048),l.includes("g")&&(e&=-1025,e|=d&1024)),o.includes("t")&&(e&=-513,e|=d&512))}return e}var O={name:"chmod",flags:[{flag:"-R",type:"boolean"},{flag:"-v",type:"boolean"}],needsArgs:!0,minArgs:2};export{C as a,O as b};
@@ -0,0 +1,36 @@
1
+ #!/usr/bin/env node
2
+ import{a as x,b as w}from"./chunk-UT6LUTWP.js";import{c as b}from"./chunk-ZRRNCS7N.js";import{b as E}from"./chunk-Q5MYEU7X.js";import{a as m}from"./chunk-SYG3IW7P.js";import{a as T,b as C}from"./chunk-GTNBSMZR.js";import{existsSync as k}from"node:fs";import{dirname as _,join as q}from"node:path";import{fileURLToPath as z}from"node:url";import{Worker as X}from"node:worker_threads";import Y from"sql.js";function V(e,r,n){switch(n.mode){case"list":return B(e,r,n);case"csv":return O(e,r,n);case"json":return N(e,r);case"line":return P(e,r,n);case"column":return R(e,r,n);case"table":return F(e,r,n);case"markdown":return Q(e,r,n);case"tabs":return U(e,r,n);case"box":return D(e,r,n);case"quote":return W(e,r,n);case"html":return H(e,r,n);case"ascii":return J(e,r,n)}}function f(e,r){return e==null?r:e instanceof Uint8Array||Buffer.isBuffer(e)?Buffer.from(e).toString("utf8"):typeof e=="number"&&!Number.isInteger(e)?e.toPrecision(17).replace(/\.?0+$/,""):String(e)}function B(e,r,n){let t=[];n.header&&e.length>0&&t.push(e.join(n.separator));for(let a of r)t.push(a.map(o=>f(o,n.nullValue)).join(n.separator));return t.length>0?`${t.join(n.newline)}${n.newline}`:""}function O(e,r,n){let t=[];n.header&&e.length>0&&t.push(e.map(L).join(","));for(let a of r)t.push(a.map(o=>L(f(o,n.nullValue))).join(","));return t.length>0?`${t.join(`
3
+ `)}
4
+ `:""}function L(e){return e.includes(",")||e.includes('"')||e.includes("'")||e.includes(`
5
+ `)?`"${e.replace(/"/g,'""')}"`:e}function A(e){return e.toPrecision(17).replace(/\.?0+$/,"")}function I(e){return e===null?"null":typeof e=="number"?Number.isInteger(e)?String(e):A(e):JSON.stringify(e)}function N(e,r){return r.length===0?"":`[${r.map(t=>`{${e.map((o,i)=>`${JSON.stringify(o)}:${I(t[i])}`).join(",")}}`).join(`,
6
+ `)}]
7
+ `}function P(e,r,n){if(e.length===0||r.length===0)return"";let t=Math.max(5,...e.map(o=>o.length)),a=[];for(let o of r)for(let i=0;i<e.length;i++){let s=e[i].padStart(t);a.push(`${s} = ${f(o[i],n.nullValue)}`)}return`${a.join(`
8
+ `)}
9
+ `}function R(e,r,n){if(e.length===0)return"";let t=e.map(o=>o.length);for(let o of r)for(let i=0;i<o.length;i++){let s=f(o[i],n.nullValue).length;s>t[i]&&(t[i]=s)}let a=[];n.header&&(a.push(e.map((o,i)=>o.padEnd(t[i])).join(" ")),a.push(t.map(o=>"-".repeat(o)).join(" ")));for(let o of r)a.push(o.map((i,s)=>f(i,n.nullValue).padEnd(t[s])).join(" "));return a.length>0?`${a.join(`
10
+ `)}
11
+ `:""}function F(e,r,n){if(e.length===0)return"";let t=e.map(i=>i.length);for(let i of r)for(let s=0;s<i.length;s++){let h=f(i[s],n.nullValue).length;h>t[s]&&(t[s]=h)}let a=[],o=`+${t.map(i=>"-".repeat(i+2)).join("+")}+`;a.push(o),n.header&&(a.push(`| ${e.map((i,s)=>i.padEnd(t[s])).join(" | ")} |`),a.push(o));for(let i of r)a.push(`| ${i.map((s,h)=>f(s,n.nullValue).padEnd(t[h])).join(" | ")} |`);return a.push(o),`${a.join(`
12
+ `)}
13
+ `}function Q(e,r,n){if(e.length===0)return"";let t=[];n.header&&(t.push(`| ${e.join(" | ")} |`),t.push(`|${e.map(()=>"---").join("|")}|`));for(let a of r)t.push(`| ${a.map(o=>f(o,n.nullValue)).join(" | ")} |`);return t.length>0?`${t.join(`
14
+ `)}
15
+ `:""}function U(e,r,n){let t=[];n.header&&e.length>0&&t.push(e.join(" "));for(let a of r)t.push(a.map(o=>f(o,n.nullValue)).join(" "));return t.length>0?`${t.join(n.newline)}${n.newline}`:""}function D(e,r,n){if(e.length===0)return"";let t=e.map(o=>o.length);for(let o of r)for(let i=0;i<o.length;i++){let s=f(o[i],n.nullValue).length;s>t[i]&&(t[i]=s)}let a=[];a.push(`\u250C${t.map(o=>"\u2500".repeat(o+2)).join("\u252C")}\u2510`),a.push(`\u2502 ${e.map((o,i)=>o.padEnd(t[i])).join(" \u2502 ")} \u2502`),a.push(`\u251C${t.map(o=>"\u2500".repeat(o+2)).join("\u253C")}\u2524`);for(let o of r)a.push(`\u2502 ${o.map((i,s)=>f(i,n.nullValue).padEnd(t[s])).join(" \u2502 ")} \u2502`);return a.push(`\u2514${t.map(o=>"\u2500".repeat(o+2)).join("\u2534")}\u2518`),`${a.join(`
16
+ `)}
17
+ `}function W(e,r,n){let t=[];n.header&&e.length>0&&t.push(e.map(a=>`'${a}'`).join(","));for(let a of r)t.push(a.map(o=>o==null?"NULL":typeof o=="number"?Number.isInteger(o)?String(o):A(o):`'${String(o)}'`).join(","));return t.length>0?`${t.join(n.newline)}${n.newline}`:""}function H(e,r,n){let t=[];n.header&&e.length>0&&(t.push(`<TR>${e.map(a=>`<TH>${M(a)}</TH>`).join("")}`),t.push("</TR>"));for(let a of r)t.push(`<TR>${a.map(o=>`<TD>${M(f(o,n.nullValue))}</TD>`).join("")}`),t.push("</TR>");return t.length>0?`${t.join(`
18
+ `)}
19
+ `:""}function M(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;")}function J(e,r,n){let o=[];n.header&&e.length>0&&o.push(e.join(""));for(let i of r)o.push(i.map(s=>f(s,n.nullValue)).join(""));return o.length>0?o.join("")+"":""}var G=5e3,K={name:"sqlite3",summary:"SQLite database CLI",usage:"sqlite3 [OPTIONS] DATABASE [SQL]",options:["-list output in list mode (default)","-csv output in CSV mode","-json output in JSON mode","-line output in line mode","-column output in column mode","-table output as ASCII table","-markdown output as markdown table","-tabs output in tab-separated mode","-box output in Unicode box mode","-quote output in SQL quote mode","-html output as HTML table","-ascii output in ASCII mode (control chars)","-header show column headers","-noheader hide column headers","-separator SEP field separator for list mode (default: |)","-newline SEP row separator (default: \\n)","-nullvalue TEXT text for NULL values (default: empty)","-readonly open database read-only (no writeback)","-bail stop on first error","-echo print SQL before execution","-cmd COMMAND run SQL command before main SQL","-version show SQLite version","-- end of options","--help show this help"],examples:['sqlite3 :memory: "CREATE TABLE t(x); INSERT INTO t VALUES(1); SELECT * FROM t"','sqlite3 -json data.db "SELECT * FROM users"','sqlite3 -csv -header data.db "SELECT id, name FROM products"','sqlite3 -box data.db "SELECT * FROM users"']};function Z(e){let r={mode:"list",header:!1,separator:"|",newline:`
20
+ `,nullValue:"",readonly:!1,bail:!1,echo:!1,cmd:null},n=null,t=null,a=!1,o=!1;for(let i=0;i<e.length;i++){let s=e[i];if(o){n===null?n=s:t===null&&(t=s);continue}if(s==="--")o=!0;else if(s==="-version")a=!0;else if(s==="-list")r.mode="list";else if(s==="-csv")r.mode="csv";else if(s==="-json")r.mode="json";else if(s==="-line")r.mode="line";else if(s==="-column")r.mode="column";else if(s==="-table")r.mode="table";else if(s==="-markdown")r.mode="markdown";else if(s==="-tabs")r.mode="tabs";else if(s==="-box")r.mode="box";else if(s==="-quote")r.mode="quote";else if(s==="-html")r.mode="html";else if(s==="-ascii")r.mode="ascii";else if(s==="-header")r.header=!0;else if(s==="-noheader")r.header=!1;else if(s==="-readonly")r.readonly=!0;else if(s==="-bail")r.bail=!0;else if(s==="-echo")r.echo=!0;else if(s==="-separator"){if(i+1>=e.length)return{stdout:"",stderr:`sqlite3: Error: missing argument to -separator
21
+ `,exitCode:1};r.separator=e[++i]}else if(s==="-newline"){if(i+1>=e.length)return{stdout:"",stderr:`sqlite3: Error: missing argument to -newline
22
+ `,exitCode:1};r.newline=e[++i]}else if(s==="-nullvalue"){if(i+1>=e.length)return{stdout:"",stderr:`sqlite3: Error: missing argument to -nullvalue
23
+ `,exitCode:1};r.nullValue=e[++i]}else if(s==="-cmd"){if(i+1>=e.length)return{stdout:"",stderr:`sqlite3: Error: missing argument to -cmd
24
+ `,exitCode:1};r.cmd=e[++i]}else{if(s.startsWith("-"))return{stdout:"",stderr:`sqlite3: Error: unknown option: ${s.startsWith("--")?s.slice(1):s}
25
+ Use -help for a list of options.
26
+ `,exitCode:1};n===null?n=s:t===null&&(t=s)}}return{options:r,database:n,sql:t,showVersion:a}}async function v(){let e=await E.runTrustedAsync(()=>Y()),r=new e.Database;try{let n=r.exec("SELECT sqlite_version()");return n.length>0&&n[0].values.length>0?String(n[0].values[0][0]):"unknown"}finally{r.close()}}function ee(){let e=_(z(import.meta.url)),r=q(e,"../../commands/sqlite3/worker.js");if(k(r))return r;let n=q(e,"worker.js");if(k(n))return n;let t=q(e,"../../../dist/commands/sqlite3/worker.js");if(k(t))return t;throw new Error("sqlite3 worker not found. Run 'pnpm build' to compile the worker.")}var re={createWorker(e,r){return new X(e,{workerData:r})}};function te(e){if(!e||typeof e!="object")return{success:!1,error:"Malformed worker response"};let r=e;return r.type==="security-violation"?{success:!1,error:`Security violation: ${typeof r.violation?.type=="string"?r.violation.type:"unknown"}`}:typeof r.success!="boolean"?{success:!1,error:"Malformed worker response: missing success flag"}:r.success?Array.isArray(r.results)?typeof r.hasModifications!="boolean"?{success:!1,error:"Malformed worker response: missing hasModifications flag"}:r.dbBuffer!==null&&r.dbBuffer!==void 0&&!(r.dbBuffer instanceof Uint8Array)?{success:!1,error:"Malformed worker response: invalid dbBuffer"}:{success:!0,results:r.results,hasModifications:r.hasModifications,dbBuffer:r.dbBuffer===void 0?null:r.dbBuffer,defenseStats:r.defenseStats}:{success:!1,error:"Malformed worker response: missing results array"}:{success:!1,error:typeof r.error=="string"&&r.error.length>0?r.error:"Worker execution failed"}}async function ne(e,r,n){try{let t=ee();return await new Promise((a,o)=>{let i=E.runTrusted(()=>re.createWorker(t,e)),s=b(n,"sqlite3","worker timeout callback",()=>{i.terminate(),a({success:!1,error:`Query timeout: execution exceeded ${r}ms limit`})}),c=x(()=>{try{s()}catch(u){let l=u instanceof Error?u.message:String(u);a({success:!1,error:m(l)})}},r),S=b(n,"sqlite3","worker message callback",u=>{w(c),a(te(u))}),$=b(n,"sqlite3","worker error callback",u=>{w(c),o(u)}),j=b(n,"sqlite3","worker exit callback",u=>{w(c),u!==0&&a({success:!1,error:`Worker exited with code ${u}`})}),p=u=>{try{S(u)}catch(l){w(c);let d=l instanceof Error?l.message:String(l);a({success:!1,error:m(d)})}},y=u=>{try{$(u)}catch(l){w(c);let d=l instanceof Error?l.message:String(l);o(new Error(m(d)))}},g=u=>{try{j(u)}catch(l){w(c);let d=l instanceof Error?l.message:String(l);a({success:!1,error:m(d)})}};i.on("message",p),i.on("error",y),i.on("exit",g)})}catch(t){let a=m(t.message);throw new Error(`sqlite3 worker failed to load: ${a}`)}}var ge={name:"sqlite3",async execute(e,r){if(C(e)||e.includes("-help"))return T(K);let n=Z(e);if("exitCode"in n)return n;let{options:t,database:a,sql:o,showVersion:i}=n;if(i)return{stdout:`${await v()}
27
+ `,stderr:"",exitCode:0};if(!a)return{stdout:"",stderr:`sqlite3: missing database argument
28
+ `,exitCode:1};let s=o||r.stdin.trim();if(t.cmd&&(s=t.cmd+(s?`; ${s}`:"")),!s)return{stdout:"",stderr:`sqlite3: no SQL provided
29
+ `,exitCode:1};let h=a===":memory:",c="",S=null;try{h||(c=r.fs.resolvePath(r.cwd,a),await r.fs.exists(c)&&(S=await r.fs.readFileBuffer(c)))}catch(l){let d=m(l.message);return{stdout:"",stderr:`sqlite3: unable to open database "${a}": ${d}
30
+ `,exitCode:1}}let $=r.limits?.maxSqliteTimeoutMs??G,j={dbBuffer:S,sql:s,options:{bail:t.bail,echo:t.echo}},p;try{p=await ne(j,$,r.requireDefenseContext)}catch(l){return{stdout:"",stderr:`sqlite3: worker error: ${m(l.message)}
31
+ `,exitCode:1}}if(!p.success)return{stdout:"",stderr:`sqlite3: ${m(p.error)}
32
+ `,exitCode:1};let y={mode:t.mode,header:t.header,separator:t.separator,newline:t.newline,nullValue:t.nullValue},g="";t.echo&&(g+=`${s}
33
+ `);let u=!1;for(let l of p.results)if(l.type==="error"){if(t.bail)return{stdout:g,stderr:`Error: ${l.error}
34
+ `,exitCode:1};g+=`Error: ${l.error}
35
+ `,u=!0}else l.columns&&l.rows&&(l.rows.length>0||t.header)&&(g+=V(l.columns,l.rows,y));if(p.hasModifications&&!t.readonly&&!h&&c&&p.dbBuffer)try{await r.fs.writeFile(c,p.dbBuffer)}catch(l){let d=m(l.message);return{stdout:g,stderr:`sqlite3: failed to write database: ${d}
36
+ `,exitCode:1}}return{stdout:g,stderr:"",exitCode:u&&t.bail?1:0}}},we={name:"sqlite3",flags:[],needsArgs:!0};export{re as a,ge as b,we as c};
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- import{a as F,b,c as M,d as qe,e as w,f as v,g as X,h as Y}from"./chunk-GZHFXDDO.js";import{a as et}from"./chunk-QSDVMMYI.js";import{a as $}from"./chunk-EPIOK4SY.js";import{d as G}from"./chunk-UYBH3FNE.js";import{a as H}from"./chunk-SE4C7FJY.js";import{a as We}from"./chunk-5WFYIUU2.js";import{a as D,b as K}from"./chunk-GTNBSMZR.js";import{b as Ue,d as Be,e as Ze,f as Qe}from"./chunk-KGOUQS5A.js";var q,_e=Ue(()=>{"use strict";q=class{input;pos=0;tokens=[];constructor(n){this.input=n}tokenize(){for(;this.pos<this.input.length&&(this.skipWhitespace(),!(this.pos>=this.input.length));){let n=this.nextToken();n&&this.tokens.push(n)}return this.tokens.push({type:"eof",value:"",pos:this.pos}),this.tokens}skipWhitespace(){for(;this.pos<this.input.length;){let n=this.input[this.pos];if(n===" "||n===" "||n===`
2
+ import{a as F,b,c as M,d as qe,e as w,f as v,g as X,h as Y}from"./chunk-GZHFXDDO.js";import{a as et}from"./chunk-QSDVMMYI.js";import{a as $}from"./chunk-W752QGNZ.js";import{d as G}from"./chunk-UYBH3FNE.js";import{a as H}from"./chunk-SE4C7FJY.js";import{a as We}from"./chunk-5WFYIUU2.js";import{a as D,b as K}from"./chunk-GTNBSMZR.js";import{b as Ue,d as Be,e as Ze,f as Qe}from"./chunk-KGOUQS5A.js";var q,_e=Ue(()=>{"use strict";q=class{input;pos=0;tokens=[];constructor(n){this.input=n}tokenize(){for(;this.pos<this.input.length&&(this.skipWhitespace(),!(this.pos>=this.input.length));){let n=this.nextToken();n&&this.tokens.push(n)}return this.tokens.push({type:"eof",value:"",pos:this.pos}),this.tokens}skipWhitespace(){for(;this.pos<this.input.length;){let n=this.input[this.pos];if(n===" "||n===" "||n===`
3
3
  `||n==="\r")this.pos++;else if(n==="#")for(;this.pos<this.input.length&&this.input[this.pos]!==`
4
4
  `;)this.pos++;else break}}nextToken(){let n=this.pos,t=this.input[this.pos];if(t>="0"&&t<="9")return this.readNumber();if(t==='"'||t==="'"||t==="`")return this.readString(t);if(t==="b"&&this.pos+1<this.input.length){let o=this.input[this.pos+1];if(o==='"'||o==="'"||o==="`")return this.pos++,this.readString(o)}if(t==="/"){let o=this.tokens[this.tokens.length-1];return o&&(o.type==="int"||o.type==="float"||o.type==="string"||o.type==="ident"||o.type===")"||o.type==="]")?this.input[this.pos+1]==="/"?(this.pos+=2,{type:"//",value:"//",pos:n}):(this.pos++,{type:"/",value:"/",pos:n}):this.readRegex()}if(this.match("not in"))return{type:"not in",value:"not in",pos:n};if(this.match("=>"))return{type:"=>",value:"=>",pos:n};if(this.match("**"))return{type:"**",value:"**",pos:n};if(this.match("++"))return{type:"++",value:"++",pos:n};if(this.match("//"))return{type:"//",value:"//",pos:n};if(this.match("=="))return{type:"==",value:"==",pos:n};if(this.match("!="))return{type:"!=",value:"!=",pos:n};if(this.match("<="))return{type:"<=",value:"<=",pos:n};if(this.match(">="))return{type:">=",value:">=",pos:n};if(this.match("&&"))return{type:"&&",value:"&&",pos:n};if(this.match("||"))return{type:"||",value:"||",pos:n};let r=new Map([["(","("],[")",")"],["[","["],["]","]"],["{","{"],["}","}"],[",",","],[":",":"],[";",";"],["+","+"],["-","-"],["*","*"],["%","%"],["<","<"],[">",">"],["!","!"],[".","."],["|","|"],["=","="]]).get(t);if(r!==void 0)return this.pos++,{type:r,value:t,pos:n};if(this.isIdentStart(t))return this.readIdentifier();throw new Error(`Unexpected character '${t}' at position ${this.pos}`)}match(n){if(this.input.slice(this.pos,this.pos+n.length)===n){if(/^[a-zA-Z]/.test(n)){let t=this.input[this.pos+n.length];if(t&&this.isIdentChar(t))return!1}return this.pos+=n.length,!0}return!1}isIdentStart(n){return n>="a"&&n<="z"||n>="A"&&n<="Z"||n==="_"}isIdentChar(n){return this.isIdentStart(n)||n>="0"&&n<="9"}readNumber(){let n=this.pos,t=!1,s=!1;for(;this.pos<this.input.length;){let o=this.input[this.pos];if(o>="0"&&o<="9")this.pos++;else if(o==="_")this.pos++;else if(o==="."&&!t&&!s)t=!0,this.pos++;else if((o==="e"||o==="E")&&!s)s=!0,t=!0,this.pos++,this.pos<this.input.length&&(this.input[this.pos]==="+"||this.input[this.pos]==="-")&&this.pos++;else break}let r=this.input.slice(n,this.pos).replace(/_/g,"");return{type:t?"float":"int",value:r,pos:n}}readString(n){let t=this.pos;this.pos++;let s="";for(;this.pos<this.input.length;){let r=this.input[this.pos];if(r===n)return this.pos++,{type:"string",value:s,pos:t};if(r==="\\"){if(this.pos++,this.pos<this.input.length){let o=this.input[this.pos];switch(o){case"n":s+=`
5
5
  `;break;case"r":s+="\r";break;case"t":s+=" ";break;case"\\":s+="\\";break;case'"':s+='"';break;case"'":s+="'";break;case"`":s+="`";break;case"0":s+="\0";break;default:s+=o}this.pos++}}else s+=r,this.pos++}throw new Error(`Unterminated string starting at position ${t}`)}readRegex(){let n=this.pos;this.pos++;let t="",s="";for(;this.pos<this.input.length;){let r=this.input[this.pos];if(r==="/"){for(this.pos++;this.pos<this.input.length&&this.input[this.pos]==="i";)s+=this.input[this.pos],this.pos++;return{type:"regex",value:t+(s?`/${s}`:""),pos:n}}r==="\\"?(t+=r,this.pos++,this.pos<this.input.length&&(t+=this.input[this.pos],this.pos++)):(t+=r,this.pos++)}throw new Error(`Unterminated regex starting at position ${n}`)}readIdentifier(){let n=this.pos;for(;this.pos<this.input.length&&this.isIdentChar(this.input[this.pos]);)this.pos++;let t=!1;this.pos<this.input.length&&this.input[this.pos]==="?"&&(t=!0,this.pos++);let s=this.input.slice(n,t?this.pos-1:this.pos);t&&(s+="?");let r=new Map([["true","true"],["false","false"],["null","null"],["and","and"],["or","or"],["eq","eq"],["ne","ne"],["lt","lt"],["le","le"],["gt","gt"],["ge","ge"],["in","in"],["as","as"],["_","_"]]),o=s.replace(/\?$/,""),i=r.get(o);return i!==void 0&&!t?{type:i,value:o,pos:n}:{type:"ident",value:s,pos:n}}}});var He={};Be(He,{parseMoonblade:()=>_,parseNamedExpressions:()=>V});function V(e){let n=[],s=new q(e).tokenize(),r=0,o=()=>s[r]||{type:"eof",value:"",pos:0},i=()=>s[r++];for(;o().type!=="eof";){if(o().type===","&&n.length>0){i();continue}let h=[],u=0,p=r;for(;o().type!=="eof";){let a=o();if((a.type===","||a.type==="as")&&u===0)break;(a.type==="("||a.type==="["||a.type==="{")&&u++,(a.type===")"||a.type==="]"||a.type==="}")&&u--,h.push(i())}h.push({type:"eof",value:"",pos:0});let f=new J(h).parse(),c;if(o().type==="as")if(i(),o().type==="("){i();let a=[];for(;o().type!==")"&&o().type!=="eof";)(o().type==="ident"||o().type==="string")&&(a.push(o().value),i()),o().type===","&&i();o().type===")"&&i(),c=a}else if(o().type==="ident"||o().type==="string")c=o().value,i();else throw new Error(`Expected name after 'as', got ${o().type}`);else c=e.slice(s[p].pos,s[r-1]?.pos||e.length).trim(),f.type==="identifier"&&(c=f.name);n.push({expr:f,name:c})}return n}function _(e){let t=new q(e).tokenize();return new J(t).parse()}var R,J,U=Ue(()=>{"use strict";_e();R={PIPE:1,OR:2,AND:3,EQUALITY:4,COMPARISON:5,ADDITIVE:6,MULTIPLICATIVE:7,POWER:8,UNARY:9,POSTFIX:10},J=class{pos=0;tokens;constructor(n){this.tokens=n}parse(){let n=this.parseExpr(0);if(this.peek().type!=="eof")throw new Error(`Unexpected token: ${this.peek().value}`);return n}parseExpr(n){let t=this.parsePrefix();for(;;){let s=this.peek(),r=this.getInfixPrec(s.type);if(r<n)break;t=this.parseInfix(t,r)}return t}parsePrefix(){let n=this.peek();switch(n.type){case"int":return this.advance(),{type:"int",value:Number.parseInt(n.value,10)};case"float":return this.advance(),{type:"float",value:Number.parseFloat(n.value)};case"string":return this.advance(),{type:"string",value:n.value};case"regex":{this.advance();let t=n.value.split("/"),s=t.length>1?t[t.length-1]:"";return{type:"regex",pattern:t.slice(0,-1).join("/")||n.value,caseInsensitive:s.includes("i")}}case"true":return this.advance(),{type:"bool",value:!0};case"false":return this.advance(),{type:"bool",value:!1};case"null":return this.advance(),{type:"null"};case"_":return this.advance(),{type:"underscore"};case"ident":{let t=n.value,s=t.endsWith("?"),r=s?t.slice(0,-1):t;if(this.advance(),this.peek().type==="(")return this.parseFunctionCall(r);if(this.peek().type==="=>"){this.advance();let o=this.parseExpr(0);return this.bindLambdaArgs({type:"lambda",params:[r],body:o},[r])}return{type:"identifier",name:r,unsure:s}}case"(":{this.advance();let t=[];if(this.peek().type===")"){if(this.advance(),this.peek().type==="=>"){this.advance();let r=this.parseExpr(0);return{type:"lambda",params:[],body:r}}throw new Error("Empty parentheses not allowed")}if(this.peek().type==="ident"){let r=this.peek().value;if(this.advance(),this.peek().type===","||this.peek().type===")"){for(t.push(r);this.peek().type===","&&(this.advance(),this.peek().type==="ident");)t.push(this.peek().value),this.advance();if(this.peek().type===")"&&(this.advance(),this.peek().type==="=>")){this.advance();let o=this.parseExpr(0);return this.bindLambdaArgs({type:"lambda",params:t,body:o},t)}this.pos-=t.length*2,t.length>1&&(this.pos=this.pos)}this.pos--}let s=this.parseExpr(0);return this.expect(")"),this.peek().type,s}case"[":return this.parseList();case"{":return this.parseMap();case"-":{this.advance();let t=this.parseExpr(R.UNARY);return t.type==="int"?{type:"int",value:-t.value}:t.type==="float"?{type:"float",value:-t.value}:{type:"func",name:"neg",args:[{expr:t}]}}case"!":return this.advance(),{type:"func",name:"not",args:[{expr:this.parseExpr(R.UNARY)}]};default:throw new Error(`Unexpected token: ${n.type} (${n.value})`)}}parseFunctionCall(n){this.expect("(");let t=[];if(this.peek().type!==")")do{t.length>0&&this.peek().type===","&&this.advance();let s;if(this.peek().type==="ident"){let o=this.peek().value,i=this.pos+1;i<this.tokens.length&&this.tokens[i].type==="="&&(s=o,this.advance(),this.advance())}let r=this.parseExpr(0);t.push({name:s,expr:r})}while(this.peek().type===",");return this.expect(")"),{type:"func",name:n.toLowerCase(),args:t}}parseList(){this.expect("[");let n=[];if(this.peek().type!=="]")do n.length>0&&this.peek().type===","&&this.advance(),n.push(this.parseExpr(0));while(this.peek().type===",");return this.expect("]"),{type:"list",elements:n}}parseMap(){this.expect("{");let n=[];if(this.peek().type!=="}")do{n.length>0&&this.peek().type===","&&this.advance();let t;if(this.peek().type==="ident")t=this.peek().value,this.advance();else if(this.peek().type==="string")t=this.peek().value,this.advance();else throw new Error(`Expected map key, got ${this.peek().type}`);this.expect(":");let s=this.parseExpr(0);n.push({key:t,value:s})}while(this.peek().type===",");return this.expect("}"),{type:"map",entries:n}}parseInfix(n,t){let s=this.peek(),o=new Map([["+","add"],["-","sub"],["*","mul"],["/","div"],["//","idiv"],["%","mod"],["**","pow"],["++","concat"],["==","=="],["!=","!="],["<","<"],["<=","<="],[">",">"],[">=",">="],["eq","eq"],["ne","ne"],["lt","lt"],["le","le"],["gt","gt"],["ge","ge"],["&&","and"],["and","and"],["||","or"],["or","or"]]).get(s.type);if(o!==void 0){this.advance();let i=this.parseExpr(t+(this.isRightAssoc(s.type)?0:1));return{type:"func",name:o,args:[{expr:n},{expr:i}]}}if(s.type==="|"){this.advance();let i=this.parseExpr(t);return this.handlePipe(n,i)}if(s.type===".")return this.advance(),this.handleDot(n);if(s.type==="[")return this.advance(),this.handleIndexing(n);if(s.type==="in")return this.advance(),{type:"func",name:"contains",args:[{expr:this.parseExpr(t+1)},{expr:n}]};if(s.type==="not in")return this.advance(),{type:"func",name:"not",args:[{expr:{type:"func",name:"contains",args:[{expr:this.parseExpr(t+1)},{expr:n}]}}]};throw new Error(`Unexpected infix token: ${s.type}`)}handlePipe(n,t){if(t.type==="identifier")return{type:"func",name:t.name,args:[{expr:n}]};if(t.type==="func"){let s=this.countUnderscores(t);return s===0?t:s===1?this.fillUnderscore(t,n):{type:"pipeline",exprs:[n,t]}}return this.countUnderscores(t)===1?this.fillUnderscore(t,n):t}handleDot(n){let t=this.peek();if(t.type==="ident"){let s=t.value;if(this.advance(),this.peek().type==="("){let r=this.parseFunctionCall(s);return r.type==="func"&&r.args.unshift({expr:n}),r}return{type:"func",name:"get",args:[{expr:n},{expr:{type:"string",value:s}}]}}if(t.type==="int"){let s=Number.parseInt(t.value,10);return this.advance(),{type:"func",name:"get",args:[{expr:n},{expr:{type:"int",value:s}}]}}if(t.type==="string"){let s=t.value;return this.advance(),{type:"func",name:"get",args:[{expr:n},{expr:{type:"string",value:s}}]}}throw new Error(`Expected identifier, number, or string after dot, got ${t.type}`)}handleIndexing(n){if(this.peek().type===":"){if(this.advance(),this.peek().type==="]")return this.advance(),{type:"func",name:"slice",args:[{expr:n}]};let s=this.parseExpr(0);return this.expect("]"),{type:"func",name:"slice",args:[{expr:n},{expr:{type:"int",value:0}},{expr:s}]}}let t=this.parseExpr(0);if(this.peek().type===":"){if(this.advance(),this.peek().type==="]")return this.advance(),{type:"func",name:"slice",args:[{expr:n},{expr:t}]};let s=this.parseExpr(0);return this.expect("]"),{type:"func",name:"slice",args:[{expr:n},{expr:t},{expr:s}]}}return this.expect("]"),{type:"func",name:"get",args:[{expr:n},{expr:t}]}}countUnderscores(n){return n.type==="underscore"?1:n.type==="func"?n.args.reduce((t,s)=>t+this.countUnderscores(s.expr),0):n.type==="list"?n.elements.reduce((t,s)=>t+this.countUnderscores(s),0):n.type==="map"?n.entries.reduce((t,s)=>t+this.countUnderscores(s.value),0):0}fillUnderscore(n,t){return n.type==="underscore"?t:n.type==="func"?{...n,args:n.args.map(s=>({...s,expr:this.fillUnderscore(s.expr,t)}))}:n.type==="list"?{...n,elements:n.elements.map(s=>this.fillUnderscore(s,t))}:n.type==="map"?{...n,entries:n.entries.map(s=>({...s,value:this.fillUnderscore(s.value,t)}))}:n}bindLambdaArgs(n,t){return{...n,body:this.bindLambdaArgsInExpr(n.body,t)}}bindLambdaArgsInExpr(n,t){return n.type==="identifier"&&t.includes(n.name)?{type:"lambdaBinding",name:n.name}:n.type==="func"?{...n,args:n.args.map(s=>({...s,expr:this.bindLambdaArgsInExpr(s.expr,t)}))}:n.type==="list"?{...n,elements:n.elements.map(s=>this.bindLambdaArgsInExpr(s,t))}:n.type==="map"?{...n,entries:n.entries.map(s=>({...s,value:this.bindLambdaArgsInExpr(s.value,t)}))}:n}getInfixPrec(n){switch(n){case"|":return R.PIPE;case"||":case"or":return R.OR;case"&&":case"and":return R.AND;case"==":case"!=":case"eq":case"ne":return R.EQUALITY;case"<":case"<=":case">":case">=":case"lt":case"le":case"gt":case"ge":case"in":case"not in":return R.COMPARISON;case"+":case"-":case"++":return R.ADDITIVE;case"*":case"/":case"//":case"%":return R.MULTIPLICATIVE;case"**":return R.POWER;case".":case"[":return R.POSTFIX;default:return-1}}isRightAssoc(n){return n==="**"}peek(){return this.tokens[this.pos]||{type:"eof",value:"",pos:0}}advance(){return this.tokens[this.pos++]}expect(n){let t=this.peek();if(t.type!==n)throw new Error(`Expected ${n}, got ${t.type}`);return this.advance()}}});U();function E(e,n){return n.length===0?k(e,[]):n.length===1?{type:"Pipe",left:n[0],right:k(e,[])}:{type:"Pipe",left:n[0],right:k(e,n.slice(1))}}var B={add:e=>S("+",e[0],e[1]),sub:e=>S("-",e[0],e[1]),mul:e=>S("*",e[0],e[1]),div:e=>S("/",e[0],e[1]),mod:e=>S("%",e[0],e[1]),idiv:e=>k("floor",[S("/",e[0],e[1])]),pow:e=>E("pow",e),neg:e=>({type:"UnaryOp",op:"-",operand:e[0]}),"==":e=>S("==",e[0],e[1]),"!=":e=>S("!=",e[0],e[1]),"<":e=>S("<",e[0],e[1]),"<=":e=>S("<=",e[0],e[1]),">":e=>S(">",e[0],e[1]),">=":e=>S(">=",e[0],e[1]),eq:e=>S("==",P(e[0]),P(e[1])),ne:e=>S("!=",P(e[0]),P(e[1])),lt:e=>S("<",P(e[0]),P(e[1])),le:e=>S("<=",P(e[0]),P(e[1])),gt:e=>S(">",P(e[0]),P(e[1])),ge:e=>S(">=",P(e[0]),P(e[1])),and:e=>S("and",e[0],e[1]),or:e=>S("or",e[0],e[1]),not:e=>({type:"UnaryOp",op:"not",operand:e[0]}),len:e=>E("length",e),length:e=>E("length",e),upper:e=>E("ascii_upcase",e),lower:e=>E("ascii_downcase",e),trim:e=>E("trim",e),ltrim:e=>e.length===0?k("ltrimstr",[{type:"Literal",value:" "}]):{type:"Pipe",left:e[0],right:k("ltrimstr",[{type:"Literal",value:" "}])},rtrim:e=>e.length===0?k("rtrimstr",[{type:"Literal",value:" "}]):{type:"Pipe",left:e[0],right:k("rtrimstr",[{type:"Literal",value:" "}])},split:e=>E("split",e),join:e=>e.length===1?k("join",[{type:"Literal",value:""}]):E("join",e),concat:e=>S("+",e[0],e[1]),startswith:e=>E("startswith",e),endswith:e=>E("endswith",e),contains:e=>E("contains",e),replace:e=>E("gsub",e),substr:e=>e.length===2?{type:"Slice",base:e[0],start:e[1]}:{type:"Slice",base:e[0],start:e[1],end:S("+",e[1],e[2])},abs:e=>E("fabs",e),floor:e=>E("floor",e),ceil:e=>E("ceil",e),round:e=>E("round",e),sqrt:e=>E("sqrt",e),log:e=>E("log",e),log10:e=>E("log10",e),log2:e=>E("log2",e),exp:e=>E("exp",e),sin:e=>E("sin",e),cos:e=>E("cos",e),tan:e=>E("tan",e),asin:e=>E("asin",e),acos:e=>E("acos",e),atan:e=>E("atan",e),min:e=>E("min",e),max:e=>E("max",e),first:e=>e.length===0?{type:"Index",index:{type:"Literal",value:0}}:{type:"Index",index:{type:"Literal",value:0},base:e[0]},last:e=>e.length===0?{type:"Index",index:{type:"Literal",value:-1}}:{type:"Index",index:{type:"Literal",value:-1},base:e[0]},get:e=>e.length===1?{type:"Index",index:e[0]}:{type:"Index",index:e[1],base:e[0]},slice:e=>e.length===1?{type:"Slice",base:e[0]}:e.length===2?{type:"Slice",base:e[0],start:e[1]}:{type:"Slice",base:e[0],start:e[1],end:e[2]},keys:"keys",values:"values",entries:e=>k("to_entries",e),from_entries:"from_entries",reverse:"reverse",sort:"sort",sort_by:"sort_by",group_by:"group_by",unique:"unique",unique_by:"unique_by",flatten:"flatten",map:e=>({type:"Pipe",left:e[0],right:{type:"Array",elements:e[1]}}),select:e=>k("select",e),empty:()=>k("empty",[]),count:()=>k("length",[]),sum:e=>e.length===0?k("add",[]):{type:"Pipe",left:{type:"Array",elements:e[0]},right:k("add",[])},mean:e=>e.length===0?{type:"Pipe",left:{type:"Identity"},right:S("/",k("add",[]),k("length",[]))}:{type:"Pipe",left:{type:"Array",elements:e[0]},right:S("/",k("add",[]),k("length",[]))},avg:e=>e.length===0?{type:"Pipe",left:{type:"Identity"},right:S("/",k("add",[]),k("length",[]))}:{type:"Pipe",left:{type:"Array",elements:e[0]},right:S("/",k("add",[]),k("length",[]))},type:"type",isnull:e=>e.length===0?S("==",{type:"Identity"},{type:"Literal",value:null}):S("==",e[0],{type:"Literal",value:null}),isempty:e=>e.length===0?S("==",{type:"Identity"},{type:"Literal",value:""}):S("==",e[0],{type:"Literal",value:""}),tonumber:e=>e.length===0?k("tonumber",[]):k("tonumber",e),tostring:e=>e.length===0?k("tostring",[]):k("tostring",e),if:e=>Je(e[0],e[1],e[2]),coalesce:e=>{if(e.length===0)return{type:"Literal",value:null};if(e.length===1)return e[0];let[n,...t]=e,s=S("and",S("!=",n,{type:"Literal",value:null}),S("!=",n,{type:"Literal",value:""}));return Je(s,n,t.length===1?t[0]:B.coalesce(t))},index:()=>({type:"Field",name:"_row_index"}),now:()=>k("now",[]),fmt:e=>k("tostring",e),format:e=>k("tostring",e)};function S(e,n,t){return{type:"BinaryOp",op:e,left:n,right:t}}function k(e,n){return{type:"Call",name:e,args:n}}var tt="then";function Je(e,n,t){let s={type:"Cond",cond:e,elifs:[],else:t||{type:"Literal",value:null}};return s[tt]=n,s}function P(e){return{type:"Pipe",left:e,right:{type:"Call",name:"tostring",args:[]}}}function O(e,n=!0){switch(e.type){case"int":case"float":return{type:"Literal",value:e.value};case"string":return{type:"Literal",value:e.value};case"bool":return{type:"Literal",value:e.value};case"null":return{type:"Literal",value:null};case"underscore":return{type:"Index",base:{type:"Identity"},index:{type:"Literal",value:"_"}};case"identifier":return n?{type:"Field",name:e.name}:{type:"VarRef",name:e.name};case"lambdaBinding":return{type:"VarRef",name:e.name};case"func":{let t=e.args.map(r=>O(r.expr,n)),s=Object.hasOwn(B,e.name)?B[e.name]:void 0;return typeof s=="function"?s(t):k(typeof s=="string"?s:e.name,t)}case"list":return e.elements.length===0?{type:"Array"}:{type:"Array",elements:e.elements.reduce((t,s,r)=>{let o=O(s,n);return r===0?o:{type:"Comma",left:t,right:o}},null)};case"map":return{type:"Object",entries:e.entries.map(t=>({key:t.key,value:O(t.value,n)}))};case"regex":return{type:"Literal",value:e.pattern};case"slice":return{type:"Slice",start:e.start?O(e.start,n):void 0,end:e.end?O(e.end,n):void 0};case"lambda":return O(e.body,n);case"pipeline":return{type:"Identity"};default:throw new Error(`Unknown moonblade expression type: ${e.type}`)}}function Q(e){let n=[],t=0;for(;t<e.length;){for(;t<e.length&&(e[t]===" "||e[t]===",");)t++;if(t>=e.length)break;let s=t;for(;t<e.length&&/\w/.test(e[t]);)t++;let r=e.slice(s,t);for(;t<e.length&&e[t]===" ";)t++;if(e[t]!=="(")break;t++;let o=1,i=t;for(;t<e.length&&o>0;)e[t]==="("?o++:e[t]===")"&&o--,o>0&&t++;let h=e.slice(i,t).trim();for(t++;t<e.length&&e[t]===" ";)t++;let u="";if(e.slice(t,t+3).toLowerCase()==="as "){for(t+=3;t<e.length&&e[t]===" ";)t++;let p=t;for(;t<e.length&&/\w/.test(e[t]);)t++;u=e.slice(p,t)}u||(u=h?`${r}(${h})`:`${r}()`),n.push({func:r,expr:h,alias:u})}return n}function ze(e){return/^\w+$/.test(e)}function Z(e,n,t){let s=O(_(n)),r=$(e,s,t);return r.length>0?r[0]:null}function ee(e,n,t={}){let{func:s,expr:r}=n;if(s==="count"&&!r)return e.length;let o;switch(ze(r)?o=e.map(i=>i[r]).filter(i=>i!=null):o=e.map(i=>Z(i,r,t)).filter(i=>i!=null),s){case"count":return ze(r)?o.length:o.filter(i=>!!i).length;case"sum":return o.map(h=>typeof h=="number"?h:Number.parseFloat(String(h))).reduce((h,u)=>h+u,0);case"mean":case"avg":{let i=o.map(h=>typeof h=="number"?h:Number.parseFloat(String(h)));return i.length>0?i.reduce((h,u)=>h+u,0)/i.length:0}case"min":{let i=o.map(h=>typeof h=="number"?h:Number.parseFloat(String(h)));return i.length>0?Math.min(...i):null}case"max":{let i=o.map(h=>typeof h=="number"?h:Number.parseFloat(String(h)));return i.length>0?Math.max(...i):null}case"first":return o.length>0?o[0]:null;case"last":return o.length>0?o[o.length-1]:null;case"median":{let i=o.map(u=>typeof u=="number"?u:Number.parseFloat(String(u))).filter(u=>!Number.isNaN(u)).sort((u,p)=>u-p);if(i.length===0)return null;let h=Math.floor(i.length/2);return i.length%2===0?(i[h-1]+i[h])/2:i[h]}case"mode":{let i=new Map;for(let p of o){let l=String(p);i.set(l,(i.get(l)||0)+1)}let h=0,u=null;for(let[p,l]of i)l>h&&(h=l,u=p);return u}case"cardinality":return new Set(o.map(h=>String(h))).size;case"values":return o.map(i=>String(i)).join("|");case"distinct_values":return[...new Set(o.map(h=>String(h)))].sort().join("|");case"all":{if(e.length===0)return!0;for(let i of e)if(!Z(i,r,t))return!1;return!0}case"any":{for(let i of e)if(Z(i,r,t))return!0;return!1}default:return null}}function Ke(e,n,t={}){let s=F();for(let r of n)b(s,r.alias,ee(e,r,t));return s}async function te(e,n){let t="",s=[];for(let l of e)l.startsWith("-")||(t?s.push(l):t=l);if(!t)return{stdout:"",stderr:`xan agg: no aggregation expression
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- import{a}from"./chunk-SE4C7FJY.js";var w={name:"expr",async execute(s,r){if(s.length===0)return{stdout:"",stderr:`expr: missing operand
3
- `,exitCode:2};try{let l=d(s),h=l==="0"||l===""?1:0;return{stdout:`${l}
4
- `,stderr:"",exitCode:h}}catch(l){return{stdout:"",stderr:`expr: ${l.message}
5
- `,exitCode:2}}}};function d(s){if(s.length===1)return s[0];let r=0;function l(){let e=h();for(;r<s.length&&s[r]==="|";){r++;let t=h();if(e!=="0"&&e!=="")return e;e=t}return e}function h(){let e=m();for(;r<s.length&&s[r]==="&";){r++;let t=m();(e==="0"||e===""||t==="0"||t==="")&&(e="0")}return e}function m(){let e=p();for(;r<s.length;){let t=s[r];if(["=","!=","<",">","<=",">="].includes(t)){r++;let o=p(),n=parseInt(e,10),i=parseInt(o,10),f=!Number.isNaN(n)&&!Number.isNaN(i),c;t==="="?c=f?n===i:e===o:t==="!="?c=f?n!==i:e!==o:t==="<"?c=f?n<i:e<o:t===">"?c=f?n>i:e>o:t==="<="?c=f?n<=i:e<=o:c=f?n>=i:e>=o,e=c?"1":"0"}else break}return e}function p(){let e=g();for(;r<s.length;){let t=s[r];if(t==="+"||t==="-"){r++;let o=g(),n=parseInt(e,10),i=parseInt(o,10);if(Number.isNaN(n)||Number.isNaN(i))throw new Error("non-integer argument");e=String(t==="+"?n+i:n-i)}else break}return e}function g(){let e=N();for(;r<s.length;){let t=s[r];if(t==="*"||t==="/"||t==="%"){r++;let o=N(),n=parseInt(e,10),i=parseInt(o,10);if(Number.isNaN(n)||Number.isNaN(i))throw new Error("non-integer argument");if((t==="/"||t==="%")&&i===0)throw new Error("division by zero");t==="*"?e=String(n*i):t==="/"?e=String(Math.trunc(n/i)):e=String(n%i)}else break}return e}function N(){let e=u();for(;r<s.length&&s[r]===":";){r++;let t=u(),n=a(`^${t}`).match(e);n?e=n[1]!==void 0?n[1]:String(n[0].length):e="0"}return e}function u(){if(r>=s.length)throw new Error("syntax error");let e=s[r];if(e==="match"){r++;let t=u(),o=u(),i=a(o).match(t);return i?i[1]!==void 0?i[1]:String(i[0].length):"0"}if(e==="substr"){r++;let t=u(),o=parseInt(u(),10),n=parseInt(u(),10);if(Number.isNaN(o)||Number.isNaN(n))throw new Error("non-integer argument");return t.substring(o-1,o-1+n)}if(e==="index"){r++;let t=u(),o=u();for(let n=0;n<t.length;n++)if(o.includes(t[n]))return String(n+1);return"0"}if(e==="length"){r++;let t=u();return String(t.length)}if(e==="("){r++;let t=l();if(r>=s.length||s[r]!==")")throw new Error("syntax error");return r++,t}return r++,e}return l()}var b={name:"expr",flags:[],needsArgs:!0};export{w as a,b};
2
+ import{a}from"./chunk-SE4C7FJY.js";import{a as d}from"./chunk-SYG3IW7P.js";var S={name:"expr",async execute(s,r){if(s.length===0)return{stdout:"",stderr:`expr: missing operand
3
+ `,exitCode:2};try{let c=x(s),h=c==="0"||c===""?1:0;return{stdout:`${c}
4
+ `,stderr:"",exitCode:h}}catch(c){return{stdout:"",stderr:`expr: ${d(c.message)}
5
+ `,exitCode:2}}}};function x(s){if(s.length===1)return s[0];let r=0;function c(){let e=h();for(;r<s.length&&s[r]==="|";){r++;let t=h();if(e!=="0"&&e!=="")return e;e=t}return e}function h(){let e=m();for(;r<s.length&&s[r]==="&";){r++;let t=m();(e==="0"||e===""||t==="0"||t==="")&&(e="0")}return e}function m(){let e=g();for(;r<s.length;){let t=s[r];if(["=","!=","<",">","<=",">="].includes(t)){r++;let o=g(),n=parseInt(e,10),i=parseInt(o,10),f=!Number.isNaN(n)&&!Number.isNaN(i),l;t==="="?l=f?n===i:e===o:t==="!="?l=f?n!==i:e!==o:t==="<"?l=f?n<i:e<o:t===">"?l=f?n>i:e>o:t==="<="?l=f?n<=i:e<=o:l=f?n>=i:e>=o,e=l?"1":"0"}else break}return e}function g(){let e=p();for(;r<s.length;){let t=s[r];if(t==="+"||t==="-"){r++;let o=p(),n=parseInt(e,10),i=parseInt(o,10);if(Number.isNaN(n)||Number.isNaN(i))throw new Error("non-integer argument");e=String(t==="+"?n+i:n-i)}else break}return e}function p(){let e=N();for(;r<s.length;){let t=s[r];if(t==="*"||t==="/"||t==="%"){r++;let o=N(),n=parseInt(e,10),i=parseInt(o,10);if(Number.isNaN(n)||Number.isNaN(i))throw new Error("non-integer argument");if((t==="/"||t==="%")&&i===0)throw new Error("division by zero");t==="*"?e=String(n*i):t==="/"?e=String(Math.trunc(n/i)):e=String(n%i)}else break}return e}function N(){let e=u();for(;r<s.length&&s[r]===":";){r++;let t=u(),n=a(`^${t}`).match(e);n?e=n[1]!==void 0?n[1]:String(n[0].length):e="0"}return e}function u(){if(r>=s.length)throw new Error("syntax error");let e=s[r];if(e==="match"){r++;let t=u(),o=u(),i=a(o).match(t);return i?i[1]!==void 0?i[1]:String(i[0].length):"0"}if(e==="substr"){r++;let t=u(),o=parseInt(u(),10),n=parseInt(u(),10);if(Number.isNaN(o)||Number.isNaN(n))throw new Error("non-integer argument");return t.substring(o-1,o-1+n)}if(e==="index"){r++;let t=u(),o=u();for(let n=0;n<t.length;n++)if(o.includes(t[n]))return String(n+1);return"0"}if(e==="length"){r++;let t=u();return String(t.length)}if(e==="("){r++;let t=c();if(r>=s.length||s[r]!==")")throw new Error("syntax error");return r++,t}return r++,e}return c()}var E={name:"expr",flags:[],needsArgs:!0};export{S as a,E as b};
@@ -0,0 +1,13 @@
1
+ #!/usr/bin/env node
2
+ import{a as b,b as z}from"./chunk-W752QGNZ.js";import{a as D,b as F}from"./chunk-ZRRNCS7N.js";import{a as N}from"./chunk-Q5MYEU7X.js";import{a as k}from"./chunk-5WFYIUU2.js";import{k as $}from"./chunk-6KZRLMG3.js";import{a as O}from"./chunk-SYG3IW7P.js";import{a as J,b as I,c as C}from"./chunk-GTNBSMZR.js";function L(s){let r=[],t=0,l=s.length;for(;t<l;){for(;t<l&&/\s/.test(s[t]);)t++;if(t>=l)break;let u=t,n=s[t];if(n==="{"||n==="["){let i=n,a=n==="{"?"}":"]",c=1,p=!1,d=!1;for(t++;t<l&&c>0;){let h=s[t];d?d=!1:h==="\\"?d=!0:h==='"'?p=!p:p||(h===i?c++:h===a&&c--),t++}if(c!==0)throw new Error(`Unexpected end of JSON input at position ${t} (unclosed ${i})`);r.push(JSON.parse(s.slice(u,t)))}else if(n==='"'){let i=!1;for(t++;t<l;){let a=s[t];if(i)i=!1;else if(a==="\\")i=!0;else if(a==='"'){t++;break}t++}r.push(JSON.parse(s.slice(u,t)))}else if(n==="-"||n>="0"&&n<="9"){for(;t<l&&/[\d.eE+-]/.test(s[t]);)t++;r.push(JSON.parse(s.slice(u,t)))}else if(s.slice(t,t+4)==="true")r.push(!0),t+=4;else if(s.slice(t,t+5)==="false")r.push(!1),t+=5;else if(s.slice(t,t+4)==="null")r.push(null),t+=4;else{let i=s.slice(t,t+10);throw new Error(`Invalid JSON at position ${u}: unexpected '${i.split(/\s/)[0]}'`)}}return r}var W={name:"jq",summary:"command-line JSON processor",usage:"jq [OPTIONS] FILTER [FILE]",options:["-r, --raw-output output strings without quotes","-c, --compact compact output (no pretty printing)","-e, --exit-status set exit status based on output","-s, --slurp read entire input into array","-n, --null-input don't read any input","-j, --join-output don't print newlines after each output","-a, --ascii force ASCII output","-S, --sort-keys sort object keys","-C, --color colorize output (ignored)","-M, --monochrome monochrome output (ignored)"," --tab use tabs for indentation"," --help display this help and exit"]};function j(s,r,t,l,u,n=0){if(s===null||s===void 0)return"null";if(typeof s=="boolean")return String(s);if(typeof s=="number")return Number.isFinite(s)?String(s):"null";if(typeof s=="string")return t?s:JSON.stringify(s);let i=u?" ":" ";if(Array.isArray(s))return s.length===0?"[]":r?`[${s.map(c=>j(c,!0,!1,l,u)).join(",")}]`:`[
3
+ ${s.map(c=>i.repeat(n+1)+j(c,!1,!1,l,u,n+1)).join(`,
4
+ `)}
5
+ ${i.repeat(n)}]`;if(typeof s=="object"){let a=Object.keys(s);return l&&(a=a.sort()),a.length===0?"{}":r?`{${a.map(p=>`${JSON.stringify(p)}:${j(s[p],!0,!1,l,u)}`).join(",")}}`:`{
6
+ ${a.map(p=>{let d=j(s[p],!1,!1,l,u,n+1);return`${i.repeat(n+1)}${JSON.stringify(p)}: ${d}`}).join(`,
7
+ `)}
8
+ ${i.repeat(n)}}`}return String(s)}var G={name:"jq",async execute(s,r){D(r.requireDefenseContext,"jq","execution entry");let t=(o,e)=>F(r.requireDefenseContext,"jq",o,e);if(I(s))return J(W);let l=!1,u=!1,n=!1,i=!1,a=!1,c=!1,p=!1,d=!1,h=".",E=!1,g=[];for(let o=0;o<s.length;o++){let e=s[o];if(e==="-r"||e==="--raw-output")l=!0;else if(e==="-c"||e==="--compact-output")u=!0;else if(e==="-e"||e==="--exit-status")n=!0;else if(e==="-s"||e==="--slurp")i=!0;else if(e==="-n"||e==="--null-input")a=!0;else if(e==="-j"||e==="--join-output")c=!0;else if(!(e==="-a"||e==="--ascii")){if(e==="-S"||e==="--sort-keys")p=!0;else if(!(e==="-C"||e==="--color")){if(!(e==="-M"||e==="--monochrome"))if(e==="--tab")d=!0;else if(e==="-")g.push("-");else{if(e.startsWith("--"))return C("jq",e);if(e.startsWith("-")){for(let f of e.slice(1))if(f==="r")l=!0;else if(f==="c")u=!0;else if(f==="e")n=!0;else if(f==="s")i=!0;else if(f==="n")a=!0;else if(f==="j")c=!0;else if(f!=="a"){if(f==="S")p=!0;else if(f!=="C"){if(f!=="M")return C("jq",`-${f}`)}}}else E?g.push(e):(h=e,E=!0)}}}}let y=[];if(!a)if(g.length===0||g.length===1&&g[0]==="-")y.push({source:"stdin",content:r.stdin});else{let o=await t("file read",()=>k(r,g,{cmdName:"jq",stopOnError:!0}));if(o.exitCode!==0)return{stdout:"",stderr:o.stderr,exitCode:2};y=o.files.map(e=>({source:e.filename||"stdin",content:e.content}))}try{let o=z(h),e=[],f={limits:r.limits?{maxIterations:r.limits.maxJqIterations}:void 0,env:r.env,coverage:r.coverage,requireDefenseContext:r.requireDefenseContext};if(a)e=b(null,o,f);else if(i){let m=[];for(let{content:x}of y){let q=x.trim();q&&m.push(...L(q))}e=b(m,o,f)}else for(let{content:m}of y){let x=m.trim();if(!x)continue;let q=L(x);for(let H of q)e.push(...b(H,o,f))}let A=e.map(m=>j(m,u,l,p,d)),M=c?"":`
9
+ `,S=A.join(M),w=r.limits?.maxStringLength;if(w!==void 0&&w>0&&S.length>w)throw new $(`jq: output size limit exceeded (${w} bytes)`,"string_length");let V=n&&(e.length===0||e.every(m=>m==null||m===!1))?1:0;return{stdout:S?c?S:`${S}
10
+ `:"",stderr:"",exitCode:V}}catch(o){if(o instanceof N)throw o;if(o instanceof $)return{stdout:"",stderr:`jq: ${O(o.message)}
11
+ `,exitCode:$.EXIT_CODE};let e=O(o.message);return e.includes("Unknown function")?{stdout:"",stderr:`jq: error: ${e}
12
+ `,exitCode:3}:{stdout:"",stderr:`jq: parse error: ${e}
13
+ `,exitCode:5}}}},Q={name:"jq",flags:[{flag:"-r",type:"boolean"},{flag:"-c",type:"boolean"},{flag:"-e",type:"boolean"},{flag:"-s",type:"boolean"},{flag:"-n",type:"boolean"},{flag:"-j",type:"boolean"},{flag:"-S",type:"boolean"},{flag:"--tab",type:"boolean"}],stdinType:"json",needsArgs:!0};export{G as a,Q as b};
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ import*as i from"node:fs";import*as o from"node:path";function c(t){if(!t||t==="/")return"/";let e=t.endsWith("/")&&t!=="/"?t.slice(0,-1):t;e.startsWith("/")||(e=`/${e}`);let n=e.split("/").filter(r=>r&&r!=="."),s=[];for(let r of n)r===".."?s.pop():s.push(r);return`/${s.join("/")}`||"/"}function h(t,e){if(t.includes("\0"))throw new Error(`ENOENT: path contains null byte, ${e} '${t}'`)}function m(t){let e=c(t);if(e==="/")return"/";let n=e.lastIndexOf("/");return n===0?"/":e.slice(0,n)}function y(t,e){if(e.startsWith("/"))return c(e);let n=t==="/"?`/${e}`:`${t}/${e}`;return c(n)}function p(t,e){return t==="/"?`/${e}`:`${t}/${e}`}function v(t,e){if(e.startsWith("/"))return c(e);let n=m(t);return c(p(n,e))}function d(t,e){return t===e||t.startsWith(`${e}/`)}function f(t,e){try{let n=i.realpathSync(t);return d(n,e)?n:null}catch(n){if(n.code==="ENOENT"){let s=o.dirname(t);if(s===t)return null;let r=f(s,e);if(r===null)return null;try{if(i.lstatSync(t).isSymbolicLink()){let l=i.readlinkSync(t),u=o.isAbsolute(l)?l:o.resolve(o.dirname(t),l);if(f(u,e)===null)return null}}catch{}return o.join(r,o.basename(t))}return null}}function P(t,e,n){let s=f(t,n);if(s===null)return null;let r=o.resolve(t),a=r.slice(e.length),l=s.slice(n.length);if(a!==l)return null;try{if(i.lstatSync(r).isSymbolicLink())return null}catch{}return s}function $(t,e){if(!i.existsSync(t))throw new Error(`${e} root does not exist`);if(!i.statSync(t).isDirectory())throw new Error(`${e} root is not a directory`)}function D(t,e){if(!o.isAbsolute(t))return{withinRoot:!0,relativePath:t};let n;try{n=i.realpathSync(t)}catch{n=o.resolve(t)}return d(n,e)?{withinRoot:!0,relativePath:n.slice(e.length)||"/"}:{withinRoot:!1,safeName:o.basename(t)}}function N(t,e,n,s){let r=t;if(r.path===void 0){for(let l of s)if(r.message?.includes(l))throw t}let a=r.code||"EIO";throw new Error(`${a}: ${n} '${e}'`)}export{c as a,h as b,m as c,y as d,p as e,v as f,d as g,f as h,P as i,$ as j,D as k,N as l};