binary-collections 2.0.13 → 2.0.15

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 (303) hide show
  1. package/.opencode/plugins/opencode-request-logger/README.md +44 -0
  2. package/.venv/Lib/site-packages/pyarrow/tests/data/orc/README.md +22 -0
  3. package/binaries/binary-executor.cjs +307 -238
  4. package/binaries/clean-nodemodule.cjs +307 -238
  5. package/binaries/clean-nodemodules.cjs +307 -238
  6. package/binaries/composer.cjs +323 -0
  7. package/binaries/composer.cmd +2 -0
  8. package/binaries/composer.phar +0 -0
  9. package/binaries/dev.cjs +307 -238
  10. package/binaries/empty.cjs +307 -238
  11. package/binaries/git-reduce-size.cjs +307 -238
  12. package/binaries/javakill.cjs +307 -238
  13. package/binaries/kill-process.cjs +307 -238
  14. package/binaries/nodekill.cjs +307 -238
  15. package/binaries/prod.cjs +307 -238
  16. package/binaries/py.cjs +307 -238
  17. package/binaries/rmfind.cjs +307 -238
  18. package/binaries/rmx.cjs +307 -238
  19. package/binaries/submodule-token.cjs +307 -238
  20. package/binaries/test-cjs.cjs +307 -238
  21. package/binaries/test-esm.cjs +307 -238
  22. package/binaries/yarn-clean.cjs +307 -238
  23. package/binaries/yc.cjs +307 -238
  24. package/binaries/ycw.cjs +307 -238
  25. package/docs-src/binary-collections.md +1 -1
  26. package/docs-src/clean-github-actions-caches.md +1 -1
  27. package/docs-src/copy-move-file.md +1 -4
  28. package/docs-src/del-ps.md +1 -1
  29. package/docs-src/find-node-modules.md +1 -1
  30. package/docs-src/generate-test-ci.md +56 -0
  31. package/docs-src/get-latest-workflow-status.md +100 -0
  32. package/docs-src/git-diff.md +1 -1
  33. package/docs-src/git-fix.md +1 -1
  34. package/docs-src/git-purge.md +1 -1
  35. package/docs-src/install-opencode-plugins.md +86 -0
  36. package/docs-src/kill-night-crows.md +1 -1
  37. package/docs-src/node-cache-cleaner.md +2 -2
  38. package/docs-src/node-package-packer.md +1 -1
  39. package/docs-src/opencode-cli.md +155 -0
  40. package/docs-src/package-resolutions-updater.md +1 -1
  41. package/docs-src/rmpath.md +1 -1
  42. package/docs-src/run-by-checksum.md +1 -1
  43. package/docs-src/submodule-remove.md +1 -1
  44. package/docs-src/upload-backend.md +29 -0
  45. package/docs-src/vscode-cli.md +84 -0
  46. package/docs-src/workflow-badge.md +120 -0
  47. package/lib/binary-collections/config-types.cjs +17 -0
  48. package/lib/binary-collections/config-types.d.ts +12 -0
  49. package/lib/binary-collections/config-types.js +2 -0
  50. package/lib/binary-collections/config-types.mjs +7 -0
  51. package/lib/binary-collections/config.cjs +28 -8
  52. package/lib/binary-collections/config.d.cts +26 -8
  53. package/lib/binary-collections/config.mjs +2 -2
  54. package/lib/binary-collections/findScript.cjs +49 -25
  55. package/lib/binary-collections/findScript.mjs +2 -2
  56. package/lib/binary-collections/listScript.cjs +49 -25
  57. package/lib/binary-collections/listScript.mjs +2 -2
  58. package/lib/binary-collections.cjs +49 -25
  59. package/lib/binary-collections.mjs +6 -6
  60. package/lib/changelog.cjs +142 -4
  61. package/lib/changelog.mjs +9 -5
  62. package/lib/chunk-3T6AMFI3.mjs +52 -0
  63. package/lib/{chunk-2MN4VPV2.mjs → chunk-3ZF2QMDK.mjs} +4 -4
  64. package/lib/chunk-56BVU63B.mjs +86 -0
  65. package/lib/chunk-7N52Z4IJ.mjs +39 -0
  66. package/lib/chunk-B77D3SR4.mjs +28 -0
  67. package/lib/chunk-BPED62FN.mjs +115 -0
  68. package/lib/{chunk-RDN6HF5Z.mjs → chunk-DHFRWM2W.mjs} +1 -1
  69. package/lib/chunk-DPEE3FBB.mjs +146 -0
  70. package/lib/{chunk-MGPYPKIE.mjs → chunk-H7AE4IO3.mjs} +5 -1
  71. package/lib/{chunk-H44UWUFY.mjs → chunk-J4M5EL5P.mjs} +3 -0
  72. package/lib/chunk-KCJYREA2.mjs +67 -0
  73. package/lib/chunk-LACQTD5V.mjs +225 -0
  74. package/lib/{chunk-TBWXE7ST.mjs → chunk-NHD4HLSU.mjs} +24 -31
  75. package/lib/{chunk-RDGDLSPD.mjs → chunk-OWNVMKAA.mjs} +6 -5
  76. package/lib/chunk-SKVF4TMD.mjs +59 -0
  77. package/lib/{chunk-BZWVHODJ.mjs → chunk-TDUUOAQD.mjs} +5 -5
  78. package/lib/chunk-TP3O2JGW.mjs +88 -0
  79. package/lib/{chunk-FLYSZFLW.mjs → chunk-UAEKSLAX.mjs} +1 -1
  80. package/lib/chunk-UDZBVKXH.mjs +94 -0
  81. package/lib/chunk-UEOWRYAN.mjs +32 -0
  82. package/lib/chunk-V6PTSDW5.mjs +82 -0
  83. package/lib/{chunk-NQXUYO67.mjs → chunk-WNUEY6VJ.mjs} +49 -25
  84. package/lib/chunk-X7UVQ6ZC.mjs +183 -0
  85. package/lib/chunk-XW5NZAKI.mjs +82 -0
  86. package/lib/{chunk-LVSPEFU2.mjs → chunk-Z53IUBUN.mjs} +6 -5
  87. package/lib/{chunk-CD3HF3LK.mjs → chunk-Z7RM46Q4.mjs} +5 -11
  88. package/lib/chunk-ZB4IQ6VJ.mjs +46 -0
  89. package/lib/del-gradle.cjs +1 -1
  90. package/lib/del-gradle.mjs +22 -16
  91. package/lib/del-node-modules.cjs +1 -1
  92. package/lib/del-node-modules.mjs +148 -142
  93. package/lib/find-node-modules-cli.cjs +1 -1
  94. package/lib/find-node-modules-cli.mjs +10 -4
  95. package/lib/{git-diff-cli.cjs → git/git-diff-cli.cjs} +32 -12
  96. package/lib/{git-diff-cli.mjs → git/git-diff-cli.mjs} +7 -7
  97. package/lib/{git-diff.cjs → git/git-diff.cjs} +30 -10
  98. package/lib/{git-diff.js → git/git-diff.js} +3 -3
  99. package/lib/{git-diff.mjs → git/git-diff.mjs} +6 -6
  100. package/lib/{git-fix.cjs → git/git-fix.cjs} +142 -3
  101. package/lib/{git-fix.mjs → git/git-fix.mjs} +19 -14
  102. package/lib/{git-purge.cjs → git/git-purge.cjs} +1 -1
  103. package/lib/{git-purge.mjs → git/git-purge.mjs} +4 -4
  104. package/lib/git/user-config.cjs +139 -1
  105. package/lib/git/user-config.mjs +3 -1
  106. package/lib/{clean-github-actions-caches-cli.cjs → github-workflows/clean-github-actions-caches-cli.cjs} +46 -10
  107. package/lib/{clean-github-actions-caches-cli.mjs → github-workflows/clean-github-actions-caches-cli.mjs} +7 -6
  108. package/lib/{clean-github-actions-caches.cjs → github-workflows/clean-github-actions-caches.cjs} +46 -10
  109. package/lib/{clean-github-actions-caches.mjs → github-workflows/clean-github-actions-caches.mjs} +5 -4
  110. package/lib/github-workflows/generate-test-ci-step-cli.cjs +240 -0
  111. package/lib/github-workflows/generate-test-ci-step-cli.d.mts +2 -0
  112. package/lib/github-workflows/generate-test-ci-step-cli.mjs +132 -0
  113. package/lib/github-workflows/get-latest-workflow-status-cli.cjs +549 -0
  114. package/lib/github-workflows/get-latest-workflow-status-cli.d.mts +2 -0
  115. package/lib/github-workflows/get-latest-workflow-status-cli.mjs +61 -0
  116. package/lib/github-workflows/get-latest-workflow-status.cjs +56 -0
  117. package/lib/github-workflows/get-latest-workflow-status.d.mts +1 -0
  118. package/lib/github-workflows/get-latest-workflow-status.mjs +8 -0
  119. package/lib/github-workflows/utils.cjs +279 -0
  120. package/lib/github-workflows/utils.d.cts +76 -0
  121. package/lib/github-workflows/utils.mjs +8 -0
  122. package/lib/github-workflows/workflow-badge-cli.cjs +730 -0
  123. package/lib/github-workflows/workflow-badge-cli.d.mts +2 -0
  124. package/lib/github-workflows/workflow-badge-cli.mjs +98 -0
  125. package/lib/github-workflows/workflow-badge-generator.cjs +200 -0
  126. package/lib/github-workflows/workflow-badge-generator.d.mts +14 -0
  127. package/lib/github-workflows/workflow-badge-generator.mjs +8 -0
  128. package/lib/github-workflows/workflow-test-data.cjs +73 -0
  129. package/lib/github-workflows/workflow-test-data.d.cts +63 -0
  130. package/lib/github-workflows/workflow-test-data.mjs +6 -0
  131. package/lib/node-cache-cleaner-cli.mjs +3 -3
  132. package/lib/opencode/cli/auth-rotate.cjs +458 -0
  133. package/lib/opencode/cli/auth-rotate.d.ts +3 -0
  134. package/lib/opencode/cli/auth-rotate.js +65 -0
  135. package/lib/opencode/cli/auth-rotate.mjs +14 -0
  136. package/lib/opencode/cli/auth-rotate.runner.cjs +454 -0
  137. package/lib/opencode/cli/auth-rotate.runner.d.ts +1 -0
  138. package/lib/opencode/cli/auth-rotate.runner.js +8 -0
  139. package/lib/opencode/cli/auth-rotate.runner.mjs +21 -0
  140. package/lib/opencode/cli/list-projects.cjs +184 -0
  141. package/lib/opencode/cli/list-projects.d.ts +1 -0
  142. package/lib/opencode/cli/list-projects.js +32 -0
  143. package/lib/opencode/cli/list-projects.mjs +11 -0
  144. package/lib/opencode/cli/list-sessions.cjs +215 -0
  145. package/lib/opencode/cli/list-sessions.d.ts +1 -0
  146. package/lib/opencode/cli/list-sessions.js +45 -0
  147. package/lib/opencode/cli/list-sessions.mjs +11 -0
  148. package/lib/opencode/database.cjs +349 -0
  149. package/lib/opencode/database.d.ts +91 -0
  150. package/lib/opencode/database.js +252 -0
  151. package/lib/opencode/database.mjs +28 -0
  152. package/lib/opencode/database.runner.cjs +145 -0
  153. package/lib/opencode/database.runner.d.ts +1 -0
  154. package/lib/opencode/database.runner.js +56 -0
  155. package/lib/opencode/database.runner.mjs +37 -0
  156. package/lib/opencode/install-opencode-plugins-cli.cjs +82 -0
  157. package/lib/opencode/install-opencode-plugins-cli.d.ts +1 -0
  158. package/lib/opencode/install-opencode-plugins-cli.js +78 -0
  159. package/lib/opencode/install-opencode-plugins-cli.mjs +65 -0
  160. package/lib/opencode/opencode-zen.runner.cjs +48 -0
  161. package/lib/opencode/opencode-zen.runner.d.mts +1 -0
  162. package/lib/opencode/opencode-zen.runner.mjs +31 -0
  163. package/lib/opencode/sqlite.cjs +114 -0
  164. package/lib/opencode/sqlite.d.ts +18 -0
  165. package/lib/opencode/sqlite.js +82 -0
  166. package/lib/opencode/sqlite.mjs +10 -0
  167. package/lib/opencode/storage.cjs +124 -0
  168. package/lib/opencode/storage.d.ts +27 -0
  169. package/lib/opencode/storage.js +101 -0
  170. package/lib/opencode/storage.mjs +38 -0
  171. package/lib/opencode/storage.runner.cjs +50 -0
  172. package/lib/opencode/storage.runner.d.ts +1 -0
  173. package/lib/opencode/storage.runner.js +13 -0
  174. package/lib/opencode/storage.runner.mjs +29 -0
  175. package/lib/opencode/types.cjs +17 -0
  176. package/lib/opencode/types.d.ts +31 -0
  177. package/lib/opencode/types.js +2 -0
  178. package/lib/opencode/types.mjs +7 -0
  179. package/lib/opencode/utils/check-api.cjs +373 -0
  180. package/lib/opencode/utils/check-api.d.ts +16 -0
  181. package/lib/opencode/utils/check-api.js +132 -0
  182. package/lib/opencode/utils/check-api.mjs +12 -0
  183. package/lib/opencode/utils/check-api.runner.cjs +0 -0
  184. package/lib/opencode/utils/check-api.runner.d.ts +0 -0
  185. package/lib/opencode/utils/check-api.runner.js +1 -0
  186. package/lib/opencode/utils/check-api.runner.mjs +7 -0
  187. package/lib/opencode-cli.cjs +796 -0
  188. package/lib/opencode-cli.d.ts +2 -0
  189. package/lib/opencode-cli.js +116 -0
  190. package/lib/opencode-cli.mjs +116 -0
  191. package/lib/package-resolutions-updater-cli.cjs +189 -154
  192. package/lib/package-resolutions-updater-cli.mjs +3 -2
  193. package/lib/package-resolutions-updater.cjs +189 -154
  194. package/lib/package-resolutions-updater.d.mts +12 -3
  195. package/lib/package-resolutions-updater.mjs +3 -2
  196. package/lib/print-directory-tree.cjs +139 -3
  197. package/lib/print-directory-tree.mjs +6 -3
  198. package/lib/print-tarball-tree-cli.cjs +305 -0
  199. package/lib/print-tarball-tree-cli.d.mts +2 -0
  200. package/lib/print-tarball-tree-cli.mjs +54 -0
  201. package/lib/print-tarball-tree.cjs +43 -216
  202. package/lib/print-tarball-tree.d.mts +4 -1
  203. package/lib/print-tarball-tree.mjs +12 -66
  204. package/lib/rmpath-cli.cjs +139 -5
  205. package/lib/rmpath-cli.mjs +3 -1
  206. package/lib/rmpath.cjs +155 -11
  207. package/lib/rmpath.mjs +3 -1
  208. package/lib/run-by-checksum/hash.cjs +50 -56
  209. package/lib/run-by-checksum/hash.d.cts +24 -0
  210. package/lib/run-by-checksum/hash.mjs +3 -7
  211. package/lib/run-by-checksum/run.cjs +95 -42
  212. package/lib/run-by-checksum/run.js +3 -3
  213. package/lib/run-by-checksum/run.mjs +2 -2
  214. package/lib/run-by-checksum-cli.cjs +96 -58
  215. package/lib/run-by-checksum-cli.mjs +2 -2
  216. package/lib/submodule-install.cjs +138 -4
  217. package/lib/submodule-install.mjs +5 -4
  218. package/lib/submodule-remove-cli.cjs +139 -5
  219. package/lib/submodule-remove-cli.mjs +3 -1
  220. package/lib/submodule-remove.cjs +154 -5
  221. package/lib/submodule-remove.mjs +3 -1
  222. package/lib/utils/findEnvFiles.cjs +3 -0
  223. package/lib/utils/findEnvFiles.d.cts +2 -2
  224. package/lib/utils/findEnvFiles.mjs +1 -1
  225. package/lib/utils/isDebug.cjs +13 -0
  226. package/lib/utils/isDebug.d.cts +9 -0
  227. package/lib/utils/isDebug.mjs +6 -0
  228. package/lib/vscode/project.cjs +0 -0
  229. package/lib/vscode/project.d.ts +0 -0
  230. package/lib/vscode/project.js +1 -0
  231. package/lib/vscode/project.mjs +7 -0
  232. package/lib/vscode/storage.cjs +138 -0
  233. package/lib/vscode/storage.d.ts +51 -0
  234. package/lib/vscode/storage.js +169 -0
  235. package/lib/vscode/storage.mjs +42 -0
  236. package/lib/vscode/storage.runner.cjs +125 -0
  237. package/lib/vscode/storage.runner.d.ts +1 -0
  238. package/lib/vscode/storage.runner.js +47 -0
  239. package/lib/vscode/storage.runner.mjs +60 -0
  240. package/lib/vscode-cli.cjs +155 -0
  241. package/lib/vscode-cli.d.ts +2 -0
  242. package/lib/vscode-cli.js +80 -0
  243. package/lib/vscode-cli.mjs +71 -0
  244. package/package.json +50 -26
  245. package/readme.md +104 -8
  246. package/releases/readme.md +1 -1
  247. package/src/github-workflows/generate-test-ci-step-cli.mjs +126 -0
  248. package/vendor/clue/ndjson-react/README.md +365 -0
  249. package/vendor/composer/pcre/README.md +189 -0
  250. package/vendor/composer/semver/README.md +99 -0
  251. package/vendor/composer/xdebug-handler/README.md +305 -0
  252. package/vendor/ergebnis/agent-detector/README.md +107 -0
  253. package/vendor/evenement/evenement/README.md +64 -0
  254. package/vendor/fidry/cpu-core-counter/README.md +138 -0
  255. package/vendor/friendsofphp/php-cs-fixer/README.md +97 -0
  256. package/vendor/psr/container/README.md +13 -0
  257. package/vendor/psr/event-dispatcher/README.md +6 -0
  258. package/vendor/psr/log/README.md +58 -0
  259. package/vendor/react/cache/README.md +367 -0
  260. package/vendor/react/child-process/README.md +619 -0
  261. package/vendor/react/dns/README.md +453 -0
  262. package/vendor/react/event-loop/README.md +930 -0
  263. package/vendor/react/promise/README.md +722 -0
  264. package/vendor/react/socket/README.md +1564 -0
  265. package/vendor/react/stream/README.md +1249 -0
  266. package/vendor/sebastian/diff/README.md +151 -0
  267. package/vendor/symfony/console/README.md +30 -0
  268. package/vendor/symfony/deprecation-contracts/README.md +26 -0
  269. package/vendor/symfony/event-dispatcher/README.md +25 -0
  270. package/vendor/symfony/event-dispatcher-contracts/README.md +9 -0
  271. package/vendor/symfony/filesystem/README.md +23 -0
  272. package/vendor/symfony/finder/README.md +24 -0
  273. package/vendor/symfony/options-resolver/README.md +25 -0
  274. package/vendor/symfony/polyfill-ctype/README.md +12 -0
  275. package/vendor/symfony/polyfill-intl-grapheme/README.md +32 -0
  276. package/vendor/symfony/polyfill-intl-normalizer/README.md +14 -0
  277. package/vendor/symfony/polyfill-mbstring/README.md +13 -0
  278. package/vendor/symfony/polyfill-php80/README.md +25 -0
  279. package/vendor/symfony/polyfill-php81/README.md +18 -0
  280. package/vendor/symfony/polyfill-php84/README.md +23 -0
  281. package/vendor/symfony/polyfill-php85/README.md +20 -0
  282. package/vendor/symfony/process/README.md +23 -0
  283. package/vendor/symfony/service-contracts/README.md +9 -0
  284. package/vendor/symfony/stopwatch/README.md +52 -0
  285. package/vendor/symfony/string/README.md +24 -0
  286. package/lib/chunk-WSHVPGNM.mjs +0 -44
  287. package/lib/chunk-X2B3X7D4.mjs +0 -35
  288. package/lib/del-gradle.js +0 -16
  289. package/lib/del-node-modules.js +0 -211
  290. package/lib/find-node-modules-cli.js +0 -4
  291. package/lib/run-by-checksum/hash.d.ts +0 -14
  292. package/lib/run-by-checksum/hash.js +0 -85
  293. package/readme.html +0 -784
  294. /package/lib/{clean-github-actions-caches-cli.d.cts → del-gradle.d.cts} +0 -0
  295. /package/lib/{del-gradle.d.ts → del-node-modules.d.cts} +0 -0
  296. /package/lib/{find-node-modules-cli.d.ts → find-node-modules-cli.d.cts} +0 -0
  297. /package/lib/{git-diff-cli.d.ts → git/git-diff-cli.d.ts} +0 -0
  298. /package/lib/{git-diff-cli.js → git/git-diff-cli.js} +0 -0
  299. /package/lib/{git-diff.d.ts → git/git-diff.d.ts} +0 -0
  300. /package/lib/{git-fix.d.cts → git/git-fix.d.cts} +0 -0
  301. /package/lib/{git-purge.d.cts → git/git-purge.d.cts} +0 -0
  302. /package/lib/{del-node-modules.d.ts → github-workflows/clean-github-actions-caches-cli.d.cts} +0 -0
  303. /package/lib/{clean-github-actions-caches.d.cts → github-workflows/clean-github-actions-caches.d.cts} +0 -0
package/binaries/prod.cjs CHANGED
@@ -1,254 +1,323 @@
1
1
  #!/usr/bin/env node
2
+ 'use strict';
2
3
 
3
- /**
4
- * Built-in Node.js modules:
5
- *
6
- * - child_process:
7
- * Used to launch external scripts/programs.
8
- *
9
- * - path:
10
- * Safely handles file paths across operating systems.
11
- *
12
- * - fs:
13
- * Used to check whether files exist.
14
- */
15
- const { spawnSync } = require('child_process');
16
- const path = require('path');
17
- const fs = require('fs');
18
- const which = require('which');
19
- const { isWindows } = require('../src/utils/isWindows.js');
20
-
21
- /**
22
- * __dirname
23
- * Absolute directory path of this launcher script.
24
- *
25
- * __filename
26
- * Absolute path of this launcher file itself.
27
- *
28
- * base
29
- * Filename without extension.
30
- *
31
- * Example:
32
- * File = "/tools/mytool.js"
33
- *
34
- * binDir = "/tools"
35
- * base = "mytool"
36
- */
37
- const binDir = __dirname;
38
- const base = path.basename(__filename, path.extname(__filename));
4
+ var require$$0 = require('child_process');
5
+ var require$$1 = require('path');
6
+ var require$$2 = require('fs');
7
+ var require$$3 = require('which');
39
8
 
40
- /**
41
- * Determine which script extensions to search for
42
- * based on the current operating system.
43
- *
44
- * Windows:
45
- * .cmd
46
- * .bat
47
- * .ps1
48
- * .vbs
49
- *
50
- * Linux/macOS:
51
- * .sh
52
- * executable file without extension
53
- */
54
- const candidates = process.platform === 'win32' ? ['.cmd', '.bat', '.ps1', '.vbs'] : ['.sh', ''];
55
-
56
- /**
57
- * Search for the first matching script
58
- * in the same directory as this launcher.
59
- *
60
- * Example:
61
- * If base = "mytool"
62
- *
63
- * Windows checks:
64
- * mytool.cmd
65
- * mytool.bat
66
- * mytool.ps1
67
- * mytool.vbs
68
- *
69
- * Linux/macOS checks:
70
- * mytool.sh
71
- * mytool
72
- */
73
- let found = null;
74
-
75
- for (const ext of candidates) {
76
- const script = path.join(binDir, base + ext);
77
- const exists = fs.existsSync(script);
78
- // console.log(`Checking for ${script}: ${exists ? 'found' : 'not found'}`);
79
- if (exists) {
80
- found = script;
81
- break;
82
- }
9
+ function getDefaultExportFromCjs (x) {
10
+ return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
83
11
  }
84
12
 
85
- /**
86
- * If no matching script was found,
87
- * try check if `bash` is available and if so, check for a .sh script.
88
- */
89
- if (!found) {
90
- try {
91
- spawnSync('bash', ['--version'], { stdio: 'ignore' });
92
- const bashScript = [path.join(binDir, base), path.join(binDir, base + '.sh')].find((script) =>
93
- fs.existsSync(script)
94
- );
95
- if (bashScript) {
96
- found = bashScript;
97
- }
98
- } catch {
99
- // bash is not available, do nothing
100
- }
13
+ function getAugmentedNamespace(n) {
14
+ if (Object.prototype.hasOwnProperty.call(n, '__esModule')) return n;
15
+ var f = n.default;
16
+ if (typeof f == "function") {
17
+ var a = function a () {
18
+ var isInstance = false;
19
+ try {
20
+ isInstance = this instanceof a;
21
+ } catch (e) {}
22
+ if (isInstance) {
23
+ return Reflect.construct(f, arguments, this.constructor);
24
+ }
25
+ return f.apply(this, arguments);
26
+ };
27
+ a.prototype = f.prototype;
28
+ } else a = {};
29
+ Object.defineProperty(a, '__esModule', {value: true});
30
+ Object.keys(n).forEach(function (k) {
31
+ var d = Object.getOwnPropertyDescriptor(n, k);
32
+ Object.defineProperty(a, k, d.get ? d : {
33
+ enumerable: true,
34
+ get: function () {
35
+ return n[k];
36
+ }
37
+ });
38
+ });
39
+ return a;
101
40
  }
102
41
 
42
+ var binaryExecutor$1 = {};
43
+
103
44
  /**
104
- * If no matching script was found,
105
- * print an error and exit with failure code 1.
45
+ * Determines if the current platform is Windows
46
+ * @returns {boolean} true if running on Windows, false otherwise
106
47
  */
107
- if (!found) {
108
- console.error(`No script found for ${base} in ${binDir}`);
109
- process.exit(1);
48
+ function isWindows() {
49
+ return process.platform === 'win32' || /^(msys|cygwin)$/.test(process.env.OSTYPE || '');
110
50
  }
111
51
 
112
- /**
113
- * Detect special script types
114
- * that require a shell/interpreter.
115
- */
116
- const isPs1 = found.endsWith('.ps1');
117
- const isCmd = found.endsWith('.cmd');
118
- const isUnixShell = found.endsWith('.sh') || path.extname(found) === '';
52
+ var isWindows$1 = /*#__PURE__*/Object.freeze({
53
+ __proto__: null,
54
+ isWindows: isWindows
55
+ });
119
56
 
120
- /**
121
- * cmd
122
- * The executable program to launch.
123
- *
124
- * args
125
- * Arguments passed to the executable.
126
- */
127
- let cmd, args;
57
+ var require$$4 = /*@__PURE__*/getAugmentedNamespace(isWindows$1);
128
58
 
129
- /**
130
- * PowerShell scripts:
131
- *
132
- * Run through powershell.exe because .ps1 files
133
- * are not directly executable like binaries.
134
- *
135
- * Flags:
136
- * -NoProfile
137
- * Prevent loading user profile scripts.
138
- *
139
- * -ExecutionPolicy Bypass
140
- * Allow script execution even if policy blocks it.
141
- *
142
- * -File
143
- * Specifies the script to execute.
144
- *
145
- * process.argv.slice(2)
146
- * Forward all user-provided command-line arguments.
147
- */
148
- if (isPs1) {
149
- cmd = 'powershell.exe';
150
-
151
- args = ['-NoProfile', '-ExecutionPolicy', 'Bypass', '-File', found, ...process.argv.slice(2)];
152
-
153
- /**
154
- * CMD batch files:
155
- *
156
- * Run through cmd.exe using:
157
- * /c
158
- * which means:
159
- * "execute command and terminate"
160
- */
161
- } else if (isCmd) {
162
- cmd = 'cmd.exe';
163
-
164
- args = ['/c', found, ...process.argv.slice(2)];
165
-
166
- /**
167
- * Other scripts:
168
- *
169
- * Usually:
170
- * - shell scripts (.sh)
171
- * - executable binaries
172
- *
173
- * These can be executed directly.
174
- */
175
- } else if (isUnixShell) {
176
- // Capture shebang scripts (no extension) and .sh scripts
177
- const shebang = fs.readFileSync(found, 'utf8').split('\n')[0].trim();
178
- const interpreter = shebang.startsWith('#!')
179
- ? shebang
180
- .slice(2)
181
- .trim()
182
- .replace(/^\/usr\/bin\/env\s+/, '')
183
- .replace(/^\/bin\/env\s+/, '')
184
- .replace(/^\/usr\/bin\//, '')
185
- .replace(/^\/bin\//, '')
186
- : null;
187
-
188
- if (interpreter) {
189
- const resolvedOrNull = which.sync(interpreter, { nothrow: true });
190
- if (!resolvedOrNull) {
191
- if (['bash', 'sh'].includes(interpreter) && isWindows()) {
192
- const locationsToCheck = [
193
- 'C:\\Program Files\\Git\\usr\\bin',
194
- 'C:\\Program Files\\Git\\bin',
195
- 'C:\\Program Files (x86)\\Git\\usr\\bin',
196
- 'C:\\msys64\\usr\\bin',
197
- 'C:\\msys64\\bin',
198
- 'C:\\cygwin64\\bin',
199
- 'C:\\cygwin\\bin',
200
- 'C:\\MinGW\\bin',
201
- 'C:\\MinGW\\msys\\1.0\\bin'
202
- ];
203
- for (const location of locationsToCheck) {
204
- const potentialPath = path.join(location, 'bash.exe');
205
- if (fs.existsSync(potentialPath)) {
206
- cmd = potentialPath;
207
- args = [found, ...process.argv.slice(2)];
208
- break;
209
- }
210
- }
211
- }
212
- } else {
213
- cmd = resolvedOrNull || interpreter;
214
- args = [found, ...process.argv.slice(2)];
215
- }
216
- } else {
217
- cmd = found;
218
- args = process.argv.slice(2);
219
- }
220
- } else {
221
- cmd = found;
222
- args = process.argv.slice(2);
223
- }
59
+ var hasRequiredBinaryExecutor;
224
60
 
225
- console.log(
226
- `Executing: ${path.isAbsolute(cmd) ? path.relative(process.cwd(), cmd) : cmd} ${args
227
- .map((f) => {
228
- if (path.isAbsolute(f)) return path.relative(process.cwd(), f);
229
- return f;
230
- })
231
- .join(' ')}`
232
- );
61
+ function requireBinaryExecutor () {
62
+ if (hasRequiredBinaryExecutor) return binaryExecutor$1;
63
+ hasRequiredBinaryExecutor = 1;
64
+ /**
65
+ * Built-in Node.js modules:
66
+ *
67
+ * - child_process:
68
+ * Used to launch external scripts/programs.
69
+ *
70
+ * - path:
71
+ * Safely handles file paths across operating systems.
72
+ *
73
+ * - fs:
74
+ * Used to check whether files exist.
75
+ */
76
+ const { spawnSync } = require$$0;
77
+ const path = require$$1;
78
+ const fs = require$$2;
79
+ const which = require$$3;
80
+ const { isWindows } = require$$4;
233
81
 
234
- /**
235
- * Execute the selected script synchronously.
236
- *
237
- * stdio: "inherit"
238
- * Shares the current terminal with the child process,
239
- * so stdout/stderr/input behave normally.
240
- *
241
- * spawnSync waits until the child process exits.
242
- */
243
- const result = spawnSync(cmd, args, {
244
- stdio: 'inherit'
245
- });
82
+ /**
83
+ * __dirname
84
+ * Absolute directory path of this launcher script.
85
+ *
86
+ * __filename
87
+ * Absolute path of this launcher file itself.
88
+ *
89
+ * base
90
+ * Filename without extension.
91
+ *
92
+ * Example:
93
+ * File = "/tools/mytool.js"
94
+ *
95
+ * binDir = "/tools"
96
+ * base = "mytool"
97
+ */
98
+ const binDir = __dirname;
99
+ const base = path.basename(__filename, path.extname(__filename));
246
100
 
247
- /**
248
- * Exit using the same exit code
249
- * returned by the child process.
250
- *
251
- * If result.status is null/undefined,
252
- * default to exit code 1.
253
- */
254
- process.exit(result.status ?? 1);
101
+ /**
102
+ * Determine which script extensions to search for
103
+ * based on the current operating system.
104
+ *
105
+ * Windows:
106
+ * .cmd
107
+ * .bat
108
+ * .ps1
109
+ * .vbs
110
+ *
111
+ * Linux/macOS:
112
+ * .sh
113
+ * executable file without extension
114
+ */
115
+ const candidates = process.platform === 'win32' ? ['.cmd', '.bat', '.ps1', '.vbs'] : ['.sh', ''];
116
+
117
+ /**
118
+ * Search for the first matching script
119
+ * in the same directory as this launcher.
120
+ *
121
+ * Example:
122
+ * If base = "mytool"
123
+ *
124
+ * Windows checks:
125
+ * mytool.cmd
126
+ * mytool.bat
127
+ * mytool.ps1
128
+ * mytool.vbs
129
+ *
130
+ * Linux/macOS checks:
131
+ * mytool.sh
132
+ * mytool
133
+ */
134
+ let found = null;
135
+
136
+ for (const ext of candidates) {
137
+ const script = path.join(binDir, base + ext);
138
+ const exists = fs.existsSync(script);
139
+ // console.log(`Checking for ${script}: ${exists ? 'found' : 'not found'}`);
140
+ if (exists) {
141
+ found = script;
142
+ break;
143
+ }
144
+ }
145
+
146
+ /**
147
+ * If no matching script was found,
148
+ * try check if `bash` is available and if so, check for a .sh script.
149
+ */
150
+ if (!found) {
151
+ try {
152
+ spawnSync('bash', ['--version'], { stdio: 'ignore' });
153
+ const bashScript = [path.join(binDir, base), path.join(binDir, base + '.sh')].find((script) =>
154
+ fs.existsSync(script)
155
+ );
156
+ if (bashScript) {
157
+ found = bashScript;
158
+ }
159
+ } catch {
160
+ // bash is not available, do nothing
161
+ }
162
+ }
163
+
164
+ /**
165
+ * If no matching script was found,
166
+ * print an error and exit with failure code 1.
167
+ */
168
+ if (!found) {
169
+ console.error(`No script found for ${base} in ${binDir}`);
170
+ process.exit(1);
171
+ }
172
+
173
+ /**
174
+ * Detect special script types
175
+ * that require a shell/interpreter.
176
+ */
177
+ const isPs1 = found.endsWith('.ps1');
178
+ const isCmd = found.endsWith('.cmd');
179
+ const isUnixShell = found.endsWith('.sh') || path.extname(found) === '';
180
+
181
+ /**
182
+ * cmd
183
+ * The executable program to launch.
184
+ *
185
+ * args
186
+ * Arguments passed to the executable.
187
+ */
188
+ let cmd, args;
189
+
190
+ /**
191
+ * PowerShell scripts:
192
+ *
193
+ * Run through powershell.exe because .ps1 files
194
+ * are not directly executable like binaries.
195
+ *
196
+ * Flags:
197
+ * -NoProfile
198
+ * Prevent loading user profile scripts.
199
+ *
200
+ * -ExecutionPolicy Bypass
201
+ * Allow script execution even if policy blocks it.
202
+ *
203
+ * -File
204
+ * Specifies the script to execute.
205
+ *
206
+ * process.argv.slice(2)
207
+ * Forward all user-provided command-line arguments.
208
+ */
209
+ if (isPs1) {
210
+ cmd = 'powershell.exe';
211
+
212
+ args = ['-NoProfile', '-ExecutionPolicy', 'Bypass', '-File', found, ...process.argv.slice(2)];
213
+
214
+ /**
215
+ * CMD batch files:
216
+ *
217
+ * Run through cmd.exe using:
218
+ * /c
219
+ * which means:
220
+ * "execute command and terminate"
221
+ */
222
+ } else if (isCmd) {
223
+ cmd = 'cmd.exe';
224
+
225
+ args = ['/c', found, ...process.argv.slice(2)];
226
+
227
+ /**
228
+ * Other scripts:
229
+ *
230
+ * Usually:
231
+ * - shell scripts (.sh)
232
+ * - executable binaries
233
+ *
234
+ * These can be executed directly.
235
+ */
236
+ } else if (isUnixShell) {
237
+ // Capture shebang scripts (no extension) and .sh scripts
238
+ const shebang = fs.readFileSync(found, 'utf8').split('\n')[0].trim();
239
+ const interpreter = shebang.startsWith('#!')
240
+ ? shebang
241
+ .slice(2)
242
+ .trim()
243
+ .replace(/^\/usr\/bin\/env\s+/, '')
244
+ .replace(/^\/bin\/env\s+/, '')
245
+ .replace(/^\/usr\/bin\//, '')
246
+ .replace(/^\/bin\//, '')
247
+ : null;
248
+
249
+ if (interpreter) {
250
+ const resolvedOrNull = which.sync(interpreter, { nothrow: true });
251
+ if (!resolvedOrNull) {
252
+ if (['bash', 'sh'].includes(interpreter) && isWindows()) {
253
+ const locationsToCheck = [
254
+ 'C:\\Program Files\\Git\\usr\\bin',
255
+ 'C:\\Program Files\\Git\\bin',
256
+ 'C:\\Program Files (x86)\\Git\\usr\\bin',
257
+ 'C:\\msys64\\usr\\bin',
258
+ 'C:\\msys64\\bin',
259
+ 'C:\\cygwin64\\bin',
260
+ 'C:\\cygwin\\bin',
261
+ 'C:\\MinGW\\bin',
262
+ 'C:\\MinGW\\msys\\1.0\\bin'
263
+ ];
264
+ for (const location of locationsToCheck) {
265
+ const potentialPath = path.join(location, 'bash.exe');
266
+ if (fs.existsSync(potentialPath)) {
267
+ cmd = potentialPath;
268
+ args = [found, ...process.argv.slice(2)];
269
+ break;
270
+ }
271
+ }
272
+ }
273
+ } else {
274
+ cmd = resolvedOrNull || interpreter;
275
+ args = [found, ...process.argv.slice(2)];
276
+ }
277
+ } else {
278
+ cmd = found;
279
+ args = process.argv.slice(2);
280
+ }
281
+ } else {
282
+ cmd = found;
283
+ args = process.argv.slice(2);
284
+ }
285
+
286
+ console.log(
287
+ `Executing: ${path.isAbsolute(cmd) ? path.relative(process.cwd(), cmd) : cmd} ${args
288
+ .map((f) => {
289
+ if (path.isAbsolute(f)) return path.relative(process.cwd(), f);
290
+ return f;
291
+ })
292
+ .join(' ')}`
293
+ );
294
+
295
+ /**
296
+ * Execute the selected script synchronously.
297
+ *
298
+ * stdio: "inherit"
299
+ * Shares the current terminal with the child process,
300
+ * so stdout/stderr/input behave normally.
301
+ *
302
+ * spawnSync waits until the child process exits.
303
+ */
304
+ const result = spawnSync(cmd, args, {
305
+ stdio: 'inherit'
306
+ });
307
+
308
+ /**
309
+ * Exit using the same exit code
310
+ * returned by the child process.
311
+ *
312
+ * If result.status is null/undefined,
313
+ * default to exit code 1.
314
+ */
315
+ process.exit(result.status ?? 1);
316
+ return binaryExecutor$1;
317
+ }
318
+
319
+ var binaryExecutorExports = requireBinaryExecutor();
320
+ var binaryExecutor = /*@__PURE__*/getDefaultExportFromCjs(binaryExecutorExports);
321
+
322
+ module.exports = binaryExecutor;
323
+ //# sourceMappingURL=binary-executor.cjs.map