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.
- package/.opencode/plugins/opencode-request-logger/README.md +44 -0
- package/.venv/Lib/site-packages/pyarrow/tests/data/orc/README.md +22 -0
- package/binaries/binary-executor.cjs +307 -238
- package/binaries/clean-nodemodule.cjs +307 -238
- package/binaries/clean-nodemodules.cjs +307 -238
- package/binaries/composer.cjs +323 -0
- package/binaries/composer.cmd +2 -0
- package/binaries/composer.phar +0 -0
- package/binaries/dev.cjs +307 -238
- package/binaries/empty.cjs +307 -238
- package/binaries/git-reduce-size.cjs +307 -238
- package/binaries/javakill.cjs +307 -238
- package/binaries/kill-process.cjs +307 -238
- package/binaries/nodekill.cjs +307 -238
- package/binaries/prod.cjs +307 -238
- package/binaries/py.cjs +307 -238
- package/binaries/rmfind.cjs +307 -238
- package/binaries/rmx.cjs +307 -238
- package/binaries/submodule-token.cjs +307 -238
- package/binaries/test-cjs.cjs +307 -238
- package/binaries/test-esm.cjs +307 -238
- package/binaries/yarn-clean.cjs +307 -238
- package/binaries/yc.cjs +307 -238
- package/binaries/ycw.cjs +307 -238
- package/docs-src/binary-collections.md +1 -1
- package/docs-src/clean-github-actions-caches.md +1 -1
- package/docs-src/copy-move-file.md +1 -4
- package/docs-src/del-ps.md +1 -1
- package/docs-src/find-node-modules.md +1 -1
- package/docs-src/generate-test-ci.md +56 -0
- package/docs-src/get-latest-workflow-status.md +100 -0
- package/docs-src/git-diff.md +1 -1
- package/docs-src/git-fix.md +1 -1
- package/docs-src/git-purge.md +1 -1
- package/docs-src/install-opencode-plugins.md +86 -0
- package/docs-src/kill-night-crows.md +1 -1
- package/docs-src/node-cache-cleaner.md +2 -2
- package/docs-src/node-package-packer.md +1 -1
- package/docs-src/opencode-cli.md +155 -0
- package/docs-src/package-resolutions-updater.md +1 -1
- package/docs-src/rmpath.md +1 -1
- package/docs-src/run-by-checksum.md +1 -1
- package/docs-src/submodule-remove.md +1 -1
- package/docs-src/upload-backend.md +29 -0
- package/docs-src/vscode-cli.md +84 -0
- package/docs-src/workflow-badge.md +120 -0
- package/lib/binary-collections/config-types.cjs +17 -0
- package/lib/binary-collections/config-types.d.ts +12 -0
- package/lib/binary-collections/config-types.js +2 -0
- package/lib/binary-collections/config-types.mjs +7 -0
- package/lib/binary-collections/config.cjs +28 -8
- package/lib/binary-collections/config.d.cts +26 -8
- package/lib/binary-collections/config.mjs +2 -2
- package/lib/binary-collections/findScript.cjs +49 -25
- package/lib/binary-collections/findScript.mjs +2 -2
- package/lib/binary-collections/listScript.cjs +49 -25
- package/lib/binary-collections/listScript.mjs +2 -2
- package/lib/binary-collections.cjs +49 -25
- package/lib/binary-collections.mjs +6 -6
- package/lib/changelog.cjs +142 -4
- package/lib/changelog.mjs +9 -5
- package/lib/chunk-3T6AMFI3.mjs +52 -0
- package/lib/{chunk-2MN4VPV2.mjs → chunk-3ZF2QMDK.mjs} +4 -4
- package/lib/chunk-56BVU63B.mjs +86 -0
- package/lib/chunk-7N52Z4IJ.mjs +39 -0
- package/lib/chunk-B77D3SR4.mjs +28 -0
- package/lib/chunk-BPED62FN.mjs +115 -0
- package/lib/{chunk-RDN6HF5Z.mjs → chunk-DHFRWM2W.mjs} +1 -1
- package/lib/chunk-DPEE3FBB.mjs +146 -0
- package/lib/{chunk-MGPYPKIE.mjs → chunk-H7AE4IO3.mjs} +5 -1
- package/lib/{chunk-H44UWUFY.mjs → chunk-J4M5EL5P.mjs} +3 -0
- package/lib/chunk-KCJYREA2.mjs +67 -0
- package/lib/chunk-LACQTD5V.mjs +225 -0
- package/lib/{chunk-TBWXE7ST.mjs → chunk-NHD4HLSU.mjs} +24 -31
- package/lib/{chunk-RDGDLSPD.mjs → chunk-OWNVMKAA.mjs} +6 -5
- package/lib/chunk-SKVF4TMD.mjs +59 -0
- package/lib/{chunk-BZWVHODJ.mjs → chunk-TDUUOAQD.mjs} +5 -5
- package/lib/chunk-TP3O2JGW.mjs +88 -0
- package/lib/{chunk-FLYSZFLW.mjs → chunk-UAEKSLAX.mjs} +1 -1
- package/lib/chunk-UDZBVKXH.mjs +94 -0
- package/lib/chunk-UEOWRYAN.mjs +32 -0
- package/lib/chunk-V6PTSDW5.mjs +82 -0
- package/lib/{chunk-NQXUYO67.mjs → chunk-WNUEY6VJ.mjs} +49 -25
- package/lib/chunk-X7UVQ6ZC.mjs +183 -0
- package/lib/chunk-XW5NZAKI.mjs +82 -0
- package/lib/{chunk-LVSPEFU2.mjs → chunk-Z53IUBUN.mjs} +6 -5
- package/lib/{chunk-CD3HF3LK.mjs → chunk-Z7RM46Q4.mjs} +5 -11
- package/lib/chunk-ZB4IQ6VJ.mjs +46 -0
- package/lib/del-gradle.cjs +1 -1
- package/lib/del-gradle.mjs +22 -16
- package/lib/del-node-modules.cjs +1 -1
- package/lib/del-node-modules.mjs +148 -142
- package/lib/find-node-modules-cli.cjs +1 -1
- package/lib/find-node-modules-cli.mjs +10 -4
- package/lib/{git-diff-cli.cjs → git/git-diff-cli.cjs} +32 -12
- package/lib/{git-diff-cli.mjs → git/git-diff-cli.mjs} +7 -7
- package/lib/{git-diff.cjs → git/git-diff.cjs} +30 -10
- package/lib/{git-diff.js → git/git-diff.js} +3 -3
- package/lib/{git-diff.mjs → git/git-diff.mjs} +6 -6
- package/lib/{git-fix.cjs → git/git-fix.cjs} +142 -3
- package/lib/{git-fix.mjs → git/git-fix.mjs} +19 -14
- package/lib/{git-purge.cjs → git/git-purge.cjs} +1 -1
- package/lib/{git-purge.mjs → git/git-purge.mjs} +4 -4
- package/lib/git/user-config.cjs +139 -1
- package/lib/git/user-config.mjs +3 -1
- package/lib/{clean-github-actions-caches-cli.cjs → github-workflows/clean-github-actions-caches-cli.cjs} +46 -10
- package/lib/{clean-github-actions-caches-cli.mjs → github-workflows/clean-github-actions-caches-cli.mjs} +7 -6
- package/lib/{clean-github-actions-caches.cjs → github-workflows/clean-github-actions-caches.cjs} +46 -10
- package/lib/{clean-github-actions-caches.mjs → github-workflows/clean-github-actions-caches.mjs} +5 -4
- package/lib/github-workflows/generate-test-ci-step-cli.cjs +240 -0
- package/lib/github-workflows/generate-test-ci-step-cli.d.mts +2 -0
- package/lib/github-workflows/generate-test-ci-step-cli.mjs +132 -0
- package/lib/github-workflows/get-latest-workflow-status-cli.cjs +549 -0
- package/lib/github-workflows/get-latest-workflow-status-cli.d.mts +2 -0
- package/lib/github-workflows/get-latest-workflow-status-cli.mjs +61 -0
- package/lib/github-workflows/get-latest-workflow-status.cjs +56 -0
- package/lib/github-workflows/get-latest-workflow-status.d.mts +1 -0
- package/lib/github-workflows/get-latest-workflow-status.mjs +8 -0
- package/lib/github-workflows/utils.cjs +279 -0
- package/lib/github-workflows/utils.d.cts +76 -0
- package/lib/github-workflows/utils.mjs +8 -0
- package/lib/github-workflows/workflow-badge-cli.cjs +730 -0
- package/lib/github-workflows/workflow-badge-cli.d.mts +2 -0
- package/lib/github-workflows/workflow-badge-cli.mjs +98 -0
- package/lib/github-workflows/workflow-badge-generator.cjs +200 -0
- package/lib/github-workflows/workflow-badge-generator.d.mts +14 -0
- package/lib/github-workflows/workflow-badge-generator.mjs +8 -0
- package/lib/github-workflows/workflow-test-data.cjs +73 -0
- package/lib/github-workflows/workflow-test-data.d.cts +63 -0
- package/lib/github-workflows/workflow-test-data.mjs +6 -0
- package/lib/node-cache-cleaner-cli.mjs +3 -3
- package/lib/opencode/cli/auth-rotate.cjs +458 -0
- package/lib/opencode/cli/auth-rotate.d.ts +3 -0
- package/lib/opencode/cli/auth-rotate.js +65 -0
- package/lib/opencode/cli/auth-rotate.mjs +14 -0
- package/lib/opencode/cli/auth-rotate.runner.cjs +454 -0
- package/lib/opencode/cli/auth-rotate.runner.d.ts +1 -0
- package/lib/opencode/cli/auth-rotate.runner.js +8 -0
- package/lib/opencode/cli/auth-rotate.runner.mjs +21 -0
- package/lib/opencode/cli/list-projects.cjs +184 -0
- package/lib/opencode/cli/list-projects.d.ts +1 -0
- package/lib/opencode/cli/list-projects.js +32 -0
- package/lib/opencode/cli/list-projects.mjs +11 -0
- package/lib/opencode/cli/list-sessions.cjs +215 -0
- package/lib/opencode/cli/list-sessions.d.ts +1 -0
- package/lib/opencode/cli/list-sessions.js +45 -0
- package/lib/opencode/cli/list-sessions.mjs +11 -0
- package/lib/opencode/database.cjs +349 -0
- package/lib/opencode/database.d.ts +91 -0
- package/lib/opencode/database.js +252 -0
- package/lib/opencode/database.mjs +28 -0
- package/lib/opencode/database.runner.cjs +145 -0
- package/lib/opencode/database.runner.d.ts +1 -0
- package/lib/opencode/database.runner.js +56 -0
- package/lib/opencode/database.runner.mjs +37 -0
- package/lib/opencode/install-opencode-plugins-cli.cjs +82 -0
- package/lib/opencode/install-opencode-plugins-cli.d.ts +1 -0
- package/lib/opencode/install-opencode-plugins-cli.js +78 -0
- package/lib/opencode/install-opencode-plugins-cli.mjs +65 -0
- package/lib/opencode/opencode-zen.runner.cjs +48 -0
- package/lib/opencode/opencode-zen.runner.d.mts +1 -0
- package/lib/opencode/opencode-zen.runner.mjs +31 -0
- package/lib/opencode/sqlite.cjs +114 -0
- package/lib/opencode/sqlite.d.ts +18 -0
- package/lib/opencode/sqlite.js +82 -0
- package/lib/opencode/sqlite.mjs +10 -0
- package/lib/opencode/storage.cjs +124 -0
- package/lib/opencode/storage.d.ts +27 -0
- package/lib/opencode/storage.js +101 -0
- package/lib/opencode/storage.mjs +38 -0
- package/lib/opencode/storage.runner.cjs +50 -0
- package/lib/opencode/storage.runner.d.ts +1 -0
- package/lib/opencode/storage.runner.js +13 -0
- package/lib/opencode/storage.runner.mjs +29 -0
- package/lib/opencode/types.cjs +17 -0
- package/lib/opencode/types.d.ts +31 -0
- package/lib/opencode/types.js +2 -0
- package/lib/opencode/types.mjs +7 -0
- package/lib/opencode/utils/check-api.cjs +373 -0
- package/lib/opencode/utils/check-api.d.ts +16 -0
- package/lib/opencode/utils/check-api.js +132 -0
- package/lib/opencode/utils/check-api.mjs +12 -0
- package/lib/opencode/utils/check-api.runner.cjs +0 -0
- package/lib/opencode/utils/check-api.runner.d.ts +0 -0
- package/lib/opencode/utils/check-api.runner.js +1 -0
- package/lib/opencode/utils/check-api.runner.mjs +7 -0
- package/lib/opencode-cli.cjs +796 -0
- package/lib/opencode-cli.d.ts +2 -0
- package/lib/opencode-cli.js +116 -0
- package/lib/opencode-cli.mjs +116 -0
- package/lib/package-resolutions-updater-cli.cjs +189 -154
- package/lib/package-resolutions-updater-cli.mjs +3 -2
- package/lib/package-resolutions-updater.cjs +189 -154
- package/lib/package-resolutions-updater.d.mts +12 -3
- package/lib/package-resolutions-updater.mjs +3 -2
- package/lib/print-directory-tree.cjs +139 -3
- package/lib/print-directory-tree.mjs +6 -3
- package/lib/print-tarball-tree-cli.cjs +305 -0
- package/lib/print-tarball-tree-cli.d.mts +2 -0
- package/lib/print-tarball-tree-cli.mjs +54 -0
- package/lib/print-tarball-tree.cjs +43 -216
- package/lib/print-tarball-tree.d.mts +4 -1
- package/lib/print-tarball-tree.mjs +12 -66
- package/lib/rmpath-cli.cjs +139 -5
- package/lib/rmpath-cli.mjs +3 -1
- package/lib/rmpath.cjs +155 -11
- package/lib/rmpath.mjs +3 -1
- package/lib/run-by-checksum/hash.cjs +50 -56
- package/lib/run-by-checksum/hash.d.cts +24 -0
- package/lib/run-by-checksum/hash.mjs +3 -7
- package/lib/run-by-checksum/run.cjs +95 -42
- package/lib/run-by-checksum/run.js +3 -3
- package/lib/run-by-checksum/run.mjs +2 -2
- package/lib/run-by-checksum-cli.cjs +96 -58
- package/lib/run-by-checksum-cli.mjs +2 -2
- package/lib/submodule-install.cjs +138 -4
- package/lib/submodule-install.mjs +5 -4
- package/lib/submodule-remove-cli.cjs +139 -5
- package/lib/submodule-remove-cli.mjs +3 -1
- package/lib/submodule-remove.cjs +154 -5
- package/lib/submodule-remove.mjs +3 -1
- package/lib/utils/findEnvFiles.cjs +3 -0
- package/lib/utils/findEnvFiles.d.cts +2 -2
- package/lib/utils/findEnvFiles.mjs +1 -1
- package/lib/utils/isDebug.cjs +13 -0
- package/lib/utils/isDebug.d.cts +9 -0
- package/lib/utils/isDebug.mjs +6 -0
- package/lib/vscode/project.cjs +0 -0
- package/lib/vscode/project.d.ts +0 -0
- package/lib/vscode/project.js +1 -0
- package/lib/vscode/project.mjs +7 -0
- package/lib/vscode/storage.cjs +138 -0
- package/lib/vscode/storage.d.ts +51 -0
- package/lib/vscode/storage.js +169 -0
- package/lib/vscode/storage.mjs +42 -0
- package/lib/vscode/storage.runner.cjs +125 -0
- package/lib/vscode/storage.runner.d.ts +1 -0
- package/lib/vscode/storage.runner.js +47 -0
- package/lib/vscode/storage.runner.mjs +60 -0
- package/lib/vscode-cli.cjs +155 -0
- package/lib/vscode-cli.d.ts +2 -0
- package/lib/vscode-cli.js +80 -0
- package/lib/vscode-cli.mjs +71 -0
- package/package.json +50 -26
- package/readme.md +104 -8
- package/releases/readme.md +1 -1
- package/src/github-workflows/generate-test-ci-step-cli.mjs +126 -0
- package/vendor/clue/ndjson-react/README.md +365 -0
- package/vendor/composer/pcre/README.md +189 -0
- package/vendor/composer/semver/README.md +99 -0
- package/vendor/composer/xdebug-handler/README.md +305 -0
- package/vendor/ergebnis/agent-detector/README.md +107 -0
- package/vendor/evenement/evenement/README.md +64 -0
- package/vendor/fidry/cpu-core-counter/README.md +138 -0
- package/vendor/friendsofphp/php-cs-fixer/README.md +97 -0
- package/vendor/psr/container/README.md +13 -0
- package/vendor/psr/event-dispatcher/README.md +6 -0
- package/vendor/psr/log/README.md +58 -0
- package/vendor/react/cache/README.md +367 -0
- package/vendor/react/child-process/README.md +619 -0
- package/vendor/react/dns/README.md +453 -0
- package/vendor/react/event-loop/README.md +930 -0
- package/vendor/react/promise/README.md +722 -0
- package/vendor/react/socket/README.md +1564 -0
- package/vendor/react/stream/README.md +1249 -0
- package/vendor/sebastian/diff/README.md +151 -0
- package/vendor/symfony/console/README.md +30 -0
- package/vendor/symfony/deprecation-contracts/README.md +26 -0
- package/vendor/symfony/event-dispatcher/README.md +25 -0
- package/vendor/symfony/event-dispatcher-contracts/README.md +9 -0
- package/vendor/symfony/filesystem/README.md +23 -0
- package/vendor/symfony/finder/README.md +24 -0
- package/vendor/symfony/options-resolver/README.md +25 -0
- package/vendor/symfony/polyfill-ctype/README.md +12 -0
- package/vendor/symfony/polyfill-intl-grapheme/README.md +32 -0
- package/vendor/symfony/polyfill-intl-normalizer/README.md +14 -0
- package/vendor/symfony/polyfill-mbstring/README.md +13 -0
- package/vendor/symfony/polyfill-php80/README.md +25 -0
- package/vendor/symfony/polyfill-php81/README.md +18 -0
- package/vendor/symfony/polyfill-php84/README.md +23 -0
- package/vendor/symfony/polyfill-php85/README.md +20 -0
- package/vendor/symfony/process/README.md +23 -0
- package/vendor/symfony/service-contracts/README.md +9 -0
- package/vendor/symfony/stopwatch/README.md +52 -0
- package/vendor/symfony/string/README.md +24 -0
- package/lib/chunk-WSHVPGNM.mjs +0 -44
- package/lib/chunk-X2B3X7D4.mjs +0 -35
- package/lib/del-gradle.js +0 -16
- package/lib/del-node-modules.js +0 -211
- package/lib/find-node-modules-cli.js +0 -4
- package/lib/run-by-checksum/hash.d.ts +0 -14
- package/lib/run-by-checksum/hash.js +0 -85
- package/readme.html +0 -784
- /package/lib/{clean-github-actions-caches-cli.d.cts → del-gradle.d.cts} +0 -0
- /package/lib/{del-gradle.d.ts → del-node-modules.d.cts} +0 -0
- /package/lib/{find-node-modules-cli.d.ts → find-node-modules-cli.d.cts} +0 -0
- /package/lib/{git-diff-cli.d.ts → git/git-diff-cli.d.ts} +0 -0
- /package/lib/{git-diff-cli.js → git/git-diff-cli.js} +0 -0
- /package/lib/{git-diff.d.ts → git/git-diff.d.ts} +0 -0
- /package/lib/{git-fix.d.cts → git/git-fix.d.cts} +0 -0
- /package/lib/{git-purge.d.cts → git/git-purge.d.cts} +0 -0
- /package/lib/{del-node-modules.d.ts → github-workflows/clean-github-actions-caches-cli.d.cts} +0 -0
- /package/lib/{clean-github-actions-caches.d.cts → github-workflows/clean-github-actions-caches.d.cts} +0 -0
|
@@ -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,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
|
+
};
|
|
@@ -1,15 +1,12 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
1
|
var __create = Object.create;
|
|
3
2
|
var __defProp = Object.defineProperty;
|
|
4
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
5
|
var __getProtoOf = Object.getPrototypeOf;
|
|
7
6
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
-
var
|
|
9
|
-
|
|
10
|
-
};
|
|
11
|
-
var __commonJS = (cb, mod) => function __require() {
|
|
12
|
-
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
13
10
|
};
|
|
14
11
|
var __copyProps = (to, from, except, desc) => {
|
|
15
12
|
if (from && typeof from === "object" || typeof from === "function") {
|
|
@@ -27,236 +24,66 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
27
24
|
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
28
25
|
mod
|
|
29
26
|
));
|
|
30
|
-
|
|
31
|
-
// node_modules/tsup/assets/cjs_shims.js
|
|
32
|
-
var init_cjs_shims = __esm({
|
|
33
|
-
"node_modules/tsup/assets/cjs_shims.js"() {
|
|
34
|
-
}
|
|
35
|
-
});
|
|
36
|
-
|
|
37
|
-
// src/utils/index.cjs
|
|
38
|
-
var require_utils = __commonJS({
|
|
39
|
-
"src/utils/index.cjs"(exports2, module2) {
|
|
40
|
-
init_cjs_shims();
|
|
41
|
-
var fs2 = require("fs");
|
|
42
|
-
var path2 = require("upath");
|
|
43
|
-
var minimistLib = require("minimist");
|
|
44
|
-
var argv2 = minimistLib(process.argv.slice(2));
|
|
45
|
-
var { exec } = require("child_process");
|
|
46
|
-
var { promisify } = require("util");
|
|
47
|
-
var execAsync = promisify(exec);
|
|
48
|
-
async function parseGitRemotes() {
|
|
49
|
-
try {
|
|
50
|
-
const { stdout } = await execAsync("git remote -v");
|
|
51
|
-
const lines = stdout.split("\n");
|
|
52
|
-
const remotes = {};
|
|
53
|
-
lines.forEach((line) => {
|
|
54
|
-
const [name, url] = line.split(" ");
|
|
55
|
-
if (name && url) {
|
|
56
|
-
const [repoUrl] = url.split(" ");
|
|
57
|
-
try {
|
|
58
|
-
const parsedUrl = new URL(repoUrl);
|
|
59
|
-
const pathParts = parsedUrl.pathname.split("/").filter(Boolean);
|
|
60
|
-
if (parsedUrl.hostname === "github.com" && pathParts.length === 2) {
|
|
61
|
-
let repoPath = pathParts.join("/");
|
|
62
|
-
if (repoPath.endsWith(".git")) {
|
|
63
|
-
repoPath = repoPath.slice(0, -4);
|
|
64
|
-
}
|
|
65
|
-
remotes[name] = repoPath;
|
|
66
|
-
}
|
|
67
|
-
} catch (e) {
|
|
68
|
-
console.error("URL Parsing Error:", e.message);
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
});
|
|
72
|
-
return remotes;
|
|
73
|
-
} catch (error) {
|
|
74
|
-
console.error("Error:", error.message);
|
|
75
|
-
return {};
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
module2.exports.parseGitRemotes = parseGitRemotes;
|
|
79
|
-
function getArgs2(opts) {
|
|
80
|
-
if (opts) {
|
|
81
|
-
return minimistLib(process.argv.slice(2), opts);
|
|
82
|
-
}
|
|
83
|
-
return argv2;
|
|
84
|
-
}
|
|
85
|
-
module2.exports.getArgs = getArgs2;
|
|
86
|
-
function del(fullPath) {
|
|
87
|
-
try {
|
|
88
|
-
if (!fs2.existsSync(fullPath)) return;
|
|
89
|
-
const stat = fs2.lstatSync(fullPath);
|
|
90
|
-
if (stat.isSymbolicLink()) {
|
|
91
|
-
try {
|
|
92
|
-
fs2.unlinkSync(fullPath);
|
|
93
|
-
console.log("deleted symlink", fullPath);
|
|
94
|
-
} catch (e) {
|
|
95
|
-
console.log("failed delete symlink", fullPath, e && e.message);
|
|
96
|
-
}
|
|
97
|
-
return;
|
|
98
|
-
}
|
|
99
|
-
if (stat.isDirectory()) {
|
|
100
|
-
const subdir = fs2.readdirSync(fullPath).map((dirPath) => path2.resolve(fullPath, dirPath));
|
|
101
|
-
for (let i = 0; i < subdir.length; i++) {
|
|
102
|
-
del(subdir[i]);
|
|
103
|
-
}
|
|
104
|
-
try {
|
|
105
|
-
fs2.rmdirSync(fullPath);
|
|
106
|
-
console.log("deleted", fullPath);
|
|
107
|
-
} catch (_e) {
|
|
108
|
-
try {
|
|
109
|
-
fs2.rmSync(fullPath, { recursive: true, force: true, retryDelay: 7e3 });
|
|
110
|
-
console.log("deleted", fullPath);
|
|
111
|
-
} catch (ee) {
|
|
112
|
-
console.log("failed delete", fullPath, ee && ee.message);
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
return;
|
|
116
|
-
}
|
|
117
|
-
try {
|
|
118
|
-
fs2.unlinkSync(fullPath);
|
|
119
|
-
console.log("deleted", fullPath);
|
|
120
|
-
} catch (_e) {
|
|
121
|
-
try {
|
|
122
|
-
fs2.rmSync(fullPath, { recursive: true, force: true, retryDelay: 7e3 });
|
|
123
|
-
console.log("deleted", fullPath);
|
|
124
|
-
} catch (ee) {
|
|
125
|
-
console.log("failed delete", fullPath, ee && ee.message);
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
} catch (err) {
|
|
129
|
-
console.log("failed delete", fullPath, err && err.message);
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
module2.exports.del = del;
|
|
133
|
-
function delStream(globStream) {
|
|
134
|
-
globStream.stream().on("data", (result) => {
|
|
135
|
-
const fullPath = path2.resolve(process.cwd(), result);
|
|
136
|
-
try {
|
|
137
|
-
if (fs2.existsSync(fullPath)) {
|
|
138
|
-
const stat = fs2.lstatSync(fullPath);
|
|
139
|
-
if (stat.isSymbolicLink()) {
|
|
140
|
-
try {
|
|
141
|
-
fs2.unlinkSync(fullPath);
|
|
142
|
-
console.log("deleted symlink", fullPath);
|
|
143
|
-
} catch (e) {
|
|
144
|
-
console.log("failed delete symlink", fullPath, e && e.message);
|
|
145
|
-
}
|
|
146
|
-
return;
|
|
147
|
-
}
|
|
148
|
-
if (stat.isDirectory()) {
|
|
149
|
-
const subdir = fs2.readdirSync(fullPath).map((dirPath) => path2.resolve(fullPath, dirPath));
|
|
150
|
-
for (let i = 0; i < subdir.length; i++) {
|
|
151
|
-
del(subdir[i]);
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
del(fullPath);
|
|
156
|
-
} catch (err) {
|
|
157
|
-
console.log("failed processing", fullPath, err && err.message);
|
|
158
|
-
}
|
|
159
|
-
});
|
|
160
|
-
}
|
|
161
|
-
module2.exports.delStream = delStream;
|
|
162
|
-
function getFileTreeString(hashArray) {
|
|
163
|
-
const tree = {};
|
|
164
|
-
const hashMap = {};
|
|
165
|
-
for (const entry of hashArray) {
|
|
166
|
-
const [filePath2, hash] = entry.split(" ");
|
|
167
|
-
hashMap[filePath2] = hash;
|
|
168
|
-
const parts = filePath2.split("/");
|
|
169
|
-
let current = tree;
|
|
170
|
-
for (let i = 0; i < parts.length; i++) {
|
|
171
|
-
const part = parts[i];
|
|
172
|
-
if (i === parts.length - 1) {
|
|
173
|
-
current[part] = null;
|
|
174
|
-
} else {
|
|
175
|
-
current[part] = current[part] || {};
|
|
176
|
-
current = current[part];
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
}
|
|
180
|
-
function printNode(node, prefix = "", parentPath = "") {
|
|
181
|
-
const keys = Object.keys(node).sort();
|
|
182
|
-
let lines = [];
|
|
183
|
-
keys.forEach((key, idx) => {
|
|
184
|
-
const isLast = idx === keys.length - 1;
|
|
185
|
-
const branch = isLast ? "\u2514\u2500\u2500 " : "\u251C\u2500\u2500 ";
|
|
186
|
-
const currentPath = parentPath ? parentPath + "/" + key : key;
|
|
187
|
-
if (node[key] === null) {
|
|
188
|
-
lines.push(prefix + branch + key + " [" + (hashMap[currentPath] || "") + "]");
|
|
189
|
-
} else {
|
|
190
|
-
lines.push(prefix + branch + key + "/");
|
|
191
|
-
lines = lines.concat(printNode(node[key], prefix + (isLast ? " " : "\u2502 "), currentPath));
|
|
192
|
-
}
|
|
193
|
-
});
|
|
194
|
-
return lines;
|
|
195
|
-
}
|
|
196
|
-
return printNode(tree, "", "").join("\n");
|
|
197
|
-
}
|
|
198
|
-
module2.exports.getFileTreeString = getFileTreeString;
|
|
199
|
-
var delay = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
|
|
200
|
-
module2.exports.delay = delay;
|
|
201
|
-
}
|
|
202
|
-
});
|
|
27
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
203
28
|
|
|
204
29
|
// src/print-tarball-tree.mjs
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
30
|
+
var print_tarball_tree_exports = {};
|
|
31
|
+
__export(print_tarball_tree_exports, {
|
|
32
|
+
addToTree: () => addToTree,
|
|
33
|
+
formatTree: () => formatTree,
|
|
34
|
+
printTgzTree: () => printTgzTree,
|
|
35
|
+
printTree: () => printTree
|
|
36
|
+
});
|
|
37
|
+
module.exports = __toCommonJS(print_tarball_tree_exports);
|
|
38
|
+
var import_node_fs = __toESM(require("fs"), 1);
|
|
39
|
+
var zlib = __toESM(require("zlib"), 1);
|
|
40
|
+
var import_promises = require("stream/promises");
|
|
208
41
|
var import_tar_stream = __toESM(require("tar-stream"), 1);
|
|
209
|
-
var import_upath = __toESM(require("upath"), 1);
|
|
210
|
-
var import_utils = __toESM(require_utils(), 1);
|
|
211
42
|
function addToTree(tree, parts) {
|
|
212
43
|
let node = tree;
|
|
213
44
|
for (const part of parts) {
|
|
214
45
|
if (!node[part]) node[part] = {};
|
|
215
46
|
node = node[part];
|
|
216
47
|
}
|
|
48
|
+
return tree;
|
|
217
49
|
}
|
|
218
|
-
function
|
|
50
|
+
function formatTree(node, prefix = "") {
|
|
51
|
+
const lines = [];
|
|
219
52
|
const entries = Object.keys(node).sort();
|
|
220
|
-
entries.forEach((key, index)
|
|
53
|
+
entries.forEach(function(key, index) {
|
|
221
54
|
const isLast = index === entries.length - 1;
|
|
222
|
-
console.log(prefix + (isLast ? "\u2514\u2500\u2500 " : "\u251C\u2500\u2500 ") + key);
|
|
223
55
|
const child = node[key];
|
|
56
|
+
const line = prefix + (isLast ? "\u2514\u2500\u2500 " : "\u251C\u2500\u2500 ") + key;
|
|
224
57
|
const newPrefix = prefix + (isLast ? " " : "\u2502 ");
|
|
225
|
-
|
|
58
|
+
lines.push(line);
|
|
59
|
+
lines.push(...formatTree(child, newPrefix));
|
|
226
60
|
});
|
|
61
|
+
return lines;
|
|
227
62
|
}
|
|
228
|
-
function
|
|
63
|
+
function printTree(node, prefix = "", logger = console.log) {
|
|
64
|
+
for (const line of formatTree(node, prefix)) {
|
|
65
|
+
logger(line);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
async function printTgzTree(filePath, options = {}) {
|
|
69
|
+
const logger = options.logger || console.log;
|
|
229
70
|
const extract = import_tar_stream.default.extract();
|
|
230
71
|
const tree = {};
|
|
231
|
-
extract.on("entry", (header, stream, next)
|
|
72
|
+
extract.on("entry", function(header, stream, next) {
|
|
232
73
|
const parts = header.name.split("/").filter(Boolean);
|
|
233
74
|
if (parts.length) addToTree(tree, parts);
|
|
234
|
-
stream.
|
|
75
|
+
stream.once("end", next);
|
|
76
|
+
stream.once("error", next);
|
|
235
77
|
stream.resume();
|
|
236
78
|
});
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
import_fs.default.createReadStream(filePath2).pipe(import_zlib.default.createGunzip()).pipe(extract);
|
|
241
|
-
}
|
|
242
|
-
var argv = (0, import_utils.getArgs)({ string: ["file"], alias: { f: "file", h: "help" } });
|
|
243
|
-
if (argv.help) {
|
|
244
|
-
console.log(`
|
|
245
|
-
Usage: node src/print-tarball-tree.mjs [options]
|
|
246
|
-
|
|
247
|
-
Options:
|
|
248
|
-
-f, --file <path> Path to the tarball file (default: package.tgz)
|
|
249
|
-
-h, --help Show this help message
|
|
250
|
-
`);
|
|
251
|
-
process.exit(0);
|
|
252
|
-
}
|
|
253
|
-
var filePath = argv.file ? import_upath.default.isAbsolute(argv.file) ? argv.file : import_upath.default.resolve(process.cwd(), argv.file) : null;
|
|
254
|
-
if (!filePath) {
|
|
255
|
-
console.error("Error: No file specified");
|
|
256
|
-
process.exit(1);
|
|
79
|
+
await (0, import_promises.pipeline)(import_node_fs.default.createReadStream(filePath), zlib.createGunzip(), extract);
|
|
80
|
+
printTree(tree, "", logger);
|
|
81
|
+
return tree;
|
|
257
82
|
}
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
printTgzTree
|
|
83
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
84
|
+
0 && (module.exports = {
|
|
85
|
+
addToTree,
|
|
86
|
+
formatTree,
|
|
87
|
+
printTgzTree,
|
|
88
|
+
printTree
|
|
89
|
+
});
|
|
@@ -1 +1,4 @@
|
|
|
1
|
-
export
|
|
1
|
+
export function addToTree(tree: any, parts: any): any;
|
|
2
|
+
export function formatTree(node: any, prefix?: string): any[];
|
|
3
|
+
export function printTree(node: any, prefix?: string, logger?: (...data: any[]) => void): void;
|
|
4
|
+
export function printTgzTree(filePath: any, options?: {}): Promise<{}>;
|