binary-collections 2.0.9 → 2.0.11

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 (306) hide show
  1. package/.puppeterrc.cjs +25 -0
  2. package/binaries/binary-executor.cjs +178 -0
  3. package/{bin → binaries}/clean-nodemodule +0 -0
  4. package/binaries/clean-nodemodule.cjs +178 -0
  5. package/binaries/clean-nodemodule.cmd +4 -0
  6. package/{bin → binaries}/clean-nodemodules +0 -0
  7. package/binaries/clean-nodemodules.cjs +178 -0
  8. package/binaries/clean-nodemodules.cmd +5 -0
  9. package/{bin → binaries}/dev +0 -0
  10. package/binaries/dev.cjs +178 -0
  11. package/{bin → binaries}/empty +0 -0
  12. package/binaries/empty.cjs +178 -0
  13. package/{bin → binaries}/git-reduce-size +0 -0
  14. package/binaries/git-reduce-size.cjs +178 -0
  15. package/binaries/javakill.cjs +178 -0
  16. package/{bin → binaries}/javakill.cmd +0 -0
  17. package/binaries/kill-night-crows.bat +7 -0
  18. package/binaries/kill-night-crows.ps1 +172 -0
  19. package/{bin → binaries}/kill-process +0 -0
  20. package/binaries/kill-process.cjs +178 -0
  21. package/binaries/nodekill.cjs +178 -0
  22. package/{bin → binaries}/nodekill.ps1 +0 -0
  23. package/{bin → binaries}/prod +0 -0
  24. package/binaries/prod.cjs +178 -0
  25. package/binaries/py +111 -0
  26. package/binaries/py.cjs +178 -0
  27. package/binaries/py.cmd +49 -0
  28. package/{bin → binaries}/rmfind +0 -0
  29. package/binaries/rmfind.cjs +178 -0
  30. package/{bin → binaries}/rmx +0 -0
  31. package/binaries/rmx.cjs +178 -0
  32. package/{bin → binaries}/submodule-token +0 -0
  33. package/binaries/submodule-token.cjs +178 -0
  34. package/binaries/test-cjs +10 -0
  35. package/binaries/test-cjs.cjs +178 -0
  36. package/binaries/test-cjs.cmd +11 -0
  37. package/binaries/yarn-clean +32 -0
  38. package/binaries/yarn-clean.cjs +178 -0
  39. package/binaries/yarn-clean.cmd +30 -0
  40. package/binaries/yarn-clean.py +148 -0
  41. package/docs-src/clean-github-actions-caches.md +26 -0
  42. package/docs-src/free-chatgpt.md +26 -0
  43. package/lib/binary-collections-config.cjs +3 -2
  44. package/lib/binary-collections-config.mjs +2 -2
  45. package/lib/binary-collections.cjs +513 -105
  46. package/lib/binary-collections.mjs +178 -117
  47. package/lib/changelog.cjs +64 -16
  48. package/lib/changelog.mjs +177 -171
  49. package/lib/{chunk-VVEZVNIV.mjs → chunk-2CBJCW7E.mjs} +3 -3
  50. package/lib/chunk-34IQDTLZ.mjs +27 -0
  51. package/lib/chunk-3HFFECCI.mjs +27 -0
  52. package/lib/chunk-4UHL4WVN.mjs +136 -0
  53. package/lib/{chunk-4BYBVEYC.mjs → chunk-66PAU5PS.mjs} +5 -4
  54. package/lib/chunk-6HHJRKFB.mjs +59 -0
  55. package/lib/chunk-6S4NXESK.mjs +26 -0
  56. package/lib/chunk-7XTEJHOE.mjs +193 -0
  57. package/lib/{chunk-ZYAQRPUL.mjs → chunk-7YD7IPFF.mjs} +2 -2
  58. package/lib/{chunk-SH3L6HHV.mjs → chunk-A2JQXI5Z.mjs} +2 -2
  59. package/lib/{chunk-EGSSKVDH.mjs → chunk-A3VUZEJK.mjs} +1 -1
  60. package/lib/chunk-AJDD5DZM.mjs +109 -0
  61. package/lib/chunk-BZWVHODJ.mjs +62 -0
  62. package/lib/chunk-FCDQGYBF.mjs +136 -0
  63. package/lib/chunk-FKI7IEB5.mjs +172 -0
  64. package/lib/chunk-GEYA2USY.mjs +207 -0
  65. package/lib/chunk-GJTGHXRA.mjs +356 -0
  66. package/lib/{chunk-YV7DO3YV.mjs → chunk-HLGOWBEO.mjs} +1 -1
  67. package/lib/chunk-ID2WBTE2.mjs +80 -0
  68. package/lib/chunk-JXFOHKDM.mjs +239 -0
  69. package/lib/{chunk-YX5U7XDR.mjs → chunk-M3YIYRHT.mjs} +6 -5
  70. package/lib/chunk-N436BNBK.mjs +514 -0
  71. package/lib/chunk-NCXAP7AA.mjs +31 -0
  72. package/lib/chunk-PDN26I7O.mjs +188 -0
  73. package/lib/{chunk-JGR2NW6D.mjs → chunk-PDSXF5HY.mjs} +3 -3
  74. package/lib/{chunk-AASHBCRW.mjs → chunk-QQ4A6DLD.mjs} +8 -0
  75. package/lib/{chunk-ONIBBBQ3.mjs → chunk-RWLXRTYP.mjs} +4 -3
  76. package/lib/chunk-TOIVAQF7.mjs +136 -0
  77. package/lib/chunk-V5SKYJUB.mjs +136 -0
  78. package/lib/chunk-WSRETQCA.mjs +59 -0
  79. package/lib/chunk-XA3SNBPA.mjs +184 -0
  80. package/lib/chunk-XVBFFVCJ.mjs +209 -0
  81. package/lib/chunk-YYLIQQKF.mjs +31 -0
  82. package/lib/{chunk-APBWENF6.mjs → chunk-Z6JLYU2J.mjs} +63 -16
  83. package/lib/chunk-ZDMWBSYF.mjs +81 -0
  84. package/lib/clean-github-actions-caches.cjs +291 -148
  85. package/lib/clean-github-actions-caches.mjs +4 -3
  86. package/lib/del-gradle.cjs +63 -15
  87. package/lib/del-gradle.js +2 -1
  88. package/lib/del-gradle.mjs +2 -2
  89. package/lib/del-node-modules.cjs +143 -148
  90. package/lib/del-node-modules.js +210 -14
  91. package/lib/del-node-modules.mjs +149 -18
  92. package/lib/del-ps.cjs +90 -21
  93. package/lib/del-ps.js +3 -2
  94. package/lib/del-ps.mjs +7 -5
  95. package/lib/del-yarn-caches.cjs +87 -18
  96. package/lib/del-yarn-caches.js +38 -3
  97. package/lib/del-yarn-caches.mjs +6 -6
  98. package/lib/find-node-modules-cli.cjs +5 -4
  99. package/lib/find-node-modules-cli.js +2 -1
  100. package/lib/find-node-modules-cli.mjs +2 -2
  101. package/lib/find-node-modules.cjs +4 -3
  102. package/lib/{find-node-modules.d.ts → find-node-modules.d.cts} +1 -1
  103. package/lib/find-node-modules.mjs +2 -2
  104. package/lib/free-chatgpt.cjs +754 -0
  105. package/lib/free-chatgpt.js +51 -0
  106. package/lib/free-chatgpt.mjs +50 -0
  107. package/lib/git/gitattributes.cjs +2 -1
  108. package/lib/git/{gitattributes.d.ts → gitattributes.d.cts} +7 -2
  109. package/lib/git/gitattributes.mjs +2 -2
  110. package/lib/git/line-endings.cjs +298 -64
  111. package/lib/git/line-endings.mjs +4 -4
  112. package/lib/git/normalize.cjs +26 -36
  113. package/lib/git/normalize.mjs +2 -2
  114. package/lib/git/permissions.cjs +77 -11
  115. package/lib/git/permissions.mjs +3 -3
  116. package/lib/git/pull-strategy.cjs +76 -9
  117. package/lib/git/pull-strategy.mjs +3 -3
  118. package/lib/git/undo-commit-cli.cjs +110 -0
  119. package/lib/git/undo-commit-cli.d.ts +1 -0
  120. package/lib/git/undo-commit-cli.js +4 -0
  121. package/lib/git/undo-commit-cli.mjs +14 -0
  122. package/lib/git/undo-commit.cjs +81 -0
  123. package/lib/git/undo-commit.d.cts +1 -0
  124. package/lib/git/undo-commit.mjs +7 -0
  125. package/lib/git/undo-staged-cli.cjs +110 -0
  126. package/lib/git/undo-staged-cli.d.ts +1 -0
  127. package/lib/git/undo-staged-cli.js +4 -0
  128. package/lib/git/undo-staged-cli.mjs +14 -0
  129. package/lib/git/undo-staged.cjs +81 -0
  130. package/lib/git/undo-staged.d.cts +1 -0
  131. package/lib/git/undo-staged.mjs +7 -0
  132. package/lib/git/user-config.cjs +313 -83
  133. package/lib/git/user-config.mjs +4 -4
  134. package/lib/git/utils.cjs +40 -60
  135. package/lib/git/utils.mjs +2 -2
  136. package/lib/git-diff-cli.cjs +857 -0
  137. package/lib/git-diff-cli.js +16 -0
  138. package/lib/git-diff-cli.mjs +17 -0
  139. package/lib/git-diff.cjs +862 -58
  140. package/lib/git-diff.d.ts +38 -83
  141. package/lib/git-diff.js +152 -0
  142. package/lib/git-diff.mjs +23 -85
  143. package/lib/git-fix.cjs +733 -97
  144. package/lib/git-fix.mjs +10 -9
  145. package/lib/git-purge.cjs +64 -16
  146. package/lib/git-purge.d.cts +1 -0
  147. package/lib/git-purge.mjs +43 -37
  148. package/lib/index.cjs +7 -6
  149. package/lib/index.d.ts +1 -1
  150. package/lib/index.js +2 -5
  151. package/lib/index.mjs +4 -4
  152. package/lib/kill-night-crows.cjs +87 -0
  153. package/lib/kill-night-crows.d.mts +1 -0
  154. package/lib/kill-night-crows.mjs +65 -0
  155. package/lib/npm-run-series.cjs +63 -16
  156. package/lib/npm-run-series.mjs +42 -36
  157. package/lib/package-resolutions-updater-cli.cjs +560 -0
  158. package/lib/package-resolutions-updater-cli.d.mts +1 -0
  159. package/lib/package-resolutions-updater-cli.mjs +124 -0
  160. package/lib/package-resolutions-updater.cjs +178 -158
  161. package/lib/package-resolutions-updater.d.mts +32 -1
  162. package/lib/package-resolutions-updater.mjs +17 -338
  163. package/lib/php-cs-fixer-staged.cjs +105 -0
  164. package/lib/php-cs-fixer-staged.d.cts +2 -0
  165. package/lib/php-cs-fixer-staged.mjs +117 -0
  166. package/lib/print-directory-tree.cjs +320 -207
  167. package/lib/print-directory-tree.mjs +3 -3
  168. package/lib/ps/connected-domain.cjs +25 -2
  169. package/lib/ps/connected-domain.d.ts +10 -2
  170. package/lib/ps/connected-domain.js +5 -2
  171. package/lib/ps/connected-domain.mjs +8 -4
  172. package/lib/ps/index.cjs +345 -322
  173. package/lib/ps/index.d.mjs +1 -1
  174. package/lib/ps/index.js +2 -1
  175. package/lib/ps/index.mjs +179 -182
  176. package/lib/ps/isWin.cjs +24 -1
  177. package/lib/ps/isWin.d.ts +1 -1
  178. package/lib/ps/isWin.js +3 -1
  179. package/lib/ps/isWin.mjs +8 -4
  180. package/lib/ps/table-parser.cjs +167 -159
  181. package/lib/ps/table-parser.d.ts +5 -0
  182. package/lib/ps/table-parser.js +10 -4
  183. package/lib/ps/table-parser.mjs +9 -5
  184. package/lib/remove-module.cjs +310 -0
  185. package/lib/remove-module.d.mts +1 -0
  186. package/lib/remove-module.mjs +111 -0
  187. package/lib/rmpath.cjs +322 -0
  188. package/lib/rmpath.d.mts +3 -0
  189. package/lib/rmpath.mjs +108 -0
  190. package/lib/submodule-install.cjs +311 -86
  191. package/lib/submodule-install.mjs +53 -5
  192. package/lib/submodule-remove-cli.cjs +107 -0
  193. package/lib/submodule-remove-cli.d.ts +1 -0
  194. package/lib/submodule-remove-cli.js +31 -0
  195. package/lib/submodule-remove-cli.mjs +28 -0
  196. package/lib/submodule-remove.cjs +46 -0
  197. package/lib/submodule-remove.d.cts +2 -0
  198. package/lib/submodule-remove.mjs +6 -0
  199. package/lib/utils/chatgpt.cjs +541 -0
  200. package/lib/utils/chatgpt.d.ts +31 -0
  201. package/lib/utils/chatgpt.js +708 -0
  202. package/lib/utils/chatgpt.mjs +8 -0
  203. package/lib/utils/findEnvFiles.cjs +107 -0
  204. package/lib/utils/findEnvFiles.d.ts +8 -0
  205. package/lib/utils/findEnvFiles.js +121 -0
  206. package/lib/utils/findEnvFiles.mjs +8 -0
  207. package/lib/utils/findWorkspaceRoot.cjs +70 -0
  208. package/lib/utils/findWorkspaceRoot.d.ts +9 -0
  209. package/lib/utils/findWorkspaceRoot.js +57 -0
  210. package/lib/utils/findWorkspaceRoot.mjs +40 -0
  211. package/lib/{utils.cjs → utils/index.cjs} +61 -14
  212. package/lib/{utils.mjs → utils/index.mjs} +2 -2
  213. package/lib/utils/isGithubTokenValid.cjs +64 -0
  214. package/lib/utils/isGithubTokenValid.d.ts +7 -0
  215. package/lib/utils/isGithubTokenValid.js +48 -0
  216. package/lib/utils/isGithubTokenValid.mjs +36 -0
  217. package/lib/yarn-reinstall.cjs +220 -38
  218. package/lib/yarn-reinstall.mjs +2 -2
  219. package/package.json +138 -104
  220. package/readme.md +48 -75
  221. package/releases/readme.md +36 -0
  222. package/requirements.txt +1 -0
  223. package/test/README.md +101 -0
  224. package/test/package.json +2 -1
  225. package/test-project/readme.md +26 -0
  226. package/tmp/test-repo/README.md +35 -0
  227. package/tmp/test-repo/package.json +1 -1
  228. package/tmp/typedoc/readme.md +320 -0
  229. package/bin/bash-dummy +0 -56
  230. package/bin/bash-dummy.cmd +0 -25
  231. package/bin/dir-tree.cmd +0 -7
  232. package/bin/git-diff +0 -4
  233. package/bin/git-diff.cmd +0 -7
  234. package/bin/git-fix +0 -36
  235. package/bin/git-fix.cmd +0 -7
  236. package/bin/rmpath +0 -70
  237. package/bin/submodule-install.txt +0 -118
  238. package/bin/submodule-remove +0 -46
  239. package/bin/submodule.txt +0 -172
  240. package/lib/binary-collections-config.d.mts +0 -18
  241. package/lib/binary-collections-config.js +0 -39
  242. package/lib/binary-collections.d.mts +0 -137
  243. package/lib/binary-collections.d.ts +0 -137
  244. package/lib/changelog.d.mts +0 -2
  245. package/lib/changelog.js +0 -226
  246. package/lib/chunk-DPKAJKFO.mjs +0 -171
  247. package/lib/chunk-G3THLIDT.mjs +0 -200
  248. package/lib/chunk-W3ENOM53.mjs +0 -18
  249. package/lib/clean-github-actions-caches.d.mts +0 -169
  250. package/lib/clean-github-actions-caches.d.ts +0 -169
  251. package/lib/del-gradle.d.mts +0 -2
  252. package/lib/del-node-modules.d.mts +0 -2
  253. package/lib/del-ps.d.mts +0 -2
  254. package/lib/del-yarn-caches.d.mts +0 -2
  255. package/lib/find-node-modules-cli.d.mts +0 -1
  256. package/lib/find-node-modules.d.mts +0 -13
  257. package/lib/find-node-modules.js +0 -53
  258. package/lib/git/gitattributes.d.mts +0 -35
  259. package/lib/git/gitattributes.js +0 -223
  260. package/lib/git/line-endings.d.mts +0 -83
  261. package/lib/git/line-endings.d.ts +0 -83
  262. package/lib/git/normalize.d.mts +0 -43
  263. package/lib/git/normalize.d.ts +0 -43
  264. package/lib/git/permissions.d.mts +0 -17
  265. package/lib/git/permissions.d.ts +0 -17
  266. package/lib/git/pull-strategy.d.mts +0 -15
  267. package/lib/git/pull-strategy.d.ts +0 -15
  268. package/lib/git/user-config.d.mts +0 -105
  269. package/lib/git/user-config.d.ts +0 -105
  270. package/lib/git/utils.d.mts +0 -69
  271. package/lib/git/utils.d.ts +0 -69
  272. package/lib/git-diff.d.mts +0 -84
  273. package/lib/git-fix.d.mts +0 -141
  274. package/lib/git-fix.d.ts +0 -141
  275. package/lib/git-purge.d.mts +0 -2
  276. package/lib/git-purge.js +0 -59
  277. package/lib/index.d.mts +0 -1
  278. package/lib/npm-run-series.d.mts +0 -1
  279. package/lib/npm-run-series.js +0 -86
  280. package/lib/package-resolutions-updater.d.ts +0 -352
  281. package/lib/print-directory-tree.d.mts +0 -234
  282. package/lib/print-directory-tree.d.ts +0 -234
  283. package/lib/ps/connected-domain.d.mts +0 -3
  284. package/lib/ps/index.d.d.mts +0 -26
  285. package/lib/ps/index.d.d.ts +0 -26
  286. package/lib/ps/index.d.mts +0 -26
  287. package/lib/ps/isWin.d.mts +0 -3
  288. package/lib/ps/table-parser.d.mts +0 -3
  289. package/lib/submodule-install.d.mts +0 -121
  290. package/lib/submodule-install.d.ts +0 -121
  291. package/lib/utils.d.mts +0 -40
  292. package/lib/utils.js +0 -181
  293. package/lib/yarn-reinstall.d.mts +0 -49
  294. package/lib/yarn-reinstall.d.ts +0 -49
  295. package/src/package-resolutions-updater.mjs +0 -350
  296. package/src/print-directory-tree.cjs +0 -234
  297. package/src/ps/index.js +0 -286
  298. package/src/yarn-reinstall.cjs +0 -49
  299. /package/{bin → binaries}/nodekill +0 -0
  300. /package/{bin → binaries}/nodekill.cmd +0 -0
  301. /package/lib/{binary-collections-config.d.ts → binary-collections-config.d.cts} +0 -0
  302. /package/lib/{changelog.d.ts → changelog.d.cts} +0 -0
  303. /package/lib/{git-purge.d.ts → free-chatgpt.d.ts} +0 -0
  304. /package/lib/{git-diff.d.cts → git-diff-cli.d.ts} +0 -0
  305. /package/lib/{npm-run-series.d.ts → npm-run-series.d.cts} +0 -0
  306. /package/lib/{utils.d.ts → utils/index.d.cts} +0 -0
package/lib/rmpath.cjs ADDED
@@ -0,0 +1,322 @@
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 __export = (target, all) => {
15
+ for (var name in all)
16
+ __defProp(target, name, { get: all[name], enumerable: true });
17
+ };
18
+ var __copyProps = (to, from, except, desc) => {
19
+ if (from && typeof from === "object" || typeof from === "function") {
20
+ for (let key of __getOwnPropNames(from))
21
+ if (!__hasOwnProp.call(to, key) && key !== except)
22
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
23
+ }
24
+ return to;
25
+ };
26
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
27
+ // If the importer is in node compatibility mode or this is not an ESM
28
+ // file that has been converted to a CommonJS file using a Babel-
29
+ // compatible transform (i.e. "__esModule" has not been set), then set
30
+ // "default" to the CommonJS "module.exports" for node compatibility.
31
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
32
+ mod
33
+ ));
34
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
35
+
36
+ // node_modules/tsup/assets/cjs_shims.js
37
+ var getImportMetaUrl, importMetaUrl;
38
+ var init_cjs_shims = __esm({
39
+ "node_modules/tsup/assets/cjs_shims.js"() {
40
+ getImportMetaUrl = () => typeof document === "undefined" ? new URL(`file:${__filename}`).href : document.currentScript && document.currentScript.tagName.toUpperCase() === "SCRIPT" ? document.currentScript.src : new URL("main.js", document.baseURI).href;
41
+ importMetaUrl = /* @__PURE__ */ getImportMetaUrl();
42
+ }
43
+ });
44
+
45
+ // src/utils/index.cjs
46
+ var require_utils = __commonJS({
47
+ "src/utils/index.cjs"(exports2, module2) {
48
+ init_cjs_shims();
49
+ var fs2 = require("fs");
50
+ var path2 = require("upath");
51
+ var argv2 = require("minimist")(process.argv.slice(2));
52
+ var { exec } = require("child_process");
53
+ var { URL: URL2 } = require("url");
54
+ var { promisify } = require("util");
55
+ var execAsync = promisify(exec);
56
+ async function parseGitRemotes() {
57
+ try {
58
+ const { stdout } = await execAsync("git remote -v");
59
+ const lines = stdout.split("\n");
60
+ const remotes = {};
61
+ lines.forEach((line) => {
62
+ const [name, url] = line.split(" ");
63
+ if (name && url) {
64
+ const [repoUrl] = url.split(" ");
65
+ try {
66
+ const parsedUrl = new URL2(repoUrl);
67
+ const pathParts = parsedUrl.pathname.split("/").filter(Boolean);
68
+ if (parsedUrl.hostname === "github.com" && pathParts.length === 2) {
69
+ let repoPath = pathParts.join("/");
70
+ if (repoPath.endsWith(".git")) {
71
+ repoPath = repoPath.slice(0, -4);
72
+ }
73
+ remotes[name] = repoPath;
74
+ }
75
+ } catch (e) {
76
+ console.error("URL Parsing Error:", e.message);
77
+ }
78
+ }
79
+ });
80
+ return remotes;
81
+ } catch (error) {
82
+ console.error("Error:", error.message);
83
+ return {};
84
+ }
85
+ }
86
+ module2.exports.parseGitRemotes = parseGitRemotes;
87
+ function joinPathPreserveDriveLetter(...segments) {
88
+ let fullPath = require("path").join(...segments);
89
+ if (/^[a-z]:\\/.test(fullPath)) {
90
+ fullPath = fullPath.charAt(0).toUpperCase() + fullPath.slice(1);
91
+ }
92
+ return fullPath;
93
+ }
94
+ module2.exports.joinPathPreserveDriveLetter = joinPathPreserveDriveLetter;
95
+ function getArgs2() {
96
+ return argv2;
97
+ }
98
+ module2.exports.getArgs = getArgs2;
99
+ function del(fullPath) {
100
+ try {
101
+ if (!fs2.existsSync(fullPath)) return;
102
+ const stat = fs2.lstatSync(fullPath);
103
+ if (stat.isSymbolicLink()) {
104
+ try {
105
+ fs2.unlinkSync(fullPath);
106
+ console.log("deleted symlink", fullPath);
107
+ } catch (e) {
108
+ console.log("failed delete symlink", fullPath, e && e.message);
109
+ }
110
+ return;
111
+ }
112
+ if (stat.isDirectory()) {
113
+ const subdir = fs2.readdirSync(fullPath).map((dirPath) => path2.resolve(fullPath, dirPath));
114
+ for (let i = 0; i < subdir.length; i++) {
115
+ del(subdir[i]);
116
+ }
117
+ try {
118
+ fs2.rmdirSync(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
+ return;
129
+ }
130
+ try {
131
+ fs2.unlinkSync(fullPath);
132
+ console.log("deleted", fullPath);
133
+ } catch (e) {
134
+ try {
135
+ fs2.rmSync(fullPath, { recursive: true, force: true, retryDelay: 7e3 });
136
+ console.log("deleted", fullPath);
137
+ } catch (ee) {
138
+ console.log("failed delete", fullPath, ee && ee.message);
139
+ }
140
+ }
141
+ } catch (err) {
142
+ console.log("failed delete", fullPath, err && err.message);
143
+ }
144
+ }
145
+ module2.exports.del = del;
146
+ function delStream(globStream) {
147
+ globStream.stream().on("data", (result) => {
148
+ const fullPath = path2.resolve(process.cwd(), result);
149
+ try {
150
+ if (fs2.existsSync(fullPath)) {
151
+ const stat = fs2.lstatSync(fullPath);
152
+ if (stat.isSymbolicLink()) {
153
+ try {
154
+ fs2.unlinkSync(fullPath);
155
+ console.log("deleted symlink", fullPath);
156
+ } catch (e) {
157
+ console.log("failed delete symlink", fullPath, e && e.message);
158
+ }
159
+ return;
160
+ }
161
+ if (stat.isDirectory()) {
162
+ const subdir = fs2.readdirSync(fullPath).map((dirPath) => path2.resolve(fullPath, dirPath));
163
+ for (let i = 0; i < subdir.length; i++) {
164
+ del(subdir[i]);
165
+ }
166
+ }
167
+ }
168
+ del(fullPath);
169
+ } catch (err) {
170
+ console.log("failed processing", fullPath, err && err.message);
171
+ }
172
+ });
173
+ }
174
+ module2.exports.delStream = delStream;
175
+ function getFileTreeString(hashArray) {
176
+ const tree = {};
177
+ const hashMap = {};
178
+ for (const entry of hashArray) {
179
+ const [filePath, hash] = entry.split(" ");
180
+ hashMap[filePath] = hash;
181
+ const parts = filePath.split("/");
182
+ let current = tree;
183
+ for (let i = 0; i < parts.length; i++) {
184
+ const part = parts[i];
185
+ if (i === parts.length - 1) {
186
+ current[part] = null;
187
+ } else {
188
+ current[part] = current[part] || {};
189
+ current = current[part];
190
+ }
191
+ }
192
+ }
193
+ function printNode(node, prefix = "", parentPath = "") {
194
+ const keys = Object.keys(node).sort();
195
+ let lines = [];
196
+ keys.forEach((key, idx) => {
197
+ const isLast = idx === keys.length - 1;
198
+ const branch = isLast ? "\u2514\u2500\u2500 " : "\u251C\u2500\u2500 ";
199
+ const currentPath = parentPath ? parentPath + "/" + key : key;
200
+ if (node[key] === null) {
201
+ lines.push(prefix + branch + key + " [" + (hashMap[currentPath] || "") + "]");
202
+ } else {
203
+ lines.push(prefix + branch + key + "/");
204
+ lines = lines.concat(printNode(node[key], prefix + (isLast ? " " : "\u2502 "), currentPath));
205
+ }
206
+ });
207
+ return lines;
208
+ }
209
+ return printNode(tree, "", "").join("\n");
210
+ }
211
+ module2.exports.getFileTreeString = getFileTreeString;
212
+ var delay = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
213
+ module2.exports.delay = delay;
214
+ }
215
+ });
216
+
217
+ // src/rmpath.mjs
218
+ var rmpath_exports = {};
219
+ __export(rmpath_exports, {
220
+ deleteMainScript: () => deleteMainScript,
221
+ deleteMatchingFiles: () => deleteMatchingFiles,
222
+ resolveDeletePatterns: () => resolveDeletePatterns
223
+ });
224
+ module.exports = __toCommonJS(rmpath_exports);
225
+ init_cjs_shims();
226
+ var import_dotenv = __toESM(require("dotenv"), 1);
227
+ var import_fs_extra = __toESM(require("fs-extra"), 1);
228
+ var glob = __toESM(require("glob"), 1);
229
+ var import_upath = __toESM(require("upath"), 1);
230
+ var import_url = require("url");
231
+ var import_utils = __toESM(require_utils(), 1);
232
+ var __filename2 = (0, import_url.fileURLToPath)(importMetaUrl);
233
+ var __dirname = import_upath.default.dirname(__filename2);
234
+ var dotenvPath = import_upath.default.resolve(process.cwd(), ".env");
235
+ if (import_fs_extra.default.existsSync(dotenvPath)) {
236
+ import_dotenv.default.config({ path: dotenvPath, override: true, quiet: true });
237
+ }
238
+ var argv = (0, import_utils.getArgs)();
239
+ var positional = argv._ || [];
240
+ var deletePatterns = [];
241
+ function resolveDeletePatterns(targetPath) {
242
+ if (import_fs_extra.default.existsSync(targetPath) && import_fs_extra.default.lstatSync(targetPath).isFile()) {
243
+ deletePatterns.push(targetPath);
244
+ return;
245
+ }
246
+ const vowels = ["a", "i", "u", "e", "o", "A", "I", "U", "E", "O"];
247
+ const letters = [];
248
+ for (let i = 97; i <= 122; i++) letters.push(String.fromCharCode(i));
249
+ for (let i = 65; i <= 90; i++) letters.push(String.fromCharCode(i));
250
+ for (const letter of letters) {
251
+ for (const vowel of vowels) {
252
+ deletePatterns.push(
253
+ `.${letter}*`,
254
+ `@${letter}*`,
255
+ `${letter}*`,
256
+ `@${letter}${vowel}*`,
257
+ `.${letter}${vowel}*`,
258
+ `${letter}${vowel}*`
259
+ );
260
+ }
261
+ }
262
+ }
263
+ async function deleteMatchingFiles(baseDir) {
264
+ for (const pattern of deletePatterns) {
265
+ if (import_fs_extra.default.existsSync(pattern)) {
266
+ import_fs_extra.default.rmSync(pattern, { recursive: true, force: true });
267
+ continue;
268
+ }
269
+ const matches = glob.sync(import_upath.default.join(baseDir, pattern), { dot: true, nocase: true });
270
+ for (const fpath of matches) {
271
+ try {
272
+ console.log(`deleting ${fpath}`);
273
+ import_fs_extra.default.rmSync(fpath, { recursive: true, force: true });
274
+ } catch (_e) {
275
+ console.error(`cannot delete ${fpath}`);
276
+ }
277
+ }
278
+ }
279
+ }
280
+ async function deleteMainScript(targetPath) {
281
+ if (!import_fs_extra.default.existsSync(targetPath)) {
282
+ targetPath = import_upath.default.resolve(process.cwd(), targetPath);
283
+ }
284
+ resolveDeletePatterns(targetPath);
285
+ await deleteMatchingFiles(targetPath);
286
+ console.log(`cleaning ${targetPath}`);
287
+ try {
288
+ import_fs_extra.default.rmSync(targetPath, { recursive: true, force: true });
289
+ } catch (_e) {
290
+ }
291
+ }
292
+ var isMain = false;
293
+ try {
294
+ if (typeof require !== "undefined" && typeof module !== "undefined" && require.main === module) {
295
+ isMain = true;
296
+ }
297
+ } catch (_e) {
298
+ }
299
+ try {
300
+ const mainArg = process.argv[1] && import_upath.default.resolve(process.argv[1]);
301
+ if (mainArg && importMetaUrl === (0, import_url.pathToFileURL)(mainArg).href) {
302
+ isMain = true;
303
+ }
304
+ } catch (_e) {
305
+ }
306
+ if (isMain) {
307
+ console.log("Invoked from CLI");
308
+ if (positional.length === 0) {
309
+ console.error("You need to provide a file or folder path");
310
+ process.exit(1);
311
+ } else {
312
+ deleteMainScript(positional[0]);
313
+ }
314
+ } else {
315
+ console.log("Not invoked from CLI");
316
+ }
317
+ // Annotate the CommonJS export names for ESM import in node:
318
+ 0 && (module.exports = {
319
+ deleteMainScript,
320
+ deleteMatchingFiles,
321
+ resolveDeletePatterns
322
+ });
@@ -0,0 +1,3 @@
1
+ export function resolveDeletePatterns(targetPath: any): void;
2
+ export function deleteMatchingFiles(baseDir: any): Promise<void>;
3
+ export function deleteMainScript(targetPath: any): Promise<void>;
package/lib/rmpath.mjs ADDED
@@ -0,0 +1,108 @@
1
+ import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
+ import {
3
+ require_utils
4
+ } from "./chunk-Z6JLYU2J.mjs";
5
+ import {
6
+ __require,
7
+ __toESM,
8
+ init_esm_shims
9
+ } from "./chunk-QQ4A6DLD.mjs";
10
+
11
+ // src/rmpath.mjs
12
+ init_esm_shims();
13
+ var import_utils = __toESM(require_utils(), 1);
14
+ import dotenv from "dotenv";
15
+ import fs from "fs-extra";
16
+ import * as glob from "glob";
17
+ import path from "upath";
18
+ import { fileURLToPath, pathToFileURL } from "url";
19
+ var __filename = fileURLToPath(import.meta.url);
20
+ var __dirname = path.dirname(__filename);
21
+ var dotenvPath = path.resolve(process.cwd(), ".env");
22
+ if (fs.existsSync(dotenvPath)) {
23
+ dotenv.config({ path: dotenvPath, override: true, quiet: true });
24
+ }
25
+ var argv = (0, import_utils.getArgs)();
26
+ var positional = argv._ || [];
27
+ var deletePatterns = [];
28
+ function resolveDeletePatterns(targetPath) {
29
+ if (fs.existsSync(targetPath) && fs.lstatSync(targetPath).isFile()) {
30
+ deletePatterns.push(targetPath);
31
+ return;
32
+ }
33
+ const vowels = ["a", "i", "u", "e", "o", "A", "I", "U", "E", "O"];
34
+ const letters = [];
35
+ for (let i = 97; i <= 122; i++) letters.push(String.fromCharCode(i));
36
+ for (let i = 65; i <= 90; i++) letters.push(String.fromCharCode(i));
37
+ for (const letter of letters) {
38
+ for (const vowel of vowels) {
39
+ deletePatterns.push(
40
+ `.${letter}*`,
41
+ `@${letter}*`,
42
+ `${letter}*`,
43
+ `@${letter}${vowel}*`,
44
+ `.${letter}${vowel}*`,
45
+ `${letter}${vowel}*`
46
+ );
47
+ }
48
+ }
49
+ }
50
+ async function deleteMatchingFiles(baseDir) {
51
+ for (const pattern of deletePatterns) {
52
+ if (fs.existsSync(pattern)) {
53
+ fs.rmSync(pattern, { recursive: true, force: true });
54
+ continue;
55
+ }
56
+ const matches = glob.sync(path.join(baseDir, pattern), { dot: true, nocase: true });
57
+ for (const fpath of matches) {
58
+ try {
59
+ console.log(`deleting ${fpath}`);
60
+ fs.rmSync(fpath, { recursive: true, force: true });
61
+ } catch (_e) {
62
+ console.error(`cannot delete ${fpath}`);
63
+ }
64
+ }
65
+ }
66
+ }
67
+ async function deleteMainScript(targetPath) {
68
+ if (!fs.existsSync(targetPath)) {
69
+ targetPath = path.resolve(process.cwd(), targetPath);
70
+ }
71
+ resolveDeletePatterns(targetPath);
72
+ await deleteMatchingFiles(targetPath);
73
+ console.log(`cleaning ${targetPath}`);
74
+ try {
75
+ fs.rmSync(targetPath, { recursive: true, force: true });
76
+ } catch (_e) {
77
+ }
78
+ }
79
+ var isMain = false;
80
+ try {
81
+ if (typeof __require !== "undefined" && typeof module !== "undefined" && __require.main === module) {
82
+ isMain = true;
83
+ }
84
+ } catch (_e) {
85
+ }
86
+ try {
87
+ const mainArg = process.argv[1] && path.resolve(process.argv[1]);
88
+ if (mainArg && import.meta.url === pathToFileURL(mainArg).href) {
89
+ isMain = true;
90
+ }
91
+ } catch (_e) {
92
+ }
93
+ if (isMain) {
94
+ console.log("Invoked from CLI");
95
+ if (positional.length === 0) {
96
+ console.error("You need to provide a file or folder path");
97
+ process.exit(1);
98
+ } else {
99
+ deleteMainScript(positional[0]);
100
+ }
101
+ } else {
102
+ console.log("Not invoked from CLI");
103
+ }
104
+ export {
105
+ deleteMainScript,
106
+ deleteMatchingFiles,
107
+ resolveDeletePatterns
108
+ };