@keystrokehq/cli 0.1.2 → 0.1.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 (237) hide show
  1. package/dist/alias-RTYYYW3D-CLFgrowj.mjs +98 -0
  2. package/dist/alias-RTYYYW3D-CLFgrowj.mjs.map +1 -0
  3. package/dist/awk2-LA3USKJP-BbsfXVlR.mjs +2737 -0
  4. package/dist/awk2-LA3USKJP-BbsfXVlR.mjs.map +1 -0
  5. package/dist/base64-C2AIWVNC-C0WIgu5V.mjs +123 -0
  6. package/dist/base64-C2AIWVNC-C0WIgu5V.mjs.map +1 -0
  7. package/dist/basename-UB3CIYNI-BgNN3bGm.mjs +53 -0
  8. package/dist/basename-UB3CIYNI-BgNN3bGm.mjs.map +1 -0
  9. package/dist/bash-YZ33HQZQ-N6YyKtUH.mjs +118 -0
  10. package/dist/bash-YZ33HQZQ-N6YyKtUH.mjs.map +1 -0
  11. package/dist/cat-TSFMZVYS-Dz3-oHsV.mjs +63 -0
  12. package/dist/cat-TSFMZVYS-Dz3-oHsV.mjs.map +1 -0
  13. package/dist/chmod-TFEPA42X-YF02QJUv.mjs +125 -0
  14. package/dist/chmod-TFEPA42X-YF02QJUv.mjs.map +1 -0
  15. package/dist/chunk-27JIFWUR-B6ZjjMMI.mjs +100 -0
  16. package/dist/chunk-27JIFWUR-B6ZjjMMI.mjs.map +1 -0
  17. package/dist/chunk-4I3HOE5Z-BixWWVkW.mjs +719 -0
  18. package/dist/chunk-4I3HOE5Z-BixWWVkW.mjs.map +1 -0
  19. package/dist/chunk-4RUAZWKT-D60fyWAB.mjs +22543 -0
  20. package/dist/chunk-4RUAZWKT-D60fyWAB.mjs.map +1 -0
  21. package/dist/chunk-4WKZNNJK-CiwxAWRf.mjs +69 -0
  22. package/dist/chunk-4WKZNNJK-CiwxAWRf.mjs.map +1 -0
  23. package/dist/chunk-5H5SCKJM-BvfXlL01.mjs +606 -0
  24. package/dist/chunk-5H5SCKJM-BvfXlL01.mjs.map +1 -0
  25. package/dist/chunk-AQ6FYS2X-CkVetjym.mjs +37 -0
  26. package/dist/chunk-AQ6FYS2X-CkVetjym.mjs.map +1 -0
  27. package/dist/chunk-BZUGFHVS-CPWRFwK8.mjs +34 -0
  28. package/dist/chunk-BZUGFHVS-CPWRFwK8.mjs.map +1 -0
  29. package/dist/chunk-CHFEPBH4-BUdgjFtD.mjs +594 -0
  30. package/dist/chunk-CHFEPBH4-BUdgjFtD.mjs.map +1 -0
  31. package/dist/chunk-DLL7UR66-BUYgzxnR.mjs +14 -0
  32. package/dist/chunk-DLL7UR66-BUYgzxnR.mjs.map +1 -0
  33. package/dist/chunk-DiodbrVj.mjs +27 -0
  34. package/dist/chunk-EBAPSGAO-Ctfslw2R.mjs +247 -0
  35. package/dist/chunk-EBAPSGAO-Ctfslw2R.mjs.map +1 -0
  36. package/dist/chunk-FOCWZZDE-BIntqBh2.mjs +19 -0
  37. package/dist/chunk-FOCWZZDE-BIntqBh2.mjs.map +1 -0
  38. package/dist/chunk-HBVMHTO5-CJyD-QZX.mjs +10 -0
  39. package/dist/chunk-HBVMHTO5-CJyD-QZX.mjs.map +1 -0
  40. package/dist/chunk-L2UW7DWF-B3tEHhPF.mjs +14 -0
  41. package/dist/chunk-L2UW7DWF-B3tEHhPF.mjs.map +1 -0
  42. package/dist/chunk-L64BMZUV-CyR7RKok.mjs +30 -0
  43. package/dist/chunk-L64BMZUV-CyR7RKok.mjs.map +1 -0
  44. package/dist/chunk-LEKBROJD-CJMrAyu9.mjs +3113 -0
  45. package/dist/chunk-LEKBROJD-CJMrAyu9.mjs.map +1 -0
  46. package/dist/chunk-NRSASXYY-CuWyREpD.mjs +41 -0
  47. package/dist/chunk-NRSASXYY-CuWyREpD.mjs.map +1 -0
  48. package/dist/chunk-QAYAQNCG-Bl0Kbd53.mjs +63 -0
  49. package/dist/chunk-QAYAQNCG-Bl0Kbd53.mjs.map +1 -0
  50. package/dist/chunk-QIQMJJZ4-BwKdslXs.mjs +93 -0
  51. package/dist/chunk-QIQMJJZ4-BwKdslXs.mjs.map +1 -0
  52. package/dist/chunk-SAI2SPQQ-CVRoDNs9.mjs +26 -0
  53. package/dist/chunk-SAI2SPQQ-CVRoDNs9.mjs.map +1 -0
  54. package/dist/chunk-SO6R3ZKN-tTw_RMDX.mjs +140 -0
  55. package/dist/chunk-SO6R3ZKN-tTw_RMDX.mjs.map +1 -0
  56. package/dist/chunk-STHBFACM-lyj-j2a-.mjs +8 -0
  57. package/dist/chunk-STHBFACM-lyj-j2a-.mjs.map +1 -0
  58. package/dist/chunk-SX2HC7SO-Cc4Hpis1.mjs +20 -0
  59. package/dist/chunk-SX2HC7SO-Cc4Hpis1.mjs.map +1 -0
  60. package/dist/chunk-TDD4NFYE-wsWW75MX.mjs +21 -0
  61. package/dist/chunk-TDD4NFYE-wsWW75MX.mjs.map +1 -0
  62. package/dist/chunk-TN7HHBQW-CSB_R-XD.mjs +1137 -0
  63. package/dist/chunk-TN7HHBQW-CSB_R-XD.mjs.map +1 -0
  64. package/dist/chunk-VPADYNBD-BKlA28GJ.mjs +122 -0
  65. package/dist/chunk-VPADYNBD-BKlA28GJ.mjs.map +1 -0
  66. package/dist/chunk-W5DWRFSU-lCyWk0ph.mjs +11 -0
  67. package/dist/chunk-W5DWRFSU-lCyWk0ph.mjs.map +1 -0
  68. package/dist/chunk-WNH3HOQA-BCZUOjCJ.mjs +34 -0
  69. package/dist/chunk-WNH3HOQA-BCZUOjCJ.mjs.map +1 -0
  70. package/dist/chunk-XRFHFXFP-BGxzVZgK.mjs +16 -0
  71. package/dist/chunk-XRFHFXFP-BGxzVZgK.mjs.map +1 -0
  72. package/dist/chunk-YCLFEX4T-COc1AThz.mjs +77 -0
  73. package/dist/chunk-YCLFEX4T-COc1AThz.mjs.map +1 -0
  74. package/dist/clear-HKGFEOF6-CekN2x-O.mjs +28 -0
  75. package/dist/clear-HKGFEOF6-CekN2x-O.mjs.map +1 -0
  76. package/dist/column-XT6UFXNQ-DHENV9D2.mjs +143 -0
  77. package/dist/column-XT6UFXNQ-DHENV9D2.mjs.map +1 -0
  78. package/dist/comm-VV2LDX2J-ppxDJFkY.mjs +87 -0
  79. package/dist/comm-VV2LDX2J-ppxDJFkY.mjs.map +1 -0
  80. package/dist/cp-BISAAS7A-CMWayU4n.mjs +106 -0
  81. package/dist/cp-BISAAS7A-CMWayU4n.mjs.map +1 -0
  82. package/dist/cut-OKARJCCV-Bt8b58eI.mjs +119 -0
  83. package/dist/cut-OKARJCCV-Bt8b58eI.mjs.map +1 -0
  84. package/dist/date-UUUPW43J-B7T5OTZZ.mjs +188 -0
  85. package/dist/date-UUUPW43J-B7T5OTZZ.mjs.map +1 -0
  86. package/dist/diff-MWJFIG7X-DhnPc_5r.mjs +755 -0
  87. package/dist/diff-MWJFIG7X-DhnPc_5r.mjs.map +1 -0
  88. package/dist/dirname-MPHRFUTI-Dkb3S4OX.mjs +43 -0
  89. package/dist/dirname-MPHRFUTI-Dkb3S4OX.mjs.map +1 -0
  90. package/dist/{dist-DjfxlOWX.mjs → dist-C47GdlWY.mjs} +18 -93
  91. package/dist/{dist-DjfxlOWX.mjs.map → dist-C47GdlWY.mjs.map} +1 -1
  92. package/dist/{dist-DWcRd4Se.mjs → dist-CJL2zYbP.mjs} +4 -71
  93. package/dist/dist-CJL2zYbP.mjs.map +1 -0
  94. package/dist/dist-Ch53z2P3.mjs +3 -0
  95. package/dist/dist-CwR72_PS.mjs +1887 -0
  96. package/dist/dist-CwR72_PS.mjs.map +1 -0
  97. package/dist/du-572XNP42-ClP4jXB1.mjs +176 -0
  98. package/dist/du-572XNP42-ClP4jXB1.mjs.map +1 -0
  99. package/dist/echo-NDWZZHPO-CCp_-MxA.mjs +137 -0
  100. package/dist/echo-NDWZZHPO-CCp_-MxA.mjs.map +1 -0
  101. package/dist/env-36M5BO7M-CsP_aiWr.mjs +119 -0
  102. package/dist/env-36M5BO7M-CsP_aiWr.mjs.map +1 -0
  103. package/dist/expand-JSPG6VOP-B-YUvYpu.mjs +145 -0
  104. package/dist/expand-JSPG6VOP-B-YUvYpu.mjs.map +1 -0
  105. package/dist/expr-5JAACS4X-1TBq84gG.mjs +153 -0
  106. package/dist/expr-5JAACS4X-1TBq84gG.mjs.map +1 -0
  107. package/dist/file-IPZJC3FQ-DcZNOWyY.mjs +4201 -0
  108. package/dist/file-IPZJC3FQ-DcZNOWyY.mjs.map +1 -0
  109. package/dist/find-INTH3OLC-6p47KeeT.mjs +1332 -0
  110. package/dist/find-INTH3OLC-6p47KeeT.mjs.map +1 -0
  111. package/dist/fold-4TQNYMSW-C54bHzLd.mjs +138 -0
  112. package/dist/fold-4TQNYMSW-C54bHzLd.mjs.map +1 -0
  113. package/dist/grep-V3LQVMRQ-D99Bq7Kj.mjs +335 -0
  114. package/dist/grep-V3LQVMRQ-D99Bq7Kj.mjs.map +1 -0
  115. package/dist/gzip-O5ASJAFY-CZDRROqP.mjs +592 -0
  116. package/dist/gzip-O5ASJAFY-CZDRROqP.mjs.map +1 -0
  117. package/dist/head-442HYESI-D96RMdki.mjs +36 -0
  118. package/dist/head-442HYESI-D96RMdki.mjs.map +1 -0
  119. package/dist/help-HZ6M2CKN--DK8mY2L.mjs +123 -0
  120. package/dist/help-HZ6M2CKN--DK8mY2L.mjs.map +1 -0
  121. package/dist/history-WYYKSLSZ-ACNQVupn.mjs +48 -0
  122. package/dist/history-WYYKSLSZ-ACNQVupn.mjs.map +1 -0
  123. package/dist/hostname-C4HQXXUP-CXVVFkUK.mjs +24 -0
  124. package/dist/hostname-C4HQXXUP-CXVVFkUK.mjs.map +1 -0
  125. package/dist/html-to-markdown-JW4MSQZO-DQOxFIvF.mjs +15890 -0
  126. package/dist/html-to-markdown-JW4MSQZO-DQOxFIvF.mjs.map +1 -0
  127. package/dist/index.mjs +20 -18
  128. package/dist/index.mjs.map +1 -1
  129. package/dist/join-TBRGI3LQ-B8I9tkJ5.mjs +198 -0
  130. package/dist/join-TBRGI3LQ-B8I9tkJ5.mjs.map +1 -0
  131. package/dist/jq-4XLYLOS5-wFZYfsfJ.mjs +257 -0
  132. package/dist/jq-4XLYLOS5-wFZYfsfJ.mjs.map +1 -0
  133. package/dist/js-exec-N5KEZBH7-CgtG-I6s.mjs +333 -0
  134. package/dist/js-exec-N5KEZBH7-CgtG-I6s.mjs.map +1 -0
  135. package/dist/lib-D4GpdNNK.mjs +45 -0
  136. package/dist/lib-D4GpdNNK.mjs.map +1 -0
  137. package/dist/ln-4LGSXXGD-Dg0R9i5G.mjs +101 -0
  138. package/dist/ln-4LGSXXGD-Dg0R9i5G.mjs.map +1 -0
  139. package/dist/ls-ZJGQER7M-DLDSfI4x.mjs +1891 -0
  140. package/dist/ls-ZJGQER7M-DLDSfI4x.mjs.map +1 -0
  141. package/dist/lzma-CTMDi254.mjs +1135 -0
  142. package/dist/lzma-CTMDi254.mjs.map +1 -0
  143. package/dist/{maybe-auto-update-Ou7H6dXT.mjs → maybe-auto-update-B0kal2FM.mjs} +2 -2
  144. package/dist/{maybe-auto-update-Ou7H6dXT.mjs.map → maybe-auto-update-B0kal2FM.mjs.map} +1 -1
  145. package/dist/md5sum-SPU24VSG-DQc8sqXO.mjs +16 -0
  146. package/dist/md5sum-SPU24VSG-DQc8sqXO.mjs.map +1 -0
  147. package/dist/mkdir-MEPGZOB6-BjUKzhdL.mjs +58 -0
  148. package/dist/mkdir-MEPGZOB6-BjUKzhdL.mjs.map +1 -0
  149. package/dist/mv-W5BIQ646-CdSIyY-U.mjs +93 -0
  150. package/dist/mv-W5BIQ646-CdSIyY-U.mjs.map +1 -0
  151. package/dist/nl-WSDW7I4O-DmtCnyKU.mjs +208 -0
  152. package/dist/nl-WSDW7I4O-DmtCnyKU.mjs.map +1 -0
  153. package/dist/od-WOKFDJTP-DZ2nxQNJ.mjs +73 -0
  154. package/dist/od-WOKFDJTP-DZ2nxQNJ.mjs.map +1 -0
  155. package/dist/paste-7JC6S4DX-CtmM5Qy8.mjs +113 -0
  156. package/dist/paste-7JC6S4DX-CtmM5Qy8.mjs.map +1 -0
  157. package/dist/printf-TWGXF445-B7cTysaa.mjs +880 -0
  158. package/dist/printf-TWGXF445-B7cTysaa.mjs.map +1 -0
  159. package/dist/pwd-WE6EN5AV-CO8o2WQS.mjs +34 -0
  160. package/dist/pwd-WE6EN5AV-CO8o2WQS.mjs.map +1 -0
  161. package/dist/python3-POMOR4OA-CKy80mpF.mjs +299 -0
  162. package/dist/python3-POMOR4OA-CKy80mpF.mjs.map +1 -0
  163. package/dist/readlink-OPJF4DL5-Rc1Mz_Xx.mjs +76 -0
  164. package/dist/readlink-OPJF4DL5-Rc1Mz_Xx.mjs.map +1 -0
  165. package/dist/rev-5EHFX4EJ-3dd9vwHW.mjs +66 -0
  166. package/dist/rev-5EHFX4EJ-3dd9vwHW.mjs.map +1 -0
  167. package/dist/rg-S4FXYXWB-BbXVo6JX.mjs +1539 -0
  168. package/dist/rg-S4FXYXWB-BbXVo6JX.mjs.map +1 -0
  169. package/dist/rm-SSGETQVQ-Ch53Rmrr.mjs +81 -0
  170. package/dist/rm-SSGETQVQ-Ch53Rmrr.mjs.map +1 -0
  171. package/dist/rmdir-OC4ZLPYA-D3QCHlIB.mjs +132 -0
  172. package/dist/rmdir-OC4ZLPYA-D3QCHlIB.mjs.map +1 -0
  173. package/dist/sed-S5UIK574-DE1KeTk3.mjs +1722 -0
  174. package/dist/sed-S5UIK574-DE1KeTk3.mjs.map +1 -0
  175. package/dist/seq-M5EC7Q57-BHfGjQvK.mjs +85 -0
  176. package/dist/seq-M5EC7Q57-BHfGjQvK.mjs.map +1 -0
  177. package/dist/sha1sum-2PTOAFR6-DNjSNcYK.mjs +16 -0
  178. package/dist/sha1sum-2PTOAFR6-DNjSNcYK.mjs.map +1 -0
  179. package/dist/sha256sum-NS7D3IXX-BMaCKkT5.mjs +16 -0
  180. package/dist/sha256sum-NS7D3IXX-BMaCKkT5.mjs.map +1 -0
  181. package/dist/sleep-X22JJINO-Do5hEQQW.mjs +67 -0
  182. package/dist/sleep-X22JJINO-Do5hEQQW.mjs.map +1 -0
  183. package/dist/sort-SW2YEO5B-B7j1zw8k.mjs +320 -0
  184. package/dist/sort-SW2YEO5B-B7j1zw8k.mjs.map +1 -0
  185. package/dist/split-4KKZZXXE-h8GD4HP4.mjs +248 -0
  186. package/dist/split-4KKZZXXE-h8GD4HP4.mjs.map +1 -0
  187. package/dist/sqlite3-CGOEFJAO-DvzzghDg.mjs +2879 -0
  188. package/dist/sqlite3-CGOEFJAO-DvzzghDg.mjs.map +1 -0
  189. package/dist/stat-CD34IZ4P-B5ZOJh4J.mjs +65 -0
  190. package/dist/stat-CD34IZ4P-B5ZOJh4J.mjs.map +1 -0
  191. package/dist/strings-6WDHLGMX-DdiEdoL-.mjs +179 -0
  192. package/dist/strings-6WDHLGMX-DdiEdoL-.mjs.map +1 -0
  193. package/dist/tac-2STMMJYW-DPyeWM9R.mjs +53 -0
  194. package/dist/tac-2STMMJYW-DPyeWM9R.mjs.map +1 -0
  195. package/dist/tail-R4PCA2C4-CUfroNeu.mjs +37 -0
  196. package/dist/tail-R4PCA2C4-CUfroNeu.mjs.map +1 -0
  197. package/dist/tar-STHHZTZ6-DRf60e-G.mjs +2838 -0
  198. package/dist/tar-STHHZTZ6-DRf60e-G.mjs.map +1 -0
  199. package/dist/tee-YUZ2FKCJ-po_dfyc_.mjs +46 -0
  200. package/dist/tee-YUZ2FKCJ-po_dfyc_.mjs.map +1 -0
  201. package/dist/time-D4LNBSWX-DVWhAldK.mjs +112 -0
  202. package/dist/time-D4LNBSWX-DVWhAldK.mjs.map +1 -0
  203. package/dist/timeout-YDCRSLPQ-B_yntmXU.mjs +113 -0
  204. package/dist/timeout-YDCRSLPQ-B_yntmXU.mjs.map +1 -0
  205. package/dist/touch-UA33VN3N-oW1SBT1r.mjs +104 -0
  206. package/dist/touch-UA33VN3N-oW1SBT1r.mjs.map +1 -0
  207. package/dist/tr-36LHWFRQ-CTq3z6wq.mjs +167 -0
  208. package/dist/tr-36LHWFRQ-CTq3z6wq.mjs.map +1 -0
  209. package/dist/tree-YLD52CNT-CIozNsLQ.mjs +186 -0
  210. package/dist/tree-YLD52CNT-CIozNsLQ.mjs.map +1 -0
  211. package/dist/true-FHQXJXBE-DsJOznSp.mjs +31 -0
  212. package/dist/true-FHQXJXBE-DsJOznSp.mjs.map +1 -0
  213. package/dist/unexpand-CADSA4VO-Cq9DTcUg.mjs +155 -0
  214. package/dist/unexpand-CADSA4VO-Cq9DTcUg.mjs.map +1 -0
  215. package/dist/uniq-XSIZR6PB-D5lt-IXF.mjs +92 -0
  216. package/dist/uniq-XSIZR6PB-D5lt-IXF.mjs.map +1 -0
  217. package/dist/{version-n-JpPeUF.mjs → version-Dxl3y5p6.mjs} +2 -2
  218. package/dist/{version-n-JpPeUF.mjs.map → version-Dxl3y5p6.mjs.map} +1 -1
  219. package/dist/wc-LF7NU4LA-BFPabrwD.mjs +111 -0
  220. package/dist/wc-LF7NU4LA-BFPabrwD.mjs.map +1 -0
  221. package/dist/which-XEM24D5D-2LvlkpUo.mjs +62 -0
  222. package/dist/which-XEM24D5D-2LvlkpUo.mjs.map +1 -0
  223. package/dist/whoami-XMTX52VE-24Kwqrk6.mjs +24 -0
  224. package/dist/whoami-XMTX52VE-24Kwqrk6.mjs.map +1 -0
  225. package/dist/xan-Y6WF3IRG-DjKO96Pj.mjs +2832 -0
  226. package/dist/xan-Y6WF3IRG-DjKO96Pj.mjs.map +1 -0
  227. package/dist/xan-view-HDVKHFC2-DhDNVE_V.mjs +12 -0
  228. package/dist/xan-view-HDVKHFC2-DhDNVE_V.mjs.map +1 -0
  229. package/dist/xargs-MGZPH7AX-D2bIgrdg.mjs +112 -0
  230. package/dist/xargs-MGZPH7AX-D2bIgrdg.mjs.map +1 -0
  231. package/dist/yq-4QJW3EQG-XhB3aACo.mjs +8610 -0
  232. package/dist/yq-4QJW3EQG-XhB3aACo.mjs.map +1 -0
  233. package/package.json +1 -1
  234. package/dist/dist-DWcRd4Se.mjs.map +0 -1
  235. package/dist/dist-DitNZUHA.mjs +0 -3
  236. package/dist/dist-vwoMCz6d.mjs +0 -775
  237. package/dist/dist-vwoMCz6d.mjs.map +0 -1
@@ -0,0 +1,2838 @@
1
+ #!/usr/bin/env node
2
+ import { r as __toESM, t as __commonJSMin } from "./chunk-DiodbrVj.mjs";
3
+ import { n as r, r as s, t as o } from "./chunk-QAYAQNCG-Bl0Kbd53.mjs";
4
+ import "./chunk-BZUGFHVS-CPWRFwK8.mjs";
5
+ import { t as _$1 } from "./chunk-TN7HHBQW-CSB_R-XD.mjs";
6
+ import { t as I1 } from "./chunk-4RUAZWKT-D60fyWAB.mjs";
7
+ import "./chunk-NRSASXYY-CuWyREpD.mjs";
8
+ import { t as x } from "./chunk-TDD4NFYE-wsWW75MX.mjs";
9
+ import { createRequire } from "node:module";
10
+ //#region ../../node_modules/.pnpm/seek-bzip@2.0.0/node_modules/seek-bzip/lib/bitreader.js
11
+ var require_bitreader = /* @__PURE__ */ __commonJSMin(((exports, module) => {
12
+ var BITMASK = [
13
+ 0,
14
+ 1,
15
+ 3,
16
+ 7,
17
+ 15,
18
+ 31,
19
+ 63,
20
+ 127,
21
+ 255
22
+ ];
23
+ var BitReader = function(stream) {
24
+ this.stream = stream;
25
+ this.bitOffset = 0;
26
+ this.curByte = 0;
27
+ this.hasByte = false;
28
+ };
29
+ BitReader.prototype._ensureByte = function() {
30
+ if (!this.hasByte) {
31
+ this.curByte = this.stream.readByte();
32
+ this.hasByte = true;
33
+ }
34
+ };
35
+ BitReader.prototype.read = function(bits) {
36
+ var result = 0;
37
+ while (bits > 0) {
38
+ this._ensureByte();
39
+ var remaining = 8 - this.bitOffset;
40
+ if (bits >= remaining) {
41
+ result <<= remaining;
42
+ result |= BITMASK[remaining] & this.curByte;
43
+ this.hasByte = false;
44
+ this.bitOffset = 0;
45
+ bits -= remaining;
46
+ } else {
47
+ result <<= bits;
48
+ var shift = remaining - bits;
49
+ result |= (this.curByte & BITMASK[bits] << shift) >> shift;
50
+ this.bitOffset += bits;
51
+ bits = 0;
52
+ }
53
+ }
54
+ return result;
55
+ };
56
+ BitReader.prototype.seek = function(pos) {
57
+ var n_bit = pos % 8;
58
+ var n_byte = (pos - n_bit) / 8;
59
+ this.bitOffset = n_bit;
60
+ this.stream.seek(n_byte);
61
+ this.hasByte = false;
62
+ };
63
+ BitReader.prototype.pi = function() {
64
+ var buf = new Buffer(6), i;
65
+ for (i = 0; i < buf.length; i++) buf[i] = this.read(8);
66
+ return buf.toString("hex");
67
+ };
68
+ module.exports = BitReader;
69
+ }));
70
+ //#endregion
71
+ //#region ../../node_modules/.pnpm/seek-bzip@2.0.0/node_modules/seek-bzip/lib/stream.js
72
+ var require_stream = /* @__PURE__ */ __commonJSMin(((exports, module) => {
73
+ var Stream = function() {};
74
+ /** Returns the next byte, or -1 for EOF. */
75
+ Stream.prototype.readByte = function() {
76
+ throw new Error("abstract method readByte() not implemented");
77
+ };
78
+ /** Attempts to fill the buffer; returns number of bytes read, or
79
+ * -1 for EOF. */
80
+ Stream.prototype.read = function(buffer, bufOffset, length) {
81
+ var bytesRead = 0;
82
+ while (bytesRead < length) {
83
+ var c = this.readByte();
84
+ if (c < 0) return bytesRead === 0 ? -1 : bytesRead;
85
+ buffer[bufOffset++] = c;
86
+ bytesRead++;
87
+ }
88
+ return bytesRead;
89
+ };
90
+ Stream.prototype.seek = function(new_pos) {
91
+ throw new Error("abstract method seek() not implemented");
92
+ };
93
+ Stream.prototype.writeByte = function(_byte) {
94
+ throw new Error("abstract method readByte() not implemented");
95
+ };
96
+ Stream.prototype.write = function(buffer, bufOffset, length) {
97
+ var i;
98
+ for (i = 0; i < length; i++) this.writeByte(buffer[bufOffset++]);
99
+ return length;
100
+ };
101
+ Stream.prototype.flush = function() {};
102
+ module.exports = Stream;
103
+ }));
104
+ //#endregion
105
+ //#region ../../node_modules/.pnpm/seek-bzip@2.0.0/node_modules/seek-bzip/lib/crc32.js
106
+ var require_crc32 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
107
+ module.exports = (function() {
108
+ /**
109
+ * A static CRC lookup table
110
+ */
111
+ var crc32Lookup = new Uint32Array([
112
+ 0,
113
+ 79764919,
114
+ 159529838,
115
+ 222504665,
116
+ 319059676,
117
+ 398814059,
118
+ 445009330,
119
+ 507990021,
120
+ 638119352,
121
+ 583659535,
122
+ 797628118,
123
+ 726387553,
124
+ 890018660,
125
+ 835552979,
126
+ 1015980042,
127
+ 944750013,
128
+ 1276238704,
129
+ 1221641927,
130
+ 1167319070,
131
+ 1095957929,
132
+ 1595256236,
133
+ 1540665371,
134
+ 1452775106,
135
+ 1381403509,
136
+ 1780037320,
137
+ 1859660671,
138
+ 1671105958,
139
+ 1733955601,
140
+ 2031960084,
141
+ 2111593891,
142
+ 1889500026,
143
+ 1952343757,
144
+ 2552477408,
145
+ 2632100695,
146
+ 2443283854,
147
+ 2506133561,
148
+ 2334638140,
149
+ 2414271883,
150
+ 2191915858,
151
+ 2254759653,
152
+ 3190512472,
153
+ 3135915759,
154
+ 3081330742,
155
+ 3009969537,
156
+ 2905550212,
157
+ 2850959411,
158
+ 2762807018,
159
+ 2691435357,
160
+ 3560074640,
161
+ 3505614887,
162
+ 3719321342,
163
+ 3648080713,
164
+ 3342211916,
165
+ 3287746299,
166
+ 3467911202,
167
+ 3396681109,
168
+ 4063920168,
169
+ 4143685023,
170
+ 4223187782,
171
+ 4286162673,
172
+ 3779000052,
173
+ 3858754371,
174
+ 3904687514,
175
+ 3967668269,
176
+ 881225847,
177
+ 809987520,
178
+ 1023691545,
179
+ 969234094,
180
+ 662832811,
181
+ 591600412,
182
+ 771767749,
183
+ 717299826,
184
+ 311336399,
185
+ 374308984,
186
+ 453813921,
187
+ 533576470,
188
+ 25881363,
189
+ 88864420,
190
+ 134795389,
191
+ 214552010,
192
+ 2023205639,
193
+ 2086057648,
194
+ 1897238633,
195
+ 1976864222,
196
+ 1804852699,
197
+ 1867694188,
198
+ 1645340341,
199
+ 1724971778,
200
+ 1587496639,
201
+ 1516133128,
202
+ 1461550545,
203
+ 1406951526,
204
+ 1302016099,
205
+ 1230646740,
206
+ 1142491917,
207
+ 1087903418,
208
+ 2896545431,
209
+ 2825181984,
210
+ 2770861561,
211
+ 2716262478,
212
+ 3215044683,
213
+ 3143675388,
214
+ 3055782693,
215
+ 3001194130,
216
+ 2326604591,
217
+ 2389456536,
218
+ 2200899649,
219
+ 2280525302,
220
+ 2578013683,
221
+ 2640855108,
222
+ 2418763421,
223
+ 2498394922,
224
+ 3769900519,
225
+ 3832873040,
226
+ 3912640137,
227
+ 3992402750,
228
+ 4088425275,
229
+ 4151408268,
230
+ 4197601365,
231
+ 4277358050,
232
+ 3334271071,
233
+ 3263032808,
234
+ 3476998961,
235
+ 3422541446,
236
+ 3585640067,
237
+ 3514407732,
238
+ 3694837229,
239
+ 3640369242,
240
+ 1762451694,
241
+ 1842216281,
242
+ 1619975040,
243
+ 1682949687,
244
+ 2047383090,
245
+ 2127137669,
246
+ 1938468188,
247
+ 2001449195,
248
+ 1325665622,
249
+ 1271206113,
250
+ 1183200824,
251
+ 1111960463,
252
+ 1543535498,
253
+ 1489069629,
254
+ 1434599652,
255
+ 1363369299,
256
+ 622672798,
257
+ 568075817,
258
+ 748617968,
259
+ 677256519,
260
+ 907627842,
261
+ 853037301,
262
+ 1067152940,
263
+ 995781531,
264
+ 51762726,
265
+ 131386257,
266
+ 177728840,
267
+ 240578815,
268
+ 269590778,
269
+ 349224269,
270
+ 429104020,
271
+ 491947555,
272
+ 4046411278,
273
+ 4126034873,
274
+ 4172115296,
275
+ 4234965207,
276
+ 3794477266,
277
+ 3874110821,
278
+ 3953728444,
279
+ 4016571915,
280
+ 3609705398,
281
+ 3555108353,
282
+ 3735388376,
283
+ 3664026991,
284
+ 3290680682,
285
+ 3236090077,
286
+ 3449943556,
287
+ 3378572211,
288
+ 3174993278,
289
+ 3120533705,
290
+ 3032266256,
291
+ 2961025959,
292
+ 2923101090,
293
+ 2868635157,
294
+ 2813903052,
295
+ 2742672763,
296
+ 2604032198,
297
+ 2683796849,
298
+ 2461293480,
299
+ 2524268063,
300
+ 2284983834,
301
+ 2364738477,
302
+ 2175806836,
303
+ 2238787779,
304
+ 1569362073,
305
+ 1498123566,
306
+ 1409854455,
307
+ 1355396672,
308
+ 1317987909,
309
+ 1246755826,
310
+ 1192025387,
311
+ 1137557660,
312
+ 2072149281,
313
+ 2135122070,
314
+ 1912620623,
315
+ 1992383480,
316
+ 1753615357,
317
+ 1816598090,
318
+ 1627664531,
319
+ 1707420964,
320
+ 295390185,
321
+ 358241886,
322
+ 404320391,
323
+ 483945776,
324
+ 43990325,
325
+ 106832002,
326
+ 186451547,
327
+ 266083308,
328
+ 932423249,
329
+ 861060070,
330
+ 1041341759,
331
+ 986742920,
332
+ 613929101,
333
+ 542559546,
334
+ 756411363,
335
+ 701822548,
336
+ 3316196985,
337
+ 3244833742,
338
+ 3425377559,
339
+ 3370778784,
340
+ 3601682597,
341
+ 3530312978,
342
+ 3744426955,
343
+ 3689838204,
344
+ 3819031489,
345
+ 3881883254,
346
+ 3928223919,
347
+ 4007849240,
348
+ 4037393693,
349
+ 4100235434,
350
+ 4180117107,
351
+ 4259748804,
352
+ 2310601993,
353
+ 2373574846,
354
+ 2151335527,
355
+ 2231098320,
356
+ 2596047829,
357
+ 2659030626,
358
+ 2470359227,
359
+ 2550115596,
360
+ 2947551409,
361
+ 2876312838,
362
+ 2788305887,
363
+ 2733848168,
364
+ 3165939309,
365
+ 3094707162,
366
+ 3040238851,
367
+ 2985771188
368
+ ]);
369
+ var CRC32 = function() {
370
+ /**
371
+ * The current CRC
372
+ */
373
+ var crc = 4294967295;
374
+ /**
375
+ * @return The current CRC
376
+ */
377
+ this.getCRC = function() {
378
+ return ~crc >>> 0;
379
+ };
380
+ /**
381
+ * Update the CRC with a single byte
382
+ * @param value The value to update the CRC with
383
+ */
384
+ this.updateCRC = function(value) {
385
+ crc = crc << 8 ^ crc32Lookup[(crc >>> 24 ^ value) & 255];
386
+ };
387
+ /**
388
+ * Update the CRC with a sequence of identical bytes
389
+ * @param value The value to update the CRC with
390
+ * @param count The number of bytes
391
+ */
392
+ this.updateCRCRun = function(value, count) {
393
+ while (count-- > 0) crc = crc << 8 ^ crc32Lookup[(crc >>> 24 ^ value) & 255];
394
+ };
395
+ };
396
+ return CRC32;
397
+ })();
398
+ }));
399
+ //#endregion
400
+ //#region ../../node_modules/.pnpm/seek-bzip@2.0.0/node_modules/seek-bzip/package.json
401
+ var require_package = /* @__PURE__ */ __commonJSMin(((exports, module) => {
402
+ module.exports = {
403
+ "name": "seek-bzip",
404
+ "version": "2.0.0",
405
+ "contributors": [
406
+ "C. Scott Ananian (http://cscott.net)",
407
+ "Eli Skeggs",
408
+ "Kevin Kwok",
409
+ "Rob Landley (http://landley.net)"
410
+ ],
411
+ "description": "a pure-JavaScript Node.JS module for random-access decoding bzip2 data",
412
+ "main": "./lib/index.js",
413
+ "repository": {
414
+ "type": "git",
415
+ "url": "https://github.com/cscott/seek-bzip.git"
416
+ },
417
+ "license": "MIT",
418
+ "bin": {
419
+ "seek-bunzip": "./bin/seek-bunzip",
420
+ "seek-table": "./bin/seek-bzip-table"
421
+ },
422
+ "directories": { "test": "test" },
423
+ "dependencies": { "commander": "^6.0.0" },
424
+ "devDependencies": {
425
+ "fibers": "^5.0.0",
426
+ "mocha": "^8.1.0"
427
+ },
428
+ "scripts": { "test": "mocha" }
429
+ };
430
+ }));
431
+ //#endregion
432
+ //#region ../../node_modules/.pnpm/just-bash@3.0.1/node_modules/just-bash/dist/bundle/chunks/chunk-MZFCCXPZ.js
433
+ var import_lib = /* @__PURE__ */ __toESM((/* @__PURE__ */ __commonJSMin(((exports, module) => {
434
+ var BitReader = require_bitreader();
435
+ var Stream = require_stream();
436
+ var CRC32 = require_crc32();
437
+ var pjson = require_package();
438
+ var MAX_HUFCODE_BITS = 20;
439
+ var MAX_SYMBOLS = 258;
440
+ var SYMBOL_RUNA = 0;
441
+ var SYMBOL_RUNB = 1;
442
+ var MIN_GROUPS = 2;
443
+ var MAX_GROUPS = 6;
444
+ var GROUP_SIZE = 50;
445
+ var WHOLEPI = "314159265359";
446
+ var SQRTPI = "177245385090";
447
+ var mtf = function(array, index) {
448
+ var src = array[index], i;
449
+ for (i = index; i > 0; i--) array[i] = array[i - 1];
450
+ array[0] = src;
451
+ return src;
452
+ };
453
+ var Err = {
454
+ OK: 0,
455
+ LAST_BLOCK: -1,
456
+ NOT_BZIP_DATA: -2,
457
+ UNEXPECTED_INPUT_EOF: -3,
458
+ UNEXPECTED_OUTPUT_EOF: -4,
459
+ DATA_ERROR: -5,
460
+ OUT_OF_MEMORY: -6,
461
+ OBSOLETE_INPUT: -7,
462
+ END_OF_BLOCK: -8
463
+ };
464
+ var ErrorMessages = {};
465
+ ErrorMessages[Err.LAST_BLOCK] = "Bad file checksum";
466
+ ErrorMessages[Err.NOT_BZIP_DATA] = "Not bzip data";
467
+ ErrorMessages[Err.UNEXPECTED_INPUT_EOF] = "Unexpected input EOF";
468
+ ErrorMessages[Err.UNEXPECTED_OUTPUT_EOF] = "Unexpected output EOF";
469
+ ErrorMessages[Err.DATA_ERROR] = "Data error";
470
+ ErrorMessages[Err.OUT_OF_MEMORY] = "Out of memory";
471
+ ErrorMessages[Err.OBSOLETE_INPUT] = "Obsolete (pre 0.9.5) bzip format not supported.";
472
+ var _throw = function(status, optDetail) {
473
+ var msg = ErrorMessages[status] || "unknown error";
474
+ if (optDetail) msg += ": " + optDetail;
475
+ var e = new TypeError(msg);
476
+ e.errorCode = status;
477
+ throw e;
478
+ };
479
+ var Bunzip = function(inputStream, outputStream) {
480
+ this.writePos = this.writeCurrent = this.writeCount = 0;
481
+ this._start_bunzip(inputStream, outputStream);
482
+ };
483
+ Bunzip.prototype._init_block = function() {
484
+ if (!this._get_next_block()) {
485
+ this.writeCount = -1;
486
+ return false;
487
+ }
488
+ this.blockCRC = new CRC32();
489
+ return true;
490
+ };
491
+ Bunzip.prototype._start_bunzip = function(inputStream, outputStream) {
492
+ var buf = new Buffer(4);
493
+ if (inputStream.read(buf, 0, 4) !== 4 || String.fromCharCode(buf[0], buf[1], buf[2]) !== "BZh") _throw(Err.NOT_BZIP_DATA, "bad magic");
494
+ var level = buf[3] - 48;
495
+ if (level < 1 || level > 9) _throw(Err.NOT_BZIP_DATA, "level out of range");
496
+ this.reader = new BitReader(inputStream);
497
+ this.dbufSize = 1e5 * level;
498
+ this.nextoutput = 0;
499
+ this.outputStream = outputStream;
500
+ this.streamCRC = 0;
501
+ };
502
+ Bunzip.prototype._get_next_block = function() {
503
+ var i, j, k;
504
+ var reader = this.reader;
505
+ var h = reader.pi();
506
+ if (h === SQRTPI) return false;
507
+ if (h !== WHOLEPI) _throw(Err.NOT_BZIP_DATA);
508
+ this.targetBlockCRC = reader.read(32) >>> 0;
509
+ this.streamCRC = (this.targetBlockCRC ^ (this.streamCRC << 1 | this.streamCRC >>> 31)) >>> 0;
510
+ if (reader.read(1)) _throw(Err.OBSOLETE_INPUT);
511
+ var origPointer = reader.read(24);
512
+ if (origPointer > this.dbufSize) _throw(Err.DATA_ERROR, "initial position out of bounds");
513
+ var t = reader.read(16);
514
+ var symToByte = new Buffer(256), symTotal = 0;
515
+ for (i = 0; i < 16; i++) if (t & 1 << 15 - i) {
516
+ var o = i * 16;
517
+ k = reader.read(16);
518
+ for (j = 0; j < 16; j++) if (k & 1 << 15 - j) symToByte[symTotal++] = o + j;
519
+ }
520
+ var groupCount = reader.read(3);
521
+ if (groupCount < MIN_GROUPS || groupCount > MAX_GROUPS) _throw(Err.DATA_ERROR);
522
+ var nSelectors = reader.read(15);
523
+ if (nSelectors === 0) _throw(Err.DATA_ERROR);
524
+ var mtfSymbol = new Buffer(256);
525
+ for (i = 0; i < groupCount; i++) mtfSymbol[i] = i;
526
+ var selectors = new Buffer(nSelectors);
527
+ for (i = 0; i < nSelectors; i++) {
528
+ for (j = 0; reader.read(1); j++) if (j >= groupCount) _throw(Err.DATA_ERROR);
529
+ selectors[i] = mtf(mtfSymbol, j);
530
+ }
531
+ var symCount = symTotal + 2;
532
+ var groups = [], hufGroup;
533
+ for (j = 0; j < groupCount; j++) {
534
+ var length = new Buffer(symCount), temp = new Uint16Array(MAX_HUFCODE_BITS + 1);
535
+ t = reader.read(5);
536
+ for (i = 0; i < symCount; i++) {
537
+ for (;;) {
538
+ if (t < 1 || t > MAX_HUFCODE_BITS) _throw(Err.DATA_ERROR);
539
+ if (!reader.read(1)) break;
540
+ if (!reader.read(1)) t++;
541
+ else t--;
542
+ }
543
+ length[i] = t;
544
+ }
545
+ var minLen = maxLen = length[0], maxLen;
546
+ for (i = 1; i < symCount; i++) if (length[i] > maxLen) maxLen = length[i];
547
+ else if (length[i] < minLen) minLen = length[i];
548
+ hufGroup = {};
549
+ groups.push(hufGroup);
550
+ hufGroup.permute = new Uint16Array(MAX_SYMBOLS);
551
+ hufGroup.limit = new Uint32Array(MAX_HUFCODE_BITS + 2);
552
+ hufGroup.base = new Uint32Array(MAX_HUFCODE_BITS + 1);
553
+ hufGroup.minLen = minLen;
554
+ hufGroup.maxLen = maxLen;
555
+ var pp = 0;
556
+ for (i = minLen; i <= maxLen; i++) {
557
+ temp[i] = hufGroup.limit[i] = 0;
558
+ for (t = 0; t < symCount; t++) if (length[t] === i) hufGroup.permute[pp++] = t;
559
+ }
560
+ for (i = 0; i < symCount; i++) temp[length[i]]++;
561
+ pp = t = 0;
562
+ for (i = minLen; i < maxLen; i++) {
563
+ pp += temp[i];
564
+ hufGroup.limit[i] = pp - 1;
565
+ pp <<= 1;
566
+ t += temp[i];
567
+ hufGroup.base[i + 1] = pp - t;
568
+ }
569
+ hufGroup.limit[maxLen + 1] = Number.MAX_VALUE;
570
+ hufGroup.limit[maxLen] = pp + temp[maxLen] - 1;
571
+ hufGroup.base[minLen] = 0;
572
+ }
573
+ var byteCount = new Uint32Array(256);
574
+ for (i = 0; i < 256; i++) mtfSymbol[i] = i;
575
+ var runPos = 0, dbufCount = 0, selector = 0, uc;
576
+ var dbuf = this.dbuf = new Uint32Array(this.dbufSize);
577
+ symCount = 0;
578
+ for (;;) {
579
+ if (!symCount--) {
580
+ symCount = GROUP_SIZE - 1;
581
+ if (selector >= nSelectors) _throw(Err.DATA_ERROR);
582
+ hufGroup = groups[selectors[selector++]];
583
+ }
584
+ i = hufGroup.minLen;
585
+ j = reader.read(i);
586
+ for (;; i++) {
587
+ if (i > hufGroup.maxLen) _throw(Err.DATA_ERROR);
588
+ if (j <= hufGroup.limit[i]) break;
589
+ j = j << 1 | reader.read(1);
590
+ }
591
+ j -= hufGroup.base[i];
592
+ if (j < 0 || j >= MAX_SYMBOLS) _throw(Err.DATA_ERROR);
593
+ var nextSym = hufGroup.permute[j];
594
+ if (nextSym === SYMBOL_RUNA || nextSym === SYMBOL_RUNB) {
595
+ if (!runPos) {
596
+ runPos = 1;
597
+ t = 0;
598
+ }
599
+ if (nextSym === SYMBOL_RUNA) t += runPos;
600
+ else t += 2 * runPos;
601
+ runPos <<= 1;
602
+ continue;
603
+ }
604
+ if (runPos) {
605
+ runPos = 0;
606
+ if (dbufCount + t > this.dbufSize) _throw(Err.DATA_ERROR);
607
+ uc = symToByte[mtfSymbol[0]];
608
+ byteCount[uc] += t;
609
+ while (t--) dbuf[dbufCount++] = uc;
610
+ }
611
+ if (nextSym > symTotal) break;
612
+ if (dbufCount >= this.dbufSize) _throw(Err.DATA_ERROR);
613
+ i = nextSym - 1;
614
+ uc = mtf(mtfSymbol, i);
615
+ uc = symToByte[uc];
616
+ byteCount[uc]++;
617
+ dbuf[dbufCount++] = uc;
618
+ }
619
+ if (origPointer < 0 || origPointer >= dbufCount) _throw(Err.DATA_ERROR);
620
+ j = 0;
621
+ for (i = 0; i < 256; i++) {
622
+ k = j + byteCount[i];
623
+ byteCount[i] = j;
624
+ j = k;
625
+ }
626
+ for (i = 0; i < dbufCount; i++) {
627
+ uc = dbuf[i] & 255;
628
+ dbuf[byteCount[uc]] |= i << 8;
629
+ byteCount[uc]++;
630
+ }
631
+ var pos = 0, current = 0, run = 0;
632
+ if (dbufCount) {
633
+ pos = dbuf[origPointer];
634
+ current = pos & 255;
635
+ pos >>= 8;
636
+ run = -1;
637
+ }
638
+ this.writePos = pos;
639
+ this.writeCurrent = current;
640
+ this.writeCount = dbufCount;
641
+ this.writeRun = run;
642
+ return true;
643
+ };
644
+ Bunzip.prototype._read_bunzip = function(outputBuffer, len) {
645
+ var copies, previous, outbyte;
646
+ if (this.writeCount < 0) return 0;
647
+ var dbuf = this.dbuf, pos = this.writePos, current = this.writeCurrent, dbufCount = this.writeCount;
648
+ this.outputsize;
649
+ var run = this.writeRun;
650
+ while (dbufCount) {
651
+ dbufCount--;
652
+ previous = current;
653
+ pos = dbuf[pos];
654
+ current = pos & 255;
655
+ pos >>= 8;
656
+ if (run++ === 3) {
657
+ copies = current;
658
+ outbyte = previous;
659
+ current = -1;
660
+ } else {
661
+ copies = 1;
662
+ outbyte = current;
663
+ }
664
+ this.blockCRC.updateCRCRun(outbyte, copies);
665
+ while (copies--) {
666
+ this.outputStream.writeByte(outbyte);
667
+ this.nextoutput++;
668
+ }
669
+ if (current != previous) run = 0;
670
+ }
671
+ this.writeCount = dbufCount;
672
+ if (this.blockCRC.getCRC() !== this.targetBlockCRC) _throw(Err.DATA_ERROR, "Bad block CRC (got " + this.blockCRC.getCRC().toString(16) + " expected " + this.targetBlockCRC.toString(16) + ")");
673
+ return this.nextoutput;
674
+ };
675
+ var coerceInputStream = function(input) {
676
+ if ("readByte" in input) return input;
677
+ var inputStream = new Stream();
678
+ inputStream.pos = 0;
679
+ inputStream.readByte = function() {
680
+ return input[this.pos++];
681
+ };
682
+ inputStream.seek = function(pos) {
683
+ this.pos = pos;
684
+ };
685
+ inputStream.eof = function() {
686
+ return this.pos >= input.length;
687
+ };
688
+ return inputStream;
689
+ };
690
+ var coerceOutputStream = function(output) {
691
+ var outputStream = new Stream();
692
+ var resizeOk = true;
693
+ if (output) if (typeof output === "number") {
694
+ outputStream.buffer = new Buffer(output);
695
+ resizeOk = false;
696
+ } else if ("writeByte" in output) return output;
697
+ else {
698
+ outputStream.buffer = output;
699
+ resizeOk = false;
700
+ }
701
+ else outputStream.buffer = new Buffer(16384);
702
+ outputStream.pos = 0;
703
+ outputStream.writeByte = function(_byte) {
704
+ if (resizeOk && this.pos >= this.buffer.length) {
705
+ var newBuffer = new Buffer(this.buffer.length * 2);
706
+ this.buffer.copy(newBuffer);
707
+ this.buffer = newBuffer;
708
+ }
709
+ this.buffer[this.pos++] = _byte;
710
+ };
711
+ outputStream.getBuffer = function() {
712
+ if (this.pos !== this.buffer.length) {
713
+ if (!resizeOk) throw new TypeError("outputsize does not match decoded input");
714
+ var newBuffer = new Buffer(this.pos);
715
+ this.buffer.copy(newBuffer, 0, 0, this.pos);
716
+ this.buffer = newBuffer;
717
+ }
718
+ return this.buffer;
719
+ };
720
+ outputStream._coerced = true;
721
+ return outputStream;
722
+ };
723
+ Bunzip.Err = Err;
724
+ Bunzip.decode = function(input, output, multistream) {
725
+ var inputStream = coerceInputStream(input);
726
+ var outputStream = coerceOutputStream(output);
727
+ var bz = new Bunzip(inputStream, outputStream);
728
+ while (true) {
729
+ if ("eof" in inputStream && inputStream.eof()) break;
730
+ if (bz._init_block()) bz._read_bunzip();
731
+ else {
732
+ var targetStreamCRC = bz.reader.read(32) >>> 0;
733
+ if (targetStreamCRC !== bz.streamCRC) _throw(Err.DATA_ERROR, "Bad stream CRC (got " + bz.streamCRC.toString(16) + " expected " + targetStreamCRC.toString(16) + ")");
734
+ if (multistream && "eof" in inputStream && !inputStream.eof()) bz._start_bunzip(inputStream, outputStream);
735
+ else break;
736
+ }
737
+ }
738
+ if ("getBuffer" in outputStream) return outputStream.getBuffer();
739
+ };
740
+ Bunzip.decodeBlock = function(input, pos, output) {
741
+ var inputStream = coerceInputStream(input);
742
+ var outputStream = coerceOutputStream(output);
743
+ var bz = new Bunzip(inputStream, outputStream);
744
+ bz.reader.seek(pos);
745
+ if (bz._get_next_block()) {
746
+ bz.blockCRC = new CRC32();
747
+ bz.writeCopies = 0;
748
+ bz._read_bunzip();
749
+ }
750
+ if ("getBuffer" in outputStream) return outputStream.getBuffer();
751
+ };
752
+ Bunzip.table = function(input, callback, multistream) {
753
+ var inputStream = new Stream();
754
+ inputStream.delegate = coerceInputStream(input);
755
+ inputStream.pos = 0;
756
+ inputStream.readByte = function() {
757
+ this.pos++;
758
+ return this.delegate.readByte();
759
+ };
760
+ if (inputStream.delegate.eof) inputStream.eof = inputStream.delegate.eof.bind(inputStream.delegate);
761
+ var outputStream = new Stream();
762
+ outputStream.pos = 0;
763
+ outputStream.writeByte = function() {
764
+ this.pos++;
765
+ };
766
+ var bz = new Bunzip(inputStream, outputStream);
767
+ var blockSize = bz.dbufSize;
768
+ while (true) {
769
+ if ("eof" in inputStream && inputStream.eof()) break;
770
+ var position = inputStream.pos * 8 + bz.reader.bitOffset;
771
+ if (bz.reader.hasByte) position -= 8;
772
+ if (bz._init_block()) {
773
+ var start = outputStream.pos;
774
+ bz._read_bunzip();
775
+ callback(position, outputStream.pos - start);
776
+ } else {
777
+ bz.reader.read(32);
778
+ if (multistream && "eof" in inputStream && !inputStream.eof()) {
779
+ bz._start_bunzip(inputStream, outputStream);
780
+ console.assert(bz.dbufSize === blockSize, "shouldn't change block size within multistream file");
781
+ } else break;
782
+ }
783
+ }
784
+ };
785
+ Bunzip.Stream = Stream;
786
+ Bunzip.version = pjson.version;
787
+ Bunzip.license = pjson.license;
788
+ module.exports = Bunzip;
789
+ })))(), 1);
790
+ createRequire(import.meta.url);
791
+ var Ke = "file", Je = "link", Ve = "symlink", ke = "directory", Qe = {
792
+ file: "0",
793
+ link: "1",
794
+ symlink: "2",
795
+ "character-device": "3",
796
+ "block-device": "4",
797
+ directory: "5",
798
+ fifo: "6",
799
+ "pax-header": "x",
800
+ "pax-global-header": "g",
801
+ "gnu-long-name": "L",
802
+ "gnu-long-link-name": "K"
803
+ }, et = {
804
+ 0: Ke,
805
+ 1: Je,
806
+ 2: Ve,
807
+ 3: "character-device",
808
+ 4: "block-device",
809
+ 5: ke,
810
+ 6: "fifo",
811
+ x: "pax-header",
812
+ g: "pax-global-header",
813
+ L: "gnu-long-name",
814
+ K: "gnu-long-link-name"
815
+ }, tt = new Uint8Array(512), _ = new Uint8Array(0), T = new TextEncoder(), ze = new TextDecoder();
816
+ function P(e, t, i, r) {
817
+ r && T.encodeInto(r, e.subarray(t, t + i));
818
+ }
819
+ function L(e, t, i, r) {
820
+ if (r === void 0) return;
821
+ let n = r.toString(8).padStart(i - 1, "0");
822
+ T.encodeInto(n, e.subarray(t, t + i - 1));
823
+ }
824
+ function S(e, t, i) {
825
+ let r = e.indexOf(0, t), n = r === -1 || r > t + i ? t + i : r;
826
+ return ze.decode(e.subarray(t, n));
827
+ }
828
+ function ne(e, t, i) {
829
+ let r = 0, n = t + i;
830
+ for (let s = t; s < n; s++) {
831
+ let a = e[s];
832
+ if (a === 0) break;
833
+ a !== 32 && (r = r * 8 + (a - 48));
834
+ }
835
+ return r;
836
+ }
837
+ function W(e, t, i) {
838
+ if (e[t] & 128) {
839
+ let r = 0;
840
+ r = e[t] & 127;
841
+ for (let n = 1; n < i; n++) r = r * 256 + e[t + n];
842
+ if (!Number.isSafeInteger(r)) throw new Error("TAR number too large");
843
+ return r;
844
+ }
845
+ return ne(e, t, i);
846
+ }
847
+ var N = (e) => e.type === "directory" || e.type === "symlink" || e.type === "link" || e.type === "character-device" || e.type === "block-device" || e.type === "fifo";
848
+ async function Ce(e) {
849
+ if (e == null) return _;
850
+ if (e instanceof Uint8Array) return e;
851
+ if (typeof e == "string") return T.encode(e);
852
+ if (e instanceof ArrayBuffer) return new Uint8Array(e);
853
+ if (e instanceof Blob) return new Uint8Array(await e.arrayBuffer());
854
+ throw new TypeError("Unsupported content type for entry body.");
855
+ }
856
+ var we = (e, t) => {
857
+ let i = e.split("/").filter(Boolean);
858
+ return t >= i.length ? "" : i.slice(t).join("/");
859
+ };
860
+ function Ae(e, t) {
861
+ let { strip: i, filter: r, map: n } = t;
862
+ if (!i && !r && !n) return e;
863
+ let s = { ...e };
864
+ if (i && i > 0) {
865
+ let o = we(s.name, i);
866
+ if (!o) return null;
867
+ if (s.name = s.type === "directory" && !o.endsWith("/") ? `${o}/` : o, s.linkname) {
868
+ let c = s.linkname.startsWith("/");
869
+ if (c || s.type === "link") {
870
+ let l = we(s.linkname, i);
871
+ s.linkname = c ? `/${l}` || "/" : l;
872
+ }
873
+ }
874
+ }
875
+ if (r?.(s) === !1) return null;
876
+ let a = n ? n(s) : s;
877
+ return a && (!a.name || !a.name.trim() || a.name === "." || a.name === "/") ? null : a;
878
+ }
879
+ var re = 32, rt = 48;
880
+ function nt(e) {
881
+ let t = ne(e, 148, 8), i = 0;
882
+ for (let r = 0; r < e.length; r++) r >= 148 && r < 156 ? i += re : i += e[r];
883
+ return t === i;
884
+ }
885
+ function it(e) {
886
+ e.fill(re, 148, 156);
887
+ let t = 0;
888
+ for (let i of e) t += i;
889
+ for (let i = 153; i >= 148; i--) e[i] = (t & 7) + rt, t >>= 3;
890
+ e[154] = 0, e[155] = re;
891
+ }
892
+ var st = 256;
893
+ function ot(e) {
894
+ let t = {};
895
+ T.encode(e.name).length > 100 && Ee(e.name) === null && (t.path = e.name), e.linkname && T.encode(e.linkname).length > 100 && (t.linkpath = e.linkname), e.uname && T.encode(e.uname).length > 32 && (t.uname = e.uname), e.gname && T.encode(e.gname).length > 32 && (t.gname = e.gname), e.uid != null && e.uid > 2097151 && (t.uid = String(e.uid)), e.gid != null && e.gid > 2097151 && (t.gid = String(e.gid)), e.size != null && e.size > 8589934591 && (t.size = String(e.size)), e.pax && Object.assign(t, e.pax);
896
+ let i = Object.entries(t);
897
+ if (i.length === 0) return null;
898
+ let r = T.encode(i.map(([n, s]) => {
899
+ let a = `${n}=${s}
900
+ `, o = T.encode(a).length + 1, c = o + String(o).length;
901
+ return c = o + String(c).length, `${c} ${a}`;
902
+ }).join(""));
903
+ return {
904
+ paxHeader: $e({
905
+ name: ze.decode(T.encode(`PaxHeader/${e.name}`).slice(0, 100)),
906
+ size: r.length,
907
+ type: "pax-header",
908
+ mode: 420,
909
+ mtime: e.mtime,
910
+ uname: e.uname,
911
+ gname: e.gname,
912
+ uid: e.uid,
913
+ gid: e.gid
914
+ }),
915
+ paxBody: r
916
+ };
917
+ }
918
+ function Ee(e) {
919
+ let t = T.encode(e).length;
920
+ if (t <= 100 || t > st) return null;
921
+ for (let i = e.length - 1; i > 0; i--) {
922
+ if (e[i] !== "/") continue;
923
+ let r = e.slice(0, i), n = e.slice(i + 1);
924
+ if (T.encode(r).length <= 155 && T.encode(n).length <= 100) return {
925
+ prefix: r,
926
+ name: n
927
+ };
928
+ }
929
+ return null;
930
+ }
931
+ function $e(e) {
932
+ let t = new Uint8Array(512), i = N(e) ? 0 : e.size ?? 0, r = e.name, n = "";
933
+ if (!e.pax?.path) {
934
+ let s = Ee(r);
935
+ s && (r = s.name, n = s.prefix);
936
+ }
937
+ return P(t, 0, 100, r), L(t, 100, 8, e.mode ?? (e.type === "directory" ? 493 : 420)), L(t, 108, 8, e.uid ?? 0), L(t, 116, 8, e.gid ?? 0), L(t, 124, 12, i), L(t, 136, 12, Math.floor((e.mtime?.getTime() ?? Date.now()) / 1e3)), P(t, 156, 1, Qe[e.type ?? "file"]), P(t, 157, 100, e.linkname), P(t, 257, 6, "ustar\0"), P(t, 263, 2, "00"), P(t, 265, 32, e.uname), P(t, 297, 32, e.gname), P(t, 345, 155, n), it(t), t;
938
+ }
939
+ function at(e, t) {
940
+ if (t && !nt(e)) throw new Error("Invalid tar header checksum.");
941
+ let i = S(e, 156, 1), r = {
942
+ name: S(e, 0, 100),
943
+ mode: ne(e, 100, 8),
944
+ uid: W(e, 108, 8),
945
+ gid: W(e, 116, 8),
946
+ size: W(e, 124, 12),
947
+ mtime: /* @__PURE__ */ new Date(W(e, 136, 12) * 1e3),
948
+ type: et[i] || "file",
949
+ linkname: S(e, 157, 100)
950
+ }, n = S(e, 257, 6);
951
+ return N(r) && (r.size = 0), n.trim() === "ustar" && (r.uname = S(e, 265, 32), r.gname = S(e, 297, 32)), n === "ustar" && (r.prefix = S(e, 345, 155)), r;
952
+ }
953
+ var be = {
954
+ path: ["name", (e) => e],
955
+ linkpath: ["linkname", (e) => e],
956
+ size: ["size", (e) => parseInt(e, 10)],
957
+ mtime: ["mtime", parseFloat],
958
+ uid: ["uid", (e) => parseInt(e, 10)],
959
+ gid: ["gid", (e) => parseInt(e, 10)],
960
+ uname: ["uname", (e) => e],
961
+ gname: ["gname", (e) => e]
962
+ };
963
+ function lt(e) {
964
+ let t = new TextDecoder("utf-8"), i = Object.create(null), r = Object.create(null), n = 0;
965
+ for (; n < e.length;) {
966
+ let s = e.indexOf(32, n);
967
+ if (s === -1) break;
968
+ let a = parseInt(t.decode(e.subarray(n, s)), 10);
969
+ if (Number.isNaN(a) || a === 0) break;
970
+ let o = n + a, [c, l] = t.decode(e.subarray(s + 1, o - 1)).split("=", 2);
971
+ if (c && l !== void 0 && (r[c] = l, Object.hasOwn(be, c))) {
972
+ let [f, u] = be[c], y = u(l);
973
+ (typeof y == "string" || !Number.isNaN(y)) && (i[f] = y);
974
+ }
975
+ n = o;
976
+ }
977
+ return Object.keys(r).length > 0 && (i.pax = r), i;
978
+ }
979
+ function xe(e, t) {
980
+ t.name !== void 0 && (e.name = t.name), t.linkname !== void 0 && (e.linkname = t.linkname), t.size !== void 0 && (e.size = t.size), t.mtime !== void 0 && (e.mtime = /* @__PURE__ */ new Date(t.mtime * 1e3)), t.uid !== void 0 && (e.uid = t.uid), t.gid !== void 0 && (e.gid = t.gid), t.uname !== void 0 && (e.uname = t.uname), t.gname !== void 0 && (e.gname = t.gname), t.pax && (e.pax = Object.assign({}, e.pax ?? {}, t.pax));
981
+ }
982
+ function ct(e) {
983
+ switch (e) {
984
+ case "pax-global-header":
985
+ case "pax-header": return lt;
986
+ case "gnu-long-name": return (t) => ({ name: S(t, 0, t.length) });
987
+ case "gnu-long-link-name": return (t) => ({ linkname: S(t, 0, t.length) });
988
+ default: return;
989
+ }
990
+ }
991
+ function ft(e) {
992
+ let t = $e(e), i = ot(e);
993
+ if (!i) return [t];
994
+ let r = -i.paxBody.length & 511, n = r > 0 ? [tt.subarray(0, r)] : [];
995
+ return [
996
+ i.paxHeader,
997
+ i.paxBody,
998
+ ...n,
999
+ t
1000
+ ];
1001
+ }
1002
+ var ut = new Uint8Array(512 * 2);
1003
+ function Be(e, t, i) {
1004
+ let r = null, n = 0, s = !1, a = (o) => {
1005
+ let c = new Error(o);
1006
+ throw t(c), c;
1007
+ };
1008
+ return {
1009
+ add(o) {
1010
+ s && a("No new tar entries after finalize."), r !== null && a("Previous entry must be completed before adding a new one");
1011
+ let c = N(o) ? 0 : o.size;
1012
+ (!Number.isSafeInteger(c) || c < 0) && a("Invalid tar entry size.");
1013
+ try {
1014
+ let l = ft({
1015
+ ...o,
1016
+ size: c
1017
+ });
1018
+ for (let f of l) e(f);
1019
+ r = {
1020
+ ...o,
1021
+ size: c
1022
+ }, n = 0;
1023
+ } catch (l) {
1024
+ t(l);
1025
+ }
1026
+ },
1027
+ write(o) {
1028
+ r || a("No active tar entry."), s && a("Cannot write data after finalize.");
1029
+ let c = n + o.length;
1030
+ c > r.size && a(`"${r.name}" exceeds given size of ${r.size} bytes.`);
1031
+ try {
1032
+ n = c, e(o);
1033
+ } catch (l) {
1034
+ t(l);
1035
+ }
1036
+ },
1037
+ endEntry() {
1038
+ r || a("No active entry to end."), s && a("Cannot end entry after finalize.");
1039
+ try {
1040
+ n !== r.size && a(`Size mismatch for "${r.name}".`);
1041
+ let o = -r.size & 511;
1042
+ o > 0 && e(new Uint8Array(o)), r = null, n = 0;
1043
+ } catch (o) {
1044
+ throw t(o), o;
1045
+ }
1046
+ },
1047
+ finalize() {
1048
+ s && a("Archive has already been finalized"), r !== null && a("Cannot finalize while an entry is still active");
1049
+ try {
1050
+ e(ut), s = !0, i && i();
1051
+ } catch (o) {
1052
+ t(o);
1053
+ }
1054
+ }
1055
+ };
1056
+ }
1057
+ var j = 256;
1058
+ function dt() {
1059
+ let e = new Array(j), t = e.length - 1, i = 0, r = 0, n = 0, s = (o) => {
1060
+ let c = e[i];
1061
+ o === c.length ? (e[i] = _, i = i + 1 & t) : e[i] = c.subarray(o), n -= o, n === 0 && e.length > j && (e = new Array(j), t = j - 1, i = 0, r = 0);
1062
+ };
1063
+ function a(o, c) {
1064
+ if (c) {
1065
+ let g = 0, d = Math.min(o, n);
1066
+ for (; d > 0;) {
1067
+ let p = e[i], m = Math.min(d, p.length), x = m === p.length ? p : p.subarray(0, m);
1068
+ if (s(m), d -= m, g += m, !c(x)) break;
1069
+ }
1070
+ return g;
1071
+ }
1072
+ if (n < o) return null;
1073
+ if (o === 0) return _;
1074
+ let l = e[i];
1075
+ if (l.length >= o) {
1076
+ let g = l.length === o ? l : l.subarray(0, o);
1077
+ return s(o), g;
1078
+ }
1079
+ let f = new Uint8Array(o), u = 0, y = o;
1080
+ for (; y > 0;) {
1081
+ let g = e[i], d = Math.min(y, g.length);
1082
+ f.set(d === g.length ? g : g.subarray(0, d), u), u += d, y -= d, s(d);
1083
+ }
1084
+ return f;
1085
+ }
1086
+ return {
1087
+ push: (o) => {
1088
+ if (o.length === 0) return;
1089
+ let c = r + 1 & t;
1090
+ if (c === i) {
1091
+ let l = e.length, f = l * 2, u = new Array(f), y = r - i + l & l - 1;
1092
+ if (i < r) for (let g = 0; g < y; g++) u[g] = e[i + g];
1093
+ else if (y > 0) {
1094
+ let g = l - i;
1095
+ for (let d = 0; d < g; d++) u[d] = e[i + d];
1096
+ for (let d = 0; d < r; d++) u[g + d] = e[d];
1097
+ }
1098
+ e = u, t = f - 1, i = 0, r = y, c = r + 1 & t;
1099
+ }
1100
+ e[r] = o, r = c, n += o.length;
1101
+ },
1102
+ available: () => n,
1103
+ peek: (o) => {
1104
+ if (n < o) return null;
1105
+ if (o === 0) return _;
1106
+ let c = e[i];
1107
+ if (c.length >= o) return c.length === o ? c : c.subarray(0, o);
1108
+ let l = new Uint8Array(o), f = 0, u = i;
1109
+ for (; f < o;) {
1110
+ let y = e[u], g = Math.min(o - f, y.length);
1111
+ g === y.length ? l.set(y, f) : l.set(y.subarray(0, g), f), f += g, u = u + 1 & t;
1112
+ }
1113
+ return l;
1114
+ },
1115
+ discard: (o) => {
1116
+ if (o > n) throw new Error("Too many bytes consumed");
1117
+ if (o === 0) return;
1118
+ let c = o;
1119
+ for (; c > 0;) {
1120
+ let l = e[i], f = Math.min(c, l.length);
1121
+ s(f), c -= f;
1122
+ }
1123
+ },
1124
+ pull: a
1125
+ };
1126
+ }
1127
+ var te = 0, D = 1, H = /* @__PURE__ */ new Error("Tar archive is truncated.");
1128
+ function Te(e = {}) {
1129
+ let t = e.strict ?? !1, { available: i, peek: r, push: n, discard: s, pull: a } = dt(), o = te, c = !1, l = !1, f = !1, u = null, y = {}, g = {}, d = {
1130
+ isEntryActive: () => o === D,
1131
+ isBodyComplete: () => !u || u.remaining === 0,
1132
+ canFinish: () => !u || i() >= u.remaining + u.padding,
1133
+ write(p) {
1134
+ if (c) throw new Error("Archive already ended.");
1135
+ n(p);
1136
+ },
1137
+ end() {
1138
+ c = !0;
1139
+ },
1140
+ readHeader() {
1141
+ if (o !== te) throw new Error("Cannot read header while an entry is active");
1142
+ if (!l) for (; !l;) {
1143
+ if (i() < 512) {
1144
+ if (c) {
1145
+ if (i() > 0 && t) throw H;
1146
+ l = !0;
1147
+ return;
1148
+ }
1149
+ return null;
1150
+ }
1151
+ let p = r(512);
1152
+ if (ve(p)) {
1153
+ if (i() < 512 * 2) {
1154
+ if (c) {
1155
+ if (t) throw H;
1156
+ l = !0;
1157
+ return;
1158
+ }
1159
+ return null;
1160
+ }
1161
+ if (ve(r(512 * 2).subarray(512))) {
1162
+ s(512 * 2), l = !0, f = !0;
1163
+ return;
1164
+ }
1165
+ if (t) throw new Error("Invalid tar header.");
1166
+ s(512);
1167
+ continue;
1168
+ }
1169
+ let m;
1170
+ try {
1171
+ m = at(p, t);
1172
+ } catch (E) {
1173
+ if (t) throw E;
1174
+ s(512);
1175
+ continue;
1176
+ }
1177
+ let x = ct(m.type);
1178
+ if (x) {
1179
+ let E = m.size + (-m.size & 511);
1180
+ if (i() < 512 + E) {
1181
+ if (c && t) throw H;
1182
+ return null;
1183
+ }
1184
+ s(512);
1185
+ let v = x(a(E).subarray(0, m.size)), $ = m.type === "pax-global-header" ? y : g;
1186
+ for (let z in v) $[z] = v[z];
1187
+ continue;
1188
+ }
1189
+ s(512);
1190
+ let b = m;
1191
+ return m.prefix && (b.name = `${m.prefix}/${b.name}`), xe(b, y), xe(b, g), b.name.endsWith("/") && b.type === "file" && (b.type = ke), g = {}, u = {
1192
+ header: b,
1193
+ remaining: b.size,
1194
+ padding: -b.size & 511
1195
+ }, o = D, b;
1196
+ }
1197
+ },
1198
+ streamBody(p) {
1199
+ if (o !== D || !u || u.remaining === 0) return 0;
1200
+ let m = Math.min(u.remaining, i());
1201
+ if (m === 0) return 0;
1202
+ let x = a(m, p);
1203
+ return u.remaining -= x, x;
1204
+ },
1205
+ skipPadding() {
1206
+ if (o !== D || !u) return !0;
1207
+ if (u.remaining > 0) throw new Error("Body not fully consumed");
1208
+ return i() < u.padding ? !1 : (s(u.padding), u = null, o = te, !0);
1209
+ },
1210
+ skipEntry() {
1211
+ if (o !== D || !u) return !0;
1212
+ let p = Math.min(u.remaining, i());
1213
+ return p > 0 && (s(p), u.remaining -= p), u.remaining > 0 ? !1 : d.skipPadding();
1214
+ },
1215
+ validateEOF() {
1216
+ if (t) {
1217
+ if (!f) throw H;
1218
+ if (i() > 0 && a(i()).some((p) => p !== 0)) throw new Error("Invalid EOF.");
1219
+ }
1220
+ }
1221
+ };
1222
+ return d;
1223
+ }
1224
+ function ve(e) {
1225
+ if (e.byteOffset % 8 === 0) {
1226
+ let t = new BigUint64Array(e.buffer, e.byteOffset, e.length / 8);
1227
+ for (let i = 0; i < t.length; i++) if (t[i] !== 0n) return !1;
1228
+ return !0;
1229
+ }
1230
+ for (let t = 0; t < e.length; t++) if (e[t] !== 0) return !1;
1231
+ return !0;
1232
+ }
1233
+ function Fe() {
1234
+ return new CompressionStream("gzip");
1235
+ }
1236
+ function Ie() {
1237
+ return new DecompressionStream("gzip");
1238
+ }
1239
+ function mt() {
1240
+ let e, t;
1241
+ return {
1242
+ readable: new ReadableStream({ start(i) {
1243
+ e = i, t = Be(i.enqueue.bind(i), i.error.bind(i), i.close.bind(i));
1244
+ } }),
1245
+ controller: {
1246
+ add(i) {
1247
+ let r = N(i);
1248
+ return t.add(i), r && t.endEntry(), new WritableStream({
1249
+ write(n) {
1250
+ t.write(n);
1251
+ },
1252
+ close() {
1253
+ r || t.endEntry();
1254
+ },
1255
+ abort(n) {
1256
+ e.error(n);
1257
+ }
1258
+ });
1259
+ },
1260
+ finalize() {
1261
+ t.finalize();
1262
+ },
1263
+ error(i) {
1264
+ e.error(i);
1265
+ }
1266
+ }
1267
+ };
1268
+ }
1269
+ async function Pe(e) {
1270
+ let t = [], i = e.getReader(), r = 0;
1271
+ try {
1272
+ for (;;) {
1273
+ let { done: a, value: o } = await i.read();
1274
+ if (a) break;
1275
+ t.push(o), r += o.length;
1276
+ }
1277
+ let n = new Uint8Array(r), s = 0;
1278
+ for (let a of t) n.set(a, s), s += a.length;
1279
+ return n;
1280
+ } finally {
1281
+ i.releaseLock();
1282
+ }
1283
+ }
1284
+ var Se = (e) => e.pipeTo(new WritableStream());
1285
+ function ht(e = {}) {
1286
+ let t = Te(e), i = e.strict ?? !1, r = null, n = null, s = !1, a = !1, o = !1, c = !1, l = () => {
1287
+ try {
1288
+ n?.close();
1289
+ } catch {}
1290
+ n = null;
1291
+ }, f = (d) => {
1292
+ if (!c) {
1293
+ c = !0;
1294
+ try {
1295
+ n?.error(d);
1296
+ } catch {}
1297
+ n = null;
1298
+ try {
1299
+ r.error(d);
1300
+ } catch {}
1301
+ r = null;
1302
+ }
1303
+ }, u = () => {
1304
+ if (!c) {
1305
+ c = !0, l();
1306
+ try {
1307
+ r.close();
1308
+ } catch {}
1309
+ r = null;
1310
+ }
1311
+ }, y = () => {
1312
+ if (i) throw new Error("Tar archive is truncated.");
1313
+ u();
1314
+ }, g = () => {
1315
+ if (!(s || c || !r)) {
1316
+ s = !0;
1317
+ try {
1318
+ for (;;) {
1319
+ if (a) {
1320
+ o && (t.validateEOF(), u());
1321
+ break;
1322
+ }
1323
+ if (t.isEntryActive()) {
1324
+ if (o && !t.canFinish()) {
1325
+ y();
1326
+ break;
1327
+ }
1328
+ if (n) {
1329
+ if ((n.desiredSize ?? 1) <= 0) break;
1330
+ if (t.streamBody((d) => (n.enqueue(d), (n.desiredSize ?? 1) > 0)) === 0 && !t.isBodyComplete()) {
1331
+ o && y();
1332
+ break;
1333
+ }
1334
+ } else if (!t.skipEntry()) {
1335
+ o && y();
1336
+ break;
1337
+ }
1338
+ if (t.isBodyComplete() && (l(), !t.skipPadding())) {
1339
+ o && y();
1340
+ break;
1341
+ }
1342
+ } else {
1343
+ if ((r.desiredSize ?? 0) < 0) break;
1344
+ let d = t.readHeader();
1345
+ if (d === null) {
1346
+ o && u();
1347
+ break;
1348
+ }
1349
+ if (d === void 0) {
1350
+ if (o) {
1351
+ t.validateEOF(), u();
1352
+ break;
1353
+ }
1354
+ a = !0;
1355
+ break;
1356
+ }
1357
+ r.enqueue({
1358
+ header: d,
1359
+ body: new ReadableStream({
1360
+ start(p) {
1361
+ d.size === 0 ? p.close() : n = p;
1362
+ },
1363
+ pull: g,
1364
+ cancel() {
1365
+ n = null, g();
1366
+ }
1367
+ })
1368
+ });
1369
+ }
1370
+ }
1371
+ } catch (d) {
1372
+ throw f(d), d;
1373
+ } finally {
1374
+ s = !1;
1375
+ }
1376
+ }
1377
+ };
1378
+ return {
1379
+ readable: new ReadableStream({
1380
+ start(d) {
1381
+ r = d;
1382
+ },
1383
+ pull: g,
1384
+ cancel(d) {
1385
+ d !== void 0 ? f(d) : u();
1386
+ }
1387
+ }, { highWaterMark: 2 }),
1388
+ writable: new WritableStream({
1389
+ write(d) {
1390
+ try {
1391
+ if (a && i && d.some((p) => p !== 0)) throw new Error("Invalid EOF.");
1392
+ t.write(d), g();
1393
+ } catch (p) {
1394
+ throw f(p), p;
1395
+ }
1396
+ },
1397
+ close() {
1398
+ try {
1399
+ o = !0, t.end(), g();
1400
+ } catch (d) {
1401
+ throw f(d), d;
1402
+ }
1403
+ },
1404
+ abort(d) {
1405
+ f(d);
1406
+ }
1407
+ })
1408
+ };
1409
+ }
1410
+ async function Oe(e) {
1411
+ let { readable: t, controller: i } = mt();
1412
+ return await (async () => {
1413
+ for (let r of e) {
1414
+ let n = i.add(r.header), s = "body" in r ? r.body : r.data;
1415
+ if (!s) {
1416
+ await n.close();
1417
+ continue;
1418
+ }
1419
+ if (s instanceof ReadableStream) await s.pipeTo(n);
1420
+ else if (s instanceof Blob) await s.stream().pipeTo(n);
1421
+ else try {
1422
+ let a = await Ce(s);
1423
+ if (a.length > 0) {
1424
+ let o = n.getWriter();
1425
+ await o.write(a), await o.close();
1426
+ } else await n.close();
1427
+ } catch {
1428
+ throw new TypeError(`Unsupported content type for entry "${r.header.name}".`);
1429
+ }
1430
+ }
1431
+ })().then(() => i.finalize()).catch((r) => i.error(r)), new Uint8Array(await Pe(t));
1432
+ }
1433
+ async function Ue(e, t = {}) {
1434
+ let i = e instanceof ReadableStream ? e : new ReadableStream({ start(s) {
1435
+ s.enqueue(e instanceof Uint8Array ? e : new Uint8Array(e)), s.close();
1436
+ } }), r = [], n = i.pipeThrough(ht(t));
1437
+ for await (let s of n) {
1438
+ let a;
1439
+ try {
1440
+ a = Ae(s.header, t);
1441
+ } catch (o) {
1442
+ throw await s.body.cancel(), o;
1443
+ }
1444
+ if (a === null) {
1445
+ await Se(s.body);
1446
+ continue;
1447
+ }
1448
+ N(a) ? (await Se(s.body), r.push({ header: a })) : r.push({
1449
+ header: a,
1450
+ data: await Pe(s.body)
1451
+ });
1452
+ }
1453
+ return r;
1454
+ }
1455
+ var pt = (() => {
1456
+ let e = new Uint32Array(256);
1457
+ for (let t = 0; t < 256; t++) {
1458
+ let i = t << 24;
1459
+ for (let r = 0; r < 8; r++) i = i & 2147483648 ? i << 1 ^ 79764919 : i << 1;
1460
+ e[t] = i >>> 0;
1461
+ }
1462
+ return e;
1463
+ })();
1464
+ function gt(e, t) {
1465
+ return (e << 8 ^ pt[(e >>> 24 ^ t) & 255]) >>> 0;
1466
+ }
1467
+ var ie = class {
1468
+ buffer = [];
1469
+ current = 0;
1470
+ bitCount = 0;
1471
+ writeBits(t, i) {
1472
+ for (let r = t - 1; r >= 0; r--) this.current = this.current << 1 | i >>> r & 1, this.bitCount++, this.bitCount === 8 && (this.buffer.push(this.current), this.current = 0, this.bitCount = 0);
1473
+ }
1474
+ writeBit(t) {
1475
+ this.current = this.current << 1 | t & 1, this.bitCount++, this.bitCount === 8 && (this.buffer.push(this.current), this.current = 0, this.bitCount = 0);
1476
+ }
1477
+ finish() {
1478
+ return this.bitCount > 0 && this.buffer.push(this.current << 8 - this.bitCount), new Uint8Array(this.buffer);
1479
+ }
1480
+ };
1481
+ function yt(e) {
1482
+ let t = [], i = 0;
1483
+ for (; i < e.length;) {
1484
+ let r = e[i], n = 1;
1485
+ for (; i + n < e.length && e[i + n] === r && n < 255;) n++;
1486
+ n >= 4 ? (t.push(r, r, r, r), t.push(n - 4), i += n) : (t.push(r), i++);
1487
+ }
1488
+ return new Uint8Array(t);
1489
+ }
1490
+ function wt(e) {
1491
+ let t = e.length;
1492
+ if (t === 0) return {
1493
+ transformed: new Uint8Array(0),
1494
+ pointer: 0
1495
+ };
1496
+ let i = bt(e), r = new Uint8Array(t), n = 0;
1497
+ for (let s = 0; s < t; s++) i[s] === 0 ? (n = s, r[s] = e[t - 1]) : r[s] = e[i[s] - 1];
1498
+ return {
1499
+ transformed: r,
1500
+ pointer: n
1501
+ };
1502
+ }
1503
+ function bt(e) {
1504
+ let t = e.length, i = new Int32Array(t), r = new Int32Array(t);
1505
+ for (let n = 0; n < t; n++) i[n] = n, r[n] = e[n];
1506
+ for (let n = 1; n < t; n *= 2) {
1507
+ let s = r.slice();
1508
+ i.sort((a, o) => s[a] !== s[o] ? s[a] - s[o] : s[(a + n) % t] - s[(o + n) % t]), r[i[0]] = 0;
1509
+ for (let a = 1; a < t; a++) s[i[a]] === s[i[a - 1]] && s[(i[a] + n) % t] === s[(i[a - 1] + n) % t] ? r[i[a]] = r[i[a - 1]] : r[i[a]] = r[i[a - 1]] + 1;
1510
+ if (r[i[t - 1]] === t - 1) break;
1511
+ }
1512
+ return i;
1513
+ }
1514
+ function xt(e, t) {
1515
+ let i = [];
1516
+ for (let a = 0; a < 256; a++) t[a] && i.push(a);
1517
+ let r = new Array(256).fill(-1);
1518
+ for (let a = 0; a < i.length; a++) r[i[a]] = a;
1519
+ let n = new Uint16Array(e.length), s = i.slice();
1520
+ for (let a = 0; a < e.length; a++) {
1521
+ let o = e[a], c = 0;
1522
+ for (; s[c] !== o;) c++;
1523
+ if (n[a] = c, c > 0) {
1524
+ let l = s[c];
1525
+ for (let f = c; f > 0; f--) s[f] = s[f - 1];
1526
+ s[0] = l;
1527
+ }
1528
+ }
1529
+ return {
1530
+ encoded: n,
1531
+ length: e.length
1532
+ };
1533
+ }
1534
+ function vt(e, t, i) {
1535
+ let s = i + 1, a = [], o = 0;
1536
+ for (; o < t;) if (e[o] === 0) {
1537
+ let l = 0;
1538
+ for (; o < t && e[o] === 0;) l++, o++;
1539
+ let f = l;
1540
+ for (; f > 0;) f--, f & 1 ? a.push(1) : a.push(0), f >>>= 1;
1541
+ } else a.push(e[o] + 1), o++;
1542
+ a.push(s);
1543
+ let c = new Uint16Array(a.length);
1544
+ for (let l = 0; l < a.length; l++) c[l] = a[l];
1545
+ return {
1546
+ symbols: c,
1547
+ length: a.length,
1548
+ eob: s
1549
+ };
1550
+ }
1551
+ function Ne(e, t, i) {
1552
+ if (t <= 1) {
1553
+ let l = new Array(e.length).fill(0);
1554
+ for (let f = 0; f < e.length; f++) e[f] > 0 && (l[f] = 1);
1555
+ return {
1556
+ codeLengths: l,
1557
+ maxLen: 1,
1558
+ minLen: 1
1559
+ };
1560
+ }
1561
+ let r = [];
1562
+ for (let l = 0; l < e.length; l++) e[l] > 0 && r.push({
1563
+ freq: e[l],
1564
+ symbol: l,
1565
+ left: null,
1566
+ right: null
1567
+ });
1568
+ if (r.length === 0) return {
1569
+ codeLengths: new Array(e.length).fill(0),
1570
+ maxLen: 0,
1571
+ minLen: 0
1572
+ };
1573
+ if (r.length === 1) {
1574
+ let l = new Array(e.length).fill(0);
1575
+ return l[r[0].symbol] = 1, {
1576
+ codeLengths: l,
1577
+ maxLen: 1,
1578
+ minLen: 1
1579
+ };
1580
+ }
1581
+ for (; r.length > 1;) {
1582
+ r.sort((u, y) => u.freq - y.freq);
1583
+ let l = r.shift(), f = r.shift();
1584
+ r.push({
1585
+ freq: l.freq + f.freq,
1586
+ symbol: -1,
1587
+ left: l,
1588
+ right: f
1589
+ });
1590
+ }
1591
+ let n = new Array(e.length).fill(0);
1592
+ function s(l, f) {
1593
+ if (!l.left && !l.right) {
1594
+ n[l.symbol] = f;
1595
+ return;
1596
+ }
1597
+ l.left && s(l.left, f + 1), l.right && s(l.right, f + 1);
1598
+ }
1599
+ s(r[0], 0);
1600
+ let a = !0;
1601
+ for (; a;) {
1602
+ a = !1;
1603
+ for (let l = 0; l < n.length; l++) n[l] > i && (n[l] = i, a = !0);
1604
+ if (a) {
1605
+ let l = 0;
1606
+ for (let f = 0; f < n.length; f++) n[f] > 0 && (l += 1 / (1 << n[f]));
1607
+ if (l > 1) for (let f = 1; f < i && l > 1; f++) for (let u = 0; u < n.length && l > 1; u++) n[u] === f && (n[u]++, l -= 1 / (1 << f) - 1 / (1 << f + 1));
1608
+ a = !1;
1609
+ for (let f = 0; f < n.length; f++) if (n[f] > i) {
1610
+ a = !0;
1611
+ break;
1612
+ }
1613
+ }
1614
+ }
1615
+ let o = i, c = 0;
1616
+ for (let l = 0; l < n.length; l++) n[l] > 0 && (n[l] < o && (o = n[l]), n[l] > c && (c = n[l]));
1617
+ return {
1618
+ codeLengths: n,
1619
+ maxLen: c,
1620
+ minLen: o
1621
+ };
1622
+ }
1623
+ function kt(e, t) {
1624
+ let i = new Array(t).fill(0), r = e.slice(0, t), n = Math.max(...r, 0), s = new Array(n + 1).fill(0);
1625
+ for (let c = 0; c < t; c++) r[c] > 0 && s[r[c]]++;
1626
+ let a = new Array(n + 1).fill(0), o = 0;
1627
+ for (let c = 1; c <= n; c++) o = o + s[c - 1] << 1, a[c] = o;
1628
+ for (let c = 0; c < t; c++) r[c] > 0 && (i[c] = a[r[c]]++);
1629
+ return {
1630
+ codes: i,
1631
+ lengths: r
1632
+ };
1633
+ }
1634
+ function zt(e, t, i) {
1635
+ e.writeBits(24, 3227993), e.writeBits(24, 2511705), e.writeBits(32, i), e.writeBit(0);
1636
+ let { transformed: n, pointer: s } = wt(yt(t));
1637
+ e.writeBits(24, s);
1638
+ let a = new Array(256).fill(!1);
1639
+ for (let h = 0; h < n.length; h++) a[n[h]] = !0;
1640
+ let o = new Array(16).fill(!1);
1641
+ for (let h = 0; h < 16; h++) for (let w = 0; w < 16; w++) if (a[h * 16 + w]) {
1642
+ o[h] = !0;
1643
+ break;
1644
+ }
1645
+ for (let h = 0; h < 16; h++) e.writeBit(o[h] ? 1 : 0);
1646
+ for (let h = 0; h < 16; h++) if (o[h]) for (let w = 0; w < 16; w++) e.writeBit(a[h * 16 + w] ? 1 : 0);
1647
+ let c = 0;
1648
+ for (let h = 0; h < 256; h++) a[h] && c++;
1649
+ let { encoded: l, length: f } = xt(n, a), { symbols: u, length: y } = vt(l, f, c), g = c + 2, d = 50, p = Math.ceil(y / d), m;
1650
+ y < 200 ? m = 2 : y < 600 ? m = 3 : y < 1200 ? m = 4 : y < 2400 ? m = 5 : m = 6, m > p && (m = Math.max(2, p));
1651
+ let x = [];
1652
+ for (let h = 0; h < m; h++) x.push(new Array(g).fill(0));
1653
+ let b = new Int32Array(p);
1654
+ for (let h = 0; h < p; h++) b[h] = h % m;
1655
+ for (let h = 0; h < p; h++) {
1656
+ let w = h * d, k = Math.min(w + d, y), B = b[h];
1657
+ for (let C = w; C < k; C++) x[B][u[C]]++;
1658
+ }
1659
+ function E(h) {
1660
+ for (let w = 0; w < g; w++) h[w] < 1 && (h[w] = 1);
1661
+ }
1662
+ let v = [];
1663
+ for (let h = 0; h < m; h++) E(x[h]), v.push(Ne(x[h], g, 20));
1664
+ for (let h = 0; h < 4; h++) {
1665
+ for (let w = 0; w < m; w++) x[w].fill(0);
1666
+ for (let w = 0; w < p; w++) {
1667
+ let k = w * d, B = Math.min(k + d, y), C = 0, M = Infinity;
1668
+ for (let I = 0; I < m; I++) {
1669
+ let J = 0;
1670
+ for (let V = k; V < B; V++) J += v[I].codeLengths[u[V]] || 20;
1671
+ J < M && (M = J, C = I);
1672
+ }
1673
+ b[w] = C;
1674
+ for (let I = k; I < B; I++) x[C][u[I]]++;
1675
+ }
1676
+ for (let w = 0; w < m; w++) E(x[w]), v[w] = Ne(x[w], g, 20);
1677
+ }
1678
+ e.writeBits(3, m), e.writeBits(15, p);
1679
+ let $ = [], z = [];
1680
+ for (let h = 0; h < m; h++) z.push(h);
1681
+ for (let h = 0; h < p; h++) {
1682
+ let w = b[h], k = 0;
1683
+ for (; z[k] !== w;) k++;
1684
+ if ($.push(k), k > 0) {
1685
+ let B = z[k];
1686
+ for (let C = k; C > 0; C--) z[C] = z[C - 1];
1687
+ z[0] = B;
1688
+ }
1689
+ }
1690
+ for (let h = 0; h < p; h++) {
1691
+ for (let w = 0; w < $[h]; w++) e.writeBit(1);
1692
+ e.writeBit(0);
1693
+ }
1694
+ for (let h = 0; h < m; h++) {
1695
+ let w = v[h].codeLengths, k = w[0];
1696
+ e.writeBits(5, k);
1697
+ for (let B = 0; B < g; B++) {
1698
+ let C = w[B];
1699
+ for (; k < C;) e.writeBit(1), e.writeBit(0), k++;
1700
+ for (; k > C;) e.writeBit(1), e.writeBit(1), k--;
1701
+ e.writeBit(0);
1702
+ }
1703
+ }
1704
+ for (let h = 0; h < m; h++) {
1705
+ let { codes: w, lengths: k } = kt(v[h].codeLengths, g);
1706
+ v[h] = Object.assign(v[h], {
1707
+ _codes: w,
1708
+ _lengths: k
1709
+ });
1710
+ }
1711
+ let he = 0, R = 0;
1712
+ for (let h = 0; h < y; h++) {
1713
+ (R === 0 || R >= d) && (h > 0 && he++, R = 0);
1714
+ let k = v[b[he]], B = u[h], C = k._lengths[B], M = k._codes[B];
1715
+ C > 0 && e.writeBits(C, M), R++;
1716
+ }
1717
+ }
1718
+ var Ct = 10 * 1024 * 1024;
1719
+ function Le(e, t = 9, i = Ct) {
1720
+ if (t < 1 || t > 9) throw new Error("Block size level must be 1-9");
1721
+ if (e.length > i) throw new Error(`Input too large for bzip2 compression (${e.length} bytes, max ${i})`);
1722
+ let r = t * 1e5, n = new ie();
1723
+ n.writeBits(8, 66), n.writeBits(8, 90), n.writeBits(8, 104), n.writeBits(8, 48 + t);
1724
+ let s = 0, a = 0;
1725
+ for (; a < e.length;) {
1726
+ let o = Math.min(a + r, e.length), c = e.subarray(a, o), l = 4294967295;
1727
+ for (let f = 0; f < c.length; f++) l = gt(l, c[f]);
1728
+ l = ~l >>> 0, s = (s << 1 | s >>> 31) >>> 0, s = (s ^ l) >>> 0, zt(n, c, l), a = o;
1729
+ }
1730
+ return n.writeBits(24, 1536581), n.writeBits(24, 3690640), n.writeBits(32, s), n.finish();
1731
+ }
1732
+ var X = null, Z = null;
1733
+ async function Me() {
1734
+ if (X) return X;
1735
+ if (Z) throw Z;
1736
+ try {
1737
+ return X = await _$1.runTrustedAsync(() => import("./lzma-CTMDi254.mjs")), X;
1738
+ } catch {
1739
+ throw Z = /* @__PURE__ */ new Error("xz compression requires node-liblzma which failed to load. Install liblzma-dev (apt) or xz (brew) and reinstall dependencies."), Z;
1740
+ }
1741
+ }
1742
+ var G = null, q = null;
1743
+ async function We() {
1744
+ if (G) return G;
1745
+ if (q) throw q;
1746
+ try {
1747
+ return G = await _$1.runTrustedAsync(() => import("./lib-D4GpdNNK.mjs").then((m) => /* @__PURE__ */ __toESM(m.default, 1))), G;
1748
+ } catch {
1749
+ throw q = /* @__PURE__ */ new Error("zstd compression requires @mongodb-js/zstd which is not installed. Install it with: npm install @mongodb-js/zstd"), q;
1750
+ }
1751
+ }
1752
+ var A = 100 * 1024 * 1024, De = 512, Re = 1e4;
1753
+ function Et(e) {
1754
+ let t = "file";
1755
+ e.isDirectory ? t = "directory" : e.isSymlink && (t = "symlink");
1756
+ let i = e.name;
1757
+ e.isDirectory && !i.endsWith("/") && (i += "/");
1758
+ let r;
1759
+ e.content !== void 0 && (typeof e.content == "string" ? r = new TextEncoder().encode(e.content) : r = e.content);
1760
+ let n = e.isDirectory || e.isSymlink ? 0 : r?.length ?? 0;
1761
+ return {
1762
+ header: {
1763
+ name: i,
1764
+ mode: e.mode ?? (e.isDirectory ? 493 : 420),
1765
+ uid: e.uid ?? 0,
1766
+ gid: e.gid ?? 0,
1767
+ size: n,
1768
+ mtime: e.mtime ?? /* @__PURE__ */ new Date(),
1769
+ type: t,
1770
+ linkname: e.linkTarget ?? "",
1771
+ uname: "user",
1772
+ gname: "user"
1773
+ },
1774
+ body: r
1775
+ };
1776
+ }
1777
+ async function O(e) {
1778
+ return Oe(e.map(Et));
1779
+ }
1780
+ async function je(e) {
1781
+ let t = await O(e), n = new ReadableStream({ start(l) {
1782
+ l.enqueue(t), l.close();
1783
+ } }).pipeThrough(Fe()).getReader(), s = [];
1784
+ for (;;) {
1785
+ let { done: l, value: f } = await n.read();
1786
+ if (l) break;
1787
+ s.push(f);
1788
+ }
1789
+ let a = s.reduce((l, f) => l + f.length, 0), o = new Uint8Array(a), c = 0;
1790
+ for (let l of s) o.set(l, c), c += l.length;
1791
+ return o;
1792
+ }
1793
+ async function F(e) {
1794
+ if (e.length > A) return {
1795
+ entries: [],
1796
+ error: `Archive too large (max ${A} bytes)`
1797
+ };
1798
+ if (e.length < De || e.length % De !== 0) return {
1799
+ entries: [],
1800
+ error: "Invalid tar archive format"
1801
+ };
1802
+ try {
1803
+ let t = await Ue(e), i = [];
1804
+ for (let r of t) {
1805
+ if (i.length >= Re) return {
1806
+ entries: i,
1807
+ error: `Too many entries (max ${Re})`
1808
+ };
1809
+ let n = "file";
1810
+ switch (r.header.type) {
1811
+ case "directory":
1812
+ n = "directory";
1813
+ break;
1814
+ case "symlink":
1815
+ n = "symlink";
1816
+ break;
1817
+ case "link":
1818
+ n = "hardlink";
1819
+ break;
1820
+ case "file":
1821
+ n = "file";
1822
+ break;
1823
+ default: n = "other";
1824
+ }
1825
+ i.push({
1826
+ name: r.header.name,
1827
+ mode: r.header.mode ?? 420,
1828
+ uid: r.header.uid ?? 0,
1829
+ gid: r.header.gid ?? 0,
1830
+ size: r.header.size,
1831
+ mtime: r.header.mtime ?? /* @__PURE__ */ new Date(),
1832
+ type: n,
1833
+ linkTarget: r.header.linkname || void 0,
1834
+ content: r.data ?? new Uint8Array(0)
1835
+ });
1836
+ }
1837
+ return { entries: i };
1838
+ } catch (t) {
1839
+ return {
1840
+ entries: [],
1841
+ error: t instanceof Error ? t.message : "Unknown error"
1842
+ };
1843
+ }
1844
+ }
1845
+ async function se(e) {
1846
+ if (e.length > A) return {
1847
+ entries: [],
1848
+ error: `Archive too large (max ${A} bytes)`
1849
+ };
1850
+ try {
1851
+ let r = new ReadableStream({ start(c) {
1852
+ c.enqueue(e), c.close();
1853
+ } }).pipeThrough(Ie()).getReader(), n = [], s = 0;
1854
+ for (;;) {
1855
+ let { done: c, value: l } = await r.read();
1856
+ if (c) break;
1857
+ if (s += l.length, s > A) return await r.cancel(), {
1858
+ entries: [],
1859
+ error: `Decompressed archive too large (max ${A} bytes)`
1860
+ };
1861
+ n.push(l);
1862
+ }
1863
+ let a = new Uint8Array(s), o = 0;
1864
+ for (let c of n) a.set(c, o), o += c.length;
1865
+ return F(a);
1866
+ } catch (t) {
1867
+ return {
1868
+ entries: [],
1869
+ error: `Decompression failed: ${t instanceof Error ? t.message : "Unknown error"}`
1870
+ };
1871
+ }
1872
+ }
1873
+ function oe(e) {
1874
+ return e.length >= 2 && e[0] === 31 && e[1] === 139;
1875
+ }
1876
+ function ae(e) {
1877
+ return e.length >= 3 && e[0] === 66 && e[1] === 90 && e[2] === 104;
1878
+ }
1879
+ function le(e) {
1880
+ return e.length >= 6 && e[0] === 253 && e[1] === 55 && e[2] === 122 && e[3] === 88 && e[4] === 90 && e[5] === 0;
1881
+ }
1882
+ async function $t(e) {
1883
+ let t = import_lib.default.decode(Buffer.from(e));
1884
+ return new Uint8Array(t);
1885
+ }
1886
+ async function Bt(e) {
1887
+ return Le(e, 9);
1888
+ }
1889
+ async function Tt(e) {
1890
+ let i = (await Me()).unxzSync(Buffer.from(e));
1891
+ return new Uint8Array(i);
1892
+ }
1893
+ async function St(e) {
1894
+ let i = (await Me()).xzSync(Buffer.from(e));
1895
+ return new Uint8Array(i);
1896
+ }
1897
+ async function He(e) {
1898
+ return Bt(await O(e));
1899
+ }
1900
+ async function _e(e, t) {
1901
+ if (!t?.allowNativeCodecs) throw new Error("xz compression is disabled by default (native codec risk). Pass { allowNativeCodecs: true } to opt in.");
1902
+ return St(await O(e));
1903
+ }
1904
+ async function ce(e) {
1905
+ if (e.length > A) return {
1906
+ entries: [],
1907
+ error: `Archive too large (max ${A} bytes)`
1908
+ };
1909
+ try {
1910
+ let t = await $t(e);
1911
+ return t.length > A ? {
1912
+ entries: [],
1913
+ error: `Decompressed archive too large (max ${A} bytes)`
1914
+ } : F(t);
1915
+ } catch (t) {
1916
+ return {
1917
+ entries: [],
1918
+ error: t instanceof Error ? t.message : "Unknown error"
1919
+ };
1920
+ }
1921
+ }
1922
+ async function fe(e, t) {
1923
+ if (!t?.allowNativeCodecs) return {
1924
+ entries: [],
1925
+ error: "xz decompression is disabled by default (native codec risk). Pass { allowNativeCodecs: true } to opt in, or decompress the archive externally before extraction."
1926
+ };
1927
+ if (e.length > A) return {
1928
+ entries: [],
1929
+ error: `Archive too large (max ${A} bytes)`
1930
+ };
1931
+ try {
1932
+ let i = await Tt(e);
1933
+ return i.length > A ? {
1934
+ entries: [],
1935
+ error: `Decompressed archive too large (max ${A} bytes)`
1936
+ } : F(i);
1937
+ } catch (i) {
1938
+ return {
1939
+ entries: [],
1940
+ error: i instanceof Error ? i.message : "Unknown error"
1941
+ };
1942
+ }
1943
+ }
1944
+ function ue(e) {
1945
+ return e.length >= 4 && e[0] === 40 && e[1] === 181 && e[2] === 47 && e[3] === 253;
1946
+ }
1947
+ async function Ft(e) {
1948
+ let i = await (await We()).compress(Buffer.from(e), 3);
1949
+ return new Uint8Array(i);
1950
+ }
1951
+ async function It(e) {
1952
+ let i = await (await We()).decompress(Buffer.from(e));
1953
+ return new Uint8Array(i);
1954
+ }
1955
+ async function Xe(e, t) {
1956
+ if (!t?.allowNativeCodecs) throw new Error("zstd compression is disabled by default (native codec risk). Pass { allowNativeCodecs: true } to opt in.");
1957
+ return Ft(await O(e));
1958
+ }
1959
+ async function de(e, t) {
1960
+ if (!t?.allowNativeCodecs) return {
1961
+ entries: [],
1962
+ error: "zstd decompression is disabled by default (native codec risk). Pass { allowNativeCodecs: true } to opt in, or decompress the archive externally before extraction."
1963
+ };
1964
+ if (e.length > A) return {
1965
+ entries: [],
1966
+ error: `Archive too large (max ${A} bytes)`
1967
+ };
1968
+ try {
1969
+ let i = await It(e);
1970
+ return i.length > A ? {
1971
+ entries: [],
1972
+ error: `Decompressed archive too large (max ${A} bytes)`
1973
+ } : F(i);
1974
+ } catch (i) {
1975
+ return {
1976
+ entries: [],
1977
+ error: i instanceof Error ? i.message : "Unknown error"
1978
+ };
1979
+ }
1980
+ }
1981
+ function Ze(e) {
1982
+ let t = {
1983
+ create: !1,
1984
+ append: !1,
1985
+ update: !1,
1986
+ extract: !1,
1987
+ list: !1,
1988
+ file: "",
1989
+ autoCompress: !1,
1990
+ gzip: !1,
1991
+ bzip2: !1,
1992
+ xz: !1,
1993
+ zstd: !1,
1994
+ verbose: !1,
1995
+ toStdout: !1,
1996
+ keepOldFiles: !1,
1997
+ touch: !1,
1998
+ directory: "",
1999
+ preserve: !1,
2000
+ absoluteNames: !1,
2001
+ strip: 0,
2002
+ exclude: [],
2003
+ filesFrom: "",
2004
+ excludeFrom: "",
2005
+ wildcards: !1
2006
+ }, i = [], r$1 = 0;
2007
+ for (; r$1 < e.length;) {
2008
+ let n = e[r$1];
2009
+ if (n.startsWith("-") && !n.startsWith("--") && n.length > 2) {
2010
+ if (/^-\d+$/.test(n)) {
2011
+ i.push(n), r$1++;
2012
+ continue;
2013
+ }
2014
+ for (let s = 1; s < n.length; s++) {
2015
+ let a = n[s];
2016
+ switch (a) {
2017
+ case "c":
2018
+ t.create = !0;
2019
+ break;
2020
+ case "r":
2021
+ t.append = !0;
2022
+ break;
2023
+ case "u":
2024
+ t.update = !0;
2025
+ break;
2026
+ case "x":
2027
+ t.extract = !0;
2028
+ break;
2029
+ case "t":
2030
+ t.list = !0;
2031
+ break;
2032
+ case "a":
2033
+ t.autoCompress = !0;
2034
+ break;
2035
+ case "z":
2036
+ t.gzip = !0;
2037
+ break;
2038
+ case "j":
2039
+ t.bzip2 = !0;
2040
+ break;
2041
+ case "J":
2042
+ t.xz = !0;
2043
+ break;
2044
+ case "v":
2045
+ t.verbose = !0;
2046
+ break;
2047
+ case "O":
2048
+ t.toStdout = !0;
2049
+ break;
2050
+ case "k":
2051
+ t.keepOldFiles = !0;
2052
+ break;
2053
+ case "m":
2054
+ t.touch = !0;
2055
+ break;
2056
+ case "p":
2057
+ t.preserve = !0;
2058
+ break;
2059
+ case "P":
2060
+ t.absoluteNames = !0;
2061
+ break;
2062
+ case "f":
2063
+ if (s < n.length - 1) t.file = n.substring(s + 1), s = n.length;
2064
+ else {
2065
+ if (r$1++, r$1 >= e.length) return {
2066
+ ok: !1,
2067
+ error: {
2068
+ stdout: "",
2069
+ stderr: `tar: option requires an argument -- 'f'
2070
+ `,
2071
+ exitCode: 2
2072
+ }
2073
+ };
2074
+ t.file = e[r$1];
2075
+ }
2076
+ break;
2077
+ case "C":
2078
+ if (s < n.length - 1) t.directory = n.substring(s + 1), s = n.length;
2079
+ else {
2080
+ if (r$1++, r$1 >= e.length) return {
2081
+ ok: !1,
2082
+ error: {
2083
+ stdout: "",
2084
+ stderr: `tar: option requires an argument -- 'C'
2085
+ `,
2086
+ exitCode: 2
2087
+ }
2088
+ };
2089
+ t.directory = e[r$1];
2090
+ }
2091
+ break;
2092
+ case "T":
2093
+ if (s < n.length - 1) t.filesFrom = n.substring(s + 1), s = n.length;
2094
+ else {
2095
+ if (r$1++, r$1 >= e.length) return {
2096
+ ok: !1,
2097
+ error: {
2098
+ stdout: "",
2099
+ stderr: `tar: option requires an argument -- 'T'
2100
+ `,
2101
+ exitCode: 2
2102
+ }
2103
+ };
2104
+ t.filesFrom = e[r$1];
2105
+ }
2106
+ break;
2107
+ case "X":
2108
+ if (s < n.length - 1) t.excludeFrom = n.substring(s + 1), s = n.length;
2109
+ else {
2110
+ if (r$1++, r$1 >= e.length) return {
2111
+ ok: !1,
2112
+ error: {
2113
+ stdout: "",
2114
+ stderr: `tar: option requires an argument -- 'X'
2115
+ `,
2116
+ exitCode: 2
2117
+ }
2118
+ };
2119
+ t.excludeFrom = e[r$1];
2120
+ }
2121
+ break;
2122
+ default: return {
2123
+ ok: !1,
2124
+ error: r("tar", `-${a}`)
2125
+ };
2126
+ }
2127
+ }
2128
+ r$1++;
2129
+ continue;
2130
+ }
2131
+ if (n === "-c" || n === "--create") t.create = !0;
2132
+ else if (n === "-r" || n === "--append") t.append = !0;
2133
+ else if (n === "-u" || n === "--update") t.update = !0;
2134
+ else if (n === "-x" || n === "--extract" || n === "--get") t.extract = !0;
2135
+ else if (n === "-t" || n === "--list") t.list = !0;
2136
+ else if (n === "-a" || n === "--auto-compress") t.autoCompress = !0;
2137
+ else if (n === "-z" || n === "--gzip" || n === "--gunzip") t.gzip = !0;
2138
+ else if (n === "-j" || n === "--bzip2") t.bzip2 = !0;
2139
+ else if (n === "-J" || n === "--xz") t.xz = !0;
2140
+ else if (n === "--zstd") t.zstd = !0;
2141
+ else if (n === "-v" || n === "--verbose") t.verbose = !0;
2142
+ else if (n === "-O" || n === "--to-stdout") t.toStdout = !0;
2143
+ else if (n === "-k" || n === "--keep-old-files") t.keepOldFiles = !0;
2144
+ else if (n === "-m" || n === "--touch") t.touch = !0;
2145
+ else if (n === "--wildcards") t.wildcards = !0;
2146
+ else if (n === "-p" || n === "--preserve" || n === "--preserve-permissions") t.preserve = !0;
2147
+ else if (n === "-P" || n === "--absolute-names") t.absoluteNames = !0;
2148
+ else if (n === "-f" || n === "--file") {
2149
+ if (r$1++, r$1 >= e.length) return {
2150
+ ok: !1,
2151
+ error: {
2152
+ stdout: "",
2153
+ stderr: `tar: option requires an argument -- 'f'
2154
+ `,
2155
+ exitCode: 2
2156
+ }
2157
+ };
2158
+ t.file = e[r$1];
2159
+ } else if (n.startsWith("--file=")) t.file = n.substring(7);
2160
+ else if (n === "-C" || n === "--directory") {
2161
+ if (r$1++, r$1 >= e.length) return {
2162
+ ok: !1,
2163
+ error: {
2164
+ stdout: "",
2165
+ stderr: `tar: option requires an argument -- 'C'
2166
+ `,
2167
+ exitCode: 2
2168
+ }
2169
+ };
2170
+ t.directory = e[r$1];
2171
+ } else if (n.startsWith("--directory=")) t.directory = n.substring(12);
2172
+ else if (n.startsWith("--strip-components=") || n.startsWith("--strip=")) {
2173
+ let s = n.includes("--strip-components=") ? n.substring(19) : n.substring(8), a = parseInt(s, 10);
2174
+ if (Number.isNaN(a) || a < 0) return {
2175
+ ok: !1,
2176
+ error: {
2177
+ stdout: "",
2178
+ stderr: `tar: invalid number for --strip: '${s}'
2179
+ `,
2180
+ exitCode: 2
2181
+ }
2182
+ };
2183
+ t.strip = a;
2184
+ } else if (n.startsWith("--exclude=")) t.exclude.push(n.substring(10));
2185
+ else if (n === "--exclude") {
2186
+ if (r$1++, r$1 >= e.length) return {
2187
+ ok: !1,
2188
+ error: {
2189
+ stdout: "",
2190
+ stderr: `tar: option '--exclude' requires an argument
2191
+ `,
2192
+ exitCode: 2
2193
+ }
2194
+ };
2195
+ t.exclude.push(e[r$1]);
2196
+ } else if (n === "-T" || n === "--files-from") {
2197
+ if (r$1++, r$1 >= e.length) return {
2198
+ ok: !1,
2199
+ error: {
2200
+ stdout: "",
2201
+ stderr: `tar: option requires an argument -- 'T'
2202
+ `,
2203
+ exitCode: 2
2204
+ }
2205
+ };
2206
+ t.filesFrom = e[r$1];
2207
+ } else if (n.startsWith("--files-from=")) t.filesFrom = n.substring(13);
2208
+ else if (n === "-X" || n === "--exclude-from") {
2209
+ if (r$1++, r$1 >= e.length) return {
2210
+ ok: !1,
2211
+ error: {
2212
+ stdout: "",
2213
+ stderr: `tar: option requires an argument -- 'X'
2214
+ `,
2215
+ exitCode: 2
2216
+ }
2217
+ };
2218
+ t.excludeFrom = e[r$1];
2219
+ } else if (n.startsWith("--exclude-from=")) t.excludeFrom = n.substring(15);
2220
+ else if (n === "--") {
2221
+ i.push(...e.slice(r$1 + 1));
2222
+ break;
2223
+ } else {
2224
+ if (n.startsWith("-")) return {
2225
+ ok: !1,
2226
+ error: r("tar", n)
2227
+ };
2228
+ i.push(n);
2229
+ }
2230
+ r$1++;
2231
+ }
2232
+ return {
2233
+ ok: !0,
2234
+ options: t,
2235
+ files: i
2236
+ };
2237
+ }
2238
+ var Ge = 100, Pt = {
2239
+ name: "tar",
2240
+ summary: "manipulate tape archives",
2241
+ usage: "tar [options] [file...]",
2242
+ description: [
2243
+ "Create, extract, or list contents of tar archives.",
2244
+ "",
2245
+ "One of -c, -r, -u, -x, or -t is required to specify the operation."
2246
+ ],
2247
+ options: [
2248
+ "-c, --create create a new archive",
2249
+ "-r, --append append files to the end of an archive",
2250
+ "-u, --update only append files newer than copy in archive",
2251
+ "-x, --extract extract files from an archive",
2252
+ "-t, --list list contents of an archive",
2253
+ "-f, --file=ARCHIVE use archive file ARCHIVE",
2254
+ "-a, --auto-compress use archive suffix to determine compression",
2255
+ "-z, --gzip filter archive through gzip",
2256
+ "-j, --bzip2 filter archive through bzip2",
2257
+ "-J, --xz filter archive through xz",
2258
+ "--zstd filter archive through zstd",
2259
+ "-v, --verbose verbosely list files processed",
2260
+ "-O, --to-stdout extract files to standard output",
2261
+ "-k, --keep-old-files don't replace existing files when extracting",
2262
+ "-m, --touch don't extract file modified time",
2263
+ "-C, --directory=DIR change to directory DIR before performing operations",
2264
+ "-p, --preserve preserve permissions",
2265
+ "-P, --absolute-names do not strip leading '/' or block '..' paths",
2266
+ "-T, --files-from=FILE read files to extract/create from FILE",
2267
+ "-X, --exclude-from=FILE read exclude patterns from FILE",
2268
+ "--strip=N strip N leading path components on extraction",
2269
+ "--exclude=PATTERN exclude files matching PATTERN",
2270
+ "--wildcards use wildcards for pattern matching",
2271
+ " --help display this help and exit"
2272
+ ],
2273
+ examples: [
2274
+ "tar -cvf archive.tar file1 file2 Create archive from files",
2275
+ "tar -czvf archive.tar.gz dir/ Create gzip-compressed archive",
2276
+ "tar -cjvf archive.tar.bz2 dir/ Create bzip2-compressed archive",
2277
+ "tar -rf archive.tar newfile.txt Append file to archive",
2278
+ "tar -uf archive.tar dir/ Update archive with newer files",
2279
+ "tar -xvf archive.tar Extract archive",
2280
+ "tar -xvf archive.tar -C /tmp Extract to /tmp",
2281
+ "tar -tvf archive.tar List archive contents",
2282
+ "tar -xzf archive.tar.gz Extract gzip archive",
2283
+ "tar -xf archive.tar file1.txt Extract specific file",
2284
+ "tar -xOf archive.tar file.txt Extract file to stdout",
2285
+ "tar -xf archive.tar --wildcards '*.txt' Extract matching files"
2286
+ ]
2287
+ };
2288
+ function me(e, t) {
2289
+ let i = e.includes("/") ? e.substring(e.lastIndexOf("/") + 1) : e;
2290
+ for (let r of t) {
2291
+ let n = r.replace(/[.+^${}()|[\]\\]/g, "\\$&").replace(/\*\*/g, "<<<GLOBSTAR>>>").replace(/\*/g, "[^/]*").replace(/<<<GLOBSTAR>>>/g, ".*").replace(/\?/g, ".");
2292
+ if (I1(`^${n}$`).test(e) || I1(`^${n}/`).test(e) || !r.includes("/") && I1(`^${n}$`).test(i)) return !0;
2293
+ }
2294
+ return !1;
2295
+ }
2296
+ function Y(e, t) {
2297
+ let i = t.replace(/[.+^${}()|[\]\\]/g, "\\$&").replace(/\*\*/g, "<<<GLOBSTAR>>>").replace(/\*/g, "[^/]*").replace(/<<<GLOBSTAR>>>/g, ".*").replace(/\?/g, "."), r = e.includes("/") ? e.substring(e.lastIndexOf("/") + 1) : e;
2298
+ return I1(`^${i}$`).test(e) || I1(`^${i}$`).test(r);
2299
+ }
2300
+ function qe(e, t) {
2301
+ if (t <= 0) return e;
2302
+ let i = e.split("/").filter((r) => r !== "");
2303
+ return i.length <= t ? "" : i.slice(t).join("/");
2304
+ }
2305
+ function Ye(e) {
2306
+ return e.split("/").some((t) => t === "..");
2307
+ }
2308
+ function Ot(e, t) {
2309
+ if (t) return { safePath: e };
2310
+ let i = e.replace(/^\/+/, "");
2311
+ return i.length === 0 ? { safePath: "" } : Ye(i) ? { error: "Path contains '..'" } : { safePath: i };
2312
+ }
2313
+ function Ut(e) {
2314
+ return `${[
2315
+ "Jan",
2316
+ "Feb",
2317
+ "Mar",
2318
+ "Apr",
2319
+ "May",
2320
+ "Jun",
2321
+ "Jul",
2322
+ "Aug",
2323
+ "Sep",
2324
+ "Oct",
2325
+ "Nov",
2326
+ "Dec"
2327
+ ][e.getMonth()]} ${e.getDate().toString().padStart(2, " ")} ${e.getHours().toString().padStart(2, "0")}:${e.getMinutes().toString().padStart(2, "0")}`;
2328
+ }
2329
+ async function K(e, t, i, r) {
2330
+ let n = [], s = [], a = e.fs.resolvePath(t, i);
2331
+ try {
2332
+ let o = await e.fs.stat(a);
2333
+ if (me(i, r)) return {
2334
+ entries: n,
2335
+ errors: s
2336
+ };
2337
+ if (o.isDirectory) {
2338
+ n.push({
2339
+ name: i,
2340
+ isDirectory: !0,
2341
+ mode: o.mode,
2342
+ mtime: o.mtime
2343
+ });
2344
+ let c = await e.fs.readdir(a);
2345
+ for (let l = 0; l < c.length; l += Ge) {
2346
+ let f = c.slice(l, l + Ge), u = await Promise.all(f.map((y) => K(e, t, i ? `${i}/${y}` : y, r)));
2347
+ for (let y of u) n.push(...y.entries), s.push(...y.errors);
2348
+ }
2349
+ } else if (o.isFile) {
2350
+ let c = await e.fs.readFileBuffer(a);
2351
+ n.push({
2352
+ name: i,
2353
+ content: c,
2354
+ mode: o.mode,
2355
+ mtime: o.mtime
2356
+ });
2357
+ } else if (o.isSymbolicLink) {
2358
+ let c = await e.fs.readlink(a);
2359
+ n.push({
2360
+ name: i,
2361
+ isSymlink: !0,
2362
+ linkTarget: c,
2363
+ mode: o.mode,
2364
+ mtime: o.mtime
2365
+ });
2366
+ }
2367
+ } catch (o) {
2368
+ let c = o instanceof Error ? o.message : "unknown error";
2369
+ s.push(`tar: ${i}: ${c}`);
2370
+ }
2371
+ return {
2372
+ entries: n,
2373
+ errors: s
2374
+ };
2375
+ }
2376
+ async function Nt(e, t, i) {
2377
+ if (i.length === 0) return {
2378
+ stdout: "",
2379
+ stderr: `tar: Cowardly refusing to create an empty archive
2380
+ `,
2381
+ exitCode: 2
2382
+ };
2383
+ let r = t.directory ? e.fs.resolvePath(e.cwd, t.directory) : e.cwd, n = [], s = [], a = "";
2384
+ for (let f of i) {
2385
+ let { entries: u, errors: y } = await K(e, r, f, t.exclude);
2386
+ if (n.push(...u), s.push(...y), t.verbose) for (let g of u) a += `${g.name}${g.isDirectory ? "/" : ""}
2387
+ `;
2388
+ }
2389
+ if (n.length === 0 && s.length > 0) return {
2390
+ stdout: "",
2391
+ stderr: `${s.join(`
2392
+ `)}
2393
+ `,
2394
+ exitCode: 2
2395
+ };
2396
+ let o;
2397
+ try {
2398
+ t.gzip ? o = await je(n) : t.bzip2 ? o = await He(n) : t.xz ? o = await _e(n) : t.zstd ? o = await Xe(n) : o = await O(n);
2399
+ } catch (f) {
2400
+ return {
2401
+ stdout: "",
2402
+ stderr: `tar: error creating archive: ${f instanceof Error ? f.message : "unknown error"}
2403
+ `,
2404
+ exitCode: 2
2405
+ };
2406
+ }
2407
+ let c = "";
2408
+ if (t.file && t.file !== "-") {
2409
+ let f = e.fs.resolvePath(e.cwd, t.file);
2410
+ try {
2411
+ await e.fs.writeFile(f, o);
2412
+ } catch (u) {
2413
+ let y = u instanceof Error ? u.message : "unknown error";
2414
+ return {
2415
+ stdout: "",
2416
+ stderr: `tar: ${t.file}: ${y}
2417
+ `,
2418
+ exitCode: 2
2419
+ };
2420
+ }
2421
+ } else c = Buffer.from(o).toString("latin1");
2422
+ let l = a;
2423
+ return s.length > 0 && (l += `${s.join(`
2424
+ `)}
2425
+ `), {
2426
+ stdout: c,
2427
+ stderr: l,
2428
+ exitCode: s.length > 0 ? 2 : 0,
2429
+ stdoutKind: c.length > 0 ? "bytes" : "text"
2430
+ };
2431
+ }
2432
+ async function Lt(e, t, i) {
2433
+ if (!t.file || t.file === "-") return {
2434
+ stdout: "",
2435
+ stderr: `tar: Cannot append to stdin/stdout
2436
+ `,
2437
+ exitCode: 2
2438
+ };
2439
+ if (i.length === 0) return {
2440
+ stdout: "",
2441
+ stderr: `tar: Cowardly refusing to append nothing to archive
2442
+ `,
2443
+ exitCode: 2
2444
+ };
2445
+ let r = e.fs.resolvePath(e.cwd, t.file), n;
2446
+ try {
2447
+ n = await e.fs.readFileBuffer(r);
2448
+ } catch {
2449
+ return {
2450
+ stdout: "",
2451
+ stderr: `tar: ${t.file}: Cannot open: No such file or directory
2452
+ `,
2453
+ exitCode: 2
2454
+ };
2455
+ }
2456
+ let s = await F(n);
2457
+ if (s.error) return {
2458
+ stdout: "",
2459
+ stderr: `tar: ${s.error}
2460
+ `,
2461
+ exitCode: 2
2462
+ };
2463
+ let a = s.entries.map((d) => ({
2464
+ name: d.name,
2465
+ content: d.content,
2466
+ mode: d.mode,
2467
+ mtime: d.mtime,
2468
+ isDirectory: d.type === "directory",
2469
+ isSymlink: d.type === "symlink",
2470
+ linkTarget: d.linkTarget,
2471
+ uid: d.uid,
2472
+ gid: d.gid
2473
+ })), o = t.directory ? e.fs.resolvePath(e.cwd, t.directory) : e.cwd, c = [], l = [], f = "";
2474
+ for (let d of i) {
2475
+ let { entries: p, errors: m } = await K(e, o, d, t.exclude);
2476
+ if (c.push(...p), l.push(...m), t.verbose) for (let x of p) f += `${x.name}${x.isDirectory ? "/" : ""}
2477
+ `;
2478
+ }
2479
+ let u = [...a, ...c], y;
2480
+ try {
2481
+ y = await O(u);
2482
+ } catch (d) {
2483
+ return {
2484
+ stdout: "",
2485
+ stderr: `tar: error creating archive: ${d instanceof Error ? d.message : "unknown error"}
2486
+ `,
2487
+ exitCode: 2
2488
+ };
2489
+ }
2490
+ try {
2491
+ await e.fs.writeFile(r, y);
2492
+ } catch (d) {
2493
+ let p = d instanceof Error ? d.message : "unknown error";
2494
+ return {
2495
+ stdout: "",
2496
+ stderr: `tar: ${t.file}: ${p}
2497
+ `,
2498
+ exitCode: 2
2499
+ };
2500
+ }
2501
+ let g = f;
2502
+ return l.length > 0 && (g += `${l.join(`
2503
+ `)}
2504
+ `), {
2505
+ stdout: "",
2506
+ stderr: g,
2507
+ exitCode: l.length > 0 ? 2 : 0
2508
+ };
2509
+ }
2510
+ async function Dt(e, t, i) {
2511
+ if (!t.file || t.file === "-") return {
2512
+ stdout: "",
2513
+ stderr: `tar: Cannot update stdin/stdout
2514
+ `,
2515
+ exitCode: 2
2516
+ };
2517
+ if (i.length === 0) return {
2518
+ stdout: "",
2519
+ stderr: `tar: Cowardly refusing to update with nothing
2520
+ `,
2521
+ exitCode: 2
2522
+ };
2523
+ let r = e.fs.resolvePath(e.cwd, t.file), n;
2524
+ try {
2525
+ n = await e.fs.readFileBuffer(r);
2526
+ } catch {
2527
+ return {
2528
+ stdout: "",
2529
+ stderr: `tar: ${t.file}: Cannot open: No such file or directory
2530
+ `,
2531
+ exitCode: 2
2532
+ };
2533
+ }
2534
+ let s = await F(n);
2535
+ if (s.error) return {
2536
+ stdout: "",
2537
+ stderr: `tar: ${s.error}
2538
+ `,
2539
+ exitCode: 2
2540
+ };
2541
+ let a = /* @__PURE__ */ new Map();
2542
+ for (let m of s.entries) a.set(m.name, m.mtime);
2543
+ let o = t.directory ? e.fs.resolvePath(e.cwd, t.directory) : e.cwd, c = [], l = [], f = "";
2544
+ for (let m of i) {
2545
+ let { entries: x, errors: b } = await K(e, o, m, t.exclude);
2546
+ l.push(...b);
2547
+ for (let E of x) {
2548
+ let v = a.get(E.name);
2549
+ (!v || E.mtime && E.mtime.getTime() > v.getTime()) && (c.push(E), t.verbose && (f += `${E.name}${E.isDirectory ? "/" : ""}
2550
+ `));
2551
+ }
2552
+ }
2553
+ if (c.length === 0) {
2554
+ let m = "";
2555
+ return l.length > 0 && (m = `${l.join(`
2556
+ `)}
2557
+ `), {
2558
+ stdout: "",
2559
+ stderr: m,
2560
+ exitCode: l.length > 0 ? 2 : 0
2561
+ };
2562
+ }
2563
+ let u = new Set(c.map((m) => m.name)), g = [...s.entries.filter((m) => !u.has(m.name)).map((m) => ({
2564
+ name: m.name,
2565
+ content: m.content,
2566
+ mode: m.mode,
2567
+ mtime: m.mtime,
2568
+ isDirectory: m.type === "directory",
2569
+ isSymlink: m.type === "symlink",
2570
+ linkTarget: m.linkTarget,
2571
+ uid: m.uid,
2572
+ gid: m.gid
2573
+ })), ...c], d;
2574
+ try {
2575
+ d = await O(g);
2576
+ } catch (m) {
2577
+ return {
2578
+ stdout: "",
2579
+ stderr: `tar: error creating archive: ${m instanceof Error ? m.message : "unknown error"}
2580
+ `,
2581
+ exitCode: 2
2582
+ };
2583
+ }
2584
+ try {
2585
+ await e.fs.writeFile(r, d);
2586
+ } catch (m) {
2587
+ let x = m instanceof Error ? m.message : "unknown error";
2588
+ return {
2589
+ stdout: "",
2590
+ stderr: `tar: ${t.file}: ${x}
2591
+ `,
2592
+ exitCode: 2
2593
+ };
2594
+ }
2595
+ let p = f;
2596
+ return l.length > 0 && (p += `${l.join(`
2597
+ `)}
2598
+ `), {
2599
+ stdout: "",
2600
+ stderr: p,
2601
+ exitCode: l.length > 0 ? 2 : 0
2602
+ };
2603
+ }
2604
+ async function Rt(e, t, i) {
2605
+ let r;
2606
+ if (t.file && t.file !== "-") {
2607
+ let p = e.fs.resolvePath(e.cwd, t.file);
2608
+ try {
2609
+ r = await e.fs.readFileBuffer(p);
2610
+ } catch {
2611
+ return {
2612
+ stdout: "",
2613
+ stderr: `tar: ${t.file}: Cannot open: No such file or directory
2614
+ `,
2615
+ exitCode: 2
2616
+ };
2617
+ }
2618
+ } else r = Uint8Array.from(e.stdin, (p) => p.charCodeAt(0));
2619
+ let n, s = t.gzip || oe(r), a = t.bzip2 || ae(r), o = t.xz || le(r), c = t.zstd || ue(r);
2620
+ if (s ? n = await se(r) : a ? n = await ce(r) : o ? n = await fe(r) : c ? n = await de(r) : n = await F(r), n.error) return {
2621
+ stdout: "",
2622
+ stderr: `tar: ${n.error}
2623
+ `,
2624
+ exitCode: 2
2625
+ };
2626
+ let l = t.directory ? e.fs.resolvePath(e.cwd, t.directory) : e.cwd, f = t.absoluteNames ? i : i.map((p) => p.replace(/^\/+/, "")).filter((p) => p.length > 0), u = "", y = "", g = [];
2627
+ if (t.directory && !t.toStdout) try {
2628
+ await e.fs.mkdir(l, { recursive: !0 });
2629
+ } catch {}
2630
+ for (let p of n.entries) {
2631
+ let m = qe(p.name, t.strip);
2632
+ if (!m) continue;
2633
+ let x = Ot(m, t.absoluteNames);
2634
+ if (x.error) {
2635
+ g.push(`tar: ${m}: ${x.error}`);
2636
+ continue;
2637
+ }
2638
+ let b = x.safePath ?? "";
2639
+ if (!b) continue;
2640
+ let E = b.endsWith("/") ? b.slice(0, -1) : b;
2641
+ if (f.length > 0) {
2642
+ let $;
2643
+ if (t.wildcards ? $ = f.some((z) => Y(b, z) || Y(E, z) || b.startsWith(`${z}/`)) : $ = f.some((z) => b === z || b.startsWith(`${z}/`) || E === z), !$) continue;
2644
+ }
2645
+ if (me(b, t.exclude)) continue;
2646
+ let v = e.fs.resolvePath(l, b);
2647
+ try {
2648
+ if (p.type === "directory") {
2649
+ if (t.toStdout) continue;
2650
+ await e.fs.mkdir(v, { recursive: !0 }), t.verbose && (u += `${b}
2651
+ `);
2652
+ } else if (p.type === "file") {
2653
+ if (t.toStdout) {
2654
+ y += new TextDecoder().decode(p.content), t.verbose && (u += `${b}
2655
+ `);
2656
+ continue;
2657
+ }
2658
+ if (t.keepOldFiles) try {
2659
+ await e.fs.stat(v), t.verbose && (u += `${b}: not overwritten, file exists
2660
+ `);
2661
+ continue;
2662
+ } catch {}
2663
+ let $ = v.substring(0, v.lastIndexOf("/"));
2664
+ if ($) try {
2665
+ await e.fs.mkdir($, { recursive: !0 });
2666
+ } catch {}
2667
+ if (await e.fs.writeFile(v, p.content), t.preserve && p.mode) try {
2668
+ await e.fs.chmod(v, p.mode);
2669
+ } catch {}
2670
+ t.verbose && (u += `${b}
2671
+ `);
2672
+ } else if (p.type === "symlink" && p.linkTarget) {
2673
+ if (t.toStdout) continue;
2674
+ if (!t.absoluteNames && (p.linkTarget.startsWith("/") || Ye(p.linkTarget))) {
2675
+ g.push(`tar: ${b}: unsafe symlink target`);
2676
+ continue;
2677
+ }
2678
+ if (t.keepOldFiles) try {
2679
+ await e.fs.stat(v), t.verbose && (u += `${b}: not overwritten, file exists
2680
+ `);
2681
+ continue;
2682
+ } catch {}
2683
+ let $ = v.substring(0, v.lastIndexOf("/"));
2684
+ if ($) try {
2685
+ await e.fs.mkdir($, { recursive: !0 });
2686
+ } catch {}
2687
+ try {
2688
+ await e.fs.symlink(p.linkTarget, v);
2689
+ } catch {}
2690
+ t.verbose && (u += `${b}
2691
+ `);
2692
+ }
2693
+ } catch ($) {
2694
+ let z = $ instanceof Error ? $.message : "unknown error";
2695
+ g.push(`tar: ${b}: ${z}`);
2696
+ }
2697
+ }
2698
+ let d = u;
2699
+ return g.length > 0 && (d += `${g.join(`
2700
+ `)}
2701
+ `), {
2702
+ stdout: y,
2703
+ stderr: d,
2704
+ exitCode: g.length > 0 ? 2 : 0
2705
+ };
2706
+ }
2707
+ async function Mt(e, t, i) {
2708
+ let r;
2709
+ if (t.file && t.file !== "-") {
2710
+ let f = e.fs.resolvePath(e.cwd, t.file);
2711
+ try {
2712
+ r = await e.fs.readFileBuffer(f);
2713
+ } catch {
2714
+ return {
2715
+ stdout: "",
2716
+ stderr: `tar: ${t.file}: Cannot open: No such file or directory
2717
+ `,
2718
+ exitCode: 2
2719
+ };
2720
+ }
2721
+ } else r = Uint8Array.from(e.stdin, (f) => f.charCodeAt(0));
2722
+ let n, s = t.gzip || oe(r), a = t.bzip2 || ae(r), o = t.xz || le(r), c = t.zstd || ue(r);
2723
+ if (s ? n = await se(r) : a ? n = await ce(r) : o ? n = await fe(r) : c ? n = await de(r) : n = await F(r), n.error) return {
2724
+ stdout: "",
2725
+ stderr: `tar: ${n.error}
2726
+ `,
2727
+ exitCode: 2
2728
+ };
2729
+ let l = "";
2730
+ for (let f of n.entries) {
2731
+ let u = qe(f.name, t.strip);
2732
+ if (!u) continue;
2733
+ let y = u.endsWith("/") ? u.slice(0, -1) : u;
2734
+ if (i.length > 0) {
2735
+ let g;
2736
+ if (t.wildcards ? g = i.some((d) => Y(u, d) || Y(y, d) || u.startsWith(`${d}/`)) : g = i.some((d) => u === d || u.startsWith(`${d}/`) || y === d), !g) continue;
2737
+ }
2738
+ if (!me(u, t.exclude)) if (t.verbose) {
2739
+ let g = f.type === "directory", d = x(f.mode, g), p = `${f.uid}/${f.gid}`, m = f.size.toString().padStart(8, " "), x$1 = Ut(f.mtime), b = `${d} ${p.padEnd(10)} ${m} ${x$1} ${u}`;
2740
+ f.type === "symlink" && f.linkTarget && (b += ` -> ${f.linkTarget}`), l += `${b}
2741
+ `;
2742
+ } else l += `${u}
2743
+ `;
2744
+ }
2745
+ return {
2746
+ stdout: l,
2747
+ stderr: "",
2748
+ exitCode: 0
2749
+ };
2750
+ }
2751
+ var sr = {
2752
+ name: "tar",
2753
+ async execute(e, t) {
2754
+ if (o(e)) return s(Pt);
2755
+ let i = Ze(e);
2756
+ if (!i.ok) return i.error;
2757
+ let { options: r, files: n } = i, s$1 = [
2758
+ r.create,
2759
+ r.append,
2760
+ r.update,
2761
+ r.extract,
2762
+ r.list
2763
+ ].filter(Boolean).length;
2764
+ if (s$1 === 0) return {
2765
+ stdout: "",
2766
+ stderr: `tar: You must specify one of -c, -r, -u, -x, or -t
2767
+ `,
2768
+ exitCode: 2
2769
+ };
2770
+ if (s$1 > 1) return {
2771
+ stdout: "",
2772
+ stderr: `tar: You may not specify more than one of -c, -r, -u, -x, or -t
2773
+ `,
2774
+ exitCode: 2
2775
+ };
2776
+ if (r.autoCompress && r.file && r.create) {
2777
+ let c = r.file.toLowerCase();
2778
+ c.endsWith(".tar.gz") || c.endsWith(".tgz") ? r.gzip = !0 : c.endsWith(".tar.bz2") || c.endsWith(".tbz2") ? r.bzip2 = !0 : c.endsWith(".tar.xz") || c.endsWith(".txz") ? r.xz = !0 : (c.endsWith(".tar.zst") || c.endsWith(".tzst")) && (r.zstd = !0);
2779
+ }
2780
+ let a = [
2781
+ r.gzip,
2782
+ r.bzip2,
2783
+ r.xz,
2784
+ r.zstd
2785
+ ].filter(Boolean).length;
2786
+ if (a > 1) return {
2787
+ stdout: "",
2788
+ stderr: `tar: You may not specify more than one compression option
2789
+ `,
2790
+ exitCode: 2
2791
+ };
2792
+ if ((r.append || r.update) && a > 0) return {
2793
+ stdout: "",
2794
+ stderr: `tar: Cannot append/update compressed archives - decompress first
2795
+ `,
2796
+ exitCode: 2
2797
+ };
2798
+ let o$1 = n;
2799
+ if (r.filesFrom) {
2800
+ let c = t.fs.resolvePath(t.cwd, r.filesFrom);
2801
+ try {
2802
+ let f = (await t.fs.readFile(c)).split(`
2803
+ `).map((u) => u.trim()).filter((u) => u.length > 0 && !u.startsWith("#"));
2804
+ o$1 = [...n, ...f];
2805
+ } catch {
2806
+ return {
2807
+ stdout: "",
2808
+ stderr: `tar: ${r.filesFrom}: Cannot open: No such file or directory
2809
+ `,
2810
+ exitCode: 2
2811
+ };
2812
+ }
2813
+ }
2814
+ if (r.excludeFrom) {
2815
+ let c = t.fs.resolvePath(t.cwd, r.excludeFrom);
2816
+ try {
2817
+ let f = (await t.fs.readFile(c)).split(`
2818
+ `).map((u) => u.trim()).filter((u) => u.length > 0 && !u.startsWith("#"));
2819
+ r.exclude.push(...f);
2820
+ } catch {
2821
+ return {
2822
+ stdout: "",
2823
+ stderr: `tar: ${r.excludeFrom}: Cannot open: No such file or directory
2824
+ `,
2825
+ exitCode: 2
2826
+ };
2827
+ }
2828
+ }
2829
+ return r.create ? Nt(t, r, o$1) : r.append ? Lt(t, r, o$1) : r.update ? Dt(t, r, o$1) : r.extract ? Rt(t, r, o$1) : Mt(t, r, o$1);
2830
+ }
2831
+ };
2832
+ //#endregion
2833
+ //#region ../../node_modules/.pnpm/just-bash@3.0.1/node_modules/just-bash/dist/bundle/chunks/tar-STHHZTZ6.js
2834
+ createRequire(import.meta.url);
2835
+ //#endregion
2836
+ export { sr as tarCommand };
2837
+
2838
+ //# sourceMappingURL=tar-STHHZTZ6-DRf60e-G.mjs.map