binary-collections 2.0.14 → 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 (145) 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/docs-src/install-opencode-plugins.md +86 -0
  4. package/docs-src/opencode-cli.md +38 -10
  5. package/lib/binary-collections/config-types.cjs +17 -0
  6. package/lib/binary-collections/config-types.d.ts +12 -0
  7. package/lib/binary-collections/config-types.js +2 -0
  8. package/lib/binary-collections/config-types.mjs +7 -0
  9. package/lib/binary-collections/config.cjs +16 -8
  10. package/lib/binary-collections/config.d.cts +18 -10
  11. package/lib/binary-collections/config.mjs +1 -1
  12. package/lib/binary-collections/findScript.cjs +8 -6
  13. package/lib/binary-collections/findScript.mjs +2 -2
  14. package/lib/binary-collections/listScript.cjs +8 -6
  15. package/lib/binary-collections/listScript.mjs +2 -2
  16. package/lib/binary-collections.cjs +8 -6
  17. package/lib/binary-collections.mjs +3 -3
  18. package/lib/changelog.cjs +142 -4
  19. package/lib/changelog.mjs +9 -5
  20. package/lib/{chunk-SARIXFHP.mjs → chunk-3T6AMFI3.mjs} +16 -8
  21. package/lib/{chunk-3F6EIHYG.mjs → chunk-3ZF2QMDK.mjs} +3 -3
  22. package/lib/chunk-B77D3SR4.mjs +28 -0
  23. package/lib/chunk-BPED62FN.mjs +115 -0
  24. package/lib/{chunk-XI67TI46.mjs → chunk-DHFRWM2W.mjs} +1 -1
  25. package/lib/{chunk-2SJKVOTN.mjs → chunk-DPEE3FBB.mjs} +1 -1
  26. package/lib/{chunk-UYNBNLV5.mjs → chunk-H7AE4IO3.mjs} +1 -1
  27. package/lib/{chunk-YWSLMAQ7.mjs → chunk-KCJYREA2.mjs} +14 -12
  28. package/lib/{chunk-JK3MG2KF.mjs → chunk-NHD4HLSU.mjs} +1 -1
  29. package/lib/{chunk-I3O5ZRYU.mjs → chunk-OWNVMKAA.mjs} +1 -1
  30. package/lib/chunk-SKVF4TMD.mjs +59 -0
  31. package/lib/{chunk-SJYP66BO.mjs → chunk-TDUUOAQD.mjs} +1 -1
  32. package/lib/{chunk-D42YBRZW.mjs → chunk-UAEKSLAX.mjs} +1 -1
  33. package/lib/chunk-V6PTSDW5.mjs +82 -0
  34. package/lib/{chunk-AJ3OIYYP.mjs → chunk-WNUEY6VJ.mjs} +8 -6
  35. package/lib/{chunk-YLV4QATP.mjs → chunk-Z53IUBUN.mjs} +6 -5
  36. package/lib/{chunk-JMUFQSPE.mjs → chunk-Z7RM46Q4.mjs} +1 -1
  37. package/lib/cross-env/index.mjs +3 -3
  38. package/lib/git/git-diff-cli.cjs +16 -8
  39. package/lib/git/git-diff-cli.mjs +3 -3
  40. package/lib/git/git-diff.cjs +16 -8
  41. package/lib/git/git-diff.mjs +3 -3
  42. package/lib/git/git-fix.cjs +16 -8
  43. package/lib/git/git-fix.mjs +2 -2
  44. package/lib/git/user-config.cjs +16 -8
  45. package/lib/git/user-config.mjs +2 -2
  46. package/lib/github-workflows/clean-github-actions-caches-cli.cjs +16 -8
  47. package/lib/github-workflows/clean-github-actions-caches-cli.mjs +2 -2
  48. package/lib/github-workflows/clean-github-actions-caches.cjs +16 -8
  49. package/lib/github-workflows/clean-github-actions-caches.mjs +2 -2
  50. package/lib/github-workflows/get-latest-workflow-status-cli.cjs +16 -8
  51. package/lib/github-workflows/get-latest-workflow-status-cli.mjs +2 -2
  52. package/lib/github-workflows/utils.cjs +16 -8
  53. package/lib/github-workflows/utils.mjs +2 -2
  54. package/lib/github-workflows/workflow-badge-cli.cjs +16 -8
  55. package/lib/github-workflows/workflow-badge-cli.mjs +4 -4
  56. package/lib/node-cache-cleaner-cli.mjs +3 -3
  57. package/lib/opencode/cli/auth-rotate.cjs +343 -28
  58. package/lib/opencode/cli/auth-rotate.d.ts +3 -1
  59. package/lib/opencode/cli/auth-rotate.js +10 -15
  60. package/lib/opencode/cli/auth-rotate.mjs +6 -2
  61. package/lib/opencode/cli/auth-rotate.runner.cjs +454 -0
  62. package/lib/opencode/cli/auth-rotate.runner.d.ts +1 -0
  63. package/lib/opencode/cli/auth-rotate.runner.js +8 -0
  64. package/lib/opencode/cli/auth-rotate.runner.mjs +21 -0
  65. package/lib/opencode/install-opencode-plugins-cli.cjs +82 -0
  66. package/lib/opencode/install-opencode-plugins-cli.d.ts +1 -0
  67. package/lib/opencode/install-opencode-plugins-cli.js +78 -0
  68. package/lib/opencode/install-opencode-plugins-cli.mjs +65 -0
  69. package/lib/opencode/utils/check-api.cjs +332 -18
  70. package/lib/opencode/utils/check-api.d.ts +5 -1
  71. package/lib/opencode/utils/check-api.js +101 -15
  72. package/lib/opencode/utils/check-api.mjs +5 -1
  73. package/lib/opencode/utils/check-api.runner.cjs +0 -0
  74. package/lib/opencode/utils/check-api.runner.d.ts +0 -0
  75. package/lib/opencode/utils/check-api.runner.js +1 -0
  76. package/lib/opencode/utils/check-api.runner.mjs +7 -0
  77. package/lib/opencode-cli.cjs +352 -29
  78. package/lib/opencode-cli.js +3 -2
  79. package/lib/opencode-cli.mjs +11 -6
  80. package/lib/package-resolutions-updater-cli.cjs +16 -8
  81. package/lib/package-resolutions-updater-cli.mjs +2 -2
  82. package/lib/package-resolutions-updater.cjs +16 -8
  83. package/lib/package-resolutions-updater.mjs +2 -2
  84. package/lib/print-directory-tree.cjs +16 -8
  85. package/lib/print-directory-tree.mjs +1 -1
  86. package/lib/print-tarball-tree-cli.cjs +305 -0
  87. package/lib/print-tarball-tree-cli.d.mts +2 -0
  88. package/lib/print-tarball-tree-cli.mjs +54 -0
  89. package/lib/print-tarball-tree.cjs +43 -216
  90. package/lib/print-tarball-tree.d.mts +4 -1
  91. package/lib/print-tarball-tree.mjs +12 -66
  92. package/lib/rmpath-cli.cjs +16 -8
  93. package/lib/rmpath-cli.mjs +2 -2
  94. package/lib/rmpath.cjs +16 -8
  95. package/lib/rmpath.mjs +2 -2
  96. package/lib/run-by-checksum/hash.cjs +45 -67
  97. package/lib/run-by-checksum/{hash.d.ts → hash.d.cts} +9 -2
  98. package/lib/run-by-checksum/hash.mjs +3 -7
  99. package/lib/run-by-checksum/run.cjs +95 -58
  100. package/lib/run-by-checksum/run.js +3 -3
  101. package/lib/run-by-checksum/run.mjs +2 -2
  102. package/lib/run-by-checksum-cli.cjs +96 -74
  103. package/lib/run-by-checksum-cli.mjs +2 -2
  104. package/lib/submodule-install.cjs +16 -8
  105. package/lib/submodule-install.mjs +1 -1
  106. package/lib/submodule-remove-cli.cjs +16 -8
  107. package/lib/submodule-remove-cli.mjs +2 -2
  108. package/lib/submodule-remove.cjs +16 -8
  109. package/lib/submodule-remove.mjs +2 -2
  110. package/lib/utils/isDebug.cjs +13 -0
  111. package/lib/utils/isDebug.d.cts +9 -0
  112. package/lib/utils/isDebug.mjs +6 -0
  113. package/package.json +9 -7
  114. package/readme.md +63 -0
  115. package/releases/readme.md +1 -1
  116. package/lib/chunk-546KAIYT.mjs +0 -113
  117. package/lib/chunk-5WAOOOGZ.mjs +0 -77
  118. package/lib/chunk-72XTQ3CK.mjs +0 -45
  119. package/lib/chunk-7Q6YEUQF.mjs +0 -246
  120. package/lib/chunk-AQZ7LMFS.mjs +0 -100
  121. package/lib/chunk-BDCMTOZI.mjs +0 -246
  122. package/lib/chunk-BEUM4LH4.mjs +0 -184
  123. package/lib/chunk-BO4TZS4Q.mjs +0 -246
  124. package/lib/chunk-BZWVHODJ.mjs +0 -62
  125. package/lib/chunk-CM3IC5YC.mjs +0 -226
  126. package/lib/chunk-FR3DMHJC.mjs +0 -146
  127. package/lib/chunk-H44UWUFY.mjs +0 -105
  128. package/lib/chunk-JVMLKHD2.mjs +0 -62
  129. package/lib/chunk-KAT2JNLZ.mjs +0 -146
  130. package/lib/chunk-KRCPFWIF.mjs +0 -193
  131. package/lib/chunk-LVSPEFU2.mjs +0 -86
  132. package/lib/chunk-MCCMMZSM.mjs +0 -60
  133. package/lib/chunk-MGPYPKIE.mjs +0 -109
  134. package/lib/chunk-OA2RKEY3.mjs +0 -162
  135. package/lib/chunk-PAZH45HS.mjs +0 -41
  136. package/lib/chunk-QZMGBDSA.mjs +0 -32
  137. package/lib/chunk-RDGDLSPD.mjs +0 -76
  138. package/lib/chunk-RKPIBGKE.mjs +0 -61
  139. package/lib/chunk-SWUAEY4H.mjs +0 -44
  140. package/lib/chunk-UAIF5VIA.mjs +0 -89
  141. package/lib/chunk-UHPFLJXH.mjs +0 -227
  142. package/lib/chunk-WOC4FZ6F.mjs +0 -164
  143. package/lib/chunk-WSHVPGNM.mjs +0 -44
  144. package/lib/run-by-checksum/hash.js +0 -119
  145. package/readme.html +0 -784
@@ -286,25 +286,33 @@ var require_config = __commonJS({
286
286
  var minimistLib = require("minimist");
287
287
  var { findEnvWithToken } = require_findEnvFiles();
288
288
  var dotenv = require("dotenv");
289
+ var { cosmiconfig } = require("cosmiconfig");
289
290
  var loadDotenv2 = (tokenKey = /ACCESS_TOKEN|GITHUB_TOKEN/) => dotenv.config({ path: findEnvWithToken(void 0, tokenKey), quiet: true, overwrite: true });
290
291
  loadDotenv2();
291
292
  var cliArgv = minimistLib(process.argv.slice(2), {
292
293
  string: ["token"]
293
294
  });
294
295
  var GITHUB_ACCESS_TOKEN = cliArgv.token || process.env.ACCESS_TOKEN || process.env.GITHUB_TOKEN || process.env.GH_TOKEN;
295
- function getTempDir() {
296
- return process.env.TEMP_DIR || path2.join(process.cwd(), "tmp");
297
- }
298
296
  function getTempPath(...segments) {
299
- return path2.join(getTempDir(), ...segments);
297
+ return path2.join(process.env.TEMP_DIR || path2.join(process.cwd(), "tmp"), ...segments);
298
+ }
299
+ async function getConfig(options = {}) {
300
+ const explorer = cosmiconfig("binary-collections", {
301
+ searchStrategy: "project",
302
+ stopDir: options.stopDir
303
+ });
304
+ try {
305
+ const result = await explorer.search(options.searchFrom);
306
+ return result ? result.config : null;
307
+ } catch {
308
+ return null;
309
+ }
300
310
  }
301
- var TEMP_BASE_DIR = getTempDir();
302
311
  module2.exports = {
303
- getTempDir,
304
312
  getTempPath,
305
- TEMP_BASE_DIR,
306
313
  GITHUB_ACCESS_TOKEN,
307
- loadDotenv: loadDotenv2
314
+ loadDotenv: loadDotenv2,
315
+ getConfig
308
316
  };
309
317
  }
310
318
  });
@@ -1,7 +1,7 @@
1
1
  import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
2
  import {
3
3
  require_config
4
- } from "./chunk-SARIXFHP.mjs";
4
+ } from "./chunk-3T6AMFI3.mjs";
5
5
  import "./chunk-J4M5EL5P.mjs";
6
6
  import {
7
7
  require_utils
@@ -0,0 +1,305 @@
1
+ #!/usr/bin/env node
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __esm = (fn, res) => function __init() {
9
+ return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
10
+ };
11
+ var __commonJS = (cb, mod) => function __require() {
12
+ return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
13
+ };
14
+ var __export = (target, all) => {
15
+ for (var name in all)
16
+ __defProp(target, name, { get: all[name], enumerable: true });
17
+ };
18
+ var __copyProps = (to, from, except, desc) => {
19
+ if (from && typeof from === "object" || typeof from === "function") {
20
+ for (let key of __getOwnPropNames(from))
21
+ if (!__hasOwnProp.call(to, key) && key !== except)
22
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
23
+ }
24
+ return to;
25
+ };
26
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
27
+ // If the importer is in node compatibility mode or this is not an ESM
28
+ // file that has been converted to a CommonJS file using a Babel-
29
+ // compatible transform (i.e. "__esModule" has not been set), then set
30
+ // "default" to the CommonJS "module.exports" for node compatibility.
31
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
32
+ mod
33
+ ));
34
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
35
+
36
+ // node_modules/tsup/assets/cjs_shims.js
37
+ var init_cjs_shims = __esm({
38
+ "node_modules/tsup/assets/cjs_shims.js"() {
39
+ }
40
+ });
41
+
42
+ // src/utils/index.cjs
43
+ var require_utils = __commonJS({
44
+ "src/utils/index.cjs"(exports2, module2) {
45
+ init_cjs_shims();
46
+ var fs3 = require("fs");
47
+ var path2 = require("upath");
48
+ var minimistLib = require("minimist");
49
+ var argv = minimistLib(process.argv.slice(2));
50
+ var { exec } = require("child_process");
51
+ var { promisify } = require("util");
52
+ var execAsync = promisify(exec);
53
+ async function parseGitRemotes() {
54
+ try {
55
+ const { stdout } = await execAsync("git remote -v");
56
+ const lines = stdout.split("\n");
57
+ const remotes = {};
58
+ lines.forEach((line) => {
59
+ const [name, url] = line.split(" ");
60
+ if (name && url) {
61
+ const [repoUrl] = url.split(" ");
62
+ try {
63
+ const parsedUrl = new URL(repoUrl);
64
+ const pathParts = parsedUrl.pathname.split("/").filter(Boolean);
65
+ if (parsedUrl.hostname === "github.com" && pathParts.length === 2) {
66
+ let repoPath = pathParts.join("/");
67
+ if (repoPath.endsWith(".git")) {
68
+ repoPath = repoPath.slice(0, -4);
69
+ }
70
+ remotes[name] = repoPath;
71
+ }
72
+ } catch (e) {
73
+ console.error("URL Parsing Error:", e.message);
74
+ }
75
+ }
76
+ });
77
+ return remotes;
78
+ } catch (error) {
79
+ console.error("Error:", error.message);
80
+ return {};
81
+ }
82
+ }
83
+ module2.exports.parseGitRemotes = parseGitRemotes;
84
+ function getArgs2(opts) {
85
+ if (opts) {
86
+ return minimistLib(process.argv.slice(2), opts);
87
+ }
88
+ return argv;
89
+ }
90
+ module2.exports.getArgs = getArgs2;
91
+ function del(fullPath) {
92
+ try {
93
+ if (!fs3.existsSync(fullPath)) return;
94
+ const stat = fs3.lstatSync(fullPath);
95
+ if (stat.isSymbolicLink()) {
96
+ try {
97
+ fs3.unlinkSync(fullPath);
98
+ console.log("deleted symlink", fullPath);
99
+ } catch (e) {
100
+ console.log("failed delete symlink", fullPath, e && e.message);
101
+ }
102
+ return;
103
+ }
104
+ if (stat.isDirectory()) {
105
+ const subdir = fs3.readdirSync(fullPath).map((dirPath) => path2.resolve(fullPath, dirPath));
106
+ for (let i = 0; i < subdir.length; i++) {
107
+ del(subdir[i]);
108
+ }
109
+ try {
110
+ fs3.rmdirSync(fullPath);
111
+ console.log("deleted", fullPath);
112
+ } catch (_e) {
113
+ try {
114
+ fs3.rmSync(fullPath, { recursive: true, force: true, retryDelay: 7e3 });
115
+ console.log("deleted", fullPath);
116
+ } catch (ee) {
117
+ console.log("failed delete", fullPath, ee && ee.message);
118
+ }
119
+ }
120
+ return;
121
+ }
122
+ try {
123
+ fs3.unlinkSync(fullPath);
124
+ console.log("deleted", fullPath);
125
+ } catch (_e) {
126
+ try {
127
+ fs3.rmSync(fullPath, { recursive: true, force: true, retryDelay: 7e3 });
128
+ console.log("deleted", fullPath);
129
+ } catch (ee) {
130
+ console.log("failed delete", fullPath, ee && ee.message);
131
+ }
132
+ }
133
+ } catch (err) {
134
+ console.log("failed delete", fullPath, err && err.message);
135
+ }
136
+ }
137
+ module2.exports.del = del;
138
+ function delStream(globStream) {
139
+ globStream.stream().on("data", (result) => {
140
+ const fullPath = path2.resolve(process.cwd(), result);
141
+ try {
142
+ if (fs3.existsSync(fullPath)) {
143
+ const stat = fs3.lstatSync(fullPath);
144
+ if (stat.isSymbolicLink()) {
145
+ try {
146
+ fs3.unlinkSync(fullPath);
147
+ console.log("deleted symlink", fullPath);
148
+ } catch (e) {
149
+ console.log("failed delete symlink", fullPath, e && e.message);
150
+ }
151
+ return;
152
+ }
153
+ if (stat.isDirectory()) {
154
+ const subdir = fs3.readdirSync(fullPath).map((dirPath) => path2.resolve(fullPath, dirPath));
155
+ for (let i = 0; i < subdir.length; i++) {
156
+ del(subdir[i]);
157
+ }
158
+ }
159
+ }
160
+ del(fullPath);
161
+ } catch (err) {
162
+ console.log("failed processing", fullPath, err && err.message);
163
+ }
164
+ });
165
+ }
166
+ module2.exports.delStream = delStream;
167
+ function getFileTreeString(hashArray) {
168
+ const tree = {};
169
+ const hashMap = {};
170
+ for (const entry of hashArray) {
171
+ const [filePath, hash] = entry.split(" ");
172
+ hashMap[filePath] = hash;
173
+ const parts = filePath.split("/");
174
+ let current = tree;
175
+ for (let i = 0; i < parts.length; i++) {
176
+ const part = parts[i];
177
+ if (i === parts.length - 1) {
178
+ current[part] = null;
179
+ } else {
180
+ current[part] = current[part] || {};
181
+ current = current[part];
182
+ }
183
+ }
184
+ }
185
+ function printNode(node, prefix = "", parentPath = "") {
186
+ const keys = Object.keys(node).sort();
187
+ let lines = [];
188
+ keys.forEach((key, idx) => {
189
+ const isLast = idx === keys.length - 1;
190
+ const branch = isLast ? "\u2514\u2500\u2500 " : "\u251C\u2500\u2500 ";
191
+ const currentPath = parentPath ? parentPath + "/" + key : key;
192
+ if (node[key] === null) {
193
+ lines.push(prefix + branch + key + " [" + (hashMap[currentPath] || "") + "]");
194
+ } else {
195
+ lines.push(prefix + branch + key + "/");
196
+ lines = lines.concat(printNode(node[key], prefix + (isLast ? " " : "\u2502 "), currentPath));
197
+ }
198
+ });
199
+ return lines;
200
+ }
201
+ return printNode(tree, "", "").join("\n");
202
+ }
203
+ module2.exports.getFileTreeString = getFileTreeString;
204
+ var delay = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
205
+ module2.exports.delay = delay;
206
+ }
207
+ });
208
+
209
+ // src/print-tarball-tree-cli.mjs
210
+ var print_tarball_tree_cli_exports = {};
211
+ __export(print_tarball_tree_cli_exports, {
212
+ main: () => main
213
+ });
214
+ module.exports = __toCommonJS(print_tarball_tree_cli_exports);
215
+ init_cjs_shims();
216
+ var import_node_fs2 = __toESM(require("fs"), 1);
217
+ var import_upath = __toESM(require("upath"), 1);
218
+ var import_utils = __toESM(require_utils(), 1);
219
+
220
+ // src/print-tarball-tree.mjs
221
+ init_cjs_shims();
222
+ var import_node_fs = __toESM(require("fs"), 1);
223
+ var zlib = __toESM(require("zlib"), 1);
224
+ var import_promises = require("stream/promises");
225
+ var import_tar_stream = __toESM(require("tar-stream"), 1);
226
+ function addToTree(tree, parts) {
227
+ let node = tree;
228
+ for (const part of parts) {
229
+ if (!node[part]) node[part] = {};
230
+ node = node[part];
231
+ }
232
+ return tree;
233
+ }
234
+ function formatTree(node, prefix = "") {
235
+ const lines = [];
236
+ const entries = Object.keys(node).sort();
237
+ entries.forEach(function(key, index) {
238
+ const isLast = index === entries.length - 1;
239
+ const child = node[key];
240
+ const line = prefix + (isLast ? "\u2514\u2500\u2500 " : "\u251C\u2500\u2500 ") + key;
241
+ const newPrefix = prefix + (isLast ? " " : "\u2502 ");
242
+ lines.push(line);
243
+ lines.push(...formatTree(child, newPrefix));
244
+ });
245
+ return lines;
246
+ }
247
+ function printTree(node, prefix = "", logger = console.log) {
248
+ for (const line of formatTree(node, prefix)) {
249
+ logger(line);
250
+ }
251
+ }
252
+ async function printTgzTree(filePath, options = {}) {
253
+ const logger = options.logger || console.log;
254
+ const extract = import_tar_stream.default.extract();
255
+ const tree = {};
256
+ extract.on("entry", function(header, stream, next) {
257
+ const parts = header.name.split("/").filter(Boolean);
258
+ if (parts.length) addToTree(tree, parts);
259
+ stream.once("end", next);
260
+ stream.once("error", next);
261
+ stream.resume();
262
+ });
263
+ await (0, import_promises.pipeline)(import_node_fs.default.createReadStream(filePath), zlib.createGunzip(), extract);
264
+ printTree(tree, "", logger);
265
+ return tree;
266
+ }
267
+
268
+ // src/print-tarball-tree-cli.mjs
269
+ async function main() {
270
+ const argv = (0, import_utils.getArgs)({ string: ["file"], alias: { f: "file", h: "help" } });
271
+ if (argv.help) {
272
+ console.log(`
273
+ Usage: node src/print-tarball-tree-cli.mjs [options]
274
+
275
+ Options:
276
+ -f, --file <path> Path to the tarball file
277
+ -h, --help Show this help message
278
+ `);
279
+ process.exit(0);
280
+ }
281
+ const filePath = argv.file ? import_upath.default.isAbsolute(argv.file) ? argv.file : import_upath.default.resolve(process.cwd(), argv.file) : null;
282
+ if (!filePath) {
283
+ console.error("Error: No file specified");
284
+ process.exit(1);
285
+ }
286
+ if (!import_node_fs2.default.existsSync(filePath)) {
287
+ console.error(`Error: File not found at ${filePath}`);
288
+ process.exit(1);
289
+ }
290
+ try {
291
+ await printTgzTree(filePath);
292
+ } catch (error) {
293
+ console.error(`Error: Failed to read tarball ${filePath}`);
294
+ console.error(error instanceof Error ? error.message : error);
295
+ process.exit(1);
296
+ }
297
+ }
298
+ main().catch(function(error) {
299
+ console.error(error);
300
+ process.exit(1);
301
+ });
302
+ // Annotate the CommonJS export names for ESM import in node:
303
+ 0 && (module.exports = {
304
+ main
305
+ });
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ export function main(): Promise<void>;
@@ -0,0 +1,54 @@
1
+ #!/usr/bin/env node
2
+ import { createRequire } from 'module'; const require = createRequire(import.meta.url);
3
+ import {
4
+ printTgzTree
5
+ } from "./chunk-SKVF4TMD.mjs";
6
+ import {
7
+ require_utils
8
+ } from "./chunk-6RK5UCTP.mjs";
9
+ import {
10
+ __toESM,
11
+ init_esm_shims
12
+ } from "./chunk-QQ4A6DLD.mjs";
13
+
14
+ // src/print-tarball-tree-cli.mjs
15
+ init_esm_shims();
16
+ var import_utils = __toESM(require_utils(), 1);
17
+ import fs from "fs";
18
+ import path from "upath";
19
+ async function main() {
20
+ const argv = (0, import_utils.getArgs)({ string: ["file"], alias: { f: "file", h: "help" } });
21
+ if (argv.help) {
22
+ console.log(`
23
+ Usage: node src/print-tarball-tree-cli.mjs [options]
24
+
25
+ Options:
26
+ -f, --file <path> Path to the tarball file
27
+ -h, --help Show this help message
28
+ `);
29
+ process.exit(0);
30
+ }
31
+ const filePath = argv.file ? path.isAbsolute(argv.file) ? argv.file : path.resolve(process.cwd(), argv.file) : null;
32
+ if (!filePath) {
33
+ console.error("Error: No file specified");
34
+ process.exit(1);
35
+ }
36
+ if (!fs.existsSync(filePath)) {
37
+ console.error(`Error: File not found at ${filePath}`);
38
+ process.exit(1);
39
+ }
40
+ try {
41
+ await printTgzTree(filePath);
42
+ } catch (error) {
43
+ console.error(`Error: Failed to read tarball ${filePath}`);
44
+ console.error(error instanceof Error ? error.message : error);
45
+ process.exit(1);
46
+ }
47
+ }
48
+ main().catch(function(error) {
49
+ console.error(error);
50
+ process.exit(1);
51
+ });
52
+ export {
53
+ main
54
+ };