binary-collections 2.0.11 → 2.0.13

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 (330) hide show
  1. package/binaries/binary-executor.cjs +89 -13
  2. package/binaries/clean-nodemodule.cjs +89 -13
  3. package/binaries/clean-nodemodules.cjs +89 -13
  4. package/binaries/dev.cjs +89 -13
  5. package/binaries/empty.cjs +89 -13
  6. package/binaries/git-reduce-size.cjs +89 -13
  7. package/binaries/javakill.cjs +89 -13
  8. package/binaries/kill-process.cjs +89 -13
  9. package/binaries/nodekill.cjs +89 -13
  10. package/binaries/prod.cjs +89 -13
  11. package/binaries/py.cjs +89 -13
  12. package/binaries/rmfind.cjs +89 -13
  13. package/binaries/rmx +15 -1
  14. package/binaries/rmx.cjs +89 -13
  15. package/binaries/rmx.cmd +12 -0
  16. package/binaries/submodule-token.cjs +89 -13
  17. package/binaries/test-cjs +9 -1
  18. package/binaries/test-cjs.cjs +89 -13
  19. package/binaries/test-cjs.cmd +16 -1
  20. package/binaries/test-esm +16 -0
  21. package/binaries/test-esm.cjs +254 -0
  22. package/binaries/test-esm.cmd +23 -0
  23. package/binaries/yarn-clean +1 -1
  24. package/binaries/yarn-clean.cjs +89 -13
  25. package/binaries/yarn-clean.cmd +1 -1
  26. package/binaries/yarn-clean.py +33 -15
  27. package/binaries/yc +131 -0
  28. package/binaries/yc.cjs +254 -0
  29. package/binaries/ycw +256 -0
  30. package/binaries/ycw.cjs +254 -0
  31. package/docs-src/binary-collections.md +34 -0
  32. package/docs-src/changelog.md +26 -0
  33. package/docs-src/clean-github-actions-caches.md +91 -2
  34. package/docs-src/copy-move-file.md +59 -0
  35. package/docs-src/del-gradle.md +17 -0
  36. package/docs-src/del-ps.md +28 -0
  37. package/docs-src/downloader.md +62 -0
  38. package/docs-src/env-helpers.md +29 -0
  39. package/docs-src/find-node-modules.md +17 -0
  40. package/docs-src/git-diff.md +33 -0
  41. package/docs-src/git-fix.md +34 -0
  42. package/docs-src/git-purge.md +17 -0
  43. package/docs-src/git-reduce-size.md +17 -0
  44. package/docs-src/git-undo.md +21 -0
  45. package/docs-src/kill-night-crows.md +26 -0
  46. package/docs-src/node-cache-cleaner.md +182 -0
  47. package/docs-src/node-executor.md +50 -0
  48. package/docs-src/node-package-packer.md +48 -0
  49. package/docs-src/npm-run-series.md +43 -0
  50. package/docs-src/package-resolutions-updater.md +22 -0
  51. package/docs-src/php-cs-fixer-staged.md +19 -0
  52. package/docs-src/print-directory-tree.md +35 -0
  53. package/docs-src/print-tarball-tree.md +55 -0
  54. package/docs-src/py.md +19 -0
  55. package/docs-src/remove-module.md +32 -0
  56. package/docs-src/rmfind-rmx.md +21 -0
  57. package/docs-src/rmpath.md +38 -0
  58. package/docs-src/run-by-checksum.md +87 -0
  59. package/docs-src/submodule-install.md +31 -0
  60. package/docs-src/submodule-remove.md +22 -0
  61. package/docs-src/submodule-token.md +17 -0
  62. package/docs-src/test-runners.md +21 -0
  63. package/docs-src/yarn-install.md +31 -0
  64. package/docs-src/yarn-reinstall.md +27 -0
  65. package/lib/binary-collections/config.cjs +126 -0
  66. package/lib/binary-collections/config.mjs +7 -0
  67. package/lib/binary-collections/executeScript.cjs +19 -0
  68. package/lib/binary-collections/executeScript.d.cts +12 -0
  69. package/lib/binary-collections/executeScript.mjs +6 -0
  70. package/lib/binary-collections/findScript.cjs +309 -0
  71. package/lib/binary-collections/findScript.d.cts +12 -0
  72. package/lib/binary-collections/findScript.mjs +7 -0
  73. package/lib/binary-collections/listScript.cjs +291 -0
  74. package/lib/binary-collections/listScript.d.cts +19 -0
  75. package/lib/binary-collections/listScript.mjs +7 -0
  76. package/lib/binary-collections.cjs +264 -157
  77. package/lib/binary-collections.mjs +26 -286
  78. package/lib/changelog.cjs +9 -14
  79. package/lib/changelog.mjs +2 -2
  80. package/lib/chunk-2MN4VPV2.mjs +246 -0
  81. package/lib/chunk-6C7KTYGZ.mjs +41 -0
  82. package/lib/{chunk-Z6JLYU2J.mjs → chunk-6RK5UCTP.mjs} +7 -12
  83. package/lib/chunk-CD3HF3LK.mjs +190 -0
  84. package/lib/chunk-FLYSZFLW.mjs +61 -0
  85. package/lib/{chunk-N436BNBK.mjs → chunk-GAGABICI.mjs} +19 -13
  86. package/lib/chunk-H44UWUFY.mjs +105 -0
  87. package/lib/chunk-KLKAIFKI.mjs +40 -0
  88. package/lib/chunk-LVSPEFU2.mjs +86 -0
  89. package/lib/{chunk-RWLXRTYP.mjs → chunk-MGPYPKIE.mjs} +2 -2
  90. package/lib/chunk-NGFK3EYW.mjs +28 -0
  91. package/lib/chunk-NQXUYO67.mjs +253 -0
  92. package/lib/chunk-NVEG3LEZ.mjs +143 -0
  93. package/lib/chunk-OBXLTXFJ.mjs +34 -0
  94. package/lib/chunk-OGXVGBRI.mjs +29 -0
  95. package/lib/chunk-OXV52GD5.mjs +62 -0
  96. package/lib/chunk-PXBMHE7O.mjs +35 -0
  97. package/lib/chunk-QD4T255Z.mjs +40 -0
  98. package/lib/chunk-QII2EKCS.mjs +26 -0
  99. package/lib/chunk-R5FJOR63.mjs +47 -0
  100. package/lib/chunk-RDGDLSPD.mjs +76 -0
  101. package/lib/chunk-RDN6HF5Z.mjs +79 -0
  102. package/lib/chunk-RJKTSUAX.mjs +123 -0
  103. package/lib/{chunk-XA3SNBPA.mjs → chunk-TBWXE7ST.mjs} +97 -38
  104. package/lib/chunk-UXCFNAR6.mjs +55 -0
  105. package/lib/{chunk-M3YIYRHT.mjs → chunk-UY5VUEA3.mjs} +1 -1
  106. package/lib/chunk-WSHVPGNM.mjs +44 -0
  107. package/lib/{chunk-66PAU5PS.mjs → chunk-X2B3X7D4.mjs} +10 -6
  108. package/lib/clean-github-actions-caches-cli.cjs +507 -0
  109. package/lib/clean-github-actions-caches-cli.mjs +74 -0
  110. package/lib/clean-github-actions-caches.cjs +246 -106
  111. package/lib/clean-github-actions-caches.d.cts +53 -1
  112. package/lib/clean-github-actions-caches.mjs +5 -130
  113. package/lib/cross-env/command.cjs +63 -0
  114. package/lib/cross-env/command.d.ts +8 -0
  115. package/lib/cross-env/command.js +45 -0
  116. package/lib/{ps/isWin.mjs → cross-env/command.mjs} +4 -5
  117. package/lib/cross-env/index.cjs +178 -0
  118. package/lib/cross-env/index.d.ts +8 -0
  119. package/lib/cross-env/index.js +102 -0
  120. package/lib/cross-env/index.mjs +101 -0
  121. package/lib/cross-env/variable.cjs +60 -0
  122. package/lib/cross-env/variable.d.ts +7 -0
  123. package/lib/cross-env/variable.js +59 -0
  124. package/lib/cross-env/variable.mjs +9 -0
  125. package/lib/del-gradle.cjs +8 -13
  126. package/lib/del-gradle.js +8 -8
  127. package/lib/del-gradle.mjs +1 -1
  128. package/lib/del-node-modules.cjs +185 -3
  129. package/lib/del-node-modules.js +25 -25
  130. package/lib/del-node-modules.mjs +6 -3
  131. package/lib/{del-ps.cjs → del-ps-cli.cjs} +38 -43
  132. package/lib/del-ps-cli.d.mts +1 -0
  133. package/lib/del-ps-cli.mjs +44 -0
  134. package/lib/del-yarn-caches.cjs +8 -13
  135. package/lib/del-yarn-caches.js +2 -2
  136. package/lib/del-yarn-caches.mjs +1 -1
  137. package/lib/downloader-cli.cjs +256 -0
  138. package/lib/downloader-cli.d.cts +2 -0
  139. package/lib/downloader-cli.mjs +90 -0
  140. package/lib/file/copy-cli.cjs +273 -0
  141. package/lib/file/copy-cli.d.mts +1 -0
  142. package/lib/file/copy-cli.mjs +59 -0
  143. package/lib/file/copy.cjs +56 -0
  144. package/lib/file/copy.d.mts +1 -0
  145. package/lib/file/copy.mjs +8 -0
  146. package/lib/file/move-cli.cjs +272 -0
  147. package/lib/file/move-cli.d.mts +1 -0
  148. package/lib/file/move-cli.mjs +59 -0
  149. package/lib/file/move.cjs +55 -0
  150. package/lib/file/move.d.mts +1 -0
  151. package/lib/file/move.mjs +8 -0
  152. package/lib/find-node-modules-cli.cjs +1 -1
  153. package/lib/find-node-modules-cli.js +1 -1
  154. package/lib/find-node-modules-cli.mjs +1 -1
  155. package/lib/find-node-modules.cjs +1 -1
  156. package/lib/find-node-modules.mjs +1 -1
  157. package/lib/free-chatgpt.cjs +27 -26
  158. package/lib/free-chatgpt.js +10 -10
  159. package/lib/free-chatgpt.mjs +2 -2
  160. package/lib/git/user-config.cjs +9 -14
  161. package/lib/git/user-config.mjs +2 -2
  162. package/lib/git-diff-cli.cjs +273 -66
  163. package/lib/git-diff-cli.mjs +5 -4
  164. package/lib/git-diff.cjs +273 -66
  165. package/lib/git-diff.d.ts +2 -1
  166. package/lib/git-diff.js +153 -39
  167. package/lib/git-diff.mjs +5 -4
  168. package/lib/git-fix.cjs +9 -14
  169. package/lib/git-fix.mjs +2 -2
  170. package/lib/git-purge.cjs +9 -14
  171. package/lib/git-purge.mjs +2 -2
  172. package/lib/index.cjs +1 -1
  173. package/lib/index.d.ts +1 -1
  174. package/lib/index.mjs +1 -1
  175. package/lib/kill-night-crows.cjs +7 -7
  176. package/lib/kill-night-crows.mjs +7 -7
  177. package/lib/node-cache-cleaner/npm.cjs +65 -0
  178. package/lib/node-cache-cleaner/npm.d.ts +2 -0
  179. package/lib/node-cache-cleaner/npm.js +41 -0
  180. package/lib/node-cache-cleaner/npm.mjs +10 -0
  181. package/lib/node-cache-cleaner/npx.cjs +89 -0
  182. package/lib/node-cache-cleaner/npx.d.ts +4 -0
  183. package/lib/node-cache-cleaner/npx.js +82 -0
  184. package/lib/{ps/index.d.mjs → node-cache-cleaner/npx.mjs} +6 -5
  185. package/lib/node-cache-cleaner/yarn.cjs +73 -0
  186. package/lib/node-cache-cleaner/yarn.d.ts +2 -0
  187. package/lib/node-cache-cleaner/yarn.js +62 -0
  188. package/lib/node-cache-cleaner/yarn.mjs +10 -0
  189. package/lib/node-cache-cleaner-cli.cjs +365 -0
  190. package/lib/node-cache-cleaner-cli.d.ts +2 -0
  191. package/lib/node-cache-cleaner-cli.js +57 -0
  192. package/lib/node-cache-cleaner-cli.mjs +60 -0
  193. package/lib/node-executor.cjs +272 -0
  194. package/lib/node-executor.d.cts +2 -0
  195. package/lib/node-executor.mjs +106 -0
  196. package/lib/node-package-packer/build-readme.cjs +150 -0
  197. package/lib/node-package-packer/build-readme.d.mts +10 -0
  198. package/lib/node-package-packer/build-readme.mjs +10 -0
  199. package/lib/node-package-packer/build-tarball.cjs +495 -0
  200. package/lib/node-package-packer/build-tarball.d.mts +33 -0
  201. package/lib/node-package-packer/build-tarball.mjs +175 -0
  202. package/lib/node-package-packer-cli.cjs +525 -0
  203. package/lib/node-package-packer-cli.d.mts +1 -0
  204. package/lib/node-package-packer-cli.mjs +34 -0
  205. package/lib/npm-run-series.cjs +28 -40
  206. package/lib/npm-run-series.mjs +21 -7
  207. package/lib/package-resolutions-updater-cli.cjs +255 -173
  208. package/lib/package-resolutions-updater-cli.mjs +19 -40
  209. package/lib/package-resolutions-updater.cjs +244 -141
  210. package/lib/package-resolutions-updater.d.mts +54 -1
  211. package/lib/package-resolutions-updater.mjs +8 -5
  212. package/lib/php-cs-fixer-staged.cjs +1 -1
  213. package/lib/php-cs-fixer-staged.mjs +1 -1
  214. package/lib/print-directory-tree.cjs +18 -20
  215. package/lib/print-directory-tree.mjs +11 -8
  216. package/lib/print-tarball-tree.cjs +262 -0
  217. package/lib/print-tarball-tree.d.mts +1 -0
  218. package/lib/print-tarball-tree.mjs +68 -0
  219. package/lib/ps/connected-domain.js +10 -10
  220. package/lib/ps/index.cjs +11 -11
  221. package/lib/ps/index.mjs +180 -174
  222. package/lib/ps/table-parser.d.ts +3 -4
  223. package/lib/ps/table-parser.js +15 -22
  224. package/lib/remove-module.cjs +19 -24
  225. package/lib/remove-module.mjs +2 -2
  226. package/lib/rm-node-module-cli.cjs +389 -0
  227. package/lib/rm-node-module-cli.d.cts +1 -0
  228. package/lib/rm-node-module-cli.mjs +92 -0
  229. package/lib/rm-node-modules.cjs +127 -0
  230. package/lib/rm-node-modules.d.cts +35 -0
  231. package/lib/{binary-collections-config.mjs → rm-node-modules.mjs} +3 -3
  232. package/lib/rmpath-cli.cjs +285 -0
  233. package/lib/rmpath-cli.d.mts +1 -0
  234. package/lib/rmpath-cli.mjs +23 -0
  235. package/lib/rmpath.cjs +6 -217
  236. package/lib/rmpath.mjs +5 -101
  237. package/lib/run-by-checksum/cache.cjs +69 -0
  238. package/lib/run-by-checksum/cache.d.ts +19 -0
  239. package/lib/run-by-checksum/cache.js +50 -0
  240. package/lib/run-by-checksum/cache.mjs +12 -0
  241. package/lib/run-by-checksum/hash.cjs +72 -0
  242. package/lib/run-by-checksum/hash.d.ts +14 -0
  243. package/lib/run-by-checksum/hash.js +85 -0
  244. package/lib/run-by-checksum/hash.mjs +10 -0
  245. package/lib/run-by-checksum/run.cjs +169 -0
  246. package/lib/run-by-checksum/run.d.ts +22 -0
  247. package/lib/run-by-checksum/run.js +93 -0
  248. package/lib/run-by-checksum/run.mjs +10 -0
  249. package/lib/run-by-checksum-cli.cjs +382 -0
  250. package/lib/run-by-checksum-cli.d.ts +2 -0
  251. package/lib/run-by-checksum-cli.js +43 -0
  252. package/lib/run-by-checksum-cli.mjs +56 -0
  253. package/lib/submodule-install.cjs +55 -47
  254. package/lib/submodule-install.mjs +48 -35
  255. package/lib/submodule-remove-cli.cjs +170 -4
  256. package/lib/submodule-remove-cli.js +5 -5
  257. package/lib/submodule-remove-cli.mjs +6 -4
  258. package/lib/utils/chatgpt.cjs +19 -13
  259. package/lib/utils/chatgpt.js +94 -94
  260. package/lib/utils/chatgpt.mjs +1 -1
  261. package/lib/utils/fetchResponse.cjs +24 -0
  262. package/lib/utils/fetchResponse.d.cts +25 -0
  263. package/lib/utils/fetchResponse.mjs +6 -0
  264. package/lib/utils/findEnvFiles.cjs +28 -46
  265. package/lib/utils/findEnvFiles.d.cts +19 -0
  266. package/lib/utils/findEnvFiles.mjs +3 -5
  267. package/lib/utils/findWorkspaceRoot.js +4 -4
  268. package/lib/utils/index.cjs +7 -12
  269. package/lib/utils/index.d.cts +2 -9
  270. package/lib/utils/index.mjs +1 -1
  271. package/lib/utils/isGithubTokenValid.js +7 -7
  272. package/lib/{ps/isWin.cjs → utils/isWindows.cjs} +12 -7
  273. package/lib/utils/isWindows.d.ts +5 -0
  274. package/lib/utils/isWindows.js +10 -0
  275. package/lib/utils/isWindows.mjs +10 -0
  276. package/lib/utils/runBash.cjs +53 -0
  277. package/lib/utils/runBash.d.cts +12 -0
  278. package/lib/utils/runBash.mjs +66 -0
  279. package/lib/yarn-per-branch-lock-installer.cjs +288 -0
  280. package/lib/yarn-per-branch-lock-installer.d.cts +2 -0
  281. package/lib/yarn-per-branch-lock-installer.mjs +122 -0
  282. package/lib/yarn-reinstall.cjs +8 -13
  283. package/lib/yarn-reinstall.mjs +1 -1
  284. package/package.json +91 -57
  285. package/readme.html +784 -0
  286. package/readme.md +107 -219
  287. package/releases/readme.md +6 -3
  288. package/test/README.md +2 -2
  289. package/test-project/workspaces/workspace-a/readme.md +20 -0
  290. package/test-project/workspaces/workspace-a/release/readme.md +42 -0
  291. package/test-project/workspaces/workspace-a/test/readme.md +12 -0
  292. package/test-project/workspaces/workspace-b/readme.md +94 -0
  293. package/test-project/workspaces/workspace-b/requirements.txt +1 -0
  294. package/test-project/workspaces/workspace-b/themes/hexo-theme-flowbite/readme.md +156 -0
  295. package/tmp/test-repo/README.md +2 -35
  296. package/tmp/test-repo-runChecksum/test-complex-glob/README.md +1 -0
  297. package/tmp/test-repo-runChecksum/test-mixed-args/README.md +1 -0
  298. package/lib/binary-collections-config.cjs +0 -15
  299. package/lib/chunk-2CBJCW7E.mjs +0 -81
  300. package/lib/chunk-4UHL4WVN.mjs +0 -136
  301. package/lib/chunk-6HHJRKFB.mjs +0 -59
  302. package/lib/chunk-6S4NXESK.mjs +0 -26
  303. package/lib/chunk-7XTEJHOE.mjs +0 -193
  304. package/lib/chunk-AJDD5DZM.mjs +0 -109
  305. package/lib/chunk-FCDQGYBF.mjs +0 -136
  306. package/lib/chunk-GEYA2USY.mjs +0 -207
  307. package/lib/chunk-GJTGHXRA.mjs +0 -356
  308. package/lib/chunk-ID2WBTE2.mjs +0 -80
  309. package/lib/chunk-JXFOHKDM.mjs +0 -239
  310. package/lib/chunk-NCXAP7AA.mjs +0 -31
  311. package/lib/chunk-PDSXF5HY.mjs +0 -187
  312. package/lib/chunk-TOIVAQF7.mjs +0 -136
  313. package/lib/chunk-V5SKYJUB.mjs +0 -136
  314. package/lib/chunk-WSRETQCA.mjs +0 -59
  315. package/lib/chunk-YYLIQQKF.mjs +0 -31
  316. package/lib/del-ps.js +0 -32
  317. package/lib/del-ps.mjs +0 -43
  318. package/lib/ps/index.d.cjs +0 -17
  319. package/lib/ps/index.d.ts +0 -2
  320. package/lib/ps/index.js +0 -254
  321. package/lib/ps/isWin.d.ts +0 -2
  322. package/lib/ps/isWin.js +0 -4
  323. package/lib/utils/findEnvFiles.d.ts +0 -8
  324. package/lib/utils/findEnvFiles.js +0 -121
  325. package/test/package.json +0 -20
  326. package/test-project/package.json +0 -16
  327. package/tmp/test-repo/package.json +0 -7
  328. package/tmp/typedoc/readme.md +0 -320
  329. /package/lib/{binary-collections-config.d.cts → binary-collections/config.d.cts} +0 -0
  330. /package/lib/{del-ps.d.ts → clean-github-actions-caches-cli.d.cts} +0 -0
@@ -19,9 +19,9 @@ var require_utils = __commonJS({
19
19
  init_cjs_shims();
20
20
  var fs2 = require("fs");
21
21
  var path2 = require("upath");
22
- var argv2 = require("minimist")(process.argv.slice(2));
22
+ var minimistLib = require("minimist");
23
+ var argv2 = minimistLib(process.argv.slice(2));
23
24
  var { exec } = require("child_process");
24
- var { URL: URL2 } = require("url");
25
25
  var { promisify } = require("util");
26
26
  var execAsync = promisify(exec);
27
27
  async function parseGitRemotes() {
@@ -34,7 +34,7 @@ var require_utils = __commonJS({
34
34
  if (name && url) {
35
35
  const [repoUrl] = url.split(" ");
36
36
  try {
37
- const parsedUrl = new URL2(repoUrl);
37
+ const parsedUrl = new URL(repoUrl);
38
38
  const pathParts = parsedUrl.pathname.split("/").filter(Boolean);
39
39
  if (parsedUrl.hostname === "github.com" && pathParts.length === 2) {
40
40
  let repoPath = pathParts.join("/");
@@ -55,15 +55,10 @@ var require_utils = __commonJS({
55
55
  }
56
56
  }
57
57
  module2.exports.parseGitRemotes = parseGitRemotes;
58
- function joinPathPreserveDriveLetter(...segments) {
59
- let fullPath = require("path").join(...segments);
60
- if (/^[a-z]:\\/.test(fullPath)) {
61
- fullPath = fullPath.charAt(0).toUpperCase() + fullPath.slice(1);
58
+ function getArgs2(opts) {
59
+ if (opts) {
60
+ return minimistLib(process.argv.slice(2), opts);
62
61
  }
63
- return fullPath;
64
- }
65
- module2.exports.joinPathPreserveDriveLetter = joinPathPreserveDriveLetter;
66
- function getArgs2() {
67
62
  return argv2;
68
63
  }
69
64
  module2.exports.getArgs = getArgs2;
@@ -88,7 +83,7 @@ var require_utils = __commonJS({
88
83
  try {
89
84
  fs2.rmdirSync(fullPath);
90
85
  console.log("deleted", fullPath);
91
- } catch (e) {
86
+ } catch (_e) {
92
87
  try {
93
88
  fs2.rmSync(fullPath, { recursive: true, force: true, retryDelay: 7e3 });
94
89
  console.log("deleted", fullPath);
@@ -101,7 +96,7 @@ var require_utils = __commonJS({
101
96
  try {
102
97
  fs2.unlinkSync(fullPath);
103
98
  console.log("deleted", fullPath);
104
- } catch (e) {
99
+ } catch (_e) {
105
100
  try {
106
101
  fs2.rmSync(fullPath, { recursive: true, force: true, retryDelay: 7e3 });
107
102
  console.log("deleted", fullPath);
@@ -187,9 +182,10 @@ var require_utils = __commonJS({
187
182
 
188
183
  // src/print-directory-tree.cjs
189
184
  init_cjs_shims();
190
- var fs = require("fs").promises;
191
- var path = require("path");
192
- var crypto = require("crypto");
185
+ var fs = require("fs");
186
+ var fsp = require("fs").promises;
187
+ var path = require("upath");
188
+ var CryptoJS = require("crypto-js");
193
189
  var { execSync } = require("child_process");
194
190
  var glob = require("glob");
195
191
  var { getArgs } = require_utils();
@@ -243,9 +239,9 @@ async function main() {
243
239
  let relativePath = path.relative(projectDir, file);
244
240
  relativePath = relativePath.split(path.sep).join("/");
245
241
  try {
246
- const stats = await fs.stat(file);
242
+ const stats = await fsp.stat(file);
247
243
  const pseudoHash = `${stats.size}-${stats.mtimeMs}`;
248
- const hash = crypto.createHash("sha256").update(pseudoHash).digest("hex");
244
+ const hash = CryptoJS.SHA256(pseudoHash).toString(CryptoJS.enc.Hex);
249
245
  hashArray.push(`${relativePath} ${hash.slice(0, 8)}`);
250
246
  } catch (err) {
251
247
  console.error(`Error processing file: ${file}`, err instanceof Error ? err.message : "<unknown error>");
@@ -280,7 +276,9 @@ async function main() {
280
276
  nodir: true
281
277
  });
282
278
  const allFiles = /* @__PURE__ */ new Set([...initialFiles, ...globFiles]);
283
- await Promise.all(Array.from(allFiles).map(hashAndPush));
279
+ await Promise.all(
280
+ Array.from(allFiles).filter((p) => fs.existsSync(p)).map(hashAndPush)
281
+ );
284
282
  hashArray.sort((a, b) => a.localeCompare(b));
285
283
  function getFileTreeString(hashArray2) {
286
284
  const tree = {};
@@ -319,7 +317,7 @@ async function main() {
319
317
  return printNode(tree, "", "").join("\n");
320
318
  }
321
319
  const fileTreeString = getFileTreeString(hashArray);
322
- await fs.writeFile(outputFile, fileTreeString + "\n", "utf-8");
320
+ await fsp.writeFile(outputFile, fileTreeString + "\n", "utf-8");
323
321
  if (argv["git-add"]) {
324
322
  execSync(`git add ${relativeOutputFile}`);
325
323
  console.log(`Directory tree written to ${relativeOutputFile} and staged for git.`);
@@ -1,7 +1,7 @@
1
1
  import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
2
  import {
3
3
  require_utils
4
- } from "./chunk-Z6JLYU2J.mjs";
4
+ } from "./chunk-6RK5UCTP.mjs";
5
5
  import {
6
6
  __commonJS,
7
7
  __require,
@@ -12,9 +12,10 @@ import {
12
12
  var require_print_directory_tree = __commonJS({
13
13
  "src/print-directory-tree.cjs"() {
14
14
  init_esm_shims();
15
- var fs = __require("fs").promises;
16
- var path = __require("path");
17
- var crypto = __require("crypto");
15
+ var fs = __require("fs");
16
+ var fsp = __require("fs").promises;
17
+ var path = __require("upath");
18
+ var CryptoJS = __require("crypto-js");
18
19
  var { execSync } = __require("child_process");
19
20
  var glob = __require("glob");
20
21
  var { getArgs } = require_utils();
@@ -68,9 +69,9 @@ var require_print_directory_tree = __commonJS({
68
69
  let relativePath = path.relative(projectDir, file);
69
70
  relativePath = relativePath.split(path.sep).join("/");
70
71
  try {
71
- const stats = await fs.stat(file);
72
+ const stats = await fsp.stat(file);
72
73
  const pseudoHash = `${stats.size}-${stats.mtimeMs}`;
73
- const hash = crypto.createHash("sha256").update(pseudoHash).digest("hex");
74
+ const hash = CryptoJS.SHA256(pseudoHash).toString(CryptoJS.enc.Hex);
74
75
  hashArray.push(`${relativePath} ${hash.slice(0, 8)}`);
75
76
  } catch (err) {
76
77
  console.error(`Error processing file: ${file}`, err instanceof Error ? err.message : "<unknown error>");
@@ -105,7 +106,9 @@ var require_print_directory_tree = __commonJS({
105
106
  nodir: true
106
107
  });
107
108
  const allFiles = /* @__PURE__ */ new Set([...initialFiles, ...globFiles]);
108
- await Promise.all(Array.from(allFiles).map(hashAndPush));
109
+ await Promise.all(
110
+ Array.from(allFiles).filter((p) => fs.existsSync(p)).map(hashAndPush)
111
+ );
109
112
  hashArray.sort((a, b) => a.localeCompare(b));
110
113
  function getFileTreeString(hashArray2) {
111
114
  const tree = {};
@@ -144,7 +147,7 @@ var require_print_directory_tree = __commonJS({
144
147
  return printNode(tree, "", "").join("\n");
145
148
  }
146
149
  const fileTreeString = getFileTreeString(hashArray);
147
- await fs.writeFile(outputFile, fileTreeString + "\n", "utf-8");
150
+ await fsp.writeFile(outputFile, fileTreeString + "\n", "utf-8");
148
151
  if (argv["git-add"]) {
149
152
  execSync(`git add ${relativeOutputFile}`);
150
153
  console.log(`Directory tree written to ${relativeOutputFile} and staged for git.`);
@@ -0,0 +1,262 @@
1
+ #!/usr/bin/env node
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __esm = (fn, res) => function __init() {
9
+ return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
10
+ };
11
+ var __commonJS = (cb, mod) => function __require() {
12
+ return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
13
+ };
14
+ var __copyProps = (to, from, except, desc) => {
15
+ if (from && typeof from === "object" || typeof from === "function") {
16
+ for (let key of __getOwnPropNames(from))
17
+ if (!__hasOwnProp.call(to, key) && key !== except)
18
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
19
+ }
20
+ return to;
21
+ };
22
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
23
+ // If the importer is in node compatibility mode or this is not an ESM
24
+ // file that has been converted to a CommonJS file using a Babel-
25
+ // compatible transform (i.e. "__esModule" has not been set), then set
26
+ // "default" to the CommonJS "module.exports" for node compatibility.
27
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
28
+ mod
29
+ ));
30
+
31
+ // node_modules/tsup/assets/cjs_shims.js
32
+ var init_cjs_shims = __esm({
33
+ "node_modules/tsup/assets/cjs_shims.js"() {
34
+ }
35
+ });
36
+
37
+ // src/utils/index.cjs
38
+ var require_utils = __commonJS({
39
+ "src/utils/index.cjs"(exports2, module2) {
40
+ init_cjs_shims();
41
+ var fs2 = require("fs");
42
+ var path2 = require("upath");
43
+ var minimistLib = require("minimist");
44
+ var argv2 = minimistLib(process.argv.slice(2));
45
+ var { exec } = require("child_process");
46
+ var { promisify } = require("util");
47
+ var execAsync = promisify(exec);
48
+ async function parseGitRemotes() {
49
+ try {
50
+ const { stdout } = await execAsync("git remote -v");
51
+ const lines = stdout.split("\n");
52
+ const remotes = {};
53
+ lines.forEach((line) => {
54
+ const [name, url] = line.split(" ");
55
+ if (name && url) {
56
+ const [repoUrl] = url.split(" ");
57
+ try {
58
+ const parsedUrl = new URL(repoUrl);
59
+ const pathParts = parsedUrl.pathname.split("/").filter(Boolean);
60
+ if (parsedUrl.hostname === "github.com" && pathParts.length === 2) {
61
+ let repoPath = pathParts.join("/");
62
+ if (repoPath.endsWith(".git")) {
63
+ repoPath = repoPath.slice(0, -4);
64
+ }
65
+ remotes[name] = repoPath;
66
+ }
67
+ } catch (e) {
68
+ console.error("URL Parsing Error:", e.message);
69
+ }
70
+ }
71
+ });
72
+ return remotes;
73
+ } catch (error) {
74
+ console.error("Error:", error.message);
75
+ return {};
76
+ }
77
+ }
78
+ module2.exports.parseGitRemotes = parseGitRemotes;
79
+ function getArgs2(opts) {
80
+ if (opts) {
81
+ return minimistLib(process.argv.slice(2), opts);
82
+ }
83
+ return argv2;
84
+ }
85
+ module2.exports.getArgs = getArgs2;
86
+ function del(fullPath) {
87
+ try {
88
+ if (!fs2.existsSync(fullPath)) return;
89
+ const stat = fs2.lstatSync(fullPath);
90
+ if (stat.isSymbolicLink()) {
91
+ try {
92
+ fs2.unlinkSync(fullPath);
93
+ console.log("deleted symlink", fullPath);
94
+ } catch (e) {
95
+ console.log("failed delete symlink", fullPath, e && e.message);
96
+ }
97
+ return;
98
+ }
99
+ if (stat.isDirectory()) {
100
+ const subdir = fs2.readdirSync(fullPath).map((dirPath) => path2.resolve(fullPath, dirPath));
101
+ for (let i = 0; i < subdir.length; i++) {
102
+ del(subdir[i]);
103
+ }
104
+ try {
105
+ fs2.rmdirSync(fullPath);
106
+ console.log("deleted", fullPath);
107
+ } catch (_e) {
108
+ try {
109
+ fs2.rmSync(fullPath, { recursive: true, force: true, retryDelay: 7e3 });
110
+ console.log("deleted", fullPath);
111
+ } catch (ee) {
112
+ console.log("failed delete", fullPath, ee && ee.message);
113
+ }
114
+ }
115
+ return;
116
+ }
117
+ try {
118
+ fs2.unlinkSync(fullPath);
119
+ console.log("deleted", fullPath);
120
+ } catch (_e) {
121
+ try {
122
+ fs2.rmSync(fullPath, { recursive: true, force: true, retryDelay: 7e3 });
123
+ console.log("deleted", fullPath);
124
+ } catch (ee) {
125
+ console.log("failed delete", fullPath, ee && ee.message);
126
+ }
127
+ }
128
+ } catch (err) {
129
+ console.log("failed delete", fullPath, err && err.message);
130
+ }
131
+ }
132
+ module2.exports.del = del;
133
+ function delStream(globStream) {
134
+ globStream.stream().on("data", (result) => {
135
+ const fullPath = path2.resolve(process.cwd(), result);
136
+ try {
137
+ if (fs2.existsSync(fullPath)) {
138
+ const stat = fs2.lstatSync(fullPath);
139
+ if (stat.isSymbolicLink()) {
140
+ try {
141
+ fs2.unlinkSync(fullPath);
142
+ console.log("deleted symlink", fullPath);
143
+ } catch (e) {
144
+ console.log("failed delete symlink", fullPath, e && e.message);
145
+ }
146
+ return;
147
+ }
148
+ if (stat.isDirectory()) {
149
+ const subdir = fs2.readdirSync(fullPath).map((dirPath) => path2.resolve(fullPath, dirPath));
150
+ for (let i = 0; i < subdir.length; i++) {
151
+ del(subdir[i]);
152
+ }
153
+ }
154
+ }
155
+ del(fullPath);
156
+ } catch (err) {
157
+ console.log("failed processing", fullPath, err && err.message);
158
+ }
159
+ });
160
+ }
161
+ module2.exports.delStream = delStream;
162
+ function getFileTreeString(hashArray) {
163
+ const tree = {};
164
+ const hashMap = {};
165
+ for (const entry of hashArray) {
166
+ const [filePath2, hash] = entry.split(" ");
167
+ hashMap[filePath2] = hash;
168
+ const parts = filePath2.split("/");
169
+ let current = tree;
170
+ for (let i = 0; i < parts.length; i++) {
171
+ const part = parts[i];
172
+ if (i === parts.length - 1) {
173
+ current[part] = null;
174
+ } else {
175
+ current[part] = current[part] || {};
176
+ current = current[part];
177
+ }
178
+ }
179
+ }
180
+ function printNode(node, prefix = "", parentPath = "") {
181
+ const keys = Object.keys(node).sort();
182
+ let lines = [];
183
+ keys.forEach((key, idx) => {
184
+ const isLast = idx === keys.length - 1;
185
+ const branch = isLast ? "\u2514\u2500\u2500 " : "\u251C\u2500\u2500 ";
186
+ const currentPath = parentPath ? parentPath + "/" + key : key;
187
+ if (node[key] === null) {
188
+ lines.push(prefix + branch + key + " [" + (hashMap[currentPath] || "") + "]");
189
+ } else {
190
+ lines.push(prefix + branch + key + "/");
191
+ lines = lines.concat(printNode(node[key], prefix + (isLast ? " " : "\u2502 "), currentPath));
192
+ }
193
+ });
194
+ return lines;
195
+ }
196
+ return printNode(tree, "", "").join("\n");
197
+ }
198
+ module2.exports.getFileTreeString = getFileTreeString;
199
+ var delay = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
200
+ module2.exports.delay = delay;
201
+ }
202
+ });
203
+
204
+ // src/print-tarball-tree.mjs
205
+ init_cjs_shims();
206
+ var import_fs = __toESM(require("fs"), 1);
207
+ var import_zlib = __toESM(require("zlib"), 1);
208
+ var import_tar_stream = __toESM(require("tar-stream"), 1);
209
+ var import_upath = __toESM(require("upath"), 1);
210
+ var import_utils = __toESM(require_utils(), 1);
211
+ function addToTree(tree, parts) {
212
+ let node = tree;
213
+ for (const part of parts) {
214
+ if (!node[part]) node[part] = {};
215
+ node = node[part];
216
+ }
217
+ }
218
+ function printTree(node, prefix = "") {
219
+ const entries = Object.keys(node).sort();
220
+ entries.forEach((key, index) => {
221
+ const isLast = index === entries.length - 1;
222
+ console.log(prefix + (isLast ? "\u2514\u2500\u2500 " : "\u251C\u2500\u2500 ") + key);
223
+ const child = node[key];
224
+ const newPrefix = prefix + (isLast ? " " : "\u2502 ");
225
+ printTree(child, newPrefix);
226
+ });
227
+ }
228
+ function printTgzTree(filePath2) {
229
+ const extract = import_tar_stream.default.extract();
230
+ const tree = {};
231
+ extract.on("entry", (header, stream, next) => {
232
+ const parts = header.name.split("/").filter(Boolean);
233
+ if (parts.length) addToTree(tree, parts);
234
+ stream.on("end", next);
235
+ stream.resume();
236
+ });
237
+ extract.on("finish", () => {
238
+ printTree(tree);
239
+ });
240
+ import_fs.default.createReadStream(filePath2).pipe(import_zlib.default.createGunzip()).pipe(extract);
241
+ }
242
+ var argv = (0, import_utils.getArgs)({ string: ["file"], alias: { f: "file", h: "help" } });
243
+ if (argv.help) {
244
+ console.log(`
245
+ Usage: node src/print-tarball-tree.mjs [options]
246
+
247
+ Options:
248
+ -f, --file <path> Path to the tarball file (default: package.tgz)
249
+ -h, --help Show this help message
250
+ `);
251
+ process.exit(0);
252
+ }
253
+ var filePath = argv.file ? import_upath.default.isAbsolute(argv.file) ? argv.file : import_upath.default.resolve(process.cwd(), argv.file) : null;
254
+ if (!filePath) {
255
+ console.error("Error: No file specified");
256
+ process.exit(1);
257
+ }
258
+ if (!import_fs.default.existsSync(filePath)) {
259
+ console.error(`Error: File not found at ${filePath}`);
260
+ process.exit(1);
261
+ }
262
+ printTgzTree(filePath);
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,68 @@
1
+ import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
+ import {
3
+ require_utils
4
+ } from "./chunk-6RK5UCTP.mjs";
5
+ import {
6
+ __toESM,
7
+ init_esm_shims
8
+ } from "./chunk-QQ4A6DLD.mjs";
9
+
10
+ // src/print-tarball-tree.mjs
11
+ init_esm_shims();
12
+ var import_utils = __toESM(require_utils(), 1);
13
+ import fs from "fs";
14
+ import zlib from "zlib";
15
+ import tar from "tar-stream";
16
+ import path from "upath";
17
+ function addToTree(tree, parts) {
18
+ let node = tree;
19
+ for (const part of parts) {
20
+ if (!node[part]) node[part] = {};
21
+ node = node[part];
22
+ }
23
+ }
24
+ function printTree(node, prefix = "") {
25
+ const entries = Object.keys(node).sort();
26
+ entries.forEach((key, index) => {
27
+ const isLast = index === entries.length - 1;
28
+ console.log(prefix + (isLast ? "\u2514\u2500\u2500 " : "\u251C\u2500\u2500 ") + key);
29
+ const child = node[key];
30
+ const newPrefix = prefix + (isLast ? " " : "\u2502 ");
31
+ printTree(child, newPrefix);
32
+ });
33
+ }
34
+ function printTgzTree(filePath2) {
35
+ const extract = tar.extract();
36
+ const tree = {};
37
+ extract.on("entry", (header, stream, next) => {
38
+ const parts = header.name.split("/").filter(Boolean);
39
+ if (parts.length) addToTree(tree, parts);
40
+ stream.on("end", next);
41
+ stream.resume();
42
+ });
43
+ extract.on("finish", () => {
44
+ printTree(tree);
45
+ });
46
+ fs.createReadStream(filePath2).pipe(zlib.createGunzip()).pipe(extract);
47
+ }
48
+ var argv = (0, import_utils.getArgs)({ string: ["file"], alias: { f: "file", h: "help" } });
49
+ if (argv.help) {
50
+ console.log(`
51
+ Usage: node src/print-tarball-tree.mjs [options]
52
+
53
+ Options:
54
+ -f, --file <path> Path to the tarball file (default: package.tgz)
55
+ -h, --help Show this help message
56
+ `);
57
+ process.exit(0);
58
+ }
59
+ var filePath = argv.file ? path.isAbsolute(argv.file) ? argv.file : path.resolve(process.cwd(), argv.file) : null;
60
+ if (!filePath) {
61
+ console.error("Error: No file specified");
62
+ process.exit(1);
63
+ }
64
+ if (!fs.existsSync(filePath)) {
65
+ console.error(`Error: File not found at ${filePath}`);
66
+ process.exit(1);
67
+ }
68
+ printTgzTree(filePath);
@@ -13,10 +13,10 @@ exports.default = default_1;
13
13
  function default_1(tdArray, indicator, hardlink) {
14
14
  hardlink = hardlink || false;
15
15
  if (!tdArray) {
16
- throw new Error("tdArray must be provided");
16
+ throw new Error('tdArray must be provided');
17
17
  }
18
18
  if (!indicator) {
19
- throw new Error("indicator must be provided");
19
+ throw new Error('indicator must be provided');
20
20
  }
21
21
  // clone 一份数据,因为需要对饮用进行修改,方便执行
22
22
  tdArray = JSON.parse(JSON.stringify(tdArray));
@@ -34,21 +34,21 @@ function default_1(tdArray, indicator, hardlink) {
34
34
  var neighbours = [];
35
35
  // top neighbour
36
36
  if (tdArray[y - 1] && tdArray[y - 1][x] !== undefined) {
37
- neighbours.push(pointsHash[x + "_" + (y - 1)]);
37
+ neighbours.push(pointsHash[x + '_' + (y - 1)]);
38
38
  }
39
39
  // left neighbour
40
40
  if (row[x - 1] !== undefined) {
41
- neighbours.push(pointsHash[x - 1 + "_" + y]);
41
+ neighbours.push(pointsHash[x - 1 + '_' + y]);
42
42
  }
43
43
  // soft link will treat corner link as domain link.
44
44
  if (!hardlink) {
45
45
  // top left neighbour
46
46
  if (tdArray[y - 1] && tdArray[y - 1][x - 1] !== undefined) {
47
- neighbours.push(pointsHash[x - 1 + "_" + (y - 1)]);
47
+ neighbours.push(pointsHash[x - 1 + '_' + (y - 1)]);
48
48
  }
49
49
  // top right neighbour
50
50
  if (tdArray[y - 1] && tdArray[y - 1][x + 1] !== undefined) {
51
- neighbours.push(pointsHash[x + 1 + "_" + (y - 1)]);
51
+ neighbours.push(pointsHash[x + 1 + '_' + (y - 1)]);
52
52
  }
53
53
  }
54
54
  if (neighbours.length) {
@@ -63,7 +63,7 @@ function default_1(tdArray, indicator, hardlink) {
63
63
  // If more than one neighbour matched, check if these neighbours belong to the same domain
64
64
  // If not, merge these domains since they connects to each other.
65
65
  else {
66
- var colItemPoint = pointsHash[x + "_" + y];
66
+ var colItemPoint = pointsHash[x + '_' + y];
67
67
  if (neighbour.domainId != colItemPoint.domainId) {
68
68
  mergeDomains(neighbour.domainId, colItemPoint.domainId);
69
69
  }
@@ -150,7 +150,7 @@ function default_1(tdArray, indicator, hardlink) {
150
150
  identifier: identifier,
151
151
  domainId: newDomain.domainId
152
152
  };
153
- pointsHash[x + "_" + y] = {
153
+ pointsHash[x + '_' + y] = {
154
154
  value: point,
155
155
  identifier: identifier,
156
156
  domainId: newDomain.domainId
@@ -174,7 +174,7 @@ function default_1(tdArray, indicator, hardlink) {
174
174
  identifier: domain.identifier,
175
175
  domainId: domainId
176
176
  };
177
- pointsHash[x + "_" + y] = {
177
+ pointsHash[x + '_' + y] = {
178
178
  value: point,
179
179
  identifier: domain.identifier,
180
180
  domainId: domainId
@@ -194,7 +194,7 @@ function default_1(tdArray, indicator, hardlink) {
194
194
  domainB.domainId = domainA.domainId;
195
195
  domainB.points.forEach(function (point) {
196
196
  point.domainId = domainA.domainId;
197
- pointsHash[point.x + "_" + point.y].domainId = domainA.domainId;
197
+ pointsHash[point.x + '_' + point.y].domainId = domainA.domainId;
198
198
  });
199
199
  domainA.points = domainA.points.concat(domainB.points);
200
200
  // 删除domainB
package/lib/ps/index.cjs CHANGED
@@ -25,17 +25,17 @@ var init_cjs_shims = __esm({
25
25
  }
26
26
  });
27
27
 
28
- // src/ps/isWin.js
29
- var isWin_exports = {};
30
- __export(isWin_exports, {
31
- default: () => isWin_default
28
+ // src/utils/isWindows.js
29
+ var isWindows_exports = {};
30
+ __export(isWindows_exports, {
31
+ isWindows: () => isWindows
32
32
  });
33
- var isWin, isWin_default;
34
- var init_isWin = __esm({
35
- "src/ps/isWin.js"() {
33
+ function isWindows() {
34
+ return process.platform === "win32" || /^(msys|cygwin)$/.test(process.env.OSTYPE || "");
35
+ }
36
+ var init_isWindows = __esm({
37
+ "src/utils/isWindows.js"() {
36
38
  init_cjs_shims();
37
- isWin = process.platform === "win32";
38
- isWin_default = isWin;
39
39
  }
40
40
  });
41
41
 
@@ -394,10 +394,10 @@ var init_table_parser = __esm({
394
394
  }
395
395
  });
396
396
 
397
- // src/ps/index.js
397
+ // src/ps/index.cjs
398
398
  init_cjs_shims();
399
399
  var ChildProcess = require("child_process");
400
- var IS_WIN = (init_isWin(), __toCommonJS(isWin_exports)).default;
400
+ var IS_WIN = (init_isWindows(), __toCommonJS(isWindows_exports)).isWindows();
401
401
  var TableParser = (init_table_parser(), __toCommonJS(table_parser_exports));
402
402
  var EOL = /(\r\n)|(\n\r)|\n|\r/;
403
403
  var SystemEOL = require("os").EOL;