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
@@ -0,0 +1,175 @@
1
+ import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
+ import {
3
+ build_readme_default
4
+ } from "../chunk-RJKTSUAX.mjs";
5
+ import {
6
+ require_utils
7
+ } from "../chunk-6RK5UCTP.mjs";
8
+ import {
9
+ __toESM,
10
+ init_esm_shims
11
+ } from "../chunk-QQ4A6DLD.mjs";
12
+
13
+ // src/node-package-packer/build-tarball.mjs
14
+ init_esm_shims();
15
+ import fs from "fs-extra";
16
+ import { file_to_hash } from "sbg-utility";
17
+ import path from "upath";
18
+ var import_utils = __toESM(require_utils(), 1);
19
+ import * as crossSpawn from "cross-spawn";
20
+ function slugifyPkgName(str) {
21
+ return str.replace(/\//g, "-").replace(/@/g, "");
22
+ }
23
+ function resolveNewestTarball(dirname, candidateNames) {
24
+ const candidates = /* @__PURE__ */ new Set();
25
+ for (const name of candidateNames) {
26
+ const candidatePath = path.join(dirname, name);
27
+ if (fs.existsSync(candidatePath)) {
28
+ candidates.add(candidatePath);
29
+ }
30
+ }
31
+ for (const entry of fs.readdirSync(dirname)) {
32
+ if (entry.endsWith(".tgz")) {
33
+ candidates.add(path.join(dirname, entry));
34
+ }
35
+ }
36
+ const tarballs = Array.from(candidates);
37
+ if (tarballs.length === 0) {
38
+ return null;
39
+ }
40
+ return tarballs.sort((left, right) => fs.statSync(right).mtimeMs - fs.statSync(left).mtimeMs)[0];
41
+ }
42
+ async function getPackageHashes(dirname, releaseDir) {
43
+ let hashes = {};
44
+ const metafile = path.join(releaseDir, "metadata.json");
45
+ if (fs.existsSync(metafile)) {
46
+ try {
47
+ hashes = Object.assign(
48
+ hashes,
49
+ Object.fromEntries(
50
+ Object.entries(JSON.parse(fs.readFileSync(metafile, "utf-8"))).filter(
51
+ ([key]) => !key.endsWith("yarn.lock") && !key.endsWith("package-lock.json")
52
+ )
53
+ )
54
+ );
55
+ } catch {
56
+ hashes = {};
57
+ }
58
+ }
59
+ const readDir = fs.readdirSync(releaseDir).filter((f) => f.endsWith("tgz")).map((f) => path.join(releaseDir, f));
60
+ for (let i = 0; i < readDir.length; i++) {
61
+ const file = readDir[i];
62
+ const stat = fs.statSync(file);
63
+ const size = `${parseFloat(stat.size / Math.pow(1024, 1)).toFixed(2)} KB`;
64
+ hashes = Object.assign({}, hashes, {
65
+ [path.toUnix(file).replace(path.toUnix(dirname), "")]: {
66
+ integrity: {
67
+ sha1: await file_to_hash("sha1", file),
68
+ sha256: await file_to_hash("sha256", file, "base64"),
69
+ md5: await file_to_hash("md5", file),
70
+ sha512: await file_to_hash("sha512", file, "base64")
71
+ },
72
+ size
73
+ }
74
+ });
75
+ fs.writeFileSync(metafile, JSON.stringify(hashes, null, 2) + "\n");
76
+ }
77
+ return hashes;
78
+ }
79
+ async function bundleWithYarn(dirname, packagejson, releaseDir, argv, withFilename, isCI) {
80
+ await build_readme_default(dirname, packagejson, releaseDir, argv, isCI);
81
+ const targetFname = argv["fn"] || argv["filename"] || slugifyPkgName(`${packagejson.name}-${packagejson.version}.tgz`);
82
+ const tgz = resolveNewestTarball(dirname, [
83
+ "package.tgz",
84
+ slugifyPkgName(`${packagejson.name}-v${packagejson.version}.tgz`)
85
+ ]);
86
+ if (!tgz) {
87
+ throw new Error(`No Yarn pack tarball found in ${dirname}`);
88
+ }
89
+ if (withFilename) {
90
+ const tgzlatest = path.join(releaseDir, targetFname + ".tgz");
91
+ fs.copySync(tgz, tgzlatest, { overwrite: true });
92
+ } else {
93
+ const tgzlatest = path.join(releaseDir, slugifyPkgName(`${packagejson.name}.tgz`));
94
+ const tgzversion = path.join(releaseDir, targetFname);
95
+ fs.copySync(tgz, tgzlatest, { overwrite: true });
96
+ fs.copySync(tgz, tgzversion, { overwrite: true });
97
+ }
98
+ fs.rmSync(tgz, { recursive: true, force: true });
99
+ await getPackageHashes(dirname, releaseDir);
100
+ }
101
+ async function bundleWithNpm(dirname, packagejson, releaseDir, argv, isCI) {
102
+ const filename = slugifyPkgName(`${packagejson.name}-${packagejson.version}.tgz`);
103
+ const tgz = path.join(dirname, filename);
104
+ const tgzversion = path.join(releaseDir, filename);
105
+ if (!fs.existsSync(tgz)) {
106
+ const filename2 = slugifyPkgName(`${packagejson.name}-${packagejson.version}.tgz`);
107
+ const origintgz = path.join(dirname, filename2);
108
+ if (fs.existsSync(origintgz) && origintgz !== tgz) {
109
+ fs.renameSync(origintgz, tgz);
110
+ }
111
+ }
112
+ const tgzlatest = path.join(releaseDir, slugifyPkgName(`${packagejson.name}.tgz`));
113
+ if (!fs.existsSync(path.dirname(tgzlatest))) {
114
+ fs.mkdirpSync(path.dirname(tgzlatest));
115
+ }
116
+ await build_readme_default(dirname, packagejson, releaseDir, argv, isCI);
117
+ if (fs.existsSync(tgz)) {
118
+ fs.copySync(tgz, tgzlatest);
119
+ fs.copySync(tgz, tgzversion);
120
+ if (fs.existsSync(tgz)) fs.rmSync(tgz);
121
+ await getPackageHashes(dirname, releaseDir);
122
+ }
123
+ }
124
+ function bundle() {
125
+ const args = (0, import_utils.getArgs)();
126
+ const withYarn = args._.includes("-yarn") || args._.includes("--yarn");
127
+ const releaseDir1 = path.join(process.cwd(), "release");
128
+ const releaseDir2 = path.join(process.cwd(), "releases");
129
+ const releaseDir = !fs.existsSync(releaseDir2) ? releaseDir1 : releaseDir2;
130
+ const isYarn = fs.existsSync(path.join(process.cwd(), "yarn.lock")) || withYarn;
131
+ const packagejson = fs.readJSONSync(path.join(process.cwd(), "package.json"));
132
+ const withFilename = args["fn"] || args["filename"] ? true : false;
133
+ const isCI = process.env.GITHUB_ACTION && process.env.GITHUB_ACTIONS;
134
+ if (!fs.existsSync(releaseDir)) {
135
+ fs.mkdirpSync(releaseDir, { recursive: true });
136
+ }
137
+ const child = !withYarn ? crossSpawn.spawn("npm", ["pack"], {
138
+ cwd: process.cwd(),
139
+ shell: true,
140
+ stdio: "ignore",
141
+ env: { PATH: process.env.PATH }
142
+ }) : crossSpawn.spawn("yarn", ["pack"], {
143
+ cwd: process.cwd(),
144
+ shell: true,
145
+ stdio: "ignore",
146
+ env: { PATH: process.env.PATH }
147
+ });
148
+ return new Promise((resolve, reject) => {
149
+ child.once("error", reject);
150
+ child.once("close", async () => {
151
+ try {
152
+ if (isYarn) {
153
+ await bundleWithYarn(process.cwd(), packagejson, releaseDir, args, withFilename, isCI);
154
+ } else {
155
+ await bundleWithNpm(process.cwd(), packagejson, releaseDir, args, isCI);
156
+ }
157
+ resolve();
158
+ } catch (error) {
159
+ reject(error);
160
+ }
161
+ });
162
+ });
163
+ }
164
+ var build_tarball_default = {
165
+ bundleWithYarn,
166
+ bundleWithNpm,
167
+ getPackageHashes
168
+ };
169
+ export {
170
+ bundle,
171
+ bundleWithNpm,
172
+ bundleWithYarn,
173
+ build_tarball_default as default,
174
+ getPackageHashes
175
+ };
@@ -0,0 +1,525 @@
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
+
35
+ // node_modules/tsup/assets/cjs_shims.js
36
+ var getImportMetaUrl, importMetaUrl;
37
+ var init_cjs_shims = __esm({
38
+ "node_modules/tsup/assets/cjs_shims.js"() {
39
+ 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;
40
+ importMetaUrl = /* @__PURE__ */ getImportMetaUrl();
41
+ }
42
+ });
43
+
44
+ // src/utils/index.cjs
45
+ var require_utils = __commonJS({
46
+ "src/utils/index.cjs"(exports2, module2) {
47
+ init_cjs_shims();
48
+ var fs3 = require("fs");
49
+ var path4 = require("upath");
50
+ var minimistLib = require("minimist");
51
+ var argv = minimistLib(process.argv.slice(2));
52
+ var { exec } = require("child_process");
53
+ var { promisify } = require("util");
54
+ var execAsync = promisify(exec);
55
+ async function parseGitRemotes() {
56
+ try {
57
+ const { stdout } = await execAsync("git remote -v");
58
+ const lines = stdout.split("\n");
59
+ const remotes = {};
60
+ lines.forEach((line) => {
61
+ const [name, url] = line.split(" ");
62
+ if (name && url) {
63
+ const [repoUrl] = url.split(" ");
64
+ try {
65
+ const parsedUrl = new URL(repoUrl);
66
+ const pathParts = parsedUrl.pathname.split("/").filter(Boolean);
67
+ if (parsedUrl.hostname === "github.com" && pathParts.length === 2) {
68
+ let repoPath = pathParts.join("/");
69
+ if (repoPath.endsWith(".git")) {
70
+ repoPath = repoPath.slice(0, -4);
71
+ }
72
+ remotes[name] = repoPath;
73
+ }
74
+ } catch (e) {
75
+ console.error("URL Parsing Error:", e.message);
76
+ }
77
+ }
78
+ });
79
+ return remotes;
80
+ } catch (error) {
81
+ console.error("Error:", error.message);
82
+ return {};
83
+ }
84
+ }
85
+ module2.exports.parseGitRemotes = parseGitRemotes;
86
+ function getArgs3(opts) {
87
+ if (opts) {
88
+ return minimistLib(process.argv.slice(2), opts);
89
+ }
90
+ return argv;
91
+ }
92
+ module2.exports.getArgs = getArgs3;
93
+ function del(fullPath) {
94
+ try {
95
+ if (!fs3.existsSync(fullPath)) return;
96
+ const stat = fs3.lstatSync(fullPath);
97
+ if (stat.isSymbolicLink()) {
98
+ try {
99
+ fs3.unlinkSync(fullPath);
100
+ console.log("deleted symlink", fullPath);
101
+ } catch (e) {
102
+ console.log("failed delete symlink", fullPath, e && e.message);
103
+ }
104
+ return;
105
+ }
106
+ if (stat.isDirectory()) {
107
+ const subdir = fs3.readdirSync(fullPath).map((dirPath) => path4.resolve(fullPath, dirPath));
108
+ for (let i = 0; i < subdir.length; i++) {
109
+ del(subdir[i]);
110
+ }
111
+ try {
112
+ fs3.rmdirSync(fullPath);
113
+ console.log("deleted", fullPath);
114
+ } catch (_e) {
115
+ try {
116
+ fs3.rmSync(fullPath, { recursive: true, force: true, retryDelay: 7e3 });
117
+ console.log("deleted", fullPath);
118
+ } catch (ee) {
119
+ console.log("failed delete", fullPath, ee && ee.message);
120
+ }
121
+ }
122
+ return;
123
+ }
124
+ try {
125
+ fs3.unlinkSync(fullPath);
126
+ console.log("deleted", fullPath);
127
+ } catch (_e) {
128
+ try {
129
+ fs3.rmSync(fullPath, { recursive: true, force: true, retryDelay: 7e3 });
130
+ console.log("deleted", fullPath);
131
+ } catch (ee) {
132
+ console.log("failed delete", fullPath, ee && ee.message);
133
+ }
134
+ }
135
+ } catch (err) {
136
+ console.log("failed delete", fullPath, err && err.message);
137
+ }
138
+ }
139
+ module2.exports.del = del;
140
+ function delStream(globStream) {
141
+ globStream.stream().on("data", (result) => {
142
+ const fullPath = path4.resolve(process.cwd(), result);
143
+ try {
144
+ if (fs3.existsSync(fullPath)) {
145
+ const stat = fs3.lstatSync(fullPath);
146
+ if (stat.isSymbolicLink()) {
147
+ try {
148
+ fs3.unlinkSync(fullPath);
149
+ console.log("deleted symlink", fullPath);
150
+ } catch (e) {
151
+ console.log("failed delete symlink", fullPath, e && e.message);
152
+ }
153
+ return;
154
+ }
155
+ if (stat.isDirectory()) {
156
+ const subdir = fs3.readdirSync(fullPath).map((dirPath) => path4.resolve(fullPath, dirPath));
157
+ for (let i = 0; i < subdir.length; i++) {
158
+ del(subdir[i]);
159
+ }
160
+ }
161
+ }
162
+ del(fullPath);
163
+ } catch (err) {
164
+ console.log("failed processing", fullPath, err && err.message);
165
+ }
166
+ });
167
+ }
168
+ module2.exports.delStream = delStream;
169
+ function getFileTreeString(hashArray) {
170
+ const tree = {};
171
+ const hashMap = {};
172
+ for (const entry of hashArray) {
173
+ const [filePath, hash] = entry.split(" ");
174
+ hashMap[filePath] = hash;
175
+ const parts = filePath.split("/");
176
+ let current = tree;
177
+ for (let i = 0; i < parts.length; i++) {
178
+ const part = parts[i];
179
+ if (i === parts.length - 1) {
180
+ current[part] = null;
181
+ } else {
182
+ current[part] = current[part] || {};
183
+ current = current[part];
184
+ }
185
+ }
186
+ }
187
+ function printNode(node, prefix = "", parentPath = "") {
188
+ const keys = Object.keys(node).sort();
189
+ let lines = [];
190
+ keys.forEach((key, idx) => {
191
+ const isLast = idx === keys.length - 1;
192
+ const branch = isLast ? "\u2514\u2500\u2500 " : "\u251C\u2500\u2500 ";
193
+ const currentPath = parentPath ? parentPath + "/" + key : key;
194
+ if (node[key] === null) {
195
+ lines.push(prefix + branch + key + " [" + (hashMap[currentPath] || "") + "]");
196
+ } else {
197
+ lines.push(prefix + branch + key + "/");
198
+ lines = lines.concat(printNode(node[key], prefix + (isLast ? " " : "\u2502 "), currentPath));
199
+ }
200
+ });
201
+ return lines;
202
+ }
203
+ return printNode(tree, "", "").join("\n");
204
+ }
205
+ module2.exports.getFileTreeString = getFileTreeString;
206
+ var delay = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
207
+ module2.exports.delay = delay;
208
+ }
209
+ });
210
+
211
+ // src/node-package-packer/build-readme.mjs
212
+ async function buildReadme(dirname, packagejson, releaseDir, argv, isCI) {
213
+ if (!import_fs_extra.default.existsSync(import_upath.default.join(dirname, ".git"))) {
214
+ console.log("Not a git repository, skipping readme creation");
215
+ return;
216
+ }
217
+ const spawnAsync = crossSpawn && typeof crossSpawn.async === "function" ? crossSpawn.async : crossSpawn;
218
+ if (isCI) {
219
+ await spawnAsync("git", ["config", "--global", "user.name", "dimaslanjaka"], {
220
+ cwd: dirname,
221
+ stdio: "inherit"
222
+ });
223
+ await spawnAsync("git", ["config", "--global", "user.email", "dimaslanjaka@gmail.com"], {
224
+ cwd: dirname,
225
+ stdio: "inherit"
226
+ });
227
+ }
228
+ const git = new import_git_command_helper.gitCommandHelper(dirname);
229
+ const branch = (await git.getbranch()).filter((o) => o.active)[0].branch;
230
+ const gitlatest = await git.latestCommit();
231
+ const tarballs = import_fs_extra.default.readdirSync(releaseDir).filter((str) => str.endsWith("tgz")).map((str) => {
232
+ return {
233
+ absolute: import_upath.default.resolve(releaseDir, str),
234
+ relative: import_upath.default.resolve(releaseDir, str).replace(import_upath.default.toUnix(dirname), "")
235
+ };
236
+ }).filter((o) => import_fs_extra.default.statSync(o.absolute).isFile());
237
+ let md = `# Release \`${packagejson.name}\` tarball
238
+ `;
239
+ md += "## Releases\n";
240
+ md += "| version | tarball url |\n";
241
+ md += "| :--- | :--- |\n";
242
+ for (let i = 0; i < tarballs.length; i++) {
243
+ const tarball = tarballs[i];
244
+ const relativeTarball = tarball.relative.replace(/^\/+/, "");
245
+ if (!import_fs_extra.default.existsSync(tarball.absolute)) {
246
+ console.log(tarball.relative, "not found");
247
+ continue;
248
+ }
249
+ await spawnAsync("git", ["update-index", "--untracked-cache"]);
250
+ if (argv["commit"]) {
251
+ const checkIgnore = await git.isIgnored(relativeTarball, { cwd: dirname });
252
+ if (checkIgnore) {
253
+ console.log(relativeTarball, "ignored by .gitignore");
254
+ continue;
255
+ } else {
256
+ await git.add(relativeTarball);
257
+ const args2 = ["status", "-uno", "--porcelain", "--", relativeTarball, "|", "wc", "-l"];
258
+ const isChanged = parseInt(
259
+ (await spawnAsync("git", args2, {
260
+ cwd: dirname,
261
+ shell: true
262
+ })).output.trim()
263
+ ) > 0;
264
+ if (isChanged) {
265
+ await git.commit("chore(tarball): update " + gitlatest, "-m", { stdio: "pipe" });
266
+ }
267
+ }
268
+ }
269
+ const hash = await git.latestCommit(tarball.relative.replace(/^\/+/, ""));
270
+ const raw = await git.getGithubRepoUrl(tarball.relative.replace(/^\/+/, ""));
271
+ let tarballUrl;
272
+ const dev = raw.rawURL;
273
+ const prod = raw.rawURL.replace("/raw/" + branch, "/raw/" + hash);
274
+ let ver = import_upath.default.basename(tarball.relative, ".tgz").replace(`${packagejson.name}-`, "");
275
+ if (typeof hash === "string") {
276
+ if (isNaN(parseFloat(ver))) {
277
+ ver = "latest";
278
+ tarballUrl = dev;
279
+ md += `| ${ver} | ${prod} |
280
+ `;
281
+ } else {
282
+ tarballUrl = prod;
283
+ }
284
+ md += `| ${ver} | ${tarballUrl} |
285
+ `;
286
+ }
287
+ }
288
+ md += `
289
+ use this tarball with \`resolutions\`:
290
+ `;
291
+ md += '```json\n{\n "resolutions": {\n "' + packagejson.name + '": "<url of tarball>"\n }\n}\n```\n\n## Releases\n\n ';
292
+ import_fs_extra.default.writeFileSync(
293
+ import_upath.default.join(releaseDir, "readme.md"),
294
+ (md + `
295
+
296
+ ## Get URL of \`${packagejson.name}\` Release Tarball
297
+ - select tarball file
298
+ ![gambar](https://user-images.githubusercontent.com/12471057/203216375-8af4b5d9-00c2-40fb-8d3d-d220beaabd46.png)
299
+ - copy raw url
300
+ ![gambar](https://user-images.githubusercontent.com/12471057/203216508-7590cbb9-a1ce-47d6-96ca-8d82149f0762.png)
301
+ - or copy download url
302
+ ![gambar](https://user-images.githubusercontent.com/12471057/203216541-3807d2c3-5213-49f3-b93d-c626dbae3b2e.png)
303
+ - then run installation from command line
304
+
305
+ \`\`\`bash
306
+ npm i https://....url-tgz
307
+ \`\`\`
308
+ for example
309
+ \`\`\`bash
310
+ npm i https://github.com/dimaslanjaka/nodejs-package-types/raw/main/release/nodejs-package-types.tgz
311
+ \`\`\`
312
+
313
+ ## URL Parts Explanations
314
+ > https://github.com/github-username/github-repo-name/raw/github-branch-name/path-to-file-with-extension
315
+ `).trim() + "\n"
316
+ );
317
+ }
318
+ var import_fs_extra, import_upath, crossSpawn, import_git_command_helper, build_readme_default;
319
+ var init_build_readme = __esm({
320
+ "src/node-package-packer/build-readme.mjs"() {
321
+ init_cjs_shims();
322
+ import_fs_extra = __toESM(require("fs-extra"), 1);
323
+ import_upath = __toESM(require("upath"), 1);
324
+ crossSpawn = __toESM(require("cross-spawn"), 1);
325
+ import_git_command_helper = require("git-command-helper");
326
+ build_readme_default = buildReadme;
327
+ }
328
+ });
329
+
330
+ // src/node-package-packer/build-tarball.mjs
331
+ var build_tarball_exports = {};
332
+ __export(build_tarball_exports, {
333
+ bundle: () => bundle,
334
+ bundleWithNpm: () => bundleWithNpm,
335
+ bundleWithYarn: () => bundleWithYarn,
336
+ default: () => build_tarball_default,
337
+ getPackageHashes: () => getPackageHashes
338
+ });
339
+ function slugifyPkgName(str) {
340
+ return str.replace(/\//g, "-").replace(/@/g, "");
341
+ }
342
+ function resolveNewestTarball(dirname, candidateNames) {
343
+ const candidates = /* @__PURE__ */ new Set();
344
+ for (const name of candidateNames) {
345
+ const candidatePath = import_upath2.default.join(dirname, name);
346
+ if (import_fs_extra2.default.existsSync(candidatePath)) {
347
+ candidates.add(candidatePath);
348
+ }
349
+ }
350
+ for (const entry of import_fs_extra2.default.readdirSync(dirname)) {
351
+ if (entry.endsWith(".tgz")) {
352
+ candidates.add(import_upath2.default.join(dirname, entry));
353
+ }
354
+ }
355
+ const tarballs = Array.from(candidates);
356
+ if (tarballs.length === 0) {
357
+ return null;
358
+ }
359
+ return tarballs.sort((left, right) => import_fs_extra2.default.statSync(right).mtimeMs - import_fs_extra2.default.statSync(left).mtimeMs)[0];
360
+ }
361
+ async function getPackageHashes(dirname, releaseDir) {
362
+ let hashes = {};
363
+ const metafile = import_upath2.default.join(releaseDir, "metadata.json");
364
+ if (import_fs_extra2.default.existsSync(metafile)) {
365
+ try {
366
+ hashes = Object.assign(
367
+ hashes,
368
+ Object.fromEntries(
369
+ Object.entries(JSON.parse(import_fs_extra2.default.readFileSync(metafile, "utf-8"))).filter(
370
+ ([key]) => !key.endsWith("yarn.lock") && !key.endsWith("package-lock.json")
371
+ )
372
+ )
373
+ );
374
+ } catch {
375
+ hashes = {};
376
+ }
377
+ }
378
+ const readDir = import_fs_extra2.default.readdirSync(releaseDir).filter((f) => f.endsWith("tgz")).map((f) => import_upath2.default.join(releaseDir, f));
379
+ for (let i = 0; i < readDir.length; i++) {
380
+ const file = readDir[i];
381
+ const stat = import_fs_extra2.default.statSync(file);
382
+ const size = `${parseFloat(stat.size / Math.pow(1024, 1)).toFixed(2)} KB`;
383
+ hashes = Object.assign({}, hashes, {
384
+ [import_upath2.default.toUnix(file).replace(import_upath2.default.toUnix(dirname), "")]: {
385
+ integrity: {
386
+ sha1: await (0, import_sbg_utility.file_to_hash)("sha1", file),
387
+ sha256: await (0, import_sbg_utility.file_to_hash)("sha256", file, "base64"),
388
+ md5: await (0, import_sbg_utility.file_to_hash)("md5", file),
389
+ sha512: await (0, import_sbg_utility.file_to_hash)("sha512", file, "base64")
390
+ },
391
+ size
392
+ }
393
+ });
394
+ import_fs_extra2.default.writeFileSync(metafile, JSON.stringify(hashes, null, 2) + "\n");
395
+ }
396
+ return hashes;
397
+ }
398
+ async function bundleWithYarn(dirname, packagejson, releaseDir, argv, withFilename, isCI) {
399
+ await build_readme_default(dirname, packagejson, releaseDir, argv, isCI);
400
+ const targetFname = argv["fn"] || argv["filename"] || slugifyPkgName(`${packagejson.name}-${packagejson.version}.tgz`);
401
+ const tgz = resolveNewestTarball(dirname, [
402
+ "package.tgz",
403
+ slugifyPkgName(`${packagejson.name}-v${packagejson.version}.tgz`)
404
+ ]);
405
+ if (!tgz) {
406
+ throw new Error(`No Yarn pack tarball found in ${dirname}`);
407
+ }
408
+ if (withFilename) {
409
+ const tgzlatest = import_upath2.default.join(releaseDir, targetFname + ".tgz");
410
+ import_fs_extra2.default.copySync(tgz, tgzlatest, { overwrite: true });
411
+ } else {
412
+ const tgzlatest = import_upath2.default.join(releaseDir, slugifyPkgName(`${packagejson.name}.tgz`));
413
+ const tgzversion = import_upath2.default.join(releaseDir, targetFname);
414
+ import_fs_extra2.default.copySync(tgz, tgzlatest, { overwrite: true });
415
+ import_fs_extra2.default.copySync(tgz, tgzversion, { overwrite: true });
416
+ }
417
+ import_fs_extra2.default.rmSync(tgz, { recursive: true, force: true });
418
+ await getPackageHashes(dirname, releaseDir);
419
+ }
420
+ async function bundleWithNpm(dirname, packagejson, releaseDir, argv, isCI) {
421
+ const filename = slugifyPkgName(`${packagejson.name}-${packagejson.version}.tgz`);
422
+ const tgz = import_upath2.default.join(dirname, filename);
423
+ const tgzversion = import_upath2.default.join(releaseDir, filename);
424
+ if (!import_fs_extra2.default.existsSync(tgz)) {
425
+ const filename2 = slugifyPkgName(`${packagejson.name}-${packagejson.version}.tgz`);
426
+ const origintgz = import_upath2.default.join(dirname, filename2);
427
+ if (import_fs_extra2.default.existsSync(origintgz) && origintgz !== tgz) {
428
+ import_fs_extra2.default.renameSync(origintgz, tgz);
429
+ }
430
+ }
431
+ const tgzlatest = import_upath2.default.join(releaseDir, slugifyPkgName(`${packagejson.name}.tgz`));
432
+ if (!import_fs_extra2.default.existsSync(import_upath2.default.dirname(tgzlatest))) {
433
+ import_fs_extra2.default.mkdirpSync(import_upath2.default.dirname(tgzlatest));
434
+ }
435
+ await build_readme_default(dirname, packagejson, releaseDir, argv, isCI);
436
+ if (import_fs_extra2.default.existsSync(tgz)) {
437
+ import_fs_extra2.default.copySync(tgz, tgzlatest);
438
+ import_fs_extra2.default.copySync(tgz, tgzversion);
439
+ if (import_fs_extra2.default.existsSync(tgz)) import_fs_extra2.default.rmSync(tgz);
440
+ await getPackageHashes(dirname, releaseDir);
441
+ }
442
+ }
443
+ function bundle() {
444
+ const args2 = (0, import_utils.getArgs)();
445
+ const withYarn = args2._.includes("-yarn") || args2._.includes("--yarn");
446
+ const releaseDir1 = import_upath2.default.join(process.cwd(), "release");
447
+ const releaseDir2 = import_upath2.default.join(process.cwd(), "releases");
448
+ const releaseDir = !import_fs_extra2.default.existsSync(releaseDir2) ? releaseDir1 : releaseDir2;
449
+ const isYarn = import_fs_extra2.default.existsSync(import_upath2.default.join(process.cwd(), "yarn.lock")) || withYarn;
450
+ const packagejson = import_fs_extra2.default.readJSONSync(import_upath2.default.join(process.cwd(), "package.json"));
451
+ const withFilename = args2["fn"] || args2["filename"] ? true : false;
452
+ const isCI = process.env.GITHUB_ACTION && process.env.GITHUB_ACTIONS;
453
+ if (!import_fs_extra2.default.existsSync(releaseDir)) {
454
+ import_fs_extra2.default.mkdirpSync(releaseDir, { recursive: true });
455
+ }
456
+ const child = !withYarn ? crossSpawn2.spawn("npm", ["pack"], {
457
+ cwd: process.cwd(),
458
+ shell: true,
459
+ stdio: "ignore",
460
+ env: { PATH: process.env.PATH }
461
+ }) : crossSpawn2.spawn("yarn", ["pack"], {
462
+ cwd: process.cwd(),
463
+ shell: true,
464
+ stdio: "ignore",
465
+ env: { PATH: process.env.PATH }
466
+ });
467
+ return new Promise((resolve, reject) => {
468
+ child.once("error", reject);
469
+ child.once("close", async () => {
470
+ try {
471
+ if (isYarn) {
472
+ await bundleWithYarn(process.cwd(), packagejson, releaseDir, args2, withFilename, isCI);
473
+ } else {
474
+ await bundleWithNpm(process.cwd(), packagejson, releaseDir, args2, isCI);
475
+ }
476
+ resolve();
477
+ } catch (error) {
478
+ reject(error);
479
+ }
480
+ });
481
+ });
482
+ }
483
+ var import_fs_extra2, import_sbg_utility, import_upath2, import_utils, crossSpawn2, build_tarball_default;
484
+ var init_build_tarball = __esm({
485
+ "src/node-package-packer/build-tarball.mjs"() {
486
+ init_cjs_shims();
487
+ import_fs_extra2 = __toESM(require("fs-extra"), 1);
488
+ import_sbg_utility = require("sbg-utility");
489
+ import_upath2 = __toESM(require("upath"), 1);
490
+ init_build_readme();
491
+ import_utils = __toESM(require_utils(), 1);
492
+ crossSpawn2 = __toESM(require("cross-spawn"), 1);
493
+ build_tarball_default = {
494
+ bundleWithYarn,
495
+ bundleWithNpm,
496
+ getPackageHashes
497
+ };
498
+ }
499
+ });
500
+
501
+ // src/node-package-packer-cli.mjs
502
+ init_cjs_shims();
503
+ var import_upath3 = __toESM(require("upath"), 1);
504
+ var import_utils2 = __toESM(require_utils(), 1);
505
+ var args = (0, import_utils2.getArgs)({ boolean: ["h", "help"] });
506
+ if (args.h || args.help) {
507
+ const scriptName = import_upath3.default.basename(new URL(importMetaUrl).pathname);
508
+ console.log(`Automated tarball (tgz) creator for release folder`);
509
+ console.log(``);
510
+ console.log(`Usage: node ${scriptName} [options]`);
511
+ console.log(``);
512
+ console.log(`Options:`);
513
+ console.log(` -h, --help Show this help message`);
514
+ console.log(` -y, --yarn Force yarn pack instead of npm pack`);
515
+ console.log(` -d, --verbose Enable verbose output`);
516
+ console.log(` --fn, --filename Set output filename variant`);
517
+ process.exit(0);
518
+ }
519
+ (async () => {
520
+ const { bundle: bundle2 } = await Promise.resolve().then(() => (init_build_tarball(), build_tarball_exports));
521
+ await bundle2();
522
+ })().catch((error) => {
523
+ console.error(error);
524
+ process.exit(1);
525
+ });