binary-collections 2.0.10 → 2.0.12

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 (290) hide show
  1. package/.opencode/package.json +5 -0
  2. package/.puppeterrc.cjs +25 -0
  3. package/binaries/binary-executor.cjs +138 -3
  4. package/binaries/clean-nodemodule.cjs +138 -3
  5. package/binaries/clean-nodemodules.cjs +138 -3
  6. package/binaries/dev.cjs +138 -3
  7. package/binaries/empty.cjs +138 -3
  8. package/binaries/git-reduce-size.cjs +138 -3
  9. package/binaries/javakill.cjs +138 -3
  10. package/binaries/kill-night-crows.bat +7 -0
  11. package/binaries/kill-night-crows.ps1 +172 -0
  12. package/binaries/kill-process.cjs +138 -3
  13. package/binaries/nodekill.cjs +138 -3
  14. package/binaries/prod.cjs +138 -3
  15. package/binaries/py +111 -0
  16. package/binaries/py.cjs +178 -0
  17. package/binaries/py.cmd +49 -0
  18. package/binaries/rmfind.cjs +138 -3
  19. package/binaries/rmx +15 -1
  20. package/binaries/rmx.cjs +138 -3
  21. package/binaries/rmx.cmd +12 -0
  22. package/binaries/submodule-token.cjs +138 -3
  23. package/binaries/test-cjs +18 -0
  24. package/binaries/test-cjs.cjs +178 -0
  25. package/binaries/test-cjs.cmd +26 -0
  26. package/binaries/test-esm +16 -0
  27. package/binaries/test-esm.cjs +178 -0
  28. package/binaries/test-esm.cmd +23 -0
  29. package/binaries/yarn-clean +32 -0
  30. package/binaries/yarn-clean.cjs +178 -0
  31. package/binaries/yarn-clean.cmd +30 -0
  32. package/binaries/yarn-clean.py +166 -0
  33. package/binaries/yc +110 -0
  34. package/binaries/yc.cjs +178 -0
  35. package/lib/binary-collections/config.cjs +126 -0
  36. package/lib/binary-collections/config.mjs +7 -0
  37. package/lib/binary-collections/executeScript.cjs +19 -0
  38. package/lib/binary-collections/executeScript.d.cts +12 -0
  39. package/lib/binary-collections/executeScript.mjs +6 -0
  40. package/lib/binary-collections/findScript.cjs +284 -0
  41. package/lib/binary-collections/findScript.d.cts +12 -0
  42. package/lib/binary-collections/findScript.mjs +7 -0
  43. package/lib/binary-collections/listScript.cjs +266 -0
  44. package/lib/binary-collections/listScript.d.cts +19 -0
  45. package/lib/binary-collections/listScript.mjs +7 -0
  46. package/lib/binary-collections.cjs +342 -194
  47. package/lib/binary-collections.mjs +22 -268
  48. package/lib/changelog.cjs +61 -13
  49. package/lib/changelog.mjs +1 -1
  50. package/lib/{chunk-E6FDDAOO.mjs → chunk-2LSRSEXF.mjs} +2 -2
  51. package/lib/chunk-34IQDTLZ.mjs +27 -0
  52. package/lib/chunk-3HFFECCI.mjs +27 -0
  53. package/lib/{chunk-V3N3JEUF.mjs → chunk-5RTXZVCW.mjs} +60 -13
  54. package/lib/chunk-66KDU4TX.mjs +268 -0
  55. package/lib/chunk-6PU7BAHB.mjs +61 -0
  56. package/lib/{chunk-6HHJRKFB.mjs → chunk-BZWVHODJ.mjs} +4 -1
  57. package/lib/chunk-C6D2TTYU.mjs +32 -0
  58. package/lib/chunk-FB2WKVJD.mjs +158 -0
  59. package/lib/{chunk-66PAU5PS.mjs → chunk-G5UUEWUO.mjs} +9 -5
  60. package/lib/{chunk-HO6GHCOB.mjs → chunk-GAGABICI.mjs} +198 -63
  61. package/lib/chunk-H44UWUFY.mjs +105 -0
  62. package/lib/chunk-NCZPTKDV.mjs +79 -0
  63. package/lib/chunk-NGFK3EYW.mjs +28 -0
  64. package/lib/chunk-NVEG3LEZ.mjs +143 -0
  65. package/lib/chunk-OGXVGBRI.mjs +29 -0
  66. package/lib/chunk-OXV52GD5.mjs +62 -0
  67. package/lib/{chunk-PDSXF5HY.mjs → chunk-PDN26I7O.mjs} +1 -0
  68. package/lib/chunk-PXBMHE7O.mjs +35 -0
  69. package/lib/chunk-R5FJOR63.mjs +47 -0
  70. package/lib/chunk-SPTECFE5.mjs +180 -0
  71. package/lib/chunk-UXCFNAR6.mjs +55 -0
  72. package/lib/chunk-V2IBPCEV.mjs +39 -0
  73. package/lib/chunk-XPJGCDOD.mjs +14 -0
  74. package/lib/{chunk-AI4CVPJ7.mjs → chunk-ZDMWBSYF.mjs} +4 -4
  75. package/lib/chunk-ZOWVMII3.mjs +228 -0
  76. package/lib/clean-github-actions-caches-cli.cjs +465 -0
  77. package/lib/clean-github-actions-caches-cli.d.cts +1 -0
  78. package/lib/clean-github-actions-caches-cli.mjs +56 -0
  79. package/lib/clean-github-actions-caches.cjs +152 -160
  80. package/lib/clean-github-actions-caches.d.cts +15 -1
  81. package/lib/clean-github-actions-caches.mjs +4 -130
  82. package/lib/cross-env/command.cjs +63 -0
  83. package/lib/cross-env/command.d.ts +8 -0
  84. package/lib/cross-env/command.js +45 -0
  85. package/lib/cross-env/command.mjs +9 -0
  86. package/lib/cross-env/index.cjs +178 -0
  87. package/lib/cross-env/index.d.ts +8 -0
  88. package/lib/cross-env/index.js +102 -0
  89. package/lib/cross-env/index.mjs +101 -0
  90. package/lib/cross-env/variable.cjs +60 -0
  91. package/lib/cross-env/variable.d.ts +7 -0
  92. package/lib/cross-env/variable.js +59 -0
  93. package/lib/cross-env/variable.mjs +9 -0
  94. package/lib/del-gradle.cjs +61 -13
  95. package/lib/del-gradle.js +9 -8
  96. package/lib/del-gradle.mjs +1 -1
  97. package/lib/del-node-modules.cjs +143 -148
  98. package/lib/del-node-modules.js +210 -14
  99. package/lib/del-node-modules.mjs +148 -17
  100. package/lib/del-ps.cjs +61 -13
  101. package/lib/del-ps.js +9 -8
  102. package/lib/del-ps.mjs +1 -1
  103. package/lib/del-yarn-caches.cjs +61 -13
  104. package/lib/del-yarn-caches.js +2 -2
  105. package/lib/del-yarn-caches.mjs +1 -1
  106. package/lib/file/copy-cli.cjs +92 -0
  107. package/lib/file/copy-cli.d.mts +1 -0
  108. package/lib/file/copy-cli.mjs +55 -0
  109. package/lib/file/copy.cjs +56 -0
  110. package/lib/file/copy.d.mts +1 -0
  111. package/lib/file/copy.mjs +8 -0
  112. package/lib/file/move-cli.cjs +91 -0
  113. package/lib/file/move-cli.d.mts +1 -0
  114. package/lib/file/move-cli.mjs +55 -0
  115. package/lib/file/move.cjs +55 -0
  116. package/lib/file/move.d.mts +1 -0
  117. package/lib/file/move.mjs +8 -0
  118. package/lib/find-node-modules-cli.js +2 -1
  119. package/lib/free-chatgpt.cjs +259 -47
  120. package/lib/free-chatgpt.js +10 -10
  121. package/lib/free-chatgpt.mjs +2 -2
  122. package/lib/git/gitattributes.cjs +1 -0
  123. package/lib/git/gitattributes.d.cts +7 -2
  124. package/lib/git/gitattributes.mjs +1 -1
  125. package/lib/git/line-endings.cjs +2 -1
  126. package/lib/git/line-endings.mjs +2 -2
  127. package/lib/git/undo-commit-cli.cjs +110 -0
  128. package/lib/git/undo-commit-cli.d.ts +1 -0
  129. package/lib/git/undo-commit-cli.js +4 -0
  130. package/lib/git/undo-commit-cli.mjs +14 -0
  131. package/lib/git/undo-commit.cjs +81 -0
  132. package/lib/git/undo-commit.d.cts +1 -0
  133. package/lib/git/undo-commit.mjs +7 -0
  134. package/lib/git/undo-staged-cli.cjs +110 -0
  135. package/lib/git/undo-staged-cli.d.ts +1 -0
  136. package/lib/git/undo-staged-cli.js +4 -0
  137. package/lib/git/undo-staged-cli.mjs +14 -0
  138. package/lib/git/undo-staged.cjs +81 -0
  139. package/lib/git/undo-staged.d.cts +1 -0
  140. package/lib/git/undo-staged.mjs +7 -0
  141. package/lib/git/user-config.cjs +61 -14
  142. package/lib/git/user-config.mjs +2 -2
  143. package/lib/git-diff-cli.cjs +427 -75
  144. package/lib/git-diff-cli.d.ts +1 -0
  145. package/lib/git-diff-cli.js +1 -0
  146. package/lib/git-diff-cli.mjs +6 -4
  147. package/lib/git-diff.cjs +426 -75
  148. package/lib/git-diff.d.ts +2 -1
  149. package/lib/git-diff.js +91 -34
  150. package/lib/git-diff.mjs +5 -4
  151. package/lib/git-fix.cjs +64 -16
  152. package/lib/git-fix.mjs +10 -10
  153. package/lib/git-purge.cjs +61 -13
  154. package/lib/git-purge.mjs +1 -1
  155. package/lib/index.d.ts +1 -1
  156. package/lib/kill-night-crows.cjs +87 -0
  157. package/lib/kill-night-crows.d.mts +1 -0
  158. package/lib/kill-night-crows.mjs +65 -0
  159. package/lib/node-cache-cleaner/npm.cjs +65 -0
  160. package/lib/node-cache-cleaner/npm.d.ts +2 -0
  161. package/lib/node-cache-cleaner/npm.js +41 -0
  162. package/lib/node-cache-cleaner/npm.mjs +10 -0
  163. package/lib/node-cache-cleaner/npx.cjs +89 -0
  164. package/lib/node-cache-cleaner/npx.d.ts +4 -0
  165. package/lib/node-cache-cleaner/npx.js +82 -0
  166. package/lib/{ps/index.d.mjs → node-cache-cleaner/npx.mjs} +6 -5
  167. package/lib/node-cache-cleaner/yarn.cjs +73 -0
  168. package/lib/node-cache-cleaner/yarn.d.ts +2 -0
  169. package/lib/node-cache-cleaner/yarn.js +62 -0
  170. package/lib/node-cache-cleaner/yarn.mjs +10 -0
  171. package/lib/node-cache-cleaner-cli.cjs +182 -0
  172. package/lib/node-cache-cleaner-cli.d.ts +2 -0
  173. package/lib/node-cache-cleaner-cli.js +60 -0
  174. package/lib/node-cache-cleaner-cli.mjs +56 -0
  175. package/lib/node-executor.cjs +91 -0
  176. package/lib/node-executor.d.cts +2 -0
  177. package/lib/node-executor.mjs +103 -0
  178. package/lib/npm-run-series.cjs +79 -39
  179. package/lib/npm-run-series.mjs +20 -6
  180. package/lib/package-resolutions-updater-cli.cjs +645 -0
  181. package/lib/package-resolutions-updater-cli.d.mts +1 -0
  182. package/lib/package-resolutions-updater-cli.mjs +102 -0
  183. package/lib/package-resolutions-updater.cjs +259 -133
  184. package/lib/package-resolutions-updater.d.mts +51 -1
  185. package/lib/package-resolutions-updater.mjs +18 -294
  186. package/lib/php-cs-fixer-staged.cjs +105 -0
  187. package/lib/php-cs-fixer-staged.d.cts +2 -0
  188. package/lib/php-cs-fixer-staged.mjs +117 -0
  189. package/lib/print-directory-tree.cjs +62 -14
  190. package/lib/print-directory-tree.mjs +2 -2
  191. package/lib/ps/connected-domain.d.ts +1 -1
  192. package/lib/ps/connected-domain.js +10 -10
  193. package/lib/ps/index.cjs +1 -1
  194. package/lib/ps/index.mjs +177 -171
  195. package/lib/ps/isWin.js +1 -1
  196. package/lib/ps/table-parser.js +6 -6
  197. package/lib/remove-module.cjs +61 -13
  198. package/lib/remove-module.mjs +1 -1
  199. package/lib/rm-node-module-cli.cjs +222 -0
  200. package/lib/rm-node-module-cli.d.cts +1 -0
  201. package/lib/rm-node-module-cli.mjs +89 -0
  202. package/lib/rm-node-modules.cjs +127 -0
  203. package/lib/rm-node-modules.d.cts +35 -0
  204. package/lib/{binary-collections-config.mjs → rm-node-modules.mjs} +3 -3
  205. package/lib/rmpath.cjs +63 -15
  206. package/lib/rmpath.mjs +2 -2
  207. package/lib/submodule-install.cjs +107 -47
  208. package/lib/submodule-install.mjs +48 -35
  209. package/lib/submodule-remove-cli.cjs +6 -3
  210. package/lib/submodule-remove-cli.js +3 -3
  211. package/lib/submodule-remove-cli.mjs +2 -3
  212. package/lib/submodule-remove.cjs +4 -1
  213. package/lib/submodule-remove.mjs +1 -1
  214. package/lib/utils/chatgpt.cjs +198 -34
  215. package/lib/utils/chatgpt.js +260 -93
  216. package/lib/utils/chatgpt.mjs +1 -1
  217. package/lib/utils/findEnvFiles.cjs +89 -0
  218. package/lib/utils/findEnvFiles.d.cts +19 -0
  219. package/lib/utils/findEnvFiles.mjs +6 -0
  220. package/lib/utils/findWorkspaceRoot.cjs +70 -0
  221. package/lib/utils/findWorkspaceRoot.d.ts +9 -0
  222. package/lib/utils/findWorkspaceRoot.js +57 -0
  223. package/lib/utils/findWorkspaceRoot.mjs +40 -0
  224. package/lib/utils/index.cjs +60 -13
  225. package/lib/utils/index.mjs +1 -1
  226. package/lib/utils/isGithubTokenValid.cjs +64 -0
  227. package/lib/utils/isGithubTokenValid.d.ts +7 -0
  228. package/lib/utils/isGithubTokenValid.js +48 -0
  229. package/lib/utils/isGithubTokenValid.mjs +36 -0
  230. package/lib/{ps/index.d.cjs → utils/isWindows.cjs} +17 -3
  231. package/lib/utils/isWindows.d.ts +5 -0
  232. package/lib/utils/isWindows.js +10 -0
  233. package/lib/utils/isWindows.mjs +8 -0
  234. package/lib/utils/runBash.cjs +53 -0
  235. package/lib/utils/runBash.d.cts +12 -0
  236. package/lib/utils/runBash.mjs +66 -0
  237. package/lib/yarn-per-branch-lock-installer.cjs +97 -0
  238. package/lib/yarn-per-branch-lock-installer.d.cts +2 -0
  239. package/lib/yarn-per-branch-lock-installer.mjs +109 -0
  240. package/lib/yarn-reinstall.cjs +61 -13
  241. package/lib/yarn-reinstall.mjs +1 -1
  242. package/package.json +133 -110
  243. package/readme.html +784 -0
  244. package/readme.md +116 -229
  245. package/releases/readme.md +1 -1
  246. package/requirements.txt +1 -0
  247. package/test/README.md +2 -2
  248. package/test-project/package.json +8 -2
  249. package/test-project/workspaces/workspace-a/package.json +135 -0
  250. package/test-project/workspaces/workspace-a/readme.md +20 -0
  251. package/test-project/workspaces/workspace-a/release/readme.md +42 -0
  252. package/test-project/workspaces/workspace-a/test/demo/package.json +25 -0
  253. package/test-project/workspaces/workspace-a/test/readme.md +12 -0
  254. package/test-project/workspaces/workspace-b/package.json +139 -0
  255. package/test-project/workspaces/workspace-b/readme.md +94 -0
  256. package/test-project/workspaces/workspace-b/requirements.txt +1 -0
  257. package/test-project/workspaces/workspace-b/test/sample-project/package.json +7 -0
  258. package/test-project/workspaces/workspace-b/themes/hexo-theme-flowbite/package.json +96 -0
  259. package/test-project/workspaces/workspace-b/themes/hexo-theme-flowbite/readme.md +156 -0
  260. package/tmp/rm-node-modules-test-project/package.json +17 -0
  261. package/tmp/rm-node-modules-test-project/packages/workspace-a/package.json +16 -0
  262. package/tmp/rm-node-modules-test-project/packages/workspace-b/package.json +16 -0
  263. package/tmp/test-repo/README.md +2 -35
  264. package/tmp/test-repo/package.json +13 -3
  265. package/docs-src/clean-github-actions-caches.md +0 -26
  266. package/docs-src/free-chatgpt.md +0 -26
  267. package/lib/binary-collections-config.cjs +0 -15
  268. package/lib/chunk-4EWQC6GZ.mjs +0 -382
  269. package/lib/chunk-4ZI7BQKQ.mjs +0 -381
  270. package/lib/chunk-5J2BEPY5.mjs +0 -83
  271. package/lib/chunk-AGZYRDC2.mjs +0 -323
  272. package/lib/chunk-BDCHCWHD.mjs +0 -136
  273. package/lib/chunk-BEZKJ25G.mjs +0 -140
  274. package/lib/chunk-DI5MDPSN.mjs +0 -386
  275. package/lib/chunk-GJTGHXRA.mjs +0 -356
  276. package/lib/chunk-HMRMTYZM.mjs +0 -40
  277. package/lib/chunk-HN52G2YL.mjs +0 -305
  278. package/lib/chunk-LEM5OMRP.mjs +0 -384
  279. package/lib/chunk-O6SWBEOQ.mjs +0 -81
  280. package/lib/chunk-RCP7DHVY.mjs +0 -190
  281. package/lib/chunk-SBNDSKG5.mjs +0 -136
  282. package/lib/chunk-U6SO4QEV.mjs +0 -320
  283. package/lib/chunk-XD6BJK6Q.mjs +0 -351
  284. package/lib/chunk-YXSFGA2D.mjs +0 -383
  285. package/lib/git/gitattributes.d.ts +0 -33
  286. package/lib/git/gitattributes.js +0 -223
  287. package/lib/ps/index.d.ts +0 -2
  288. package/lib/ps/index.js +0 -253
  289. package/tmp/typedoc/readme.md +0 -320
  290. /package/lib/{binary-collections-config.d.cts → binary-collections/config.d.cts} +0 -0
@@ -0,0 +1,178 @@
1
+ #!/usr/bin/env node
2
+
3
+ /**
4
+ * Built-in Node.js modules:
5
+ *
6
+ * - child_process:
7
+ * Used to launch external scripts/programs.
8
+ *
9
+ * - path:
10
+ * Safely handles file paths across operating systems.
11
+ *
12
+ * - fs:
13
+ * Used to check whether files exist.
14
+ */
15
+ const { spawnSync } = require("child_process");
16
+ const path = require("path");
17
+ const fs = require("fs");
18
+
19
+ /**
20
+ * __dirname
21
+ * Absolute directory path of this launcher script.
22
+ *
23
+ * __filename
24
+ * Absolute path of this launcher file itself.
25
+ *
26
+ * base
27
+ * Filename without extension.
28
+ *
29
+ * Example:
30
+ * File = "/tools/mytool.js"
31
+ *
32
+ * binDir = "/tools"
33
+ * base = "mytool"
34
+ */
35
+ const binDir = __dirname;
36
+ const base = path.basename(__filename, path.extname(__filename));
37
+
38
+ /**
39
+ * Determine which script extensions to search for
40
+ * based on the current operating system.
41
+ *
42
+ * Windows:
43
+ * .cmd
44
+ * .bat
45
+ * .ps1
46
+ * .vbs
47
+ *
48
+ * Linux/macOS:
49
+ * .sh
50
+ * executable file without extension
51
+ */
52
+ const candidates = process.platform === "win32" ? [".cmd", ".bat", ".ps1", ".vbs"] : [".sh", ""];
53
+
54
+ /**
55
+ * Search for the first matching script
56
+ * in the same directory as this launcher.
57
+ *
58
+ * Example:
59
+ * If base = "mytool"
60
+ *
61
+ * Windows checks:
62
+ * mytool.cmd
63
+ * mytool.bat
64
+ * mytool.ps1
65
+ * mytool.vbs
66
+ *
67
+ * Linux/macOS checks:
68
+ * mytool.sh
69
+ * mytool
70
+ */
71
+ let found = null;
72
+
73
+ for (const ext of candidates) {
74
+ const script = path.join(binDir, base + ext);
75
+
76
+ if (fs.existsSync(script)) {
77
+ found = script;
78
+ break;
79
+ }
80
+ }
81
+
82
+ /**
83
+ * If no matching script was found,
84
+ * print an error and exit with failure code 1.
85
+ */
86
+ if (!found) {
87
+ console.error(`No script found for ${base} in ${binDir}`);
88
+ process.exit(1);
89
+ }
90
+
91
+ /**
92
+ * Detect special script types
93
+ * that require a shell/interpreter.
94
+ */
95
+ const isPs1 = found.endsWith(".ps1");
96
+ const isCmd = found.endsWith(".cmd");
97
+
98
+ /**
99
+ * cmd
100
+ * The executable program to launch.
101
+ *
102
+ * args
103
+ * Arguments passed to the executable.
104
+ */
105
+ let cmd, args;
106
+
107
+ /**
108
+ * PowerShell scripts:
109
+ *
110
+ * Run through powershell.exe because .ps1 files
111
+ * are not directly executable like binaries.
112
+ *
113
+ * Flags:
114
+ * -NoProfile
115
+ * Prevent loading user profile scripts.
116
+ *
117
+ * -ExecutionPolicy Bypass
118
+ * Allow script execution even if policy blocks it.
119
+ *
120
+ * -File
121
+ * Specifies the script to execute.
122
+ *
123
+ * process.argv.slice(2)
124
+ * Forward all user-provided command-line arguments.
125
+ */
126
+ if (isPs1) {
127
+ cmd = "powershell.exe";
128
+
129
+ args = ["-NoProfile", "-ExecutionPolicy", "Bypass", "-File", found, ...process.argv.slice(2)];
130
+
131
+ /**
132
+ * CMD batch files:
133
+ *
134
+ * Run through cmd.exe using:
135
+ * /c
136
+ * which means:
137
+ * "execute command and terminate"
138
+ */
139
+ } else if (isCmd) {
140
+ cmd = "cmd.exe";
141
+
142
+ args = ["/c", found, ...process.argv.slice(2)];
143
+
144
+ /**
145
+ * Other scripts:
146
+ *
147
+ * Usually:
148
+ * - shell scripts (.sh)
149
+ * - executable binaries
150
+ *
151
+ * These can be executed directly.
152
+ */
153
+ } else {
154
+ cmd = found;
155
+ args = process.argv.slice(2);
156
+ }
157
+
158
+ /**
159
+ * Execute the selected script synchronously.
160
+ *
161
+ * stdio: "inherit"
162
+ * Shares the current terminal with the child process,
163
+ * so stdout/stderr/input behave normally.
164
+ *
165
+ * spawnSync waits until the child process exits.
166
+ */
167
+ const result = spawnSync(cmd, args, {
168
+ stdio: "inherit"
169
+ });
170
+
171
+ /**
172
+ * Exit using the same exit code
173
+ * returned by the child process.
174
+ *
175
+ * If result.status is null/undefined,
176
+ * default to exit code 1.
177
+ */
178
+ process.exit(result.status ?? 1);
@@ -0,0 +1,126 @@
1
+ var __getOwnPropNames = Object.getOwnPropertyNames;
2
+ var __esm = (fn, res) => function __init() {
3
+ return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
4
+ };
5
+ var __commonJS = (cb, mod) => function __require() {
6
+ return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
7
+ };
8
+
9
+ // node_modules/tsup/assets/cjs_shims.js
10
+ var init_cjs_shims = __esm({
11
+ "node_modules/tsup/assets/cjs_shims.js"() {
12
+ }
13
+ });
14
+
15
+ // src/utils/findEnvFiles.cjs
16
+ var require_findEnvFiles = __commonJS({
17
+ "src/utils/findEnvFiles.cjs"(exports2, module2) {
18
+ init_cjs_shims();
19
+ var fs = require("fs");
20
+ var path2 = require("path");
21
+ var glob = require("glob");
22
+ var DEFAULT_IGNORES = [
23
+ "**/node_modules/**",
24
+ "**/.git/**",
25
+ "**/.yarn/**",
26
+ "**/.pnpm/**",
27
+ "**/dist/**",
28
+ "**/build/**",
29
+ "**/coverage/**",
30
+ "**/vendor/**",
31
+ "**/tmp/**",
32
+ "**/.cache/**",
33
+ "**/assets/**",
34
+ "**/logs/**",
35
+ "**/output/**",
36
+ "**/public/**",
37
+ "**/static/**",
38
+ "**/temp/**",
39
+ "**/backup/**",
40
+ "**/backups/**",
41
+ "**/examples/**",
42
+ "**/docs/**",
43
+ "**/tests/**",
44
+ "**/__tests__/**",
45
+ "**/spec/**",
46
+ "**/__specs__/**",
47
+ "**/scripts/**",
48
+ "**/bin/**",
49
+ "**/hooks/**",
50
+ "**/config/**",
51
+ "**/configs/**",
52
+ "**/settings/**",
53
+ "**/.vscode/**",
54
+ "**/.idea/**"
55
+ ];
56
+ function findEnvFiles(startDir = process.cwd(), filter) {
57
+ const found = /* @__PURE__ */ new Set();
58
+ function addFile(file) {
59
+ const normalized = path2.normalize(file);
60
+ if (typeof filter === "function" && !filter(normalized)) {
61
+ return;
62
+ }
63
+ found.add(normalized);
64
+ }
65
+ let current = path2.resolve(startDir);
66
+ while (true) {
67
+ const envPath = path2.join(current, ".env");
68
+ if (fs.existsSync(envPath)) {
69
+ addFile(envPath);
70
+ }
71
+ const parent = path2.dirname(current);
72
+ if (parent === current) {
73
+ break;
74
+ }
75
+ current = parent;
76
+ }
77
+ const files = glob.globSync("**/.env*", {
78
+ cwd: startDir,
79
+ absolute: true,
80
+ nodir: true,
81
+ ignore: DEFAULT_IGNORES
82
+ });
83
+ for (const file of files) {
84
+ addFile(file);
85
+ }
86
+ return [...found];
87
+ }
88
+ function findEnvWithToken2(startDir = process.cwd(), tokenName = "GITHUB_TOKEN") {
89
+ const envFiles = findEnvFiles(startDir);
90
+ return envFiles.find((file) => {
91
+ try {
92
+ const content = fs.readFileSync(file, "utf-8");
93
+ const regex = new RegExp(`^\\s*${tokenName}\\s*=`, "m");
94
+ return regex.test(content);
95
+ } catch (err) {
96
+ console.warn(`Failed to read ${file}: ${err instanceof Error ? err.message : String(err)}`);
97
+ return false;
98
+ }
99
+ });
100
+ }
101
+ module2.exports = {
102
+ DEFAULT_IGNORES,
103
+ findEnvFiles,
104
+ findEnvWithToken: findEnvWithToken2,
105
+ default: findEnvFiles
106
+ };
107
+ }
108
+ });
109
+
110
+ // src/binary-collections/config.cjs
111
+ init_cjs_shims();
112
+ var path = require("path");
113
+ var { findEnvWithToken } = require_findEnvFiles();
114
+ require("dotenv").config({ path: findEnvWithToken(), quiet: true, overwrite: true });
115
+ function getTempDir() {
116
+ return process.env.TEMP_DIR || path.join(process.cwd(), "tmp");
117
+ }
118
+ function getTempPath(...segments) {
119
+ return path.join(getTempDir(), ...segments);
120
+ }
121
+ var TEMP_BASE_DIR = getTempDir();
122
+ module.exports = {
123
+ getTempDir,
124
+ getTempPath,
125
+ TEMP_BASE_DIR
126
+ };
@@ -0,0 +1,7 @@
1
+ import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
+ import {
3
+ require_config
4
+ } from "../chunk-G5UUEWUO.mjs";
5
+ import "../chunk-H44UWUFY.mjs";
6
+ import "../chunk-QQ4A6DLD.mjs";
7
+ export default require_config();
@@ -0,0 +1,19 @@
1
+ // src/binary-collections/executeScript.cjs
2
+ var { spawn } = require("child_process");
3
+ function executeScript(scriptPath, args) {
4
+ console.log(`\u{1F527} Executing script: ${scriptPath} args: ${args.join(" ")}
5
+ `);
6
+ const child = spawn("node", [scriptPath, ...args], {
7
+ stdio: "inherit",
8
+ shell: true
9
+ });
10
+ child.on("error", (error) => {
11
+ console.error(`\u274C Error executing script: ${error.message}`);
12
+ process.exit(1);
13
+ });
14
+ child.on("close", (code) => {
15
+ process.exit(code);
16
+ });
17
+ }
18
+ module.exports = executeScript;
19
+ module.exports.default = executeScript;
@@ -0,0 +1,12 @@
1
+ export = executeScript;
2
+ /**
3
+ * Executes a script file using Node.js with the provided arguments
4
+ * @function executeScript
5
+ * @param {string} scriptPath - The absolute path to the script file to execute
6
+ * @param {string[]} args - Array of arguments to pass to the script
7
+ * @returns {void} Exits the process when the script execution completes
8
+ */
9
+ declare function executeScript(scriptPath: string, args: string[]): void;
10
+ declare namespace executeScript {
11
+ export { executeScript as default };
12
+ }
@@ -0,0 +1,6 @@
1
+ import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
+ import {
3
+ require_executeScript
4
+ } from "../chunk-PXBMHE7O.mjs";
5
+ import "../chunk-QQ4A6DLD.mjs";
6
+ export default require_executeScript();
@@ -0,0 +1,284 @@
1
+ var __getOwnPropNames = Object.getOwnPropertyNames;
2
+ var __commonJS = (cb, mod) => function __require() {
3
+ return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
4
+ };
5
+
6
+ // package.json
7
+ var require_package = __commonJS({
8
+ "package.json"(exports2, module2) {
9
+ module2.exports = {
10
+ name: "binary-collections",
11
+ version: "2.0.12",
12
+ description: "Utility to clean any programming caches and more",
13
+ keywords: [
14
+ "cache",
15
+ "cleaner",
16
+ "utility"
17
+ ],
18
+ homepage: "https://www.webmanajemen.com/",
19
+ bugs: {
20
+ url: "https://github.com/dimaslanjaka/bin/issues"
21
+ },
22
+ license: "MIT",
23
+ author: {
24
+ name: "dimaslanjaka",
25
+ email: "dimaslanjaka@gmail.com",
26
+ url: "https://webmanajemen.com"
27
+ },
28
+ type: "module",
29
+ main: "lib/index.js",
30
+ exports: {
31
+ ".": {
32
+ require: {
33
+ default: "./lib/index.cjs",
34
+ types: "./lib/index.d.ts"
35
+ },
36
+ import: {
37
+ default: "./lib/index.mjs",
38
+ types: "./lib/index.d.mts"
39
+ }
40
+ },
41
+ "./package.json": "./package.json"
42
+ },
43
+ types: "lib/index.d.ts",
44
+ files: [
45
+ "binaries",
46
+ "lib",
47
+ "package.json",
48
+ "readme.md",
49
+ ".puppeterrc.cjs",
50
+ "requirements.txt"
51
+ ],
52
+ scripts: {
53
+ build: "tsc -b tsconfig.build.json && npm run build-tsup && npm run build-exports",
54
+ "build-exports": "node -r ts-node/register -r dotenv/config build.exports.mjs",
55
+ "build-packages": "yarn workspaces foreach --worktree --exclude=binary-collections --no-private run build",
56
+ "build-rollup": "rollup -c rollup.config.js",
57
+ "build-tsup": "node build.tsup.js",
58
+ clean: "rimraf lib tmp/dist binaries",
59
+ pack: "node packer.cjs --yarn --filename=bin",
60
+ prepare: "husky",
61
+ "puppeteer:browser": "npx -y puppeteer browsers install chrome",
62
+ test: "test-cjs",
63
+ "test-coverage": "npm test --coverage --detectOpenHandles",
64
+ "test-esm": "test-esm",
65
+ "test-nrs": "npm test -- nrs build-**",
66
+ "test-watch": "npm test --watch",
67
+ "update:ncu": "npx npm-check-updates -u --enginesNode --root -x jest -x @types/jest -x babel-jest -x @babel/core -x @babel/preset-env -x @babel/preset-typescript -x ts-jest -x eslint -x @eslint/eslintrc -x @eslint/js -x @typescript-eslint/eslint-plugin -x @typescript-eslint/parser -x eslint-config-prettier -x eslint-plugin-prettier -x typescript-eslint -x prettier -x typescript -x ts-node -x @yarnpkg/core",
68
+ "update:packer": "curl -L https://github.com/dimaslanjaka/nodejs-package-types/raw/main/packer.js > packer.cjs"
69
+ },
70
+ repository: {
71
+ type: "git",
72
+ url: "git+https://github.com/dimaslanjaka/bin"
73
+ },
74
+ dependencies: {
75
+ "@yarnpkg/core": "^4.7.0",
76
+ "ansi-colors": "^4.1.3",
77
+ axios: "^1.16.1",
78
+ "cross-spawn": "https://github.com/dimaslanjaka/node-cross-spawn/raw/78b09a1f799430fb251c1b438ec56ce7957674f4/release/cross-spawn.tgz",
79
+ dotenv: "^17.4.2",
80
+ "fs-extra": "^11.3.5",
81
+ "git-command-helper": "https://github.com/dimaslanjaka/git-command-helper/raw/ed17f70eb7444d24bd8eb984a4afe9fd64652838/release/git-command-helper.tgz",
82
+ glob: "^13.0.6",
83
+ minimatch: "^10.2.5",
84
+ minimist: "^1.2.8",
85
+ "ps-node": "^0.1.6",
86
+ puppeteer: "^25.0.4",
87
+ "puppeteer-extra": "^3.3.6",
88
+ "puppeteer-extra-plugin-stealth": "^2.11.2",
89
+ "sbg-utility": "https://github.com/dimaslanjaka/static-blog-generator/raw/44e5c7b79b4e60f8c2d34857c27b8ce677d7493e/packages/sbg-utility/release/sbg-utility.tgz",
90
+ upath: "^3.0.7",
91
+ yaml: "^2.9.0",
92
+ yarn: "^1.22.22"
93
+ },
94
+ devDependencies: {
95
+ "@babel/core": "^7.29.0",
96
+ "@babel/plugin-syntax-import-assertions": "^7.28.6",
97
+ "@babel/preset-env": "^7.29.2",
98
+ "@babel/preset-typescript": "^7.28.5",
99
+ "@dimaslanjaka/eslint-base-config": "^1.0.1",
100
+ "@rollup/plugin-babel": "^7.0.0",
101
+ "@rollup/plugin-commonjs": "^29.0.2",
102
+ "@rollup/plugin-json": "^6.1.0",
103
+ "@rollup/plugin-node-resolve": "^16.0.3",
104
+ "@types/babel__core": "^7",
105
+ "@types/babel__preset-env": "^7",
106
+ "@types/fs-extra": "^11",
107
+ "@types/jest": "^30.0.0",
108
+ "@types/minimist": "^1",
109
+ "@types/mocha": "^10.0.10",
110
+ "@types/node": "^25.9.1",
111
+ "@types/ps-node": "^0",
112
+ "babel-jest": "^30.4.1",
113
+ "browser-sync": "^3.0.4",
114
+ "cross-env": "^10.1.0",
115
+ globals: "^17.6.0",
116
+ gulp: "^5.0.1",
117
+ husky: "^9.1.7",
118
+ jest: "^30.4.2",
119
+ "lint-staged": "^17.0.5",
120
+ marked: "^18.0.4",
121
+ rimraf: "^6.1.3",
122
+ rollup: "^4.60.4",
123
+ "ts-jest": "^29.4.9",
124
+ "ts-node": "^10.9.2",
125
+ tsup: "^8.5.1",
126
+ typescript: "^6.0.3"
127
+ },
128
+ directories: {
129
+ lib: "lib",
130
+ bin: "binaries"
131
+ },
132
+ workspaces: [
133
+ "packages/*"
134
+ ],
135
+ packageManager: "yarn@4.9.2",
136
+ resolutions: {
137
+ "@types/through2": "https://github.com/dimaslanjaka/nodejs-package-types/raw/refs/heads/through2/release/types-through2.tgz",
138
+ "cross-spawn": "https://github.com/dimaslanjaka/node-cross-spawn/raw/78b09a1f799430fb251c1b438ec56ce7957674f4/release/cross-spawn.tgz",
139
+ "git-command-helper": "https://github.com/dimaslanjaka/git-command-helper/raw/ed17f70eb7444d24bd8eb984a4afe9fd64652838/release/git-command-helper.tgz",
140
+ "sbg-utility": "https://github.com/dimaslanjaka/static-blog-generator/raw/44e5c7b79b4e60f8c2d34857c27b8ce677d7493e/packages/sbg-utility/release/sbg-utility.tgz",
141
+ "@dimaslanjaka/eslint-base-config": "https://github.com/dimaslanjaka/eslint-base-config/raw/69ca996fdeaac42c93dd590124996eff58b5d6c2/release/dimaslanjaka-eslint-base-config.tgz"
142
+ },
143
+ bin: {
144
+ "binary-collections": "lib/binary-collections.cjs",
145
+ "binary-executor": "binaries/binary-executor.cjs",
146
+ changelog: "lib/changelog.cjs",
147
+ chatgpt: "lib/free-chatgpt.cjs",
148
+ "clean-github-actions-cache": "lib/clean-github-actions-caches-cli.cjs",
149
+ "clean-github-actions-caches": "lib/clean-github-actions-caches-cli.cjs",
150
+ "clean-nodemodule": "binaries/clean-nodemodule.cjs",
151
+ "clean-nodemodules": "binaries/clean-nodemodules.cjs",
152
+ "clear-gh-caches": "lib/clean-github-actions-caches-cli.cjs",
153
+ "clear-github-actions-cache": "lib/clean-github-actions-caches-cli.cjs",
154
+ "clear-github-actions-caches": "lib/clean-github-actions-caches-cli.cjs",
155
+ copy: "lib/file/copy-cli.cjs",
156
+ "copy-file": "lib/file/copy-cli.cjs",
157
+ "del-gradle": "lib/del-gradle.cjs",
158
+ "del-node-modules": "lib/del-node-modules.cjs",
159
+ "del-nodemodules": "lib/del-node-modules.cjs",
160
+ "del-ps": "lib/del-ps.cjs",
161
+ "del-yarn-caches": "lib/del-yarn-caches.cjs",
162
+ "del-yarncaches": "lib/del-yarn-caches.cjs",
163
+ dev: "binaries/dev.cjs",
164
+ "dir-tree": "lib/print-directory-tree.cjs",
165
+ empty: "binaries/empty.cjs",
166
+ "exec-node": "lib/node-executor.cjs",
167
+ "execute-node": "lib/node-executor.cjs",
168
+ "find-node-modules": "lib/find-node-modules-cli.cjs",
169
+ "free-chatgpt": "lib/free-chatgpt.cjs",
170
+ "git-diff": "lib/git-diff-cli.cjs",
171
+ "git-fix": "lib/git-fix.cjs",
172
+ "git-purge": "lib/git-purge.cjs",
173
+ "git-reduce-size": "binaries/git-reduce-size.cjs",
174
+ "git-undo-commit": "lib/git/undo-commit.cjs",
175
+ "git-undo-staged": "lib/git/undo-staged.cjs",
176
+ javakill: "binaries/javakill.cjs",
177
+ "kill-night-crows": "lib/kill-night-crows.cjs",
178
+ "kill-process": "binaries/kill-process.cjs",
179
+ move: "lib/file/move-cli.cjs",
180
+ "move-file": "lib/file/move-cli.cjs",
181
+ "node-cache-cleaner": "lib/node-cache-cleaner-cli.cjs",
182
+ "node-copy": "lib/file/copy-cli.cjs",
183
+ "node-exec": "lib/node-executor.cjs",
184
+ "node-executor": "lib/node-executor.cjs",
185
+ "node-move": "lib/file/move-cli.cjs",
186
+ nodekill: "binaries/nodekill.cjs",
187
+ "npm-run-series": "lib/npm-run-series.cjs",
188
+ nrs: "lib/npm-run-series.cjs",
189
+ "package-resolutions-updater": "lib/package-resolutions-updater-cli.cjs",
190
+ "php-cs-fixer-staged": "lib/php-cs-fixer-staged.cjs",
191
+ "pkg-res-updater": "lib/package-resolutions-updater-cli.cjs",
192
+ "pkg-resolutions-updater": "lib/package-resolutions-updater-cli.cjs",
193
+ "print-directory-tree": "lib/print-directory-tree.cjs",
194
+ "print-tree": "lib/print-directory-tree.cjs",
195
+ prod: "binaries/prod.cjs",
196
+ py: "binaries/py.cjs",
197
+ "remove-module": "lib/remove-module.cjs",
198
+ "remove-node-module": "lib/rm-node-module-cli.cjs",
199
+ "remove-node-modules": "lib/rm-node-module-cli.cjs",
200
+ "rm-node-module": "lib/rm-node-module-cli.cjs",
201
+ "rm-node-modules": "lib/rm-node-module-cli.cjs",
202
+ rmfind: "binaries/rmfind.cjs",
203
+ rmpath: "lib/rmpath.cjs",
204
+ rmx: "binaries/rmx.cjs",
205
+ "run-s": "lib/npm-run-series.cjs",
206
+ "run-series": "lib/npm-run-series.cjs",
207
+ "submodule-install": "lib/submodule-install.cjs",
208
+ "submodule-remove": "lib/submodule-remove-cli.cjs",
209
+ "submodule-token": "binaries/submodule-token.cjs",
210
+ "test-cjs": "binaries/test-cjs.cjs",
211
+ "test-esm": "binaries/test-esm.cjs",
212
+ "undo-commit": "lib/git/undo-commit.cjs",
213
+ "undo-last-commit": "lib/git/undo-commit.cjs",
214
+ "undo-staged": "lib/git/undo-staged.cjs",
215
+ "y-install": "lib/yarn-per-branch-lock-installer.cjs",
216
+ "yarn-clean": "binaries/yarn-clean.cjs",
217
+ "yarn-install": "lib/yarn-per-branch-lock-installer.cjs",
218
+ "yarn-per-branch-lock-installer": "lib/yarn-per-branch-lock-installer.cjs",
219
+ "yarn-reinstall": "lib/yarn-reinstall.cjs",
220
+ yc: "binaries/yc.cjs"
221
+ }
222
+ };
223
+ }
224
+ });
225
+
226
+ // src/binary-collections/findScript.cjs
227
+ var { glob } = require("glob");
228
+ var path = require("upath");
229
+ var fs = require("fs-extra");
230
+ var pkgJson = require_package();
231
+ function findScript(scriptName, searchDir = null) {
232
+ if (!searchDir) searchDir = path.join(__dirname, "..");
233
+ let result;
234
+ const ignorePatterns = [
235
+ `**/*config*.{cjs,js,mjs}`,
236
+ `**/utils.{cjs,js,mjs}`,
237
+ `**/index.{cjs,js,mjs}`,
238
+ `**/chunk-*.{cjs,js,mjs}`,
239
+ `**/*.d.{ts,cts,mts}`
240
+ // ignore TypeScript declaration files
241
+ ];
242
+ try {
243
+ const pattern = `${scriptName}.{cjs,js,mjs}`;
244
+ const files = glob.sync(pattern, {
245
+ cwd: searchDir,
246
+ ignore: ignorePatterns,
247
+ absolute: true
248
+ });
249
+ if (files.length > 0) {
250
+ result = files[0];
251
+ } else {
252
+ if (pkgJson.bin[scriptName]) {
253
+ const find = [
254
+ path.join(searchDir, pkgJson.bin[scriptName]),
255
+ path.join(process.cwd(), "node_modules/binary-collections", pkgJson.bin[scriptName]),
256
+ path.join(__dirname, pkgJson.bin[scriptName]),
257
+ path.join(path.join(__dirname, ".."), pkgJson.bin[scriptName]),
258
+ path.join(path.join(__dirname, "../.."), pkgJson.bin[scriptName])
259
+ ];
260
+ const filtered = find.filter((file) => fs.existsSync(file));
261
+ if (filtered.length > 0) {
262
+ result = filtered[0];
263
+ } else {
264
+ console.warn(`\u26A0\uFE0F Script "${scriptName}" not found in ${searchDir}.`);
265
+ console.warn(`\u{1F50D} Searched for: ${pattern} in ${searchDir}`);
266
+ }
267
+ }
268
+ }
269
+ } catch (error) {
270
+ console.error(`\u{1F50D} Error searching for script: ${error.message}`);
271
+ }
272
+ if (result && !result.includes("-cli")) {
273
+ const ext = path.extname(result);
274
+ const filename = path.basename(result, ext);
275
+ const cliFile = path.join(path.dirname(result), `${filename}-cli${ext}`);
276
+ if (fs.existsSync(cliFile)) {
277
+ result = cliFile;
278
+ console.log(`\u{1F50D} Found CLI version: ${cliFile}`);
279
+ }
280
+ }
281
+ return result;
282
+ }
283
+ module.exports = findScript;
284
+ module.exports.default = findScript;
@@ -0,0 +1,12 @@
1
+ export = findScript;
2
+ /**
3
+ * Searches for a script file by name in the specified directory
4
+ * @function findScript
5
+ * @param {string} scriptName - The name of the script to find (without extension)
6
+ * @param {string|null} [searchDir=null] - The directory to search in. Defaults to the parent `src` directory when not provided
7
+ * @returns {string|undefined} The absolute path to the found script file, or undefined if not found
8
+ */
9
+ declare function findScript(scriptName: string, searchDir?: string | null): string | undefined;
10
+ declare namespace findScript {
11
+ export { findScript as default };
12
+ }
@@ -0,0 +1,7 @@
1
+ import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
+ import {
3
+ require_findScript
4
+ } from "../chunk-NCZPTKDV.mjs";
5
+ import "../chunk-ZOWVMII3.mjs";
6
+ import "../chunk-QQ4A6DLD.mjs";
7
+ export default require_findScript();