binary-collections 2.0.12 → 2.0.14

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 (418) hide show
  1. package/binaries/binary-executor.cjs +307 -162
  2. package/binaries/clean-nodemodule.cjs +307 -162
  3. package/binaries/clean-nodemodules.cjs +307 -162
  4. package/binaries/composer.cjs +323 -0
  5. package/binaries/composer.cmd +2 -0
  6. package/binaries/composer.phar +0 -0
  7. package/binaries/dev.cjs +307 -162
  8. package/binaries/empty.cjs +307 -162
  9. package/binaries/git-reduce-size.cjs +307 -162
  10. package/binaries/javakill.cjs +307 -162
  11. package/binaries/kill-process.cjs +307 -162
  12. package/binaries/nodekill.cjs +307 -162
  13. package/binaries/prod.cjs +307 -162
  14. package/binaries/py.cjs +307 -162
  15. package/binaries/rmfind.cjs +307 -162
  16. package/binaries/rmx.cjs +307 -162
  17. package/binaries/submodule-token.cjs +307 -162
  18. package/binaries/test-cjs.cjs +307 -162
  19. package/binaries/test-esm.cjs +307 -162
  20. package/binaries/yarn-clean.cjs +307 -162
  21. package/binaries/yc +22 -1
  22. package/binaries/yc.cjs +307 -162
  23. package/binaries/ycw +256 -0
  24. package/binaries/ycw.cjs +323 -0
  25. package/docs-src/binary-collections.md +34 -0
  26. package/docs-src/changelog.md +26 -0
  27. package/docs-src/clean-github-actions-caches.md +115 -0
  28. package/docs-src/copy-move-file.md +56 -0
  29. package/docs-src/del-gradle.md +17 -0
  30. package/docs-src/del-ps.md +28 -0
  31. package/docs-src/downloader.md +62 -0
  32. package/docs-src/env-helpers.md +29 -0
  33. package/docs-src/find-node-modules.md +17 -0
  34. package/docs-src/free-chatgpt.md +26 -0
  35. package/docs-src/generate-test-ci.md +56 -0
  36. package/docs-src/get-latest-workflow-status.md +100 -0
  37. package/docs-src/git-diff.md +33 -0
  38. package/docs-src/git-fix.md +34 -0
  39. package/docs-src/git-purge.md +17 -0
  40. package/docs-src/git-reduce-size.md +17 -0
  41. package/docs-src/git-undo.md +21 -0
  42. package/docs-src/kill-night-crows.md +26 -0
  43. package/docs-src/node-cache-cleaner.md +182 -0
  44. package/docs-src/node-executor.md +50 -0
  45. package/docs-src/node-package-packer.md +48 -0
  46. package/docs-src/npm-run-series.md +43 -0
  47. package/docs-src/opencode-cli.md +127 -0
  48. package/docs-src/package-resolutions-updater.md +22 -0
  49. package/docs-src/php-cs-fixer-staged.md +19 -0
  50. package/docs-src/print-directory-tree.md +35 -0
  51. package/docs-src/print-tarball-tree.md +55 -0
  52. package/docs-src/py.md +19 -0
  53. package/docs-src/remove-module.md +32 -0
  54. package/docs-src/rmfind-rmx.md +21 -0
  55. package/docs-src/rmpath.md +38 -0
  56. package/docs-src/run-by-checksum.md +87 -0
  57. package/docs-src/submodule-install.md +31 -0
  58. package/docs-src/submodule-remove.md +22 -0
  59. package/docs-src/submodule-token.md +17 -0
  60. package/docs-src/test-runners.md +21 -0
  61. package/docs-src/upload-backend.md +29 -0
  62. package/docs-src/vscode-cli.md +84 -0
  63. package/docs-src/workflow-badge.md +120 -0
  64. package/docs-src/yarn-install.md +31 -0
  65. package/docs-src/yarn-reinstall.md +27 -0
  66. package/lib/binary-collections/config.cjs +15 -3
  67. package/lib/binary-collections/config.d.cts +10 -0
  68. package/lib/binary-collections/config.mjs +2 -2
  69. package/lib/binary-collections/findScript.cjs +75 -28
  70. package/lib/binary-collections/findScript.mjs +2 -2
  71. package/lib/binary-collections/listScript.cjs +75 -28
  72. package/lib/binary-collections/listScript.mjs +2 -2
  73. package/lib/binary-collections.cjs +85 -43
  74. package/lib/binary-collections.mjs +8 -8
  75. package/lib/changelog.cjs +7 -12
  76. package/lib/changelog.mjs +2 -2
  77. package/lib/chunk-2SJKVOTN.mjs +146 -0
  78. package/lib/{chunk-SPTECFE5.mjs → chunk-3F6EIHYG.mjs} +87 -21
  79. package/lib/chunk-546KAIYT.mjs +113 -0
  80. package/lib/chunk-56BVU63B.mjs +86 -0
  81. package/lib/chunk-5WAOOOGZ.mjs +77 -0
  82. package/lib/{chunk-V2IBPCEV.mjs → chunk-6C7KTYGZ.mjs} +3 -1
  83. package/lib/{chunk-5RTXZVCW.mjs → chunk-6RK5UCTP.mjs} +5 -10
  84. package/lib/chunk-72XTQ3CK.mjs +45 -0
  85. package/lib/chunk-7N52Z4IJ.mjs +39 -0
  86. package/lib/chunk-7Q6YEUQF.mjs +246 -0
  87. package/lib/{chunk-ZOWVMII3.mjs → chunk-AJ3OIYYP.mjs} +75 -28
  88. package/lib/chunk-AQZ7LMFS.mjs +100 -0
  89. package/lib/chunk-BDCMTOZI.mjs +246 -0
  90. package/lib/chunk-BEUM4LH4.mjs +184 -0
  91. package/lib/{chunk-66KDU4TX.mjs → chunk-BO4TZS4Q.mjs} +39 -61
  92. package/lib/chunk-CM3IC5YC.mjs +226 -0
  93. package/lib/{chunk-6PU7BAHB.mjs → chunk-D42YBRZW.mjs} +1 -1
  94. package/lib/chunk-FR3DMHJC.mjs +146 -0
  95. package/lib/chunk-I3O5ZRYU.mjs +77 -0
  96. package/lib/chunk-J4M5EL5P.mjs +108 -0
  97. package/lib/chunk-JK3MG2KF.mjs +236 -0
  98. package/lib/chunk-JMUFQSPE.mjs +184 -0
  99. package/lib/chunk-JVMLKHD2.mjs +62 -0
  100. package/lib/chunk-KAT2JNLZ.mjs +146 -0
  101. package/lib/chunk-KLKAIFKI.mjs +40 -0
  102. package/lib/{chunk-FB2WKVJD.mjs → chunk-KRCPFWIF.mjs} +72 -37
  103. package/lib/chunk-LACQTD5V.mjs +225 -0
  104. package/lib/chunk-LVSPEFU2.mjs +86 -0
  105. package/lib/chunk-MCCMMZSM.mjs +60 -0
  106. package/lib/{chunk-2LSRSEXF.mjs → chunk-MGPYPKIE.mjs} +2 -2
  107. package/lib/chunk-OA2RKEY3.mjs +162 -0
  108. package/lib/{chunk-C6D2TTYU.mjs → chunk-OBXLTXFJ.mjs} +4 -2
  109. package/lib/{chunk-G5UUEWUO.mjs → chunk-PAZH45HS.mjs} +8 -2
  110. package/lib/chunk-QD4T255Z.mjs +40 -0
  111. package/lib/{chunk-XPJGCDOD.mjs → chunk-QII2EKCS.mjs} +14 -2
  112. package/lib/chunk-QZMGBDSA.mjs +32 -0
  113. package/lib/chunk-RDGDLSPD.mjs +76 -0
  114. package/lib/chunk-RJKTSUAX.mjs +123 -0
  115. package/lib/chunk-RKPIBGKE.mjs +61 -0
  116. package/lib/chunk-SARIXFHP.mjs +44 -0
  117. package/lib/chunk-SJYP66BO.mjs +62 -0
  118. package/lib/chunk-SWUAEY4H.mjs +44 -0
  119. package/lib/chunk-TP3O2JGW.mjs +88 -0
  120. package/lib/chunk-UAIF5VIA.mjs +89 -0
  121. package/lib/chunk-UDZBVKXH.mjs +94 -0
  122. package/lib/chunk-UEOWRYAN.mjs +32 -0
  123. package/lib/chunk-UHPFLJXH.mjs +227 -0
  124. package/lib/{chunk-M3YIYRHT.mjs → chunk-UY5VUEA3.mjs} +1 -1
  125. package/lib/chunk-UYNBNLV5.mjs +113 -0
  126. package/lib/chunk-WOC4FZ6F.mjs +164 -0
  127. package/lib/chunk-WSHVPGNM.mjs +44 -0
  128. package/lib/chunk-X7UVQ6ZC.mjs +183 -0
  129. package/lib/{chunk-NCZPTKDV.mjs → chunk-XI67TI46.mjs} +1 -1
  130. package/lib/chunk-XW5NZAKI.mjs +82 -0
  131. package/lib/chunk-YLV4QATP.mjs +86 -0
  132. package/lib/chunk-YWSLMAQ7.mjs +65 -0
  133. package/lib/chunk-ZB4IQ6VJ.mjs +46 -0
  134. package/lib/cross-env/command.cjs +2 -2
  135. package/lib/cross-env/command.js +2 -2
  136. package/lib/cross-env/command.mjs +2 -2
  137. package/lib/cross-env/index.cjs +2 -2
  138. package/lib/cross-env/index.mjs +5 -5
  139. package/lib/cross-env/variable.mjs +2 -2
  140. package/lib/del-gradle.cjs +7 -12
  141. package/lib/del-gradle.mjs +23 -17
  142. package/lib/del-node-modules.cjs +186 -4
  143. package/lib/del-node-modules.mjs +151 -142
  144. package/lib/{del-ps.cjs → del-ps-cli.cjs} +36 -41
  145. package/lib/del-ps-cli.mjs +44 -0
  146. package/lib/del-yarn-caches.cjs +6 -11
  147. package/lib/del-yarn-caches.mjs +1 -1
  148. package/lib/downloader-cli.cjs +256 -0
  149. package/lib/downloader-cli.mjs +90 -0
  150. package/lib/file/copy-cli.cjs +183 -2
  151. package/lib/file/copy-cli.mjs +6 -2
  152. package/lib/file/move-cli.cjs +183 -2
  153. package/lib/file/move-cli.mjs +6 -2
  154. package/lib/find-node-modules-cli.cjs +2 -2
  155. package/lib/find-node-modules-cli.mjs +11 -5
  156. package/lib/find-node-modules.cjs +1 -1
  157. package/lib/find-node-modules.mjs +1 -1
  158. package/lib/free-chatgpt.cjs +6 -11
  159. package/lib/free-chatgpt.mjs +1 -1
  160. package/lib/{git-diff-cli.cjs → git/git-diff-cli.cjs} +109 -36
  161. package/lib/{git-diff-cli.mjs → git/git-diff-cli.mjs} +7 -7
  162. package/lib/{git-diff.cjs → git/git-diff.cjs} +107 -34
  163. package/lib/{git-diff.js → git/git-diff.js} +88 -31
  164. package/lib/{git-diff.mjs → git/git-diff.mjs} +6 -6
  165. package/lib/{git-fix.cjs → git/git-fix.cjs} +140 -14
  166. package/lib/git/git-fix.d.cts +2 -0
  167. package/lib/{git-fix.mjs → git/git-fix.mjs} +19 -14
  168. package/lib/{git-purge.cjs → git/git-purge.cjs} +8 -13
  169. package/lib/{git-purge.mjs → git/git-purge.mjs} +5 -5
  170. package/lib/git/user-config.cjs +137 -12
  171. package/lib/git/user-config.mjs +4 -2
  172. package/lib/{clean-github-actions-caches-cli.cjs → github-workflows/clean-github-actions-caches-cli.cjs} +292 -222
  173. package/lib/{clean-github-actions-caches-cli.mjs → github-workflows/clean-github-actions-caches-cli.mjs} +30 -11
  174. package/lib/github-workflows/clean-github-actions-caches.cjs +473 -0
  175. package/lib/github-workflows/clean-github-actions-caches.d.cts +53 -0
  176. package/lib/{clean-github-actions-caches.mjs → github-workflows/clean-github-actions-caches.mjs} +5 -3
  177. package/lib/github-workflows/generate-test-ci-step-cli.cjs +240 -0
  178. package/lib/github-workflows/generate-test-ci-step-cli.d.mts +2 -0
  179. package/lib/github-workflows/generate-test-ci-step-cli.mjs +132 -0
  180. package/lib/github-workflows/get-latest-workflow-status-cli.cjs +541 -0
  181. package/lib/github-workflows/get-latest-workflow-status-cli.d.mts +2 -0
  182. package/lib/github-workflows/get-latest-workflow-status-cli.mjs +61 -0
  183. package/lib/github-workflows/get-latest-workflow-status.cjs +56 -0
  184. package/lib/github-workflows/get-latest-workflow-status.d.mts +1 -0
  185. package/lib/{ps/isWin.mjs → github-workflows/get-latest-workflow-status.mjs} +3 -5
  186. package/lib/github-workflows/utils.cjs +271 -0
  187. package/lib/github-workflows/utils.d.cts +76 -0
  188. package/lib/github-workflows/utils.mjs +8 -0
  189. package/lib/github-workflows/workflow-badge-cli.cjs +722 -0
  190. package/lib/github-workflows/workflow-badge-cli.d.mts +2 -0
  191. package/lib/github-workflows/workflow-badge-cli.mjs +98 -0
  192. package/lib/github-workflows/workflow-badge-generator.cjs +200 -0
  193. package/lib/github-workflows/workflow-badge-generator.d.mts +14 -0
  194. package/lib/github-workflows/workflow-badge-generator.mjs +8 -0
  195. package/lib/github-workflows/workflow-test-data.cjs +73 -0
  196. package/lib/github-workflows/workflow-test-data.d.cts +63 -0
  197. package/lib/github-workflows/workflow-test-data.mjs +6 -0
  198. package/lib/index.cjs +1 -1
  199. package/lib/index.mjs +1 -1
  200. package/lib/node-cache-cleaner-cli.cjs +185 -2
  201. package/lib/node-cache-cleaner-cli.js +2 -5
  202. package/lib/node-cache-cleaner-cli.mjs +8 -4
  203. package/lib/node-executor.cjs +183 -2
  204. package/lib/node-executor.mjs +5 -2
  205. package/lib/node-package-packer/build-readme.cjs +150 -0
  206. package/lib/node-package-packer/build-readme.d.mts +10 -0
  207. package/lib/node-package-packer/build-readme.mjs +10 -0
  208. package/lib/node-package-packer/build-tarball.cjs +495 -0
  209. package/lib/node-package-packer/build-tarball.d.mts +33 -0
  210. package/lib/node-package-packer/build-tarball.mjs +175 -0
  211. package/lib/node-package-packer-cli.cjs +525 -0
  212. package/lib/node-package-packer-cli.d.mts +1 -0
  213. package/lib/node-package-packer-cli.mjs +34 -0
  214. package/lib/npm-run-series.cjs +7 -12
  215. package/lib/npm-run-series.mjs +2 -2
  216. package/lib/opencode/cli/auth-rotate.cjs +143 -0
  217. package/lib/opencode/cli/auth-rotate.d.ts +1 -0
  218. package/lib/opencode/cli/auth-rotate.js +70 -0
  219. package/lib/opencode/cli/auth-rotate.mjs +10 -0
  220. package/lib/opencode/cli/list-projects.cjs +184 -0
  221. package/lib/opencode/cli/list-projects.d.ts +1 -0
  222. package/lib/opencode/cli/list-projects.js +32 -0
  223. package/lib/opencode/cli/list-projects.mjs +11 -0
  224. package/lib/opencode/cli/list-sessions.cjs +215 -0
  225. package/lib/opencode/cli/list-sessions.d.ts +1 -0
  226. package/lib/opencode/cli/list-sessions.js +45 -0
  227. package/lib/opencode/cli/list-sessions.mjs +11 -0
  228. package/lib/opencode/database.cjs +349 -0
  229. package/lib/opencode/database.d.ts +91 -0
  230. package/lib/opencode/database.js +252 -0
  231. package/lib/opencode/database.mjs +28 -0
  232. package/lib/opencode/database.runner.cjs +145 -0
  233. package/lib/opencode/database.runner.d.ts +1 -0
  234. package/lib/opencode/database.runner.js +56 -0
  235. package/lib/opencode/database.runner.mjs +37 -0
  236. package/lib/opencode/opencode-zen.runner.cjs +48 -0
  237. package/lib/opencode/opencode-zen.runner.d.mts +1 -0
  238. package/lib/opencode/opencode-zen.runner.mjs +31 -0
  239. package/lib/opencode/sqlite.cjs +114 -0
  240. package/lib/opencode/sqlite.d.ts +18 -0
  241. package/lib/opencode/sqlite.js +82 -0
  242. package/lib/opencode/sqlite.mjs +10 -0
  243. package/lib/opencode/storage.cjs +124 -0
  244. package/lib/opencode/storage.d.ts +27 -0
  245. package/lib/opencode/storage.js +101 -0
  246. package/lib/opencode/storage.mjs +38 -0
  247. package/lib/opencode/storage.runner.cjs +50 -0
  248. package/lib/opencode/storage.runner.d.ts +1 -0
  249. package/lib/opencode/storage.runner.js +13 -0
  250. package/lib/opencode/storage.runner.mjs +29 -0
  251. package/lib/{ps/isWin.cjs → opencode/types.cjs} +3 -12
  252. package/lib/opencode/types.d.ts +31 -0
  253. package/lib/{ps/isWin.js → opencode/types.js} +0 -2
  254. package/lib/opencode/types.mjs +7 -0
  255. package/lib/opencode/utils/check-api.cjs +59 -0
  256. package/lib/opencode/utils/check-api.d.ts +12 -0
  257. package/lib/opencode/utils/check-api.js +46 -0
  258. package/lib/opencode/utils/check-api.mjs +8 -0
  259. package/lib/opencode-cli.cjs +473 -0
  260. package/lib/opencode-cli.d.ts +2 -0
  261. package/lib/opencode-cli.js +115 -0
  262. package/lib/opencode-cli.mjs +111 -0
  263. package/lib/package-resolutions-updater-cli.cjs +218 -194
  264. package/lib/package-resolutions-updater-cli.mjs +6 -4
  265. package/lib/package-resolutions-updater.cjs +216 -192
  266. package/lib/package-resolutions-updater.d.mts +44 -1
  267. package/lib/package-resolutions-updater.mjs +5 -3
  268. package/lib/php-cs-fixer-staged.cjs +1 -1
  269. package/lib/php-cs-fixer-staged.mjs +1 -1
  270. package/lib/print-directory-tree.cjs +147 -21
  271. package/lib/print-directory-tree.mjs +17 -11
  272. package/lib/print-tarball-tree.cjs +262 -0
  273. package/lib/print-tarball-tree.d.mts +1 -0
  274. package/lib/print-tarball-tree.mjs +68 -0
  275. package/lib/ps/index.cjs +10 -10
  276. package/lib/ps/index.mjs +4 -4
  277. package/lib/ps/table-parser.d.ts +3 -4
  278. package/lib/ps/table-parser.js +9 -16
  279. package/lib/remove-module.cjs +17 -22
  280. package/lib/remove-module.mjs +2 -2
  281. package/lib/rm-node-module-cli.cjs +171 -4
  282. package/lib/rm-node-module-cli.mjs +7 -4
  283. package/lib/rmpath-cli.cjs +411 -0
  284. package/lib/rmpath-cli.d.mts +1 -0
  285. package/lib/rmpath-cli.mjs +25 -0
  286. package/lib/rmpath.cjs +113 -188
  287. package/lib/rmpath.mjs +7 -101
  288. package/lib/run-by-checksum/cache.cjs +69 -0
  289. package/lib/run-by-checksum/cache.d.ts +19 -0
  290. package/lib/run-by-checksum/cache.js +50 -0
  291. package/lib/run-by-checksum/cache.mjs +12 -0
  292. package/lib/run-by-checksum/hash.cjs +88 -0
  293. package/lib/run-by-checksum/hash.d.ts +17 -0
  294. package/lib/run-by-checksum/hash.js +119 -0
  295. package/lib/run-by-checksum/hash.mjs +10 -0
  296. package/lib/run-by-checksum/run.cjs +185 -0
  297. package/lib/run-by-checksum/run.d.ts +22 -0
  298. package/lib/run-by-checksum/run.js +93 -0
  299. package/lib/run-by-checksum/run.mjs +10 -0
  300. package/lib/run-by-checksum-cli.cjs +398 -0
  301. package/lib/run-by-checksum-cli.d.ts +2 -0
  302. package/lib/run-by-checksum-cli.js +43 -0
  303. package/lib/run-by-checksum-cli.mjs +56 -0
  304. package/lib/submodule-install.cjs +137 -16
  305. package/lib/submodule-install.mjs +7 -6
  306. package/lib/submodule-remove-cli.cjs +300 -7
  307. package/lib/submodule-remove-cli.js +2 -2
  308. package/lib/submodule-remove-cli.mjs +8 -3
  309. package/lib/submodule-remove.cjs +146 -5
  310. package/lib/submodule-remove.mjs +3 -1
  311. package/lib/utils/fetchResponse.cjs +24 -0
  312. package/lib/utils/fetchResponse.d.cts +25 -0
  313. package/lib/utils/fetchResponse.mjs +6 -0
  314. package/lib/utils/findEnvFiles.cjs +3 -0
  315. package/lib/utils/findEnvFiles.d.cts +2 -2
  316. package/lib/utils/findEnvFiles.mjs +1 -1
  317. package/lib/utils/index.cjs +5 -10
  318. package/lib/utils/index.d.cts +2 -9
  319. package/lib/utils/index.mjs +1 -1
  320. package/lib/utils/isWindows.mjs +3 -1
  321. package/lib/utils/runBash.cjs +1 -1
  322. package/lib/utils/runBash.mjs +1 -1
  323. package/lib/vscode/project.cjs +0 -0
  324. package/lib/vscode/project.d.ts +0 -0
  325. package/lib/vscode/project.js +1 -0
  326. package/lib/vscode/project.mjs +7 -0
  327. package/lib/vscode/storage.cjs +138 -0
  328. package/lib/vscode/storage.d.ts +51 -0
  329. package/lib/vscode/storage.js +169 -0
  330. package/lib/vscode/storage.mjs +42 -0
  331. package/lib/vscode/storage.runner.cjs +125 -0
  332. package/lib/vscode/storage.runner.d.ts +1 -0
  333. package/lib/vscode/storage.runner.js +47 -0
  334. package/lib/vscode/storage.runner.mjs +60 -0
  335. package/lib/vscode-cli.cjs +155 -0
  336. package/lib/vscode-cli.d.ts +2 -0
  337. package/lib/vscode-cli.js +80 -0
  338. package/lib/vscode-cli.mjs +71 -0
  339. package/lib/yarn-per-branch-lock-installer.cjs +202 -11
  340. package/lib/yarn-per-branch-lock-installer.mjs +24 -11
  341. package/lib/yarn-reinstall.cjs +6 -11
  342. package/lib/yarn-reinstall.mjs +1 -1
  343. package/package.json +75 -28
  344. package/readme.html +2 -2
  345. package/readme.md +44 -11
  346. package/releases/readme.md +6 -3
  347. package/src/github-workflows/generate-test-ci-step-cli.mjs +126 -0
  348. package/tmp/test-repo-runChecksum/test-complex-glob/README.md +1 -0
  349. package/tmp/test-repo-runChecksum/test-mixed-args/README.md +1 -0
  350. package/vendor/clue/ndjson-react/README.md +365 -0
  351. package/vendor/composer/pcre/README.md +189 -0
  352. package/vendor/composer/semver/README.md +99 -0
  353. package/vendor/composer/xdebug-handler/README.md +305 -0
  354. package/vendor/ergebnis/agent-detector/README.md +107 -0
  355. package/vendor/evenement/evenement/README.md +64 -0
  356. package/vendor/fidry/cpu-core-counter/README.md +138 -0
  357. package/vendor/friendsofphp/php-cs-fixer/README.md +97 -0
  358. package/vendor/psr/container/README.md +13 -0
  359. package/vendor/psr/event-dispatcher/README.md +6 -0
  360. package/vendor/psr/log/README.md +58 -0
  361. package/vendor/react/cache/README.md +367 -0
  362. package/vendor/react/child-process/README.md +619 -0
  363. package/vendor/react/dns/README.md +453 -0
  364. package/vendor/react/event-loop/README.md +930 -0
  365. package/vendor/react/promise/README.md +722 -0
  366. package/vendor/react/socket/README.md +1564 -0
  367. package/vendor/react/stream/README.md +1249 -0
  368. package/vendor/sebastian/diff/README.md +151 -0
  369. package/vendor/symfony/console/README.md +30 -0
  370. package/vendor/symfony/deprecation-contracts/README.md +26 -0
  371. package/vendor/symfony/event-dispatcher/README.md +25 -0
  372. package/vendor/symfony/event-dispatcher-contracts/README.md +9 -0
  373. package/vendor/symfony/filesystem/README.md +23 -0
  374. package/vendor/symfony/finder/README.md +24 -0
  375. package/vendor/symfony/options-resolver/README.md +25 -0
  376. package/vendor/symfony/polyfill-ctype/README.md +12 -0
  377. package/vendor/symfony/polyfill-intl-grapheme/README.md +32 -0
  378. package/vendor/symfony/polyfill-intl-normalizer/README.md +14 -0
  379. package/vendor/symfony/polyfill-mbstring/README.md +13 -0
  380. package/vendor/symfony/polyfill-php80/README.md +25 -0
  381. package/vendor/symfony/polyfill-php81/README.md +18 -0
  382. package/vendor/symfony/polyfill-php84/README.md +23 -0
  383. package/vendor/symfony/polyfill-php85/README.md +20 -0
  384. package/vendor/symfony/process/README.md +23 -0
  385. package/vendor/symfony/service-contracts/README.md +9 -0
  386. package/vendor/symfony/stopwatch/README.md +52 -0
  387. package/vendor/symfony/string/README.md +24 -0
  388. package/.opencode/package.json +0 -5
  389. package/lib/chunk-6S4NXESK.mjs +0 -26
  390. package/lib/clean-github-actions-caches.cjs +0 -249
  391. package/lib/clean-github-actions-caches.d.cts +0 -15
  392. package/lib/del-gradle.js +0 -16
  393. package/lib/del-node-modules.js +0 -211
  394. package/lib/del-ps.js +0 -32
  395. package/lib/del-ps.mjs +0 -43
  396. package/lib/find-node-modules-cli.js +0 -4
  397. package/lib/ps/isWin.d.ts +0 -2
  398. package/test/package.json +0 -20
  399. package/test-project/package.json +0 -22
  400. package/test-project/workspaces/workspace-a/package.json +0 -135
  401. package/test-project/workspaces/workspace-a/test/demo/package.json +0 -25
  402. package/test-project/workspaces/workspace-b/package.json +0 -139
  403. package/test-project/workspaces/workspace-b/test/sample-project/package.json +0 -7
  404. package/test-project/workspaces/workspace-b/themes/hexo-theme-flowbite/package.json +0 -96
  405. package/tmp/rm-node-modules-test-project/package.json +0 -17
  406. package/tmp/rm-node-modules-test-project/packages/workspace-a/package.json +0 -16
  407. package/tmp/rm-node-modules-test-project/packages/workspace-b/package.json +0 -16
  408. package/tmp/test-repo/package.json +0 -17
  409. /package/lib/{clean-github-actions-caches-cli.d.cts → del-gradle.d.cts} +0 -0
  410. /package/lib/{del-gradle.d.ts → del-node-modules.d.cts} +0 -0
  411. /package/lib/{del-node-modules.d.ts → del-ps-cli.d.mts} +0 -0
  412. /package/lib/{find-node-modules-cli.d.ts → downloader-cli.d.cts} +0 -0
  413. /package/lib/{git-diff-cli.d.ts → find-node-modules-cli.d.cts} +0 -0
  414. /package/lib/{git-fix.d.cts → git/git-diff-cli.d.ts} +0 -0
  415. /package/lib/{git-diff-cli.js → git/git-diff-cli.js} +0 -0
  416. /package/lib/{git-diff.d.ts → git/git-diff.d.ts} +0 -0
  417. /package/lib/{git-purge.d.cts → git/git-purge.d.cts} +0 -0
  418. /package/lib/{del-ps.d.ts → github-workflows/clean-github-actions-caches-cli.d.cts} +0 -0
@@ -120,6 +120,9 @@ var require_findEnvFiles = __commonJS({
120
120
  return envFiles.find((file) => {
121
121
  try {
122
122
  const content = fs3.readFileSync(file, "utf-8");
123
+ if (tokenName instanceof RegExp) {
124
+ return tokenName.test(content);
125
+ }
123
126
  const regex = new RegExp(`^\\s*${tokenName}\\s*=`, "m");
124
127
  return regex.test(content);
125
128
  } catch (err) {
@@ -141,9 +144,16 @@ var require_findEnvFiles = __commonJS({
141
144
  var require_config = __commonJS({
142
145
  "src/binary-collections/config.cjs"(exports2, module2) {
143
146
  init_cjs_shims();
144
- var path3 = require("path");
147
+ var path3 = require("upath");
148
+ var minimistLib = require("minimist");
145
149
  var { findEnvWithToken } = require_findEnvFiles();
146
- require("dotenv").config({ path: findEnvWithToken(), quiet: true, overwrite: true });
150
+ var dotenv = require("dotenv");
151
+ var loadDotenv = (tokenKey = /ACCESS_TOKEN|GITHUB_TOKEN/) => dotenv.config({ path: findEnvWithToken(void 0, tokenKey), quiet: true, overwrite: true });
152
+ loadDotenv();
153
+ var cliArgv = minimistLib(process.argv.slice(2), {
154
+ string: ["token"]
155
+ });
156
+ var GITHUB_ACCESS_TOKEN = cliArgv.token || process.env.ACCESS_TOKEN || process.env.GITHUB_TOKEN || process.env.GH_TOKEN;
147
157
  function getTempDir() {
148
158
  return process.env.TEMP_DIR || path3.join(process.cwd(), "tmp");
149
159
  }
@@ -154,7 +164,9 @@ var require_config = __commonJS({
154
164
  module2.exports = {
155
165
  getTempDir,
156
166
  getTempPath: getTempPath2,
157
- TEMP_BASE_DIR
167
+ TEMP_BASE_DIR,
168
+ GITHUB_ACCESS_TOKEN,
169
+ loadDotenv
158
170
  };
159
171
  }
160
172
  });
@@ -165,9 +177,9 @@ var require_utils = __commonJS({
165
177
  init_cjs_shims();
166
178
  var fs3 = require("fs");
167
179
  var path3 = require("upath");
168
- var argv = require("minimist")(process.argv.slice(2));
180
+ var minimistLib = require("minimist");
181
+ var argv = minimistLib(process.argv.slice(2));
169
182
  var { exec } = require("child_process");
170
- var { URL: URL2 } = require("url");
171
183
  var { promisify } = require("util");
172
184
  var execAsync = promisify(exec);
173
185
  async function parseGitRemotes() {
@@ -180,7 +192,7 @@ var require_utils = __commonJS({
180
192
  if (name && url) {
181
193
  const [repoUrl] = url.split(" ");
182
194
  try {
183
- const parsedUrl = new URL2(repoUrl);
195
+ const parsedUrl = new URL(repoUrl);
184
196
  const pathParts = parsedUrl.pathname.split("/").filter(Boolean);
185
197
  if (parsedUrl.hostname === "github.com" && pathParts.length === 2) {
186
198
  let repoPath = pathParts.join("/");
@@ -201,15 +213,10 @@ var require_utils = __commonJS({
201
213
  }
202
214
  }
203
215
  module2.exports.parseGitRemotes = parseGitRemotes;
204
- function joinPathPreserveDriveLetter(...segments) {
205
- let fullPath = require("path").join(...segments);
206
- if (/^[a-z]:\\/.test(fullPath)) {
207
- fullPath = fullPath.charAt(0).toUpperCase() + fullPath.slice(1);
216
+ function getArgs2(opts) {
217
+ if (opts) {
218
+ return minimistLib(process.argv.slice(2), opts);
208
219
  }
209
- return fullPath;
210
- }
211
- module2.exports.joinPathPreserveDriveLetter = joinPathPreserveDriveLetter;
212
- function getArgs2() {
213
220
  return argv;
214
221
  }
215
222
  module2.exports.getArgs = getArgs2;
@@ -331,7 +338,7 @@ var require_utils = __commonJS({
331
338
  }
332
339
  });
333
340
 
334
- // src/git-diff.js
341
+ // src/git/git-diff.js
335
342
  var git_diff_exports = {};
336
343
  __export(git_diff_exports, {
337
344
  CACHE_DIR: () => CACHE_DIR,
@@ -865,7 +872,7 @@ async function runChatGpt(chatgptOptions = {}) {
865
872
  }
866
873
  }
867
874
 
868
- // src/git-diff.js
875
+ // src/git/git-diff.js
869
876
  var import_utils = __toESM(require_utils(), 1);
870
877
  var __filename2 = (0, import_url.fileURLToPath)(importMetaUrl);
871
878
  var __dirname = import_upath2.default.dirname(__filename2);
@@ -879,16 +886,16 @@ var DIFF_OUTPUT_RELATIVE = import_upath2.default.relative(process.cwd(), DIFF_OU
879
886
  var GPT_DIFF_OUTPUT_RELATIVE = import_upath2.default.relative(process.cwd(), GPT_DIFF_OUTPUT);
880
887
  import_fs_extra2.default.ensureDirSync(CACHE_DIR, { mode: 493 });
881
888
  function showHelp() {
882
- console.log("\u{1F4DD} Git Diff Helper");
883
- console.log("\u{1F4C4} Usage:");
884
- console.log(" \u{1F4C2} git-diff FILE Show staged diff of specified file");
885
- console.log(" \u{1F4C2} git-diff --staged-only Show staged diff of all files");
886
- console.log(" \u{1F4C2} git-diff -s | -S Same as --staged-only");
887
- console.log(" \u{1F4C2} git-diff --unstaged FILE Show unstaged diff of specified file");
888
- console.log(" \u{1F4C2} git-diff --unstaged Show unstaged diff of all files");
889
- console.log(" \u{1F4C2} git-diff -u Same as --unstaged");
890
- console.log(" \u{1F4C2} git-diff --ai Run ChatGPT automation for commit message");
891
- console.log(" \u{1F4C2} git-diff --help | -h Show this help message");
889
+ console.log("\u{1F4CB} Git Diff Helper");
890
+ console.log("Usage:");
891
+ console.log(" git-diff FILE Show staged diff of specified file");
892
+ console.log(" git-diff --staged-only Show staged diff of all files");
893
+ console.log(" git-diff -s | -S Same as --staged-only");
894
+ console.log(" git-diff --unstaged FILE Show unstaged diff of specified file");
895
+ console.log(" git-diff --unstaged Show unstaged diff of all files");
896
+ console.log(" git-diff -u Same as --unstaged");
897
+ console.log(" git-diff --ai Run ChatGPT automation for commit message");
898
+ console.log(" git-diff --help | -h Show this help message");
892
899
  console.log("");
893
900
  console.log(`\u{1F4BE} Output is saved to: ${DIFF_OUTPUT_RELATIVE}`);
894
901
  console.log(`\u{1F916} GPT prompt is saved to: ${GPT_DIFF_OUTPUT_RELATIVE}`);
@@ -896,14 +903,14 @@ function showHelp() {
896
903
  }
897
904
  function runGitDiff(command, successMessage, errorMessage) {
898
905
  try {
899
- console.log(`\u{1F50D} [i] Running command: ${command}`);
906
+ console.log(`\u2139\uFE0F Running command: ${command}`);
900
907
  const result = (0, import_child_process.execSync)(command, {
901
908
  encoding: "utf8",
902
909
  maxBuffer: 1024 * 1024 * 10
903
910
  // 10MB buffer to handle large diffs
904
911
  });
905
912
  if (!result || result.trim() === "") {
906
- console.log(`\u2139\uFE0F [i] No changes found for the specified criteria`);
913
+ console.log(`\u2139\uFE0F No changes found for the specified criteria`);
907
914
  (0, import_sbg_utility.writefile)(DIFF_OUTPUT, "# No changes found\n");
908
915
  console.log(`\u2705 Empty diff saved to "${DIFF_OUTPUT_RELATIVE}"`);
909
916
  return false;
@@ -911,7 +918,7 @@ function runGitDiff(command, successMessage, errorMessage) {
911
918
  (0, import_sbg_utility.writefile)(DIFF_OUTPUT, result);
912
919
  (0, import_sbg_utility.writefile)(
913
920
  GPT_DIFF_OUTPUT,
914
- `Hello, ChatGPT!
921
+ `Hello!
915
922
  Can you create a conventional commit message by diff content below:
916
923
 
917
924
  \`\`\`${result}
@@ -926,14 +933,56 @@ Thank you!`
926
933
  return true;
927
934
  } catch (error) {
928
935
  console.error(`\u274C ${errorMessage}`);
929
- console.error(`\u{1F4DD} Command: ${command}`);
930
- console.error(`\u26A0\uFE0F Error: ${error.message}`);
936
+ console.error(`\u274C Command: ${command}`);
937
+ console.error(`\u274C Error: ${error.message}`);
931
938
  if (error.message.includes("not a git repository")) {
932
- console.error("\u{1F6A7} Make sure you are in a git repository");
939
+ console.error("\u274C Make sure you are in a git repository");
933
940
  }
934
941
  process.exit(1);
935
942
  }
936
943
  }
944
+ function getUntrackedDiff() {
945
+ try {
946
+ const untrackedStr = (0, import_child_process.execSync)("git ls-files --others --exclude-standard", {
947
+ encoding: "utf8",
948
+ maxBuffer: 1024 * 1024 * 10
949
+ }).trim();
950
+ if (!untrackedStr) return "";
951
+ const untrackedFiles = untrackedStr.split("\n").filter(function(f) {
952
+ return f;
953
+ });
954
+ if (untrackedFiles.length === 0) return "";
955
+ var result = "\n# Untracked files:\n";
956
+ for (var i = 0; i < untrackedFiles.length; i++) {
957
+ var file = untrackedFiles[i];
958
+ if (!import_fs_extra2.default.existsSync(file)) continue;
959
+ var stat = import_fs_extra2.default.statSync(file);
960
+ if (!stat.isFile()) continue;
961
+ var content;
962
+ try {
963
+ content = import_fs_extra2.default.readFileSync(file, "utf8");
964
+ } catch (_a) {
965
+ continue;
966
+ }
967
+ var lines = content.split("\n");
968
+ if (lines.length > 0 && lines[lines.length - 1] === "") {
969
+ lines.pop();
970
+ }
971
+ result += "diff --git a/" + file + " b/" + file + "\n";
972
+ result += "new file mode 100644\n";
973
+ result += "index 0000000..0000000\n";
974
+ result += "--- /dev/null\n";
975
+ result += "+++ b/" + file + "\n";
976
+ result += "@@ -0,0 +1," + (lines.length || 0) + " @@\n";
977
+ for (var j = 0; j < lines.length; j++) {
978
+ result += "+" + lines[j] + "\n";
979
+ }
980
+ }
981
+ return result;
982
+ } catch (_b) {
983
+ return "";
984
+ }
985
+ }
937
986
  function fileHasChanges(file, mode) {
938
987
  const command = mode === "staged" ? `git diff --cached --quiet -- "${file}"` : `git diff --quiet -- "${file}"`;
939
988
  try {
@@ -968,6 +1017,30 @@ async function mainGitDiff() {
968
1017
  `Full ${fullDiffModeLabel} diff saved to "${import_ansi_colors.default.green(DIFF_OUTPUT_RELATIVE)}"`,
969
1018
  "Failed to save all diff's"
970
1019
  );
1020
+ const untrackedDiff = getUntrackedDiff();
1021
+ if (untrackedDiff) {
1022
+ const UNTRACKED_DIFF_OUTPUT = (0, import_config.getTempPath)(`git-diff/untracked-${FILENAME}.txt`);
1023
+ const UNTRACKED_GPT_DIFF_OUTPUT = (0, import_config.getTempPath)(`git-diff/gpt-untracked-${FILENAME}.txt`);
1024
+ const UNTRACKED_DIFF_OUTPUT_RELATIVE = import_upath2.default.relative(process.cwd(), UNTRACKED_DIFF_OUTPUT);
1025
+ (0, import_sbg_utility.writefile)(UNTRACKED_DIFF_OUTPUT, untrackedDiff);
1026
+ (0, import_sbg_utility.writefile)(
1027
+ UNTRACKED_GPT_DIFF_OUTPUT,
1028
+ `Hello!
1029
+ Can you create a conventional commit message by diff content below:
1030
+
1031
+ \`\`\`${untrackedDiff}
1032
+ \`\`\`
1033
+
1034
+ Give me result as codeblock with language "text" only.
1035
+
1036
+ Thank you!`
1037
+ );
1038
+ console.log(`\u2705 Untracked file diff saved to "${import_ansi_colors.default.green(UNTRACKED_DIFF_OUTPUT_RELATIVE)}"`);
1039
+ console.log(
1040
+ `\u{1F4BE} AI diff prompt saved to "${import_ansi_colors.default.green(import_upath2.default.relative(process.cwd(), UNTRACKED_GPT_DIFF_OUTPUT))}"`
1041
+ );
1042
+ hasDiff = true;
1043
+ }
971
1044
  } else {
972
1045
  let fileDiffMode = useUnstaged ? "unstaged" : "staged";
973
1046
  if (!useUnstaged && !fileHasChanges(file, "staged") && fileHasChanges(file, "unstaged")) {
@@ -997,7 +1070,7 @@ async function mainGitDiff() {
997
1070
  ];
998
1071
  const opencodePromptPath = (0, import_config.getTempPath)(`git-diff/opencode-${FILENAME}.txt`);
999
1072
  (0, import_sbg_utility.writefile)(opencodePromptPath, opencodePrompt.join("\n"));
1000
- console.log(`\u{1F4A1} OpenCode prompt saved to "${import_ansi_colors.default.green(import_upath2.default.relative(process.cwd(), opencodePromptPath))}"`);
1073
+ console.log(`\u2705 OpenCode prompt saved to "${import_ansi_colors.default.green(import_upath2.default.relative(process.cwd(), opencodePromptPath))}"`);
1001
1074
  }
1002
1075
  if (args.ai) {
1003
1076
  try {
@@ -1007,7 +1080,7 @@ async function mainGitDiff() {
1007
1080
  console.error("\u{1F4A1} Try running with visible browser mode or check if Chrome is installed");
1008
1081
  }
1009
1082
  } else {
1010
- console.log("\u{1F4A1} Tip: Use --ai flag to generate commit message with ChatGPT");
1083
+ console.log("\u{1F4A1} Use --ai flag to generate commit message with ChatGPT");
1011
1084
  }
1012
1085
  }
1013
1086
  var git_diff_default = runGitDiff;
@@ -22,9 +22,9 @@ const fs_extra_1 = __importDefault(require("fs-extra"));
22
22
  const sbg_utility_1 = require("sbg-utility");
23
23
  const upath_1 = __importDefault(require("upath"));
24
24
  const url_1 = require("url");
25
- const config_cjs_1 = require("./binary-collections/config.cjs");
26
- const chatgpt_js_1 = require("./utils/chatgpt.js");
27
- const index_cjs_1 = require("./utils/index.cjs");
25
+ const config_cjs_1 = require("../binary-collections/config.cjs");
26
+ const chatgpt_js_1 = require("../utils/chatgpt.js");
27
+ const index_cjs_1 = require("../utils/index.cjs");
28
28
  const __filename = (0, url_1.fileURLToPath)(import.meta.url);
29
29
  const __dirname = upath_1.default.dirname(__filename);
30
30
  const args = (0, index_cjs_1.getArgs)();
@@ -45,19 +45,19 @@ exports.GPT_DIFF_OUTPUT_RELATIVE = GPT_DIFF_OUTPUT_RELATIVE;
45
45
  // Ensure output directory exists
46
46
  fs_extra_1.default.ensureDirSync(CACHE_DIR, { mode: 0o755 });
47
47
  function showHelp() {
48
- console.log('\u{1F4DD} Git Diff Helper');
49
- console.log('\u{1F4C4} Usage:');
50
- console.log(' \u{1F4C2} git-diff FILE Show staged diff of specified file');
51
- console.log(' \u{1F4C2} git-diff --staged-only Show staged diff of all files');
52
- console.log(' \u{1F4C2} git-diff -s | -S Same as --staged-only');
53
- console.log(' \u{1F4C2} git-diff --unstaged FILE Show unstaged diff of specified file');
54
- console.log(' \u{1F4C2} git-diff --unstaged Show unstaged diff of all files');
55
- console.log(' \u{1F4C2} git-diff -u Same as --unstaged');
56
- console.log(' \u{1F4C2} git-diff --ai Run ChatGPT automation for commit message');
57
- console.log(' \u{1F4C2} git-diff --help | -h Show this help message');
48
+ console.log('📋 Git Diff Helper');
49
+ console.log('Usage:');
50
+ console.log(' git-diff FILE Show staged diff of specified file');
51
+ console.log(' git-diff --staged-only Show staged diff of all files');
52
+ console.log(' git-diff -s | -S Same as --staged-only');
53
+ console.log(' git-diff --unstaged FILE Show unstaged diff of specified file');
54
+ console.log(' git-diff --unstaged Show unstaged diff of all files');
55
+ console.log(' git-diff -u Same as --unstaged');
56
+ console.log(' git-diff --ai Run ChatGPT automation for commit message');
57
+ console.log(' git-diff --help | -h Show this help message');
58
58
  console.log('');
59
- console.log(`\u{1F4BE} Output is saved to: ${DIFF_OUTPUT_RELATIVE}`);
60
- console.log(`\u{1F916} GPT prompt is saved to: ${GPT_DIFF_OUTPUT_RELATIVE}`);
59
+ console.log(`💾 Output is saved to: ${DIFF_OUTPUT_RELATIVE}`);
60
+ console.log(`🤖 GPT prompt is saved to: ${GPT_DIFF_OUTPUT_RELATIVE}`);
61
61
  process.exit(0);
62
62
  }
63
63
  /**
@@ -92,46 +92,91 @@ function showHelp() {
92
92
  */
93
93
  function runGitDiff(command, successMessage, errorMessage) {
94
94
  try {
95
- console.log(`🔍 [i] Running command: ${command}`);
95
+ console.log(`ℹ️ Running command: ${command}`);
96
96
  const result = (0, child_process_1.execSync)(command, {
97
97
  encoding: 'utf8',
98
98
  maxBuffer: 1024 * 1024 * 10 // 10MB buffer to handle large diffs
99
99
  });
100
100
  // If result is empty, inform user but don't treat as error
101
101
  if (!result || result.trim() === '') {
102
- console.log(`ℹ️ [i] No changes found for the specified criteria`);
102
+ console.log(`ℹ️ No changes found for the specified criteria`);
103
103
  (0, sbg_utility_1.writefile)(DIFF_OUTPUT, '# No changes found\n');
104
104
  console.log(`✅ Empty diff saved to "${DIFF_OUTPUT_RELATIVE}"`);
105
105
  return false;
106
106
  }
107
107
  (0, sbg_utility_1.writefile)(DIFF_OUTPUT, result);
108
- (0, sbg_utility_1.writefile)(GPT_DIFF_OUTPUT, `Hello, ChatGPT!\nCan you create a conventional commit message by diff content below:\n\n\`\`\`${result}\n\`\`\`\n\nGive me result as codeblock with language "text" only.\n\nThank you!`);
108
+ (0, sbg_utility_1.writefile)(GPT_DIFF_OUTPUT, `Hello!\nCan you create a conventional commit message by diff content below:\n\n\`\`\`${result}\n\`\`\`\n\nGive me result as codeblock with language "text" only.\n\nThank you!`);
109
109
  console.log(`✅ ${successMessage}`);
110
110
  console.log(`💾 GPT diff prompt saved to "${ansi_colors_1.default.green(GPT_DIFF_OUTPUT_RELATIVE)}"`);
111
111
  return true;
112
112
  }
113
113
  catch (error) {
114
114
  console.error(`❌ ${errorMessage}`);
115
- console.error(`📝 Command: ${command}`);
116
- console.error(`⚠️ Error: ${error.message}`);
115
+ console.error(`❌ Command: ${command}`);
116
+ console.error(`❌ Error: ${error.message}`);
117
117
  // Check if it's a git-related error
118
118
  if (error.message.includes('not a git repository')) {
119
- console.error('🚧 Make sure you are in a git repository');
119
+ console.error(' Make sure you are in a git repository');
120
120
  }
121
121
  process.exit(1);
122
122
  }
123
123
  }
124
124
  /**
125
- * Checks whether a file has changes for a specific git diff mode.
125
+ * Generates diff-formatted output for untracked files.
126
+ * Uses `git ls-files --others --exclude-standard` to find untracked files,
127
+ * then creates synthetic git diff entries for each.
126
128
  *
127
- * Uses `git diff --quiet` semantics:
128
- * - exit code 0: no changes
129
- * - exit code 1: changes exist
130
- *
131
- * @param {string} file - Target file path
132
- * @param {"staged" | "unstaged"} mode - Diff mode to check
133
- * @returns {boolean} True when changes exist for the given mode
129
+ * @returns {string} Formatted diff content for untracked files, or empty string if none
134
130
  */
131
+ function getUntrackedDiff() {
132
+ try {
133
+ const untrackedStr = (0, child_process_1.execSync)('git ls-files --others --exclude-standard', {
134
+ encoding: 'utf8',
135
+ maxBuffer: 1024 * 1024 * 10
136
+ }).trim();
137
+ if (!untrackedStr)
138
+ return '';
139
+ const untrackedFiles = untrackedStr.split('\n').filter(function (f) {
140
+ return f;
141
+ });
142
+ if (untrackedFiles.length === 0)
143
+ return '';
144
+ var result = '\n# Untracked files:\n';
145
+ for (var i = 0; i < untrackedFiles.length; i++) {
146
+ var file = untrackedFiles[i];
147
+ if (!fs_extra_1.default.existsSync(file))
148
+ continue;
149
+ var stat = fs_extra_1.default.statSync(file);
150
+ if (!stat.isFile())
151
+ continue;
152
+ var content;
153
+ try {
154
+ content = fs_extra_1.default.readFileSync(file, 'utf8');
155
+ }
156
+ catch (_a) {
157
+ continue; // skip binary files
158
+ }
159
+ var lines = content.split('\n');
160
+ // Remove trailing empty line from split
161
+ if (lines.length > 0 && lines[lines.length - 1] === '') {
162
+ lines.pop();
163
+ }
164
+ result += 'diff --git a/' + file + ' b/' + file + '\n';
165
+ result += 'new file mode 100644\n';
166
+ result += 'index 0000000..0000000\n';
167
+ result += '--- /dev/null\n';
168
+ result += '+++ b/' + file + '\n';
169
+ result += '@@ -0,0 +1,' + (lines.length || 0) + ' @@\n';
170
+ for (var j = 0; j < lines.length; j++) {
171
+ result += '+' + lines[j] + '\n';
172
+ }
173
+ }
174
+ return result;
175
+ }
176
+ catch (_b) {
177
+ return '';
178
+ }
179
+ }
135
180
  function fileHasChanges(file, mode) {
136
181
  const command = mode === 'staged' ? `git diff --cached --quiet -- "${file}"` : `git diff --quiet -- "${file}"`;
137
182
  try {
@@ -163,6 +208,18 @@ function mainGitDiff() {
163
208
  if (!file) {
164
209
  const fullDiffModeLabel = useUnstaged ? 'unstaged' : 'unstaged';
165
210
  hasDiff = runGitDiff('git --no-pager diff', `Full ${fullDiffModeLabel} diff saved to "${ansi_colors_1.default.green(DIFF_OUTPUT_RELATIVE)}"`, "Failed to save all diff's");
211
+ // Save untracked file diffs to separate file
212
+ const untrackedDiff = getUntrackedDiff();
213
+ if (untrackedDiff) {
214
+ const UNTRACKED_DIFF_OUTPUT = (0, config_cjs_1.getTempPath)(`git-diff/untracked-${FILENAME}.txt`);
215
+ const UNTRACKED_GPT_DIFF_OUTPUT = (0, config_cjs_1.getTempPath)(`git-diff/gpt-untracked-${FILENAME}.txt`);
216
+ const UNTRACKED_DIFF_OUTPUT_RELATIVE = upath_1.default.relative(process.cwd(), UNTRACKED_DIFF_OUTPUT);
217
+ (0, sbg_utility_1.writefile)(UNTRACKED_DIFF_OUTPUT, untrackedDiff);
218
+ (0, sbg_utility_1.writefile)(UNTRACKED_GPT_DIFF_OUTPUT, `Hello!\nCan you create a conventional commit message by diff content below:\n\n\`\`\`${untrackedDiff}\n\`\`\`\n\nGive me result as codeblock with language "text" only.\n\nThank you!`);
219
+ console.log(`✅ Untracked file diff saved to "${ansi_colors_1.default.green(UNTRACKED_DIFF_OUTPUT_RELATIVE)}"`);
220
+ console.log(`💾 AI diff prompt saved to "${ansi_colors_1.default.green(upath_1.default.relative(process.cwd(), UNTRACKED_GPT_DIFF_OUTPUT))}"`);
221
+ hasDiff = true;
222
+ }
166
223
  }
167
224
  else {
168
225
  let fileDiffMode = useUnstaged ? 'unstaged' : 'staged';
@@ -189,7 +246,7 @@ function mainGitDiff() {
189
246
  ];
190
247
  const opencodePromptPath = (0, config_cjs_1.getTempPath)(`git-diff/opencode-${FILENAME}.txt`);
191
248
  (0, sbg_utility_1.writefile)(opencodePromptPath, opencodePrompt.join('\n'));
192
- console.log(`💡 OpenCode prompt saved to "${ansi_colors_1.default.green(upath_1.default.relative(process.cwd(), opencodePromptPath))}"`);
249
+ console.log(`✅ OpenCode prompt saved to "${ansi_colors_1.default.green(upath_1.default.relative(process.cwd(), opencodePromptPath))}"`);
193
250
  }
194
251
  // Generate commit message prompt from ChatGPT (only if --ai is specified)
195
252
  if (args.ai) {
@@ -202,7 +259,7 @@ function mainGitDiff() {
202
259
  }
203
260
  }
204
261
  else {
205
- console.log('💡 Tip: Use --ai flag to generate commit message with ChatGPT');
262
+ console.log('💡 Use --ai flag to generate commit message with ChatGPT');
206
263
  }
207
264
  });
208
265
  }
@@ -9,12 +9,12 @@ import {
9
9
  git_diff_default,
10
10
  mainGitDiff,
11
11
  runGitDiff
12
- } from "./chunk-SPTECFE5.mjs";
13
- import "./chunk-G5UUEWUO.mjs";
14
- import "./chunk-GAGABICI.mjs";
15
- import "./chunk-H44UWUFY.mjs";
16
- import "./chunk-5RTXZVCW.mjs";
17
- import "./chunk-QQ4A6DLD.mjs";
12
+ } from "../chunk-3F6EIHYG.mjs";
13
+ import "../chunk-SARIXFHP.mjs";
14
+ import "../chunk-J4M5EL5P.mjs";
15
+ import "../chunk-GAGABICI.mjs";
16
+ import "../chunk-6RK5UCTP.mjs";
17
+ import "../chunk-QQ4A6DLD.mjs";
18
18
  export {
19
19
  CACHE_DIR,
20
20
  DIFF_OUTPUT,
@@ -13,6 +13,135 @@ var init_cjs_shims = __esm({
13
13
  }
14
14
  });
15
15
 
16
+ // src/utils/findEnvFiles.cjs
17
+ var require_findEnvFiles = __commonJS({
18
+ "src/utils/findEnvFiles.cjs"(exports2, module2) {
19
+ init_cjs_shims();
20
+ var fs = require("fs");
21
+ var path2 = require("path");
22
+ var glob = require("glob");
23
+ var DEFAULT_IGNORES = [
24
+ "**/node_modules/**",
25
+ "**/.git/**",
26
+ "**/.yarn/**",
27
+ "**/.pnpm/**",
28
+ "**/dist/**",
29
+ "**/build/**",
30
+ "**/coverage/**",
31
+ "**/vendor/**",
32
+ "**/tmp/**",
33
+ "**/.cache/**",
34
+ "**/assets/**",
35
+ "**/logs/**",
36
+ "**/output/**",
37
+ "**/public/**",
38
+ "**/static/**",
39
+ "**/temp/**",
40
+ "**/backup/**",
41
+ "**/backups/**",
42
+ "**/examples/**",
43
+ "**/docs/**",
44
+ "**/tests/**",
45
+ "**/__tests__/**",
46
+ "**/spec/**",
47
+ "**/__specs__/**",
48
+ "**/scripts/**",
49
+ "**/bin/**",
50
+ "**/hooks/**",
51
+ "**/config/**",
52
+ "**/configs/**",
53
+ "**/settings/**",
54
+ "**/.vscode/**",
55
+ "**/.idea/**"
56
+ ];
57
+ function findEnvFiles(startDir = process.cwd(), filter) {
58
+ const found = /* @__PURE__ */ new Set();
59
+ function addFile(file) {
60
+ const normalized = path2.normalize(file);
61
+ if (typeof filter === "function" && !filter(normalized)) {
62
+ return;
63
+ }
64
+ found.add(normalized);
65
+ }
66
+ let current = path2.resolve(startDir);
67
+ while (true) {
68
+ const envPath = path2.join(current, ".env");
69
+ if (fs.existsSync(envPath)) {
70
+ addFile(envPath);
71
+ }
72
+ const parent = path2.dirname(current);
73
+ if (parent === current) {
74
+ break;
75
+ }
76
+ current = parent;
77
+ }
78
+ const files = glob.globSync("**/.env*", {
79
+ cwd: startDir,
80
+ absolute: true,
81
+ nodir: true,
82
+ ignore: DEFAULT_IGNORES
83
+ });
84
+ for (const file of files) {
85
+ addFile(file);
86
+ }
87
+ return [...found];
88
+ }
89
+ function findEnvWithToken(startDir = process.cwd(), tokenName = "GITHUB_TOKEN") {
90
+ const envFiles = findEnvFiles(startDir);
91
+ return envFiles.find((file) => {
92
+ try {
93
+ const content = fs.readFileSync(file, "utf-8");
94
+ if (tokenName instanceof RegExp) {
95
+ return tokenName.test(content);
96
+ }
97
+ const regex = new RegExp(`^\\s*${tokenName}\\s*=`, "m");
98
+ return regex.test(content);
99
+ } catch (err) {
100
+ console.warn(`Failed to read ${file}: ${err instanceof Error ? err.message : String(err)}`);
101
+ return false;
102
+ }
103
+ });
104
+ }
105
+ module2.exports = {
106
+ DEFAULT_IGNORES,
107
+ findEnvFiles,
108
+ findEnvWithToken,
109
+ default: findEnvFiles
110
+ };
111
+ }
112
+ });
113
+
114
+ // src/binary-collections/config.cjs
115
+ var require_config = __commonJS({
116
+ "src/binary-collections/config.cjs"(exports2, module2) {
117
+ init_cjs_shims();
118
+ var path2 = require("upath");
119
+ var minimistLib = require("minimist");
120
+ var { findEnvWithToken } = require_findEnvFiles();
121
+ var dotenv = require("dotenv");
122
+ var loadDotenv2 = (tokenKey = /ACCESS_TOKEN|GITHUB_TOKEN/) => dotenv.config({ path: findEnvWithToken(void 0, tokenKey), quiet: true, overwrite: true });
123
+ loadDotenv2();
124
+ var cliArgv = minimistLib(process.argv.slice(2), {
125
+ string: ["token"]
126
+ });
127
+ var GITHUB_ACCESS_TOKEN = cliArgv.token || process.env.ACCESS_TOKEN || process.env.GITHUB_TOKEN || process.env.GH_TOKEN;
128
+ function getTempDir() {
129
+ return process.env.TEMP_DIR || path2.join(process.cwd(), "tmp");
130
+ }
131
+ function getTempPath(...segments) {
132
+ return path2.join(getTempDir(), ...segments);
133
+ }
134
+ var TEMP_BASE_DIR = getTempDir();
135
+ module2.exports = {
136
+ getTempDir,
137
+ getTempPath,
138
+ TEMP_BASE_DIR,
139
+ GITHUB_ACCESS_TOKEN,
140
+ loadDotenv: loadDotenv2
141
+ };
142
+ }
143
+ });
144
+
16
145
  // src/git/utils.cjs
17
146
  var require_utils = __commonJS({
18
147
  "src/git/utils.cjs"(exports2, module2) {
@@ -349,9 +478,9 @@ var require_utils2 = __commonJS({
349
478
  init_cjs_shims();
350
479
  var fs = require("fs");
351
480
  var path2 = require("upath");
352
- var argv = require("minimist")(process.argv.slice(2));
481
+ var minimistLib = require("minimist");
482
+ var argv = minimistLib(process.argv.slice(2));
353
483
  var { exec } = require("child_process");
354
- var { URL: URL2 } = require("url");
355
484
  var { promisify } = require("util");
356
485
  var execAsync = promisify(exec);
357
486
  async function parseGitRemotes() {
@@ -364,7 +493,7 @@ var require_utils2 = __commonJS({
364
493
  if (name && url) {
365
494
  const [repoUrl] = url.split(" ");
366
495
  try {
367
- const parsedUrl = new URL2(repoUrl);
496
+ const parsedUrl = new URL(repoUrl);
368
497
  const pathParts = parsedUrl.pathname.split("/").filter(Boolean);
369
498
  if (parsedUrl.hostname === "github.com" && pathParts.length === 2) {
370
499
  let repoPath = pathParts.join("/");
@@ -385,15 +514,10 @@ var require_utils2 = __commonJS({
385
514
  }
386
515
  }
387
516
  module2.exports.parseGitRemotes = parseGitRemotes;
388
- function joinPathPreserveDriveLetter(...segments) {
389
- let fullPath = require("path").join(...segments);
390
- if (/^[a-z]:\\/.test(fullPath)) {
391
- fullPath = fullPath.charAt(0).toUpperCase() + fullPath.slice(1);
517
+ function getArgs2(opts) {
518
+ if (opts) {
519
+ return minimistLib(process.argv.slice(2), opts);
392
520
  }
393
- return fullPath;
394
- }
395
- module2.exports.joinPathPreserveDriveLetter = joinPathPreserveDriveLetter;
396
- function getArgs2() {
397
521
  return argv;
398
522
  }
399
523
  module2.exports.getArgs = getArgs2;
@@ -519,10 +643,11 @@ var require_utils2 = __commonJS({
519
643
  var require_user_config = __commonJS({
520
644
  "src/git/user-config.cjs"(exports2, module2) {
521
645
  init_cjs_shims();
646
+ var { loadDotenv: loadDotenv2 } = require_config();
522
647
  var gch = require("git-command-helper");
523
648
  var { runGitCommand, runGitCommandOutput } = require_utils();
524
649
  var { getArgs: getArgs2 } = require_utils2();
525
- require("dotenv").config({ path: require("path").join(process.cwd(), ".env"), quiet: true });
650
+ loadDotenv2();
526
651
  function configureGitUser2(cliUser = null, cliEmail = null, options2 = {}) {
527
652
  console.log("\n=== Configuring Git User ===");
528
653
  let username, email;
@@ -646,8 +771,9 @@ var require_normalize = __commonJS({
646
771
  }
647
772
  });
648
773
 
649
- // src/git-fix.cjs
774
+ // src/git/git-fix.cjs
650
775
  init_cjs_shims();
776
+ var { loadDotenv } = require_config();
651
777
  var { isGitRepository } = require_utils();
652
778
  var { forceLfLineEndings } = require_line_endings();
653
779
  var { ignoreFilePermissions } = require_permissions();
@@ -656,7 +782,7 @@ var { configureGitUser } = require_user_config();
656
782
  var { normalizeLineEndings } = require_normalize();
657
783
  var { getArgs } = require_utils2();
658
784
  var path = require("upath");
659
- require("dotenv").config({ path: path.join(process.cwd(), ".env"), quiet: true, override: true });
785
+ loadDotenv();
660
786
  function showHelp() {
661
787
  console.log("Git Fix Utility");
662
788
  console.log("----------------------------");
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ export {};